]> code.delx.au - gnu-emacs/blob - src/ChangeLog
*** empty log message ***
[gnu-emacs] / src / ChangeLog
1 2005-09-25 Richard M. Stallman <rms@gnu.org>
2
3 * keyboard.c (update_menu_bindings): Variable deleted.
4 (syms_of_keyboard): Don't defvar it.
5 (parse_menu_item): Don't test it.
6
7 2005-09-23 Richard M. Stallman <rms@gnu.org>
8
9 * editfns.c (Fformat): Explicitly test for end of format string
10 and don't use `index'.
11
12 2005-09-23 Dan Nicolaescu <dann@ics.uci.edu>
13
14 * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME): Define
15 BROKEN_GET_CURRENT_DIR_NAME.
16
17 * sysdep.c (get_current_dir_name): Also define if
18 BROKEN_GET_CURRENT_DIR_NAME.
19
20 * m/ibmrs6000.h: Test for USG5, not USG5_4.
21
22 2005-09-22 Kim F. Storm <storm@cua.dk>
23
24 * xdisp.c (message_dolog): Add warning about GC and Lisp strings.
25 (message2): Fix commentary. Ok to use alloca'ed memory.
26 Still not ok to use Lisp string data (because of GC).
27 (set_message): Add comment why GC cannot happen.
28
29 2005-09-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
30
31 * macterm.c (xlfdpat_block_match_1): Fix assertion.
32 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't add style
33 variants for a scalable font multiple times.
34
35 2005-09-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
36
37 * process.c (create_process) [RTU || UNIPLUS || DONT_REOPEN_PTY]:
38 Setup slave tty options before forking.
39
40 2005-09-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
41
42 * gtkutil.c (xg_set_geometry): Do a gtk_window_move if program
43 positions have been set for the frame (as is done for frames in
44 special-display-buffer-names).
45
46 2005-09-19 Kim F. Storm <storm@cua.dk>
47
48 * editfns.c (Fformat): Don't scan past end of format string that
49 ends in %. Reported by: Johan Bockg\e,Ae\e(Brd.
50
51 2005-09-18 Andreas Schwab <schwab@suse.de>
52
53 * window.h (struct window): Remove height_fixed_p, no longer set.
54
55 * window.c (make_window): Don't initialize height_fixed_p.
56 (window_fixed_size_p): Don't use it.
57
58 2005-09-18 John Paul Wallington <jpw@pobox.com>
59
60 * data.c (Fdefalias): Signal an error if SYMBOL is not a symbol.
61
62 2005-09-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
63
64 * Makefile.in (SOME_MACHINE_OBJECTS): Undo previous change.
65
66 * macfns.c (image_cache_refcount, dpyinfo_refcount) [GLYPH_DEBUG]:
67 New variables.
68 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Don't allow multiple
69 file selection.
70
71 * sysdep.c [MAC_OS8]: Don't include stdlib.h. Include sys/param.h.
72
73 2005-09-17 Eli Zaretskii <eliz@gnu.org>
74
75 * Makefile.in (XMENU_OBJ) [!HAVE_CARBON]: Reinstate variable.
76 (obj): Use XMENU_OBJ, not a literal xmenu.o.
77
78 2005-09-16 Romain Francoise <romain@orebokech.com>
79
80 * fileio.c (syms_of_fileio) <write-region-inhibit-fsync>: Doc fix.
81
82 2005-09-15 Richard M. Stallman <rms@gnu.org>
83
84 * xdisp.c (overlay_arrow_at_row): Add HAVE_WINDOW_SYSTEM conditional.
85 (display_mode_element): Instead of `lisp_string' and `this',
86 record `offset' and increment that.
87 `last_offset' replaces `last'.
88
89 * Makefile.in (XMENU_OBJ): Variable deleted.
90 (obj): Use xmenu.o unconditionally.
91 (SOME_MACHINE_OBJECTS): Delete xmenu.o.
92
93 * emacs.c (main): Don't conditionalize syms_of_xmenu on HAVE_XMENU.
94
95 2005-09-15 Kim F. Storm <storm@cua.dk>
96
97 * xdisp.c (move_it_vertically): Don't try to fetch byte BEGV-1.
98 (reseat_at_next_visible_line_start): Likewise (in xassert).
99
100 2005-09-14 Romain Francoise <romain@orebokech.com>
101
102 * fileio.c (write_region_inhibit_fsync): New variable.
103 (Fwrite_region): Use it to skip call to fsync.
104 (syms_of_fileio): Initialize it.
105
106 2005-09-14 Kenichi Handa <handa@m17n.org>
107
108 * coding.c (code_convert_region_unwind): Argument format changed.
109 (run_pre_post_conversion_on_str): If pre-write-conversion function
110 changed the current buffer, delete the new buffer.
111 (run_pre_write_conversin_on_c_str): Likewise.
112
113 * fileio.c (Fexpand_file_name): Check multibyteness of
114 default_directory.
115
116 2005-09-13 Kenichi Handa <handa@m17n.org>
117
118 * composite.c (compose_chars_in_text): Delete it.
119
120 * composite.h (compose_chars_in_text): Delete extern.
121
122 2005-09-13 Kim F. Storm <storm@cua.dk>
123
124 * print.c (print_error_message): Fix last change.
125
126 2005-09-12 Kim F. Storm <storm@cua.dk>
127
128 * composite.c (compose_chars_in_text): Fix setup of `pend'.
129 Unconditionally reload `ptr' and `pend' after eval.
130
131 * xdisp.c (message3): Pass copy of lisp string to message_dolog.
132
133 * print.c (print_error_message): Pass copy of caller name to
134 message_dolog.
135
136 * fileio.c (auto_save_error): Pass copy of lisp string to message2.
137
138 2005-09-12 Kenichi Handa <handa@m17n.org>
139
140 * xdisp.c (display_mode_element): Be sure to make variables THIS
141 and LISP_STRING point into a string data of ELT.
142
143 2005-09-12 Kim F. Storm <storm@cua.dk>
144
145 * editfns.c (Ftranslate_region_internal): Reload `tt' after
146 signal_after_change that may have GC'ed.
147 (Fmessage, Fmessage_box, Fmessage_or_box): Doc fix.
148
149 * keymap.c (Fdescribe_buffer_bindings): Reload `translate'
150 after insert while runs signal_after_change.
151
152 * minibuf.c (Fminibuffer_complete_word): Move `completion_string'
153 declaration to where it is used.
154
155 * w32.c (check_windows_init_file): Fix allocation of error buffer.
156
157 * xfns.c (x_encode_text): Declare static. Add FREEP arg.
158 (x_set_name_internal): Call x_encode_text with new FREEP arg to
159 know if xfree is needed instead of guessing.
160
161 * xterm.h (x_encode_text): Remove prototype.
162
163 2005-09-11 Chris Prince <cprince@gmail.com> (tiny change)
164
165 * w32term.c (x_bitmap_icon): Load small icons too.
166
167 2005-09-10 Romain Francoise <romain@orebokech.com>
168
169 * buffer.c (init_buffer): Grow buffer to add directory separator
170 and terminal zero. Fix typos.
171
172 2005-09-10 Eli Zaretskii <eliz@gnu.org>
173
174 * buffer.c (init_buffer): Fix error message for failed call to
175 get_current_dir_name.
176 (get_current_dir_name): Remove prototype.
177
178 * xsmfns.c: (get_current_dir_name): Remove prototype.
179
180 * lisp.h: (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]: Add
181 prototype.
182
183 * sysdep.c [WINDOWSNT]: Add prototype for getwd.
184 Don't #undef NULL after including blockinput.h.
185
186 * config.in: Regenerated.
187
188 2005-09-10 Giuseppe Scrivano <gscrivano@gmail.com>
189
190 Remove the MAXPATHLEN limitations:
191
192 * sysdep.c (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
193 New function.
194
195 * buffer.c (init_buffer): Use it.
196
197 * xsmfns.c (smc_save_yourself_CB): Ditto.
198
199 2005-09-09 Kim F. Storm <storm@cua.dk>
200
201 * doc.c (Fsubstitute_command_keys): Lookup key binding for
202 commands that are remapped from some other command.
203
204 * xdisp.c (try_window_reusing_current_matrix): Clear mode_line_p
205 flag in disabled rows below the window.
206
207 * frame.h (struct frame): New member updated_p.
208
209 * xdisp.c (redisplay_internal): Mark updated frames in new updated_p
210 member. Remove local `updated' array and associated variables.
211
212 2005-09-07 Kim F. Storm <storm@cua.dk>
213
214 * xdisp.c (handle_display_prop): Respect overlay window property.
215
216 * xdisp.c (try_window): Remove superfluous cursor_height calculation.
217 Fixes crash reported by YAMAMOTO Mitsuharu.
218
219 2005-09-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
220
221 * macterm.c (struct xlfdpat_block, struct xlfdpat): New structs.
222 (xlfdpat_destroy, xlfdpat_create, xlfdpat_exact_p)
223 (xlfdpat_block_match_1, xlfdpat_match): New functions.
224 (xlfdpat_block_match): New macro.
225 (mac_to_x_fontname): Don't use tolower for non-ASCII characters.
226 (x_font_name_to_mac_font_name): Set coding.dst_multibyte to 0.
227 (add_font_name_table_entry): Increase font_name_table_size more
228 rapidly.
229 (mac_c_string_match): Remove function.
230 (mac_do_list_fonts): Use XLFD pattern match instead of regular
231 expression match.
232
233 * xfaces.c (xstrlwr): Don't use tolower for non-ASCII characters.
234
235 2005-09-03 Richard M. Stallman <rms@gnu.org>
236
237 * xdisp.c (redisplay_internal): Make UPDATED as long as needed.
238 (move_it_in_display_line_to): Stop after last char on line even
239 on a windowing terminal, if that's the specified stop position.
240
241 * fns.c (Fsort): Doc fix.
242
243 * editfns.c (Fpropertize): Don't insist that properties be symbols.
244
245 2005-09-02 Stefan Monnier <monnier@iro.umontreal.ca>
246
247 * dired.c (directory_files_internal_unwind, directory_files_internal)
248 (file_name_completion): Use a Save_Value object rather than a cons of
249 two 16bit ints to store the DIR*.
250 (directory_files_internal, file_name_completion): Handle both EINTR and
251 EAGAIN consistently after `readdir'.
252
253 2005-09-01 Stefan Monnier <monnier@iro.umontreal.ca>
254
255 * intervals.c (update_interval): Add position info in error.
256
257 * dispnew.c (window_to_frame_hpos, update_window):
258 Avoid gcc warning about unused variable `f'.
259
260 2005-08-31 Jason Rumney <jasonr@gnu.org>
261
262 * w32menu.c (add_menu_item): If unicode_append_menu returns an
263 error, revert to using AppendMenu.
264
265 2005-08-31 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
266
267 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN): Remove argument.
268 All uses changed.
269 [MAC_OS] (XPutPixel, XGetPixel): Add efficient versions for common
270 cases.
271 (x_create_x_image_and_pixmap) [MAC_OS]: Don't call x_destroy_x_image.
272 [MAC_OS] (find_image_fsspec) [!MAC_OSX]: Don't use FSRef.
273 Use posix_pathname_to_fsspec.
274 [MAC_OS] (xpm_load_image): Fill in background_transparent field
275 while we have mask.
276
277 * macgui.h [!TARGET_API_MAC_CARBON] (GetPixDepth): New define.
278
279 * macterm.h (PIX_MASK_DRAW, PIX_MASK_RETAIN): Move defines to image.c.
280
281 2005-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
282
283 * syntax.c (update_syntax_table): Properly reproduce the special +1
284 setting of e_property at the end of the buffer when bumping into the
285 INTERVALS_AT_ONCE limit.
286
287 2005-08-27 Eli Zaretskii <eliz@gnu.org>
288
289 * emacs.c (USAGE1): Fix the description of the -Q option.
290
291 2005-08-26 Stefan Monnier <monnier@iro.umontreal.ca>
292
293 * xdisp.c (pos_visible_p): Yet another int/Lisp_Object mixup (YAILOM).
294
295 2005-08-26 Kim F. Storm <storm@cua.dk>
296
297 * xdisp.c (resize_mini_window): Fix 2005-08-20 change.
298 Don't move PT to new window start.
299
300 2005-08-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
301
302 * keyboard.c (kbd_buffer_get_event) [MAC_OS]: Make events for
303 ICONIFY/DEICONIFY_EVENT.
304
305 * macterm.c (mac_copy_area, mac_copy_area_with_mask):
306 Restore background color.
307 (mac_handle_visibility_change): New function.
308 (x_make_frame_invisible, x_iconify_frame)
309 (XTread_socket) [!USE_CARBON_EVENTS]: Use it.
310 [USE_CARBON_EVENTS] (mac_handle_window_event)
311 (install_window_handler): Handle visibility change events.
312 (x_make_frame_visible): Don't reposition window if it is iconified
313 or asked for visible before. Select and uncollapse window when it
314 is made visible.
315 (x_make_frame_invisible): Don't reset x_highlight_frame.
316 (x_iconify_frame): Likewise. Make invisible frame visible before
317 it is iconified.
318 (read_socket_inev): Move variable outside #if USE_CARBON_EVENTS.
319 (do_window_update): Don't change visibility of invisible frame.
320
321 2005-08-22 Juri Linkov <juri@jurta.org>
322
323 * term.c (turn_on_face): Check for TS_set_foreground and
324 TS_set_background depending on standout_mode. Simplify.
325
326 2005-08-21 Kim F. Storm <storm@cua.dk>
327
328 * fringe.c (update_window_fringes): Only put TOP and BOTTOM
329 bitmaps on fully visible rows.
330
331 * fringe.c (update_window_fringes): Replace FORCE_P arg with
332 KEEP_CURRENT_P arg; if non-zero, don't update current row fringes,
333 and return 0.
334
335 * xdisp.c (redisplay_window): Call update_window_fringes with
336 KEEP_CURRENT_P non-0 if we are going to refresh fringes later.
337
338 2005-08-20 Richard M. Stallman <rms@gnu.org>
339
340 * xdisp.c (display_echo_area_1): Get display start pos from w->start.
341 (resize_mini_window): Set w->start, and PT, so as to display the tail
342 end of the buffer, if it doesn't all fit.
343
344 2005-08-18 Kim F. Storm <storm@cua.dk>
345
346 * xdisp.c (calc_pixel_width_or_height): Use actual display
347 resolution when available instead of Vdisplay_pixels_per_inch.
348
349 2005-08-17 Kim F. Storm <storm@cua.dk>
350
351 * xdisp.c (pos_visible_p): Adjust X value if window is hscrolled.
352
353 * dispnew.c (buffer_posn_from_coords): Check that target row is
354 within matrix.
355
356 2005-08-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
357
358 * xterm.c (x_wm_set_icon_pixmap): Move GTK specific code to
359 xg_set_frame_icon and call it.
360
361 * gtkutil.c (xg_set_frame_icon): New function.
362
363 * gtkutil.h (xg_set_frame_icon): Declare it.
364
365 2005-08-16 Kim F. Storm <storm@cua.dk>
366
367 * dispnew.c (increment_row_positions): Skip non-enabled rows.
368
369 * window.c (SAVED_WINDOW_VECTOR_SIZE): Remove dangerous define.
370 (Fcurrent_window_configuration): Use VECSIZE macro instead.
371
372 2005-08-15 Richard M. Stallman <rms@gnu.org>
373
374 * xdisp.c (message3_nolog): Clear echo_message_buffer.
375
376 2005-08-15 Kim F. Storm <storm@cua.dk>
377
378 * lisp.h (QUIT) [!SYNC_INPUT]: Throw t to Vthrow_on_input.
379
380 * process.c (deactivate_process, status_notify, read_process_output)
381 (update_status, status_convert, decode_status, allocate_pty)
382 (make_process, remove_process, list_processes_1)
383 (create_process_1, unwind_request_sigio, read_process_output)
384 (send_process, keyboard_bit_set): Declare static.
385 (Fdelete_process): Simplify. Pass process to status_notify, so we
386 don't try to read output from it.
387 (status_notify): New arg deleting_process--don't try to read
388 output from that process.
389
390 * lisp.h (deactivate_process, status_notify, read_process_output):
391 Remove prototypes.
392
393 2005-08-14 Richard M. Stallman <rms@gnu.org>
394
395 * image.c (syms_of_image): Init Qxbm, Qpbm before calling
396 define_image_type.
397
398 2005-08-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
399
400 * gtkutil.c (xg_get_pixbuf_from_pix_and_mask): New function.
401 (xg_get_image_for_pixmap): Move some code to
402 xg_get_pixbuf_from_pix_and_mask, and call it.
403
404 * gtkutil.h (xg_get_pixbuf_from_pix_and_mask): Declare.
405
406 * xterm.c (x_wm_set_icon_pixmap): Call xg_get_pixbuf_from_pix_and_mask
407 to get an GTK icon and set it with GTK functions to avoid having GTK
408 override an icon set with just X functions.
409
410 2005-08-11 Richard M. Stallman <rms@gnu.org>
411
412 * image.c (syms_of_image): Init image_types here, and call
413 define_image_type.
414 (init_image): Not here.
415
416 2005-08-09 Richard M. Stallman <rms@gnu.org>
417
418 * bytecode.c (BYTE_CODE_QUIT): Throw t to Vthrow_on_input.
419
420 * lisp.h (QUIT): Throw t to Vthrow_on_input.
421
422 2005-08-09 Thien-Thi Nguyen <ttn@gnu.org>
423
424 * floatfns.c (Fexpt): Use floats for negative exponent.
425
426 2005-08-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
427
428 * gtkutil.c (xg_modify_menubar_widgets): Remove semicolon that
429 should not be there, causing menu display errors with GTK 2.6.9.
430
431 2005-08-07 Richard M. Stallman <rms@gnu.org>
432
433 * floatfns.c (Fexpt): Undo previous change.
434
435 * dispnew.c (Fframe_or_buffer_changed_p): Take an arg
436 so it can be used with various state vectors.
437
438 * emacs.c (endif): Convert -script into -scriptload.
439 (standard_args): Add -scriptload. Allow -basic-display with one dash.
440
441 * fns.c (syms_of_fns): Add `emacs' to features.
442
443 * term.c (set_terminal_modes): If no TS_termcap_modes string,
444 output newlines to scroll the old screen contents off the screen.
445
446 2005-08-06 Thien-Thi Nguyen <ttn@gnu.org>
447
448 * floatfns.c (Fexpt): Use floats for negative exponent.
449 Reported by D Goel.
450
451 2005-08-02 Richard M. Stallman <rms@gnu.org>
452
453 * frame.c (Fframe_char_width): Doc fix.
454
455 2005-07-30 Juanma Barranquero <lekktu@gmail.com>
456
457 * xdisp.c (syms_of_xdisp) <redisplay-end-trigger-functions>:
458 Defvar it.
459
460 2005-07-28 Juanma Barranquero <lekktu@gmail.com>
461
462 * w32fns.c (my_set_window_pos, my_show_window): Don't declare.
463 (my_create_window, my_create_tip_window): Make static.
464
465 * w32term.c (my_show_window, my_set_window_pos, my_set_focus)
466 (my_set_foreground_window, my_destroy_window): Make static.
467
468 2005-07-26 Paul Eggert <eggert@cs.ucla.edu>
469
470 Merge gnulib getopt implementation into Emacs.
471
472 * s/cygwin.h (C_SWITCH_SYSTEM): Remove, since gettext.h is
473 now part of lib-src.
474
475 2005-07-26 Stefan Monnier <monnier@iro.umontreal.ca>
476
477 * eval.c (Fdefvar): Allow (defvar enable-multibyte-characters).
478
479 2005-07-25 Jason Rumney <jasonr@gnu.org>
480
481 * w32menu.c (w32_menu_display_help): Suppress tooltip when
482 navigating menus with the keyboard.
483
484 2005-07-23 Richard M. Stallman <rms@gnu.org>
485
486 * insdel.c (syms_of_insdel): staticpro combine_after_change_buffer.
487
488 * bytecode.c (MAYBE_GC): Test gc_cons_threshold and
489 gc_relative_threshold, one by one.
490
491 * keyboard.c (read_char): Test gc_cons_threshold.
492 (syms_of_keyboard): staticpro Qecho_area_clear_hook.
493
494 * eval.c (Feval, Ffuncall): Test gc_cons_threshold and
495 gc_relative_threshold, one by one.
496
497 * alloc.c (gc_cons_threshold): Not static.
498 (gc_cons_combined_threshold): Var deleted.
499 (gc_relative_threshold): New variable.
500 (Fgarbage_collect, init_alloc_once): Compute gc_relative_threshold
501 instead of gc_cons_combined_threshold.
502
503 * lisp.h (gc_cons_threshold, gc_relative_threshold): Declare.
504 (gc_cons_combined_threshold): Declaration deleted.
505
506 2005-07-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
507
508 * mac.c: Don't include stdlib.h or string.h.
509 (Fdo_applescript, Fmac_file_name_to_posix)
510 (Fmac_file_name_to_posix): Doc fixes.
511 [TARGET_API_MAC_CARBON] (Fmac_get_preference)
512 (Fmac_code_convert_string): Likewise.
513 [MAC_OSX] (init_mac_osx_environment): Fall back on terminal mode
514 if the executable is not contained in a bundle.
515
516 * macfns.c: Don't include stdlib.h or string.h. Include atimer.h.
517 (gray_width, gray_height): Remove defines.
518 (gray_bits, gray_bitmap_width, gray_bitmap_height)
519 (gray_bitmap_bits): Remove variables.
520 (lispy_function_keys): Remove extern.
521 (free_frame_menubar): Add extern.
522 (x_window_to_frame): Remove function.
523 (unwind_create_tip_frame): Add declaration.
524 (x_set_name_internal): New function.
525 (x_set_name, x_set_title): Use it.
526 (Fx_create_frame, Fx_display_grayscale_p, Fx_display_pixel_width)
527 (Fx_display_pixel_height, Fx_display_planes)
528 (Fx_display_color_cells, Fx_server_max_request_size)
529 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
530 (Fx_display_mm_height, Fx_display_mm_width)
531 (Fx_display_backing_store, Fx_display_visual_class)
532 (Fx_display_save_under, Fx_synchronize, Fx_show_tip): Doc fixes.
533
534 * macmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
535
536 * macselect.c (Fx_own_selection_internal): Follow error conventions.
537 (Fx_get_selection_internal, Fx_selection_owner_p)
538 (Fx_selection_exists_p): Doc fixes.
539 (syms_of_macselect) <selection-converter-alist>: Likewise.
540
541 2005-07-21 Juanma Barranquero <lekktu@gmail.com>
542
543 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
544
545 * ccl.c (Fregister_ccl_program): Fix typos in docstring.
546 (Fccl_execute_on_string): Likewise; add usage info.
547
548 * composite.c (Fcompose_region_internal)
549 (Fcompose_string_internal):
550 Improve argument/docstring consistency.
551
552 * minibuf.c (Fminibuffer_prompt_end, Feval_minibuffer):
553 Fix typos in docstrings.
554
555 * textprop.c (Fnext_char_property_change)
556 (Fprevious_char_property_change): Doc fixes.
557
558 * window.c (Fset_window_margins, Fset_window_fringes):
559 Improve argument/docstring consistency.
560
561 * xfaces.c (Finternal_lisp_face_p): Doc fix.
562
563 2005-07-21 Andreas Schwab <schwab@suse.de>
564
565 * eval.c (restore_stack_limits): Return a value.
566
567 2005-07-20 Juanma Barranquero <lekktu@gmail.com>
568
569 * eval.c (Fdefvar): Doc fix.
570
571 2005-07-20 Kim F. Storm <storm@cua.dk>
572
573 * fileio.c (Fdo_auto_save, do_auto_save_unwind):
574 Use make_save_value to unwind protect stream.
575
576 * lread.c (Fload, load_unwind):
577 Use make_save_value to unwind protect stream.
578
579 2005-07-19 Juanma Barranquero <lekktu@gmail.com>
580
581 * eval.c (Fprog2, Fcalled_interactively_p),
582 (syms_of_eval) <debug-on-quit>: Doc fixes.
583 (syms_of_eval) <max-specpdl-size>:
584 (Finteractive_p): Fix typos in docstrings.
585
586 2005-07-19 Kim F. Storm <storm@cua.dk>
587
588 * w32fns.c (Vx_hand_shape): Variable removed.
589 (syms_of_w32fns): Intern and staticpro Qw32_charset_default.
590
591 2005-07-19 Kenichi Handa <handa@m17n.org>
592
593 * fns.c (Fstring_as_multibyte): Escape backslashes in the docstring.
594
595 2005-07-18 Stefan Monnier <monnier@iro.umontreal.ca>
596
597 * buffer.h (Fgenerate_new_buffer_name): Declare (for use in coding.c).
598
599 2005-07-18 Kim F. Storm <storm@cua.dk>
600
601 * frame.h (struct frame): New member already_hscrolled_p.
602
603 * xdisp.c (redisplay_internal): Only try to hscroll each frame once
604 to avoid redisplay looping hscrolling back and forth ad infinitum.
605
606 2005-07-18 Juri Linkov <juri@jurta.org>
607
608 * buffer.c (scroll-up-aggressively, scroll-down-aggressively):
609 * keymap.c (Fminor_mode_key_binding):
610 * macterm.c (mac-emulate-three-button-mouse):
611 Delete duplicate duplicate words.
612
613 2005-07-18 Ken Raeburn <raeburn@gnu.org>
614
615 * minibuf.c (Ftest_completion): Fix odd syntax in test.
616
617 2005-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
618
619 * macfns.c (x_set_cursor_color): Use XSetBackground and XSetForeground.
620
621 * macgui.h (struct _XGC): New struct.
622 (GC): Use it.
623 (GCForeground, GCBackground, GCFont): Use X11 mask values.
624 (XCreateGC, XParseGeometry): Move externs to macterm.h.
625
626 * macterm.c (x_bitmap_icon, x_make_frame_visible): Remove declarations.
627 (XSetFont): Add declaration.
628 (mac_set_forecolor, mac_set_backcolor, mac_set_colors):
629 Remove functions.
630 (GC_FORE_COLOR, GC_BACK_COLOR, GC_FONT, MAC_WINDOW_NORMAL_GC):
631 New defines.
632 (XDrawLine, mac_draw_line_to_pixmap, XClearWindow)
633 (mac_draw_bitmap, XCreatePixmapFromBitmapData, XFillRectangle)
634 (mac_draw_rectangle, mac_draw_string_common, mac_scroll_area):
635 Use them.
636 (mac_erase_rectangle): New function.
637 (XClearArea, x_draw_fringe_bitmap, x_clear_glyph_string_rect)
638 (x_draw_stretch_glyph_string): Use it.
639 (XChangeGC, XCreateGC, XGetGCValues, XSetForeground)
640 (XSetBackground, XSetFont): Adjust for new GC implementation.
641 (x_draw_fringe_bitmap, x_draw_box_rect): Use GC to set colors.
642 (XTset_vertical_scroll_bar): Clear area under scroll bar.
643
644 * macterm.h (struct mac_display_info): Change types of
645 scratch_cursor_gc black_relief.gc, and white_relief.gc to GC.
646 (XCreateGC, XParseGeometry): Move externs from macgui.h.
647
648 * xfaces.c [MAC_OS] (XCreateGC): Remove extern.
649
650 2005-07-16 Richard M. Stallman <rms@gnu.org>
651
652 * buffer.c (Fmake_overlay): Doc fix.
653
654 2005-07-16 Eli Zaretskii <eliz@gnu.org>
655
656 * w32proc.c (syms_of_ntproc): staticpro Qhigh, Qlow,
657 Vw32_valid_locale_ids, and Vw32_valid_codepages.
658
659 2005-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
660
661 * mac.c [TARGET_API_MAC_CARBON] (Fmac_code_convert_string):
662 Use Fstring_as_unibyte instead of string_make_unibyte.
663
664 2005-07-15 Richard M. Stallman <rms@gnu.org>
665
666 * xdisp.c (select_frame_for_redisplay): Use find_symbol_value.
667
668 2005-07-15 Kim F. Storm <storm@cua.dk>
669
670 * xdisp.c: Fix redisplay loop in last change.
671 (IT_POS_VALID_AFTER_MOVE_P): New macro.
672 (move_it_vertically_backward, move_it_by_lines): Use it.
673
674 2005-07-14 Jason Rumney <jasonr@gnu.org>
675
676 * w32.c (init_environment): Default HOME directory to user's
677 appdata directory if possible.
678
679 2005-07-14 Kim F. Storm <storm@cua.dk>
680
681 * .gdbinit (pitx): Fix output format. Print string charpos.
682
683 * lread.c (syms_of_lread): Initialize seen_list.
684
685 * search.c (syms_of_search): Staticpro searchbuf.whitespace_regexp.
686
687 * syntax.c (syms_of_syntax): Staticpro lisp objects in gl_state.
688 Staticpro re_match_object.
689
690 2005-07-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
691
692 * macselect.c (get_scrap_target_type_list): Avoid NULL pointer
693 dereference.
694
695 * macterm.c (mac_window_to_frame): Remove duplicate define.
696
697 2005-07-14 Kenichi Handa <handa@m17n.org>
698
699 * coding.c (code_convert_region_unwind): ARG is changed to a cons.
700 (code_convert_region): Adjust for the above change.
701 (set_conversion_work_buffer): If the work buffer is already in
702 use, generate a new buffer and return it. Otherwise return Qnil.
703 (run_pre_post_conversion_on_str): Adjust for the above change.
704 (run_pre_write_conversin_on_c_str): Likewise.
705
706 2005-07-13 Kim F. Storm <storm@cua.dk>
707
708 * xdisp.c (start_display): Don't reseat to next visible line start
709 if current start position is in a string or image.
710 (move_it_vertically_backward): Be sure to move out of strings and
711 images when moving it2 forward.
712 (move_it_by_lines): When moving forward, move to next buffer
713 position if we end up in a string or image. When moving backward,
714 count rows moved over when moving to start of current row in case
715 row starts in middle of a string or image. Also move further
716 backward if we end up in a string or image.
717 (try_cursor_movement): If overlay string spans multiple lines,
718 move backward to set cursor on start of an overlay string.
719 (cursor_row_p): Row is ok if cursor is at newline from string, but
720 string starts on this line (so we always position cursor at start
721 of string).
722
723 * indent.c (Fvertical_motion): If start position is on an image,
724 don't move back if we move too far (that's almost certain to happen).
725
726 * xdisp.c (cursor_row_fully_visible_p): Allow partially visible
727 row in minibuffer windows.
728 (try_window): Don't check margins in minibuffer windows.
729
730 2005-07-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
731
732 * macterm.c: Don't include stdlib.h or composite.h.
733 (x_use_underline_position_properties, last_mouse_press_frame)
734 (x_noop_count, Qvendor_specific_keysyms): Remove unused variables.
735 (syms_of_macterm, mac_initialize): Don't initialize them.
736 (waiting_for_input, initial_argv, initial_argc)
737 (Vcommand_line_args, Vx_no_window_manager, errno, window_scroll)
738 (set_frame_menubar, path_from_vol_dir_name): Remove externs.
739 (extra_keyboard_modifiers): Fix type in extern.
740 (x_window_to_frame, x_window_to_scroll_bar): Remove declarations.
741 (x_scroll_bar_report_motion): Add argument types to declaration.
742 (mac_compute_glyph_string_overhangs): Add declaration.
743 (disable_mouse_highlight): Remove unused variable.
744 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click)
745 (x_scroll_bar_handle_press, x_scroll_bar_handle_release)
746 (x_scroll_bar_handle_drag): Remove argument `timestamp'.
747 All callers changed.
748 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click): Don't set
749 timestamp.
750 [USE_CARBON_EVENTS] (mac_handle_mouse_event): Likewise.
751 (x_scroll_bar_create, XTset_vertical_scroll_bar): Show scroll bar
752 only when its width is less than the height.
753 (XTredeem_scroll_bar): Sync with xterm.c.
754 (font_name_table, font_name_table_size, font_name_count):
755 Make static.
756 (drag_and_drop_file_list): Remove variable. Previous use is now
757 local to function.
758 (do_ae_open_documents): Move DRAG_N_DROP event construction part
759 from XTread_socket.
760 (XTread_socket): Consolidate setting of event timestamp.
761 Move DRAG_N_DROP event construction part to do_ae_open_documents.
762 Support extra_keyboard_modifiers.
763
764 * xfaces.c (try_font_list) [MAC_OS]: Try font family name
765 beginning with that for ASCII.
766
767 2005-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
768
769 * alloc.c (gc_cons_combined_threshold, Vgc_cons_percentage): New vars.
770 (Fgarbage_collect, init_alloc_once): Set gc_cons_combined_threshold.
771 (syms_of_alloc): Declare gc-cons-percentage.
772
773 * eval.c (Feval, Ffuncall):
774 * keyboard.c (read_char):
775 * bytecode.c (MAYBE_GC): Use gc_cons_combined_threshold.
776
777 * lisp.h (gc_cons_combined_threshold): Declare.
778
779 2005-07-12 Kim F. Storm <storm@cua.dk>
780
781 * coding.c (Qprocess_argument):
782 * coding.h (Qprocess_argument): Remove unused var.
783
784 * xselect.c (intern): Remove dup. intern and staticpro for QTIMESTAMP.
785
786 2005-07-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
787
788 * mac.c [!TARGET_API_MAC_CARBON]: Include charset.h, coding.h, and
789 Endian.h.
790 [!MAC_OSX] (fchmod, fchown): New functions.
791 (mac_get_code_from_arg): Don't accept Lisp integer as argument.
792 Use SBYTES and EndianU32_BtoN.
793 (mac_get_object_from_code): Return 4 byte string even if argument
794 is 0. Use make_unibyte_string and EndianU32_NtoB.
795 (Fmac_get_file_creator, Fmac_get_file_type, Fmac_set_file_creator)
796 (Fmac_set_file_type): Fix documents and argument declarations.
797 Don't specify kFSCatInfoNodeFlags. Support Mac OS Classic.
798
799 2005-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
800
801 * window.c (Frecenter): Yet another int/Lisp_Object mixup (YAILOM).
802
803 2005-07-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
804
805 * xfaces.c (x_update_menu_appearance): Use fontSet resource for
806 Lucid if X_I18N, font otherwise.
807
808 2005-07-10 Steven Tamm <steventamm@mac.com>
809
810 * mac.c (Fmac_get_file_type, Fmac_get_file_creator): Add.
811 (Fmac_set_file_type, Fmac_set_file_creator): Add.
812 (mac_get_object_from_code, mac_get_code_from_arg): Add.
813
814 2005-07-10 Richard M. Stallman <rms@gnu.org>
815
816 * lread.c (Qeval_buffer_list, Veval_buffer_list): New vars.
817 (syms_of_lread): Set up eval-buffer-list.
818 (Feval_buffer, Feval_region): Bind eval-buffer-list.
819
820 2005-07-08 Richard M. Stallman <rms@gnu.org>
821
822 * eval.c (Fdefvar): Allow defvaring a constant to itself quoted.
823
824 2005-07-08 Kim F. Storm <storm@cua.dk>
825
826 * keyboard.c (menu_bar_items): Don't GCPRO menu_bar_items_vector here.
827 (syms_of_keyboard): Initialize and staticpro menu_bar_items_vector.
828
829 2005-07-07 Kim F. Storm <storm@cua.dk>
830
831 * window.c (Frecenter): Fix last change (set iarg before use).
832
833 2005-07-06 Richard M. Stallman <rms@gnu.org>
834
835 * window.c (Frecenter): When arg is inside the scroll margin,
836 move it out of the margin.
837
838 2005-07-06 Jason Rumney <jasonr@gnu.org>
839
840 * w32console.c (initialize_w32_display): Detect when the console
841 dimensions are insane, and default to 80x25 instead.
842 (w32_use_full_screen_buffer): Default to NIL.
843
844 2005-07-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
845
846 * macterm.c (mac_draw_vertical_window_border): Use foreground of
847 VERTICAL_BORDER_FACE_ID for vertical border line.
848 (mac_encode_char): Call check_ccl_update in advance.
849 (mac_to_x_fontname, x_font_name_to_mac_font_name)
850 (init_font_name_table, mac_do_list_fonts, XLoadQueryFont):
851 Don't assume that font family length is less than 32.
852 (x_compute_min_glyph_bounds): Make static.
853 (x_load_font): Never set fonts_changed_p to zero.
854
855 2005-07-04 Lute Kamstra <lute@gnu.org>
856
857 * Update FSF's address in GPL notices.
858
859 2005-07-03 Richard M. Stallman <rms@gnu.org>
860
861 * xdisp.c (try_window): Fix previous change in how it handles
862 a partially-visible line or one only partly past the margin.
863
864 * window.c (window_scroll_pixel_based): Take account
865 of this_scroll_margin when finding point when scrolling up.
866
867 2005-06-29 Ralf Angeli <angeli@iwi.uni-sb.de>
868
869 * window.c (window_scroll_pixel_based, window_scroll_line_based):
870 Handle `scroll-preserve-screen-position' non-nil, non-t specially.
871 (syms_of_window): <scroll-preserve-screen-position>: Doc fix.
872
873 2005-07-02 Juri Linkov <juri@jurta.org>
874
875 * w32term.c (w32_draw_vertical_window_border): Use foreground of
876 VERTICAL_BORDER_FACE_ID for vertical border line.
877
878 2005-07-02 Eli Zaretskii <eliz@gnu.org>
879
880 * fileio.c (Fcopy_file): Rearrange the code that calls fchown and
881 fchmod so that chmod doesn't get called on MSDOS before the file
882 is closed.
883
884 2005-07-01 Jason Rumney <jasonr@gnu.org>
885
886 * w32term.c (cleartype_active): New flag for enabling sub-pixel
887 workaround.
888 (w32_initialize): Initialize it.
889 (w32_native_per_char_metric): Allow a couple of extra pixels when
890 Cleartype is active.
891
892 * w32term.c (w32_initialize): Move check for screen reader here
893 from syms_of_w32term.
894
895 2005-06-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
896
897 * xterm.c (handle_one_xevent): bzero compose_status when nbytes
898 is not zero.
899
900 2005-07-01 Masatake YAMATO <jet@gyve.org>
901
902 * emacs.c (main): Passing ADD_NO_RANDOMIZE to `personality'.
903
904 2005-06-30 Juri Linkov <juri@jurta.org>
905
906 * xdisp.c (x_draw_vertical_border): If left fringe is not present
907 decrease x coord of vertical border by 1 pixel to not occupy text
908 area of the right window.
909
910 * xterm.c (x_draw_vertical_window_border): Use foreground of
911 VERTICAL_BORDER_FACE_ID for vertical border line.
912
913 * term.c (turn_on_face): In standout mode apply specified
914 fg to bg, and specified bg to fg (this makes the logic of
915 inversion on terminal consistent with X).
916
917 2005-06-29 Juanma Barranquero <lekktu@gmail.com>
918
919 * eval.c (user_variable_p_eh): New function.
920 (Fuser_variable_p): Use it. Clarify docstring.
921 Return t for aliases of user options, nil for alias loops.
922
923 2005-06-27 Richard M. Stallman <rms@gnu.org>
924
925 * eval.c (Fdefvar): Improve error message.
926
927 2005-06-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
928
929 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Fix last
930 change.
931
932 2005-06-27 Juanma Barranquero <lekktu@gmail.com>
933
934 * eval.c (Fdefvar): Don't try to set constant symbols.
935
936 2005-06-25 Richard M. Stallman <rms@gnu.org>
937
938 * macfns.c (Fx_show_tip): Pass new arg to try_window.
939
940 * w32fns.c (Fx_show_tip): Pass new arg to try_window.
941
942 * xfns.c (Fx_show_tip): Pass new arg to try_window.
943
944 * xdisp.c (try_window): New arg CHECK_MARGINS. Calls changed.
945 (redisplay_window): Handle try_window reporting point in scroll margin.
946
947 * dispextern.h (try_window): Declare new arg.
948
949 * fileio.c (Fcopy_file): New arg PRESERVE_UID_GID.
950 Use fchmod to copy the file modes.
951 (Frename_file): Don't copy UID and GID here;
952 instead, specify t for PRESERVE_UID_GID when calling Fcopy_file.
953
954 * eval.c (call_debugger): Take full care of extending stack limits
955 to make space for the debugger, and restore the change afterward.
956 Bind debug-on-error to nil.
957 (restore_stack_limits): New subroutine.
958 (Fsignal): Extend specpdl bound along with eval depth bound,
959 for calling edebug. Don't do either one, for calling debugger.
960 (find_handler_clause): Don't bind debug-on-error here.
961 Don't unbind anything either.
962 Temporarily advance max_specpdl_size for calling
963 internal_with_output_to_temp_buffer.
964 (grow_specpdl): Don't alter max_specpdl_size before signaling
965 an error.
966 (syms_of_eval) <max-specpdl-size>: Doc fix.
967
968 * lread.c (read1): 0.0e+NaN should make a "positive" NaN.
969
970 2005-06-24 Eli Zaretskii <eliz@gnu.org>
971
972 * fileio.c (Frename_file): Undo last change: no need to ifdef away
973 chown on DOS_NT platforms.
974
975 * w32.c (sys_chown): New function.
976
977 * s/ms-w32.h (chown): New; define to sys_chown.
978
979 2005-06-24 Juanma Barranquero <lekktu@gmail.com>
980
981 * xdisp.c (syms_of_xdisp) <nobreak-char-display>: Doc fix.
982 (syms_of_xdisp) <void-text-area-pointer>: Doc fix.
983
984 * fileio.c (Frename_file)[!DOS_NT]: Don't call chown on MSDOS/Windows.
985
986 2005-06-23 Richard M. Stallman <rms@gnu.org>
987
988 * xdisp.c (get_next_display_element): Finish reversing the tests of
989 Vnobreak_char_display.
990
991 * xdisp.c (Vnobreak_char_display): Rename from Vshow_nonbreak_escape.
992 All uses changed.
993 (Qnobreak_space): Rename from Qno_break_space. All uses changed.
994 (syms_of_xdisp): Define nobreak-char-display and nobreak-space.
995
996 * fileio.c (Frename_file): Preserve owner and group, if possible,
997 when copying.
998
999 2005-06-23 Juanma Barranquero <lekktu@gmail.com>
1000
1001 * abbrev.c (Funexpand_abbrev):
1002 * category.c (Fmake_category_set):
1003 * dispnew.c (Fsleep_for, Fsit_for):
1004 * editfns.c (Fsubst_char_in_region):
1005 * eval.c (Fdefvar, Fdefconst, Feval, Ffuncall):
1006 * frame.c (make_frame_without_minibuffer):
1007 * lread.c (read_vector):
1008 * macfns.c (check_x_frame):
1009 * process.c (Fstop_process, Fcontinue_process):
1010 * search.c (Freplace_match):
1011 * syntax.c (Fstring_to_syntax):
1012 * w32fns.c (check_x_frame, check_x_display_info):
1013 * xfaces.c (x_supports_face_attributes_p):
1014 * xselect.c (Fx_own_selection_internal): Follow error conventions.
1015
1016 * image.c (fn_png_init_io): Don't define it.
1017 (init_png_functions) [HAVE_NTGUI]: Don't initialize fn_png_init_io.
1018 (png_read_from_file): New function, based on png_read_from_memory.
1019 (png_load): Use it, instead of fn_png_init_io.
1020
1021 2005-06-23 Kim F. Storm <storm@cua.dk>
1022
1023 * search.c (Fmatch_data): Remove evaporate option.
1024 (Fset_match_data): Do not mention evaporate option in doc string.
1025 Add commentary explaining evaporate arg (for internal use only).
1026 (unwind_set_match_data): Add comment on evaporate use.
1027
1028 2005-06-22 Miles Bader <miles@gnu.org>
1029
1030 * xfaces.c (Qvertical_border): Rename from `Qvertical_divider'.
1031 (realize_basic_faces, syms_of_xfaces): Update references to it.
1032 * dispextern.h (enum face_id): Rename `VERTICAL_DIVIDER_FACE_ID'
1033 to `VERTICAL_BORDER_FACE_ID'.
1034 * dispnew.c (build_frame_matrix_from_leaf_window): Update references.
1035
1036 2005-06-21 Juri Linkov <juri@jurta.org>
1037
1038 * dispextern.h: Add extern Qframe_set_background_mode.
1039
1040 * xfaces.c: Rename obsolete function Qframe_update_face_colors to
1041 Qframe_set_background_mode.
1042
1043 * frame.c (Fmodify_frame_parameters):
1044 Call frame-set-background-mode after changing the background color
1045 on non-window non-dos branch.
1046
1047 2005-06-21 Juanma Barranquero <lekktu@gmail.com>
1048
1049 * fns.c (Fchar_table_range):
1050 * process.c (Fmake_network_process): Fix spellings.
1051
1052 2005-06-20 Kim F. Storm <storm@cua.dk>
1053
1054 * fns.c (Fsort): Doc fix.
1055
1056 2005-06-20 Miles Bader <miles@gnu.org>
1057
1058 * xfaces.c (Qvertical_divider): New variable.
1059 (realize_basic_faces): Realize its face.
1060 (syms_of_xfaces): Initialize it.
1061
1062 * dispextern.h (enum face_id): Add `VERTICAL_DIVIDER_FACE_ID'.
1063
1064 * dispnew.c (build_frame_matrix_from_leaf_window): Display vertical
1065 window-separator on ttys using `vertical-divider' face by default.
1066
1067 2005-06-17 Richard M. Stallman <rms@gnu.org>
1068
1069 * xdisp.c (get_next_display_element):
1070 Reverse test of Vshow_nonbreak_escape.
1071
1072 * term.c (produce_special_glyphs): Use spec_glyph_lookup_face.
1073 (Ftty_no_underline): New function.
1074 (syms_of_term): defsubr it.
1075
1076 * keyboard.c (read_char): Call restore_getcjmp after jump occurs.
1077
1078 * dispnew.c (spec_glyph_lookup_face): New function.
1079 (build_frame_matrix_from_leaf_window): Use it.
1080
1081 * dispextern.h (spec_glyph_lookup_face): Add declaration.
1082
1083 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
1084
1085 2005-06-12 Richard M. Stallman <rms@gnu.org>
1086
1087 * keyboard.c (read_char): After catching a longjmp,
1088 call restore_getcjmp.
1089
1090 2005-06-17 Juanma Barranquero <lekktu@gmail.com>
1091
1092 * xselect.c (lisp_data_to_selection_data): Fix spelling.
1093
1094 2005-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1095
1096 * macterm.c (mac_compute_glyph_string_overhangs): Don't set
1097 overhangs unless the given glyph type is noncomposite CHAR_GLYPH.
1098 [USE_CARBON_EVENTS] (mac_convert_event_ref): Convert dead key down
1099 events.
1100 (XTread_socket): Don't pass keyboard events with the option
1101 modifier to the system when Vmac_command_key_is_meta is nil or
1102 Vmac_option_modifier is non-nil.
1103 [USE_CARBON_EVENTS] (read_socket_inev): New variable.
1104 [USE_CARBON_EVENTS] (init_command_handler): Fix argument.
1105 [USE_CARBON_EVENTS] (mac_handle_mouse_event): New Carbon event
1106 handler function.
1107 (install_window_handler) [USE_CARBON_EVENTS]: Install it.
1108 (XTread_socket) [USE_CARBON_EVENTS]: Move mouse wheel event
1109 handler part to mac_handle_mouse_event.
1110
1111 2005-06-14 Juanma Barranquero <lekktu@gmail.com>
1112
1113 * eval.c (Fdefvaralias): Rename arguments SYMBOL and ALIASED to
1114 NEW-ALIAS and BASE-VARIABLE, respectively.
1115
1116 2005-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
1117
1118 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
1119 (get_phys_cursor_geometry, format_mode_line_unwind_data)
1120 (get_line_height_property, x_produce_glyphs): Remove unused vars.
1121
1122 * coding.c (run_pre_post_conversion_on_str): Remove unused var `buf'.
1123
1124 2005-06-13 Eli Zaretskii <eliz@gnu.org>
1125
1126 * w32term.c (x_use_underline_position_properties): New variable.
1127 (x_draw_glyph_string): Remind in a comment to change doc string of
1128 x-use-underline-position-properties if/when underline positioning
1129 is implemented.
1130 (syms_of_w32term): DEFVAR_BOOL x-use-underline-position-properties,
1131 and initialize it to nil.
1132
1133 2005-06-12 Jason Rumney <jasonr@gnu.org>
1134
1135 * w32fns.c (NEWOPENFILENAME): New struct.
1136 (Fx_file_dialog): Use it to trick the system into giving us up to
1137 date dialogs on systems that are documented to support it.
1138 Do not set OFN_FILEMUSTEXIST flag if looking for a directory.
1139
1140 2005-06-12 Eli Zaretskii <eliz@gnu.org>
1141
1142 * w32fns.c (w32_abort): Use the MB_YESNO dialog instead of
1143 MB_ABORTRETRYIGNORE. Never return, even if DebugBreak does.
1144
1145 2005-06-11 Eli Zaretskii <eliz@gnu.org>
1146
1147 * image.c (x_create_x_image_and_pixmap) [HAVE_NTGUI]: Cast 4th arg
1148 to CreateDIBSection to avoid a compiler warning.
1149 (pbm_load): Cast 3rd arg to IMAGE_BACKGROUND to avoid a compiler
1150 warning.
1151 (png_load): Cast return values of fn_png_create_read_struct and
1152 fn_png_create_info_struct, to avoid compiler warnings on W32.
1153 Cast 3rd arg to IMAGE_BACKGROUND and image_background_transparent
1154 to avoid compiler warnings.
1155 (jpeg_load): Cast return value of fn_jpeg_std_error to avoid a
1156 compiler warning on W32. Cast 3rd arg to IMAGE_BACKGROUND to
1157 avoid a compiler warning.
1158 (tiff_load): Cast return values of fn_TIFFOpen and
1159 fn_TIFFClientOpen to avoid compiler warning on W32. Cast 3rd arg
1160 to IMAGE_BACKGROUND to avoid a compiler warning.
1161 (gif_load): Cast return values of fn_DGifOpenFileName and
1162 fn_DGifOpen to avoid compiler warnings on W32. Cast 3rd arg to
1163 IMAGE_BACKGROUND to avoid a compiler warning.
1164 (DrawText) [HAVE_NTGUI || MAC_OS]: If already defined, undef
1165 before redefining.
1166
1167 * w32bdf.c (create_offscreen_bitmap): Cast `bitsp' to `void **' in
1168 the call to CreateDIBSection, to avoid a compiler warning.
1169
1170 2005-06-11 Jason Rumney <jasonr@gnu.org>
1171
1172 * w32fns.c (Fx_file_dialog): Unblock input before falling back to
1173 minibuffer.
1174 * macfns.c (Fx_file_dialog): Likewise.
1175
1176 2005-06-10 Eli Zaretskii <eliz@gnu.org>
1177
1178 * makefile.w32-in ($(TEMACS)): Depend on addsection.exe.
1179
1180 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
1181
1182 * process.c (syms_of_process) [ADAPTIVE_READ_BUFFERING]:
1183 * w32fns.c (syms_of_w32fns): Fix spellings.
1184
1185 2005-06-10 Eli Zaretskii <eliz@gnu.org>
1186
1187 * unexw32.c (COPY_CHUNK, COPY_PROC_CHUNK): Add a new argument
1188 `verbose'; print diagnostic messages only if it is non-zero.
1189 All callers changed to pass a zero value unless DEBUG_DUMP is defined
1190 in the environment.
1191 (copy_executable_and_dump_data): Print section names with %.8s.
1192
1193 2005-06-10 Masatake YAMATO <jet@gyve.org>
1194
1195 * xdisp.c (note_mode_line_or_margin_highlight): Call clear_mouse_face
1196 when mouse_face is not given.
1197
1198 2005-06-09 Luc Teirlinck <teirllm@auburn.edu>
1199
1200 * window.c (Fselect_window): Adapt call to Fselect_frame.
1201
1202 * lisp.h: Update EXFUN of Fselect_frame.
1203
1204 * keyboard.c (command_loop_1): Adapt call to Fselect_frame.
1205
1206 * frame.c (Fhandle_switch_frame, Fselect_frame): Delete unused arg
1207 no_enter.
1208 (Fset_mouse_position, Fset_mouse_pixel_position, Ficonify_frame):
1209 Adapt to above change.
1210
1211 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
1212
1213 * fns.c (Fmemq, Fmaphash): Doc fixes.
1214
1215 2005-06-09 Juanma Barranquero <lekktu@gmail.com>
1216
1217 * xfaces.c (Fdisplay_supports_face_attributes_p):
1218 Fix typo in docstring.
1219
1220 2005-06-08 Steven Tamm <steventamm@mac.com>
1221
1222 * unexmacosx.c (copy_data_segment): Copy __la_sym_ptr2 section
1223 used by gcc4 on intel mac.
1224
1225 2005-06-09 Kim F. Storm <storm@cua.dk>
1226
1227 * search.c (Fmatch_data): Add optional RESEAT arg. Unchain markers
1228 in REUSE list if non-nil; free them if equal to evaporate.
1229 (Fset_match_data): Add optional RESEAT arg. Unchain markers in LIST
1230 if non-nil; free them if equal to evaporate. Use XCAR/XCDR.
1231 (restore_search_regs): Rename from restore_match_data. Uses changed.
1232 (unwind_set_match_data): New function.
1233 (record_unwind_save_match_data): New function like save-match-data.
1234
1235 * lisp.h (Fmatch_data, Fset_match_data): Fix EXFUN.
1236 (record_unwind_save_match_data): Add prototype.
1237 (restore_search_regs): Rename from restore_match_data.
1238
1239 * composite.c (compose_chars_in_text):
1240 * eval.c (do_autoload):
1241 * macmenu.c (set_frame_menubar):
1242 * process.c (read_process_output, exec_sentinel):
1243 * xmenu.c (set_frame_menubar):
1244 * xdisp.c (prepare_menu_bars, update_menu_bar, update_tool_bar):
1245 * w32menu.c (set_frame_menubar):
1246 Use record_unwind_save_match_data.
1247
1248 2005-06-08 Richard M. Stallman <rms@gnu.org>
1249
1250 * xdisp.c (get_next_display_element): Alter previous change:
1251 Distinguish Vshow_nonbreak_escape = t or not t.
1252 For t, use escape_glyph once again, as before previous change.
1253 Use space or hyphen for display, instead of the non-ASCII char.
1254 (syms_of_xdisp) <show-nonbreak-escape>: Doc fix.
1255
1256 * process.c (Fstart_process): Don't touch command_channel_p slot.
1257
1258 * process.h (struct process): Delete command_channel_p.
1259
1260 2005-06-07 Masatake YAMATO <jet@gyve.org>
1261
1262 * xdisp.c (note_mode_line_or_margin_highlight):
1263 Check the overlapping of re-rendering area to avoid flickering.
1264 (note_mouse_highlight): Call clear_mouse_face if PART
1265 is not ON_MODE_LINE nor ON_HEADER_LINE.
1266
1267 2005-06-07 Kim F. Storm <storm@cua.dk>
1268
1269 * process.c: Improve commentary for adaptive read buffering.
1270
1271 2005-06-06 Stefan Monnier <monnier@iro.umontreal.ca>
1272
1273 * xterm.c (x_create_toolkit_scroll_bar): Use XtNarrowScrollbars
1274 if available.
1275
1276 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1277
1278 * macmenu.c (menu_quit_handler, install_menu_quit_handler):
1279 New functions for popping down menus on C-g.
1280 (set_frame_menubar, mac_menu_show): Call install_menu_quit_handler.
1281
1282 * macterm.c: Make mac_quit_char_modifiers and mac_quit_char_keycode
1283 non-static.
1284
1285 * config.in: Add HAVE_CANCELMENUTRACKING.
1286
1287 2005-06-06 Eli Zaretskii <eliz@gnu.org>
1288
1289 * w32heap.h (OFFSET_TO_RVA, RVA_TO_OFFSET, RVA_TO_PTR): Remove macros.
1290
1291 * unexw32.c (RVA_TO_PTR): Move here from w32heap.h.
1292
1293 * w32proc.c (RVA_TO_PTR): New macro.
1294
1295 * w32heap.c (RVA_TO_PTR): No need to #undef now.
1296
1297 * makefile.w32-in ($(BLD)/emacs.$(O), $(BLD)/w32select.$(O)):
1298 Depend on w32heap.h.
1299
1300 2005-06-06 Luc Teirlinck <teirllm@auburn.edu>
1301
1302 * keyboard.c (command_loop_1): Update Vthis_original_command.
1303
1304 2005-06-06 Richard M. Stallman <rms@gnu.org>
1305
1306 * xmenu.c (popup_get_selection): Undo previous change.
1307
1308 2005-06-06 Juri Linkov <juri@jurta.org>
1309
1310 * xdisp.c (Qno_break_space): New variable.
1311 (syms_of_xdisp): Initialize it.
1312 (get_next_display_element): Add no-break space and soft hypen
1313 codes for iso8859-2 and iso8859-5. Don't add `\' for them.
1314 Use `no-break-space' face for no-break spaces.
1315
1316 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1317
1318 * window.c (delete_window): Handle the case where a h/vchild has
1319 a h/vchild.
1320
1321 2005-06-05 Eli Zaretskii <eliz@gnu.org>
1322
1323 * w32.c (sys_setsockopt): Change arg 4 to `const void *'. In the
1324 call to pfn_setsockopt, cast optval to `const char *'.
1325
1326 2005-06-04 Eli Zaretskii <eliz@gnu.org>
1327
1328 * w32.c (gettimeofday): Use struct _timeb, not struct timeb.
1329 (open_unc_volume): Cast return value of map_w32_filename, to avoid
1330 compiler warnings.
1331
1332 * s/ms-w32.h (fileno): Don't define if already defined.
1333
1334 * emacs.c: Include w32heap.h, to avoid compiler warning about sbrk.
1335
1336 * makefile.w32-in (DOC): Define to point to the generated DOC-X.
1337
1338 2005-06-04 Richard M. Stallman <rms@gnu.org>
1339
1340 * xmenu.c (popup_get_selection): Click not in menu deactivates menu.
1341
1342 2005-06-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1343
1344 * macmenu.c (cleanup_popup_menu): New function.
1345 (Fx_popup_menu): unwind protect cleanup_popup_menu in case
1346 mac_menu_show Quit:s.
1347 (mac_menu_show): Quit on cancel if not popped up on click (i.e.
1348 a dialog).
1349
1350 2005-06-04 Kim F. Storm <storm@cua.dk>
1351
1352 * coding.c (decode_coding_string): Handle CODING_FINISH_INTERRUPT.
1353
1354 * callproc.c (Fcall_process): Don't use alloca to gradually
1355 increase size of buf, as it effectively uses twice the necessary
1356 space on the stack. Instead, pre-allocate buf of full size, and
1357 gradually increase the read size.
1358
1359 * bytecode.c (BYTE_CODE_QUIT): Check Vthrow_on_input.
1360
1361 * eval.c (unbind_to): Preserve value of Vquit_flag.
1362
1363 * xterm.c (handle_one_xevent): Also ignore mouse motion just
1364 before a button release event.
1365
1366 2005-06-03 Juanma Barranquero <lekktu@gmail.com>
1367
1368 * xfaces.c (Finternal_lisp_face_equal_p): Really report
1369 on faces in a frame, if the argument FRAME is non-nil.
1370 Improve argument/docstring consistency.
1371
1372 2005-06-02 Kim F. Storm <storm@cua.dk>
1373
1374 * xdisp.c (MODE_LINE_NOPROP_LEN): New macro.
1375 (x_consider_frame_title, Fformat_mode_line): Save offset into
1376 mode_line_noprop_buf rather than pointer, in case buffer is relocated.
1377
1378 2005-06-01 Kim F. Storm <storm@cua.dk>
1379
1380 * fns.c (mapcar1): Maybe exit loop if original sequence was modified.
1381
1382 2005-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1383
1384 * macterm.c (mac_to_x_fontname, mac_do_list_fonts): Set XLFD
1385 resolution fields for scalable fonts to 0.
1386
1387 * xfaces.c (build_scalable_font_name): Round pixel size to the
1388 nearest integer.
1389
1390 2005-06-01 Kim F. Storm <storm@cua.dk>
1391
1392 * xdisp.c (display_mode_line): Support nested calls to redisplay
1393 and format-mode-line. Set mode_line_target to MODE_LINE_DISPLAY.
1394
1395 2005-05-31 Stefan Monnier <monnier@iro.umontreal.ca>
1396
1397 * fileio.c (Finsert_file_contents):
1398 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
1399
1400 2005-05-31 Kim F. Storm <storm@cua.dk>
1401
1402 * xdisp.c (mode_line_noprop_buf, mode_line_noprop_buf_end)
1403 (mode_line_noprop_ptr): Rename from frame_title_*.
1404 (store_mode_line_noprop_char): Rename from store_frame_title_char.
1405 (store_mode_line_noprop): Rename from store_frame_title.
1406 (mode_line_target): New enum to specify current output target
1407 for mode line formatting.
1408 (display_mode_element): Test it rather than frame_title_ptr and
1409 mode_line_string_list to determine where output should go.
1410 (mode_line_proptrans_alist, mode_line_string_alist): Make static.
1411 (Vmode_line_unwind_vector): New variable.
1412 (format_mode_line_unwind_data, unwind_format_mode_line):
1413 New functions for unwind protection in mode line formatting.
1414 (x_consider_frame_title): Use them and new local var 'title_start'
1415 to support nested calls to format-mode-line and redisplay.
1416 Set mode_line_target to MODE_LINE_TITLE.
1417 (Fformat_mode_line): Use them and new local var 'string_start' to
1418 support nested calls to format-mode-line and redisplay.
1419 Set mode_line_target to MODE_LINE_NOPROP or MODE_LINE_STRING.
1420 Don't trim trailing dashes.
1421 (decode_mode_spec): Don't make infinite number of trailing dashes
1422 for MODE_LINE_NOPROP and MODE_LINE_STRING targets.
1423 (syms_of_xdisp): Initialize and staticpro mode_line_string_face,
1424 mode_line_string_face_prop, and Vmode_line_unwind_vector.
1425 (init_xdisp): Initialize mode_line_noprop_ptr to start of _buf.
1426 Initialize mode_line_target to MODE_LINE_DISPLAY.
1427
1428 2005-05-29 Richard M. Stallman <rms@gnu.org>
1429
1430 * buffer.c (Fbuffer_local_value): Call indirect_variable.
1431
1432 2005-05-28 Masatake YAMATO <jet@gyve.org>
1433
1434 * xdisp.c (note_mode_line_or_margin_highlight): Change the
1435 pointer to a hand cursor when hoovering over a mouse-face.
1436
1437 2005-05-27 Kenichi Handa <handa@m17n.org>
1438
1439 * xterm.c (x_encode_char): Call check_ccl_update in advance.
1440
1441 * ccl.c: Now an element of Vccl_program_table is a vector of
1442 length 4, not 3.
1443 (ccl_get_compiled_code): New arg idx. Caller changed.
1444 Adjust for the change of Vccl_program_table.
1445 (setup_ccl_program): Adjust for the change of Vccl_program_table.
1446 (check_ccl_update): New function.
1447 (Fregister_ccl_program): Use ASET to set an element of a vector.
1448 Adjusted for the change of Vccl_program_table.
1449
1450 * ccl.h (struct ccl_program): New member idx.
1451 (check_ccl_update): Extern it.
1452
1453 2005-05-27 Juanma Barranquero <lekktu@gmail.com>
1454
1455 * image.c (Vimage_library_alist): Move from image.el.
1456 (syms_of_image): Defvar it.
1457 (lookup_image_type): Use it.
1458
1459 * buffer.c (Fbuffer_local_value): Make argument name match its use
1460 in docstring.
1461
1462 2005-05-26 Juanma Barranquero <lekktu@gmail.com>
1463
1464 * keyboard.c (Frecursive_edit): Fix typo in docstring.
1465 (Fposn_at_x_y): Make argument name match its use in docstring.
1466
1467 2005-05-26 Lute Kamstra <lute@gnu.org>
1468
1469 * eval.c (Frun_hooks): Mention run-mode-hooks in docstring.
1470
1471 2005-05-24 Masatake YAMATO <jet@gyve.org>
1472
1473 * xdisp.c (note_mode_line_or_margin_highlight): Use b and e
1474 as loop sentinels.
1475
1476 2005-05-24 Nick Roberts <nickrob@snap.net.nz>
1477
1478 * xmenu.c (Fx_popup_dialog): Add a third boolean argument to
1479 select frame title ("Question"/"Information").
1480 (xdialog_show): Use it.
1481
1482 * macmenu.c (Fx_popup_dialog, mac_dialog_show): As for xmenu.c.
1483
1484 * w32menu.c (Fx_popup_dialog, w32_dialog_show): As for xmenu.c.
1485
1486 * fns.c (Fyes_or_no_p, Fy_or_n_p): Call Fx_popup_dialog with
1487 a third argument (Qnil).
1488
1489 * lisp.h: x-popup-dialog can have three arguments.
1490
1491 * editfns.c (Fmessage_box): Use "Information" for frame title.
1492
1493 2005-05-23 Thien-Thi Nguyen <ttn@gnu.org>
1494
1495 * termcap.c [VMS]: Include <starlet.h>.
1496
1497 2005-05-23 Masatake YAMATO <jet@gyve.org>
1498
1499 * xdisp.c (note_mode_line_or_margin_highlight): Add code
1500 for mouse-face. Change the type of the first argument from `window'
1501 to `Lisp_Object'.
1502 (note_mouse_highlight): Call note_mode_line_or_margin_highlight with
1503 window instead of w.
1504
1505 2005-05-22 Andreas Schwab <schwab@suse.de>
1506
1507 * process.c (send_process): Move misplaced volatile.
1508
1509 2005-05-21 Richard M. Stallman <rms@gnu.org>
1510
1511 * xdisp.c (display_mode_element): If we're processing a list and
1512 padding is specified, put it after the last element.
1513
1514 2005-05-21 Eli Zaretskii <eliz@gnu.org>
1515
1516 * fileio.c (Fexpand_file_name) [DOS_NT]: Don't try to support
1517 "superroot" on DOS_NT systems.
1518
1519 2005-05-21 David Hunter <hunterd42@comcast.net> (tiny change)
1520
1521 * process.c (send_process): Restore the SIGPIPE handler if we
1522 catch a SIGPIPE.
1523
1524 2005-05-20 Juanma Barranquero <lekktu@gmail.com>
1525
1526 * image.c (lookup_image, png_read_from_memory): Remove hacks (and
1527 misleading comments).
1528 (DEF_IMGLIB_FN): Use C calling convention for image libraries.
1529
1530 2005-05-20 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
1531
1532 * window.c (Fwindow_inside_edges, Fwindow_inside_pixel_edges):
1533 Correct the right value.
1534
1535 2005-05-19 Nick Roberts <nickrob@snap.net.nz>
1536
1537 * keyboard.c (syms_of_keyboard): Remove Lisp variables
1538 post-command-idle-hook and post-command-idle-delay.
1539 (command_loop_1): Don't try to execute post-command-idle-hook.
1540
1541 2005-05-16 Kim F. Storm <storm@cua.dk>
1542
1543 * xdisp.c (handle_display_prop): Handle empty replacement.
1544 (handle_single_display_spec): Return -1 for empty replacement.
1545
1546 * keyboard.c (adjust_point_for_property): Skip empty overlay string.
1547
1548 * .gdbinit (pitx): Print more info about iterator.
1549
1550 2005-05-16 Andreas Schwab <schwab@suse.de>
1551
1552 * unexmacosx.c (unexec_realloc): Move declarations before statements.
1553
1554 2005-05-14 Richard M. Stallman <rms@gnu.org>
1555
1556 * xdisp.c (message3): Call cancel_echoing.
1557
1558 * alloc.c (Fmemory_full_p): New function.
1559 (syms_of_alloc): defsubr it.
1560
1561 * process.c (send_process_trap): Unblock SIGPIPE.
1562 (send_process): Reset SIGPIPE handler before reporting error.
1563
1564 2005-05-14 Nick Roberts <nickrob@snap.net.nz>
1565
1566 * emacs.c (syms_of_emacs): Fix doc string for system-type.
1567
1568 2005-05-13 Richard M. Stallman <rms@gnu.org>
1569
1570 * fileio.c (Ffind_file_name_handler): Handle lambda-exp as handler.
1571 (Finsert_file_contents): If we read 0 bytes from a special file,
1572 unlock the visited file if we locked it.
1573 (Fmake_symbolic_link, Frecent_auto_save_p): Doc fixes.
1574 (Ffile_exists_p, Ffile_symlink_p): Doc fixes.
1575
1576 2005-05-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1577
1578 * emacs.c (main) [MAC_OS8]: Call init_atimer before mac_term_init.
1579
1580 * keyboard.c (readable_events) [USE_TOOLKIT_SCROLL_BARS]:
1581 Regard toolkit scroll bar thumb drag events as squeezable and prevent
1582 redisplay from being paused by them.
1583
1584 * mac.c [!MAC_OSX]: Include keyboard.h and syssignal.h.
1585 [!MAC_OSX] (target_ticks): Remove variable.
1586 [!MAC_OSX] (check_alarm, pause, index): Remove functions.
1587 [!MAC_OSX && __MRC__] (sys_strftime): Likewise.
1588 [!MAC_OSX] (select): If fd 0 is not set in rfds and some input
1589 event occurs before timeout, behave as if the function were interrupted.
1590 [!MAC_OSX] (sigblock, sigsetmask, alarm): Simulate SIGALRM
1591 handling using Time Manager routines.
1592 [!MAC_OSX] (mac_atimer_task, mac_atimer_qlink, signal_mask):
1593 New variables.
1594 [!MAC_OSX] (mac_atimer_handler, set_mac_atimer, remove_mac_atimer)
1595 (setitimer): New functions.
1596
1597 * macfns.c, macmenu.c: Don't include signal.h.
1598
1599 * macterm.c [USE_TOOLKIT_SCROLL_BARS] (get_control_part_bounds):
1600 Rename from get_control_part_bound. All callers changed.
1601 (x_scroll_bar_clear): New function.
1602 (x_clear_frame): Use it.
1603 (XTset_vertical_scroll_bar): Don't call Draw1Control.
1604 (x_scroll_bar_handle_click): Change type of second argument from
1605 int to ControlPartCode.
1606 (check_alarm): Remove declaration.
1607 (XTread_socket) [!TARGET_API_MAC_CARBON]: Don't call it.
1608 (XTread_socket): Use ControlPartCode instead of SInt16.
1609
1610 2005-05-13 Nozomu Ando <nand@mac.com>
1611
1612 * unexmacosx.c: Include assert.h.
1613 (MACOSX_MALLOC_MULT16): New define.
1614 [MACOSX_MALLOC_MULT16] (ptr_in_unexec_regions): Determine whether
1615 ptr is in unexec regions by checking it is multiple of 16.
1616 (unexec_malloc_header_t): New typedef.
1617 (unexec_malloc, unexec_realloc, unexec_free): Store and use
1618 allocated size information in unexec_malloc_header.
1619
1620 2005-05-10 Richard M. Stallman <rms@gnu.org>
1621
1622 * xterm.c (noinclude): Add #undef.
1623
1624 * image.c, xfns.c, xmenu.c: Don't include signal.h.
1625
1626 2005-05-09 Juanma Barranquero <lekktu@gmail.com>
1627
1628 * fileio.c (Fexpand_file_name, Frename_file, Fadd_name_to_file)
1629 (Fmake_symbolic_link, Faccess_file, Frecent_auto_save_p):
1630 Doc fixes.
1631
1632 * dired.c (Ffile_name_completion): Make argument name
1633 match its use in docstring.
1634
1635 2005-05-08 Luc Teirlinck <teirllm@auburn.edu>
1636
1637 * eval.c (Fdefvaralias): Remove any pre-existing
1638 variable-documentation property of the alias.
1639
1640 2005-05-07 Thien-Thi Nguyen <ttn@gnu.org>
1641
1642 * xfns.c (start_hourglass): Do nothing when running on a tty.
1643
1644 2005-05-07 Juanma Barranquero <lekktu@gmail.com>
1645
1646 * fns.c (Fchar_table_range): Fix typos in docstring.
1647
1648 2005-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
1649
1650 * fns.c (Fchar_table_range): Yet Another Int/Lisp_Object Mixup.
1651
1652 2005-05-06 Eli Zaretskii <eliz@gnu.org>
1653
1654 * lread.c (Flocate_file_internal): Doc fix.
1655
1656 * Makefile.in (lisp, shortlisp): Add jka-cmpr-hook.elc.
1657
1658 2005-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1659
1660 * macselect.c (x_own_selection): Accept Lisp string as result of
1661 selection converter function.
1662 (x_clear_frame_selections): Don't call x-lost-selection-functions
1663 if Emacs is not owner of the selection.
1664 (Vmac_services_selection): Put variable and initialization in
1665 #ifdef MAC_OSX.
1666 (syms_of_macselect) [MAC_OSX]: Set default value of
1667 Vmac_services_selection to PRIMARY.
1668
1669 * macterm.c (toolkit_scroll_bar_interaction): Remove unused variable.
1670 (mac_handle_tool_bar_click): Remove unused function and declaration.
1671 [USE_TOOLKIT_SCROLL_BARS] (scroll_bar_timer_callback)
1672 (install_scroll_bar_timer, set_scroll_bar_timer)
1673 (control_part_code_to_scroll_bar_part, construct_scroll_bar_click)
1674 (get_control_part_bound, x_scroll_bar_handle_press)
1675 (x_scroll_bar_handle_release, x_scroll_bar_handle_drag)
1676 (x_set_toolkit_scroll_bar_thumb): New functions and declarations.
1677 [USE_TOOLKIT_SCROLL_BARS] (last_scroll_bar_part, scroll_bar_timer)
1678 (scroll_bar_timer_event_posted_p): New variables.
1679 [USE_TOOLKIT_SCROLL_BARS] (SCROLL_BAR_FIRST_DELAY)
1680 (SCROLL_BAR_CONTINUOUS_DELAY): New macros.
1681 (x_scroll_bar_create): Set control reference with NewControl.
1682 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
1683 Initialize track_top and track_height to nil.
1684 (x_scroll_bar_set_handle, x_scroll_bar_note_movement):
1685 Put functions in #ifndef USE_TOOLKIT_SCROLL_BARS.
1686 (XTset_vertical_scroll_bar): Don't make space between scroll bar
1687 and associated window.
1688 (XTset_vertical_scroll_bar) [MAC_OSX]: Get scroll bar area width
1689 from window config.
1690 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
1691 Set track_top and track_height to nil when scroll bar size is changed.
1692 Recalculate them if they are nil.
1693 (XTread_socket) [MAC_OSX]: Use control kind to determine if the
1694 clicked control is a scroll bar.
1695 (XTread_socket) [USE_TOOLKIT_SCROLL_BARS]: Use toolkit scroll bar
1696 event handler functions. Don't add modifiers to scroll bar click
1697 events. Call scroll bar release handler when window is deactivated.
1698 (mac_initialize): Remove unused code for X toolkit.
1699 (syms_of_macterm) [!USE_TOOLKIT_SCROLL_BARS]:
1700 Initialize Vx_toolkit_scroll_bars to nil.
1701
1702 * macterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
1703 New members track_top and track_height.
1704
1705 * sysselect.h [DARWIN || MAC_OSX]: Temporarily undefine
1706 init_process when including sys/select.h.
1707
1708 2005-05-05 Luc Teirlinck <teirllm@auburn.edu>
1709
1710 * eval.c (Fdefvaralias): Doc fix.
1711
1712 * xmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
1713
1714 2005-05-05 Kim F. Storm <storm@cua.dk>
1715
1716 * buffer.c (init_buffer_once): Set cursor_in_non_selected_windows
1717 default value.
1718 (syms_of_buffer): Add default-cursor-in-non-selected-windows.
1719 Fix type of cursor-in-non-selected-windows.
1720
1721 2005-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1722
1723 * mac.c: #undef init_process so not to conflict with system headers.
1724
1725 2005-05-02 Richard M. Stallman <rms@gnu.org>
1726
1727 * buffer.c (syms_of_buffer): Define cursor-in-non-selected-windows.
1728
1729 * buffer.h (struct buffer): Add cursor_in_non_selected_windows slot.
1730
1731 * xdisp.c (Vcursor_in_non_selected_windows)
1732 (Qcursor_in_non_selected_windows): Vars deleted.
1733 (syms_of_xdisp): Don't initialize them.
1734 (get_window_cursor_type): Use cursor_in_non_selected_windows
1735 buffer slot.
1736
1737 2005-05-02 Kim F. Storm <storm@cua.dk>
1738
1739 * macros.c (executing_kbd_macro_index): Rename from
1740 executing_macro_index. All uses changed.
1741 (executing_kbd_macro_iterations): Rename from
1742 executing_macro_iterations. All uses changed.
1743 (executing_kbd_macro): Rename from executing_macro.
1744 All uses changed.
1745 (syms_of_macros): Rename Lisp var executing-macro-index to
1746 executing-kbd-macro-index.
1747
1748 * xdisp.c (move_it_in_display_line_to): Fix last change.
1749
1750 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
1751
1752 * xmenu.c (Fx_popup_menu): Doc fix.
1753
1754 * charset.c (syms_of_charset): Delete defsubr for Schars_in_region.
1755
1756 2005-05-02 Jason Rumney <jasonr@gnu.org>
1757
1758 * emacs.c (USAGE3, USAGE4): Keep strings below 2048 bytes.
1759
1760 2005-05-02 Nozomu Ando <nand@mac.com>
1761
1762 * sysselect.h: Fix typo.
1763
1764 2005-05-02 Nick Roberts <nickrob@snap.net.nz>
1765
1766 * charset.c (Fchars_in_region): Remove as obsolete.
1767
1768 2005-05-01 Kim F. Storm <storm@cua.dk>
1769
1770 * xdisp.c (move_it_in_display_line_to): Stop if we move beyond
1771 TO_CHARPOS. This may happen if last glyphs was an image or stretch
1772 glyph.
1773
1774 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
1775
1776 * dispnew.c (sit_for): Vexecuting_macro -> Vexecuting_kbd_macro.
1777
1778 2005-05-01 Richard M. Stallman <rms@gnu.org>
1779
1780 * xmenu.c [not HAVE_X_TOOLKIT] (xmenu_show):
1781 If user cancels the menu, quit unless FOR_CLICK.
1782
1783 * macros.c (Vexecuting_kbd_macro): Rename from Vexecuting_macro.
1784 All uses changed.
1785 (syms_of_macros): Define only executing-kbd-macro, not executing-macro.
1786 * keyboard.c: Change Vexecuting_macro to Vexecuting_kbd_macro.
1787 * macros.h (Vexecuting_kbd_macro): Declare instead of Vexecuting_macro.
1788 * commands.h (Vexecuting_kbd_macro): Likewise.
1789
1790 2005-05-01 Thien-Thi Nguyen <ttn@gnu.org>
1791
1792 * sysdep.c (get_frame_size) [VMS]: Use a fresh i/o channel.
1793
1794 2005-04-30 Richard M. Stallman <rms@gnu.org>
1795
1796 * fileio.c (Ffind_file_name_handler): Handle the `operations'
1797 property of the file name handler.
1798 (Qoperations): New variable.
1799 (syms_of_fileio): Initialize and staticpro it.
1800
1801 * xdisp.c (set_message_1): Delete xassert.
1802
1803 2005-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1804
1805 * mac.c: Don't include time.h. Include sysselect.h after systime.h.
1806
1807 * macfns.c (Fx_server_version): Add BLOCK_INPUT around Gestalt.
1808
1809 * macgui.h [HAVE_CARBON && MAC_OSX]: Don't undefine/define mktime
1810 before/after including Carbon.h if there is a working mktime.
1811
1812 2005-04-28 Kim F. Storm <storm@cua.dk>
1813
1814 * xfaces.c (resolve_face_name): Add arg SIGNAL_P. Calls changed.
1815 Fix cyclic alias check. If alias loop is detected, signal
1816 circular-list error if SIGNAL_P, and return Qdefault if !SIGNAL_P.
1817
1818 2005-04-28 Lute Kamstra <lute@gnu.org>
1819
1820 * eval.c (do_autoload): Record only autoloads in the autoload
1821 property of symbols.
1822
1823 2005-04-28 Nick Roberts <nickrob@snap.net.nz>
1824
1825 * emacs.c (USAGE1): Add --basic-display and --quick options.
1826
1827 2005-04-27 Kim F. Storm <storm@cua.dk>
1828
1829 * data.c (syms_of_data) Staticpro Qcyclic_variable_indirection.
1830
1831 2005-04-26 Richard M. Stallman <rms@gnu.org>
1832
1833 * window.c (Fsame_window_p, Fspecial_display_p): Doc fixes.
1834 (syms_of_window): Doc fixes.
1835
1836 * indent.c (Fvertical_motion): Undo previous change.
1837
1838 2005-04-26 Kenichi Handa <handa@m17n.org>
1839
1840 * fns.c (char_table_range): New function.
1841 (Fchar_table_range): Signal an error if characters in the range
1842 have inconsistent values. Don't check the parent.
1843
1844 2005-04-25 Kenichi Handa <handa@m17n.org>
1845
1846 * fontset.c (fontset_set): Fix previous change.
1847
1848 2005-04-24 Richard M. Stallman <rms@gnu.org>
1849
1850 * indent.c (Fvertical_motion): Bind fontification-functions to nil.
1851
1852 2005-04-24 Eli Zaretskii <eliz@gnu.org>
1853
1854 * regex.c (re_search_2, re_match_2_internal): Convert second arg
1855 of RE_TRANSLATE to int, to shut up GCC warnings.
1856
1857 * fileio.c (Fcopy_file): Doc fix.
1858 [MSDOS]: Fix call to emacs_open: buffer_file_type not defined and
1859 not needed.
1860
1861 2005-04-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1862
1863 * Makefile.in [HAVE_CARBON] (MAC_OBJ): Add macselect.o.
1864 (SOME_MACHINE_OBJECTS): Likewise.
1865 (mac.o): Depend on ccl.h.
1866 (macselect.o): New target.
1867
1868 * emacs.c (main) [MAC_OS8 || MAC_OSX && HAVE_CARBON]:
1869 Call syms_of_macselect.
1870
1871 * frame.c (Fdelete_frame) [MAC_OS]: Call x_clear_frame_selections.
1872
1873 * mac.c [!TARGET_API_MAC_CARBON]: Don't include charset.h or coding.h.
1874 (QCLIPBOARD): Remove variable.
1875 (syms_of_mac): Don't initialize it.
1876 (Fmac_paste_function, Fmac_cut_function, Fx_selection_exists_p):
1877 Remove functions.
1878 (syms_of_mac): Don't defsubr them.
1879 [TARGET_API_MAC_CARBON] (Qmime_charset, QNFD, QNFKD, QNFC, QNFKC)
1880 (QHFS_plus_D, QHFS_plus_C): New variables.
1881 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
1882 [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp)
1883 (cfstring_create_normalized): New functions.
1884 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Likewise.
1885 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
1886
1887 * macterm.c (handling_window_update, terminate_flag):
1888 Remove variables.
1889 (do_window_update, do_ae_quit_application, XTread_socket):
1890 Don't use them.
1891 (WNE_SLEEP_AT_SUSPEND, WNE_SLEEP_AT_RESUME): Don't define.
1892 [USE_CARBON_EVENTS && MAC_OSX] (mac_handle_service_event)
1893 (init_service_handler): Move to macselect.c. Remove declarations.
1894 [USE_CARBON_EVENTS && MAC_OSX] (init_service_handler): Add extern.
1895 (Qapplication, Qabout): New variables.
1896 (syms_of_mac): Initialize them.
1897 [USE_CARBON_EVENTS && MAC_OSX] (Qpreferences, Qservices, Qpaste)
1898 (Qperform): New variables.
1899 (syms_of_mac) [USE_CARBON_EVENTS && MAC_OSX]: Initialize them.
1900 (do_get_menus) [TARGET_API_MAC_CARBON]: Don't call AppendResMenu.
1901 (do_menu_choice): Unhighlight menu bar also when menu_id is 0.
1902 (mac_store_application_menu_event, init_menu_bar): New functions.
1903 [USE_CARBON_EVENTS] (mac_handle_command_event)
1904 (init_command_handler): New functions.
1905 (mac_handle_window_event): Return noErr on window update event.
1906 (do_ae_quit_application): Call mac_store_application_menu_event.
1907 (mac_initialize) [USE_CARBON_EVENTS]: Call init_command_handler
1908 and init_menu_bar.
1909
1910 * macterm.h (x_clear_frame_selections): Add extern.
1911
1912 * macselect.c: New file for selection processing on Mac OS.
1913
1914 2005-04-23 Richard M. Stallman <rms@gnu.org>
1915
1916 * fileio.c (Fcopy_file): New arg MUSTBENEW.
1917 (Frename_file): Pass new arg to Fcopy_file.
1918
1919 * window.c (window_size_fixed): Variable deleted.
1920 (syms_of_window): Initialize window-size-fixed to nil.
1921 But don't DEFVAR window_size_fixed.
1922
1923 2005-04-23 Andreas Schwab <schwab@suse.de>
1924
1925 * m/macppc.h (LD_SWITCH_MACHINE) [LINUX]: Don't define.
1926 (START_FILES, LIB_STANDARD) [LINUX && _ARCH_PPC64]: Override to
1927 use lib64 instead of lib.
1928 (_LP64) [_ARCH_PPC64]: Define if not defined.
1929
1930 2005-04-23 David Hunter <hunterd42@comcast.net> (tiny change)
1931
1932 * s/ms-w32.h (HAVE_PWD_H): Define.
1933
1934 2005-04-22 Kenichi Handa <handa@m17n.org>
1935
1936 * fns.c (copy_sub_char_table): Explicitly copy the default value
1937 of the sub-chartable.
1938
1939 * fontset.c (fontset_set): When a sub-chartable is created,
1940 explicitly sets the defalt value.
1941
1942 2005-04-22 Kim F. Storm <storm@cua.dk>
1943
1944 * fns.c (Fplist_get): Replace by Fsafe_plist_get.
1945 (Fsafe_plist_get): Rename to Fplist_get.
1946 (Fsafe_get): Remove, as Fget now uses safe Fplist_get.
1947 (defsubr): Remove defsubr for Fsafe_plist_get and Fsafe_get.
1948
1949 * lisp.h (Fsafe_plist_get, Fsafe_get): Remove EXFUN.
1950
1951 * xdisp.c (store_mode_line_string, produce_stretch_glyph)
1952 (note_mode_line_or_margin_highlight, note_mouse_highlight):
1953 Use Fplist_get instead of Fsafe_plist_get.
1954
1955 * xfaces.c (resolve_face_name): Use Fget instead of Fsafe_get.
1956
1957 2005-04-21 Miles Bader <miles@gnu.org>
1958
1959 * xdisp.c (dump_glyph_row): Don't display overlay_arrow_p field.
1960
1961 2005-04-20 Thien-Thi Nguyen <ttn@gnu.org>
1962
1963 * sysdep.c: Remove reference to defunct vms-pwd.h.
1964 * dired.c: Likewise. Also, for pwd.h, use HAVE_PWD_H, not !VMS.
1965 * editfns.c, fileio.c, filelock.c, sysdep.c, xrdb.c: Likewise.
1966
1967 * config.in: Regenerate.
1968
1969 2005-04-20 Kenichi Handa <handa@m17n.org>
1970
1971 * lisp.h (CHAR_TABLE_DEFAULT_SLOT_ASCII): New macro.
1972 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_CONTROL): New macro.
1973 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_GRAPHIC): New macro.
1974
1975 * alloc.c (make_sub_char_table): Argument changed to initial
1976 value of the slots.
1977
1978 * data.c (Faref): Handle special slots used as default values of
1979 ascii, eight-bit-control, eight-bit-control. Don't ignore a
1980 default value set for a group of characters.
1981 (Faset): Signal an error if IDXVAL is not a valid character code.
1982 Make a sub-chartable with correct initial value.
1983
1984 * fns.c (Fset_char_table_range): Don't set slots used as default
1985 values for ascii, eight-bit-control, eight-bit-graphic.
1986 Don't call Faref with charset-id.
1987 (Fset_char_table_default): Document how to treat normal character
1988 argument. Handle special slots used as default values of ascii,
1989 eight-bit-control, eight-bit-control. Make a sub chartable if
1990 necessary.
1991
1992 2005-04-20 Kenichi Handa <handa@m17n.org>
1993
1994 * search.c (boyer_moore): Fix previous change.
1995
1996 2005-04-19 Kim F. Storm <storm@cua.dk>
1997
1998 * xdisp.c (setup_for_ellipsis): Reset saved_face_id to use default
1999 face unless last visible char and first invisible char have the
2000 same face. Also use default face if saved_face_id is undefined.
2001
2002 2005-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2003
2004 * macgui.h (MacFontStruct): Remove member `fontname'. Add member
2005 `full_name'.
2006 [TARGET_API_MAC_CARBON] (MacFontStruct): Use type int for
2007 mac_scriptcode member.
2008
2009 * macterm.c (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): Remove variables.
2010 (syms_of_mac): Don't initialize them.
2011 (Vmac_charset_info_alist): New variable.
2012 (syms_of_mac): Defvar it.
2013 (create_text_encoding_info_alist): New function.
2014 (decode_mac_font_name, mac_to_x_fontname)
2015 (x_font_name_to_mac_font_name, init_font_name_table): Don't hard
2016 code the correspondence among XLFD charsets, Mac script codes, and
2017 Emacs coding systems. Use Vmac_charset_info_alist and result of
2018 create_text_encoding_info_alist instead.
2019 (init_font_name_table) [TARGET_API_MAC_CARBON]: Use Font Manager
2020 routines also on Mac OS Classic.
2021 (init_font_name_table) [!TARGET_API_MAC_CARBON]:
2022 Use add_font_name_table_entry.
2023 (mac_do_list_fonts): Regard 0 in XLFD scaleble fields as
2024 specified. Derive unspecified scalable fields from specified one.
2025 (x_list_fonts): Consider Valternate_fontname_alist.
2026 (kDefaultFontSize): Change value from 9 to 12.
2027 (XLoadQueryFont): Get decoded font family, font face, and charset
2028 from x_font_name_to_mac_font_name. Set full name of loaded font.
2029 (mac_unload_font): Free `full_name' member.
2030 (x_load_font): Don't try XLoadQueryFont if x_list_fonts returns
2031 NULL. Copy full_name member of struct MacFontStruct to that of
2032 struct font_info.
2033
2034 2005-04-19 Kim F. Storm <storm@cua.dk>
2035
2036 * xdisp.c (handle_stop): Set saved_face_id to current face if
2037 selective_display_ellipsis_p so ellipsis will be shown in same
2038 face as preceding text.
2039 (setup_for_ellipsis): Don't set saved_face_id here.
2040 (next_element_from_display_vector): Default to saved_face_id.
2041
2042 * fns.c (Fsafe_get): New function.
2043 (syms_of_fns): Defsubr it.
2044
2045 * lisp.h (Fsafe_get): EXFUN it.
2046
2047 * xfaces.c (resolve_face_name): Use Fsafe_get to avoid redisplay
2048 loops in case of bad face property lists. Limit number of face
2049 alias lookups to 10 (in case of face alias loops).
2050
2051 2005-04-18 Kim F. Storm <storm@cua.dk>
2052
2053 * dispextern.h (struct glyph_row): New member overlay_arrow_bitmap.
2054 It replaces the corresponding member from struct window, as a
2055 window may now show multiple overlay arrows.
2056 Remove member overlay_arrow_p, superseeded by overlay_arrow_bitmap.
2057
2058 * dispnew.c (row_equal_p, update_window_line, scrolling_window):
2059 Compare overlay_arrow_bitmap than overlay_arrow_p members.
2060
2061 * fringe.c (draw_fringe_bitmap): Use overlay_arrow_bitmap from row
2062 rather than from window.
2063 (update_window_fringes): Compare overlay_arrow_bitmap rather than
2064 overlay_arrow_p members.
2065 (Ffringe_bitmaps_at_pos): Return fringe overlay_arrow_bitmap name
2066 if not default.
2067
2068 * window.h (struct window): Remove member overlay_arrow_bitmap.
2069
2070 * window.c (make_window): Don't initialize overlay_arrow_bitmap.
2071
2072 * xdisp.c (overlay_arrow_string_or_property): Remove PBITMAP arg.
2073 Calls changed. Don't check for overlay-arrow-bitmap property here.
2074 (overlay_arrow_at_row): Remove PBITMAP arg. Instead, if left
2075 fringe is present, return Lisp integer for bitmap (or -1 for default).
2076 Fix value of overlay-arrow-bitmap property to be a symbol, use
2077 lookup_fringe_bitmap to parse it.
2078 (display_line): Change call to overlay_arrow_at_row. Store integer
2079 return value as overlay bitmap in row rather than window.
2080 Only show overlay arrow if row displays text, or if no other overlay
2081 arrow is seen in window (if overlay marker is at point-max).
2082
2083 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
2084
2085 * xfaces.c (realize_x_face) [!HAVE_WINDOW_SYSTEM]: Return NULL.
2086
2087 2005-04-18 Lute Kamstra <lute@gnu.org>
2088
2089 * lread.c (Vloads_in_progress): Static.
2090 * fns.c (Vloads_in_progress): Remove extern.
2091 (load_in_progress): Add extern.
2092 (Frequire): Use load_in_progress instead of Vloads_in_progress.
2093
2094 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
2095
2096 * xmenu.c (Fx_popup_menu): Initialize error_name to NULL.
2097
2098 2005-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2099
2100 * macterm.c (XTread_socket): Don't beep on keyboard input even if
2101 no frame is visible.
2102
2103 2005-04-16 Dan Nicolaescu <dann@ics.uci.edu>
2104
2105 * term.c (struct keys): Add support for shifted keys.
2106
2107 2005-04-16 Richard M. Stallman <rms@gnu.org>
2108
2109 * xdisp.c (with_echo_area_buffer): Delete WHICH < 0 case.
2110 (set_message): Call with_echo_area_buffer with WHICH = 0.
2111 (set_message_1): Erase the echo area buffer first thing.
2112 (echo_area_display): Don't clear echo_message_buffer.
2113
2114 2005-04-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2115
2116 * Makefile.in (mac.o): Depend on charset.h and coding.h.
2117
2118 * mac.c: Include charset.h and coding.h.
2119 [TARGET_API_MAC_CARBON] (Qutf_8): Remove extern.
2120 [TARGET_API_MAC_CARBON] (cfstring_create_with_string): New function.
2121 [TARGET_API_MAC_CARBON] (Fmac_get_preference): Use it.
2122
2123 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
2124
2125 * image.c [MAC_OSX] (image_load_quartz2d): Likewise.
2126
2127 * macterm.c (x_autoselect_window_p): Remove variable.
2128 (last_window): New variable.
2129 (XTreassert_line_highlight, x_change_line_highlight):
2130 Remove declarations.
2131 (mac_focus_changed, x_detect_focus_change): New functions and
2132 declarations.
2133 (XTextExtents16, front_emacs_window): Remove function.
2134 (mac_focus_frame): New function.
2135 (XTmouse_position, do_menu_choice, do_zoom_window, XTread_socket)
2136 (mac_check_for_quit_char): Use it instead of front_emacs_window.
2137 (x_scroll_bar_report_motion): Obtain window from control owner.
2138 (x_make_frame_invisible): Set window manager size hint.
2139 (do_mouse_moved): Remove function.
2140 (XTread_socket): Move its contents here. Generate select-window
2141 event on mouse movement if needed. Use x_detect_focus_change on
2142 activate/deactivate events. Don't deiconify frame or invalidate
2143 window rectangle when dnd items are dropped.
2144 Don't activate/deactivate root control.
2145 (frame_highlight, frame_unhighlight): Activate/deactivate root
2146 control here.
2147 (syms_of_macterm): Delete DEFVAR_BOOL for x_autoselect_window_p.
2148
2149 * macterm.h (cfstring_create_with_string) [TARGET_API_MAC_CARBON]:
2150 New extern.
2151
2152 2005-04-15 Luc Teirlinck <teirllm@auburn.edu>
2153
2154 * Makefile.in: Define new macro TOOLTIP_SUPPORT.
2155 (lisp): Use it.
2156 (SOME_MACHINE_LISP): Add tooltip.
2157
2158 2005-04-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2159
2160 * mac.c [!TARGET_API_MAC_CARBON]: Include MacLocales.h.
2161 Don't include TextEncodingConverter.h.
2162 (mac_system_script_code, Vmac_system_locale): New variables.
2163 (syms_of_mac): Defvar them.
2164 (mac_get_system_locale): New function.
2165
2166 * macfns.c (x_set_name, x_set_title) [!TARGET_API_MAC_CARBON]:
2167 Use ENCODE_SYSTEM to encode title bar string.
2168 (x_create_tip_frame): Apply 2005-03-18 change for xfns.c.
2169 (Fx_file_dialog) [TARGET_API_MAC_CARBON && !MAC_OSX]:
2170 Use CFStringGetSystemEncoding to get system default string encoding.
2171
2172 * macterm.c [!TARGET_API_MAC_CARBON]: Don't include
2173 TextEncodingConverter.h.
2174
2175 2005-04-13 Steven Tamm <steventamm@mac.com>
2176
2177 * macterm.c (syms_of_macterm): Remove redundant definition of
2178 mac-pass-control-to-system.
2179
2180 2005-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
2181
2182 * window.c (Fset_window_configuration): Be careful when you choose
2183 among several possible points for the new_current_buffer.
2184
2185 2005-04-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2186
2187 * keyboard.c (poll_for_input) [SYNC_INPUT]: Don't call
2188 poll_for_input_1. Set interrupt_input_pending to 1 instead.
2189 (Qlanguage_change) [MAC_OS]: New variable.
2190 (syms_of_keyboard) [MAC_OS]: Intern and staticpro it.
2191 (kbd_buffer_get_event) [MAC_OS]: Make event for LANGUAGE_CHANGE_EVENT.
2192
2193 * macterm.c (mac_keyboard_text_encoding)
2194 (current_mac_keyboard_text_encoding): Remove variables.
2195 (XTread_socket): Store language-change event if keyboard script change
2196 is detected. Don't convert input to `mac_keyboard_text_encoding'.
2197 (syms_of_macterm): Delete DEFVAR_INT for mac-keyboard-text-encoding.
2198
2199 * termhooks.h (enum event_kind) [MAC_OS]: Add LANGUAGE_CHANGE_EVENT.
2200
2201 2005-04-10 Richard M. Stallman <rms@gnu.org>
2202
2203 * emacs.c (standard_args): Rename --bare-bones to --quick.
2204 Add -D aka --basic-display.
2205
2206 * buffer.c (Fmake_indirect_buffer): Clear out some local variables.
2207
2208 2005-04-09 Richard M. Stallman <rms@gnu.org>
2209
2210 * keymap.c (where_is_internal): Convert a string used as event type
2211 into "(any string)".
2212
2213 * lread.c (Vloads_in_progress): Not static.
2214 * fns.c (Vloads_in_progress): Add extern.
2215 (Frequire): Don't do LOADHIST_ATTACH if Vloads_in_progress is nil.
2216
2217 2005-04-09 Thien-Thi Nguyen <ttn@surf.glug.org>
2218
2219 * dispnew.c (mirror_line_dance): Avoid crash if W2 is null.
2220
2221 2005-04-09 Lute Kamstra <lute@gnu.org>
2222
2223 * print.c (PRINTPREPARE): Check if the marker PRINTCHARFUN is
2224 within the accessible part of the buffer.
2225
2226 2005-04-09 Kim F. Storm <storm@cua.dk>
2227
2228 * lread.c (readevalloop): Add args START and END as region in
2229 current buffer to read. Callers changed.
2230 When specified, narrow to this region only when reading,
2231 not during eval. Track next point to read from during eval.
2232 Also restore point to "real" buffer position before eval.
2233 (Feval_region): Don't save excursion and restriction here, and
2234 don't narrow to region. Just pass region to readevalloop.
2235 Note: Point is now preserved even when PRINTFLAG is nil.
2236
2237 2005-04-08 Kim F. Storm <storm@cua.dk>
2238
2239 * xdisp.c (syms_of_xdisp): Init overlay-arrow-string to "=>".
2240
2241 2005-04-06 Kim F. Storm <storm@cua.dk>
2242
2243 * emacs.c (standard_args): Add -Q, --bare-bones, -bare-bones.
2244
2245 2005-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2246
2247 * mac.c (cfdate_to_lisp): Add `const' for variable `epoch_gdate'.
2248 (Fmac_get_preference): Doc fix.
2249
2250 * macfns.c (Fx_create_frame, x_create_tip_frame):
2251 Add "fontset-mac" to fallback font/fontsets.
2252
2253 2005-04-04 Kim F. Storm <storm@cua.dk>
2254
2255 * alloc.c (Fgarbage_collect): Call CHECK_CONS_LIST before and after gc.
2256
2257 * eval.c (Ffuncall): Always call CHECK_CONS_LIST on entry.
2258 Call it again after autoload.
2259
2260 2005-04-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2261
2262 * alloc.c (allocate_string_data): Call BLOCK_INPUT before calling
2263 mallopt.
2264
2265 * ralloc.c (r_alloc_init): Ditto.
2266
2267 2005-04-01 Kenichi Handa <handa@m17n.org>
2268
2269 * lisp.h (Vascii_upcase_table, Vascii_canon_table)
2270 (Vascii_eqv_table): Extern them.
2271
2272 * casetab.c (set_case_table): If standard is nonzero, setup
2273 Vascii_upcase_table, Vascii_canon_table, and Vascii_eqv_table.
2274
2275 * search.c (looking_at_1): Use current_buffer->case_canon_table,
2276 not DOWNCASE_TABLE.
2277 (string_match_1): Likewise.
2278 (fast_c_string_match_ignore_case): Use Vascii_canon_table, not
2279 Vascii_downcase_table.
2280 (fast_string_match_ignore_case): Likewise.
2281 (search_buffer): Fix checking of boyer-moore usability.
2282 (boyer_moore): Calculate translate_prev_byte1/2/3 in advance.
2283 No need of tranlating characters in PAT. Fix calculation of
2284 simple_translate.
2285
2286 2005-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
2287
2288 * xterm.c [HAVE_XAW3D]: Include ThreeD.h for XtNbeNiceToColormap.
2289 (x_create_toolkit_scroll_bar): Test XtNbeNiceToColormap before using it.
2290 Use XtNtopShadowPixel and XtNbottomShadowPixel.
2291 (x_set_toolkit_scroll_bar_thumb): Remove ugly old hack that didn't
2292 really work and that breaks with some versions of Xaw3d.
2293
2294 2005-03-31 Kenichi Handa <handa@m17n.org>
2295
2296 * coding.c (syms_of_coding): Fix previous change.
2297
2298 2005-03-30 Stefan Monnier <monnier@iro.umontreal.ca>
2299
2300 * fileio.c (search_embedded_absfilename): Fix last change.
2301
2302 2005-03-25 Kenichi Handa <handa@m17n.org>
2303
2304 * coding.c (syms_of_coding): Suggest to use set-coding-category in
2305 the docstring of coding-category-list.
2306
2307 2005-03-31 Kim F. Storm <storm@cua.dk>
2308
2309 * keyboard.c (Qmouse_fixup_help_message): New var.
2310 (syms_of_keyboard): Intern and staticpro it.
2311 (show_help_echo): Apply mouse-fixup-help-message to help string.
2312
2313 2005-03-30 Kim F. Storm <storm@cua.dk>
2314
2315 * xdisp.c (display_line): Allow multiple overlay arrows in window.
2316
2317 2005-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
2318
2319 * fileio.c (Fexpand_file_name): Use IS_DEVICE_SEP.
2320 (file_name_absolute_p): New fun, extracted from Ffile_name_absolute_p.
2321 (Ffile_name_absolute_p): Use it.
2322 (search_embedded_absfilename): New fun, extracted from
2323 Fsubstitute_in_file_name. Use file_name_absolute_p.
2324 Free the pw data after use.
2325 (Fsubstitute_in_file_name): Use it.
2326 After cutting a prefix, re-check file-name-handler.
2327
2328 2005-03-26 Lennart Borgman <lennart.borgman.073@student.lu.se>
2329
2330 * w32term.h (x_output): Add focus_state.
2331
2332 * w32term.c (x_focus_changed, w32_detect_focus_change): New functions.
2333 (w32_read_socket) [WM_SETFOCUS]: Call w32_detect_focus_change.
2334
2335 2005-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
2336
2337 * minibuf.c (Fminibuffer_complete_and_exit, Fself_insert_and_exit):
2338 Use Fexit_minibuffer.
2339 (Fexit_minibuffer): Mark it as no-return, deactivate the mark.
2340
2341 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
2342
2343 * dired.c (Ffile_attributes): Add a missing gcpro.
2344
2345 * alloc.c (make_number): The arg can be bigger than `int'.
2346 * lisp.h (make_number): Make prototype more precise.
2347
2348 * process.c, dired.c (Vfile_name_coding_system)
2349 (Vdefault_file_name_coding_system):
2350 * callproc.c (Vdoc_file_name, Vfile_name_coding_system)
2351 (Vdefault_file_name_coding_system): Remove unused declarations.
2352
2353 2005-03-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2354
2355 * xmenu.c (create_and_show_popup_menu): Just remove menu and return
2356 if it failed to pop up (Gnome "show pointer on ctrl" option makes
2357 menus fail to pop up).
2358
2359 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
2360
2361 * xdisp.c (get_next_display_element): Also use `\ ' & `\-' for latin-9.
2362 Just prepend a backslash without replacing the NBSP by an SPC.
2363
2364 2005-03-22 Kim F. Storm <storm@cua.dk>
2365
2366 * xfaces.c (lookup_derived_face): Add arg SIGNAL_P.
2367 * dispextern.h (lookup_derived_face): Fix prototype.
2368 * msdos.c (XMenuActivate): Fix call to lookup_derived_face.
2369
2370 * xdisp.c (handle_single_display_spec): Derive left-fringe and
2371 right-fringe face from fringe face.
2372
2373 * fringe.c (draw_fringe_bitmap_1, Fset_fringe_bitmap_face):
2374 Derive face from fringe face.
2375
2376 2005-03-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2377
2378 * xrdb.c (x_load_resources): Undo previous change (2005-03-18).
2379
2380 2005-03-22 David Kastrup <dak@gnu.org>
2381
2382 * textprop.c (Fnext_char_property_change)
2383 (Fprevious_char_property_change): Allow marker as limit.
2384 (Fnext_single_char_property_change)
2385 (Fprevious_single_char_property_change): Check that limit is a
2386 number in strings.
2387 (Fnext_single_char_property_change): Coerce position to integer.
2388 (Fprevious_single_char_property_change): Same here.
2389
2390 2005-03-21 Thien-Thi Nguyen <ttn@gnu.org>
2391
2392 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Define if undefined.
2393
2394 2005-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
2395
2396 * frame.c (Fignore_event): Remove.
2397 (syms_of_frame): Don't defsubr it.
2398
2399 * keyboard.c (keys_of_keyboard): Just use `ignore' instead of the
2400 redundant `ignore-event'.
2401
2402 2005-03-19 Eli Zaretskii <eliz@gnu.org>
2403
2404 * unexec.c (write_segment, unexec): Move these functions to avoid
2405 forward references (which cause errors with "gcc -gcoff").
2406
2407 2005-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2408
2409 * xfns.c (x_create_tip_frame): Remove setting of Vx_resource_name so
2410 that it doesn't become "tooltip". The specbind is enough.
2411
2412 * xrdb.c (x_load_resources): Use different char *helv when I18N
2413 is present.
2414
2415 2005-03-17 Kenichi Handa <handa@m17n.org>
2416
2417 * coding.c (syms_of_coding): Docstring of coding-category-list fixed.
2418
2419 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
2420
2421 * xfaces.c (x_update_menu_appearance) [HAVE_X_I18N]:
2422 Use xic_create_fontsetname even for non-Motif menus.
2423 Don't forget to free the fontsetname.
2424
2425 * xfns.c (xic_create_fontsetname): Add a final catch-all font pattern.
2426
2427 2005-03-17 Richard M. Stallman <rms@gnu.org>
2428
2429 * dispnew.c (mirror_line_dance): Set W2 according to FRAME_FROM.
2430
2431 * fileio.c (Fcopy_file, Frename_file, Fadd_name_to_file)
2432 (Fmake_symbolic_link): Use G to read the new file name.
2433
2434 * callint.c (Finteractive): Document G option.
2435 (Fcall_interactively): Implement G option.
2436
2437 * buffer.c (buffer_lisp_local_variables): New function,
2438 broken out from Fbuffer_local_variables.
2439 (clone_per_buffer_values): Use buffer_lisp_local_variables.
2440
2441 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
2442
2443 * xfns.c (xic_create_fontsetname): Add `motif' argument.
2444 Always return a freshly allocated string.
2445 (xic_create_xfontset): Adjust call.
2446
2447 * xfaces.c (x_update_menu_appearance) [USE_MOTIF]:
2448 Use xic_create_fontsetname to create a fontset so utf-8 locales work.
2449 (dump_realized_face): Fix warning.
2450
2451 * emacs.c (Fkill_emacs): YAILOM.
2452
2453 * frame.c (Fignore_event): Fix ancient obscure C-u handling bug.
2454
2455 2005-03-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2456
2457 * mac.c (HASHKEY_TERMINAL): Remove.
2458 (HASHKEY_MAX_NID): New macro.
2459 (xrm_q_get_resource_1): Rename from xrm_q_get_resource. Add extra
2460 argument.
2461 (xrm_q_get_resource): Call xrm_q_get_resource_1 with extra argument.
2462 (xrm_create_database, xrm_q_put_resource)
2463 (xrm_merge_string_database, xrm_q_get_resource_1)
2464 (xrm_q_get_resource): Change resource database representation so
2465 that it may not use multiple hash tables for a single database.
2466 [TARGET_API_MAC_CARBON] (xrm_cfproperty_list_to_value): YAILOM.
2467
2468 2005-03-16 Stefan Monnier <monnier@iro.umontreal.ca>
2469
2470 * xmenu.c (ENCODE_MENU_STRING) [HAVE_X_I18N]: Use ENCODE_SYSTEM.
2471
2472 * coding.h (ENCODE_SYSTEM, DECODE_SYSTEM) [!WINDOWSNT]: Use the
2473 locale-coding-system, as was already done for WINDOWSNT.
2474
2475 * keyboard.c (read_char): Only do the 7-bit-meta -> 27-bit-meta
2476 translation for chars in the 0-255 range.
2477
2478 2005-03-16 Lute Kamstra <lute@gnu.org>
2479
2480 * floatfns.c (Ffloor): Doc fix.
2481
2482 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2483
2484 * mac.c: Include macterm.h instead of directly including Carbon.h.
2485 [TARGET_API_MAC_CARBON] (Qstring, Qnumber, Qboolean, Qdate, Qdata)
2486 (Qarray, Qdictionary): New variables.
2487 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
2488 [TARGET_API_MAC_CARBON] (Qutf_8): Add extern.
2489 [TARGET_API_MAC_CARBON] (DECODE_UTF_8): New macro.
2490 [TARGET_API_MAC_CARBON] (struct cfdict_context): New struct used
2491 in callback for CFDictionaryApplyFunction.
2492 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
2493 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
2494 (cfobject_desc_to_lisp, cfdictionary_add_to_list)
2495 (cfdictionary_puthash, cfproperty_list_to_lisp): New functions.
2496 [TARGET_API_MAC_CARBON] (Fmac_get_preference): New function.
2497 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
2498 (P, LOOSE_BINDING, SINGLE_COMPONENT, HASHKEY_TERMINAL): New macro.
2499 (skip_white_space, parse_comment, parse_include_file)
2500 (parse_binding, parse_component, parse_resource_name, parse_value)
2501 (parse_resource_line, xrm_create_database, xrm_q_put_resource)
2502 (xrm_merge_string_database, xrm_q_get_resource, xrm_get_resource)
2503 (xrm_cfproperty_list_to_value, xrm_get_preference_database):
2504 New functions.
2505
2506 * macfns.c (mac_get_rdb_resource): Remove function.
2507 (x_get_string_resource): Use xrm_get_resource.
2508
2509 * macgui.h (XrmDatabase): Typedef to Lisp_Object.
2510
2511 * macterm.c (x_list_fonts): FONT-LIST-CACHE is now cadr part of
2512 name_list_element.
2513 (mac_make_rdb): Create resource database from preferences and
2514 argument string.
2515 (mac_term_init): Save resource database to cddr part of
2516 name_list_element.
2517
2518 * macterm.h (xrm_merge_string_database, xrm_get_resource)
2519 (xrm_get_preference_database): Add externs.
2520 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
2521 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
2522 (cfobject_desc_to_lisp, cfproperty_list_to_lisp): Likewise.
2523
2524 * process.c (init_process): Change `#ifdef DARWIN' to `#if
2525 defined (DARWIN) || defined (MAC_OSX)'
2526
2527 * s/darwin.h (DARWIN): Don't define.
2528
2529 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2530
2531 * macfns.c (Qhyper, Qsuper, Qmeta, Qalt, Qctrl, Qcontrol, Qshift):
2532 Remove unused variables.
2533 (syms_of_macfns): Don't initialize them. Likewise for
2534 Qface_set_after_frame_default. Defvar and initialize
2535 Vx_window_horizontal_drag_shape.
2536 (x_set_mouse_color): Change mouse pointer shape.
2537 (mac_window) [!MAC_OSX]: Create root control.
2538 (Fx_create_frame): Remove initializations of mouse pointer shapes.
2539 (hourglass_started): New function (from xfns.c).
2540 (start_hourglass, cancel_hourglass): Put function body in #ifdef
2541 MAC_OSX.
2542 (show_hourglass) [TARGET_API_MAC_CARBON]: Create progress
2543 indicator for each non-tooltip frame if needed, and show it.
2544 (hide_hourglass) [TARGET_API_MAC_CARBON]: Hide progress indicators.
2545
2546 * macgui.h [!TARGET_API_MAC_CARBON]: Include Appearance.h and
2547 Controls.h. Use ThemeCursor instead of CursHandle.
2548
2549 * macterm.c (activate_scroll_bars, deactivate_scroll_bars):
2550 Remove functions and declarations.
2551 (mac_set_colors): Take argument for saving background color.
2552 All callers changed.
2553 (XDrawLine, XClearArea, mac_draw_bitmap, XFillRectangle)
2554 (mac_draw_rectangle, mac_draw_string_common): Save and Restore
2555 background color.
2556 (x_update_end, mac_do_track_drag): Don't reset background color.
2557 (mac_define_frame_cursor) [!TARGET_API_MAC_CARBON]:
2558 Use SetThemeCursor.
2559 (x_set_window_size) [TARGET_API_MAC_CARBON]: Move progress
2560 indicator control to the upper-right corner of the window.
2561 (arrow_cursor) [!TARGET_API_MAC_CARBON]: Remove variable.
2562 (do_init_managers) [!TARGET_API_MAC_CARBON]: Don't initialize it.
2563 (do_window_update): Update controls after updating content area.
2564 (mac_handle_window_event): Remove unused extern.
2565 (XTread_socket): Check both control handle and control part code
2566 to determine whether a scroll bar is clicked. Activate/deactivate
2567 root control instead of contained scroll bar controls.
2568 (make_mac_terminal_frame): Use ThemeCursor constants.
2569
2570 * macterm.h (struct mac_output) [TARGET_API_MAC_CARBON]:
2571 New member hourglass_control.
2572 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): New defines.
2573 (activate_scroll_bars, deactivate_scroll_bars): Remove declarations.
2574
2575 2005-03-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2576
2577 * macterm.c (keycode_to_xkeysym_table): Change mapping so that it
2578 coincides with that in Apple X11 except `clear', `enter' on
2579 laptops, and fn + `enter' on laptops.
2580
2581 2005-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
2582
2583 * xmenu.c (ENCODE_MENU_STRING): Explicitly use string_make_unibyte.
2584 (list_of_panes, list_of_items, Fx_popup_menu): Use XCAR/XCDR.
2585 (digest_single_submenu, xmenu_show): Use ENCODE_MENU_STRING.
2586
2587 * xfns.c (xic_defaut_fontset): New constant.
2588 (xic_create_fontsetname): New function.
2589 Extracted from create_frame_xic. Try to generate a slightly
2590 better fontset.
2591 (xic_create_xfontset): Use it.
2592 (create_frame_xic): Simplify.
2593
2594 2005-03-11 Stefan Monnier <monnier@iro.umontreal.ca>
2595
2596 * fileio.c (Fmake_symbolic_link): Fix last change.
2597
2598 2005-03-11 Richard M. Stallman <rms@gnu.org>
2599
2600 * fileio.c (Frename_file, Fadd_name_to_file)
2601 (Fmake_symbolic_link): If NEWNAME or LINKNAME is a directory,
2602 expand the basename of FILE relative to it.
2603
2604 2005-03-11 Kenichi Handa <handa@m17n.org>
2605
2606 * fileio.c (Finsert_file_contents): Call Fcheck_coding_system
2607 before calling setup_coding_system so that autoloading of a coding
2608 system work.
2609
2610 2005-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2611
2612 * xfns.c (hourglass_started): New function.
2613
2614 * dispextern.h: Declare hourglass_started.
2615
2616 * keyboard.c (Fexecute_extended_command): Restart hourglass
2617 after call to Fcompleting_read if already started.
2618
2619 * gtkutil.c (xg_update_scrollbar_pos): Call x_sync so that the
2620 GTK main loop is entered in xterm.c, thus doing the redraw.
2621
2622 2005-03-10 Kim F. Storm <storm@cua.dk>
2623
2624 * xdisp.c (pos_visible_p): Fix X value in last line of buffer.
2625
2626 2005-03-08 Kenichi Handa <handa@m17n.org>
2627
2628 * frame.c (x_set_font): Call set_default_ascii_font if an
2629 available font is found.
2630
2631 * fontset.c (set_default_ascii_font): New function.
2632 (syms_of_fontset): Don't set FONTSET_ASCII (Vdefault_fontset) here.
2633
2634 * fontset.h (set_default_ascii_font): Extern it.
2635
2636 2005-03-07 Kim F. Storm <storm@cua.dk>
2637
2638 * xdisp.c (CLEAR_IMAGE_CACHE_COUNT): New const.
2639 (clear_image_cache_count): New var.
2640 (redisplay_internal): Don't clear face and image caches in the
2641 middle of redisplay; do it afterwards.
2642
2643 * blockinput.h (TOTALLY_UNBLOCK_INPUT): Avoid dangling else.
2644
2645 * xdisp.c (notice_overwritten_cursor): Check that phys_cursor.vpos
2646 is valid. If not, clear phys_cursor_on_p and return.
2647
2648 2005-03-07 Andreas Schwab <schwab@suse.de>
2649
2650 * blockinput.h (UNBLOCK_INPUT_TO): Always call UNBLOCK_INPUT.
2651
2652 2005-03-06 Richard M. Stallman <rms@gnu.org>
2653
2654 * keyboard.c (Ftop_level): Let Fthrow deal with UNBLOCK_INPUT.
2655
2656 * eval.c (unwind_to_catch): Use UNBLOCK_INPUT_TO.
2657 (Feval, Ffuncall): Use CHECK_CONS_LIST.
2658
2659 * lisp.h (CHECK_CONS_LIST): New macro (two definitions).
2660
2661 * blockinput.h (UNBLOCK_INPUT_TO): New macro.
2662 (TOTALLY_UNBLOCK_INPUT): Handle a pending signal if any.
2663
2664 2005-03-05 Juri Linkov <juri@jurta.org>
2665
2666 * emacs.c (USAGE1): Replace Info node name "command arguments"
2667 with "emacs invocation".
2668 (USAGE3): Fix usage of `--color=MODE' which actually doesn't
2669 allow arguments `--color' and `MODE' to be separated by space.
2670 Add --no-blinking-cursor, -nbc.
2671 (standard_args): Add -nbc, --no-blinking-cursor.
2672
2673 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
2674
2675 * s/vms.h: Define NO_HYPHENS_IN_FILENAMES.
2676 * s/vms4-4.h, s/vms5-5.h: Undefine NO_HYPHENS_IN_FILENAMES.
2677 * fileio.c (Fexpand_file_name) [VMS]:
2678 Use NO_HYPHENS_IN_FILENAMES, not VMS4_4.
2679 * doc.c (munge_doc_file_name) [VMS]: Likewise.
2680 (Fsnarf_documentation): Call munge_doc_file_name.
2681
2682 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
2683
2684 * s/vms.h (FILE_SYSTEM_CASE): New macro.
2685 * fileio.c (Fexpand_file_name) [VMS]: Don't upcase the name
2686 "manually"; this is now handled generally via FILE_SYSTEM_CASE.
2687
2688 2005-03-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2689
2690 * emacs.c (main): Change `#ifdef HAVE_CARBON' to `#if
2691 defined (MAC_OSX) && defined (HAVE_CARBON)'.
2692
2693 * image.c [!MAC_OSX && TARGET_API_MAC_CARBON]: Include QuickTime.h.
2694
2695 * mac.c [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
2696 [!MAC_OSX] (select) [TARGET_API_MAC_CARBON]: Use ReceiveNextEvent.
2697 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): New functions.
2698 (mac_clear_font_name_table): Move extern to macterm.h.
2699
2700 * macfns.c (install_window_handler): Move extern to macterm.h.
2701 (Fx_file_dialog): Check STRINGP (default_filename) to see it is
2702 valid. Don't check !NILP (dir) because it is already checked with
2703 CHECK_STRING.
2704 (Fx_file_dialog) [!MAC_OSX]: Use FSSpec instead of FSRef for
2705 specifying the default location and obtaining the selected filename.
2706
2707 * macgui.h [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
2708
2709 * macmenu.c [TARGET_API_MAC_CARBON]: Don't include headers that
2710 are included via Carbon.h.
2711
2712 * macterm.c [TARGET_API_MAC_CARBON && !MAC_OSX]:
2713 Define USE_CARBON_EVENTS to 1.
2714 (qd) [__MRC__ && TARGET_API_MAC_CARBON]: Don't declare.
2715 (x_free_frame_resources): Call remove_window_handler for
2716 non-tooltip windows.
2717 [TARGET_API_MAC_CARBON]: Don't include headers that are included
2718 via Carbon.h.
2719 [TARGET_API_MAC_CARBON] (mac_do_track_dragUPP)
2720 (mac_do_receive_dragUPP): New variables.
2721 (mac_handle_service_event, init_service_handler): Put declarations
2722 and definitions in #ifdef MAC_OSX.
2723 (install_window_handler) [TARGET_API_MAC_CARBON]: Create UPPs for
2724 drag-and-drop handler functions and register them.
2725 (remove_window_handler): New function.
2726 (do_ae_open_documents, mac_do_receive_drag) [!MAC_OSX]:
2727 Use fsspec_to_posix_pathname.
2728 (main): Change #if !TARGET_API_MAC_CARBON to #ifdef MAC_OS8.
2729 (XTread_socket) [!MAC_OSX]: Don't pass keyboard events to TSM.
2730 [MAC_OS8] (make_mac_terminal_frame) [TARGET_API_MAC_CARBON]:
2731 Set default cursors.
2732 (mac_initialize) [USE_CARBON_EVENTS && !MAC_OSX] : Don't call
2733 init_service_handler or init_quit_char_handler.
2734 (mac_initialize) [!MAC_OSX]: Don't call MakeMeTheFrontProcess.
2735
2736 * macterm.h (install_window_handler, remove_window_handler)
2737 (posix_pathname_to_fsspec, fsspec_to_posix_pathname)
2738 (mac_clear_font_name_table): New externs.
2739
2740 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
2741
2742 * fileio.c (FILE_SYSTEM_CASE): Define macro if not already defined.
2743 (Ffile_name_directory): Use FILE_SYSTEM_CASE unconditionally.
2744 (Fexpand_file_name): Likewise.
2745
2746 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
2747
2748 * emacs.c (Fkill_emacs): Use EXIT_SUCCESS;
2749 no longer special-case VMS. Add bogus return value.
2750
2751 2005-03-02 Kim F. Storm <storm@cua.dk>
2752
2753 * dispextern.h (XASSERTS): Define to 0 if not already defined.
2754 (xassert) [!XASSERTS]: Define dummy version.
2755
2756 2005-03-02 Kim F. Storm <storm@cua.dk>
2757
2758 * xdisp.c (redisplay_window): YABX (yet another bogus xassert).
2759 Reported by David Kastrup.
2760
2761 2005-03-01 Ehud Karni <ehud@unix.mvs.co.il>
2762
2763 * xdisp.c (get_next_display_element): Fix control and escape
2764 glyph from display vector.
2765
2766 2005-03-01 Stefan Monnier <monnier@iro.umontreal.ca>
2767
2768 * keyboard.c (Fposn_at_x_y): Check integerness of X and Y.
2769
2770 2005-02-27 Richard M. Stallman <rms@gnu.org>
2771
2772 * xdisp.c (fast_find_position): Rename END to BEG.
2773 (syms_of_xdisp) <menu-bar-update-hook>: Doc fix.
2774
2775 2005-02-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2776
2777 * gtkutil.c (xg_resize_outer_widget): Remove unneeded call to
2778 gtk_window_resize and x_wm_set_size_hint.
2779
2780 2005-02-25 Kim F. Storm <storm@cua.dk>
2781
2782 * dispextern.h (OVERLAY_STRING_CHUNK_SIZE): Increase from 3 to 16.
2783
2784 * xdisp.c (init_from_display_pos): Don't read past end of
2785 it->overlay_strings array.
2786
2787 2005-02-25 Stephan Stahl <stahl@eos.franken.de> (tiny change)
2788
2789 * buffer.c (syms_of_buffer): Fix typo.
2790
2791 2005-02-23 Lute Kamstra <lute@gnu.org>
2792
2793 * buffer.c (Foverlay_buffer): Doc fix.
2794
2795 2005-02-22 Kim F. Storm <storm@cua.dk>
2796
2797 * minibuf.c (Ftry_completion, Fall_completions): Allow both string
2798 and symbol keys in alists and hash tables.
2799
2800 * xdisp.c (fast_find_position): Fix search for start of overlay.
2801
2802 2005-02-21 Kim F. Storm <storm@cua.dk>
2803
2804 * window.c (window_scroll_pixel_based): When scrolling backwards,
2805 handle partial visible line at end of window even when we hit PT.
2806
2807 2005-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
2808
2809 * keymap.h: Declare Fcurrent_active_maps, used in doc.c.
2810
2811 2005-02-21 Kim F. Storm <storm@cua.dk>
2812
2813 * xdisp.c (move_it_vertically_backward): Eliminate two xasserts.
2814 I think those asserts are bogus if buffer contains invisible text
2815 or images.
2816
2817 2005-02-21 David Kastrup <dak@gnu.org>
2818
2819 * gtkutil.c (xg_create_frame_widgets): UNBLOCK_INPUT on error.
2820
2821 2005-02-20 Kim F. Storm <storm@cua.dk>
2822
2823 * xdisp.c (pos_visible_p): Be sure to move to the specified
2824 position. Always get the full ascent / descent of the
2825 corresponding row, to return reliable rtop and rbot values.
2826 (back_to_previous_visible_line_start): Fix 2005-01-18 change.
2827 Must look one character back, as back_to_previous_line_start
2828 returns position after the newline.
2829 (move_it_vertically_backward): Fix heuristic for when to move further
2830 back in case line_height * 2/3 is larger than window height.
2831 (cursor_row_fully_visible_p): Rename make_cursor_line_fully_visible_p
2832 as it does not do anything anymore. Add arg current_matrix_p to
2833 use current matrix rather than desired matrix when set.
2834 (try_cursor_movement): Don't scroll to make cursor row fully
2835 visible if cursor didn't move. This avoids unexpected recentering
2836 in case of blinking cursor or accepting process output.
2837 Use current matrix to check cursor row visibility.
2838 (redisplay_window): Fix whether to recenter or move to top in case
2839 cursor line is taller than window height.
2840 (find_first_unchanged_at_end_row): Stop search if we reach a row
2841 which not enabled (instead of abort).
2842
2843 2005-02-18 Kim F. Storm <storm@cua.dk>
2844
2845 * xfaces.c (Finternal_set_lisp_face_attribute): Allow :color property
2846 to be nil in a :box attribute value list; customize prints that
2847 as lisp value when no box color is specified.
2848
2849 * .gdbinit (pitx, pit): Pretty print display iterator.
2850 (prowx, prow): Pretty print glyph row.
2851 (pcursorx, pcursor): Pretty print a window cursor.
2852 (pwinx, pwin): Pretty print struct window.
2853
2854 2005-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
2855
2856 * alloc.c (BLOCK_BYTES): Harmless typo.
2857
2858 2005-02-17 Andreas Schwab <schwab@suse.de>
2859
2860 * xfns.c (hack_wm_protocols): Use correct type for last parameter
2861 of XGetWindowProperty to avoid aliasing issues.
2862 (Fx_window_property): Likewise.
2863
2864 * xselect.c (Fx_disown_selection_internal): Use union of struct
2865 input_event and struct selection_input_event to avoid aliasing issues.
2866
2867 * xterm.c (handle_one_xevent): Use union of struct input_event and
2868 struct selection_input_event to avoid aliasing issues.
2869 (SET_SAVED_MENU_EVENT): Adapt reference to inev.
2870
2871 2005-02-17 Kim F. Storm <storm@cua.dk>
2872
2873 * dispextern.h (enum it_method): New enum.
2874 (GET_FROM_*): Its members.
2875 (struct it): Change member method from function pointer to enum.
2876
2877 * xdisp.c (check_it, init_from_display_pos, handle_stop)
2878 (setup_for_ellipsis, handle_single_display_spec)
2879 (handle_composition_prop, next_overlay_string)
2880 (get_overlay_strings, reseat_1, reseat_to_string)
2881 (next_element_from_ellipsis, BUFFER_POS_REACHED_P)
2882 (in_display_vector_p, display_line, get_next_display_element):
2883 Change it->method from function pointer to enum.
2884 (get_next_element): New array to map it->method to function.
2885 (get_next_display_element): Use it.
2886 (set_iterator_to_next): Use switch instead of if/else chain.
2887
2888 2005-02-15 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
2889
2890 * w32select.c: Summary: Thorough rework to implement Unicode
2891 clipboard operations and delayed rendering.
2892
2893 Drop last_clipboard_text and related code, keep track of
2894 ownership via clipboard_owner instead. Drop old #if0 sections.
2895
2896 (DEFAULT_LCID, ANSICP, OEMCP, QUNICODE, QANSICP, QOEMCP)
2897 (clipboard_owner, modifying_clipboard, cfg_coding_system)
2898 (cfg_codepage, cfg_lcid, cfg_clipboard_type, current_text)
2899 (current_coding_system, current_requires_encoding)
2900 (current_num_nls, current_clipboard_type, current_lcid):
2901 New static variables.
2902
2903 (convert_to_handle_as_ascii, convert_to_handle_as_coded)
2904 (render, render_all, run_protected, lisp_error_handler)
2905 (owner_callback, create_owner, setup_config)
2906 (enum_locale_callback, cp_from_locale, coding_from_cp):
2907 New local functions.
2908
2909 (term_w32select, globals_of_w32select): New global functions.
2910
2911 (Fw32_set_clipboard_data): Ignore parameter FRAME, use
2912 clipboard_owner instead. Use delayed rendering and provide
2913 all text formats. Provide CF_LOCALE if necessary.
2914
2915 (Fw32_get_clipboard_data): Handle CF_UNICODETEXT and
2916 CF_LOCALE. Fall back to CF_TEXT, if CF_UNICODETEXT is not
2917 available. Force DOS line-ends for decoding.
2918
2919 (Fx_selection_exists_p): Handle CF_UNICODETEXT.
2920
2921 (syms_of_w32select): Init and register new variables.
2922
2923 * w32.h: Add prototypes for globals_of_w32select and
2924 term_w32select. Make the neighboring K&R declarations into
2925 prototypes, too.
2926
2927 * emacs.c: Include w32.h to get function prototypes.
2928 (main): Call globals_of_w32select.
2929
2930 * w32.c (term_ntproc): Call term_w32select.
2931
2932 * s/ms-w32.h: Guard MSC-specific #pragmas with an #ifdef.
2933
2934 2005-02-16 Kim F. Storm <storm@cua.dk>
2935
2936 * xdisp.c (BUFFER_POS_REACHED_P): Return true if pos reached and
2937 at end of display vector.
2938
2939 2005-02-15 Richard M. Stallman <rms@gnu.org>
2940
2941 * xdisp.c (get_next_display_element): Fix escape-glyph criterion
2942 for mode and header lines.
2943
2944 * lread.c (syms_of_lread) <user-init-file>: Doc fix.
2945
2946 * keymap.h (describe_map_tree): Change decl.
2947
2948 * keyboard.c (command_loop_1): Always use safe_run_hooks
2949 to run Qdeferred_action_function.
2950
2951 * keymap.c (describe_map_tree): New arg MENTION_SHADOW. Calls changed.
2952 (describe_map, describe_vector): Likewise. When it's 1,
2953 don't omit shadowed bindings, instead mark them as shadowed.
2954
2955 * doc.c (Fsubstitute_command_keys): Compute list of shadowing maps
2956 for describe_map_tree. Pass 1 for MENTION_SHADOW.
2957
2958 * data.c (Fsetq_default): Allow no arg case.
2959
2960 2005-02-14 Kenichi Handa <handa@m17n.org>
2961
2962 * coding.c (encode_coding_string): Always return a unibyte string.
2963 If NOCOPY is nonzero and there's no need of encoding, make STR
2964 unibyte directly.
2965
2966 * xselect.c (lisp_data_to_selection_data): If OBJ is a non-ASCII
2967 multibyte string, signal an error instead of aborting.
2968
2969 2005-02-12 Dan Nicolaescu <dann@ics.uci.edu>
2970
2971 * keyboard.c: If HAVE_FCNTL_H include fcntl.h.
2972
2973 2005-02-12 Kim F. Storm <storm@cua.dk>
2974
2975 * xdisp.c (expose_window): Don't fix overlaps for mode lines.
2976
2977 2005-02-10 Kim F. Storm <storm@cua.dk>
2978
2979 * xdisp.c (try_window_id): Set first_unchanged_at_end_row to NULL
2980 if it moves outside window or it doesn't display text.
2981
2982 2005-02-09 Kim F. Storm <storm@cua.dk>
2983
2984 * undo.c (Fprimitive_undo): Check that undo function does not
2985 switch buffer.
2986
2987 2005-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2988
2989 * xselect.c (selection_data_to_lisp_data): For the special case
2990 type == XA_ATOM, data contains array of int, not array of Atom.
2991 (x_property_data_to_lisp, selection_data_to_lisp_data):
2992 Comment update: data must be array of int for format == 32.
2993
2994 2005-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
2995
2996 * undo.c (Fprimitive_undo): Check veracity of delta,start,end.
2997
2998 2005-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2999
3000 * xfns.c (Fx_change_window_property): Use long array when format is 32.
3001 (Fx_window_property): If format is 32 and long is bigger than 32 bits,
3002 convert long array returned from XGetWindowProperty to an int array.
3003 (x_set_tool_bar_lines): Check that width and height is greater than
3004 zero before clearing area.
3005
3006 * xselect.c (x_reply_selection_request): Pass long array to
3007 XChangeProperty so that 64 bit longs are handeled correctly.
3008 (x_get_window_property): If format is 32 and long is bigger than 32
3009 bits convert data from XGetWindowProperty from long array to int array.
3010 (lisp_data_to_selection_data): When the input is a vector and the
3011 format is 32, allocate a long array even if long is bigger than 32 bits.
3012 (x_fill_property_data): Use char, short and long as the man page
3013 for XChangeProperty specifies. This way the data returned is OK for
3014 both 32 and 64 bit machines.
3015 (x_handle_dnd_message): Calculate size correctly even for 64 bit
3016 machines.
3017 (Fx_send_client_event): Undo change from 2005-02-05,
3018 x_fill_property_data now handles that case.
3019
3020 * xfns.c (Fx_backspace_delete_keys_p): Add comment about the
3021 reason for the approach in the code.
3022
3023 2005-02-07 Kim F. Storm <storm@cua.dk>
3024
3025 * undo.c (Fprimitive_undo): Record max one dummmy apply element.
3026
3027 2005-02-06 Richard M. Stallman <rms@gnu.org>
3028
3029 * eval.c (Frun_hook_with_args)
3030 (Frun_hook_with_args_until_success)
3031 (Frun_hook_with_args_until_failure): Doc fixes.
3032
3033 2005-02-05 Andreas Schwab <schwab@suse.de>
3034
3035 * sysdep.c (sys_subshell): Properly terminate execlp argument list.
3036
3037 2005-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3038
3039 * xselect.c (Fx_send_client_event, x_handle_dnd_message): Handle
3040 the longs in a XClientMessageEvent correctly when long is 64 bits.
3041
3042 2005-02-05 Eli Zaretskii <eliz@gnu.org>
3043
3044 * xfaces.c (face_color_supported_p): Use HAVE_WINDOW_SYSTEM
3045 instead of HAVE_X_WINDOWS, for non-X windowed sessions.
3046
3047 2005-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3048
3049 * xmenu.c (menubar_selection_callback): Force out GTK buffered
3050 events so the menu event comes after them. This is to prevent sit-for
3051 from exiting on buffered events directly after a menu selection,
3052 lisp code for Help => About Emacs uses sit-for.
3053
3054 * gtkutil.c (create_menus): Connect selection-done event instead of
3055 the deactivate event to deactivate_cb. This will make the last
3056 leave event come before the call to deactivate_cb, so the leave
3057 event does not make sit-for exit after a menu selection.
3058
3059 2005-02-03 Kim F. Storm <storm@cua.dk>
3060
3061 * dispnew.c (build_frame_matrix_from_leaf_window)
3062 [!GLYPH_DEBUG]: Fix xassert.
3063
3064 * xfaces.c (x_free_gc) [!GLYPH_DEBUG]: Fix xassert.
3065
3066 * xfns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
3067
3068 2005-02-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3069
3070 * mac.c: Use MAC_OS_X_VERSION_MAX_ALLOWED to conditionalize by
3071 the compiling OS version.
3072
3073 * macfns.c (x_create_tip_frame): Likewise.
3074
3075 * macterm.c (mac_draw_string_common, x_make_frame_visible): Likewise.
3076
3077 2005-02-03 Richard M. Stallman <rms@gnu.org>
3078
3079 * xterm.c (x_error_quitter): On GCC 3 and up, specify noinline.
3080
3081 * xdisp.c (echo_area_display): Clear echo_message_buffer.
3082
3083 * buffer.c (Fbury_buffer): Doc fix.
3084
3085 2005-02-02 Steven Tamm <steventamm@mac.com>
3086
3087 * macfns.c (unwind_create_frame): Fix compile error due to
3088 xassert being uncondition, but predicate is.
3089 * dispnew.c (update_window): Fix compile error due to
3090 xassert being uncondition, but predicate is.
3091
3092 2005-02-02 Miles Bader <miles@gnu.org>
3093
3094 * dispextern.h (xassert): Enable unconditionally.
3095
3096 2005-02-02 Kim F. Storm <storm@cua.dk>
3097
3098 * undo.c (Fprimitive_undo): Fix dummy apply undo entry.
3099
3100 2005-02-02 Kenichi Handa <handa@m17n.org>
3101
3102 * casefiddle.c (casify_object): Enable changing characters of
3103 different byte length.
3104 (casify_region): Fix loop condition, args to replace_range_2, and
3105 update opoint_byte.
3106
3107 * insdel.c (replace_range_2): Fix bugs in adjusting markers and point.
3108
3109 2005-02-01 Kim F. Storm <storm@cua.dk>
3110
3111 * xdisp.c (back_to_previous_visible_line_start): Reset iterator
3112 stack before calling handle_display_prop.
3113
3114 2005-01-31 Kim F. Storm <storm@cua.dk>
3115
3116 * undo.c (Qapply): New lisp var.
3117 (syms_of_undo): Intern and staticpro it.
3118 (Fprimitive_undo): Support formats (apply FUNNAME . ARGS) and
3119 (apply DELTA BEG END FUNNAME . ARGS) instead of (FUNNAME . ARGS).
3120
3121 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
3122
3123 2005-01-30 Jesper Harder <harder@phys.au.dk>
3124
3125 * macterm.c (syms_of_macterm) <mac-reverse-ctrl-meta>
3126 <mac-emulate-three-button-mouse>: Fix docstring indentation.
3127
3128 2005-01-29 Luc Teirlinck <teirllm@auburn.edu>
3129
3130 * undo.c (syms_of_undo) <undo-outer-limit>: Doc update.
3131 Increase value to 3 Meg.
3132
3133 2005-01-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3134
3135 * xfns.c (show_hourglass): Use FRAME_X_WINDOW as parent for GTK,
3136 button events are not received otherwise.
3137
3138 2005-01-29 Richard M. Stallman <rms@gnu.org>
3139
3140 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
3141
3142 * undo.c (Fprimitive_undo): Handle (FUNNAME . ARGS) by calling FUNNAME.
3143
3144 2005-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
3145
3146 * keymap.c (access_keymap): YAILOM.
3147
3148 2005-01-27 Kim F. Storm <storm@cua.dk>
3149
3150 * xdisp.c (get_phys_cursor_geometry): New function to calculate
3151 phys cursor position and size for hollow cursor. Position is
3152 aligned with get_glyph_string_clip_rect and ensures that a hollow
3153 cursor is shown, even when the actual glyph is not visible.
3154
3155 * dispextern.h (get_phys_cursor_geometry): Add prototype.
3156
3157 * xterm.c (x_clip_to_row): Ensure y >= 0.
3158 (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
3159
3160 * w32term.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
3161
3162 * macterm.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
3163
3164 2005-01-27 Stefan Monnier <monnier@iro.umontreal.ca>
3165
3166 * xterm.c (x_error_quitter): Add a prototype. Make it static again.
3167
3168 2005-01-27 Kim F. Storm <storm@cua.dk>
3169
3170 * xdisp.c (get_glyph_string_clip_rect): Always show a cursor
3171 glyph, even when row is only partially visible and actual cursor
3172 position is not visible.
3173
3174 2005-01-24 Richard M. Stallman <rms@gnu.org>
3175
3176 * xterm.c (x_error_quitter): No longer static, and moved after
3177 x_error_handler.
3178
3179 2005-01-24 Kim F. Storm <storm@cua.dk>
3180
3181 * xdisp.c (move_it_by_lines): If we move forward after going too
3182 far back, cancel move if end position is same as start position.
3183
3184 2005-01-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3185
3186 * dispextern.h (struct glyph_string): New members clip_head and
3187 clip_tail.
3188
3189 * xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip
3190 region to the area between clip_head and clip_tail.
3191 (draw_glyphs): Record the area that need to be actually redrawn to
3192 the new variables clip_head and clip_tail when there are
3193 overhangs. Set values of these variables to the corresponding
3194 members in struct glyph_string. Refine x coordinates for
3195 notice_overwritten_cursor using clip_head and clip_tail.
3196
3197 * macgui.h (STORE_XCHARSETSTRUCT): New macro.
3198
3199 * macterm.c (mac_compute_glyph_string_overhangs): Implement with
3200 QDTextBounds.
3201 (x_draw_glyph_string): Don't fill the background of the successor
3202 of a glyph with a right overhang if the successor will draw a cursor.
3203 (XLoadQueryFont): Obtain font metrics using QDTextBounds.
3204 (x_redisplay_interface): Add entry for compute_glyph_string_overhangs.
3205
3206 2005-01-24 Kim F. Storm <storm@cua.dk>
3207
3208 * window.c (window_scroll_pixel_based): Fix scrolling in the wrong
3209 direction if window height was smaller than next-screen-context-lines.
3210 Now always scroll at least one line in the requested direction.
3211 Ensure that we actually do scroll backwards when requested to do so.
3212
3213 * xdisp.c (redisplay_window): Only try to make cursor line fully
3214 visible once (to avoid redisplay loop).
3215
3216 2005-01-23 Kim F. Storm <storm@cua.dk>
3217
3218 * window.c (Fpos_visible_in_window_p): Simplify return value for
3219 partially visible rows.
3220 (window_scroll_pixel_based): Adapt to that change.
3221
3222 * window.c (window_scroll_pixel_based): Force moving to next line
3223 if scrolling doesn't move start point, e.g. if looking at tall image.
3224
3225 * xdisp.c (pos_visible_p): Return 0 if non-interactive.
3226 Clear last_height before calling line_bottom_y to get real height.
3227 Fix calculation of y.
3228
3229 2005-01-22 Steven Tamm <steventamm@mac.com>
3230
3231 * s/darwin.h: Removed PTY_ITERATION from here.
3232 (DARWIN): Define.
3233
3234 * process.c (init_process): Default process-connection-type to
3235 nil on darwin 6 or less, t if it is 7 or higher. This way the
3236 broken pty behavior is still allowed on darwin 6 for interactive
3237 processes for people that know what they are doing.
3238
3239 2005-01-22 Kim F. Storm <storm@cua.dk>
3240
3241 * window.c (auto_window_vscroll_p): New boolean.
3242 (syms_of_window): DEFVAR_BOOL it.
3243 (Fpos_visible_in_window_p): Extend return value to include RTOP
3244 and RBOT values if FULLY is nil.
3245 (window_scroll_pixel_based): Adjust vscroll for partially visible
3246 rows if auto_window_vscroll_p is set.
3247 (Fset_window_vscroll): Do nothing if vscroll is not modified.
3248
3249 * xdisp.c (pos_visible_p): Replace FULLY arg by RTOP and RBOT args
3250 to return number of partially invisible pixels at top and bottom
3251 of the dislay row at POS.
3252
3253 * lisp.h (pos_visible_p): Fix prototype.
3254
3255 2005-01-21 Richard M. Stallman <rms@gnu.org>
3256
3257 * fileio.c (Fcopy_file): Doc fix.
3258
3259 2005-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3260
3261 * gtkutil.c (xg_tool_bar_detach_callback): Remove unused variable bw.
3262 (xg_get_file_name): Move declaration ofx_use_old_gtk_file_dialog to
3263 start of function for older compilers.
3264
3265 2005-01-20 Richard M. Stallman <rms@gnu.org>
3266
3267 * editfns.c (Fmessage): If arg is "", return "" (as before).
3268
3269 * keymap.c (access_keymap): Protect from bad value of meta_prefix_char.
3270
3271 * .gdbinit (xgetptr, xgetint, xgettype): Copy $arg0 into a temp
3272 variable.
3273
3274 2005-01-20 Steven Tamm <steventamm@mac.com>
3275
3276 * editfns.c (Voperating_system_release): Add.
3277 (init_editfns): Assign new variable operating-system-release
3278 based on call to uname if available.
3279 (get_operating_system_release): Add function to
3280 allow c-level access to operating system release.
3281
3282 * config.h: Regenerated.
3283
3284 * s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or less.
3285 (MIN_PTY_KERNEL_VERSION): Define minimum kernel version for
3286 using ptys as '7'.
3287
3288 2005-01-20 Kim F. Storm <storm@cua.dk>
3289
3290 * alloc.c (STRING_MARKED_P, VECTOR_MARKED_P): Return boolean.
3291
3292 * xterm.c (x_draw_glyph_string_box): Fix last_x for full width rows.
3293 Thanks to Chong Yidong <cyd@stupidchicken.com> for debugging this.
3294
3295 * macterm.c (x_draw_glyph_string_box): Likewise.
3296
3297 * w32term.c (x_draw_glyph_string_box): Likewise.
3298
3299 * indent.c (Fvertical_motion): Temporarily disable selective display.
3300
3301 2005-01-19 Kim F. Storm <storm@cua.dk>
3302
3303 * xdisp.c (note_mode_line_or_margin_highlight): Fix :pointer
3304 image property.
3305
3306 * fns.c (sweep_weak_table): Advance prev pointer when we keep a pair.
3307
3308 2005-01-18 Kim F. Storm <storm@cua.dk>
3309
3310 * xdisp.c (fast_find_position): Backtrack to find first row if
3311 charpos is inside a display overlay that spans multiple lines.
3312
3313 2005-01-18 Kenichi Handa <handa@m17n.org>
3314
3315 * coding.c (decode_coding_iso2022): Translate invalid codes if
3316 translation-table is specified.
3317
3318 2005-01-18 Kim F. Storm <storm@cua.dk>
3319
3320 * xdisp.c (back_to_previous_visible_line_start): Undo 2004-12-28
3321 change. If handle_display_prop indicates newline is replaced by
3322 image or text, move back to start of relevant overlay or interval
3323 and continue scan from there. Simplify.
3324
3325 2005-01-17 Kim F. Storm <storm@cua.dk>
3326
3327 * dispnew.c (mode_line_string, marginal_area_string):
3328 Fix off-by-one error in search for glyph.
3329
3330 2005-01-16 Kim F. Storm <storm@cua.dk>
3331
3332 * macterm.c (syms_of_macterm) <mac-allow-anti-aliasing>: Doc fix.
3333
3334 2005-01-16 Steven Tamm <steventamm@mac.com>
3335
3336 * macterm.c (mac_to_x_fontname): Remove spurious argument.
3337
3338 2005-01-16 Andreas Schwab <schwab@suse.de>
3339
3340 * macterm.c (mac_draw_string_common): Fix compilation on OSX 10.1.
3341
3342 2005-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3343
3344 * fringe.c (Fdefine_fringe_bitmap, init_fringe): When assigning
3345 fringe_faces, cast result from xmalloc/xrealloc to Lisp_Object *.
3346
3347 2005-01-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3348
3349 * keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW)
3350 (READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES):
3351 New flags for readable_events.
3352 (get_filtered_input_pending, readable_filtered_events): Remove.
3353 (tracking_off): Call readable_events and get_input_pending with
3354 flag READABLE_EVENTS_DO_TIMERS_NOW.
3355 (readable_events): Move code from old readable_filtered_events here,
3356 but check new READABLE_EVENTS_* in argument flags instead of previous
3357 two boolean arguments do_timers_now and filter_events.
3358 If we are doing mouse tracking and the mouse moved, return only if
3359 READABLE_EVENTS_IGNORE_SQUEEZABLES is not set in flags.
3360 (swallow_events): Call get_input_pending with flag
3361 READABLE_EVENTS_DO_TIMERS_NOW.
3362 (get_input_pending): Move code from old get_filtered_input_pending
3363 here. Replace boolean arguments do_timers_now, filter_events with
3364 flags, and pass flags to readable_events. Document new
3365 READABLE_EVENTS_* flags.
3366 (detect_input_pending_ignore_squeezables): New function.
3367 (detect_input_pending_run_timers): Call get_input_pending with flag
3368 READABLE_EVENTS_DO_TIMERS_NOW.
3369 (Finput_pending_p): Call get_input_pending with flags
3370 READABLE_EVENTS_DO_TIMERS_NOW and READABLE_EVENTS_FILTER_EVENTS.
3371
3372 * dispnew.c (update_window, update_frame_1): Replace calls to
3373 detect_input_pending with detect_input_pending_ignore_squeezables
3374 so that redisplay is not paused if the event queue contains only
3375 mouse movements.
3376
3377 * lisp.h: Declare detect_input_pending_ignore_squeezables.
3378
3379 2005-01-15 Steven Tamm <steventamm@mac.com>
3380
3381 * macterm.c (Vmac_use_core_graphics): Declare variable for
3382 mac-allow-anti-aliasing.
3383 (syms_of_macterm): DEFVAR_LISP and initialize it.
3384 (mac_draw_string_common): Use core graphics text rendering if
3385 mac-allow-anti-aliasing is enabled.
3386
3387 * macfns.c (Fx_file_dialog): Save As dialog includes only the
3388 file name in the text box.
3389
3390 2005-01-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3391
3392 * macfns.c (x_set_foreground_color, x_set_background_color):
3393 Sync with xfns.c.
3394 (mac_window, x_create_tip_frame): Use XSetWindowBackground.
3395 * macterm.c (XSetBackground, XSetWindowBackground): New functions.
3396 * macterm.h (XSetBackground, XSetWindowBackground): Add externs.
3397
3398 2005-01-14 Kim F. Storm <storm@cua.dk>
3399
3400 * keyboard.c (Fposn_at_x_y): Add optional arg WHOLE.
3401
3402 2005-01-13 Richard M. Stallman <rms@gnu.org>
3403
3404 * keymap.c (Fcurrent_active_maps): Ignore Voverriding_local_map
3405 if Voverriding_terminal_local_map is non-nil.
3406
3407 * keyboard.c (syms_of_keyboard): Doc fix.
3408
3409 2005-01-13 Kim F. Storm <storm@cua.dk>
3410
3411 * xdisp.c (Fformat_mode_line): Fix last change. Remove NO_PROPS arg
3412 (specify 0 for FACE instead). Reorder arg list. Doc fix.
3413
3414 2005-01-12 Richard M. Stallman <rms@gnu.org>
3415
3416 * xdisp.c (Fformat_mode_line): New arg FACE specifies a default
3417 face property for characters that don't specify one.
3418
3419 * fns.c (Frequire): Record in load-history unconditionally.
3420
3421 2005-01-10 Kim F. Storm <storm@cua.dk>
3422
3423 * dispextern.h (merge_faces): Rename from merge_into_realized_face.
3424
3425 * xfaces.c (merge_faces): Rename from merge_into_realized_face.
3426 Callers changed.
3427 Add support to merge with lisp face id too (if face_name is t).
3428
3429 * xdisp.c (get_next_display_element, next_element_from_display_vector):
3430 Don't lookup lface_id from display table glyphs here; instead use
3431 merge_faces to merge the lisp face id into current face.
3432
3433 2005-01-09 Kim F. Storm <storm@cua.dk>
3434
3435 * dispextern.h (struct it): New member dpvec_face_id.
3436 (merge_into_realized_face): Add prototype.
3437
3438 * xfaces.c (merge_into_realized_face): New function. Used to
3439 merge escape-glyph face or face from display table into current face.
3440
3441 * xdisp.c (Vshow_nonbreak_escape): New lisp var.
3442 (syms_of_xdisp): DEFVAR_LISP it.
3443 (escape_glyph_face): Remove var.
3444 (redisplay_window): Don't initialize it.
3445 (setup_for_ellipsis, get_next_display_element):
3446 Set it->dpvec_face_id to -1.
3447 (get_next_display_element): Test Vshow_nonbreak_escape.
3448 Do not setup escape_glyph_face.
3449 Properly merge escape-glyph face or face from display table with
3450 current face for escape and control characters.
3451 Set it->dpvec_face_id to relevant face id instead of adding it to each
3452 element of display vector.
3453 (next_element_from_display_vector): If it->dpvec_face_id is set,
3454 use that instead of lface_id from glyph itself.
3455
3456 2005-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3457
3458 * xterm.h (struct x_output): New member, toolbar_detached.
3459
3460 * gtkutil.c (xg_create_frame_widgets): Set initial tool bar height to
3461 38.
3462 (xg_tool_bar_detach_callback): Set toolbar_detached to 1.
3463 (xg_tool_bar_attach_callback): Set toolbar_detached to 0.
3464 (xg_create_tool_bar): Initialize toolbar_detached.
3465 (update_frame_tool_bar): Only set FRAME_TOOLBAR_HEIGHT (f) if
3466 toolbar_detached is zero.
3467
3468 2005-01-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3469
3470 * xmenu.c (create_and_show_popup_menu): Pass zero as button to
3471 gtk_menu_popup if not for_click, so callbacks for the menu are called.
3472
3473 * gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar)
3474 (xg_tool_bar_callback, xg_tool_bar_help_callback)
3475 (update_frame_tool_bar): Cast to EMACS_INT to avoid compiler warning.
3476
3477 * xselect.c (x_get_foreign_selection, x_fill_property_data)
3478 (Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with
3479 XFLOAT_DATA to get extract number from Lisp object.
3480
3481 2005-01-07 Kim F. Storm <storm@cua.dk>
3482
3483 * xdisp.c (set_iterator_to_next): Fix 2004-12-13 change.
3484 Set stop_charpos to current charpos instead of 0.
3485
3486 2005-01-06 Nick Roberts <nickrob@snap.net.nz>
3487
3488 * xdisp.c (Fformat_mode_line): First arg now required.
3489
3490 2005-01-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3491
3492 * macterm.c (XLoadQueryFont): Correctly handle 0 size
3493 font widths that are returned from some Japanese fonts.
3494
3495 2005-01-06 Kim F. Storm <storm@cua.dk>
3496
3497 * fringe.c (fringe_faces): Change to Lisp_Object pointer.
3498 (draw_fringe_bitmap_1): Lookup user defined fringe faces here.
3499 (destroy_fringe_bitmap): Set fringe_faces element to nil.
3500 (Fdefine_fringe_bitmap, init_fringe): Change allocation of
3501 fringe_faces array and init elements to nil.
3502 (Fset_fringe_bitmap_face): Set fringe_faces to face name instead of
3503 non-persistent face id.
3504 (mark_fringe_data): New function for GC.
3505
3506 * alloc.c (mark_fringe_data): Declare extern.
3507 (Fgarbage_collect): Call mark_fringe_data.
3508
3509 * alloc.c (overrun_check_free): Invalidate freed memory if
3510 XMALLOC_CLEAR_FREE_MEMORY is defined.
3511
3512 2005-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3513
3514 * macfns.c: Include sys/param.h.
3515 [TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration
3516 and function.
3517 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size
3518 of filename string. Set event callback function when creating
3519 dialog boxes. Add code conversions for filenames. Don't dispose
3520 apple event descriptor record if failed to create it.
3521
3522 * macterm.c: Include sys/param.h.
3523 [USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for
3524 kEventWindowUpdate.
3525 (install_window_handler) [USE_CARBON_EVENTS]: Register it.
3526 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead
3527 of FSSpec from apple event descriptor record.
3528 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for
3529 size of filename string.
3530 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.
3531 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a
3532 file dialog is in action.
3533 [TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise.
3534 Reject only when there are no filename items. Set background color
3535 before (un)highlighting the window below the dragged items.
3536 (XTread_socket) [USE_CARBON_EVENTS]: Don't call do_window_update.
3537
3538 2005-01-05 Romain Francoise <romain@orebokech.com>
3539
3540 * term.c (encode_terminal_code): Fix buffer size computation.
3541
3542 2005-01-04 Richard M. Stallman <rms@gnu.org>
3543
3544 * xdisp.c (Fformat_mode_line): Doc fix.
3545
3546 2005-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
3547
3548 * alloc.c (refill_memory_reserve): Move.
3549 (emacs_blocked_free, emacs_blocked_malloc, emacs_blocked_realloc)
3550 (reset_malloc_hooks, uninterrupt_malloc) [SYNC_INPUT]: Don't define.
3551
3552 2005-01-03 Richard M. Stallman <rms@gnu.org>
3553
3554 * window.c (window_scroll_pixel_based): Don't correct preserve_y
3555 for CURRENT_HEADER_LINE_HEIGHT when moving backwards.
3556
3557 2005-01-03 Jason Rumney <jasonr@gnu.org>
3558
3559 * w32bdf.c (w32_load_bdf_font): Set fontp->average_width and
3560 fontp->space_width to FONT_WIDTH so they are valid.
3561
3562 * w32fns.c (w32_load_system_font): Set FONT_WIDTH to maximum, not
3563 average width. Set fontp->average_width and fontp->space_width to
3564 their appropriate values.
3565
3566 * w32term.c (x_new_font): Set FRAME_COLUMN_WIDTH to
3567 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
3568 fontp->space_width.
3569
3570 2005-01-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3571
3572 * macterm.c (x_new_font): Set FRAME_SPACE_WIDTH.
3573 (x_font_min_bounds, XLoadQueryFont): Use the correct font width
3574 metrics for max and min bounds.
3575 (x_load_font): Correctly calculate average font width metrics.
3576
3577 2005-01-02 Richard M. Stallman <rms@gnu.org>
3578
3579 * alloc.c (Fgarbage_collect): Don't truncate_undo_list on dead buffers.
3580
3581 2004-12-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3582
3583 * xterm.c (handle_one_xevent): Clear area in expose event for GTK.
3584
3585 2004-12-31 Richard M. Stallman <rms@gnu.org>
3586
3587 * xdisp.c (setup_for_ellipsis, get_next_display_element):
3588 Set it->ellipsis_p to 1 or 0.
3589 (display_line): Record whether row ends in mid-ellipsis.
3590 (set_cursor_from_row): If ends in ellipsis, find start of it.
3591 (cursor_row_p): If PT's at the end of the ellipsis the row
3592 ends within, don't display cursor on this row.
3593
3594 * dispextern.h (struct it): New element ellipsis_p.
3595 (struct glyph_row): New element ends_in_ellipsis_p.
3596
3597 * xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified
3598 position if we're reading from something other than the buffer.
3599
3600 * window.c (window_scroll_pixel_based): Only look at
3601 Vscroll_preserve_screen_position if the old PT can't be kept.
3602 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
3603
3604 2004-12-30 Kim F. Storm <storm@cua.dk>
3605
3606 * xdisp.c (get_line_height_property): New function extracted from
3607 original calc_line_height_property.
3608 (calc_line_height_property): Rework. Handle t and (nil . ratio).
3609 (x_produce_glyphs): Use them to handle line-height and
3610 line-spacing according to new height spec.
3611 (Qtotal): Remove.
3612 (syms_of_xdisp): Remove intern and staticpro for Qtotal.
3613
3614 2004-12-30 Kenichi Handa <handa@m17n.org>
3615
3616 * fileio.c (Finsert_file_contents): Don't use
3617 current_buffer->buffer_file_coding_system even if REPLACE is
3618 non-nil. Call Qafter_insert_file_set_coding with the second arg VISIT.
3619
3620 * fontset.h (struct font_info): New members space_width and
3621 average_width.
3622
3623 * frame.h (struct frame): New member space_width.
3624 (FRAME_SPACE_WIDTH): New macro.
3625
3626 * xterm.h (struct x_display_info): New member Xatom_AVERAGE_WIDTH.
3627
3628 * xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to
3629 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
3630 fontp->space_width.
3631 (x_load_font): Calculate fontp->space_width and fontp->average_width.
3632 (x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH.
3633
3634 * xdisp.c (x_produce_glyphs): Calculate tab width by
3635 FRAME_SPACE_WIDTH, not FRAME_COLUMN_WIDTH.
3636
3637 2004-12-29 Sanghyuk Suh <han9kin@mac.com>
3638
3639 * macterm.c (SelectionRange): Add Xcode position apple event struct.
3640 (do_ae_open_documents): Handle Xcode-style file position open events.
3641
3642 2004-12-29 Luc Teirlinck <teirllm@auburn.edu>
3643
3644 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Correct typo.
3645
3646 2004-12-29 Richard M. Stallman <rms@gnu.org>
3647
3648 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Doc fix.
3649
3650 2004-12-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3651
3652 * macfns.c (install_window_handler): Modify extern to return OSErr
3653 value.
3654 (mac_window): Handle return value of install_window_handler.
3655
3656 * macterm.c (reflect_byte): Remove function.
3657 (mac_create_bitmap_from_bitmap_data): Don't call reflect_byte.
3658 Lookup table instead.
3659 (mac_do_font_lists): Simplify calculation of the longest
3660 nonspecial string.
3661 (init_mac_drag_n_drop): Remove function and declaration.
3662 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
3663 init_mac_drag_n_drop.
3664 (mac_do_track_drag): New function and declaration.
3665 (install_window_handler): Return OSErr value.
3666 (install_window_handler) [TARGET_API_MAC_CARBON]:
3667 Register handlers for tracking/receiving drag-and-drop items.
3668 (do_ae_open_documents): Generate unibyte strings for filenames.
3669 (mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise.
3670 Reject only non-filename items. Set event modifiers, and return value.
3671
3672 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
3673
3674 * coding.c (decode_coding): Fix previous change.
3675
3676 2004-12-28 Richard M. Stallman <rms@gnu.org>
3677
3678 * xdisp.c (back_to_previous_visible_line_start):
3679 Don't call handle_display_prop.
3680
3681 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
3682
3683 * coding.c (decode_coding_XXX, decode_composition_emacs_mule)
3684 (decode_coding_emacs_mule, encode_coding_emacs_mule)
3685 (decode_coding_iso2022, encode_designation_at_bol)
3686 (encode_coding_iso2022, decode_coding_sjis_big5, decode_eol)
3687 (decode_coding): Constify arguments and local vars.
3688
3689 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3690
3691 * xmenu.c (popup_get_selection): Only pop down dialogs
3692 on C-g and Escape.
3693 (popup_get_selection): Remove parameter down_on_keypress.
3694 (create_and_show_popup_menu, create_and_show_dialog):
3695 Remove parameter down_on_keypress to popup_get_selection.
3696
3697 2004-12-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3698
3699 * dispextern.h: Change HAVE_CARBON to MAC_OS.
3700 (struct glyph_string): Likewise.
3701
3702 * emacs.c (main) [MAC_OS8]: Call mac_term_init instead of
3703 mac_initialize.
3704
3705 * fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name):
3706 Change TARGET_API_MAC_CARBON to HAVE_CARBON.
3707
3708 * fns.c (vector): Change MAC_OSX to MAC_OS.
3709
3710 * frame.c (x_set_frame_parameters, x_report_frame_params)
3711 (x_set_fullscreen): Remove #ifndef HAVE_CARBON.
3712 (x_set_border_width, Vdefault_frame_scroll_bars):
3713 Change HAVE_CARBON to MAC_OS.
3714
3715 * image.c [MAC_OS]: Include sys/stat.h.
3716 [MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and
3717 QuickTimeComponents.h.
3718
3719 * mac.c [!MAC_OSX] (mac_wait_next_event): Add extern.
3720 [!MAC_OSX] (select): Use mac_wait_next_event.
3721 [!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to Vexec_suffixes.
3722 [!MAC_OSX] (select, run_mac_command): Change `#ifdef
3723 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
3724 (mac_clear_font_name_table): Add extern.
3725 (Fmac_clear_font_name_table): New defun.
3726 (syms_of_mac): Defsubr it.
3727 [MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define.
3728 [MAC_OSX] (select_and_poll_event): New function.
3729 [MAC_OSX] (sys_select): Use it.
3730 [MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function.
3731 [MAC_OSX && SELECT_USE_CFSOCKET]
3732 (SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines.
3733 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and
3734 RunLoop for simultaneously monitoring two kinds of inputs, window
3735 events and process outputs, without periodically polling.
3736
3737 * macfns.c (mac_initialized): Remove extern.
3738 (stricmp): Put in #if 0. All callers changed to use xstricmp in
3739 xfaces.c.
3740 (strnicmp): Decrement `n' at the end of each loop, not the beginning.
3741 (check_mac): Use the term "Mac native windows" instead of "Mac OS".
3742 (check_x_display_info, x_display_info_for_name): Sync with xfns.c.
3743 (mac_get_rdb_resource): New function (from w32reg.c).
3744 (x_get_string_resource): Use it.
3745 (install_window_handler): Add extern.
3746 (mac_window): New function.
3747 (Fx_create_frame): Use it instead of make_mac_frame.
3748 Set parameter for Qfullscreen. Call x_wm_set_size_hint.
3749 (Fx_open_connection, Fx_close_connection): New defuns.
3750 (syms_of_macfns): Defsubr them.
3751 (x_create_tip_frame) [TARGET_API_MAC_CARBON]:
3752 Add kWindowNoUpdatesAttribute to the window attribute.
3753 (x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow.
3754 (x_create_tip_frame): Don't call ShowWindow.
3755 (Fx_show_tip): Call ShowWindow.
3756 (Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if
3757 TARGET_API_MAC_CARBON'.
3758 (mac_frame_parm_handlers): Set handlers for Qfullscreen.
3759 (syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0.
3760
3761 * macgui.h [!MAC_OSX]: Don't include Controls.h. Include Windows.h.
3762 (Window): Typedef to WindowPtr and move outside `#if
3763 TARGET_API_MAC_CARBON'.
3764 (XSizeHints): New struct.
3765
3766 * macterm.c (x_update_begin, x_update_end)
3767 [TARGET_API_MAC_CARBON]: Disable screen updates during update of a
3768 frame.
3769 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
3770 [MAC_OS8]: Use XDrawImageString/XDrawImageString16.
3771 (construct_mouse_click): Put in #if 0.
3772 (x_check_fullscreen, x_check_fullscreen_move): Remove decls.
3773 (x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef
3774 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
3775 (activate_scroll_bars, deactivate_scroll_bars)
3776 [!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl.
3777 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window
3778 if the position is neither user-specified nor program-specified.
3779 (x_free_frame_resources): Free size_hints.
3780 (x_wm_set_size_hint): Allocate size_hints if needed. Set size_hints.
3781 (mac_clear_font_name_table): New function.
3782 (mac_do_list_fonts): Initialize font_name_table if needed.
3783 (x_list_fonts): Don't initialize font_name_table. Add BLOCK_INPUT
3784 around mac_do_list_fonts.
3785 (mac_unload_font): New function.
3786 (x_load_font): Add BLOCK_INPUT around XLoadQueryFont.
3787 (init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations
3788 and definitions with #if TARGET_API_MAC_CARBON.
3789 [USE_CARBON_EVENTS] (mac_handle_window_event): Add decl.
3790 (install_window_handler): Add decl.
3791 (do_window_update): Add BeginUpdate/EndUpdate for the tooltip
3792 window. Use UpdateControls. Get the rectangle that should be
3793 updated and restrict the target of expose_frame to it.
3794 (do_grow_window): Set minimum height/width according to size_hints.
3795 (do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow.
3796 (do_zoom_window): Don't use x_set_window_size.
3797 [USE_CARBON_EVENTS] (mac_handle_window_event): New function.
3798 (install_window_handler): New function.
3799 [!USE_CARBON_EVENTS] (mouse_region): New variable.
3800 [!USE_CARBON_EVENTS] (mac_wait_next_event): New function.
3801 (XTread_socket) [USE_CARBON_EVENTS]: Move call to
3802 GetEventDispatcherTarget inside BLOCK_INPUT.
3803 (XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event.
3804 Update mouse_region when mouse is moved.
3805 (make_mac_frame): Remove.
3806 (make_mac_terminal_frame): Put in #ifdef MAC_OS8.
3807 Initialize mouse pointer shapes. Change values of f->left_pos and
3808 f->top_pos. Don't use make_mac_frame. Use NewCWindow.
3809 Don't call ShowWindow.
3810 (mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from
3811 Vinvocation_name and Vsystem_name.
3812 (mac_make_rdb): New function (from w32term.c).
3813 (mac_term_init): Use it. Add BLOCK_INPUT. Error if display has
3814 already been opened. Don't pass argument to
3815 mac_initialize_display_info. Don't set dpyinfo->height/width.
3816 Add entries to x_display_list and x_display_name_list.
3817 (x_delete_display): New function.
3818 (mac_initialize): Don't call mac_initialize_display_info.
3819 (syms_of_macterm) [!MAC_OSX]: Don't call Fprovide.
3820
3821 * macterm.h (check_mac): Add extern.
3822 (struct mac_output): New member size_hints.
3823 (FRAME_SIZE_HINTS): New macro.
3824 (mac_unload_font): Add extern.
3825
3826 * xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
3827
3828 * xfaces.c (clear_font_table) [MAC_OS]: Call mac_unload_font.
3829
3830 2004-12-27 Richard M. Stallman <rms@gnu.org>
3831
3832 * buffer.c (Fbuffer_disable_undo): Delete (move to simple.el).
3833 (syms_of_buffer): Don't defsubr it.
3834
3835 * process.c (list_processes_1): Set undo_list instead
3836 of calling Fbuffer_disable_undo.
3837
3838 * xdisp.c (single_display_spec_string_p): Rename from
3839 single_display_prop_string_p.
3840 (single_display_spec_intangible_p): Rename from
3841 single_display_prop_intangible_p.
3842 (handle_single_display_spec): Rename from handle_single_display_prop.
3843 Rewritten to be easier to understand.
3844
3845 Change in load-history format. Functions now get (defun . NAME),
3846 and variables get just NAME.
3847
3848 * data.c (Fdefalias): Use (defun . FN_NAME) in LOADHIST_ATTACH.
3849
3850 * eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH.
3851 (Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH.
3852 (Qdefvar): Var deleted.
3853 (syms_of_eval): Don't initialze it.
3854
3855 * lread.c (syms_of_lread) <load-history>: Doc fix.
3856
3857 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3858
3859 * xmenu.c (popup_get_selection): Pop down on C-g.
3860 (set_frame_menubar): Install translations for Lucid/Motif/Lesstif that
3861 pops down menu on C-g.
3862 (xdialog_show): If dialog popped down and no button in the dialog was
3863 pushed, call Fsignal to quit.
3864 (xmenu_show): In no toolkit version, if menu returns NO_SELECT call
3865 Fsignal to quit.
3866
3867 * xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g.
3868
3869 * gtkutil.c (xg_initialize): Install bindings for C-g so that
3870 dialogs and menus pop down.
3871
3872 2004-12-27 Kenichi Handa <handa@m17n.org>
3873
3874 * coding.c (code_convert_region): Fix calculation of `ratio'.
3875
3876 2004-12-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3877
3878 * gtkutil.c (update_frame_tool_bar): Make the value of
3879 tool-bar-button-margin control margins of images in tool bar.
3880
3881 * alloc.c (check_depth): New variable.
3882 (overrun_check_malloc, overrun_check_realloc): Only add
3883 overhead and write check pattern if check_depth is 1 (to handle
3884 recursive calls). Increase/decrease check_depth in entry/exit.
3885 (overrun_check_free): Only check for overhead if check_depth is 1.
3886 Increase/decrease check_depth in entry/exit.
3887
3888 2004-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3889
3890 * keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK
3891 before touching input_available_clear_time, to avoid accessing it
3892 from multiple threads.
3893
3894 2004-12-23 Jason Rumney <jasonr@gnu.org>
3895
3896 * image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour
3897 of JPEG library.
3898
3899 2004-12-22 Richard M. Stallman <rms@gnu.org>
3900
3901 * emacs.c (main): If batch mode, set Vundo_outer_limit to nil.
3902
3903 * lisp.h (Vundo_outer_limit): Fix decl.
3904
3905 * undo.c (Vundo_outer_limit): Replaces undo_outer_limit.
3906 Uses changed.
3907 (syms_of_undo): Initialize appropriately.
3908 (truncate_undo_list): If it's nil, there's no limit.
3909
3910 2004-12-22 Kenichi Handa <handa@m17n.org>
3911
3912 * xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string.
3913
3914 2004-12-21 Richard M. Stallman <rms@gnu.org>
3915
3916 * eval.c (unwind_to_catch): Clear immediate_quit.
3917
3918 * xdisp.c (get_next_display_element): Display codes 8a0 and 8ad
3919 specially as `\ ' and `\-'.
3920
3921 * keyboard.c (kbd_buffer_store_event_hold):
3922 In the code for while-no-input, handle immediate_quit.
3923
3924 * alloc.c (Fgarbage_collect): Update call to truncate_undo_list.
3925 Call that at the very start.
3926 (undo_limit, undo_strong_limit, undo_outer_limit): Move to undo.c.
3927 (syms_of_alloc): Don't define undo-limit,
3928 undo-strong-limit and undo-outer-limit here.
3929
3930 * undo.c (truncate_undo_list): Return void.
3931 Take just one argument, the buffer.
3932 Make it current, and inhibit recursive GC.
3933 Access and update the undo list directly; return void.
3934 Refer to the undo...limit variables directly.
3935 Test undo_outer_limit only after counting the whole current command.
3936 When it's exceeded, call the function in undo-outer-limit-function.
3937 (undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c.
3938 (Vundo_outer_limit_function): New variable.
3939 (syms_of_undo): Define undo-limit, undo-strong-limit
3940 and undo-outer-limit here, and undo-outer-limit-function.
3941 Doc fixes.
3942
3943 * lisp.h (truncate_undo_list): Update decl.
3944
3945 2004-12-21 Piet van Oostrum <piet@cs.uu.nl>
3946
3947 * fileio.c (Fread_file_name): Delete duplicates in
3948 file-name-history when history_delete_duplicates is true.
3949
3950 2004-12-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3951
3952 * macterm.c (mac_do_list_fonts): Fix memory leak
3953
3954 2004-12-20 Richard M. Stallman <rms@gnu.org>
3955
3956 * regex.c (re_match_2_internal) <symend, wordend>:
3957 Fix calls to UPDATE_SYNTAX_TABLE_FORWARD.
3958
3959 2004-12-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3960
3961 * macterm.c (endif, x_font_name_to_mac_font_name):
3962 Use maccentraleurroman instead of maccentraleuropean
3963 (mac_c_string_match, mac_do_list_fonts): Speed up font search by
3964 quickly finding a specific font without needing regexps.
3965
3966 2004-12-15 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3967
3968 * syssignal.h: Declare main_thread.
3969 (SIGNAL_THREAD_CHECK): New macro.
3970
3971 * keyboard.c (input_available_signal): Move thread checking code
3972 to macro SIGNAL_THREAD_CHECK and call that macro.
3973 (interrupt_signal): Call SIGNAL_THREAD_CHECK.
3974
3975 * alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.
3976
3977 * emacs.c: Define main_thread.
3978 (main): Initialize main_thread.
3979 (handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
3980 (memory_warning_signal): Call SIGNAL_THREAD_CHECK.
3981
3982 * floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.
3983
3984 * dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.
3985
3986 * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.
3987
3988 * process.c (send_process_trap, sigchld_handler):
3989 Call SIGNAL_THREAD_CHECK.
3990
3991 * data.c (arith_error): Call SIGNAL_THREAD_CHECK.
3992
3993 * atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.
3994
3995 * xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before
3996 returning when xg_ignore_gtk_scrollbar is true.
3997
3998 2004-12-14 Kim F. Storm <storm@cua.dk>
3999
4000 * keyboard.c (read_char): Save and restore echo_string when
4001 handling input method.
4002
4003 2004-12-13 Richard M. Stallman <rms@gnu.org>
4004
4005 * eval.c (syms_of_eval) <quit-flag>: Doc fix.
4006
4007 * keyboard.c (Vthrow_on_input): New variable.
4008 (syms_of_keyboard): Defvar and initialize it.
4009 (kbd_buffer_store_event_hold): Handle Vthrow_on_input.
4010
4011 * lisp.h (QUIT): Check for Vthrow_on_input.
4012 (Vthrow_on_input): Declare it.
4013
4014 2004-12-13 Kim F. Storm <storm@cua.dk>
4015
4016 * xdisp.c (set_iterator_to_next): Reset stop_charpos after display
4017 vector.
4018
4019 2004-12-12 Richard M. Stallman <rms@gnu.org>
4020
4021 * indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0.
4022
4023 * minibuf.c (Fall_completions): Add var `zero' and use it in loop.
4024 (Ftry_completion): Really use outer `zero'; eliminate inner one.
4025
4026 2004-12-12 Kenichi Handa <handa@m17n.org>
4027
4028 * term.c (encode_terminal_code): Fix previous change.
4029
4030 2004-12-11 Stefan Monnier <monnier@iro.umontreal.ca>
4031
4032 * keyboard.c (handle_async_input): Remove pthread mutex handling.
4033 (input_available_signal): Move pthread thingy to !SYNC_INPUT branch.
4034
4035 * syntax.c (Fforward_word): Avoid non-idempotent side-effects
4036 in macro arguments.
4037
4038 * minibuf.c (Ftry_completion, Fall_completions): Don't use
4039 XFASTINT blindly.
4040
4041 * emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT.
4042
4043 2004-12-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4044
4045 * w32term.c (x_calc_absolute_position): Remove calculation of
4046 difference between inner and outer window. Don't subtract difference
4047 for left and top calculations.
4048
4049 * xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
4050 for left and top calculations. Remove call to x_real_positions.
4051 [Bug report by Drew Adams in November]
4052 (x_check_expected_move): Do not set change_gravity to 1 when calling
4053 x_set_offset.
4054
4055 2004-12-08 Richard M. Stallman <rms@gnu.org>
4056
4057 * xdisp.c (get_next_display_element): Use `escape-glyph' for
4058 control chars and escaped octal codes.
4059 (Qescape_glyph): New variable.
4060 (syms_of_xdisp): Initialize it.
4061 (escape_glyph_face): New variable.
4062 (redisplay_window): Initialize it.
4063
4064 2004-12-07 Paul Eggert <eggert@cs.ucla.edu>
4065
4066 * image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE)
4067 (init_image): Use 1 rather than TRUE. TRUE's not always defined.
4068
4069 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4070
4071 * emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around
4072 reset_malloc_hooks.
4073
4074 * keyboard.c (handle_async_input, input_available_signal):
4075 Add ! defined (SYSTEM_MALLOC) around thread code.
4076
4077 * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC.
4078
4079 2004-12-07 Stefan Monnier <monnier@iro.umontreal.ca>
4080
4081 * eval.c (init_eval_once): Increase max_specpdl_size to 1000.
4082
4083 * config.in: Regenerate.
4084
4085 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4086
4087 * xmenu.c (Fx_popup_menu): Correct documentation about position.
4088 (xmenu_show): Do not call XTranslateCoordinates. Adjust position
4089 if not given by a mouse click to correspond with x-popup-menu
4090 documentation.
4091
4092 * config.in: Regenerate.
4093
4094 * gtkutil.c: Include signal.h and syssignal.h.
4095 (xg_get_file_name): Block and unblock __SIGRTMIN if defined.
4096
4097 * alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
4098 new variables main_thread and alloc_mutex,
4099 define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
4100 emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
4101 If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same as
4102 (UN)BLOCK_INPUT.
4103 (emacs_blocked_free, emacs_blocked_malloc)
4104 (emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
4105 (uninterrupt_malloc): Initialize main_thread and alloc_mutex.
4106 (reset_malloc_hooks): New function.
4107
4108 * lisp.h: Declare reset_malloc_hooks.
4109
4110 * emacs.c (Fdump_emacs): Call reset_malloc_hooks.
4111
4112 * keyboard.c: Conditionally include pthread.h
4113 (handle_async_input, input_available_signalt): If not in the main
4114 thread, block signal, send signal to main thread and return.
4115
4116 * gtkutil.c (xg_get_file_with_chooser): Handle local files only.
4117 Set current folder in file chooser if default_filename is a directory.
4118
4119 2004-12-05 Stefan Monnier <monnier@iro.umontreal.ca>
4120
4121 * regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end.
4122 Remove redundant correctness checks.
4123 (regex_compile): Fix up error codes for \{..\} expressions.
4124
4125 2004-12-05 Richard M. Stallman <rms@gnu.org>
4126
4127 * regex.c (regex_compile): Fix end-of-pattern case for space.
4128
4129 2004-12-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4130
4131 * macterm.h (cfstring_create_with_utf8_cstring): Add prototype.
4132 * mac.c (cfstring_create_with_utf8_cstring): Add to prevent
4133 crashes with invalid characters.
4134 * macmenu.c (add_menu_item): Use it.
4135 * image.c (image_load_quartz2d): Likewise.
4136 * macfns.c (x_set_name, x_set_title): Likewise.
4137 (Fx_file_dialog): Likewise. Use constant CFRefs instead of
4138 creating them each time for labels.
4139
4140 2004-12-02 Richard M. Stallman <rms@gnu.org>
4141
4142 * config.in (RE_TRANSLATE_P): If make_number is not a macro,
4143 don't use it here.
4144
4145 * eval.c (Fcalled_interactively_p): Don't check INTERACTIVE.
4146 (interactive_p): Skip Scalled_interactively_p frames
4147 like Sinteractive_p frames.
4148 (unwind_to_catch): Clear handling_signal.
4149
4150 * data.c (Fmake_variable_buffer_local): Doc fix.
4151 (Fmake_local_variable): Doc fix.
4152
4153 * insdel.c (insert_from_string_before_markers)
4154 (insert_from_string): Don't modify buffer on empty insertion.
4155
4156 * window.c (Fget_lru_window, Fget_largest_window): Doc fixes.
4157
4158 2004-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4159
4160 * macmenu.c (add_menu_item): Fallback on MacRoman if encoding
4161 menu text as UTF8 fails.
4162
4163 2004-12-01 Kim F. Storm <storm@cua.dk>
4164
4165 * alloc.c: Add commentary for last change.
4166 (XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle
4167 sizeof(size_t) != 4.
4168 (overrun_check_malloc, overrun_check_realloc, overrun_check_free):
4169 Use them. Also clear header and trailer of freed memory.
4170 (GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA.
4171 (string_overrun_cookie): Rename from string_overrun_pattern.
4172 (GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE.
4173
4174 2004-12-01 Andreas Schwab <schwab@suse.de>
4175
4176 * lisp.h: Declare string_to_multibyte.
4177
4178 2004-12-01 Kenichi Handa <handa@m17n.org>
4179
4180 * w32console.c (w32con_write_glyphs): Decide coding here.
4181 Adjusted for the change of encode_terminal_code.
4182
4183 * term.c (encode_terminal_code): Don't make it "static".
4184
4185 2004-11-30 Kenichi Handa <handa@m17n.org>
4186
4187 * term.c (encode_terminal_buf, encode_terminal_bufsize): New variables.
4188 (encode_terminal_code): Argument changed. Encode all
4189 characters at once, and return a pointer to the result of encoding.
4190 (write_glyphs): Decide coding here. Adjusted for the above change.
4191 (insert_glyphs): Likewise.
4192 (term_init): Initialize encode_terminal_bufsize to 0.
4193
4194 * coding.c (Vcode_conversion_workbuf_name): New variable.
4195 (syms_of_coding): Initialize and staticpro it.
4196 (set_conversion_work_buffer): New function.
4197 (run_pre_post_conversion_on_str): Use it.
4198 (run_pre_write_conversin_on_c_str): New function.
4199
4200 * coding.h (run_pre_write_conversin_on_c_str): Extern it.
4201
4202 2004-11-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4203
4204 * keyboard.c: Don't undef SIGIO
4205 * s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
4206 * Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
4207 (macfns.o): Don't depend on ccl.h.
4208 * macfns.c (mac_frame_parm_handlers): Set handlers for
4209 Qleft_fringe and Qright_fringe.
4210 * macterm.c (mac_fill_rectangle_to_pixmap)
4211 (mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
4212 (mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
4213 Put in #if 0.
4214 (mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
4215 (x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
4216 (XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
4217 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
4218 [!MAC_OS8]: Added ifdef'd out code for os8. Don't use
4219 XDrawImageString. Always draw background and foreground separately.
4220 (x_draw_image_foreground): Use clipping instead of computing the
4221 intersection rectangle.
4222 (x_draw_image_glyph_string): Don't draw an image with mask to a
4223 pixmap.
4224 (x_redisplay_interface): Set flush_display_optional member to 0.
4225 (XTread_socket): Correctly reset the TEConverter
4226 object.
4227
4228 2004-11-30 Kim F. Storm <storm@cua.dk>
4229
4230 * lisp.h: New defines to enable buffer overrun checking.
4231 (GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST)
4232 (XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add.
4233
4234 * alloc.c: Add more checks for buffer overruns.
4235 (XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header)
4236 xmalloc_overrun_check_trailer, overrun_check_malloc)
4237 overrun_check_realloc, overrun_check_free): Add.
4238 (GC_STRING_EXTRA, string_overrun_pattern): Add.
4239 (check_sblock, allocate_string_data, compact_small_strings):
4240 Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN.
4241 (check_cons_list): Condition on GC_CHECK_CONS_LIST.
4242 (check_string_free_list): Add.
4243 (allocate_string, sweep_strings): Call check_string_free_list.
4244
4245 * emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if
4246 XMALLOC_OVERRUN_CHECK to avoid crash during load.
4247
4248 2004-11-29 Kim F. Storm <storm@cua.dk>
4249
4250 * fns.c (concat): Use SAFE_ALLOCA.
4251
4252 2004-11-29 Stefan Monnier <monnier@iro.umontreal.ca>
4253
4254 * sysdep.c (emacs_write): Don't use QUIT.
4255
4256 2004-11-29 Kenichi Handa <handa@m17n.org>
4257
4258 * buffer.c (init_buffer): Set current_buffer->directory to a
4259 multibyte string made by string_to_multibyte.
4260
4261 * emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args.
4262
4263 2004-11-27 Andreas Schwab <schwab@suse.de>
4264
4265 * alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined.
4266
4267 * s/gnu-linux.h: Enable no-op gcpros on ia64.
4268 (GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
4269
4270 * filelock.c (lock_file_1): Call get_boot_time early.
4271 Increase buffer size.
4272
4273 2004-11-27 Eli Zaretskii <eliz@gnu.org>
4274
4275 * lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN
4276 is not defined.
4277
4278 2004-11-27 Kim F. Storm <storm@cua.dk>
4279
4280 * search.c (syms_of_search) <search-spaces-regexp>: Move 'doc:'
4281 marker out of doc string.
4282
4283 2004-11-26 Stefan Monnier <monnier@iro.umontreal.ca>
4284
4285 * s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25,
4286 which was not mentioned in the log.
4287
4288 2004-11-26 Kim F. Storm <storm@cua.dk>
4289
4290 * fringe.c (update_window_fringes): Prefer truncation bitmaps over
4291 angle bitmaps at top/bottom line.
4292
4293 * xdisp.c: Undo recent changes for restoring saved_face_id. Instead,
4294 set it when it->method is set to next_element_from_display_vector.
4295 (setup_for_ellipsis): Add LEN argument. Callers changed.
4296 Set it->saved_face_id.
4297 (get_next_display_element): Use loop instead of recursion.
4298 Set it->saved_face_id. Combine duplicate code for ctr chars.
4299 (next_element_from_display_vector): Do not set it->saved_face_id.
4300 (next_element_from_ellipsis): Use setup_for_ellipsis.
4301
4302 2004-11-26 Eli Zaretskii <eliz@gnu.org>
4303
4304 * eval.c (Fdefvar): Declare pdl from last change as `volatile' to
4305 prevent compiler warnings.
4306
4307 2004-11-25 Stefan Monnier <monnier@iro.umontreal.ca>
4308
4309 * keyboard.c (command_loop_1): Print a message describing the key
4310 the user just pressed when this key has no binding.
4311
4312 * sysdep.c (sys_signal): Don't use SA_RESTART if SYNC_INPUT is set.
4313 (emacs_open, emacs_read, emacs_write): Check QUIT when interrupted.
4314
4315 * lread.c (readchar): Check QUIT when `getc' is interrupted.
4316
4317 2004-11-24 Richard M. Stallman <rms@gnu.org>
4318
4319 * coding.c (run_pre_post_conversion_on_str): Bind Qinhibit_read_only.
4320
4321 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>: Doc fix.
4322
4323 2004-11-24 Kim F. Storm <storm@cua.dk>
4324
4325 * xdisp.c (move_it_in_display_line_to, display_line):
4326 Restore saved_face_id also when truncate-lines or hscrolled.
4327
4328 2004-11-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4329
4330 * gtkutil.c (xg_get_file_name): Rename use-old-gtk-file-dialog to
4331 x-use-old-gtk-file-dialog.
4332
4333 * xfns.c: Define x_use_old_gtk_file_dialog.
4334 (syms_of_xfns): Rename use-old-gtk-file-dialog to x-... Move it
4335 outside ifdef USE_GTK.
4336
4337 2004-11-23 Stefan Monnier <monnier@iro.umontreal.ca>
4338
4339 * coding.h (ENCODE_FILE, DECODE_FILE, ENCODE_SYSTEM, DECODE_SYSTEM):
4340 Don't use XFASTINT blindly.
4341
4342 * config.in (RE_TRANSLATE_P): Don't use XFASTINT blindly.
4343
4344 * indent.c (skip_invisible): Avoid non-idempotent side-effects
4345 in macro arguments.
4346
4347 * keymap.c (Flookup_key): Check INTEGERP before XINT.
4348
4349 * lread.c (oblookup): Don't use XFASTINT blindly.
4350
4351 * window.c (Fset_window_scroll_bars): Don't use XINT if it isn't int.
4352 (decode_next_window_args, window_loop): Don't use XFASTINT blindly.
4353
4354 2004-11-23 Kim F. Storm <storm@cua.dk>
4355
4356 * dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P)
4357 (MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero.
4358
4359 * xfaces.c (lookup_named_face): Add signal_p arg. Return -1 if
4360 signal_p is zero and face name is unknown.
4361 (Fx_list_fonts): Don't signal error in lookup_named_face.
4362 (Fface_font): Signal error in lookup_named_face.
4363 (ascii_face_of_lisp_face): Likewise.
4364
4365 * dispextern.h (lookup_named_face): Fix prototype.
4366
4367 * xdisp.c (handle_single_display_prop): Don't signal error in
4368 lookup_named_face for unknown fringe face name.
4369 (highlight_trailing_whitespace): Don't signal error in
4370 lookup_named_face if trailing-whitespace face unknown.
4371 (calc_line_height_property): Don't signal error in
4372 lookup_named_face if specified face name is unknown.
4373
4374 * fringe.c (update_window_fringes): Show top row indicator if
4375 window has header-line. Don't show arrow at bob and eob
4376 if the boundary indicators are not used.
4377 (Fset_fringe_bitmap_face): Signal error in lookup_named_face.
4378
4379 * window.c (set_window_buffer): Clear display_error_modiff.
4380
4381 2004-11-22 Kim F. Storm <storm@cua.dk>
4382
4383 * fringe.c (update_window_fringes): Provide sensible fall-back
4384 value for non-nil indicate-buffer-boundaries setting.
4385
4386 2004-11-22 Markus Rost <rost@ias.edu>
4387
4388 * minibuf.c (Fminibuffer_complete_and_exit): Fix previous change.
4389
4390 2004-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
4391
4392 * eval.c (Fdefvar): Warn when var is let-bound but globally void.
4393
4394 2004-11-21 Kim F. Storm <storm@cua.dk>
4395
4396 * xdisp.c (erase_phys_cursor): Clear hollow cursor inside TEXT_AREA.
4397
4398 * xterm.c (x_clip_to_row): Add area arg. Callers changed.
4399 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
4400
4401 * w32term.c (w32_clip_to_row): Add area arg. Callers changed.
4402 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
4403
4404 * macterm.c (x_clip_to_row): Add area arg. Callers changed.
4405 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
4406
4407 * xdisp.c (move_it_in_display_line_to, display_line):
4408 Restore saved_face_id if overflow-newline-into-fringe is enabled and
4409 line is continued before or in middle of element from display vector.
4410
4411 * indent.c (Fvertical_motion): Fix last change. Use another
4412 method to detect if iterator moved too far ahead after reseat.
4413
4414 * xdisp.c (IT_EXPAND_MATRIX_WIDTH): New macro. Do not
4415 expand matrix width for overflow in zero-width area.
4416 (append_glyph, append_composite_glyph, produce_image_glyph)
4417 (append_stretch_glyph): Use it to avoid loop in redisplay.
4418 (note_mode_line_or_margin_highlight): Don't let help-echo from
4419 string override help-echo from image map.
4420
4421 2004-11-20 Luc Teirlinck <teirllm@auburn.edu>
4422
4423 * fns.c (Fyes_or_no_p): Call Fread_from_minibuffer with extra argument.
4424 * callint.c (Fcall_interactively): Ditto.
4425
4426 2004-11-20 Stefan Monnier <monnier@iro.umontreal.ca>
4427
4428 * minibuf.c (Fminibuffer_complete_and_exit):
4429 Fixup the case of the completed value, for case-indep completion.
4430
4431 2004-11-20 Richard M. Stallman <rms@gnu.org>
4432
4433 * lisp.h (Fread_from_minibuffer): Add arg in decl.
4434
4435 * minibuf.c (read_minibuf): New arg KEEP_ALL. Callers changed.
4436 (Fread_from_minibuffer): New arg KEEP_ALL. Callers changed.
4437
4438 * search.c (Vsearch_spaces_regexp):
4439 Rename from Vsearch_whitespace_regexp. All uses changed.
4440
4441 2004-11-20 Thien-Thi Nguyen <ttn@gnu.org>
4442
4443 * eval.c (init_eval_once): Increase `max_specpdl_size' to 650.
4444
4445 2004-11-19 Richard M. Stallman <rms@gnu.org>
4446
4447 * search.c (Vsearch_whitespace_regexp): New variable.
4448 (syms_of_search): Defvar it.
4449 (compile_pattern_1): Call re_set_whitespace_regexp with it.
4450 (search_buffer): No regexp is trivial if Vsearch_whitespace_regexp
4451 is non-nil.
4452 (struct regexp_cache): New element whitespace_regexp.
4453 (syms_of_search): Initialize whitespace_regexp elements.
4454 (compile_pattern): Compare whitespace_regexp elements.
4455 (compile_pattern_1): Set whitespace_regexp elements.
4456
4457 * regex.c (regex_compile): Substitute whitespace_regexp
4458 for spaces, if it is nonzero.
4459 (whitespace_regexp): New variable.
4460 (re_set_whitespace_regexp): New function.
4461
4462 2004-11-19 Kim F. Storm <storm@cua.dk>
4463
4464 * indent.c (Fvertical_motion): Fix last change.
4465
4466 2004-11-18 Kim F. Storm <storm@cua.dk>
4467
4468 * indent.c (Fvertical_motion): Undo 2004-11-16 change.
4469 Instead, move back again if reseating moves too far ahead.
4470
4471 2004-11-17 Luc Teirlinck <teirllm@auburn.edu>
4472
4473 * xdisp.c (message3): Call clear_message.
4474
4475 2004-11-17 Kim F. Storm <storm@cua.dk>
4476
4477 * xdisp.c (erase_phys_cursor): Adjust cursor row visible height.
4478
4479 2004-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4480
4481 * gtkutil.c (xg_get_file_name): Typo in HAVE_GTK_FILE_SELECTION_NEW.
4482
4483 * xmenu.c (x_menu_in_use): Remove.
4484 (x_menu_set_in_use): Also set popup_activated_flag.
4485
4486 * xfns.c (Fx_file_dialog): Call popup_activated instead of
4487 x_menu_in_use. Call x_menu_set_in_use in Motif version also.
4488
4489 * xterm.h (x_menu_in_use): Remove.
4490
4491 2004-11-16 Richard M. Stallman <rms@gnu.org>
4492
4493 * keymap.c (Fmap_keymap): New arg SORT-FIRST.
4494 Use map-keymap-internal to implement that.
4495
4496 * indent.c (Fvertical_motion): In batch mode, use vmotion directly.
4497
4498 2004-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
4499
4500 * xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's
4501 a window before using XWINDOW.
4502
4503 * window.c (make_window, Fselect_window, make_dummy_parent)
4504 (save_window_save):
4505 * frame.c (make_frame):
4506 * fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments.
4507
4508 * lisp.h (NILP): Use EQ rather than XFASTINT.
4509
4510 2004-11-16 Kim F. Storm <storm@cua.dk>
4511
4512 * fringe.c (Fdefine_fringe_bitmap): Always set 'h'. Simplify.
4513
4514 * indent.c (Fvertical_motion): Fix last change. Only reseat when
4515 moving backwards.
4516
4517 2004-11-16 Luc Teirlinck <teirllm@auburn.edu>
4518
4519 * dispextern.h: Extern reseat_at_previous_visible_line_start.
4520
4521 2004-11-16 Kenichi Handa <handa@m17n.org>
4522
4523 * xdisp.c (display_mode_element): Fix previous change (calculate
4524 end position of substring to display correctly).
4525
4526 2004-11-16 Kim F. Storm <storm@cua.dk>
4527
4528 * keyboard.c (Fposn_at_point): Remove extra */ after doc string.
4529 Reported by Andrew M. Scott.
4530
4531 2004-11-15 Kim F. Storm <storm@cua.dk>
4532
4533 * fns.c (Fsafe_plist_get): New defun.
4534 (syms_of_fns): Defsubr it.
4535
4536 * lisp.h (Fsafe_plist_get): Add EXFUN.
4537
4538 * xdisp.c (store_mode_line_string, produce_stretch_glyph):
4539 Use Fsafe_plist_get.
4540 (note_mode_line_or_margin_highlight, note_mouse_highlight):
4541 Fix image map element parsing. Use Fsafe_plist_get.
4542
4543 2004-11-15 Richard M. Stallman <rms@gnu.org>
4544
4545 * xdisp.c (get_next_display_element): Fix previous change.
4546
4547 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4548
4549 * window.c (shrink_windows): Handle special case of one window left
4550 when trying to shrink the final reminder. Grow windows if
4551 total_removed is less than total_shrink.
4552
4553 * xmenu.c (pop_down_menu): Remove global variable current_menu,
4554 extract pointer from arg with XSAVE_VALUE.
4555 (create_and_show_popup_menu, create_and_show_dialog, xmenu_show):
4556 Construct arg to record_unwind_protect with make_save_value.
4557
4558 2004-11-13 Richard M. Stallman <rms@gnu.org>
4559
4560 * xdisp.c (reseat_at_previous_visible_line_start): No longer static.
4561 (get_next_display_element): Fix previous change to apply only to \n.
4562
4563 * indent.c (Fvertical_motion): Scan to PT from start of line to
4564 make iterator consistent.
4565
4566 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
4567
4568 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4569
4570 * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
4571
4572 * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
4573 Record unwind with clean_up_file_dialog.
4574
4575 * xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event):
4576 Declare.
4577
4578 * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
4579
4580 2004-11-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4581
4582 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
4583 (xg_file_sel_destroy): Remove.
4584 (xg_file_response_cb, pop_down_file_dialog)
4585 (xg_get_file_name_from_chooser, xg_get_file_name_from_selector):
4586 New functions.
4587 (xg_get_file_with_chooser, xg_get_file_with_selection):
4588 Take new arg func, set it to xg_get_file_name_from_chooser/selector.
4589 Move common code to xg_get_file_name. Return widget created.
4590 (xg_get_file_name): Set name, transient for, modal and destroy
4591 with parent here. Connect response signal to xg_file_response_cb,
4592 connect delete-event to gtk_true. Record pop_down_file_dialog
4593 for unwind. Do event loop and call x_menu_wait_for_event in loop.
4594 (xg_create_widget): Make dialogs modal.
4595
4596 * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type
4597 Lisp_Object.
4598 (popup_get_selection): Move unwind protect ...
4599 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
4600 Move destroy of widget to pop_down_menu.
4601 (popup_widget_loop): Move unwind protect ...
4602 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
4603 Move destroy of widget to pop_down_menu.
4604 (pop_down_menu): BLOCK_INPUT and destroy widget/window.
4605 (xmenu_show): Record unwind pop_down_menu. Move XMenuDestroy,
4606 x_mouse_leave and grabbed = 0 to pop_down_menu.
4607
4608 2004-11-13 Kim F. Storm <storm@cua.dk>
4609
4610 * xdisp.c (make_cursor_line_fully_visible_p): New variable.
4611 (syms_of_xdisp): DEFVAR_BOOL it.
4612 (make_cursor_line_fully_visible, try_cursor_movement)
4613 (try_window_id): Use it.
4614
4615 2004-11-12 Kim F. Storm <storm@cua.dk>
4616
4617 * dispextern.h (struct glyph_row): New member extra_line_spacing.
4618 (struct it): New member max_extra_line_spacing.
4619 (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
4620 (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
4621 (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
4622 part of last line is only extra line spacing (so the text on the
4623 line is fully visible). Use helper macros.
4624 Add W arg (to use them). All callers changed.
4625 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
4626 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
4627
4628 * window.c (window_scroll_pixel_based, Frecenter):
4629 Use move_it_vertically_backward directly.
4630 (Frecenter): Fix calculation of new start pos for negative arg.
4631 Before, the new start pos was sometimes chosen too far back, so
4632 the last line became only partially visible, and thus would be
4633 either only semi-visible or automatically scrolled to the middle
4634 of the window by redisplay.
4635
4636 * xdisp.c (init_iterator): Clear it.max_extra_line_spacing.
4637 (move_it_vertically_backward): Don't recure to move further back.
4638 (move_it_vertically): Remove superfluous condition.
4639 (move_it_by_lines): Clear last_height when moved 0 lines.
4640 (resize_mini_window): Use it.max_extra_line_spacing.
4641 (display_tool_bar_line): Clear row->extra_line_spacing.
4642 (try_scrolling): Use move_it_vertically_backward directly.
4643 (redisplay_window): Likewise.
4644 (compute_line_metrics): Set row->extra_line_spacing.
4645 (display_line, display_string): Likewise.
4646 (x_produce_glyphs): Update it->max_extra_line_spacing.
4647
4648 * xmenu.c (pop_down_menu): Return nil.
4649
4650 2004-11-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4651
4652 * xmenu.c (x_menu_wait_for_event): New function.
4653 (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
4654 to handle timers.
4655 (popup_widget_loop): Add argument do_timers.
4656 (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
4657 do_timers to popup_widget_loop.
4658 (xmenu_show): Call XMenuActivateSetWaitFunction so that
4659 x_menu_wait_for_event is called by XMenuActivate.
4660 (create_and_show_popup_menu): Pass 1 for do_timers to
4661 popup_get_selection.
4662 (pop_down_menu): New function.
4663 (popup_get_selection, popup_widget_loop): Unwind protect to
4664 pop_down_menu.
4665 (popup_widget_loop): Add argument widget.
4666 (create_and_show_popup_menu, create_and_show_dialog): Pass new
4667 argument widget to popup_widget_loop.
4668
4669 2004-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
4670
4671 * keymap.c (Fkeymap_prompt): Accept symbol keymaps.
4672
4673 2004-11-09 Kim F. Storm <storm@cua.dk>
4674
4675 * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
4676 Fix various comments referring to XEvents instead of input events.
4677 (x_queue_event): Fix format strings.
4678 (x_stop_queuing_selection_requests): Likewise.
4679
4680 * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
4681 (pint2hrstr): Add extra braces to silence compiler.
4682
4683 * print.c (print_object): Fix format string.
4684
4685 * lread.c (read1): Fix next_char matching.
4686
4687 * lisp.h (Fdelete): Add EXFUN.
4688 (replace_range_2): Add prototype.
4689
4690 * keyboard.c (read_avail_input): Remove unused variable 'discard'.
4691
4692 * intervals.h (NULL_INTERVAL_P): Add separate version when
4693 ENABLE_CHECKING is not defined to silence compiler.
4694 (compare_string_intervals): Add prototype.
4695
4696 * fringe.c (destroy_fringe_bitmap): Fix return type.
4697 (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
4698
4699 * emacs.c (Fdump_emacs): Fix format string.
4700
4701 * doc.c: Include <ctype.h>.
4702 (Fsubstitute_command_keys): Remove unused variable 'firstkey'.
4703
4704 * data.c (store_symval_forwarding): Remove unused variables.
4705
4706 * callint.c (Fcall_interactively): Remove unused variable 'funcar'.
4707
4708 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4709
4710 * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
4711 to ${OLDXMENU}.
4712
4713 2004-11-09 Kim F. Storm <storm@cua.dk>
4714
4715 * process.c (Fmake_network_process): Remove kludge for interrupted
4716 connects on BSD. If connect is interrupted, just close socket and
4717 start over rather than sleeping and retry with same socket.
4718
4719 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4720
4721 * .cvsignore: Add buildobj.lst.
4722
4723 * doc.c: New variable Vbuild_files.
4724 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
4725 file names from buildobj.lst. Only attach docstrings from files
4726 that are in Vbuild_files.
4727 (syms_of_doc): Defvar Vbuild_files.
4728
4729 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
4730 and w32*.o.
4731 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
4732 (mostlyclean): Rm buildobj.lst
4733
4734 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
4735 is linked.
4736
4737 2004-11-09 Kim F. Storm <storm@cua.dk>
4738
4739 * fringe.c (update_window_fringes): Update fringe bitmaps if
4740 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
4741 also update previous row to get rid of misc. artifacts.
4742
4743 2004-11-08 Kim F. Storm <storm@cua.dk>
4744
4745 * xdisp.c (fast_find_position): Fix start pos if header line present.
4746 (note_mouse_highlight): Clear mouse face if we move out of text area.
4747
4748 2004-11-08 Eli Zaretskii <eliz@gnu.org>
4749
4750 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
4751 Don't include <sys/time.h> explicitly.
4752 Include <stdio.h> unconditionally, not just on MacOS.
4753
4754 2004-11-08 Kenichi Handa <handa@m17n.org>
4755
4756 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
4757 don't pay attention to '\' before '*'.
4758 (fontset_pattern_regexp): Change the meaning of the second arg.
4759 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
4760 (check_fontset_name): Try NAME as literal at first, and if it
4761 failes, try NAME as pattern.
4762
4763 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4764
4765 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
4766
4767 2004-11-07 Andreas Schwab <schwab@suse.de>
4768
4769 * lisp.h (Fmsdos_downcase_filename): Declare.
4770 * dired.c (Fmsdos_downcase_filename): Don't declare here.
4771 * fileio.c: Likewise.
4772
4773 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4774
4775 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
4776 comparisons with integers instead of Lisp_Object address.
4777 (Fmsdos_set_keyboard): Declare argument allkeys.
4778
4779 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
4780
4781 * dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid
4782 int/Lisp_Object mixup.
4783
4784 * fileio.c: Ditto.
4785
4786 2004-11-06 Steven Tamm <steventamm@mac.com>
4787
4788 * editfns.c: Need to include sys/time.h before resource.h on darwin.
4789
4790 2004-11-06 Richard M. Stallman <rms@gnu.org>
4791
4792 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
4793
4794 * xfaces.c (merge_named_face): GCPRO the face_name in the
4795 named_merge_point struct that we make.
4796 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
4797
4798 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
4799 before deciding whether to inactivate mark.
4800
4801 2004-11-06 Lars Brinkhoff <lars@nocrew.org>
4802
4803 * config.in: Regenerate (add HAVE_GETRUSAGE).
4804 * editfns.c (Fget_internal_run_time): New function.
4805 (syms_of_data): Defsubr it.
4806 * fns.c (sxhash): As far as possible, merge calculation of
4807 hash code for symbols and strings.
4808
4809 2004-11-06 Eli Zaretskii <eliz@gnu.org>
4810
4811 * frame.c (syms_of_frame): Fix the example in the doc string.
4812
4813 2004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4814
4815 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
4816
4817 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
4818 (create_and_show_dialog): Revert change from 2004-10-31.
4819
4820 2004-11-05 Luc Teirlinck <teirllm@auburn.edu>
4821
4822 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
4823
4824 2004-11-05 Kim F. Storm <storm@cua.dk>
4825
4826 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
4827
4828 * fileio.c (Ffile_modes): Doc fix.
4829 (auto_save_1): Check for Ffile_modes nil value.
4830
4831 2004-11-05 Kim F. Storm <storm@cua.dk>
4832
4833 * xselect.c (struct selection_event_queue, selection_queue)
4834 (x_queue_selection_requests, x_queue_event)
4835 (x_start_queuing_selection_requests)
4836 (x_stop_queuing_selection_requests): Add new queue for selection
4837 input events to replace previous XEvent queue in xterm.c.
4838 (queue_selection_requests_unwind): Adapt to new queue.
4839 (x_reply_selection_request): Adapt to new queue.
4840 Unexpect wait_object in case of x errors (memory leak).
4841 (x_handle_selection_request, x_handle_selection_clear): Make static.
4842 (x_handle_selection_event): New function. May queue selection events.
4843 (wait_for_property_change_unwind): Use save_value instead of cons.
4844 Clear property_change_reply_object.
4845 (wait_for_property_change): Abort if already waiting.
4846 Use save_value instead of cons for unwind data.
4847 (x_handle_property_notify): Skip events already arrived, but don't
4848 free them, as "arrived" field is checked by wait_for_property_change,
4849 and it will be freed by unwind or explicit unexpect_property_change.
4850 (x_get_foreign_selection): Add to new queue.
4851 (receive_incremental_selection): Don't unexpect wait_object when done
4852 as it has already been freed by previous wait_for_property_change.
4853
4854 * xterm.h (x_start_queuing_selection_requests)
4855 (x_stop_queuing_selection_requests, x_handle_selection_request)
4856 (x_handle_selection_clear): Remove prototypes.
4857 (x_handle_selection_event): Add prototype.
4858
4859 * xterm.c (handle_one_xevent): Don't queue X selection events
4860 here, it may be too late if we start queuing after we have already
4861 stored some selection events into the kbd buffer.
4862 (struct selection_event_queue, queue, x_queue_selection_requests)
4863 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
4864 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
4865 (x_catch_errors_unwind): Block input around final XSync.
4866
4867 * keyboard.h (kbd_buffer_unget_event): Add prototype.
4868
4869 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
4870 (kbd_buffer_unget_event): New function.
4871 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
4872 and use x_handle_selection_event.
4873 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
4874
4875 2004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4876
4877 * xselect.c (TRACE3): New debug macro.
4878 (x_reply_selection_request): Use it.
4879 (receive_incremental_selection): In call to TRACE0, the name of
4880 a symbol is in xname.
4881
4882 2004-11-05 Kim F. Storm <storm@cua.dk>
4883
4884 * fontset.c (fontset_pattern_regexp): Use unsigned char.
4885
4886 2004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4887
4888 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
4889
4890 * gtkutil.h (use_old_gtk_file_dialog): Declare.
4891
4892 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
4893 (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
4894 * xfns.c (syms_of_xfns): ... to here.
4895
4896 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
4897 it doesn't start with /.
4898
4899 2004-11-04 Kenichi Handa <handa@m17n.org>
4900
4901 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
4902 treat it as a literal character.
4903
4904 2004-11-03 Kim F. Storm <storm@cua.dk>
4905
4906 * .gdbinit (ppt): New function.
4907
4908 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4909
4910 * xterm.c (x_window_to_scroll_bar): Only call
4911 xg_get_scroll_id_for_window if toolkit scroll bars are used.
4912
4913 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
4914 of save.
4915
4916 2004-11-02 Andreas Schwab <schwab@suse.de>
4917
4918 * window.c (Fscroll_right): Fix last change.
4919
4920 2004-11-02 Kim F. Storm <storm@cua.dk>
4921
4922 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
4923
4924 2004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4925
4926 * callproc.c (Fcall_process): Block input around vfork.
4927
4928 2004-11-02 Kim F. Storm <storm@cua.dk>
4929
4930 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
4931 (syms_of_eval): Defsubr it.
4932
4933 2004-11-02 Richard M. Stallman <rms@gnu.org>
4934
4935 * insdel.c (replace_range_2): New function.
4936
4937 * casefiddle.c (casify_region): Handle changes in byte-length
4938 using replace_range_2.
4939
4940 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
4941
4942 * xdisp.c (back_to_previous_visible_line_start):
4943 Subtract 1 from pos when checking previous newline for invisibility.
4944
4945 * window.c (window_scroll_pixel_based): Update preserve_y
4946 for header line if any.
4947 (Fscroll_left, Fscroll_right): Don't call interactive_p;
4948 use a new second argument instead.
4949
4950 * eval.c (Fcall_interactive_p): New function.
4951 (interactive_p): Don't test INTERACTIVE here.
4952 (Finteractive_p): Doc fix.
4953
4954 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
4955
4956 2004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
4957
4958 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
4959 comparing font names.
4960
4961 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4962
4963 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
4964 Fx_file_dialog if only directories should be read.
4965
4966 * lisp.h: Fx_file_dialog takes 5 parameters.
4967
4968 * xfns.c (Fx_file_dialog): Both Motif and GTK version:
4969 Add parameter only_dir_p.
4970 In Motif version, don't put DEFAULT_FILENAME in filter part of the
4971 dialog, just text field part. Do not add DEFAULT_FILENAME
4972 to list of files if it isn't there.
4973 In GTK version, pass only_dir_p parameter to xg_get_file_name.
4974
4975 * macfns.c (Fx_file_dialog): Add parameter only_dir_p.
4976 Check only_dir_p instead of comparing prompt to "Dired". When using
4977 a save dialog, add option kNavDontConfirmReplacement, change title
4978 to "Enter name", change text for save button to "Ok".
4979
4980 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
4981 Check only_dir_p instead of comparing prompt to "Dired".
4982
4983 * gtkutil.c (xg_get_file_with_chooser)
4984 (xg_get_file_with_selection): New functions, only defined ifdef
4985 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
4986 respectively.
4987 (xg_get_file_name): Add parameter only_dir_p.
4988 Call xg_get_file_with_chooser or xg_get_file_with_selection
4989 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
4990 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
4991
4992 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
4993
4994 * config.in: Rebuild (added HAVE_GTK_FILE_*).
4995
4996 2004-11-01 Kim F. Storm <storm@cua.dk>
4997
4998 * process.c (connect_wait_mask, num_pending_connects):
4999 Only declare and use them if NON_BLOCKING_CONNECT is defined.
5000 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
5001 (IF_NON_BLOCKING_CONNECT): New helper macro.
5002 (wait_reading_process_output): Only declare and use local vars
5003 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
5004
5005 2004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
5006
5007 * w32term.c (x_scroll_run): Delete region objects after use.
5008
5009 2004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5010
5011 * xmenu.c: Add prototypes for forward function declarations.
5012 (popup_get_selection): Remove parameter do_timers, remove call to
5013 timer_check.
5014 (create_and_show_popup_menu, create_and_show_dialog):
5015 Remove parameter do_timers from call to popup_get_selection.
5016
5017 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
5018 tool_bar_items and assign the result to f->tool_bar_items if
5019 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
5020 tool_bar_items to assignment of result.
5021
5022 * atimer.c (alarm_signal_handler): Do not call set_alarm if
5023 pending_atmers is non-zero.
5024
5025 2004-10-31 Kim F. Storm <storm@cua.dk>
5026
5027 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
5028
5029 2004-10-28 Will <will@glozer.net>
5030
5031 * macterm.c: Allow user to assign key modifiers to the Mac Option
5032 key via a 'mac-option-modifier' variable.
5033
5034 2004-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
5035
5036 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
5037 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
5038 (x_handle_selection_request, x_handle_selection_clear)
5039 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
5040
5041 2004-10-28 Richard M. Stallman <rms@gnu.org>
5042
5043 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
5044
5045 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
5046
5047 2004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
5048
5049 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
5050 comment-starter over a 1-char one.
5051
5052 2004-10-27 Richard M. Stallman <rms@gnu.org>
5053
5054 * xdisp.c (get_next_display_element): In mode lines,
5055 treat newline and tab like other control characters.
5056
5057 * editfns.c (Fmessage): Doc fix.
5058
5059 * indent.c (vmotion): When moving up, check the newline before.
5060 Make prevline an int, not a Lisp_Object.
5061
5062 2004-10-27 Kim F. Storm <storm@cua.dk>
5063
5064 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
5065 Only allocate info and discarded tables once.
5066
5067 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
5068 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
5069 (SAFE_FREE): Test it to determine if we need to unwind to free.
5070 Remove size arg. All users changed.
5071 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
5072
5073 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5074
5075 * gtkutil.c: Put empty line between comment and function body.
5076 (xg_destroy_widgets): Rename from remove_from_container.
5077 Just destroy all widgets in list. Argument wcont removed.
5078 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
5079 instead of remove_from_container.
5080 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
5081 (free_frame_tool_bar): Add comment.
5082
5083 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
5084 is not NULL before strcmp.
5085
5086 2004-10-26 Kim F. Storm <storm@cua.dk>
5087
5088 * callint.c (Fcall_interactively): Add 'U' code to get the
5089 up-event discarded by a previous 'k' or 'K' argument.
5090
5091 2004-10-26 David Kastrup <dak@gnu.org>
5092
5093 * buffer.c (syms_of_buffer): Fix a few typos.
5094
5095 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5096
5097 * xsmfns.c: Put empty line between comment and function body.
5098 Use two spaces before comment end.
5099
5100 2004-10-25 Kenichi Handa <handa@m17n.org>
5101
5102 * fontset.c (fontset_pattern_regexp): Optimize for the case that
5103 PATTERN is full XLFD.
5104
5105 2004-10-24 Kenichi Handa <handa@m17n.org>
5106
5107 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
5108
5109 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
5110 (regex_compile): Return REG_ERANGEX if appropriate.
5111
5112 2004-10-22 Kenichi Handa <handa@m17n.org>
5113
5114 * editfns.c (Ftranslate_region_internal): New function.
5115 (syms_of_editfns): Defsubr it.
5116
5117 2004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5118
5119 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
5120
5121 2004-10-21 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
5122
5123 * xterm.h (x_output): New member `xic_base_fontname'.
5124 (FRAME_XIC_BASE_FONTNAME): New macro.
5125 (xic_free_xfontset): Declare.
5126
5127 * xfns.c (xic_create_xfontset): Share fontsets between frames
5128 based on base_fontname.
5129 (xic_free_xfontset): New function.
5130 (free_frame_xic): Use it.
5131 (xic_set_xfontset): Ditto.
5132
5133 * xterm.c (xim_destroy_callback): Ditto.
5134
5135
5136 2004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
5137
5138 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
5139
5140 2004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5141
5142 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
5143 XSync.
5144
5145 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
5146 New variables and constant.
5147 (main): Calculate heap_bss_diff. If we are dumping and the
5148 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
5149 and exec ourself again.
5150 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
5151 print a warning.
5152
5153 * lastfile.c: Make my_endbss and my_endbss_static available on all
5154 platforms.
5155
5156 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
5157 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
5158
5159 2004-10-19 Luc Teirlinck <teirllm@auburn.edu>
5160
5161 * data.c (Flocal_variable_if_set_p): Doc fix.
5162
5163 2004-10-19 Jason Rumney <jasonr@gnu.org>
5164
5165 * w32.c (init_environment): Set emacs_dir correctly when running
5166 emacs from the build directory.
5167
5168 2004-10-19 Richard M. Stallman <rms@gnu.org>
5169
5170 * editfns.c (Fdelete_and_extract_region):
5171 If region is empty, return null string.
5172
5173 2004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5174
5175 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
5176 and canon_width.
5177 (xg_frame_cleared): Remove.
5178
5179 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
5180 (xg_find_top_left_in_fixed): Remove.
5181 (xg_create_scroll_bar): Put an event box widget between
5182 the scroll bar widget and the edit widget.
5183 (xg_show_scroll_bar): Show the parent widget (the event box).
5184 (xg_remove_scroll_bar): Destroy parent (the event box) also.
5185 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
5186 Move the parent (the event box) widget inside the fixed widget.
5187 Move window clear to xterm.c.
5188
5189 * gtkutil.h (xg_frame_cleared): Remove.
5190
5191 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
5192 (x_scroll_bar_create, XTset_vertical_scroll_bar):
5193 Remove arguments left and width to xg_update_scrollbar_pos.
5194 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
5195
5196 2004-10-19 Kenichi Handa <handa@m17n.org>
5197
5198 * xdisp.c (display_mode_element): Fix display of wide chars.
5199
5200 2004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5201
5202 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
5203 gdk_window_clear and move gdk_window_process_all_updates after
5204 clear so events are sent to the X server in correct order.
5205
5206 2004-10-18 Kenichi Handa <handa@m17n.org>
5207
5208 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
5209 comparing font names.
5210 (fs_query_fontset): Use fast_string_match for comparing fontset names.
5211 (list_fontsets): Likewise.
5212
5213 * search.c (fast_string_match_ignore_case): New function.
5214
5215 * lisp.h (fast_string_match_ignore_case): Extern it.
5216
5217 2004-10-17 Kim F. Storm <storm@cua.dk>
5218
5219 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
5220 than bitmap if there is not left fringe.
5221 (get_overlay_arrow_glyph_row): Also used on windows system.
5222 (display_line): Display overlay string if no left fringe.
5223
5224 2004-10-16 Jason Rumney <jasonr@gnu.org>
5225
5226 * w32fns.c (w32_font_match): Encode font name being matched.
5227
5228 2004-10-16 Richard M. Stallman <rms@gnu.org>
5229
5230 * window.c (Fspecial_display_p): Doc fix.
5231
5232 2004-10-15 Stefan Monnier <monnier@iro.umontreal.ca>
5233
5234 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
5235 Don't ignore menus, because where-is-internal already does it for us.
5236
5237 2004-10-15 Kim F. Storm <storm@cua.dk>
5238
5239 * xdisp.c (redisplay_window): Only update fringes and vertical
5240 border on window frames.
5241
5242 2004-10-14 Andreas Schwab <schwab@suse.de>
5243
5244 * m/ia64.h (DATA_SEG_BITS): Don't define.
5245
5246 2004-10-14 Kim F. Storm <storm@cua.dk>
5247
5248 * xterm.h: Include Xutil.h after keysym.h to work around bug
5249 in some X versions.
5250
5251 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
5252
5253 * fns.c (map_char_table): Add missing gcpros.
5254
5255 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
5256
5257 * keymap.c (get_keymap): An autoload form is not a keymap.
5258
5259 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
5260
5261 2004-10-13 Kim F. Storm <storm@cua.dk>
5262
5263 * callproc.c (Fcall_process): Simplify handling of display arg.
5264 Resume `display_on_the_fly' once a coding system is determined.
5265
5266 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
5267
5268 2004-10-12 Kim F. Storm <storm@cua.dk>
5269
5270 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
5271 caller, such as call-process, is not going to poll for input.
5272 (calc_line_height_property): Handle case where it->object is nil.
5273
5274 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
5275
5276 2004-10-12 Kenichi Handa <handa@m17n.org>
5277
5278 * xdisp.c (get_next_display_element):
5279 If unibyte_display_via_language_environment is zero, display 8-bit
5280 chars in octal in unibyte buffer.
5281
5282 2004-10-12 Kim F. Storm <storm@cua.dk>
5283
5284 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
5285 are no ordinary bindings.
5286
5287 2004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5288
5289 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
5290
5291 2004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5292
5293 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
5294 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
5295 (make_mac_frame): Add BLOCK_INPUT around the making of a
5296 terminal frame.
5297 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
5298 * macgui.h (mktime): Use emacs_mktime.
5299 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
5300 Make a cancel file-open dialog be like C-g.
5301 * mac.c (mktime): Use emacs_mktime.
5302 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
5303 (Fmac_paste_function): Add better error handling for carbon cut/paste.
5304
5305 2004-10-10 Kim F. Storm <storm@cua.dk>
5306
5307 * keyboard.c (timer_resume_idle): New function to resume idle
5308 timer without resetting timers on the idle list.
5309 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
5310 (timer_start_idle, timer_stop_idle): Declare static.
5311 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
5312
5313 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
5314
5315 2004-10-08 Steven Tamm <steventamm@mac.com>
5316
5317 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
5318 * macterm.c (mac_check_for_quit_char): Remove warning for using
5319 NULL where 0 should be used.
5320 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
5321 objc/malloc.h
5322 * mac.c: Include time.h for Tiger compatibility.
5323
5324 2004-10-07 Kim F. Storm <storm@cua.dk>
5325
5326 * xdisp.c (redisplay_window): Fix flicker on vertical line between
5327 windows. Update vertical line after drawing window fringes, but
5328 only if actually drawing any bitmaps--or there is no fringe.
5329
5330 * xterm.c (x_update_window_end): Likewise.
5331 * macterm.c (x_update_window_end): Likewise.
5332 * w32term.c (x_update_window_end): Likewise.
5333
5334 * fringe.c (draw_window_fringes): Return value now indicates if
5335 any fringe bitmaps were redrawn (or there are no fringes).
5336
5337 * dispextern.h (draw_window_fringes): Update prototype.
5338
5339 2004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5340
5341 * macfns.c (mac_get_window_bounds): Add extern.
5342 (x_real_positions): Use mac_get_window_bounds.
5343
5344 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
5345 xmenu.c (YAILOM).
5346
5347 * macterm.c [!MAC_OSX]: Include Windows.h.
5348 (front_emacs_window): Rename from mac_front_window. All uses
5349 changed. Return the frontmost non-tooltip emacs window.
5350 (mac_get_window_bounds): New function.
5351 (x_calc_absolute_position): Use the difference of width and height
5352 between the inner and outer window.
5353 (x_set_offset): Specify window position by the coordinae of the
5354 outer window. Adjust the position if the title bar is completely
5355 outside the screen.
5356 (app_is_suspended, app_sleep_time): Remove unused variables.
5357 (do_app_resume, do_app_suspend): Remove their contents because
5358 window-activate/deactivate events will do the job.
5359 (do_zoom_window): Remove unused variables. Make compliant to the
5360 standard way of zooming. Set f->left_pos and f->top_pos.
5361 (XTread_socket): Don't use argument `expected'. Don't use
5362 FrontWindow to determine the clicked window. Exclude unprocessed
5363 mouseUp cases in the early stage. Add parentheses to fix operator
5364 precedence.
5365 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
5366
5367 2004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
5368
5369 * config.in: Regenerate.
5370
5371 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
5372 HAVE_EXECSHIELD.
5373
5374 2004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5375
5376 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
5377 a row if Alt or Meta has been found for that row. Also stop scanning
5378 for Keysyms for that row.
5379
5380 2004-10-04 Kim F. Storm <storm@cua.dk>
5381
5382 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
5383 to list. Include overlay arrow bitmap in return value.
5384
5385 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
5386 bars with fractional column width. If scroll bar separates two
5387 windows, move it towards the window it belongs to. Only update
5388 the padding area below the scroll bar widget when necessary,
5389 i.e. when scroll bar widget is created, moved, or resized.
5390
5391 * xdisp.c (define_frame_cursor1): Do not change frame cursor
5392 while tracking/dragging mouse.
5393 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
5394
5395 * window.c (coordinates_in_window): Relax check for cursor
5396 on vertial border between mode lines.
5397 (Fset_window_fringes): Do not allow negative widths.
5398 (Fset_window_scroll_bars): Likewise.
5399
5400 * .gdbinit (pp): Shorthand for p ARG + pr.
5401 (ff): New command: flush frame updates (X only).
5402
5403 2004-10-03 Michael Albinus <michael.albinus@gmx.de>
5404
5405 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
5406
5407 2004-09-30 Kenichi Handa <handa@m17n.org>
5408
5409 * process.c (send_process): Free composition data.
5410
5411 * fileio.c (Finsert_file_contents): Free composition data.
5412
5413 * coding.c (code_convert_region): Don't skip ASCIIs if there are
5414 compositions to encode.
5415 (encode_coding_string): Likewise. Free composition data.
5416
5417 2004-09-30 Florian Weimer <fw@deneb.enyo.de>
5418
5419 * coding.c (code_convert_region): Free composition data.
5420
5421 2004-09-29 Kim F. Storm <storm@cua.dk>
5422
5423 * fringe.c: Remove limit on number of bitmaps.
5424 (fringe_bitmaps, fringe_faces): Change to pointers.
5425 (max_fringe_bitmaps): New var.
5426 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
5427 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
5428
5429 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
5430 (struct glyph_row): Reorder fringe_bitmap related fields.
5431 (struct it): Likewise.
5432
5433 * w32term.c (fringe_bmp): Change to pointer.
5434 (max_fringe_bmp): New var.
5435 (w32_define_fringe_bitmap): Expand fringe_bmp.
5436 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
5437 (w32_destroy_fringe_bitmap): Likewise.
5438
5439 2004-09-29 Kim F. Storm <storm@cua.dk>
5440
5441 * fringe.c: Simplify last change.
5442 (lookup_fringe_bitmap): New function.
5443 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
5444 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
5445 Keep standard bitmaps in Vfringe_bitmaps.
5446 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
5447 (Fset_fringe_bitmap_face): Likewise.
5448
5449 * dispextern.h (lookup_fringe_bitmap): Add prototype.
5450 (valid_fringe_bitmap_p): Remove prototype.
5451
5452 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
5453
5454 2004-09-29 Kim F. Storm <storm@cua.dk>
5455
5456 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
5457 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
5458
5459 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
5460
5461 * fringe.c (Vfringe_bitmaps): New variable.
5462 (syms_of_fringe): DEFVAR_LISP it.
5463 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
5464 Change arg to Lisp_Object and fail if not an integer.
5465 (get_fringe_bitmap_name, resolve_fringe_bitmap)
5466 (destroy_fringe_bitmap): New functions.
5467 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
5468 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
5469 clear its fringe property.
5470 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
5471 Fdestroy_fringe_bitmap.
5472 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
5473 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
5474 and set fringe property. Signal error if no free slots.
5475 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
5476 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
5477
5478 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
5479 symbols with a fringe property.
5480
5481 2004-09-27 Kim F. Storm <storm@cua.dk>
5482
5483 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
5484 Doc fix. Format may now be a symbol or alist, not a cons.
5485
5486 * fringe.c (update_window_fringes): Handle new formats of
5487 indicate-buffer-boundaries (symbol or alist). No longer
5488 allow a simple cons.
5489 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
5490
5491 2004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5492
5493 * config.in: Rebuild.
5494
5495 2004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5496
5497 * config.in: Rebuild.
5498
5499 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
5500
5501 2004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
5502
5503 * xterm.c (x_term_init): Work around a bug in some X servers.
5504
5505 2004-09-18 Richard M. Stallman <rms@gnu.org>
5506
5507 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
5508
5509 * xdisp.c (try_window_reusing_current_matrix):
5510 Handle the case where we reach the old displayed text,
5511 out of sync with the old line boundary.
5512
5513 2004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
5514
5515 * fileio.c (Finsert_file_contents): Fix case of replacement in a
5516 narrowed buffer.
5517
5518 2004-09-14 Kim F. Storm <storm@cua.dk>
5519
5520 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
5521
5522 * xfaces.c (Qface_no_inherit): New var.
5523 (syms_of_xfaces): Intern and staticpro it.
5524 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
5525 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
5526 Don't increment face_change_count when face has non-nil
5527 face-no-inherit property.
5528
5529 2004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
5530
5531 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
5532 (Fbyte_code): Remove dead code after `wrong_type_argument'.
5533
5534 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
5535 before doing the mark_stack_check_gcpros since they're not on the stack.
5536
5537 2004-09-12 Kim F. Storm <storm@cua.dk>
5538
5539 * editfns.c (Fformat): Handle format strings with multiple text
5540 properties. Reverse text property list from the format string,
5541 so the positions are in increasing order.
5542
5543 2004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5544
5545 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
5546 x_uncatch_errors so that possible protocol errors are delivered.
5547
5548 2004-09-10 Eli Zaretskii <eliz@gnu.org>
5549
5550 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
5551 blockinput.h.
5552 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
5553 charset.h, and coding.h
5554 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
5555 (term.o): Depend on window.h and keymap.h.
5556 (abbrev.o): Depend on syntax.h.
5557 (callint.o): Depend on keymap.h.
5558 (casefiddle.o): Depend on charset.h and keymap.h.
5559 (category.o): Depend on keymap.h.
5560 (coding.o): Depend on dispextern.h.
5561 (cmds.o): Depend on keyboard.h and keymap.h.
5562 (dispnew.o): Depend on indent.h and intervals.h.
5563 (doc.o): Depend on keymap.h.
5564 (editfns.o): Depend on frame.h.
5565 (emacs.o): Depend on dispextern.h.
5566 (fileio.o): Don't depend on ccl.h.
5567 (filelock.o): Depend on charset.h and coding.h.
5568 (frame.o): Depend on w32term.h and macterm.h.
5569 (insdel.o): Depend on region-cache.h.
5570 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
5571 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
5572 (search.o): Depend on $(INTERVALS_SRC).
5573 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
5574 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
5575 xterm.h, w32term.h, and macterm.h.
5576 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
5577 w32term.h, and macterm.h.
5578 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
5579 region-cache.h, xterm.h, w32term.h, and macterm.h.
5580 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
5581 (data.o): Depend on frame.h.
5582 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
5583 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
5584 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
5585 (intervals.o): Depend on keymap.h.
5586
5587 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
5588 Add debugging print-out to termscript.
5589
5590 2004-09-09 Richard M. Stallman <rms@gnu.org>
5591
5592 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
5593
5594 2004-09-08 Richard M. Stallman <rms@gnu.org>
5595
5596 * window.c (Fset_window_buffer): Doc fix.
5597
5598 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
5599
5600 2004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
5601
5602 * minibuf.c (history_delete_duplicates): New variable.
5603 (read_minibuf): Use it.
5604 (syms_of_minibuf): Create the corresponding lisp variable.
5605
5606 2004-09-08 Kim F. Storm <storm@cua.dk>
5607
5608 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
5609 overlay just before point.
5610
5611 2004-09-07 Luc Teirlinck <teirllm@auburn.edu>
5612
5613 * buffer.h (struct buffer): Add auto_save_file_format field.
5614 * buffer.c (reset_buffer, init_buffer_once):
5615 Handle auto_save_file_format field.
5616 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
5617 `buffer-auto-save-file-format'.
5618 * fileio.c: Delete declaration for removed Vauto_save_file_format.
5619 (build_annotations): Adapt to replacement of
5620 `auto-save-file-format' with the new buffer-local variable
5621 `buffer-auto-save-file-format'.
5622 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
5623
5624 2004-09-07 Jason Rumney <jasonr@gnu.org>
5625
5626 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
5627
5628 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
5629 Handle Unicode menu titles.
5630
5631 2004-09-07 Kim F. Storm <storm@cua.dk>
5632
5633 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
5634 property from text property or overlay strings at point.
5635
5636 2004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
5637
5638 * xmenu.c (update_submenu_strings): YAILOM.
5639 (set_frame_menubar): Make sure last_i is initialized.
5640
5641 2004-09-03 Jason Rumney <jasonr@gnu.org>
5642
5643 * w32menu.c (_widget_value): Add lname and lkey.
5644 (digest_single_submenu): Set lname and lkey in widget_value
5645 instead of name and key.
5646 (update_submenu_strings): New function.
5647 (set_frame_menubar): Remove call to inhibit_garbage_collection,
5648 call update_submenu_strings.
5649
5650 * w32menu.c (globals_of_w32menu): Check for Unicode API.
5651 (digest_single_submenu, w32_menu_show): Encode menu strings as
5652 UTF-8 if Unicode API is available.
5653 (utf8to16): New function.
5654 (add_menu_item): Use it when calling Unicode API.
5655
5656 2004-09-03 Kim F. Storm <storm@cua.dk>
5657
5658 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
5659 in overlay or text-property strings; set cursor on corresponding
5660 glyph rather than at end of the string.
5661
5662 2004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5663
5664 * macfns.c (x_real_positions): Save the current window port and
5665 set a new one before obtaining the global coordinate.
5666 Use FRAME_MAC_WINDOW.
5667 (x_set_name, x_set_title): Encode title to UTF8.
5668 Use SetWindowTitleWithCFString.
5669 (Fx_server_version): Get correct OS version.
5670
5671 * macmenu.c (add_menu_item): Remove unused variable `i'.
5672 Don't let separator items destroy refence constants of other menu items.
5673
5674 * macterm.c (x_update_end): Move SetPortWindowPort to inside
5675 BLOCK_INPUT.
5676 (x_set_offset): Use FRAME_MAC_WINDOW.
5677
5678 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
5679 nontext_cursor if it is on a scroll bar.
5680
5681 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
5682 Carbon support.
5683 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
5684 Use LIBS_CARBON.
5685
5686 2004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5687
5688 * xfns.c (x_set_name_internal): New function. Check if we shall call
5689 xfree before ENCODE_UTF_8.
5690 (x_set_name, x_set_title): Call x_set_name_internal.
5691
5692 2004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
5693
5694 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
5695 reload it.
5696
5697 2004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5698
5699 * macmenu.c (_widget_value): Add lname and lkey.
5700 (single_submenu): Set lname and lkey in widget_value
5701 instead of name and key.
5702 (update_submenu_strings): New function.
5703 (set_frame_menubar): Remove call to inhibit_garbage_collection,
5704 call update_submenu_strings.
5705
5706 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
5707 instead of name and key.
5708 (update_submenu_strings): New function.
5709 (set_frame_menubar): Remove call to inhibit_garbage_collection,
5710 call update_submenu_strings.
5711
5712 * gtkutil.h (_widget_value): Added lname and lkey.
5713
5714 2004-08-30 Steven Tamm <steventamm@mac.com>
5715
5716 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
5717 by using different names for inner loop variables.
5718
5719 2004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5720
5721 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
5722 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
5723
5724 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
5725 tool bar items is 0.
5726
5727 2004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5728
5729 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
5730 strings in menu items.
5731 (single_submenu): Use ENCODE_MENU_STRING
5732 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
5733 button release isn't passed to event loop
5734 (add_menu_item): Use SetMenuItemWithCFString
5735
5736 2004-08-26 Steven Tamm <steventamm@mac.com>
5737
5738 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
5739 tool-bar/menu click.
5740 * macfns.c (Fx_file_dialog): Implement using NavServices.
5741
5742 2004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5743
5744 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
5745
5746 * xfns.c (x_window_to_frame, x_any_window_to_frame)
5747 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
5748 (x_top_window_to_frame): Return 0 if wdesc is None.
5749
5750 2004-08-22 Richard M. Stallman <rms@gnu.org>
5751
5752 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
5753 HAVE_TERMIOS]: If there's no char for this signal, drop through
5754 and use system calls.
5755
5756 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
5757
5758 2004-08-20 Kim F. Storm <storm@cua.dk>
5759
5760 * process.c (wait_reading_process_output): Rename from
5761 wait_reading_process_input. All uses changed.
5762 (wait_reading_process_output_1): Rename from
5763 wait_reading_process_input_1. All uses changed.
5764
5765 * dispnew.c (Fsleep_for): Remove obsolete code.
5766
5767 2004-08-20 Kenichi Handa <handa@m17n.org>
5768
5769 * syntax.c (skip_chars): Fix for unibyte case.
5770
5771 2004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
5772
5773 * syntax.c (char_quoted): Mixup byte/char pos.
5774 (back_comment): Fixup globals in all cases.
5775
5776 2004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5777
5778 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
5779 passing it to gtk_window_set_title.
5780
5781 2004-08-19 Kim F. Storm <storm@cua.dk>
5782
5783 * process.c (wait_reading_process_input): Clean up.
5784 Add wait_for_cell, wait_proc, and just_wait_proc args
5785 to avoid overloading `read_kbd' and `do_display' args.
5786 Change read_kbd arg to int. All callers changed.
5787
5788 * process.c (process_send_signal): Use CDISABLE.
5789
5790 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
5791
5792 2004-08-18 Kim F. Storm <storm@cua.dk>
5793
5794 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
5795 forward to wait_reading_process_input via DO_DISPLAY arg.
5796 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
5797 object, only process output from that process; also inhibit
5798 running timers if DO_DISPLAY==-2.
5799
5800 2004-08-17 Kim F. Storm <storm@cua.dk>
5801
5802 * process.c (process_send_signal): Fix last change--use
5803 _POSIX_VDISABLE instead of CVDISABLE when available.
5804
5805 2004-08-16 Richard M. Stallman <rms@gnu.org>
5806
5807 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
5808 Set VQUIT and VINTR chars to the standard ones if they are unset.
5809 [AIX]: Don't do that here. And don't force VINTR to standard
5810 when SIGNALS_VIA_CHARACTERS.
5811
5812 * process.c (process_send_signal)
5813 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
5814 Do nothing if the character is CVDISABLE.
5815
5816 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
5817
5818 * intervals.c (move_if_not_intangible):
5819 Force POSITION to be between BEGV and ZV.
5820
5821 2004-08-14 John Paul Wallington <jpw@gnu.org>
5822
5823 * buffer.c (Frestore_buffer_modified_p): Doc fix.
5824
5825 * fileio.c (Fread_file_name): Doc fix.
5826
5827 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
5828
5829 2004-08-09 Luc Teirlinck <teirllm@auburn.edu>
5830
5831 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
5832
5833 2004-08-08 Luc Teirlinck <teirllm@auburn.edu>
5834
5835 * keyboard.c: Declare Qdisabled_command_function instead of
5836 Qdisabled_command_hook.
5837 (Fcommand_execute): Use Qdisabled_command_function instead of
5838 Qdisabled_command_hook.
5839 (syms_of_keyboard): Ditto.
5840
5841 2004-08-07 Luc Teirlinck <teirllm@auburn.edu>
5842
5843 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
5844 (syms_of_keymap) <key-translation-map>: Doc fixes.
5845
5846 2004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
5847
5848 * window.c (window_list_1): YAILOM.
5849
5850 * fileio.c (make_temp_name): Handle multibyte prefixes.
5851
5852 2004-08-06 Luc Teirlinck <teirllm@auburn.edu>
5853
5854 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
5855 Doc fix.
5856
5857 2004-08-03 Kenichi Handa <handa@m17n.org>
5858
5859 * coding.c (decode_coding_string): Adjust coding->consumed, and
5860 etc. with shrinked_bytes.
5861
5862 2004-08-03 Kim F. Storm <storm@cua.dk>
5863
5864 * indent.c (compute_motion): Fix check for full width window
5865 in non-window case. Do not count left truncation glyph on
5866 window systems.
5867
5868 2004-08-02 Luc Teirlinck <teirllm@auburn.edu>
5869
5870 * data.c (Finteractive_form): Doc fix.
5871
5872 2004-08-02 Kim F. Storm <storm@cua.dk>
5873
5874 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
5875 properly accounting for continuation glyph on non-window systems.
5876 (Fcompute_motion): Use actual window width if WIDTH is nil, and
5877 actual window width/height if TOPOS is nil, properly accounting for
5878 continuation glyphs on non-window systems, and optional header lines.
5879 (vmotion): Let compute_motion calculate actual window width.
5880
5881 * window.c (window_scroll_line_based): Let compute_motion
5882 calculate actual window width.
5883
5884 2004-08-02 Kim F. Storm <storm@cua.dk>
5885
5886 * process.c (read_process_output): Use whole read buffer.
5887 Don't trigger adaptive read buffering on errors.
5888
5889 2004-07-31 Luc Teirlinck <teirllm@auburn.edu>
5890
5891 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
5892
5893 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
5894
5895 * callint.c (Fcall_interactively): Doc fix.
5896
5897 2004-07-30 Richard M. Stallman <rms@gnu.org>
5898
5899 * abbrev.c (Fexpand_abbrev): Undo previous change.
5900
5901 2004-07-30 Kim F. Storm <storm@cua.dk>
5902
5903 * editfns.c (Fformat): Allocate extra (dummy) element in info.
5904
5905 2004-07-28 Luc Teirlinck <teirllm@auburn.edu>
5906
5907 * eval.c (Fdefvar, Fdefconst): Doc fixes.
5908
5909 2004-07-27 Kim F. Storm <storm@cua.dk>
5910
5911 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
5912 we have ensured that the glyph fits on the current line (or returned
5913 MOVE_LINE_CONTINUED otherwise).
5914
5915 2004-07-26 Kim F. Storm <storm@cua.dk>
5916
5917 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
5918 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
5919 if target position is at end of display line but char is not a newline.
5920
5921 2004-07-25 Richard M. Stallman <rms@gnu.org>
5922
5923 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
5924 instead of ON_VERTICAL_BORDER, when on scroll bar.
5925 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
5926
5927 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
5928
5929 * window.c (Fcoordinates_in_window_p):
5930 Take account of FRAME_INTERNAL_BORDER_WIDTH.
5931
5932 * alloc.c (check_cons_list): New function (contents commented out).
5933
5934 2004-07-24 Luc Teirlinck <teirllm@auburn.edu>
5935
5936 * xfaces.c (Fcolor_supported_p): Doc fix.
5937
5938 * frame.c (Fselect_frame, Fset_frame_selected_window)
5939 (Fframe_visible_p, Fraise_frame): Doc fixes.
5940
5941 2004-07-24 Richard M. Stallman <rms@gnu.org>
5942
5943 * keyboard.h (not_single_kboard_state): Declare.
5944
5945 * fileio.c (Fwrite_region): Doc fix.
5946
5947 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
5948
5949 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
5950 only when a real abbrev is present.
5951
5952 * xfns.c (x_icon_verify): New function.
5953 (Fx_create_frame): Use it.
5954
5955 2004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
5956
5957 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
5958
5959 2004-07-21 Kim F. Storm <storm@cua.dk>
5960
5961 * window.h (struct glyph_matrix): New members nrows_scale_factor
5962 and ncols_scale_factor.
5963
5964 * window.c (make_window): Initialize nrows_scale_factor and
5965 ncols_scale_factor members.
5966
5967 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
5968 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
5969 (required_matrix_height): Apply nrows_scale_factor.
5970 (required_matrix_width): Apply ncols_scale_factor.
5971
5972 * xdisp.c (display_line): Increment nrows_scale_factor and set
5973 fonts_changed_p if past last allocated row.
5974 (append_glyph, append_composite_glyph, produce_image_glyph)
5975 (append_stretch_glyph): Increment ncols_scale_factor and set
5976 fonts_changed_p if current area is full.
5977
5978 2004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5979
5980 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
5981
5982 2004-07-19 Luc Teirlinck <teirllm@auburn.edu>
5983
5984 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
5985 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
5986 (Fset_window_start, Fscroll_up, Fscroll_down)
5987 (Fother_window_for_scrolling, Fscroll_other_window)
5988 (Fsave_window_excursion, Fset_window_vscroll)
5989 (syms_of_window) <window-size-fixed>: Doc fixes.
5990
5991 2004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
5992
5993 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
5994 ENCODE_SYSTEM for filenames.
5995
5996 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5997
5998 * mac.c (sys_select): Block input around call to
5999 ReceiveNextEvent to prevent breakage. Correctly handle
6000 blocking on event queue only by calling ReceiveNextEvent
6001 instead of select (since GUI events aren't on an fd).
6002 (sys_read): Remove function
6003 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
6004
6005 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6006
6007 * mac.c (sys_select): Redo sys_select to use alarm-based
6008 polling instead of 1 sec timeouts (like solaris).
6009
6010 * macterm.c (x_make_frame_visible): Comment in polling on
6011 frame creation.
6012
6013 * keyboard.c: Undef SIGIO on Carbon
6014
6015 * atimer.c (alarm_signal_handler): Call alarm handlers after
6016 scheduling.
6017
6018 * eval.c (Feval): Remove quit_char test
6019
6020 * process.c (wait_reading_process_input): Remove clearing
6021 stdin for select call on process input.
6022
6023 2004-07-18 Luc Teirlinck <teirllm@auburn.edu>
6024
6025 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
6026 capitalization error in docstring.
6027
6028 2004-07-17 Juanma Barranquero <lektu@terra.es>
6029
6030 * keyboard.c (not_single_kboard_state): Do nothing unless
6031 MULTI_KBOARD is defined.
6032
6033 2004-07-17 Richard M. Stallman <rms@gnu.org>
6034
6035 * window.c (coordinates_in_window): Inside the window but outside
6036 its box to the L or R, return ON_VERTICAL_BORDER.
6037 (window_list_1): Rotate the list to start with WINDOW.
6038
6039 * print.c (print_preprocess): Test for print_depth at limit
6040 before entering in being_printed.
6041
6042 * keyboard.c (not_single_kboard_state): New function.
6043 (stuff_buffered_input): Now no-op only if no SIGTSTP.
6044
6045 * frame.c (Fdelete_frame): If we're in single_bboard_state on
6046 this kboard, and we delete its last frame, go to any_kboard_state.
6047
6048 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
6049
6050 2004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
6051
6052 * w32fns.c (Fx_file_dialog): Encode strings in system coding
6053 system before passing them to OS functions for display.
6054
6055 2004-07-15 David Kastrup <dak@gnu.org>
6056
6057 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
6058 Apparently fixes an abort condition.
6059
6060 2004-07-14 Luc Teirlinck <teirllm@auburn.edu>
6061
6062 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
6063 instead of a cons.
6064
6065 2004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
6066
6067 * keyboard.c (echo_dash): Do nothing if there already is a dash
6068 at the end of the echo string.
6069
6070 2004-07-12 Kim F. Storm <storm@cua.dk>
6071
6072 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
6073 if GC_MARK_STACK.
6074
6075 2004-07-10 Luc Teirlinck <teirllm@auburn.edu>
6076
6077 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
6078
6079 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
6080 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
6081 (Freplace_buffer_in_windows, Fset_window_buffer)
6082 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
6083 (syms_of_window): Expand docstring of `display-buffer-function'.
6084
6085 2004-07-09 Luc Teirlinck <teirllm@auburn.edu>
6086
6087 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
6088 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
6089 that time values of the type (HIGH . LOW) are considered obsolete.
6090
6091 2004-07-06 Luc Teirlinck <teirllm@auburn.edu>
6092
6093 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
6094 docstring.
6095
6096 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
6097
6098 2004-07-06 John Paul Wallington <jpw@gnu.org>
6099
6100 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
6101
6102 * fns.c (Fclear_string): Signal an error if STRING is not a string.
6103
6104 2004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6105
6106 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
6107 instead of CGMainDisplayID (only in OSX 10.2 and later).
6108
6109 2004-07-04 John Paul Wallington <jpw@gnu.org>
6110
6111 * fileio.c (read_file_name_completion_ignore_case): New variable.
6112 (syms_of_fileio): Declare and initialise it.
6113 (Fread_file_name): Bind `completion-ignore-case' to respect it.
6114
6115 2004-07-03 Eli Zaretskii <eliz@gnu.org>
6116
6117 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
6118 for event.x and event.y.
6119
6120 2004-07-01 Kenichi Handa <handa@m17n.org>
6121
6122 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
6123 after getting a new string by pre-write-conversion.
6124
6125 2004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
6126
6127 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
6128 (x_calc_absolute_position): Remove unused var `child'.
6129
6130 * xfaces.c (x_supports_face_attributes_p)
6131 (Fdisplay_supports_face_attributes_p): YAILOM.
6132 (tty_supports_face_attributes_p): Remove unused var `i'.
6133
6134 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
6135 back_unibyte_ok.
6136
6137 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
6138
6139 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
6140
6141 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
6142
6143 2004-06-30 Andreas Schwab <schwab@suse.de>
6144
6145 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
6146 (Finit_image_library): Pass LIBRARIES through to
6147 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
6148 (lookup_image_type): Pass Qnil as second argument to
6149 Finit_image_library.
6150
6151 * lisp.h (Finit_image_library): Declare.
6152
6153 2004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6154
6155 * macterm.c (do_window_activate, do_window_deactivate): Remove.
6156 (XTread_socket): Send mouse button events to the toolbox
6157 dispatcher even when the mouse is grabbed. Don't process window
6158 activate events for non-Emacs windows. Replace function calls to
6159 do_window_activate and do_window_deactivate with their contents.
6160 Reset mouse grabbing status when a window is deactivated.
6161
6162 2004-06-29 Steven Tamm <steventamm@mac.com>
6163
6164 * macterm.c (mac_get_emulated_btn)
6165 (mac_event_to_emacs_modifiers): Fix emulated mouse button
6166 support to correctly mask out modifiers.
6167
6168 2004-06-29 David Kastrup <dak@gnu.org>
6169
6170 * search.c (Fset_match_data): Allow buffer before end of list
6171 which can happen if set-match-data is using a pre-consed list.
6172
6173 2004-06-28 Steven Tamm <steventamm@mac.com>
6174
6175 * macterm.c (XTread_socket): Correctly set the frame position
6176 after the window is moved.
6177
6178 2004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6179
6180 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
6181 gpix and gmask just before return to avoid memory leak.
6182 (xg_get_image_for_pixmap): Add workaround for monochrome displays
6183 so insensitive and activated icons look ok.
6184
6185 2004-06-27 Jason Rumney <jasonr@gnu.org>
6186
6187 * w32fns.c (file_dialog_callback): Disable edit control if set
6188 to directories only on CDN_INITDONE message.
6189 (Fx_file_dialog): Default to directories only when prompt starts
6190 with "Dired".
6191
6192 2004-06-25 Kim F. Storm <storm@cua.dk>
6193
6194 * alloc.c (allocate_misc): Update total_free_markers.
6195 (free_misc): New function.
6196 (safe_alloca_unwind, free_marker): Use it.
6197
6198 * lisp.h (free_misc): Add prototype.
6199
6200 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
6201
6202 2004-06-24 Richard M. Stallman <rms@gnu.org>
6203
6204 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
6205 (syms_of_emacs): Lisp variables deleted.
6206
6207 2004-06-23 David Kastrup <dak@gnu.org>
6208
6209 * search.c (Freplace_match): Adjust the match-data more thoroughly
6210 when replacing strings in the buffer.
6211 (Fmatch_data): When INTEGERS is non-nil and the last match was in
6212 a buffer, add the buffer as last element to the match data.
6213 (Fset_match_data): If an additional element of the match-data is a
6214 buffer, restore it to last_thing_searched.
6215 (save_search_regs): Save last_thing_searched as part of the match data.
6216 (restore_match_data): Restore it again.
6217
6218 2004-06-23 Luc Teirlinck <teirllm@auburn.edu>
6219
6220 * keymap.c (Ftext_char_description): Doc fix.
6221 * doc.c (Fsnarf_documentation): Doc fix.
6222
6223 2004-06-22 Kim F. Storm <storm@cua.dk>
6224
6225 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
6226
6227 * lisp.h (struct Lisp_Save_Value): New member dogc.
6228 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
6229 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
6230 (SAFE_FREE_LISP): New macro.
6231
6232 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
6233 (make_save_value): Init new dogc member.
6234 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
6235
6236 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
6237 SAFE_FREE_LISP macros.
6238
6239 2004-06-22 Kim F. Storm <storm@cua.dk>
6240
6241 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
6242 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
6243 in that memory area are unknown to GC. Add comments.
6244
6245 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
6246
6247 2004-06-21 Kim F. Storm <storm@cua.dk>
6248
6249 * lisp.h (MAX_ALLOCA): Define here.
6250 (safe_alloca_unwind): Add prototype.
6251 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
6252
6253 * alloc.c (safe_alloca_unwind): New function.
6254
6255 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
6256
6257 * charset.c (Fstring): Use SAFE_ALLOCA.
6258
6259 * coding.c (MAX_ALLOCA): Remove define.
6260
6261 * data.c (MAX_ALLOCA): Remove define.
6262 (Faset): Use SAFE_ALLOCA.
6263
6264 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
6265
6266 * fns.c (string_make_multibyte, string_to_multibyte)
6267 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
6268 (MAX_ALLOCA): Remove define.
6269 (Fbase64_encode_region, Fbase64_encode_string)
6270 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
6271 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
6272 memory leak if encoding fails.
6273
6274 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
6275
6276 2004-06-21 Eli Zaretskii <eliz@gnu.org>
6277
6278 * print.c (Fwith_output_to_temp_buffer): Doc fix.
6279
6280 2004-06-20 Richard M. Stallman <rms@gnu.org>
6281
6282 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
6283
6284 * search.c (match_limit): Cleaner err msg when no match data available.
6285
6286 * window.c (syms_of_window): Doc fix.
6287
6288 * keyboard.c (command_loop_1): Handle values `only' and `identity'
6289 for Vtransient_mark_mode.
6290
6291 * buffer.c (syms_of_buffer): Doc fix.
6292
6293 2004-06-21 David Kastrup <dak@gnu.org>
6294
6295 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
6296 and unbinding of `case-fold-search' according to
6297 `completion-ignore-case' around calls of string-match and
6298 predicates, respectively. Should give satisfactory performance
6299 in all relevant cases.
6300
6301 2004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6302
6303 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
6304 clip_x/y_origin.
6305
6306 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
6307
6308 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
6309
6310 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
6311 on Mac OSX.
6312
6313 2004-06-16 Luc Teirlinck <teirllm@auburn.edu>
6314
6315 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
6316
6317 2004-06-16 Kim F. Storm <storm@cua.dk>
6318
6319 * dispextern.h (Vimage_types): Remove extern.
6320
6321 2004-06-16 Miles Bader <miles@gnu.org>
6322
6323 * image.c (lookup_image_type): Initialize image type if necessary.
6324
6325 2004-06-15 Kim F. Storm <storm@cua.dk>
6326
6327 * xdisp.c (try_cursor_movement): Exclude header line from scroll
6328 margin at top of window.
6329 (try_window_reusing_current_matrix): Calculate proper cursor position
6330 after scrolling up with non-zero scroll margin, as the old cursor
6331 position corresponds to value of PT before executing this command.
6332 (try_window_id): Consider scroll margin at bottom of window too;
6333 otherwise we fail to scroll when hl-line-mode is enabled.
6334
6335 * syntax.c (skip_chars): Only recognize [:class:] when it has the
6336 proper format and class is a lower-case word.
6337
6338 2004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6339
6340 * gtkutil.c (xg_get_image_for_pixmap): New function.
6341 (xg_get_gdk_pixmap_and_mask): Remove.
6342 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
6343 xg_get_gdk_pixmap_and_mask.
6344
6345 * xterm.h (struct x_display_info): Typo in comment fixed.
6346
6347 2004-06-14 Juanma Barranquero <lektu@terra.es>
6348
6349 * dispextern.h (Vimage_types): Make it conditional on
6350 HAVE_WINDOW_SYSTEM.
6351
6352 * image.c (Vimage_types): Move from xdisp.c.
6353 (Vimage_type_cache): New variable.
6354 (define_image_type): New argument indicating whether an image
6355 library was loaded; cache loaded status and return t on success,
6356 nil otherwise.
6357 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
6358 (w32_delayed_load): New function to load an image library from a
6359 list of possible filenames.
6360 (init_xpm_functions, init_png_functions, init_jpeg_functions)
6361 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
6362 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
6363 (Finit_image_library): New function, extracted from `init_image'.
6364 Try to initialize an image library on demand and cache whether we
6365 were successful or not.
6366 (syms_of_image): Initialize `Vimage_types' and
6367 `Vimage_type_cache'. Add recognized image types to Vimage_types.
6368 Export `init-image-library'.
6369 (init_image): Remove initialization of all image types, except xbm
6370 and pbm.
6371
6372 * xdisp.c (Vimage_types): Delete (moved to image.c).
6373
6374 2004-06-14 Andreas Schwab <schwab@suse.de>
6375
6376 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
6377 Avoid calling specbind when completion-regexp-list is empty.
6378
6379 2004-06-13 Richard M. Stallman <rms@gnu.org>
6380
6381 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
6382 (re_wctype, re_iswctype, re_wctype_to_bit):
6383 Non-function definitions moved here from regex.c.
6384
6385 * regex.c (re_wctype, re_iswctype): Function defs longer static.
6386 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
6387 (re_wctype, re_iswctype, re_wctype_to_bit):
6388 Non-function definitions moved to regex.h.
6389
6390 * window.c (Fselect_window): Doc fix.
6391
6392 * syntax.c: Include regex.h.
6393 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
6394 If requested, make a list of classes, then check the scanned
6395 chars for membership in them.
6396 (in_classes): New function.
6397 Doc fix.
6398
6399 * keyboard.c (cmd_error): Don't call any_kboard_state
6400 if inside a recursive edit level.
6401
6402 2004-06-13 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
6403
6404 * keyboard.c (command_loop): Call any_kboard_state before
6405 command_loop_2 when at top level.
6406
6407 2004-06-13 Andreas Schwab <schwab@suse.de>
6408
6409 * print.c (print_object): Always use %ld for printing EMACS_INT.
6410
6411 * keyboard.c (cancel_hourglass_unwind): Return a value.
6412 (modify_event_symbol): Always use %ld for printing EMACS_INT.
6413 (Fexecute_extended_command): Likewise.
6414
6415 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
6416 avoid clashes.
6417 (SYNTAX): Likewise.
6418 (SYNTAX_WITH_FLAGS): Likewise.
6419 (SYNTAX_MATCH): Likewise.
6420
6421 * syntax.c (char_quoted): Avoid warning about undefined operation.
6422 (find_defun_start): Likewise.
6423 (scan_lists): Likewise.
6424 (INC_FROM): Likewise.
6425 (scan_sexps_forward): Likewise.
6426
6427 * image.c: Include <ctype.h>.
6428
6429 * xfaces.c (face_attr_equal_p): Declare parameters.
6430
6431 2004-06-13 Kenichi Handa <handa@m17n.org>
6432
6433 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
6434
6435 2004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
6436
6437 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
6438
6439 2004-06-12 Kenichi Handa <handa@m17n.org>
6440
6441 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
6442 ccl_prog_stack_struct and update it.
6443 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
6444 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
6445 ccl->eof_ic on EOF.
6446 (ccl_debug_hook): New function.
6447 (struct ccl_prog_stack): New member eof_ic.
6448 (ccl_driver): Handle EOF in subrountine call correctly.
6449
6450 2004-06-11 Kenichi Handa <handa@m17n.org>
6451
6452 * coding.c (encode_coding_string): Check CODING_FINISH_INTERRUPT.
6453
6454 2004-06-11 Kim F. Storm <storm@cua.dk>
6455
6456 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
6457
6458 2004-06-11 Juanma Barranquero <lektu@terra.es>
6459
6460 * keyboard.c (Fposn_at_point): Doc fix.
6461
6462 2004-06-11 David Kastrup <dak@gnu.org>
6463
6464 * search.c (match_limit): Don't flag an error if match-data
6465 exceeding the allocated search_regs.num_regs gets requested, just
6466 return Qnil.
6467
6468 2004-06-08 Miles Bader <miles@gnu.org>
6469
6470 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
6471
6472 2004-06-07 Juanma Barranquero <lektu@terra.es>
6473
6474 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
6475 (Fcurrent_time_string, Fcurrent_time_zone)
6476 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
6477
6478 2004-06-07 Miles Bader <miles@gnu.org>
6479
6480 * xfaces.c (struct named_merge_point): New type.
6481 (push_named_merge_point): New function.
6482 (merge_named_face): New function.
6483 (merge_face_ref, face_at_buffer_position, face_at_string_position):
6484 Use `merge_named_face'.
6485 (merge_face_inheritance): Function removed.
6486 (merge_face_ref): Rename from `merge_face_vector_with_property'.
6487 Add new `err_msgs' and `named_merge_points' args. Return error
6488 status. Only print error messages if ERR_MSGS is true. Don't try to
6489 do :inherit attribute validation.
6490 (merge_face_heights): Handle `unspecified' in both directions.
6491 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
6492 Call `merge_face_ref' instead of `merge_face_inheritance'.
6493 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
6494 (compute_char_face, face_at_buffer_position)
6495 (face_at_string_position): Call `merge_face_ref' instead of
6496 `merge_face_vector_with_property'.
6497
6498 2004-06-07 Kenichi Handa <handa@m17n.org>
6499
6500 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
6501 the necessary places.
6502
6503 2004-06-07 Kim F. Storm <storm@cua.dk>
6504
6505 * process.c (Fdelete_process): Undo 2004-05-28 change.
6506 Instead, call status_notify also for network process.
6507 (status_message): Use process instead of status as arg.
6508 Give messages "deleted" or "connection broken by remote peer" for
6509 an exited network process.
6510 (status_notify): Change call to status_message.
6511 (read_process_output): Increase readmax to 4096. Do not increase
6512 buffer size for datagram channels (default is now large enough).
6513
6514 2004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
6515
6516 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
6517 problem due to newly defined variable.
6518
6519 2004-06-06 Miles Bader <miles@gnu.org>
6520
6521 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
6522 immediately if non-interactive or not initialized.
6523
6524 2004-06-05 Richard M. Stallman <rms@gnu.org>
6525
6526 * minibuf.c (Fcompleting_read): Doc fix.
6527
6528 2004-06-05 Andreas Schwab <schwab@suse.de>
6529
6530 * macfns.c (x_create_tip_frame): Fix declaration after statement.
6531
6532 2004-06-05 Juanma Barranquero <lektu@terra.es>
6533
6534 * keymap.c (Fdescribe_vector): Fix docstring.
6535 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
6536
6537 2004-06-05 Miles Bader <miles@gnu.org>
6538
6539 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
6540 attributes have different values than the default face.
6541
6542 2004-06-04 Eli Zaretskii <eliz@gnu.org>
6543
6544 * xfaces.c (x_supports_face_attributes_p): Make this function
6545 conditional on HAVE_WINDOW_SYSTEM.
6546 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
6547 Don't call x_supports_face_attributes_p if it was not compiled in.
6548
6549 2004-06-04 Miles Bader <miles@gnu.org>
6550
6551 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
6552 from Ftty_supports_face_attributes_p.
6553 (x_supports_face_attributes_p): New function.
6554 (Ftty_supports_face_attributes_p): Function deleted.
6555 (Fdisplay_supports_face_attributes_p): New function.
6556 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
6557 (face_attr_equal_p): New function.
6558 (lface_equal_p): Use it.
6559
6560 2004-06-03 Juanma Barranquero <lektu@terra.es>
6561
6562 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
6563 (Vw32_color_map): Fix typo in docstring.
6564 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
6565 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
6566 Make argument names match their use in docstring.
6567
6568 2004-06-02 Juanma Barranquero <lektu@terra.es>
6569
6570 Work around bugs/problems with MinGW builds of graphics libraries
6571 called from MSVC builds of Emacs.
6572
6573 * image.c (lookup_image): Make pointer to img static.
6574 (png_read_from_memory): Disable "global" optimization.
6575
6576 2004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
6577
6578 * eval.c (Fcondition_case): Fix usage. Simplify.
6579
6580 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
6581
6582 2004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6583
6584 * macfns.c: Don't include ccl.h.
6585 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
6586 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
6587 TextUtils.h.
6588 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
6589 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
6590 display height/width.
6591 (compute_tip_xy, Vx_max_tooltip_size): Declare.
6592 (unwind_create_tip_frame, compute_tip_xy): New functions.
6593 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
6594 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
6595 and last_show_tip_args.
6596
6597 * macgui.h [!MAC_OSX]: Include Gestalt.h.
6598 (Cursor, No_Cursor): New defines.
6599 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
6600 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
6601
6602 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
6603
6604 * macterm.c: Don't include Gestalt.h.
6605 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
6606 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
6607 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
6608 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
6609 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
6610 (construct_mouse_click, XTmouse_position)
6611 (x_scroll_bar_report_motion, x_calc_absolute_position)
6612 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
6613 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
6614 (note_mouse_movement): Clear the mouse face and reset the pointer
6615 shape when the pointer goes outside the frame without grabbing.
6616 (mac_front_window): New function.
6617 (mac_window_to_frame): New macro.
6618 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
6619 (do_window_activate, do_window_deactivate, do_app_resume)
6620 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
6621 (do_zoom_window, mac_do_receive_drag, XTread_socket)
6622 (mac_check_for_quit_char): Use mac_front_window and/or
6623 mac_window_to_frame.
6624 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
6625 scroll-bar click event.
6626 (mac_define_frame_cursor): Change the pointer shape.
6627 (x_free_frame_resources): Reset tip_window to NULL when it is disposed.
6628 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
6629 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
6630 (do_window_update): Don't do anything if the updated window is the
6631 tooltip window.
6632 (do_mouse_moved): Handle mouse movement events here (previously in
6633 XTread_socket). Clear the mouse face if
6634 dpyinfo->mouse_face_hidden is set.
6635 (do_os_event, do_events): Remove (now in XTread_socket).
6636 (XTread_socket): Immediately return if interrupt_input_blocked.
6637 Loop until all the events in the queue are processed.
6638 Rearrange codes for mouse grabbing. Add tooltip support. Include the
6639 contents of do_os_event and do_events. Remove mouse movement
6640 handling (now in do_mouse_moved). Add the case where
6641 Vmouse_highlight has an integer value.
6642 (NewMacWindow): Remove.
6643 (make_mac_frame): Do what NewMacWindow previously did. Don't do
6644 excess initializations.
6645 (make_mac_terminal_frame): Previous initializations in
6646 make_mac_frame are moved here.
6647 (mac_initialize_display_info):
6648 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
6649
6650 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
6651 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
6652
6653 2004-05-29 Richard M. Stallman <rms@gnu.org>
6654
6655 * lisp.h (truncate_undo_list): Update decl.
6656
6657 * alloc.c (undo_outer_limit): New variable.
6658 (syms_of_alloc): Defvar it.
6659 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
6660
6661 * undo.c (truncate_undo_list): New arg LIMITSIZE.
6662
6663 * alloc.c (lisp_align_malloc): Check for base == 0
6664 regardless of HAVE_POSIX_MEMALIGN.
6665 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
6666
6667 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
6668
6669 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
6670 (marker_blocks_pending_free): Remove.
6671 (Fgarbage_collect): Sweep after cleaning up undo-lists.
6672 Mark the undo lists after claning them up.
6673 Don't free block in marker_blocks_pending_free.
6674 (mark_buffer): Don't mark undo_list.
6675 (gc_sweep): Sweep hash-tables and strings first.
6676 Do free marker blocks that are empty.
6677
6678 2004-05-28 Jim Blandy <jimb@redhat.com>
6679
6680 * regex.c (print_partial_compiled_pattern): Add missing 'break'
6681 after 'case wordend'. For symbeg and symend, print to stderr,
6682 like the other cases.
6683
6684 2004-05-28 Noah Friedman <friedman@splode.com>
6685
6686 * process.c (Fdelete_process): Do not call remove_process.
6687
6688 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
6689
6690 * alloc.c (struct backtrace): Remove.
6691 (Fgarbage_collect): Use the new mark_backtrace.
6692
6693 * eval.c (mark_backtrace): New function.
6694
6695 * minibuf.c (run_exit_minibuf_hook): New function.
6696 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
6697 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
6698
6699 2004-05-27 Kim F. Storm <storm@cua.dk>
6700
6701 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
6702 over display properties, e.g. images, that replace buffer text.
6703
6704 2004-05-25 Kim F. Storm <storm@cua.dk>
6705
6706 * alloc.c (marker_blocks_pending_free): New var.
6707 (gc_sweep): Store free marker blocks on that list.
6708 (Fgarbage_collect): Free them after undo-list cleanup.
6709
6710 * process.c (wait_reading_process_input): Check connect_wait_mask
6711 before actually accepting connection in case it has already been
6712 accepted due to recursion.
6713
6714 2004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
6715
6716 * coding.c (Fset_safe_terminal_coding_system_internal):
6717 Set suppress_error in safe_terminal_coding, not terminal_coding.
6718
6719 2004-05-22 Richard M. Stallman <rms@gnu.org>
6720
6721 * alloc.c (Fmake_string): Doc fix.
6722
6723 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
6724 and the alist pairs too.
6725
6726 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
6727
6728 * emacs.c (main): Update copyright year.
6729
6730 * fileio.c (Fread_file_name): Expand DIR if not absolute.
6731
6732 * insdel.c (del_range_2, replace_range): Don't write an anchor
6733 if the gap is empty.
6734
6735 * xdisp.c (try_scrolling): If scroll-up-aggressively or
6736 scroll-down-aggressively is small but positive, put point
6737 near the screen edge.
6738
6739 2004-05-22 Juanma Barranquero <lektu@terra.es>
6740
6741 * keymap.c (Fdefine_key): Doc fix.
6742
6743 2004-05-22 Kim F. Storm <storm@cua.dk>
6744
6745 * alloc.c (struct backtrace): Add debug_on_exit member.
6746 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
6747 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
6748 the removed cons cells.
6749 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
6750 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
6751 any cons cells pointing to unallocated stings.
6752 Do not lisp_free any marker blocks, as there may still be pointers
6753 to them from buffer undo lists at this stage of GC.
6754
6755 * keyboard.c (struct backtrace): Add debug_on_exit member.
6756 (Fcommand_execute): Clear it.
6757
6758 2004-05-20 Luc Teirlinck <teirllm@auburn.edu>
6759
6760 * intervals.c (lookup_char_property): Do not prematurely return nil.
6761
6762 2004-05-19 Jim Blandy <jimb@redhat.com>
6763
6764 Add support for new '\_<' and '\_>' regexp operators, matching the
6765 beginning and end of symbols.
6766
6767 * regex.c (enum syntaxcode): Add Ssymbol.
6768 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
6769 (re_opcode_t): New opcodes `symbeg' and `symend'.
6770 (print_partial_compiled_pattern): Print the new opcodes properly.
6771 (regex_compile): Parse the new operators.
6772 (analyse_first): Skip sym(beg|end) (they match only the empty string).
6773 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
6774 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
6775 (re_match_2_internal): Match symbeg and symend.
6776
6777 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
6778
6779 2004-05-19 Kim F. Storm <storm@cua.dk>
6780
6781 * .gdbinit (xsymbol): Fix last change.
6782
6783 2004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
6784
6785 * .gdbinit (xprintstr): New fun.
6786 (xstring, xprintsym): Use it.
6787
6788 * w32proc.c (create_child): Use INTMASK.
6789
6790 * alloc.c (Fgarbage_collect): Do all the marking before flushing
6791 unmarked elements of the undo list.
6792
6793 2004-05-18 David Ponce <david@dponce.com>
6794
6795 * print.c (print): Reset print_depth before to call print_object.
6796
6797 2004-05-18 Jason Rumney <jasonr@gnu.org>
6798
6799 * w32console.c: Prefix RIF functions with w32con_ to avoid
6800 namespace clash with functions in term.c and w32term.c.
6801
6802 * w32menu.c (add_menu_item, w32_menu_display_help)
6803 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
6804
6805 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
6806
6807 2004-05-18 Eli Zaretskii <eliz@gnu.org>
6808
6809 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
6810
6811 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
6812 with make_number.
6813 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
6814 with XINT.
6815
6816 2004-05-18 Kim F. Storm <storm@cua.dk>
6817
6818 * blockinput.h (INPUT_BLOCKED_P): New macros.
6819
6820 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
6821 (Ftop_level): Unblock input if blocked.
6822
6823 * buffer.h (GET_OVERLAYS_AT): New macro.
6824 * msdos.c (IT_note_mouse_highlight): Use it.
6825 * textprop.c (get_char_property_and_overlay): Use it.
6826 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
6827 * xfaces.c (face_at_buffer_position): Use it.
6828
6829 * print.c (print_object): Increase buf size.
6830
6831 2004-05-17 Jason Rumney <jasonr@gnu.org>
6832
6833 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
6834 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
6835 Lisp_Object using i member.
6836 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
6837 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
6838 consistently.
6839
6840 * w32proc.c (create_child): Use make_number instead of masking pid.
6841
6842 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
6843 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
6844 Use EQ to compare Lisp_Objects.
6845 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
6846
6847 * w32term.c (w32_num_mouse_buttons): Rename from
6848 Vw32_num_mouse_buttons and make it an int.
6849
6850 * w32.c (init_environment): Use it.
6851
6852 * w32fns.c (w32_wnd_proc): Likewise.
6853
6854 * w32proc.c (w32_pipe_read_delay): Rename from
6855 Vw32_pipe_read_delay and make it an int.
6856
6857 * w32.c (_sys_read_ahead): Use it.
6858
6859 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
6860
6861 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
6862
6863 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
6864 (key_event): Don't mix Lisp_Object and int.
6865
6866 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
6867
6868 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
6869 modifiers in language change event.
6870
6871 2004-05-17 Kim F. Storm <storm@cua.dk>
6872
6873 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
6874 Such objects may be freed markers which still exist on an undo list.
6875
6876 2004-05-16 Juanma Barranquero <lektu@terra.es>
6877
6878 * data.c (Fset_default): Make argument names match their use in
6879 docstring.
6880
6881 2004-05-15 Andreas Schwab <schwab@suse.de>
6882
6883 * emacs.c (gdb_array_mark_flag): Define.
6884 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
6885
6886 2004-05-15 Eli Zaretskii <eliz@gnu.org>
6887
6888 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
6889 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
6890 defined for the MS-DOS build.
6891
6892 2004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
6893
6894 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
6895
6896 2004-05-14 Kenichi Handa <handa@m17n.org>
6897
6898 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
6899
6900 2004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6901
6902 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
6903 section to frame.c section.
6904 (Fxw_display_color_p, Fx_file_dialog): Declare if
6905 HAVE_WINDOW_SYSTEM defined.
6906
6907 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
6908
6909 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
6910
6911 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
6912 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
6913 (XTread_socket): Fix int/Lisp_Object mixup.
6914 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
6915
6916 * macterm.h (struct frame, struct face, struct image)
6917 (display_x_get_resource, Fx_display_color_p)
6918 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
6919 Add prototypes.
6920
6921 2004-05-14 Kim F. Storm <storm@cua.dk>
6922
6923 * process.c (wait_reading_process_input): Make reentrant.
6924 Make Available and Connecting non-static. Save and restore value
6925 of waiting_for_user_input_p.
6926
6927 2004-05-13 Kim F. Storm <storm@cua.dk>
6928
6929 * keyboard.c (mark_kboards): Don't mark x and y members
6930 that are overloaded in selection request events.
6931
6932 2004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
6933
6934 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
6935
6936 2004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
6937
6938 * window.c (Fdisplay_buffer, Fsplit_window)
6939 (split-height-threshold): Doc fix.
6940
6941 2004-05-13 Juanma Barranquero <lektu@terra.es>
6942
6943 * xfaces.c (Ftty_supports_face_attributes_p)
6944 (Finternal_copy_lisp_face): Fix typo in docstring.
6945 (Finternal_get_lisp_face_attribute): Fix docstring.
6946
6947 2004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6948
6949 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
6950
6951 2004-05-11 Steven Tamm <steventamm@mac.com>
6952
6953 * macfns.c (Fx_create_frame): Default to using tool-bar by
6954 setting tool-bar-lines to 1 in default-frame-alist.
6955
6956 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6957
6958 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
6959 (xpm_get_color_table_v, xpm_make_color_table_h)
6960 (xpm_put_color_table_h, xpm_get_color_table_h)
6961 (xpm_str_to_color_key, xpm_load_image, xpm_load)
6962 (syms_of_image): Support XPM on Carbon Emacs. Does not
6963 depend on libXpm, but only supports XPM version 3 without extensions.
6964
6965 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6966
6967 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
6968 instead of FRAME_X_P
6969
6970 2004-05-11 Kim F. Storm <storm@cua.dk>
6971
6972 * process.c (read_process_output): Grow decoding_buf when needed;
6973 this could cause a crash in allocate_string and compact_small_strings.
6974
6975 2004-04-29 Jim Blandy <jimb@redhat.com>
6976
6977 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
6978 against proper opcode.
6979
6980 2004-05-10 Juanma Barranquero <lektu@terra.es>
6981
6982 * process.c (Fstart_process): Fix docstring.
6983
6984 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
6985 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
6986 (Fsplit_char, Fchar_charset): Make argument names match their use
6987 in docstring.
6988
6989 2004-05-10 Richard M. Stallman <rms@gnu.org>
6990
6991 * print.c (print_preprocess): Use being_printed, loop_count and
6992 halftail to detect overdeep nesting and cyclic cdr chains.
6993
6994 2004-05-10 Andreas Schwab <schwab@suse.de>
6995
6996 * lisp.h (Fmake_symbolic_link): Declare.
6997
6998 * fileio.c (Frename_file): Remove extra argument in call to
6999 Fmake_symbolic_link.
7000
7001 2004-05-10 Kim F. Storm <storm@cua.dk>
7002
7003 * xdisp.c (calc_line_height_property): Use string position when
7004 object is a string.
7005
7006 2004-05-10 Kenichi Handa <handa@m17n.org>
7007
7008 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
7009 inhibit-modification-hooks to t temporarily before calling
7010 Ferase_buffer.
7011
7012 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
7013 inhibit-modification-hooks to t temporarily before calling
7014 Ferase_buffer.
7015
7016 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
7017 inhibit-modification-hooks to t temporarily before calling
7018 Ferase_buffer.
7019
7020 * fns.c (count_combining): Delete it.
7021 (concat): Don't check combining bytes.
7022
7023 2004-05-09 Jason Rumney <jasonr@gnu.org>
7024
7025 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
7026 (globals_of_w32fns): Set it.
7027
7028 2004-05-09 Piet van Oostrum <piet@cs.uu.nl>
7029
7030 * data.c (Fquo): Simplify.
7031
7032 2004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
7033
7034 * data.c (Fquo): If any argument is float, do the computation in
7035 floating point.
7036
7037 2004-05-08 Juanma Barranquero <lektu@terra.es>
7038
7039 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
7040 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
7041 Fix spelling of Emacs on docstring.
7042 (Fset_process_coding_system, Fprocess_coding_system)
7043 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
7044 Make argument names match their use in docstring.
7045 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
7046 Fix docstring.
7047
7048 * editfns.c (Finsert_buffer_substring): Make argument names match their
7049 use in docstring.
7050
7051 * syntax.c (Fmodify_syntax_entry): Fix docstring.
7052
7053 2004-05-07 Steven Tamm <steventamm@mac.com>
7054
7055 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
7056 around call to ReceiveEvent to avoid certain crashes.
7057
7058 2004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7059
7060 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
7061 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
7062 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
7063 Save/restore the current graphics port and device handle when
7064 drawing into an offscreen graphics world.
7065
7066 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
7067 (gif_load): Likewise.
7068
7069 2004-05-07 Juanma Barranquero <lektu@terra.es>
7070
7071 * window.c (Fset_window_buffer): Fix docstring.
7072
7073 2004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
7074
7075 * emacs.c (main) [VMS]: Fix var ref.
7076
7077 2004-05-06 Romain Francoise <romain@orebokech.com>
7078
7079 * data.c (Fsetq_default): Fix docstring.
7080
7081 2004-05-06 Jason Rumney <jasonr@gnu.org>
7082
7083 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
7084 to avoid name clash.
7085
7086 2004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7087
7088 * fileio.c (barf_or_query_if_file_exists): Use lstat.
7089 (Frename_file): Handle renaming of symlinks across file systems.
7090 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
7091
7092 2004-05-04 Kim F. Storm <storm@cua.dk>
7093
7094 * xdisp.c (Qtotal): New var.
7095 (syms_of_xdisp): Intern and staticpro it.
7096 (calc_line_height_property): New arg total. Set it if
7097 line-spacing property has format (total . VALUE).
7098 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
7099 Handle total line-spacing property.
7100
7101 2004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7102
7103 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
7104 "under" scroll bar when size/position changes.
7105
7106 2004-05-03 Jason Rumney <jasonr@gnu.org>
7107
7108 * makefile.nt: Remove.
7109
7110 2004-05-02 Eli Zaretskii <eliz@gnu.org>
7111
7112 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
7113 Avoid compiler warnings.
7114
7115 * Makefile.in (region-cache.o): Depend on config.h.
7116
7117 2004-05-02 Romain Francoise <romain@orebokech.com>
7118
7119 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
7120 with continuation lines, too.
7121
7122 2004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
7123
7124 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
7125
7126 2004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
7127
7128 * xdisp.c (calc_line_height_property): YAILOM (yet another
7129 int/Lisp_Object mixup).
7130
7131 2004-05-01 Eli Zaretskii <eliz@gnu.org>
7132
7133 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
7134 undo bad effect of pack(4) in some versions of system headers.
7135
7136 2004-05-01 Jason Rumney <jasonr@gnu.org>
7137
7138 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
7139
7140 2004-04-30 Kim F. Storm <storm@cua.dk>
7141
7142 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
7143 (syms_of_buffer) <cursor-type>: Doc fix.
7144
7145 * dispextern.h (struct it): Remove member use_default_face.
7146 Add members override_ascent, override_descent, override_boff.
7147
7148 * xdisp.c (init_iterator): Handle line-spacing float value.
7149 Initialize override_ascent member.
7150 (append_space_for_newline): Reset override_ascent.
7151 Remove use_default_face.
7152 (calc_line_height_property): New function to calculate value of
7153 line-height and line-spacing properties. Look at overlays, too.
7154 Set override_ascent, override_descent, override_boff members when
7155 using another face than the current face. Float values are now
7156 relative to the frame default font, by default; accept a cons
7157 of ratio and face name to specify value relative to a specific face.
7158 (x_produce_glyphs): Use calc_line_height_property.
7159 Use override_ascent etc. when set to handle different face heights.
7160 A negative line-spacing property value is interpreted as a total
7161 line height, rather than inter-line spacing.
7162 (note_mouse_highlight): Allocate room for 40 overlays initially.
7163
7164 2004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
7165
7166 * data.c (Fsubr_name): New fun.
7167 (syms_of_data): Defsubr it.
7168
7169 2004-04-29 Kim F. Storm <storm@cua.dk>
7170
7171 * xdisp.c (null_glyph_slice): New var.
7172 (append_glyph, append_composite_glyph, append_stretch_glyph):
7173 Use it to initialize glyph slice.
7174
7175 2004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
7176
7177 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
7178 (on_hot_spot_p): Make sure we always return a value.
7179 (Flookup_image_map): Remove unused var ix and iy.
7180 (note_mode_line_or_margin_highlight): Remove unused var `image'.
7181
7182 2004-04-27 Eli Zaretskii <eliz@gnu.org>
7183
7184 * msdos.c (init_environment): If one of the TMP... environment
7185 variables is set to a drive letter without a trailing slash,
7186 append a slash.
7187
7188 2004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
7189
7190 * editfns.c (lisp_time_argument): Provide externally.
7191
7192 * fileio.c (Fset_file_times): New function.
7193 (syms_of_fileio): Intern and staticpro it.
7194
7195 2004-04-27 Kim F. Storm <storm@cua.dk>
7196
7197 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
7198 header line strings.
7199
7200 * dispextern.h (struct it): New member use_default_face.
7201
7202 * xdisp.c (Qline_height): New variable.
7203 (syms_of_xdisp): Intern and staticpro it.
7204 (append_space_for_newline): Partially undo 2004-04-25 change;
7205 add default_face_p arg, and restore callers.
7206 Clear it->use_default_face after use.
7207 (x_produce_glyphs): Set default font for ascii char if
7208 it->use_default_font is set. Change line-spacing property to set
7209 just extra line spacing. Handle new line-height property.
7210
7211 2004-04-26 Andreas Schwab <schwab@suse.de>
7212
7213 * print.c (print_object): Print non-ascii characters in bool
7214 vector representation as octal escapes.
7215
7216 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
7217 * print.c (print_object): Use it instead of BITS_PER_CHAR for
7218 bool vectors.
7219 * lread.c (read1): Likewise.
7220 * alloc.c (Fmake_bool_vector): Likewise.
7221 * data.c (Faref, Faset): Likewise.
7222 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
7223 (mapcar1): Likewise.
7224
7225 2004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
7226
7227 * lread.c (init_lread): Fix typo in HAVE_CARBON test logic.
7228
7229 2004-04-26 Miles Bader <miles@gnu.org>
7230
7231 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
7232
7233 2004-04-26 Juanma Barranquero <lektu@terra.es>
7234
7235 * buffer.c (Fpop_to_buffer): Fix docstring.
7236
7237 2004-04-26 Steven Tamm <steventamm@mac.com>
7238
7239 * lread.c (init_lread): Don't display missing lisp directory
7240 warnings with Carbon Emacs because self-contained bundled Emacs
7241 may be built without correct installation path.
7242
7243 2004-04-25 Kim F. Storm <storm@cua.dk>
7244
7245 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
7246
7247 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
7248
7249 * xdisp.c (append_space_for_newline): Rename from append_space.
7250 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
7251 (x_produce_glyphs): Handle line-spacing property on newline char.
7252 If value is t, adjust ascent and descent to fit current row height.
7253 If value is an integer or float, set extra_line_spacing to integer
7254 value, or to float value x current line height.
7255
7256 2004-04-23 Kenichi Handa <handa@m17n.org>
7257
7258 * fontset.c (Finternal_char_font): If POSITION is nil, return
7259 font for displaying CH with the default face.
7260
7261 2004-04-23 Juanma Barranquero <lektu@terra.es>
7262
7263 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
7264
7265 2004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
7266
7267 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
7268 Don't make assumptions about the relative place of i and val.
7269 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
7270
7271 2004-04-21 Kim F. Storm <storm@cua.dk>
7272
7273 * dispextern.h (struct glyph_slice): New struct.
7274 (struct glyph): New member slice.
7275 (GLYPH_SLICE_EQUAL_P): New macro.
7276 (GLYPH_EQUAL_P): Use it.
7277 (struct glyph_string): New member slice.
7278 (struct it_slice): New struct.
7279 (struct it): New member slice, add member to stack too.
7280 New member constrain_row_ascent_descent_p.
7281 (image_ascent): Add prototype.
7282
7283 * dispnew.c (buffer_posn_from_coords): Return full image width
7284 and height even for image slices (posn is relative to full image).
7285 (marginal_area_string): Adjust x0,y0 for image slice.
7286
7287 * image.c (image_ascent): Add slice arg; calculate ascent for
7288 image slice (or full image).
7289
7290 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
7291 (syms_of_keyboard): Defsubr them.
7292
7293 * lisp.h (pos_visible_p): Fix prototype.
7294
7295 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
7296 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
7297 (x_draw_image_foreground, x_draw_image_relief)
7298 (x_draw_image_foreground_1, x_draw_image_glyph_string):
7299 Draw sliced images.
7300
7301 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
7302 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
7303 (x_draw_image_foreground, x_draw_image_relief)
7304 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
7305 Draw sliced images.
7306
7307 * w32term.h (image_ascent): Remove prototype.
7308
7309 * window.c (Fpos_visible_in_window_p): Return pixel position if
7310 PARTIALLY arg is non-nil. Simplify. Doc fix.
7311 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
7312 to return/set vscroll in pixels.
7313
7314 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
7315
7316 * xdisp.c (Qslice): New variable.
7317 (syms_of_xdisp): Intern and staticpro it.
7318 (pos_visible_p): Return pixel position in new x and y args.
7319 (init_iterator): Reset it->slice info.
7320 (handle_display_prop): Parse (slice ...) property.
7321 (push_it, pop_it): Save/restore slice info.
7322 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
7323 force repositioning of tall row if window is vscrolled, as that
7324 would reset vscroll.
7325 (append_space): Set it->constrain_row_ascent_descent_p to avoid
7326 increasing row height if row is non-empty.
7327 (fill_image_glyph_string): Copy slice info.
7328 (take_vertical_position_into_account): Simplify.
7329 (produce_image_glyph): Handle iterator slice info, setup glyph
7330 slice info. Do not force minimum line height.
7331 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
7332 do not increase height (ascent/descent) of non-empty row when
7333 adding normal character glyph; instead reduce glyph ascent/descent
7334 appropriately; if row is higher than current glyph, adjust glyph
7335 descent/ascent to reposition glyph within the existing row.
7336 Likewise, when char is newline, only set ascent/descent if row is
7337 currently empty.
7338 (note_mouse_highlight): Handle hotspots with sliced image.
7339
7340 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
7341 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
7342 (x_draw_image_foreground, x_draw_image_relief)
7343 (x_draw_image_foreground_1, x_draw_image_glyph_string):
7344 Draw sliced images.
7345
7346 * xterm.h (image_ascent): Remove prototype.
7347
7348 2004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
7349
7350 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
7351
7352 2004-04-20 John Paul Wallington <jpw@gnu.org>
7353
7354 * fns.c (Fassoc, Feql): Fix indentation.
7355
7356 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
7357
7358 2004-04-19 John Paul Wallington <jpw@gnu.org>
7359
7360 * fns.c (Feql): New function.
7361 (syms_of_fns): Defsubr it.
7362
7363 2004-04-18 Jason Rumney <jasonr@gnu.org>
7364
7365 * w32select.c (Fw32_set_clipboard_data): Get sequence number
7366 after closing the clipboard.
7367
7368 2004-04-16 Luc Teirlinck <teirllm@auburn.edu>
7369
7370 * buffer.c (Fbuffer_base_buffer): Doc fix.
7371
7372 2004-04-17 Kim F. Storm <storm@cua.dk>
7373
7374 * keymap.c (Fkey_description): Add optional PREFIX arg.
7375 Combine prefix with KEYS to make up the full key sequence to describe.
7376 Correlate meta_prefix_char and following (simple) key to describe
7377 as meta modifier. All callers changed.
7378 (describe_map): Rename arg `keys' to `prefix'. Remove local
7379 `elt_prefix' var. Use Fkey_description with prefix instead of
7380 elt_prefix combined with Fsingle_key_description.
7381 (describe_vector): Declare static. Replace arg `elt_prefix' with
7382 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
7383 if !KEYMAP_P. Use Fkey_description with prefix instead of
7384 Fsingle_key_description.
7385
7386 * keymap.h (Fkey_description): Fix prototype.
7387 (describe_vector): Remove prototype.
7388
7389 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
7390
7391 * image.c (PNG_BG_COLOR_SHIFT): Remove.
7392 (png_load): Fix calculation of transparent background color on X
7393 and W32 platforms.
7394
7395 2004-04-16 Juanma Barranquero <lektu@terra.es>
7396
7397 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
7398 not too large before computing how much to scroll.
7399
7400 2004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
7401
7402 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
7403
7404 2004-04-14 Luc Teirlinck <teirllm@auburn.edu>
7405
7406 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
7407 Add hyperlink to Elisp manual to the docstring.
7408
7409 2004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
7410
7411 * callint.c (fix_command): Use XDCR.
7412
7413 2004-04-14 Nick Roberts <nick@nick.uklinux.net>
7414
7415 * window.c (Fget_lru_window): Doc fix.
7416
7417 2004-04-14 Kim F. Storm <storm@cua.dk>
7418
7419 * editfns.c (Fformat): Fix allocation size of precision array.
7420
7421 * dispnew.c (update_window): Only set changed_p if
7422 scrolling_window actually did scroll.
7423 (scrolling_window): Only return 1 if we actually did scroll.
7424
7425 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
7426 height to glyph height when cursor row is not fully visible.
7427 (make_cursor_line_fully_visible): Add FORCE_P arg to return
7428 failure in case row is higher than window. Callers changed.
7429 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
7430 Try to scroll partially visible, higher-than-window cursor row.
7431 (redisplay_window): Always try to scroll partially visible,
7432 higher-than-window cursor row - both initially and again with
7433 centering_position = 0.
7434 Clear desired matrix before retrying with centering_position = 0.
7435
7436 2004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
7437
7438 * syntax.c (scan_lists): Simplify backward string scan.
7439 Fix off-by-one boundary check for string and comment fences.
7440
7441 2004-04-13 Joe Buehler <jbuehler@hekimian.com>
7442
7443 * sheap.c, unexcw.c: New files.
7444
7445 2004-04-12 Luc Teirlinck <teirllm@auburn.edu>
7446
7447 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
7448 base buffer has been killed. Correct the error message if the
7449 base buffer does not exist.
7450
7451 2004-04-12 Joe Buehler <jbuehler@hekimian.com>
7452
7453 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
7454 Cygwin itself. Add support for Xaw3d scrollbars.
7455
7456 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
7457
7458 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
7459
7460 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
7461 before Cygwin unexec.
7462
7463 * Makefile.in: Link changes for Cygwin unexec() support.
7464
7465 2004-04-12 Andreas Schwab <schwab@suse.de>
7466
7467 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
7468
7469 2004-04-11 Luc Teirlinck <teirllm@auburn.edu>
7470
7471 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
7472 IGNORE argument equals NAME. Doc fix.
7473
7474 2004-04-11 Masatake YAMATO <jet@gyve.org>
7475
7476 * buffer.c (fix_start_end_in_overlays): Make overlays
7477 empty if they are backwards.
7478
7479 2004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
7480
7481 * xfaces.c (face_color_supported_p): Fix compilation without X11.
7482
7483 2004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
7484
7485 * doc.c (Fsnarf_documentation): Ignore new file name entries.
7486
7487 2004-04-06 Kim F. Storm <storm@cua.dk>
7488
7489 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
7490 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
7491
7492 * w32term.c (w32_read_socket): Set mouse_face_hidden after
7493 clearing highlight.
7494
7495 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
7496
7497 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
7498 clearing highlight.
7499
7500 * indent.c (vmotion): Do not reserve one column for continuation
7501 marks on window frames.
7502
7503 2004-04-04 Eli Zaretskii <eliz@gnu.org>
7504
7505 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
7506 from GCC.
7507
7508 2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
7509
7510 * .gdbinit-union: Remove.
7511
7512 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
7513 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
7514 ($nonvalbits): Remove.
7515 ($valmask): Set it by calling xreload to avoid redundancy.
7516
7517 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
7518 (gdb_emacs_intbits): Remove.
7519
7520 2004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7521
7522 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
7523
7524 2004-03-30 Kenichi Handa <handa@m17n.org>
7525
7526 * editfns.c (Fformat): Fix initialization of the array info.
7527
7528 2004-03-30 Kim F. Storm <storm@cua.dk>
7529
7530 * xterm.c (x_mouse_click_focus_ignore_position): New var.
7531 (syms_of_xterm): DEFVAR_BOOL it.
7532 (ignore_next_mouse_click_timeout): New var.
7533 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
7534 Use it to filter mouse clicks following focus event.
7535
7536 2004-03-29 David Ponce <david@dponce.com>
7537
7538 * callint.c (Fcall_interactively): Fix last change.
7539
7540 2004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
7541
7542 * eval.c (Fcommandp): Simplify.
7543
7544 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
7545 Extend to handle all kinds of functions.
7546
7547 * lisp.h (Finteractive_form): Declare.
7548
7549 * callint.c (Fcall_interactively): Use it.
7550
7551 2004-03-26 Kim F. Storm <storm@cua.dk>
7552
7553 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
7554 to catch errors in calc_pixel_width_or_height during redisplay.
7555
7556 2004-03-26 Masatake YAMATO <jet@gyve.org>
7557
7558 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
7559
7560 * lisp.h (fix_start_end_in_overlays): Likewise.
7561
7562 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
7563
7564 * editfns.c (Ftranspose_regions): Likewise.
7565
7566 2004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7567
7568 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
7569
7570 2004-03-19 Richard M. Stallman <rms@gnu.org>
7571
7572 * s/sol2-6.h: Delete previous change.
7573
7574 2004-03-19 Kim F. Storm <storm@cua.dk>
7575
7576 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
7577 to_charpos corresponds to newline in right fringe. Use local
7578 BUFFER_POS_REACHED_P macro.
7579
7580 2004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7581
7582 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
7583 to compile on non-window system.
7584
7585 2004-03-19 Kim F. Storm <storm@cua.dk>
7586
7587 * dispextern.h (calc_pixel_width_or_height): Add prototype.
7588
7589 * image.c (Qcenter): Move to xdisp.c.
7590
7591 * xdisp.c (Qcenter): Declare here.
7592 (syms_of_xdisp): Intern and staticpro it.
7593 (handle_single_display_prop): Allow space display property on all
7594 platforms.
7595 (display_mode_line): Set mode_line_p before displaying line.
7596 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
7597 handling. Remove complex cases for fringes and scroll-bars.
7598 Add left, right, and center alignment positions. Add text (area)
7599 width/height. Return width or height for image specs.
7600 (produce_stretch_glyph): Improve handling of :align-to. Is now
7601 relative to left of text area by default, but other base offsets
7602 can be specified -- also for text lines.
7603
7604 * term.c (produce_glyphs): Handle IT_STRETCH.
7605 (produce_stretch_glyph): New function to handle space width and
7606 align-to display properties on non-window systems.
7607
7608 2004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
7609
7610 * fileio.c (Fread_file_name): Set completion-ignore-case for
7611 case-insensitive systems.
7612
7613 2004-03-14 Masatake YAMATO <jet@gyve.org>
7614
7615 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
7616 when keymap and cursor are setup.
7617
7618 2004-03-14 Steven Tamm <steventamm@mac.com>
7619
7620 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
7621
7622 2004-03-14 Kim F. Storm <storm@cua.dk>
7623
7624 * dispextern.h (x_find_image_file): Add prototype.
7625
7626 * image.c (x_find_image_file): Make extern.
7627
7628 * xfns.c (x_find_image_file): Remove prototype.
7629
7630 2004-03-13 Eli Zaretskii <eliz@gnu.org>
7631
7632 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
7633
7634 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
7635
7636 2004-03-12 Richard M. Stallman <rms@gnu.org>
7637
7638 * fns.c (internal_equal): New arg PROPS controls comparing
7639 text properties. All callers changed.
7640 (Fequal_including_properties): New function.
7641 (syms_of_fns): defsubr it.
7642
7643 2004-03-12 Kim F. Storm <storm@cua.dk>
7644
7645 Fix image support on MAC. From YAMAMOTO Mitsuharu.
7646
7647 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
7648 (image_background, image_background_transparent): Fix prototypes.
7649
7650 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
7651
7652 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
7653 (x_query_font, x_find_ccl_program, x_set_window_size)
7654 (x_make_frame_visible, mac_initialize, XCreatePixmap)
7655 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
7656 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
7657
7658 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
7659 (x_query_font, x_find_ccl_program, x_set_window_size)
7660 (x_make_frame_visible, mac_initialize, XCreatePixmap)
7661 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
7662 (mac_draw_line_to_pixmap): Add prototypes.
7663
7664 2004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7665
7666 * macterm.c (XTread_socket): Fix mouse click on tool bar.
7667
7668 2004-03-11 Kim F. Storm <storm@cua.dk>
7669
7670 * dispextern.h: Move image related prototypes from xfns.c section
7671 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
7672 HAVE_X_WINDOWS.
7673
7674 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
7675 Move gtkutil.o to new GTK_OBJ list.
7676 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
7677 (GTK_OBJ) [USE_GTK]: New declaration.
7678 (obj): Add $(GTK_OBJ) to list.
7679
7680 2004-03-11 Steven Tamm <steventamm@mac.com>
7681
7682 * image.c [MAC_OSX]: Include sys/stat.h.
7683
7684 * macfns.c (syms_of_macfns): Remove definitions of things now
7685 defined in image.c.
7686
7687 2004-03-11 Kim F. Storm <storm@cua.dk>
7688
7689 The following changes consolidates the identical/similar image
7690 support code previously found in xfns.c, w32fns.c, and macfns.c
7691 into a new file image.c.
7692
7693 * makefile.w32-in (OBJ1): Add image.o.
7694 ($(BLD)/image.$(O)): Add dependencies.
7695
7696 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
7697 (image.o): Add dependencies.
7698
7699 * image.c: New file with consolidated image support code.
7700 (COLOR_TABLE_SUPPORT): New define to control whether
7701 color table support is available (X only).
7702 (Bitmap_Record): Common name for x_bitmap_record,
7703 w32_bitmap_record, and mac_bitmap_record.
7704 (XImagePtr): Common name for pointer to XImage or equivalent.
7705 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
7706 to XImagePtr on X+MAC, and to HDC on W32.
7707 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
7708 (NO_PIXMAP): Common name for "None" or equivalent.
7709 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
7710 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
7711 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
7712 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
7713 Define with suitable equivalents on W32 and MAC for code sharing.
7714 (XDrawLine): Define on MAC for code sharing.
7715 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
7716 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
7717 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
7718 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
7719 (x_reference_bitmap, x_create_bitmap_from_data)
7720 (x_create_bitmap_from_file, x_destroy_bitmap)
7721 (x_destroy_all_bitmaps, x_create_bitmap_mask)
7722 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
7723 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
7724 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
7725 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
7726 (define_image_type, lookup_image_type, valid_image_p)
7727 (image_error, enum image_value_type, struct image_keyword)
7728 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
7729 (make_image, free_image, prepare_image_for_display, image_ascent)
7730 (four_corners_best, image_background, image_background_transparent)
7731 (x_clear_image_1, x_clear_image, x_alloc_image_color)
7732 (make_image_cache, free_image_cache, clear_image_cache)
7733 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
7734 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
7735 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
7736 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
7737 (init_image_func_pointer, image_load_quartz2d)
7738 (struct ct_color, init_color_table, free_color_table)
7739 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
7740 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
7741 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
7742 (x_disable_image, x_build_heuristic_mask)
7743 (XBM support, XPM support, PBM support, PNG support, JPEG support)
7744 (TIFF support, GIF support, Ghostscript support): Consolidate image
7745 code from xfns.c, w32fns.c, and macfns.c.
7746 (syms_of_image): Consolidate image related symbol setup here.
7747 (init_image): Consolidate image related initializations here.
7748
7749 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
7750 and init_image. Remove call to init_xfns.
7751
7752 * macterm.h (struct mac_bitmap_record): Add file member.
7753 Not currently used, but simplifies code sharing.
7754
7755 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
7756 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
7757 (x_reference_bitmap, x_create_bitmap_from_data)
7758 (x_create_bitmap_from_file, x_destroy_bitmap)
7759 (x_destroy_all_bitmaps, x_create_bitmap_mask)
7760 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
7761 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
7762 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
7763 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
7764 (define_image_type, lookup_image_type, valid_image_p)
7765 (image_error, enum image_value_type, struct image_keyword)
7766 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
7767 (make_image, free_image, prepare_image_for_display, image_ascent)
7768 (four_corners_best, image_background, image_background_transparent)
7769 (x_clear_image_1, x_clear_image, x_alloc_image_color)
7770 (make_image_cache, free_image_cache, clear_image_cache)
7771 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
7772 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
7773 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
7774 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
7775 (init_image_func_pointer, image_load_quartz2d)
7776 (struct ct_color, init_color_table, free_color_table)
7777 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
7778 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
7779 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
7780 (x_disable_image, x_build_heuristic_mask)
7781 (XBM support, XPM support, PBM support, PNG support, JPEG support)
7782 (TIFF support, GIF support, Ghostscript support): Merge with image
7783 code from xfns.c and macfns.c into image.c.
7784 (syms_of_xfns): Move image related symbols to image.c.
7785 (init_external_image_libraries, init_xfns): Remove; initialization
7786 moved to init_image in image.c.
7787
7788 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
7789 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
7790 (x_reference_bitmap, x_create_bitmap_from_data)
7791 (x_create_bitmap_from_file, x_destroy_bitmap)
7792 (x_destroy_all_bitmaps, x_create_bitmap_mask)
7793 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
7794 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
7795 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
7796 (define_image_type, lookup_image_type, valid_image_p)
7797 (image_error, enum image_value_type, struct image_keyword)
7798 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
7799 (make_image, free_image, prepare_image_for_display, image_ascent)
7800 (four_corners_best, image_background, image_background_transparent)
7801 (x_clear_image_1, x_clear_image, x_alloc_image_color)
7802 (make_image_cache, free_image_cache, clear_image_cache)
7803 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
7804 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
7805 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
7806 (struct ct_color, init_color_table, free_color_table)
7807 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
7808 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
7809 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
7810 (x_disable_image, x_build_heuristic_mask)
7811 (XBM support, XPM support, PBM support, PNG support, JPEG support)
7812 (TIFF support, GIF support, Ghostscript support): Merge with image
7813 code from xfns.c and macfns.c into image.c.
7814 (syms_of_xfns): Move image related symbols to image.c.
7815 (init_external_image_libraries, init_xfns): Remove; initialization
7816 moved to init_image in image.c.
7817
7818 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
7819 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
7820 (x_reference_bitmap, x_create_bitmap_from_data)
7821 (x_create_bitmap_from_file, x_destroy_bitmap)
7822 (x_destroy_all_bitmaps, x_create_bitmap_mask)
7823 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
7824 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
7825 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
7826 (define_image_type, lookup_image_type, valid_image_p)
7827 (image_error, enum image_value_type, struct image_keyword)
7828 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
7829 (make_image, free_image, prepare_image_for_display, image_ascent)
7830 (four_corners_best, image_background, image_background_transparent)
7831 (x_clear_image_1, x_clear_image, x_alloc_image_color)
7832 (make_image_cache, free_image_cache, clear_image_cache)
7833 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
7834 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
7835 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
7836 (struct ct_color, init_color_table, free_color_table)
7837 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
7838 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
7839 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
7840 (x_disable_image, x_build_heuristic_mask)
7841 (XBM support, XPM support, PBM support, PNG support, JPEG support)
7842 (TIFF support, GIF support, Ghostscript support): Merge with
7843 w32fns.c and macfns.c image code into image.c.
7844 (syms_of_xfns): Move image related symbols to image.c.
7845 (init_xfns): Remove; initialization moved to init_image in image.c.
7846
7847 * lisp.h (syms_of_image, init_image): Add protoypes.
7848 (init_xfns): Remove prototype.
7849
7850 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
7851 (x_reference_bitmap, x_create_bitmap_from_data)
7852 (x_create_bitmap_from_file, x_destroy_bitmap)
7853 (x_create_bitmap_mask): Move prototypes from dispextern.h.
7854 (gamma_correct) [MAC_OS]: Add prototype.
7855
7856 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
7857 (x_reference_bitmap, x_create_bitmap_from_data)
7858 (x_create_bitmap_from_file, x_destroy_bitmap)
7859 (x_create_bitmap_mask): Move prototypes to dispextern.h.
7860
7861 2004-03-09 Kenichi Handa <handa@etlken2>
7862
7863 * coding.c (decode_coding_emacs_mule): Handle insufficent source
7864 correctly.
7865
7866 2004-03-04 Richard M. Stallman <rms@gnu.org>
7867
7868 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
7869
7870 * window.c (Fdisplay_buffer): Doc fix.
7871
7872 * buffer.c (Fpop_to_buffer): Doc fix.
7873
7874 2004-03-03 Kim F. Storm <storm@cua.dk>
7875
7876 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
7877
7878 2004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
7879
7880 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
7881
7882 2004-03-02 Richard M. Stallman <rms@gnu.org>
7883
7884 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
7885
7886 2004-03-02 Kenichi Handa <handa@m17n.org>
7887
7888 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
7889
7890 2004-03-02 Kim F. Storm <storm@cua.dk>
7891
7892 * window.h (struct window): New member overlay_arrow_bitmap.
7893
7894 * window.c (make_window): Initialize overlay_arrow_bitmap.
7895
7896 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
7897 implement and integrate multiple overlay arrows with redisplay.
7898 (syms_of_xdisp): DEFVAR_LISP and initialize it.
7899 (last_arrow_position, last_arrow_string): Replace by properties.
7900 (Qlast_arrow_position, Qlast_arrow_string)
7901 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
7902 (syms_of_xdisp): Intern and staticpro them.
7903 (overlay_arrow_string_or_property, update_overlay_arrows)
7904 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
7905 (overlay_arrow_at_row): New functions for multiple overlay arrows.
7906 (redisplay_internal): Use them instead of directly accessing
7907 Voverlay_arrow_position etc. for multiple overlay arrows.
7908 (mark_window_display_accurate): Use update_overlay_arrows.
7909 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
7910 (try_window_id): Use overlay_arrows_changed_p.
7911 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
7912 (display_line): Use overlay_arrow_at_row to check multiple
7913 overlay arrows, and get relevant overlay-arrow-string and
7914 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
7915 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
7916 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
7917
7918 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
7919 (update_window_fringes): Remove unused code.
7920
7921 2004-03-01 Jason Rumney <jasonr@gnu.org>
7922
7923 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
7924
7925 2004-03-01 Juanma Barranquero <lektu@terra.es>
7926
7927 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
7928
7929 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
7930
7931 2004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7932
7933 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
7934 how many colors can be displayed.
7935
7936 2004-03-01 Kenichi Handa <handa@m17n.org>
7937
7938 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
7939 correctly.
7940
7941 2004-02-28 Kim F. Storm <storm@cua.dk>
7942
7943 * dispnew.c (update_window): Update header line also if there are
7944 no other changes in window (move code after set_cursor label).
7945
7946 * lisp.h (mark_window_display_accurate): Remove prototype.
7947
7948 * window.c (window_loop, Fforce_window_update): Force mode line
7949 updates by setting prevent_redisplay_optimizations_p and
7950 update_mode_lines.
7951
7952 2004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7953
7954 * xfns.c (x_window): Fix indentation.
7955
7956 * xterm.c (x_calc_absolute_position): Call x_real_positions
7957 to get WM window sizes and use those to calculate position.
7958 (x_set_offset): Remove code commented out.
7959
7960 2004-02-28 Miles Bader <miles@gnu.org>
7961
7962 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
7963
7964 2004-02-28 Kim F. Storm <storm@cua.dk>
7965
7966 * keyboard.c (kbd_buffer_store_event_hold): New function to store
7967 an event into kbd fifo, but with special handling of quit event;
7968 a quit event is saved for later, and further events are discarded
7969 until the saved quit event has been processed.
7970 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
7971 (gen_help_event): Store help event in kbd fifo.
7972 (NREAD_INPUT_EVENTS): Remove.
7973 (read_avail_input): Adapt to new read_socket_hook interface.
7974 Remove allocation and initialization of local input_event buffer,
7975 as read_socket_hook stores events directly in fifo. Allocate and
7976 initialize local hold_quit event to handle postponed quit event
7977 (and store it if set by kbd_buffer_store_event_hold).
7978
7979 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
7980 (gen_help_event): Fix prototype.
7981
7982 * macterm.c (XTread_socket): Remove bufp_r and
7983 numcharsp args. Add hold_quit arg.
7984 Rework to use just one, local, inev input_event. Store inev
7985 directly in fifo using kbd_buffer_store_event_hold.
7986
7987 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
7988 (read_input_waiting): Adapt to new read_socket_hook interface.
7989 Remove allocation and initialization of local input_event buffer,
7990 as read_socket_hook stores events directly in fifo. Allocate and
7991 initialize local hold_quit event to handle postponed quit event
7992 (and store it if set by kbd_buffer_store_event_hold).
7993
7994 * term.c (read_socket_hook): Fix arg list.
7995
7996 * termhooks.h (read_socket_hook): Fix prototype.
7997
7998 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
7999 numcharsp args. Add hold_quit arg.
8000 Rework to use just one, local, inev input_event. Store inev
8001 directly in fifo using kbd_buffer_store_event_hold.
8002
8003 * w32inevt.h (w32_console_mouse_position): Fix prototype.
8004
8005 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
8006 Add hold_quit arg. Rework to use just one, local, inev
8007 input_event. Store inev directly in fifo using
8008 kbd_buffer_store_event_hold. Update count in one place.
8009 Postpone call to gen_help_event until inev is stored; use new
8010 local do_help for this.
8011 Remove local emacs_event in handing of ButtonPress event; just use
8012 inev instead (so no reason to copy it later).
8013
8014 * xsmfns.c (x_session_check_input): Remove numchars arg.
8015
8016 * xterm.c (x_focus_changed, x_detect_focus_change):
8017 Remove numchars arg. Always store event into bufp arg.
8018 Return nothing. Callers changed accordingly.
8019 (glyph_rect): Simplify.
8020 (STORE_KEYSYM_FOR_DEBUG): New macro.
8021 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
8022 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
8023 (current_hold_quit) [USE_GTK]: Add.
8024 (event_handler_gdk): Adapt to new handle_one_xevent.
8025 (handle_one_xevent): Remove bufp_r and numcharsp args.
8026 Add hold_quit arg. Rework to use just one, local, inev
8027 input_event. Store inev directly in fifo using
8028 kbd_buffer_store_event_hold. Update count in one place.
8029 Postpone call to gen_help_event until inev is stored; use new
8030 local do_help for this.
8031 Simplify handling of keysyms (consolidate common code). Fix bug
8032 where count was updated with nchars instead of nbytes.
8033 Remove local emacs_event in handing of ButtonPress event; just use
8034 inev instead (so no reason to copy it later).
8035 Remove `out' label. Rename label `ret' to `done'; add various
8036 `goto done' to clarify code flow in deeply nested blocks.
8037 (x_dispatch_event): Simplify as handle_one_xevent now calls
8038 kbd_buffer_store_event itself.
8039 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
8040 arg. Call handle_one_xevent with new arglist. Store event from
8041 x_session_check_input in fifo.
8042 [USE_GTK]: Setup current_hold_quit.
8043 Decrement handling_signal before unblocking input.
8044 (x_initialize) [USE_GTK]: Initialize current_count.
8045
8046 * xterm.h (x_session_check_input): Fix prototype.
8047
8048 2004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8049
8050 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
8051
8052 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
8053 macgui.h).
8054
8055 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
8056
8057 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
8058 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
8059 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
8060 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
8061 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
8062 (Bitmap): Remove typedef.
8063 (Pixmap): Change int to GWorldPtr.
8064
8065 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
8066
8067 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
8068 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
8069 New #define to extract 16-bit depth color components from unsigned
8070 long representation.
8071 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
8072 colors used for masks.
8073 (struct mac_display_info): Add color_p. Remove n_cbits.
8074
8075 * macfns.c: Include sys/types.h and sys/stat.h.
8076 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
8077 Include QuickTime/QuickTime.h.
8078 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
8079 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
8080 functions defined in macterm.c.
8081 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
8082 (ZPixmap): New #define for compatibility with xfns.c.
8083 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
8084 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
8085 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
8086 New functions.
8087 (four_corners_best, x_create_x_image_and_pixmap)
8088 (x_destroy_x_image, unwind_create_frame, x_disable_image)
8089 (x_edge_detection, init_color_table, colors_in_color_table)
8090 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
8091 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
8092 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
8093 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
8094 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
8095 long mixup.
8096 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
8097 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
8098 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
8099 (x_set_cursor_type, Fxw_color_values, valid_image_p)
8100 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
8101 (x_alloc_image_color, clear_image_cache, lookup_image)
8102 (x_find_image_file, xbm_read_bitmap_file_data)
8103 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
8104 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
8105 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
8106 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
8107 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
8108 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
8109 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
8110 #if 0.
8111 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
8112 #if 0. Free white_relief.gc and black_relief.gc.
8113 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
8114 New functions (from xfns.c).
8115 (Fx_create_frame): Record unwind_create_frame.
8116 (Fxw_display_color_p): Use dpyinfo->color_p.
8117 (Fx_display_grayscale_p, Fx_display_planes): Don't use
8118 dpyinfo->n_cbits.
8119 (Fx_display_color_cells): Use dpyinfo->n_planes;
8120 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
8121 (Qheuristic, cross_disabled_images, emboss_matrix)
8122 (laplace_matrix): New variables (from xfns.c).
8123 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
8124 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
8125 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
8126 (image_background_transparent): New function (from xfns.c).
8127 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
8128 (image_load_quicktime): Add declaration.
8129 [MAC_OSX] (image_load_quartz2d): Likewise.
8130 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
8131 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
8132 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
8133 (xbm_load_image_from_file, x_laplace_read_row)
8134 (x_laplace_write_row, pbm_read_file): Remove functions.
8135 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
8136 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
8137 (colors_in_color_table): Sync with xfns.c (although not used).
8138 (lookup_rgb_color): Don't lookup color table. Just do gamma
8139 correction.
8140 (COLOR_INTENSITY): New #define (from xfns.c).
8141 (x_disable_image): New function (from xfns.c).
8142 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
8143 (x_build_heuristic_mask): Sync with xfns.c.
8144 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
8145 (HAVE_PBM): Remove #ifdef.
8146 (pbm_load): Sync with xfns.c. Set img->width and img->height
8147 before IMAGE_BACKGROUND.
8148 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
8149 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
8150 Don't enclose with #if HAVE_PNG.
8151 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
8152 symbol _CGImageCreateWithPNGDataProvider is defined.
8153 Otherwise use image_load_quicktime.
8154 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
8155 [HAVE_PNG] (png_load): Sync with xfns.c.
8156 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
8157 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
8158 HAVE_JPEG.
8159 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
8160 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
8161 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
8162 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
8163 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
8164 (tiff_image_p, tiff_load): Don't enclose declarations with #if
8165 HAVE_TIFF.
8166 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
8167 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
8168 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
8169 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
8170 New functions (from xfns.c).
8171 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
8172 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
8173 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
8174 Don't enclose with #if HAVE_GIF.
8175 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
8176 animated gif. Otherwise use image_load_quicktime.
8177 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
8178 gif_DrawText to avoid conflict with QuickdrawText.h.
8179 [HAVE_GIF] (gif_load): Sync with xfns.c.
8180 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
8181 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
8182 Ghostscript is not supported yet).
8183 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
8184 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
8185 cross_disabled_images (from xfns.c). Remove #if 0 for supported
8186 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
8187 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
8188 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
8189 HAVE_PNG. Call EnterMovies to support animated gifs.
8190 Call init_image_func_pointer to bind a symbol
8191 _CGImageCreateWithPNGDataProvider if it is defined.
8192
8193 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
8194 (x_draw_bar_cursor): Sync declaration with xterm.c.
8195 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
8196 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
8197 graphics).
8198 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
8199 (mac_draw_line_to_pixmap, XCreatePixmap)
8200 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
8201 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
8202 New functions.
8203 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
8204 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
8205 Cast bits to char *.
8206 (reflect_byte): New function (from w32fns.c).
8207 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
8208 due to byte alignment.
8209 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
8210 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
8211 (XSetForeground): Remove static (now used in macfns.c).
8212 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
8213 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
8214 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
8215 (x_draw_glyph_string_box, x_draw_image_foreground)
8216 (x_draw_image_foreground_1, x_draw_image_glyph_string)
8217 (x_draw_stretch_glyph_string, x_draw_glyph_string)
8218 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
8219 Sync with xterm.c.
8220 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
8221 than the xterm.c version when a strictly horizontal or vertical
8222 line is drawn.
8223 (XTset_terminal_window): Add static.
8224 (x_make_frame_visible): Add UNBLOCK_INPUT.
8225 (x_free_frame_resources): New funcion (from xterm.c).
8226 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
8227 occurs in tool bar area.
8228 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
8229 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
8230 Initialize image cache.
8231 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
8232 Enclose unused functions with #if 0.
8233 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
8234 (decode_mac_font_name): New function to apply code conversions
8235 from a mac font name to an XLFD font name according to its script code.
8236 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
8237 font name to a mac font name according to REGISTRY and ENCODING fields.
8238 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
8239 whose name starts with `.'.
8240 (init_font_name_table): Use decode_mac_font_name. Add both
8241 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
8242 of a font is smJapanese.
8243 (mac_do_list_fonts): New function to list fonts that match a given
8244 pattern.
8245 (x_list_fonts, XLoadQueryFont): Use it.
8246 (XLoadQueryFont): Set rbearing field for each variable width
8247 character to avoid needless redraw.
8248 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
8249
8250 2004-02-26 Kim F. Storm <storm@cua.dk>
8251
8252 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
8253 as read_socket_hook handler on X aborts if buffer is too small
8254 and W32 handler doesn't always check buffer limit.
8255
8256 * xdisp.c (handle_single_display_prop): Handle left-fringe and
8257 right-fringe similar to a display margin image. Specifically,
8258 the characters having the fringe prop are no longer shown, and
8259 we use IT_IMAGE/next_element_from_image with image_id = -1 to
8260 do this. Set fringe bitmap face_id in it->face_id.
8261 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
8262 still realize it->face (i.e. the fringe bitmap face).
8263
8264 2004-02-25 Miles Bader <miles@gnu.org>
8265
8266 * xdisp.c (check_it): Check string/string_pos consistency.
8267 (init_iterator): Initialize string-related fields properly.
8268
8269 2004-02-11 Miles Bader <miles@gnu.org>
8270
8271 * xdisp.c (produce_image_glyph): Force negative descents to zero.
8272
8273 2004-02-10 Miles Bader <miles@gnu.org>
8274
8275 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
8276 BLOCK_INPUT can be nested, so it doesn't make much sense.
8277
8278 2004-02-24 Michael Mauger <mmaug@yahoo.com>
8279
8280 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
8281 (xbm_read_bitmap_data): Use unsigned char for image data.
8282
8283 2004-02-23 Luc Teirlinck <teirllm@auburn.edu>
8284
8285 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
8286
8287 2004-02-22 Jason Rumney <jasonr@gnu.org>
8288
8289 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
8290 correctly over other bitmaps.
8291
8292 2004-02-21 Eli Zaretskii <eliz@gnu.org>
8293
8294 * emacs.c (USAGE1): Split into two halves.
8295 (USAGE2): Second half of the old USAGE1.
8296 (USAGE3): Rename from USAGE2.
8297 (USAGE4): Rename from USAGE3.
8298
8299 2004-02-21 Juri Linkov <juri@jurta.org>
8300
8301 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
8302 Fix --multibyte. Move --help, --version to USAGE2. Add alias
8303 --file. Fix -f, -l. Sort options. Untabify.
8304 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
8305
8306 2004-02-19 Luc Teirlinck <teirllm@auburn.edu>
8307
8308 * category.c (Fdefine_category, Fcategory_docstring)
8309 (Fget_unused_category, Fset_category_table)
8310 (Fcategory_set_mnemonics): Doc fixes.
8311
8312 2004-02-20 Kim F. Storm <storm@cua.dk>
8313
8314 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
8315 The following changes are relative to the 2004-01-21 revision.
8316 (NREAD_INPUT_EVENTS): Define as max number of input events to read
8317 in one call to read_socket_hook. Value is 8.
8318 (read_avail_input): Separate and rework handling of read_socket_hook
8319 and non-read_socket_hook cases. Use smaller input_event buffer
8320 in read_socket_hook case, and repeat if full buffer is read.
8321 Use new local variable 'discard' to skip input after C-g.
8322 In non-read_socket_hook case, just use a single input_event, and
8323 call kbd_buffer_store_event on the fly for each character.
8324
8325 2004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
8326
8327 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
8328 Remove unused `gu' alternative.
8329
8330 2004-02-19 Andreas Schwab <schwab@suse.de>
8331
8332 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
8333 warning.
8334
8335 2004-02-18 Kim F. Storm <storm@cua.dk>
8336
8337 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
8338 Fix last change.
8339
8340 2004-02-17 Kim F. Storm <storm@cua.dk>
8341
8342 * xdisp.c (fast_find_position): Fix return value of new version;
8343 it was inverted compared to the 21.1 version.
8344 (get_window_cursor_type): Don't look at glyph if NULL.
8345 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
8346
8347 * keyboard.c: Rework previous change; it didn't consider that the
8348 buf array was allocated on the stack.
8349 (prev_read): Remove variable.
8350 (read_avail_input_buf): New static event buffer array.
8351 (in_read_avail_input): New static variable to handle re-entrancy.
8352 (read_avail_input): Change buf to pinter to read_avail_input_buf.
8353 Use in_read_avail_input to handle re-entrance; when re-entered,
8354 fully initialize and use tmp_buf array instead of read_avail_input_buf.
8355 Do not initialize read_avail_input_buf in full here; instead assume it
8356 is always cleared on entry. To ensure that, we clear (just) the
8357 entries that were used before we return.
8358 (init_keyboard): Initialize read_avail_input_buf here.
8359
8360 2004-02-16 Jesper Harder <harder@ifa.au.dk>
8361
8362 * cmds.c (Fend_of_line): Doc fix.
8363
8364 2004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
8365
8366 * keyboard.c (prev_read): New static variable.
8367 (read_avail_input): Use it to zero out only those slots in buf[]
8368 that were used last time we were called.
8369
8370 2004-02-16 Eli Zaretskii <eliz@gnu.org>
8371
8372 * Makefile.in (obj): Move fringe.o from here...
8373 (XOBJ, MAC_OBJ): ...to here.
8374
8375 2004-02-16 Stephen Eglen <stephen@gnu.org>
8376
8377 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
8378
8379 2004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
8380
8381 * data.c (Fbyteorder):
8382 * fringe.c (Fdefine_fringe_bitmap):
8383 * xdisp.c (handle_single_display_prop):
8384 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
8385
8386 2004-02-16 Jason Rumney <jasonr@gnu.org>
8387
8388 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
8389
8390 2004-02-15 Steven Tamm <steventamm@mac.com>
8391
8392 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
8393 controlling emulation of a three button mouse with option and
8394 command keys.
8395 (Qreverse, mac_get_enumlated_btn): Handle the emulation.
8396 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
8397
8398 2004-02-15 Kim F. Storm <storm@cua.dk>
8399
8400 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
8401
8402 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
8403 Perform byte-swapping.
8404
8405 2004-02-14 Kim F. Storm <storm@cua.dk>
8406
8407 * dispextern.h (struct draw_fringe_bitmap_params): Change member
8408 bits from char to short to facilitate wider bitmaps.
8409 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
8410 member.
8411
8412 * fringe.c (struct fringe_bitmap): Change member bits from char to
8413 short to facilitate 16 bits wide bitmaps. Modify all standard
8414 bitmaps accordingly.
8415 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
8416 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
8417 (draw_fringe_bitmap): Ditto.
8418 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
8419 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
8420 handle up to 16 bits wide bitmaps.
8421 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
8422 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
8423
8424 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
8425 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
8426 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
8427
8428 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
8429 so it is no longer necessary to expand them here.
8430
8431 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
8432
8433 2004-02-12 Kim F. Storm <storm@cua.dk>
8434
8435 * window.c (Fwindow_fringes): Doc fix.
8436
8437 2004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8438
8439 * xselect.c (x_get_foreign_selection): Add new optional parameter
8440 time_stamp.
8441 (Fx_get_selection_internal): Ditto, pass time_stamp to
8442 x_get_foreign_selection.
8443
8444 * data.c (Fbyteorder): New function.
8445
8446 2004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8447
8448 * atimer.c: Move include stdio.h to same place as in other files.
8449
8450 * region-cache.c: Ditto.
8451
8452 * sysdep.c: Ditto.
8453
8454 * xfaces.c: Ditto.
8455
8456 2004-02-09 Sam Steingold <sds@gnu.org>
8457
8458 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
8459
8460 2004-02-09 Kim F. Storm <storm@cua.dk>
8461
8462 * fringe.c: New file. Move original fringe related declarations
8463 and code from dispextern.h and xdisp.c here.
8464 Rework code to support user defined fringe bitmaps, redefining
8465 standard bitmaps, ability to overlay user defined bitmap with
8466 overlay arrow bitmap, and add faces to bitmaps.
8467 (Voverflow_newline_into_fringe): Declare here.
8468 (enum fringe_bitmap_align): New enum.
8469 (..._bits): All bitmaps are now defined without bitswapping; that
8470 is now done in init_fringe_once (if necessary).
8471 (standard_bitmaps): New array with specifications for the
8472 standard fringe bitmaps.
8473 (fringe_faces): New array.
8474 (valid_fringe_bitmap_id_p): New function.
8475 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
8476 (draw_fringe_bitmap): New function which draws fringe bitmap,
8477 possibly overlaying bitmap with cursor in right fringe or the
8478 overlay arrow in the left fringe.
8479 (update_window_fringes): Do not handle overlay arrow here.
8480 Compare and copy fringe bitmap faces.
8481 (init_fringe_bitmap): New function.
8482 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
8483 define and destroy user defined fringe bitmaps.
8484 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
8485 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
8486 (syms_of_fringe): New function. Defsubr new DEFUNs.
8487 DEFVAR_LISP Voverflow_newline_into_fringe.
8488 (init_fringe_once, init_fringe): New functions.
8489 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
8490
8491 * Makefile.in (obj): Add fringe.o.
8492 (fringe.o): New dependencies.
8493
8494 * dispextern.h (FRINGE_ID_BITS): New definition for number of
8495 bits allocated to hold a fringe number. Increase number of bits
8496 from 4 to 8 to allow user defined fringe bitmaps.
8497 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
8498 left_user_fringe_face_id, right_user_fringe_bitmap,
8499 right_user_fringe_face_id.
8500 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
8501 Move to new file fringe.c.
8502 (MAX_FRINGE_BITMAPS): Define here.
8503 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
8504 and overlay_p. Change member which to int.
8505 (struct redisplay_interface): New members define_fringe_bitmap
8506 and destroy_fringe_bitmap.
8507 (valid_fringe_bitmap_id_p): Add prototype.
8508 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
8509
8510 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
8511 arrows.
8512 (update_frame): Do flush_display if force_flush_display_p to
8513 ensure display (specifically fringes) are updated in a timely
8514 manner when resizing the frame by dragging the mouse.
8515 (update_window_line): Update row if overlay arrow changed.
8516 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
8517 or overlay arrow changed.
8518
8519 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
8520 syms_of_fringe, and init_fringe.
8521
8522 * frame.h (struct frame): New member force_flush_display_p.
8523
8524 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
8525 Add prototypes.
8526
8527 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
8528 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
8529 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
8530 Use cursor color for displaying cursor in fringe.
8531 (x_redisplay_interface): Add null handlers for
8532 define_fringe_bitmap and destroy_fringe_bitmap functions.
8533
8534 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
8535 xterm.c to handle overlayed fringe bitmaps and to use cursor color
8536 for displaying cursor in fringe.
8537 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
8538 specific functions to define and destroy fringe bitmaps in fringe_bmp.
8539 (w32_redisplay_interface): Add them to redisplay_interface.
8540 (w32_term_init): Call w32_init_fringe instead of explicitly
8541 defining fringe bitmaps in fringe_bmp array.
8542 (x_delete_display): Call w32_reset_fringes instead of explicitly
8543 destroying fringe bitmaps in fringe_bmp array.
8544
8545 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
8546 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
8547 (continued_bits, continuation_bits, ov_bits, first_line_bits)
8548 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
8549 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
8550 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
8551 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
8552 Move fringe handling vars and code to new file fringe.c.
8553 (handle_display_prop): Handle left-fringe and right-fringe
8554 display properties; store user fringe bitmaps in iterator.
8555 (move_it_in_display_line_to): Handle cursor in fringe at eob.
8556 (clear_garbaged_frames): Set force_flush_display_p if resized.
8557 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
8558 (display_line): Handle cursor in fringe at eob.
8559 (display_line): Set row user fringe bitmaps from iterator.
8560
8561 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
8562 Use cursor color for displaying cursor in fringe.
8563 (x_redisplay_interface): Add null handlers for
8564 define_fringe_bitmap and destroy_fringe_bitmap functions.
8565
8566 2004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8567
8568 * macfns.c (Fx_change_window_property): Make doc string and
8569 parameters same as for X version.
8570
8571 * w32fns.c (Fx_change_window_property): Ditto.
8572
8573 2004-02-07 Kim F. Storm <storm@cua.dk>
8574
8575 * xdisp.c (hscroll_window_tree): Position cursor near to right
8576 margin in hscrolled window when jumping to end of line (rather
8577 than centering cursor).
8578
8579 * process.c (wait_reading_process_input): Don't do adaptive read
8580 buffering if waiting for a specific process.
8581
8582 2004-02-05 Luc Teirlinck <teirllm@auburn.edu>
8583
8584 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
8585 (Fread_minibuffer, Feval_minibuffer)
8586 (Fread_string, Fread_no_blanks_input)
8587 (Fcompleting_read): Doc fixes.
8588 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
8589 completion-regexp-list. Define Qcase_fold_search and staticpro it.
8590 (read_minibuf): Fix initial comment.
8591 (Ftry_completion, Fall_completions, Ftest_completion): Bind
8592 case-fold-search to the value of completion-ignore-case when
8593 checking completion-regexp-list.
8594 (Fdisplay_completion_list): Make it handle arguments that are
8595 symbols. Doc fix.
8596
8597 2004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8598
8599 * xterm.h: Add declaration of free_frame_menubar.
8600
8601 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
8602 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
8603 (Fx_change_window_property): Add declaration of parameters type and
8604 format. Remove unused variable cons.
8605
8606 * xselect.c: Include stdio,h.
8607
8608 2004-02-05 Kenichi Handa <handa@m17n.org>
8609
8610 * fns.c (Fset_char_table_range): Fix previous change.
8611
8612 * buffer.c (Fset_buffer_multibyte): Fix docstring.
8613
8614 2004-02-04 Luc Teirlinck <teirllm@auburn.edu>
8615
8616 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
8617
8618 2004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
8619
8620 * keymap.c (Vmouse_events): Rename from Vmenu_events.
8621 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
8622
8623 2004-02-04 Kenichi Handa <handa@m17n.org>
8624
8625 * fns.c (Fset_char_table_range): Handle charsets ascii,
8626 eight-bit-control, and eight-bit-graphic correctly.
8627
8628 2004-02-03 Jason Rumney <jasonr@gnu.org>
8629
8630 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
8631
8632 * w32fns.c (x_to_w32_font): Likewise.
8633
8634 2004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8635
8636 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
8637 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
8638
8639 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
8640 ClientMessages.
8641
8642 * xselect.c: Include termhooks.h and X11/Xproto.h
8643 (x_check_property_data, x_fill_property_data)
8644 (x_property_data_to_lisp, mouse_position_for_drop)
8645 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
8646 (Fx_send_client_event): Move here from xfns.c.
8647 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
8648
8649 * xfns.c (x-send-client-message): Move to xselect.c
8650 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
8651 OUTER_P.
8652 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
8653 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
8654 if vector_ret_p is true.
8655 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
8656
8657 2004-02-02 Eli Zaretskii <eliz@gnu.org>
8658
8659 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
8660 basename of FILE relative to it, not FILE itself.
8661
8662 2004-02-02 Kenichi Handa <handa@m17n.org>
8663
8664 * coding.c (coding_restore_composition): Check invalid
8665 composition data more rigidly.
8666
8667 2004-01-30 Luc Teirlinck <teirllm@auburn.edu>
8668
8669 * fileio.c (Fread_file_name_internal): Correctly handle the case
8670 where insert-default-directory is nil.
8671 (Fread_file_name): Always return an empty string if the user exits
8672 with an empty minibuffer. Adapt the docstring accordingly.
8673 (syms_of_fileio): Adapt the docstring of insert-default-directory
8674 to the change in Fread_file_name.
8675
8676 2004-01-29 Eli Zaretskii <eliz@gnu.org>
8677
8678 * alloca.c [!alloca]: Fix the prototype for xfree.
8679
8680 2004-01-29 Kenichi Handa <handa@m17n.org>
8681
8682 * fns.c (string_char_to_byte): Optimize for ASCII only string.
8683 (string_byte_to_char): Likewise.
8684
8685 2004-01-28 Peter Runestig <peter@runestig.com>
8686
8687 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
8688
8689 2004-01-27 Steven Tamm <steventamm@mac.com>
8690
8691 * unexmacosx.c (unexec_copy): Do not copy more than was
8692 requested to prevent overwriting during unexec.
8693
8694 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8695
8696 * process.c (sigchld_handler): Add comment about not calling malloc.
8697
8698 * process.h: Add extern to synch_process_termsig.
8699
8700 2004-01-27 Steven Tamm <steventamm@mac.com>
8701
8702 * macterm.c (make_mac_frame, make_mac_terminal_frame):
8703 Move setting of scroll bars from make_mac_frame to
8704 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
8705
8706 2004-01-26 Richard M. Stallman <rms@gnu.org>
8707
8708 * search.c (Freplace_match): Handle nonexistent
8709 back-references properly.
8710
8711 2004-01-03 Richard M. Stallman <rms@gnu.org>
8712
8713 * window.c (decode_any_window): New function.
8714 (Fwindow_height, Fwindow_width, Fwindow_edges)
8715 (Fwindow_pixel_edges, Fwindow_inside_edges)
8716 (Fwindow_inside_pixel_edges): Use decode_any_window.
8717
8718 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8719
8720 * process.h: synch_process_termsig new variable.
8721
8722 * callproc.c: Define synch_process_termsig.
8723 (Fcall_process): Initiate synch_process_termsig to zero and
8724 check if non-zero and get signal name after subprocess has ended.
8725
8726 * process.c (sigchld_handler): Set synch_process_termsig
8727 if terminated by a signal. synch_process_death setting removed.
8728
8729 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
8730
8731 2004-01-26 Andreas Schwab <schwab@suse.de>
8732
8733 * print.c (print_preprocess): Declare size as EMACS_INT to not
8734 lose bits.
8735 (print_object): Likewise.
8736 * alloc.c (Fpurecopy): Likewise.
8737
8738 2004-01-25 Luc Teirlinck <teirllm@auburn.edu>
8739
8740 * window.c (Fwindow_minibuffer_p): Doc fix.
8741
8742 2004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
8743
8744 * editfns.c (Fformat): Make both passes accept the same set of flags.
8745
8746 2004-01-23 Kenichi Handa <handa@m17n.org>
8747
8748 * fns.c (Fmd5): If OBJECT is a buffer different from the current
8749 one, set buffer to OBJECT temporarily.
8750
8751 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
8752
8753 * keyboard.c (kbd_buffer_gcpro): Remove.
8754 (kbd_buffer_store_event, clear_event, Fdiscard_input)
8755 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
8756 Don't initialize and/or maintain the variable any more. It was made
8757 redundant by my commit of 2003-06-15.
8758
8759 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
8760
8761 2004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8762
8763 * lisp.h: Add undef DECL_ALIGN.
8764
8765 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
8766
8767 * process.c (wait_reading_process_input) [SYNC_INPUT]:
8768 Check interrupt_input_pending explicitly.
8769
8770 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
8771
8772 * keyboard.c (handle_async_input): New fun,
8773 extracted from input_available_signal.
8774 (input_available_signal, reinvoke_input_signal): Use it.
8775
8776 2004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
8777
8778 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
8779
8780 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
8781 manipulation macros for when tags are in the lower bits.
8782 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
8783 (DECL_ALIGN): New macro.
8784 (DEFUN): Use it.
8785
8786 * lisp.h [ENABLE_CHECKING]: Don't force union type.
8787
8788 * s/darwin.h (__attribute__): Remove outdated workaround.
8789
8790 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
8791
8792 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
8793 Don't check range of malloc address.
8794 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
8795
8796 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
8797
8798 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
8799
8800 2004-01-19 Kenichi Handa <handa@m17n.org>
8801
8802 * fontset.c (fontset_font_pattern): Fix previous change.
8803
8804 2004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
8805
8806 * xdisp.c (Voverflow_newline_into_fringe)
8807 (move_it_in_display_line_to, redisplay_internal)
8808 (update_window_fringes, redisplay_window, display_line, window):
8809 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
8810 that it compiles without a window-system.
8811 * dispnew.c (direct_output_for_insert, update_window): Likewise.
8812
8813 2004-01-16 Kim F. Storm <storm@cua.dk>
8814
8815 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
8816
8817 * buffer.c (init_buffer_once): Set buffer_defaults and
8818 buffer_local_flags for indicate_buffer_boundaries.
8819 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
8820 default- variable for it.
8821
8822 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
8823 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
8824 New members exact_window_width_line_p and cursor_in_fringe_p for
8825 overflowing newlines into right fringe.
8826 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
8827 and indicate_bottom_line_p for buffer boundaries and scrolling.
8828 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
8829 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
8830 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
8831 and HOLLOW_SQUARE_BITMAP.
8832 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
8833 Add prototypes.
8834
8835 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
8836 instead of related indicator fields.
8837 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
8838 (direct_output_for_insert): Handle exact width lines like
8839 contined lines. Call update_window_fringes.
8840 (update_window): Call update_window_fringes.
8841 (scrolling_window): Don't skip desired rows with changed bitmaps.
8842 Check if fringe bitmaps changes when assigning scrolled rows.
8843
8844 * xdisp.c (Voverflow_newline_into_fringe): New variable.
8845 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
8846 (move_it_in_display_line_to): Overflow newline into fringe for
8847 rows that are exactly as wide as the window.
8848 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
8849 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
8850 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
8851 (fringe_bitmaps): Add new bitmaps.
8852 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
8853 Select proper bitmap for cursor in fringe when appropriate.
8854 Handle alignment of bitmap to top or bottom of row.
8855 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
8856 done by update_window_fringes.
8857 (update_window_fringes, draw_window_fringes): New functions.
8858 (redisplay_internal): Call update_window_fringes in case only
8859 cursor row is updated.
8860 (redisplay_window): Call update_window_fringes.
8861 Explicitly call draw_window_fringes if redisplay was done using
8862 the current matrix or the overlay arrow is in the window.
8863 (try_window_reusing_current_matrix): Mark scrolled rows for
8864 fringe update (to update buffer-boundaries / scrolling icons).
8865 (find_last_unchanged_at_beg_row): Handle exact width lines line
8866 continued lines.
8867 (display_line): Overflow newline into fringe for rows that are
8868 exactly as wide as the window. Don't append space for newline
8869 in this case.
8870 (notice_overwritten_cursor): Explicitly clear cursor bitmap
8871 in fringe as if it had been overwritten.
8872 (erase_phys_cursor): Erase cursor bitmap in fringe.
8873 (syms_of_xdisp): Mark show-trailing-whitespace and
8874 void-text-area-pointer as user options.
8875 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
8876
8877 * xterm.c (x_update_window_end): Call draw_window_fringes.
8878 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
8879 in row instead of actually drawing fringe bitmaps.
8880 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
8881 (x_draw_window_cursor): Draw cursor in fringe.
8882
8883 * w32term.c (x_update_window_end): Call draw_window_fringes.
8884 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
8885 in row instead of actually drawing fringe bitmaps.
8886 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
8887 (w32_draw_window_cursor): Draw cursor in fringe.
8888
8889 * macterm.c (x_update_window_end): Call draw_window_fringes.
8890 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
8891 in row instead of actually drawing fringe bitmaps.
8892 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
8893 (mac_draw_window_cursor): Draw cursor in fringe.
8894
8895 2004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8896
8897 * xterm.c (handle_one_xevent): Don't handle characters that are part
8898 of an old style (XLookupString) compose sequence.
8899
8900 2004-01-15 Kenichi Handa <handa@m17n.org>
8901
8902 * search.c (Freplace_match): Use make_multibyte_string or
8903 make_unibyte_string according to the buffer multibyteness.
8904
8905 2004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
8906
8907 * alloc.c (struct interval_block, struct string_block)
8908 (struct symbol_block, struct marker_block, live_string_p)
8909 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
8910 Better preserve alignment for objects in blocks.
8911 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
8912
8913 * lread.c (defvar_per_buffer): Remove dead declaration.
8914
8915 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
8916 space size.
8917
8918 2004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8919
8920 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
8921 if a key press should pop down. Only pop down if a key is pressed
8922 outside the menu/dialog.
8923 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
8924 popup_get_selection.
8925 (create_and_show_dialog): Pass 1 for down_on_keypress to
8926 popup_get_selection.
8927
8928 2004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8929
8930 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
8931 BLOCK/UNBLOCK_INPUT.
8932
8933 2004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8934
8935 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
8936 specified.
8937
8938 2004-01-08 Kenichi Handa <handa@m17n.org>
8939
8940 * editfns.c (Fformat): Fix '&' to '&&'.
8941
8942 2004-01-08 Andreas Schwab <schwab@suse.de>
8943
8944 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
8945 size if PSEUDOVECTOR_FLAG is set.
8946
8947 2004-01-07 Kenichi Handa <handa@m17n.org>
8948
8949 * charset.c (Fdeclare_equiv_charset): Fix docstring.
8950
8951 * fontset.c (fontset_ref_via_base): Fix previous change.
8952
8953 2004-01-07 Kim F. Storm <storm@cua.dk>
8954
8955 * process.c (read_process_output): Only activate adaptive
8956 buffering if we read less than 256 bytes at a time.
8957
8958 2004-01-06 Kim F. Storm <storm@cua.dk>
8959
8960 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
8961 object and image object. Return glyph width and height.
8962 (mode_line_string, marginal_area_string): Ditto.
8963
8964 * dispextern.h (buffer_posn_from_coords, mode_line_string)
8965 (marginal_area_string): Fix prototypes.
8966
8967 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
8968 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
8969 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
8970
8971 * keyboard.c (make_lispy_position): Use modified mode_line_string,
8972 buffer_posn_from_coords, and marginal_area_string functions to
8973 include both string object and image object in the lispy position.
8974 Also add actual glyph width and height to position.
8975 (read_key_sequence): Use real buffer position from mouse
8976 event to find keymap property even when click is in marginal area.
8977
8978 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
8979 mode_line_string and marginal_area_string functions to handle
8980 both string object and image object properties.
8981
8982 2004-01-06 Andreas Schwab <schwab@suse.de>
8983
8984 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
8985 character.
8986
8987 2004-01-02 Andreas Schwab <schwab@suse.de>
8988
8989 * macterm.c (emacs_options, x_initialized, same_x_server):
8990 Remove unused (and duplicated) definitions.
8991
8992 2004-01-02 Kim F. Storm <storm@cua.dk>
8993
8994 * process.h (struct Lisp_Process): New members for adaptive read
8995 buffering: adaptive_read_buffering, read_output_delay, and
8996 read_output_skip.
8997
8998 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
8999 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
9000 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
9001 (process_output_delay_count, process_output_skip): New vars.
9002 (Vprocess_adaptive_read_buffering): New variable.
9003 (make_process): Initialize adaptive read buffering members.
9004 (Fstart_process): Set adaptive_read_buffering member.
9005 (deactivate_process): Cleanup adaptive read buffering.
9006 (wait_reading_process_input): Temporarily omit delayed
9007 subprocesses from the set of file descriptors to read from;
9008 adjust the select timeout if we skipped any subprocesses.
9009 (read_process_output): Increase adaptive read buffering delay if
9010 we read less than a full buffer; reduce delay when we read a
9011 full buffer.
9012 (send_process): Simplify using local Lisp_Process var.
9013 Reset adaptive read buffering delay after write.
9014 (init_process): Initialize process_output_delay_count and
9015 process_output_skip.
9016 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
9017
9018 2004-01-01 Jason Rumney <jasonr@gnu.org>
9019
9020 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
9021
9022 2003-12-30 Luc Teirlinck <teirllm@auburn.edu>
9023
9024 * print.c (Ferror_message_string): Add hyperlink in the docstring
9025 to the definition of `signal' in the Elisp manual.
9026 * eval.c (Fsignal): Ditto.
9027
9028 2003-12-29 James Clark <jjc@jclark.com>
9029
9030 * fns.c (internal_equal): Return t for two NaN arguments.
9031
9032 2003-12-29 Richard M. Stallman <rms@gnu.org>
9033
9034 * data.c (store_symval_forwarding): Handle setting
9035 default-fill-column, etc., by changing the value in
9036 buffers that use the default.
9037
9038 * minibuf.c (Fset_minibuffer_window): Doc fix.
9039
9040 * fileio.c (choose_write_coding_system): Ignore auto_saving
9041 if using the visited file for auto saves.
9042 (Fwrite_region): Don't update SAVE_MODIFF
9043 if auto-saving in visited file.
9044
9045 2003-12-29 Kenichi Handa <handa@m17n.org>
9046
9047 * dispextern.h (face_font_available_p): Extern it.
9048
9049 * fontset.c (Voverriding_fontspec_alist): New variable.
9050 (lookup_overriding_fontspec): New function.
9051 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
9052 (fontset_font_pattern): Likewise.
9053 (regulalize_fontname): New function.
9054 (Fset_fontset_font): Call regulalize_fontname.
9055 (Fset_overriding_fontspec_internal): New function.
9056 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
9057 Defsubr Sset_overriding_fontspec_internal.
9058
9059 * xfaces.c (face_font_available_p): New function.
9060
9061 2003-12-28 Richard M. Stallman <rms@gnu.org>
9062
9063 * buffer.c (Fother_buffer): Don't crash if BUF is nil
9064 or if its name is nil.
9065
9066 * buffer.c (Fkill_buffer): Don't delete auto-save file
9067 if it's the same as the visited file.
9068
9069 2003-12-28 Luc Teirlinck <teirllm@auburn.edu>
9070
9071 * coding.c (Fcheck_coding_system): Doc fix.
9072
9073 2003-12-28 Kim F. Storm <storm@cua.dk>
9074
9075 * Makefile.in (eval.o): Depend on dispextern.h.
9076
9077 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
9078 image glyph using image's ascent.
9079 (mode_line_string): Return image glyph as object clicked on.
9080 Adjust y0 for image glyph using image's ascent.
9081
9082 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
9083 (struct glyph): New members, ascent and descent. Used to save
9084 this glyph's ascent and descent, instead of having.
9085 (struct glyph): Declare member face_id using FACE_ID_BITS.
9086 (find_hot_spot): Add prototype.
9087
9088 * keyboard.c (Qimage): Remove extern (now in lisp.h).
9089 (QCmap): Declare extern.
9090 (make_lispy_position): When position is inside image hot-spot,
9091 use hot-spot element's id as posn element.
9092
9093 * lisp.h (IMAGEP): New macro to test for image object type.
9094 (Qimage): Declare extern.
9095
9096 * macfns.c (Qimage): Remove extern (now in lisp.h).
9097 (valid_image_p, parse_image_spec): Use IMAGEP macro.
9098
9099 * macterm.c (Qface, Qmouse_face): Remove unused externs.
9100
9101 * w32fns.c (Qimage): Remove extern (now in lisp.h).
9102 (valid_image_p, parse_image_spec): Use IMAGEP macro.
9103
9104 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
9105
9106 * w32term.c (Qface, Qmouse_face): Remove unused externs.
9107
9108 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
9109 pointer types.
9110 (Qrelative_width, Qalign_to): Remove unused variables.
9111 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
9112 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
9113 image maps.
9114 (x_y_to_hpos_vpos): Return glyph relative coordinates through
9115 new dx and dy args.
9116 Remove buffer_only_p arg (always 0). Simplify code accordingly.
9117 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
9118 than row's ascent and height, to get sensible height on tall rows.
9119 (build_desired_tool_bar_string): Remove Qimage extern.
9120 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
9121 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
9122 image glyph is alone on the last line.
9123 (append_glyph, append_composite_glyph, produce_image_glyph)
9124 (append_stretch_glyph): Set glyph's ascent and descent.
9125 (on_hot_spot_p): New function to check if position is inside an
9126 rectangular, circular, or polygon-shaped image hot-spot,
9127 (find_hot_spot): New function to search for image hot-spot.
9128 (Flookup_image_map): New defun to search for image hot-spot.
9129 (define_frame_cursor1): New aux function to determine frame pointer.
9130 (note_mode_line_or_margin_highlight, note_mouse_highlight):
9131 Handle `pointer' text property and :pointer image property to
9132 control frame pointer shape. Detect image hot-spots for pointer
9133 and help_echo properties. Use define_frame_cursor1.
9134 (note_mouse_highlight): Use Vvoid_text_area_pointer.
9135 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
9136 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
9137
9138 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
9139
9140 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
9141 (Qimage): Remove extern (now in lisp.h).
9142 (valid_image_p, parse_image_spec): Use IMAGEP macro.
9143
9144 * xmenu.c (show_help_event): Remove unused code.
9145
9146 * xterm.c (Qface, Qmouse_face): Remove unused externs.
9147 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
9148 row's ascent and descent, to get a sensible height on tall rows.
9149
9150 2003-12-25 Luc Teirlinck <teirllm@auburn.edu>
9151
9152 * minibuf.c (Fcompleting_read): Undo previous change.
9153
9154 2003-12-25 Lars Hansen <larsh@math.ku.dk>
9155
9156 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
9157 Arguments GCPRO'ed in call to file name handler.
9158
9159 2003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
9160
9161 * termcap.c (tgetst1): Scan for "%pN"; if all
9162 N are continuous in [1,9], remove all "%pN".
9163
9164 2003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9165
9166 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
9167
9168 * xfaces.c (lface_fully_specified_p): Take into account that
9169 MAC OS always have unspecified stipple.
9170
9171 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
9172
9173 * tparam.c (tparam1): Add handling for `%pN', which
9174 means use param N for the next substitution.
9175
9176 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
9177
9178 * xfaces.c (Fcolor_gray_p): Fix omission bug:
9179 In case `frame' is nil, consult the selected frame.
9180 (Fcolor_supported_p): Likewise.
9181
9182 2003-12-23 Luc Teirlinck <teirllm@auburn.edu>
9183
9184 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
9185 Doc fixes.
9186
9187 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
9188 and an integer. Adapt the introductory comment accordingly.
9189 (Fread_from_minibuffer): Delete code moved into read_minibuf.
9190 Doc fix.
9191 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
9192 read_minibuf.
9193 (Fcompleting_read): Delete code moved into read_minibuf.
9194 (Ftest_completion): Make it handle obarrays and hash tables correctly.
9195
9196 2003-12-03 Kenichi Handa <handa@m17n.org>
9197
9198 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
9199 encoding sequence.
9200
9201 2003-12-01 Kenichi Handa <handa@m17n.org>
9202
9203 * composite.c (syms_of_composite): Don't make the compostion hash
9204 table week.
9205
9206 2003-11-30 Luc Teirlinck <teirllm@auburn.edu>
9207
9208 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
9209 * textprop.c (Fget_char_property_and_overlay): New function.
9210 (syms_of_textprop): Defsubr it.
9211
9212 2003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9213
9214 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
9215 to compile on terminal configuration.
9216
9217 * fileio.c (Fread_file_name): Check use_file_dialog also before
9218 calling Fx_file_dialog.
9219
9220 * fns.c (use_file_dialog): New variable.
9221 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
9222
9223 2003-11-29 Kim F. Storm <storm@cua.dk>
9224
9225 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
9226 (syms_of_msdos): Don't intern and staticpro them.
9227
9228 2003-11-27 Kim F. Storm <storm@cua.dk>
9229
9230 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
9231 coordinates relative to glyph at posn. If glyph is an image,
9232 return that as object at posn. Callers changed.
9233 (mode_line_string, marginal_area_string): Calculate and return
9234 pixel coordinates relative to glyph. Callers changed.
9235
9236 * dispextern.h (buffer_posn_from_coords, mode_line_string)
9237 (marginal_area_string): Fix prototypes.
9238 (window_box_left_offset, window_box_right_offset): Add prototypes.
9239
9240 * frame.h (get_specified_cursor_type, get_window_cursor_type):
9241 Remove prototypes.
9242
9243 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
9244
9245 * keyboard.c (make_lispy_position): Add x and y coordinates
9246 relative to the current glyph as 7th element of position.
9247 If glyph is an image, return it in the object element.
9248 (read_key_sequence): Skip checks for keymap property in cases
9249 where POSN_STRING is not a string (e.g. an image).
9250
9251 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
9252 (Vshow_text_cursor_in_void): New variable.
9253 (glyph_to_pixel_coords): Don't use negative hpos.
9254 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
9255 (append_stretch_glyph): Change ascent arg to be actual value
9256 in pixels rather than ratio to height. Callers changed.
9257 (calc_pixel_width_or_height): New aux function, implementing
9258 pixel based artihmetic for glyph widths and heights.
9259 (produce_stretch_glyph): Use calc_pixel_width_or_height for
9260 :width, :height, :align-to, and :ascent, thus allowing these to
9261 be specified in pixels as well as multiples of characters.
9262 Don't produce stretch glyphs with zero width or height.
9263 (get_specified_cursor_type): Declare static.
9264 (get_window_cursor_type): Declare static. Add glyph arg to be
9265 able to know when cursor is on an image; always substitute
9266 hollow-box cursor for filled-box cursor on images, to avoid
9267 negative images and flicker when blinking the cursor.
9268 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
9269 (note_mode_line_or_margin_highlight): Use non-text cursor rather
9270 than vertical scroll-bar cursor in display margins.
9271 (note_mouse_highlight): Use non-text cursor rather than text
9272 cursor in fringes and over images in the text area.
9273 Use non-text cursor when mouse pointer is outside editable text,
9274 i.e. in the void after end-of-line or end-of-buffer; this was
9275 already done for W32, but is now standard for all systems --
9276 user can toggle show-text-cursor-in-void to get old behaviour.
9277 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
9278 Vdisplay_pixels_per_inch.
9279
9280 2003-11-25 Andreas Schwab <schwab@suse.de>
9281
9282 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
9283 EMACS_INT to not lose bits.
9284 (Ffillarray): Don't set bits beyond the size of a bool vector.
9285
9286 2003-11-25 Kim F. Storm <storm@cua.dk>
9287
9288 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
9289 define this defun on systems that cannot use stderr as lvalue.
9290
9291 2003-11-24 Gerd Moellmann <gerd@gnu.org>
9292
9293 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
9294 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
9295 ld's default is incompatible with unexec.
9296
9297 2003-11-23 Kim F. Storm <storm@cua.dk>
9298
9299 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
9300 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
9301 (Fforce_window_update): New defun.
9302 (syms_of_window): Defsubr it.
9303 (Fset_window_margins, Fset_window_fringes): Doc fix.
9304
9305 * print.c (Fredirect_debugging_output): New defun.
9306 (syms_of_print): Defsubr it.
9307
9308 2003-11-22 Luc Teirlinck <teirllm@auburn.edu>
9309
9310 * fns.c (Fset_char_table_parent): Doc fix.
9311
9312 2003-11-22 Kim F. Storm <storm@cua.dk>
9313
9314 * dispnew.c (buffer_posn_from_coords): Return actual row/column
9315 for glyph clicked on, rather than (unused) pixel positions.
9316 (mode_line_string, marginal_area_string): Change X and Y args to
9317 pointers for returning actual row/column for glyph clicked on.
9318 Simplify and optimize loops.
9319
9320 * dispextern.h (mode_line_string, marginal_area_string):
9321 Update prototypes.
9322
9323 * keyboard.c (make_lispy_position): New function for generating
9324 mouse click positions from frame and pixel coordinates.
9325 Enhanced to return buffer position and actual row/column for
9326 events outside the text area using updated mode_line_string and
9327 marginal_area_string functions.
9328 Return left-fringe and right-fringe clicks as such, rather than
9329 clicks in text area.
9330 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
9331 pixel_to_glyph_coords, as we never use the results.
9332 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
9333 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
9334 Eliminate unused code in WHEEL_EVENT handling.
9335 (make_lispy_movement): Use make_lispy_position.
9336
9337 * window.c (coordinates_in_window): Remove redundant tests.
9338 Fix returned X pixel value for left-margin.
9339
9340 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
9341 mode_line_string and marginal_area_string parameters.
9342
9343 2003-11-22 Lars Hansen <larsh@math.ku.dk>
9344
9345 * w32.c (struct the_group, getgrgid): Add.
9346 * mac.c (struct my_group, getgrgid): Add.
9347
9348 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
9349
9350 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
9351
9352 2003-11-21 Lars Hansen <larsh@math.ku.dk>
9353
9354 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
9355 include in call to file name handler. Optionally translate numeric
9356 UID and GID to strings. Update docstring.
9357 (directory_files_internal): Add parameter ID-FORMAT.
9358 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
9359 include in call to file name handler and call to
9360 directory_files_internal. Update Docstring.
9361 (Fdirectory_files): Add dummy parameter in call to
9362 directory_files_internal.
9363 * lisp.h (Qinteger): Add.
9364 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
9365 (Ffile_attributes): Add parameter.
9366 * data.c (Qinteger): Export.
9367
9368 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
9369
9370 * fns.c (Freverse, Fnreverse): Doc fixes.
9371
9372 2003-11-19 Kim F. Storm <storm@cua.dk>
9373
9374 * xdisp.c (init_iterator): Initialize it->start to position
9375 before reseating (in case start position is invisible).
9376 (init_to_row_start): Set it->start to row-start.
9377 (redisplay_window): Accept optional_new_start if start position
9378 is invisible (in which case IT_CHARPOS overshoots PT).
9379 (display_line): Setup row->start from it->start (rather than
9380 it->current which is wrong if first char on line is invisible).
9381 When done, reseat it->start to it->current (= start of next row).
9382 (expose_area): Fix exposure of text area when first char (e.g. TAB)
9383 is only partially visible.
9384
9385 * dispextern.h (struct it): New member start.
9386
9387 2003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
9388
9389 * alloc.c (make_float, Fcons): Clear the markbit at init time.
9390 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
9391 of block_index outside of the macro call.
9392 (Fgarbage_collect): Remove null code.
9393
9394 * m/amdx86-64.h: Don't redefine XPNTR.
9395
9396 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
9397 of VALMASK.
9398
9399 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
9400 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
9401 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
9402
9403 * lisp.h (VALMASK): Only define for non-union type.
9404 (MARKBIT): Remove.
9405 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
9406 (XTYPE): Define unconditionally.
9407 (XSETTYPE): Remove one more remnant.
9408 (EQ): Define differently for the union and non-union cases.
9409 (INTMASK): New bit mask.
9410 (struct Lisp_Marker): Move down to prepare for upcoming patch.
9411 (GC_EQ): Delegate to EQ.
9412
9413 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
9414
9415 2003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9416
9417 * xterm.c (x_window_to_scroll_bar): Move check of display to
9418 where window_id is compared.
9419
9420 2003-11-17 Kim F. Storm <storm@cua.dk>
9421
9422 * dispextern.h (struct it): New member first_vpos.
9423
9424 * xdisp.c (start_display): Set it->first_vpos.
9425 (try_window_id): Use first_vpos to start display in first _text_
9426 line if no reusable lines at start of window with header line.
9427
9428 2003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9429
9430 * w32fns.c (XPutPixel):
9431 * w32bdf.c (w32_init_bdf_font):
9432 * sunfns.c (sel_read):
9433 * process.c (Fmake_network_process):
9434 * frame.c (store_frame_param):
9435 * fontset.c (Fset_fontset_font):
9436 * emacs.c (shut_down_emacs):
9437 * ccl.c (ccl_driver): Remove period at end of error message.
9438
9439 * config.in: Regenerate.
9440
9441 * xfns.c (x_window_to_frame, x_any_window_to_frame)
9442 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
9443 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
9444 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
9445 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
9446
9447 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
9448
9449 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
9450 (XTmouse_position, handle_one_xevent): Pass Display* to
9451 x_window_to_scroll_bar.
9452 (x_window_to_scroll_bar): Take a Display* argument.
9453 Check that display for frame is equal to Display* argument.
9454 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
9455 x_display_info_for_display instead. Use Display in xev instead
9456 of GDK_DISPLAY.
9457 (x_dispatch_event): Call x_display_info_for_display.
9458 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
9459 (x_connection_closed): Call xg_display_close for GTK.
9460 (x_term_init): Call xg_display_open for additional displays.
9461 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
9462 for GTK.
9463
9464 * xmenu.c (single_menu_item, mouse_position_for_popup)
9465 (x_activate_menubar): Formatting adjustments.
9466
9467 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
9468 adjustments.
9469
9470 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
9471 (xg_display_close, xg_create_default_cursor)
9472 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
9473 handling.
9474 (xg_left_ptr_cursor): Remove.
9475 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
9476 cursor here.
9477 (xg_win_to_widget): Take Display* argument, call
9478 gdk_xid_table_lookup_for_display.
9479 (xg_create_frame_widgets, xg_get_file_name, create_menus)
9480 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
9481 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
9482 in FRAME_X_DISPLAY_INFO.
9483 (xg_get_scroll_id_for_window): Take Display* argument.
9484 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
9485 (xg_initialize): Remove xg_left_ptr_cursor.
9486
9487 * gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add
9488 Display* argument.
9489 (xg_display_open, xg_display_close, xg_create_default_cursor): Declare.
9490
9491 2003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9492
9493 * xterm.c (x_detect_focus_change): Do not change focus frame for
9494 Enter/LeaveNotify if the current focus frame has explicit focus.
9495
9496 2003-11-14 Kim F. Storm <storm@cua.dk>
9497
9498 * dispnew.c (update_text_area): Fix redisplay error when hscroll
9499 is active and first glyph is only partially visible.
9500
9501 2003-11-13 Kenichi Handa <handa@m17n.org>
9502
9503 * xdisp.c (select_frame_for_redisplay): New function.
9504 (redisplay_internal): Record also selected_frame for
9505 unwind_redisplay. Call select_frame_for_redisplay before
9506 redrawing each frame.
9507 (unwind_redisplay): Argument changed to a cons.
9508
9509 2003-11-12 Luc Teirlinck <teirllm@auburn.edu>
9510
9511 * fns.c (Fstring_to_multibyte): Doc fix.
9512
9513 2003-11-11 Kenichi Handa <handa@m17n.org>
9514
9515 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
9516
9517 2003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9518
9519 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
9520 program specified positions.
9521
9522 2003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9523
9524 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
9525
9526 2003-11-08 Kenichi Handa <handa@m17n.org>
9527
9528 * Makefile.in (lisp): Add kannada.el.
9529 (shortlisp): Likewise.
9530
9531 2003-11-07 Kenichi Handa <handa@m17n.org>
9532
9533 * coding.c (coding_allocate_composition_data):
9534 Reset coding->composing to COMPOSITION_NO.
9535 (coding_restore_composition): Detect invalid composition data.
9536 Give Fstring and Fvector a Lispy integer, not C int.
9537
9538 2003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
9539
9540 * floatfns.c (Flogb): Don't use VALMASK.
9541
9542 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
9543 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
9544
9545 * lisp.h (XINT): Move the cast to clarify what is going on.
9546 (GCTYPEMASK, XSETTYPE): Remove.
9547 (XGCTYPE): Make it an alias of XTYPE.
9548
9549 2003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9550
9551 * xterm.c (x_term_init): Fix formatting.
9552
9553 2003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9554
9555 * gtkutil.h (xg_have_tear_offs): Declare.
9556 (xg_keep_popup, xg_did_tearoff): Remove.
9557
9558 * gtkutil.c: Remove variable xg_did_tearoff.
9559 (xg_have_tear_offs): New function.
9560 (tearoff_remove): Just decrease xg_detached_menus.
9561 (tearoff_activate): Increase xg_detached_menus and call
9562 tearoff_remove when tearoff is removed.
9563 (xg_keep_popup): Remove function.
9564 (create_menus): Give add_tearoff_p as argument to recursive
9565 call to create_menus.
9566 (xg_create_widget): Use variables instead of multiple
9567 strcmp. Tell create_menus to create tear off only for
9568 menu bar menus.
9569 (xg_update_menubar): Change title for a detached menu also.
9570 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
9571 of deep_p.
9572 (xg_initialize): Initialize xg_detached_menus, remove
9573 initialization of xg_did_tearoff.
9574
9575 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
9576 xg_have_tear_offs returns non-zero.
9577 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
9578 call to xg_keep_popup.
9579
9580 2003-11-01 Andrew Choi <akochoi@shaw.ca>
9581
9582 * macterm.c (XTread_socket): Handle menubar selection and grow
9583 window only for mouseDown events.
9584
9585 2003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9586
9587 * xterm.c (x_term_init): For GTK part, increase x_initialized
9588 to check for more than one display. Use error instead of return 0.
9589
9590 2003-10-31 Andrew Choi <akochoi@shaw.ca>
9591
9592 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
9593 (copy_dysymtab): Call it.
9594
9595 2003-10-31 Luc Teirlinck <teirllm@auburn.edu>
9596
9597 * eval.c (Fdefvaralias): Doc fix.
9598
9599 2003-10-26 Luc Teirlinck <teirllm@auburn.edu>
9600
9601 * data.c (Fsetplist): Doc fix.
9602
9603 2003-10-14 Lute Kamstra <lute@gnu.org>
9604
9605 * window.c (Fset_window_fringes): Clarify docstring.
9606
9607 2003-10-14 Kim F. Storm <storm@cua.dk>
9608
9609 * window.c (Fset_window_margins): Simplify arg checking.
9610
9611 2003-10-13 Richard M. Stallman <rms@gnu.org>
9612
9613 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
9614 (print_partial_compiled_pattern): Replace assert with a printout.
9615 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
9616
9617 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
9618
9619 * window.c (Fset_window_margins): Allow only integers as args.
9620 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
9621 Doc fixes.
9622
9623 2003-10-13 Lute Kamstra <lute@gnu.org>
9624
9625 * window.c (Fset_window_fringes): Elaborate docstring.
9626
9627 2003-10-12 Andrew Choi <akochoi@shaw.ca>
9628
9629 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
9630
9631 * s/darwin.h (GC_MARK_STACK): Define.
9632
9633 2003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9634
9635 * window.c (shrink_windows): New function.
9636 (size_window): Call shrink_windows to calculate window sizes when
9637 shrinking frame with more than one window.
9638
9639 2003-10-12 Kim F. Storm <storm@cua.dk>
9640
9641 * xdisp.c (compute_fringe_widths): Doc fix.
9642
9643 2003-10-08 Kenichi Handa <handa@m17n.org>
9644
9645 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
9646
9647 2003-10-07 Kenichi Handa <handa@m17n.org>
9648
9649 * coding.c (Qcoding_system_define_form): New variable.
9650 (syms_of_coding): Intern and staticpro it.
9651 (Fcheck_coding_system): Try to autoload the definition of
9652 CODING-SYSTEM.
9653
9654 2003-10-05 Luc Teirlinck <teirllm@auburn.edu>
9655
9656 * fns.c (Frequire): Doc fix.
9657
9658 2003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9659
9660 * xfns.c (Fx_send_client_event): New function as a base for
9661 manipulating extended window manager hints.
9662 (Fx_send_client_event): Remove unused variable s.
9663
9664 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
9665 that function is removed.
9666
9667 * xterm.c (x_set_offset): Use move_offset_left/top instead of
9668 x/y_pixels_outer_diff.
9669 (x_check_expected_move): Calculate move_offset_left/top.
9670
9671 * xterm.h (struct x_output): New members: move_offset_top/left.
9672
9673 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
9674 call x_set_offset directly.
9675
9676 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
9677
9678 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
9679
9680 * xterm.c (x_delete_display): Free font names and font_encoder
9681 in dpyinfo->font_table.
9682
9683 * xfns.c (Fx_close_connection): Only call XFreeFont here.
9684 Move xfree of font names to x_delete_display.
9685
9686 * xterm.h (struct x_display_info): New member, wm_type.
9687 (struct x_output): New members, expected_top/left and
9688 check_expected_move.
9689
9690 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
9691 is received.
9692 (handle_one_xevent): Rename x_check_expected_move from
9693 x_check_fullscreen_move.
9694 (x_set_offset): Only add WM decoration sizes to modified_top/left
9695 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
9696 (x_check_expected_move): Rename from x_check_fullscreen_move.
9697 Removed fullscreen specific code. Use check_expected_move,
9698 expected_left/top instead. Also, set wm_type.
9699 (x_term_init): Initialize wm_type to unknown.
9700
9701 * frame.c (x_fullscreen_move): Remove addition of WM decoration
9702 sizes to move_x/y.
9703
9704 2003-10-03 Kenichi Handa <handa@m17n.org>
9705
9706 * macterm.c (x_load_font): Clear all members of FONTP before start
9707 filling them.
9708
9709 2003-10-02 Kenichi Handa <handa@m17n.org>
9710
9711 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
9712 before calling find_ccl_program_func. Call find_ccl_program_func
9713 only when fontp->font_encoder is not NULL.
9714
9715 * xterm.c (x_load_font): Clear all members of FONTP before start
9716 filling them.
9717
9718 2003-10-03 John Paul Wallington <jpw@gnu.org>
9719
9720 * keymap.c (map_keymap): Don't abort when binding is a vector.
9721
9722 2003-10-02 Jason Rumney <jasonr@gnu.org>
9723
9724 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
9725 Sync dependencies with Makefile.in.
9726 (alloca.o): Remove.
9727
9728 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
9729 filling them.
9730
9731 * w32bdf.c (w32_load_bdf_font): Likewise.
9732
9733 2003-09-30 Richard M. Stallman <rms@gnu.org>
9734
9735 * term.c (set_tty_color_mode): Calculate current_mode_spec
9736 regardless of value of VAL.
9737
9738 * intervals.c (graft_intervals_into_buffer):
9739 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
9740 Handle over_used when splitting UNDER.
9741
9742 2003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9743
9744 * regex.c (regex_compile): Free the stack when returning from function.
9745
9746 2003-09-28 Kenichi Handa <handa@m17n.org>
9747
9748 * fontset.c (Finternal_char_font): Change return value to
9749 cons (FONT-NAME . GLYPH-CODE).
9750
9751 2003-09-28 Eli Zaretskii <eliz@gnu.org>
9752
9753 * term.c (tty_setup_colors): Treat any negative argument as -1.
9754
9755 2003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
9756
9757 * process.c (send_process): Delete unused temp_buf.
9758
9759 2003-09-26 Dave Love <fx@gnu.org>
9760
9761 * xterm.c (x_bitmap_mask): Declare.
9762
9763 2003-09-25 Dave Love <fx@gnu.org>
9764
9765 * Makefile.in (fns.o): Depend on md5.h.
9766
9767 2003-09-25 Kim F. Storm <storm@cua.dk>
9768
9769 * window.c (set_window_buffer): Fix redisplay problems when
9770 switching between buffers with different display margin widths.
9771
9772 2003-09-23 Kim F. Storm <storm@cua.dk>
9773
9774 * process.c (set_socket_option): Fix :bindtodevice option.
9775 (Fset_network_process_option): Update process contact list when
9776 setting option succeeds.
9777 (Fmake_network_process): Doc fix.
9778
9779 2003-09-23 Dave Love <fx@gnu.org>
9780
9781 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
9782
9783 2003-09-22 Eli Zaretskii <eliz@gnu.org>
9784
9785 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
9786 color mode is an integer number (it could be -1).
9787
9788 2003-09-22 Richard M. Stallman <rms@gnu.org>
9789
9790 * intervals.c (graft_intervals_into_buffer): Correct the main loop
9791 in the case where OVER is longer than UNDER.
9792
9793 2003-09-22 Masatake YAMATO <jet@gyve.org>
9794
9795 * window.c (Fset_window_scroll_bars): Validate the value of
9796 `vertical_type'.
9797
9798 2003-09-21 Kim F. Storm <storm@cua.dk>
9799
9800 * frame.c (Vdefault_frame_scroll_bars): New variable.
9801 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
9802 (syms_of_frame): DEFVAR_LISP it, and initialize according to
9803 window-system default scroll bar position.
9804
9805 * window.c (Fwindow_scroll_bars): Doc fix.
9806
9807 2003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9808
9809 * xterm.c (x_set_offset): Take window manager decorations into account.
9810
9811 2003-09-19 Richard M. Stallman <rms@gnu.org>
9812
9813 * atimer.h: Don't include lisp.h.
9814 (P_): Define it here (as well as elsewhere).
9815
9816 * print.c (Fprin1_to_string): Move the PRINTPREPARE
9817 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
9818
9819 * data.c (Fvariable_binding_locus): New function.
9820 (syms_of_data): defsubr it.
9821 (Flocal_variable_p): Delete duplicate call to indirect_variable.
9822
9823 2003-09-18 Dave Love <fx@gnu.org>
9824
9825 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
9826
9827 * process.c (Fnetwork_interface_info): Fix type error.
9828 (Fnetwork_interface_list): Doc fix.
9829 (read_process_output, read_process_output): Delete unused var.
9830
9831 2003-09-17 Kim F. Storm <storm@cua.dk>
9832
9833 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
9834 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
9835 (Fnetwork_interface_info): Check that ifreq struct has required
9836 fields before accessing them; this requires that those fields are
9837 defined as macros, which may be too restrictive on some platforms,
9838 but it is better than failing on other platforms.
9839 (syms_of_process): Only defsubr above fns when included.
9840
9841 2003-09-17 Dave Love <fx@gnu.org>
9842
9843 * unexalpha.c: Don't include varargs.h.
9844
9845 2003-09-17 Kim F. Storm <storm@cua.dk>
9846
9847 * process.c (Fset_process_sentinel): Add sentinel to childp plist
9848 for network process.
9849 (socket_options): Add `:' prefix to option names. Add optbit field.
9850 (set_socket_option): Remove no_error arg and special handling of s < 0.
9851 Return 1<<optbit for known option, 0 for unknown.
9852 Do not interpret 0 as false for boolean option (only nil).
9853 Pass failed option and value to report_file_error.
9854 (Fset_network_process_options): Replace by Fset_network_process_option.
9855 (Fset_network_process_option): New function to set just one option.
9856 (Fmake_network_process): Allow :coding arg to be a cons.
9857 Allow :server arg to be an integer specifying backlog size.
9858 Remove :options arg, and allow options to be specified directly
9859 as :KEY, VALUE pairs. Parse these options before binding socket.
9860 As before, :reuseaddr t is default for a server process, but this
9861 can now be disabled by specifying :reuseaddr nil.
9862 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
9863 (init_process): Availability of network options is now checked with
9864 simpler syntax (featurep 'make-network-process :OPTION); use loop to
9865 setup features.
9866 (syms_of_process): Fix defsubr's for the replaced functions.
9867
9868 2003-09-16 Dave Love <fx@gnu.org>
9869
9870 * Makefile.in: Depend on coding.h.
9871
9872 2003-09-14 Kim F. Storm <storm@cua.dk>
9873
9874 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
9875 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
9876 (syms_of_process): Defsubr them.
9877
9878 * config.in: Regenerate.
9879
9880 2003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
9881
9882 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
9883 * m/news-r6.h (XUNMARK): Remove.
9884 * m/mips.h (XUNMARK): Remove.
9885 * m/mips-siemens.h (XUNMARK): Remove.
9886 * m/iris4d.h (XUNMARK): Remove.
9887 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
9888
9889 2003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
9890
9891 * lisp.h (VALBITS): Don't remove 1 for the markbit.
9892 (union Lisp_Object): Use unsigned int for types. Remove markbit.
9893 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
9894 (XTYPE): Use unsigned right-shift.
9895 (XMARKBIT, XMARK, XUNMARK): Remove.
9896
9897 * alloc.c (init_intervals, init_symbol, init_marker):
9898 Don't preallocate anything.
9899 (Fgarbage_collect, mark_object): Ignore the markbit.
9900
9901 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
9902
9903 2003-09-08 Lute Kamstra <lute@gnu.org>
9904
9905 * xdisp.c (pint2hrstr): New function.
9906 (decode_mode_spec): Add `%i' and `%I' specs.
9907 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
9908 for `mode-line-format'.
9909
9910 2003-09-07 Andreas Schwab <schwab@suse.de>
9911
9912 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
9913 avoid warning.
9914
9915 2003-09-07 Eli Zaretskii <eliz@gnu.org>
9916
9917 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
9918
9919 2003-09-03 Kim F. Storm <storm@cua.dk>
9920
9921 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
9922 change (superseded by 2002-08-30 change); the default blink-off
9923 cursor is now again "no cursor".
9924
9925 2003-09-01 Jason Rumney <jasonr@gnu.org>
9926
9927 * makefile.w32-in (alloca.o): Remove.
9928 (coding.o): Depend on intervals.h
9929 (emacs.o, bytecode.o): Depend on window.h
9930
9931 2003-09-01 Dave Love <fx@gnu.org>
9932
9933 * Makefile.in (alloca.o): Remove commands.
9934 (coding.o): Depend on intervals.h composite.h window.h.
9935 (emacs.o): Depend on window.h keyboard.h keymap.h.
9936 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
9937 (bytecode.o): Depend on window.h.
9938
9939 2003-08-31 Jason Rumney <jasonr@gnu.org>
9940
9941 * w32term.c (w32_per_char_metric): Allow cached metrics to be
9942 returned even when font_type is unknown.
9943
9944 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
9945
9946 2003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9947
9948 * xterm.c (x_term_init): Initialize new fields in x_display_info.
9949
9950 * xterm.h (struct x_display_info): Add red/green/blue_bits and
9951 *_offset.
9952
9953 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
9954 calculate pixel value.
9955
9956 2003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
9957
9958 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
9959 Don't tell redisplay display is accurate when it's actually been
9960 paused for pending input.
9961
9962 2003-08-29 Richard M. Stallman <rms@gnu.org>
9963
9964 * dispnew.c (adjust_glyph_matrix): Call window_box
9965 whenever W is nonzero.
9966
9967 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
9968 (Fkill_local_variable, Fmake_variable_frame_local)
9969 (Flocal_variable_p, Flocal_variable_if_set_p):
9970 Use indirect_variable to trace thru variable aliases.
9971
9972 * config.in: Updated.
9973
9974 * callint.c (Fcall_interactively): Save and restore
9975 Vthis_command, Vthis_original_command, real_this_command,
9976 and current_kboard->Vlast_command.
9977
9978 * abbrev.c (Fexpand_abbrev): Insert before deleting.
9979
9980 2003-08-29 Gerd Moellmann <gerd@gnu.org>
9981
9982 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
9983
9984 2003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
9985
9986 * coding.c (decode_coding_iso2022): Initialize local variable c2.
9987 (decode_coding_sjis_big5): Likewise.
9988
9989 2003-08-27 Jason Rumney <jasonr@gnu.org>
9990
9991 * w32.c (sys_pipe): Protect against file descriptor overflow.
9992
9993 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
9994
9995 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
9996
9997 2003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
9998
9999 * xfns.c (Vgtk_version_string): New variable.
10000 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
10001
10002 2003-08-24 Eli Zaretskii <eliz@gnu.org>
10003
10004 * term.c (term_init): Remove `const' from buffer_size's declaration.
10005
10006 * Makefile.in (msdos.o): Depend on intervals.h.
10007
10008 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
10009
10010 2003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10011
10012 * xterm.h (struct x_display_info): New fields: client_leader_window
10013 and Xatom_wm_client_leader.
10014
10015 * xterm.c (x_initialize): Move call to x_session_initialize to ...
10016 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
10017
10018 * xsmfns.c (create_client_leader_window): New function.
10019 (x_session_initialize): Call create_client_leader_window, take
10020 dpyinfo as argument.
10021
10022 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
10023
10024 * Makefile.in (xsmfns.o): Add more depenedencies.
10025
10026 2003-08-21 Dave Love <fx@gnu.org>
10027
10028 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
10029
10030 2003-08-21 Kenichi Handa <handa@m17n.org>
10031
10032 * term.c (term_init): Fix previous change; don't rely on the
10033 length of `buffer' if TERMINFO is defined.
10034
10035 2003-08-20 Dave Love <fx@gnu.org>
10036
10037 * atimer.h: Include lisp.h.
10038
10039 * lisp.h (EMACS_LISP_H): New.
10040 (popup_activated_flag): Don't declare.
10041
10042 * alloca.c: Some merging with gnulib. Change logic and doc
10043 concerning (x)malloc/(x)free -- no longer Emacs-specific.
10044 [DO_BLOCK_INPUT]: Don't include lisp.h.
10045 (xmalloc, xfree): Declare.
10046 (malloc): Don't declare.
10047
10048 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
10049 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
10050 atimer.h, blockinput.h.
10051
10052 * alloc.c (lisp_align_malloc): Change type of `aligned'.
10053
10054 * alloca.s: Remove.
10055
10056 2003-08-19 Gerd Moellmann <gerd@gnu.org>
10057
10058 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
10059 use -lncurses.
10060
10061 * term.c (term_init): Use a buffer of size 4096 for tgetent since
10062 FreeBSD returns something longer than 2044. Abort if the end of
10063 the buffer is overwritten.
10064
10065 2003-08-19 Miles Bader <miles@gnu.org>
10066
10067 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
10068
10069 2003-08-19 Gerd Moellmann <gerd@gnu.org>
10070
10071 * alloc.c (lisp_align_malloc): Check for memory full when
10072 allocating ablocks, which also avoids freeing a pointer into an
10073 ablocks structure.
10074
10075 * puresize.h (BASE_PURESIZE): Increase to 1100000.
10076
10077 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
10078
10079 2003-08-16 Richard M. Stallman <rms@gnu.org>
10080
10081 * editfns.c (Fencode_time): Doc fix.
10082
10083 2003-08-16 David Ponce <david@dponce.com>
10084
10085 * fileio.c (Fwrite_region): Fix conditional expression to issue
10086 the right message.
10087
10088 2003-08-16 Juri Linkov <juri@jurta.org>
10089
10090 * syntax.c (Fforward_word): Argument changed to optional.
10091 Set default value to 1.
10092
10093 2003-08-15 Kenichi Handa <handa@m17n.org>
10094
10095 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
10096 what autoscaled.
10097 (best_matching_font): Once we find a better scalable font, set
10098 non_scalable_has_exact_height_p to 1.
10099 (try_font_list): Call try_alternative_families to try any family
10100 with the given registry.
10101
10102 2003-08-09 Andreas Schwab <schwab@suse.de>
10103
10104 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
10105
10106 * print.c (print_string): Fix printing of multibyte string with
10107 nontrivial printcharfun.
10108
10109 2003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10110
10111 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
10112
10113 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
10114
10115 2003-07-31 Kenichi Handa <handa@m17n.org>
10116
10117 * process.c (read_process_output): Return the actually read bytes
10118 instead of the result of decoding.
10119
10120 2003-07-31 Kenichi Handa <handa@m17n.org>
10121
10122 * xterm.h (struct x_bitmap_record): New member have_mask.
10123
10124 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
10125 to 0.
10126 (x_create_bitmap_from_file): Likewise.
10127 (x_destroy_bitmap): Check have_mask member before freeing a mask.
10128 (x_destroy_all_bitmaps): Likewise.
10129 (x_create_bitmap_mask): Set have_mask member to 1.
10130
10131 2003-07-30 Richard M. Stallman <rms@gnu.org>
10132
10133 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
10134
10135 2003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10136
10137 * gtkutil.c (xg_mark_data): Update calls to mark_object.
10138
10139 2003-07-29 Richard M. Stallman <rms@gnu.org>
10140
10141 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
10142 Conditionalize XIM code on HAVE_XIM.
10143
10144 * fns.c (Fclear_string): New function.
10145 (syms_of_fns): defsubr it.
10146
10147 2003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
10148
10149 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
10150
10151 2003-07-22 Stefan Monnier <monnier@cs.yale.edu>
10152
10153 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
10154
10155 * buffer.c (delete_all_overlays): New function.
10156 * buffer.h (delete_all_overlays): Declare.
10157 * coding.c (run_pre_post_conversion_on_str):
10158 * print.c (temp_output_buffer_setup):
10159 * fileio.c (Finsert_file_contents):
10160 * minibuf.c (get_minibuffer): Use it.
10161
10162 2003-07-22 Andrew Choi <akochoi@shaw.ca>
10163
10164 * unexmacosx.c (unexec_regions_sort_compare):
10165 (unexec_regions_merge): New functions. Sort and merge unexec
10166 regions before dumping them.
10167
10168 2003-07-22 Dave Love <fx@gnu.org>
10169
10170 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
10171
10172 2003-07-21 Stefan Monnier <monnier@cs.yale.edu>
10173
10174 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
10175 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
10176 MARKBIT as the gcmarkbit for strings.
10177
10178 2003-07-21 Richard M. Stallman <rms@gnu.org>
10179
10180 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
10181
10182 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
10183 (syms_of_fns): Corresponding change.
10184
10185 * alloc.c (syms_of_alloc): Doc fixes.
10186
10187 2003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
10188
10189 * s/netbsd.h: Use -Wl syntax.
10190
10191 2003-07-17 Richard M. Stallman <rms@gnu.org>
10192
10193 * xterm.c (xim_initialize): Redo 6/24 change.
10194
10195 2003-07-15 Stefan Monnier <monnier@cs.yale.edu>
10196
10197 * buffer.c (copy_overlays): Use EMACS_INT for positions.
10198 (Fswitch_to_buffer): Don't signal an error when switching to the same
10199 buffer in a dedicated window.
10200
10201 * alloc.c: Use bitmaps for cons, as was done for floats.
10202 (init_float, init_cons): Let the normal code allocate the first block.
10203 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
10204 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
10205 New macros.
10206 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
10207 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
10208 (live_cons_p): Check the pointer is not past the `conses' array.
10209 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
10210 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
10211 (survives_gc_p): Use CONS_MARKED_P and simplify.
10212 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
10213
10214 2003-07-13 Paul Eggert <eggert@twinsun.com>
10215
10216 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
10217 puts it into BSS instead, at least on Solaris 8 and 9.
10218 This is a valid optimization, and it may occur on other platforms,
10219 so Emacs should not assume that initializing a static variable to
10220 zero puts it into data.
10221 * alloc.c (pure, staticvec):
10222 Initialize these arrays to nonzero, so that they're not
10223 put into BSS by that optimization.
10224
10225 2003-07-13 Stefan Monnier <monnier@cs.yale.edu>
10226
10227 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
10228 (lisp_align_malloc): Use posix_memalign is available.
10229 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
10230 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
10231 for consistency. Update users.
10232
10233 2003-07-13 Richard M. Stallman <rms@gnu.org>
10234
10235 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
10236
10237 2003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
10238
10239 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
10240 and use the Gtk+ function gtk_window_icon_from_file if available.
10241
10242 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
10243 handle mask of bitmaps.
10244 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
10245 mask property.
10246 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
10247
10248 * xterm.h (xg_set_icon): New function.
10249
10250 2003-07-12 Paul Eggert <eggert@twinsun.com>
10251
10252 * unexelf.c (unexec): Consider a section to precede the .bss
10253 section if its addresses overlap that of .bss.
10254
10255 2003-07-12 Richard M. Stallman <rms@gnu.org>
10256
10257 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
10258
10259 * config.in (HAVE_CRTIN): Add #undef.
10260 (INLINE): Really inline only if OPTIMIZE is defined.
10261
10262 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
10263 END_FILES_1.
10264 (START_FILES_1, END_FILES_1): New macros (conditional).
10265 (LD_SWITCH_SYSTEM_TEMACS): Define.
10266
10267 * s/openbsd.h: Don't include bsd4-3.h.
10268 (TERMINFO): Define.
10269 (LIBS_TERMCAP): Define.
10270 (LD_SWITCH_SYSTEM): Define (two definitions).
10271
10272 * xfns.c: Include libpng/png.h instead of png.h.
10273
10274 2003-07-11 Andreas Schwab <schwab@suse.de>
10275
10276 * buffer.c (modify_overlay): Update prototype.
10277 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
10278 Likewise.
10279
10280 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
10281
10282 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
10283 (struct interval): Move to intervals.h.
10284 (struct Lisp_Marker): Use EMACS_INT for position info.
10285 (forward_point): Remove prototype of defunct function.
10286 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
10287 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
10288 (syms_of_textprop, set_text_properties): Remove prototypes that are
10289 already in intervals.h.
10290
10291 * intervals.h (struct interval): Move from lisp.h.
10292 Use EMACS_INT for position and size info.
10293
10294 * coding.c: Include intervals.h for Fset_text_properties.
10295
10296 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
10297 position and length information.
10298
10299 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
10300
10301 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
10302 position and length information.
10303
10304 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
10305
10306 Change overlays_after and overlays_before so the overlays themselves
10307 are linked into lists, rather than using cons cells. After all each
10308 Lisp_Misc already occupies 5 words, so we can add a `next' field to
10309 Lisp_Overlay for free and save up one cons cell per overlay (not
10310 to mention one indirection when traversing the list of overlay).
10311
10312 * lisp.h (struct Lisp_Overlay): New field `next'.
10313
10314 * buffer.h (struct buffer): Change overlays_before and overlays_after
10315 from Lisp lists of overlays to pointers to overlays.
10316
10317 * buffer.c (overlay_strings, recenter_overlay_lists):
10318 Fix typo in eassert in last commit.
10319 (unchain_overlay): New function.
10320 (add_overlay_mod_hooklist): Use AREF.
10321 (copy_overlays, reset_buffer, overlays_at, overlays_in)
10322 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
10323 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
10324 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
10325 (report_overlay_modification, evaporate_overlays, init_buffer_once):
10326 Adjust to new type of overlays_(before|after).
10327
10328 * alloc.c (mark_object): Mark the new `next' field of overlays.
10329 (mark_buffer): Manually mark the overlays_(after|before) fields.
10330
10331 * coding.c (run_pre_post_conversion_on_str):
10332 * editfns.c (overlays_around):
10333 * xdisp.c (load_overlay_strings):
10334 * fileio.c (Finsert_file_contents):
10335 * indent.c (current_column):
10336 * insdel.c (signal_before_change, signal_after_change):
10337 * intervals.c (set_point_both):
10338 * print.c (temp_output_buffer_setup): Use new type for
10339 overlays_(before|after).
10340
10341 2003-07-08 Stefan Monnier <monnier@cs.yale.edu>
10342
10343 * buffer.c (report_overlay_modification): Don't run hooks while
10344 traversing the list of overlays.
10345
10346 * buffer.h (struct buffer): Use an int for overlay_center.
10347 (overlays_at, evaporate_overlays, recenter_overlay_lists)
10348 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
10349
10350 * buffer.c (reset_buffer, recenter_overlay_lists)
10351 (adjust_overlays_for_insert, adjust_overlays_for_delete)
10352 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
10353 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
10354 (overlays_at, evaporate_overlays, recenter_overlay_lists)
10355 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
10356
10357 * xdisp.c (fast_find_position): Remove unused var.
10358
10359 * cmds.c (Qexpand_abbrev): New sym.
10360 (syms_of_cmds): Initialize it.
10361 (internal_self_insert): Use it to call expand-abbrev.
10362
10363 2003-07-09 Kim F. Storm <storm@cua.dk>
10364
10365 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
10366 was configured with --without-xim.
10367 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
10368
10369 2003-07-07 Richard M. Stallman <rms@gnu.org>
10370
10371 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
10372
10373 * alloc.c (Fgarbage_collect): Doc fix.
10374
10375 2003-07-07 Nozomu Ando <nand@mac.com>
10376
10377 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
10378
10379 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
10380
10381 * minibuf.c (read_minibuf): UNGCPRO before returning.
10382 (Ftry_completion, Fall_completions): Doc fix.
10383
10384 * alloc.c (live_float_p): Check that p is not past the `floats' array,
10385 now that `floats' is not the last element of the struct any more.
10386
10387 2003-07-06 Jason Rumney <jasonr@gnu.org>
10388
10389 * w32term.h (ClipboardSequence_Proc): New type.
10390
10391 * w32fns.c (clipboard_sequence_fn): New variable.
10392 (globals_of_w32fns): Initialize it.
10393
10394 * w32select.c (last_clipboard_sequence_number): New variable.
10395 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
10396 number if possible.
10397
10398 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
10399
10400 * m/amdx86-64.h (MARKBIT):
10401 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
10402 MARKBIT and ARRAY_MARK_FLAG any more.
10403
10404 * m/hp800.h (XSETMARKBIT):
10405 * m/sr2k.h (XSETMARKBIT):
10406 * lisp.h (XSETMARKBIT): Remove unused macro.
10407
10408 * lisp.h (mark_object): Change prototype.
10409
10410 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
10411 (last_marked): Change accordingly.
10412 (mark_interval, mark_maybe_object, mark_maybe_pointer)
10413 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
10414 (mark_buffer): Update calls to mark_object.
10415
10416 * bytecode.c (mark_byte_stack):
10417 * fns.c (sweep_weak_table):
10418 * keyboard.c (mark_kboards): Update calls to mark_object.
10419
10420 2003-07-06 Jason Rumney <jasonr@gnu.org>
10421
10422 * alloc.c (struct ablock): Only include padding when there is some.
10423
10424 2003-07-04 Stefan Monnier <monnier@cs.yale.edu>
10425
10426 * alloc.c (ALIGN): Add casts to simplify usage.
10427 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
10428 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
10429 (struct ablock, struct ablocks): New types.
10430 (free_ablock): New global var.
10431 (lisp_align_malloc, lisp_align_free): New functions.
10432 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
10433 (struct float_block): Reorder and add gcmarkbits.
10434 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
10435 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
10436 (init_float, make_float): Use lisp_align_malloc.
10437 (free_float, live_float_p): Don't use `type' any more.
10438 (make_float): Use FLOAT_UNMARK to access to mark bit.
10439 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
10440 Use FLOAT_MARKED_P to access the mark bit.
10441 (pure_alloc): Simplify use of ALIGN.
10442 (mark_object): Use FLOAT_MARK to access the mark bit.
10443 (gc_sweep): Use new macros to access the float's mark bit.
10444 (init_alloc_once): Init free_ablock.
10445
10446 * lisp.h (struct Lisp_Float): Remove unused field `type'.
10447
10448 2003-06-27 Stefan Monnier <monnier@cs.yale.edu>
10449
10450 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
10451 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
10452 (allocate_buffer): Move.
10453 (string_bytes): Don't mask markbit of `size_byte'.
10454 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
10455 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
10456 Use the `size' field of buffers (rather than the `name' field) for
10457 the mark bit, as is done for all other vectorlike objects.
10458 Use the new macros to access the mark bit of vectorlike objects.
10459
10460 2003-06-26 Richard M. Stallman <rms@gnu.org>
10461
10462 * puresize.h (BASE_PURESIZE): Increment base size.
10463
10464 * xdisp.c (fast_find_position): Enable Gerd's new definition.
10465
10466 * xterm.c (xim_initialize): Undo previous change.
10467
10468 2003-06-26 Stefan Monnier <monnier@cs.yale.edu>
10469
10470 * alloc.c (survives_gc_p): Simplify.
10471
10472 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
10473
10474 * window.c (Fset_window_dedicated_p): Simplify.
10475 (display_buffer_1): Don't raise the win from which minibuf was entered.
10476 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
10477 (Fminibuffer_selected_window): Simplify.
10478
10479 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
10480
10481 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
10482 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
10483
10484 * insdel.c (check_markers, adjust_markers_for_delete)
10485 (adjust_markers_for_insert, adjust_markers_for_replace)
10486 (prepare_to_modify_buffer, RESTORE_VALUE):
10487 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
10488 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
10489 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
10490 * alloc.c (Fmake_marker, free_marker, gc_sweep):
10491 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
10492 * editfns.c (save_excursion_restore, transpose_markers):
10493 * window.c (delete_window):
10494 * xdisp.c (message_dolog): Update for new types.
10495
10496 2003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10497
10498 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
10499 (realize_default_face): Use default_face_done_p for the force_p
10500 argument to set_lface_from_font_name. Set default_face_done_p to one.
10501
10502 * frame.c (make_frame): Initialize default_face_done_p.
10503
10504 * frame.h (struct frame): Add default_face_done_p.
10505
10506 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
10507 will be defined.
10508
10509 2003-06-25 Stefan Monnier <monnier@cs.yale.edu>
10510
10511 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
10512 Initialize the new field `gcmarkbit'.
10513 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
10514 (mark_interval_tree): Don't mark the tree separately from the nodes.
10515 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
10516 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
10517 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
10518
10519 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
10520 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
10521 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
10522 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
10523 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
10524
10525 2003-06-24 Dave Love <fx@gnu.org>
10526
10527 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
10528
10529 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
10530 from gnulib.
10531
10532 2003-06-21 Richard M. Stallman <rms@gnu.org>
10533
10534 * fileio.c (Fwrite_region): Alternate messages
10535 for append and partial write.
10536
10537 * keyboard.c (read_key_sequence): When converting upcase fn key to
10538 downcase, update fkey and keytran so `backspace' gets translated.
10539
10540 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
10541
10542 * process.c (wait_reading_process_input): Don't signal SIGIO
10543 in batch mode.
10544
10545 2003-06-17 Kenichi Handa <handa@m17n.org>
10546
10547 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
10548 composite.h.
10549
10550 * xselect.c: Don't include charset.h, coding.h, composite.h.
10551 (Qforeign_selection): New variable.
10552 (syms_of_xselect): Intern and static it.
10553 (selection_data_to_lisp_data): Return a unibyte string made from
10554 data with `foreign-selection' text property.
10555
10556 2003-06-15 Stefan Monnier <monnier@cs.yale.edu>
10557
10558 * termhooks.h (EVENT_INIT): New macro.
10559
10560 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
10561
10562 * alloc.c (mark_kboards): Move to keyboard.c.
10563
10564 * keyboard.c (record_asynch_buffer_change, read_avail_input):
10565 * xterm.c (x_dispatch_event):
10566 * xmenu.c (find_and_call_menu_selection):
10567 * xdisp.c (handle_tool_bar_click):
10568 * w32menu.c (menubar_selection_callback):
10569 * sysdep.c (kbd_input_ast, read_input_waiting):
10570 * msdos.c (dos_rawgetc):
10571 * macterm.c (mac_check_for_quit_char):
10572 * macmenu.c (menubar_selection_callback):
10573 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
10574 data to kbd_buffer_store_event.
10575
10576 2003-06-15 Kim F. Storm <storm@cua.dk>
10577
10578 * xdisp.c (x_fix_overlapping_area): Always use area relative X
10579 to fix redisplay problem with tall characters (such as \e,AC\e(B).
10580
10581 2003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
10582
10583 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
10584
10585 2003-06-12 Kenichi Handa <handa@m17n.org>
10586
10587 * fileio.c (Fwrite_region): Save and restore restriction.
10588
10589 2003-06-12 Dave Love <fx@gnu.org>
10590
10591 * alloca.c (alloca): Declare arg as size_t.
10592
10593 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
10594 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
10595
10596 2003-06-11 Dave Love <fx@gnu.org>
10597
10598 * search.c (shrink_regexp_cache): Use xrealloc.
10599 (syms_of_search): Use xmalloc.
10600
10601 2003-06-10 Kim F. Storm <storm@cua.dk>
10602
10603 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
10604 Adjust phys_cursor.x to be relative to window box, rather than
10605 text area before checking -- to ensure cursor is redrawn when
10606 exposing window.
10607 Note: This also fixes a similar (older) bug if display margins
10608 are present.
10609
10610 2003-06-06 Kenichi Handa <handa@m17n.org>
10611
10612 * coding.c (encoding_buffer_size): If coding->type is
10613 coding_type_ccl, double magnification on CRLF encoding.
10614
10615 2003-06-06 Jason Rumney <jasonr@gnu.org>
10616
10617 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
10618 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
10619
10620 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
10621 Mac too.
10622
10623 2003-06-05 Dave Love <fx@gnu.org>
10624
10625 * strftime.c: Merge changes from gnulib.
10626
10627 * mktime.c (__mktime_internal): Merge changes from gnulib
10628 involving year 69 and dst2.
10629
10630 Changes to merge with gnulib version and be consistent with the
10631 autoconf test:
10632
10633 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
10634 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
10635 [HAVE_LOCALE_H]: Include locale.h.
10636 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
10637
10638 2003-06-05 Kim F. Storm <storm@cua.dk>
10639
10640 * window.c (coordinates_in_window): Convert X and Y to window
10641 relative coordinates inside mode-line and header-line parts.
10642 Convert X and Y to margin area relative coordinates inside left
10643 and right display margin parts.
10644
10645 2003-06-05 Jason Rumney <jasonr@gnu.org>
10646
10647 * w32fns.c (add_system_logical_colors_to_map): New function.
10648 (Fx_open_connection): Use it.
10649
10650 2003-06-04 Stefan Monnier <monnier@cs.yale.edu>
10651
10652 * process.c (allocate_pty): Revert part of the previous patch.
10653 (Faccept_process_output): Simplify.
10654
10655 2003-06-04 Jason Rumney <jasonr@gnu.org>
10656
10657 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
10658
10659 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
10660 (lispy_mouse_wheel_names): Remove.
10661 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
10662 Always define drag_and_drop_syms.
10663
10664 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
10665 WHEEL_EVENT events.
10666
10667 2003-06-03 Stefan Monnier <monnier@cs.yale.edu>
10668
10669 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
10670
10671 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
10672
10673 2003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10674
10675 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
10676 menu item label.
10677
10678 2003-06-03 Richard M. Stallman <rms@gnu.org>
10679
10680 * window.c (Fwindow_edges): Doc fix.
10681 (Fwindow_pixel_edges, Fwindow_inside_edges)
10682 (Fwindow_inside_pixel_edges): New functions.
10683 (syms_of_window): defsubr them.
10684
10685 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
10686 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
10687
10688 2003-06-02 Stefan Monnier <monnier@cs.yale.edu>
10689
10690 * dispnew.c (Fsit_for): Don't lie about the number of args.
10691
10692 2003-06-02 Dave Love <fx@gnu.org>
10693
10694 * callproc.c: Use HAVE_FCNTL_H, not USG5.
10695 (syms_of_callproc) <process-environment>: Doc fix.
10696
10697 * doc.c: Use HAVE_FCNTL_H, not USG5.
10698
10699 * xfaces.c (font_rescale_ratio): Fix for K&R.
10700
10701 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
10702
10703 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
10704
10705 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
10706
10707 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
10708 (xg_create_frame_widgets): Use ENCODE_UTF_8.
10709
10710 * xterm.c (Qutf_8): Move to coding.c
10711
10712 * xmenu.c (ENCODE_MENU_STRING): New.
10713 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
10714 Use it.
10715
10716 * coding.h (ENCODE_UTF_8): New.
10717 (Qutf_8): Declare.
10718
10719 * coding.c (Qutf_8): New.
10720 (syms_of_coding): Intern it.
10721
10722 * fns.c: Doc fixes.
10723
10724 2003-06-02 Kenichi Handa <handa@m17n.org>
10725
10726 * buffer.c (Fset_buffer_multibyte): Fix previous change.
10727
10728 2003-06-01 Stefan Monnier <monnier@cs.yale.edu>
10729
10730 * lread.c (openp): Make sure STR is a string.
10731
10732 2003-06-01 David Ponce <david@dponce.com>
10733
10734 * termhooks.h (enum event_kind): Add new WHEEL_EVENT event.
10735 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
10736
10737 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
10738 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
10739 (discard_mouse_events): Discard WHEEL_EVENT events too.
10740 (lispy_wheel_names, wheel_syms): New.
10741 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
10742 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX defined.
10743 (make_lispy_event): Add WHEEL_EVENT handler.
10744
10745 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
10746 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
10747 WHEEL_EVENT events.
10748
10749 2003-05-31 John Paul Wallington <jpw@gnu.org>
10750
10751 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
10752 timer are in lisp/emacs-lisp.
10753
10754 2003-05-31 Kenichi Handa <handa@m17n.org>
10755
10756 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
10757 region when a buffer is changed to unibyte.
10758
10759 * charset.h (VALID_LEADING_CODE_P): New macro.
10760 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
10761
10762 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
10763 is nonzero, accept multibyte form of eight-bit-control chars.
10764 (decode_composition_emacs_mule): Likewise.
10765 (decode_coding_emacs_mule): Likewise.
10766 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
10767 multibyte form of eight-bit-control chars.
10768
10769 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
10770 (Finsert_file_contents): If coding-system-for-read is bound to
10771 Qauto_save_coding, use the coding system emacs-mule with special
10772 setting for recovering a file.
10773 (choose_write_coding_system): On auto saving, use the coding
10774 system emacs-mule with special setting for auto saving.
10775 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
10776
10777 2003-05-30 Kenichi Handa <handa@m17n.org>
10778
10779 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
10780 properly before calling ccl_driver.
10781
10782 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
10783
10784 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is nonzero.
10785 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
10786 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
10787
10788 2003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
10789
10790 * xfaces.c (realize_default_face): Do not abort if lface is
10791 non-existent - reverts change from 2003-05-19.
10792
10793 2003-05-29 Kenichi Handa <handa@m17n.org>
10794
10795 * coding.c (decode_coding_iso2022): Pay attention to the byte
10796 sequence of CTEXT extended segment, and retain those bytes as is.
10797
10798 2003-05-28 Kenichi Handa <handa@m17n.org>
10799
10800 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjust for the name change
10801 of CODING_REPLACEMENT_CHARACTER.
10802 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
10803 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
10804 check this flag on encoding.
10805 (encode_coding_sjis_big5):
10806 Check CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
10807 (Fset_terminal_coding_system_internal):
10808 Set CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
10809 instead of setting CODING_FLAG_ISO_SAFE flag in terminal_coding.flags.
10810
10811 * coding.h (CODING_REPLACEMENT_CHARACTER): Rename from
10812 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
10813 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
10814
10815 2003-05-28 Richard M. Stallman <rms@gnu.org>
10816
10817 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
10818
10819 * eval.c (unbind_to): Move init of this_binding to separate statement.
10820
10821 2003-05-28 Kim F. Storm <storm@cua.dk>
10822
10823 * xdisp.c (expose_window): Fix error in calculation of
10824 window relative coordinates of area to redisplay.
10825
10826 2003-05-27 Jason Rumney <jasonr@gnu.org>
10827
10828 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
10829
10830 2003-05-27 David Ponce <david@dponce.com>
10831
10832 Handle W32 mouse wheel events as mouse click events, like in X.
10833
10834 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
10835 MOUSE_WHEEL_EVENT anymore.
10836
10837 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
10838 Scrolling down/up the mouse wheel is respectively mapped to mouse
10839 button 4 and 5.
10840 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
10841 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
10842 WM_MOUSEWHEEL events.
10843
10844 2003-05-27 Andreas Schwab <schwab@suse.de>
10845
10846 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
10847
10848 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
10849 partially visible line.
10850
10851 * alloc.c (Fgarbage_collect): Fix last change.
10852
10853 2003-05-26 John Paul Wallington <jpw@gnu.org>
10854
10855 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
10856
10857 2003-05-25 Stefan Monnier <monnier@cs.yale.edu>
10858
10859 * window.c (Fset_window_buffer): Add type of `keep_margins'.
10860 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
10861
10862 * window.h (window_box_text_cols): Declare.
10863
10864 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
10865 (x_draw_vertical_border): Remove unused var `f'.
10866
10867 * xfaces.c (build_scalable_font_name): Remove `unused var
10868 pixel_size' warning.
10869
10870 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
10871
10872 * unexelf.c (unexec): Remove `unused var n' warning.
10873
10874 * strftime.c (my_strftime_localtime_r): Remove `defined but
10875 unused' warning.
10876
10877 * process.c (allocate_pty): Remove `unused var stb' and
10878 `cp might be used uninitialized' warnings.
10879
10880 * dispnew.c (mode_line_string): Remove unused var `f'.
10881
10882 * coding.c (find_safe_codings): Remove unused var `i'.
10883
10884 * bytecode.c (Fbyte_code): Remove `unused val' warning.
10885
10886 * buffer.c (Fkill_buffer): Remove unused var `list'.
10887
10888 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
10889
10890 2003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10891
10892 * frame.c (make_frame): Condition want_fullscreen with
10893 HAVE_WINDOW_SYSTEM.
10894
10895 2003-05-25 Juanma Barranquero <lektu@terra.es>
10896
10897 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
10898 (Fwindow_scroll_bars): Fix typo in docstring.
10899
10900 2003-05-24 Kim F. Storm <storm@cua.dk>
10901
10902 The following changes serve several purposes:
10903
10904 1) Swap the position of fringes and display margins in windows, i.e.
10905 the fringes are now displayed between the margins and the text area
10906 (by default).
10907
10908 2) Allow fringe and scroll bar parameters to be set per-buffer and
10909 per-window (like display margins). Such settings are now stored
10910 in window configurations, preserved when frames are resized, and
10911 copied when windows are split vertically or horizontally.
10912 Several bugs related to display margins have been fixed.
10913
10914 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
10915
10916 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
10917 rather than FRAME_WIDTH (FRAME_FONT (f)).
10918
10919 5) Introduce a consistent naming of variables, members and macros
10920 depending on whether their value is measured in pixels or in
10921 canonical columns/lines. Pixel dimensions are named *_width and
10922 *_height, while canonical columns/lines are named *_cols and
10923 *_lines. Pixel positions are named *_x and *_y, while column/line
10924 positions are named *_col and *_line.
10925
10926 6) Consolidate more of the X, W32, and MAC gui code by moving
10927 common data into struct frame, and generalize it for the non-gui
10928 case by using suitable defaults.
10929
10930 7) Cleanup and consolidate the macros controlling frame and window
10931 layout into frame.h and window.h, and generalize the use of the
10932 various window_box_* functions (enhanced to handle the new fringe
10933 position and the per-window fringe and scroll bar settings).
10934
10935 * frame.h (struct frame): Rename members height to text_lines,
10936 width to text_cols, window_height to total_lines, window_width to
10937 total_cols, new_height to new_text_lines, new_width to
10938 new_text_cols. All uses changed.
10939 (struct frame): New members which consolidate common members of
10940 x_output, w32_output, and mac_output structures: left_pos,
10941 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
10942 win_gravity, size_hint_flags, border_width, internal_border_width,
10943 line_height, fringe_cols, left_fringe_width, right_fringe_width,
10944 want_fullscreen. All uses changed.
10945 (struct frame): New member column_width contaning the canonical
10946 column width, analogue to line_height. All uses changed.
10947 (struct frame): Rename members scroll_bar_pixel_width to
10948 config_scroll_bar_width, and scroll_bar_cols to
10949 config_scroll_bar_cols. All uses changed.
10950 (struct frame): New member scroll_bar_actual_width which
10951 consolidates and renames the vertical_scroll_bar_extra member of
10952 x_output, w32_output, and mac_output structures. All uses changed.
10953 (FRAME_PIXEL_HEIGHT): Rename from PIXEL_HEIGHT and moved
10954 from x/w32/macterm.h files. All uses changed. Also change code
10955 which referred to f->output_data...->pixel_height.
10956 (FRAME_PIXEL_WIDTH): Rename from PIXEL_WIDTH and moved
10957 from x/w32/macterm.h files. All uses changed. Also change code
10958 which referred to f->output_data...->pixel_width.
10959 (FRAME_LINES): Rename from FRAME_HEIGHT. All uses changed.
10960 Also change code which referred to f->height.
10961 (FRAME_COLS): Rename from FRAME_WIDTH. All uses changed.
10962 Also change code which referred to f->width.
10963 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
10964 to update new_text_lines and new_text_cols members directly.
10965 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Rename from
10966 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
10967 (FRAME_CONFIG_SCROLL_BAR_COLS): Rename from
10968 FRAME_SCROLL_BAR_COLS. All uses changed.
10969 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
10970 Rename from FRAME_LEFT_SCROLL_BAR_WIDTH and
10971 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
10972 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
10973 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
10974 (FRAME_TOTAL_COLS): Rename from FRAME_WINDOW_WIDTH.
10975 (SET_FRAME_COLS): Rename from SET_FRAME_WIDTH.
10976 (FRAME_TOTAL_COLS_ARG): Rename from FRAME_WINDOW_WIDTH_ARG.
10977 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
10978 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
10979 (FRAME_LINE_HEIGHT): Rename from CANON_Y_UNIT.
10980 Unconditionally return line_height member (it now has proper value
10981 also for non-window frames).
10982 (FRAME_COLUMN_WIDTH): Rename from CANON_X_UNIT. Unconditionally
10983 return new column_width member (rather than the default font width).
10984 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
10985 (FRAME_RIGHT_FRINGE_WIDTH): Rename from FRAME_X_... and moved
10986 from x/w32/macterm.h files. Unconditionally return corresponding
10987 member of frame structure (they now have proper values also for
10988 non-window frames).
10989 (FRAME_TOTAL_FRINGE_WIDTH): Rename from FRAME_FRINGE_WIDTH.
10990 Calculate return value from left and right widths.
10991 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
10992 internal_border_width member (has proper value for non-window frame).
10993 (FRAME_PIXEL_X_FROM_CANON_X): Rename from PIXEL_X_FROM_CANON_X.
10994 (FRAME_PIXEL_Y_FROM_CANON_Y): Rename from PIXEL_Y_FROM_CANON_Y.
10995 (FRAME_CANON_X_FROM_PIXEL_X): Rename from CANON_X_FROM_PIXEL_X.
10996 (FRAME_CANON_Y_FROM_PIXEL_Y): Rename from CANON_Y_FROM_PIXEL_Y.
10997 (FRAME_LINE_TO_PIXEL_Y): Rename from CHAR_TO_PIXEL_ROW,
10998 consolidated from xterm.h, macterm.h, and w32term.h.
10999 (FRAME_COL_TO_PIXEL_X): Rename from CHAR_TO_PIXEL_COL,
11000 consolidated from xterm.h, macterm.h, and w32term.h.
11001 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rename from
11002 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
11003 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Rename from
11004 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
11005 (FRAME_PIXEL_Y_TO_LINE): Rename from PIXEL_TO_CHAR_ROW
11006 consolidated from x/mac/w32term.h.
11007 (FRAME_PIXEL_X_TO_COL): Rename from PIXEL_TO_CHAR_COL
11008 consolidated from x/mac/w32term.h.
11009 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Rename from
11010 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
11011 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Rename from
11012 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
11013
11014 * window.h (struct window): Rename members left to left_col,
11015 top to top_line, height to total_lines, width to total_cols,
11016 left_margin_width to left_margin_cols, right_margin_width to
11017 right_margin_cols, orig_height to orig_total_lines, orig_top to
11018 orig_top_line. All uses changed.
11019 (struct window): New members left_fringe_width, right_fringe_width,
11020 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
11021 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
11022 New macros primarily used to simplify other macros.
11023 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
11024 referred to XINT (w->width).
11025 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
11026 referred to XINT (w->height).
11027 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
11028 referred to XINT (w->width) * canon_x_unit.
11029 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
11030 referred to XINT (w->height) * canon_y_unit.
11031 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
11032 referred to XINT (w->left).
11033 (WINDOW_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_EDGE. Change
11034 all uses and code that referred to XINT (w->left) + XINT (w->width).
11035 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
11036 referred to XINT (w->top).
11037 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
11038 referred to XINT (w->top) + XINT (w->height).
11039 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
11040 referred to XINT (w->left) * canon_x_unit.
11041 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
11042 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
11043 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
11044 referred to XINT (w->top) * canon_y_unit.
11045 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
11046 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
11047 (WINDOW_LEFTMOST_P): New macro.
11048 (WINDOW_BOX_LEFT_EDGE_COL): Rename from WINDOW_LEFT_MARGIN.
11049 All uses changed.
11050 (WINDOW_BOX_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_MARGIN.
11051 All uses changed.
11052 (WINDOW_BOX_LEFT_EDGE_X): Rename from
11053 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
11054 Do not exclude left fringe width.
11055 (WINDOW_BOX_RIGHT_EDGE_X): Rename from
11056 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
11057 Do not exclude fringe widths.
11058 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
11059 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
11060 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
11061 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
11062 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
11063 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
11064 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
11065 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
11066 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
11067 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
11068 New macros. Change code which referenced corresponding
11069 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
11070 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
11071 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
11072 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
11073 allow per-window scroll-bar settings.
11074 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
11075 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
11076 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
11077 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
11078 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
11079 FRAME_SCROLL_BAR_WIDTH.
11080 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
11081 (WINDOW_SCROLL_BAR_AREA_X): New macros.
11082 (WINDOW_HEADER_LINE_HEIGHT): Rename from
11083 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
11084 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Rename from
11085 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
11086 (WINDOW_BOX_TEXT_HEIGHT): Rename from
11087 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
11088 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
11089 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
11090 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Move here from dispextern.h.
11091 (WINDOW_LEFT_MARGIN_WIDTH): Rename from
11092 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
11093 (WINDOW_RIGHT_MARGIN_WIDTH): Rename from
11094 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
11095 (window_from_coordinates): Update prototype.
11096 (Fset_window_buffer): Update EXFUN.
11097 (set_window_buffer): Update prototype.
11098
11099 * dispextern.h (struct glyph_matrix): Rename members window_left_x
11100 to window_left_col, window_top_y to window_top_line. All uses
11101 changed.
11102 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
11103 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
11104 internal_border_width is now set to 0 for non-window frames.
11105 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
11106 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
11107 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
11108 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
11109 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
11110 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
11111 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
11112 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
11113 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
11114 Move to window.h and renamed [see window.h changes].
11115 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
11116 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
11117 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
11118 Use WINDOW_TOTAL_LINES.
11119 (frame_update_line_height): Remove prototype.
11120
11121 * buffer.h (struct buffer): Rename members measured in columns:
11122 left_margin_width to left_margin_cols, right_margin_width to
11123 right_margin_cols. All uses changed.
11124 New members left_fringe_width, right_fringe_width,
11125 fringes_outside_margins for per-buffer fringe settings.
11126 New members scroll_bar_width and vertical_scroll_bar_type for
11127 per-buffer scroll bar settings.
11128
11129 * buffer.c (init_buffer_once): Set buffer_defaults and
11130 buffer_local_flags for new buffer-local variables
11131 left_fringe_width, right_fringe_width, fringes_outside_margins,
11132 scroll_bar_width, and vertical_scroll_bar_type.
11133 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
11134 default-* variables for them.
11135
11136 * dispnew.c: Make (many) trivial substitutions for renamed and
11137 new macros in dispextern.h, frame.h and window.h.
11138 (mode_line_string): No need to adjust width for mode lines, as it
11139 is already adjusted by the caller.
11140 (marginal_area_string): Handle fringes inside/outside margins.
11141
11142 * frame.c: Make (many) trivial substitutions for renamed and
11143 new macros in dispextern.h, frame.h and window.h.
11144 (make_frame): Initialize left_fringe_width, right_fringe_width,
11145 fringe_cols, scroll_bar_actual_width, border_width,
11146 internal_border_width, column_width, line_height, x_pixels_diff,
11147 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
11148 members with values suitable for a non-window frames.
11149
11150 * gtkutil.c: Make (many) trivial substitutions for renamed and
11151 new macros in dispextern.h, frame.h and window.h.
11152
11153 * indent.c: Make (few) trivial substitutions for renamed and
11154 new macros in dispextern.h, frame.h and window.h.
11155
11156 * keyboard.c: Make (many) trivial substitutions for renamed and
11157 new macros in dispextern.h, frame.h and window.h.
11158 (make_lispy_event): Use window positions returned from
11159 window_from_coordinates when constructing the lisp event for
11160 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
11161 (incorrect) values locally.
11162 (make_lispy_movement): Use window positions returned from
11163 window_from_coordinates when constructing the lisp event, rather
11164 than calculating (incorrect) values locally.
11165
11166 * scroll.c: Make (some) trivial substitutions for renamed and
11167 new macros in dispextern.h, frame.h and window.h.
11168
11169 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
11170 scroll-bars.
11171
11172 * sysdep.c: Make (few) trivial substitutions for renamed and
11173 new macros in dispextern.h, frame.h and window.h.
11174
11175 * term.c: Make (some) trivial substitutions for renamed and
11176 new macros in dispextern.h, frame.h and window.h.
11177
11178 * widget.c: Make (few) trivial substitutions for renamed and
11179 new macros in dispextern.h, frame.h and window.h.
11180
11181 * window.c: Make (many) trivial substitutions for renamed and
11182 new macros in dispextern.h, frame.h and window.h.
11183 (make_window): Initialize new members
11184 left_margin_cols, right_margin_cols, left_fringe_width,
11185 right_fringe_width, fringes_outside_margins, scroll_bar_width,
11186 and vertical_scroll_bar_type.
11187 (coordinates_in_window): Adapt to new fringe/margin positions
11188 and per-window fringes and scroll-bars.
11189 Fix bug related to incorrectly adjusting coordinates by
11190 frame's internal_border_width (the effect normally negible since
11191 the internal_border_width is typically 0 or 1 pixel, but very
11192 noticeable for an internal_border_width of e.g. 25 pixels).
11193 Upon successful return (other than ON_NOTHING), the coordinates
11194 are now always properly converted to window relative for the
11195 given display element.
11196 (window_from_coordinates): Add new parameters wx and wy to
11197 return the window relative x and y position in the returned
11198 window and part. A null arg means, don't return the position.
11199 All callers changed.
11200 (adjust_window_margins): New function which may reduce the width
11201 of the display margins if a window's text area is too small after
11202 resizing or splitting windows.
11203 (size_window): Fix bug that did not account for display margin
11204 widths when checking the minimum width of a window; use
11205 adjust_window_margins.
11206 (set_window_buffer): Call Fset_window_fringes and
11207 Fset_window_scroll_bars to setup per-window elements.
11208 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
11209 existing display margin, fringe widths, and scroll bar settings
11210 (e.g. after splitting a window or resizing the frame).
11211 All callers changed.
11212 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
11213 (Fsplit_window): Duplicate original window's display margin,
11214 fringe, and scroll-bar settings; then call Fset_window_buffer with
11215 KEEP_MARGINS non-nil. This fixes a bug which caused a split
11216 window to only preserve the display margins in one of the windows.
11217 When splitting horizontally, call adjust_window_margins on both
11218 windows to ensure that the text area of the new windows is non too
11219 narrow. This fixes a bug which could cause Emacs to trap if the
11220 width of the split window was less than the width of the display
11221 margins.
11222 (window_box_text_cols): Rename from window_internal_width.
11223 All uses changed. Adapt to per-window fringes and scroll bars.
11224 Fix bug that caused vertical separator to be subtracted also on
11225 window frames. Fix another bug that did not reduce the returned
11226 value by the columns used for display margins.
11227 (window_scroll_line_based): Fix bug related to scrolling too much
11228 when display margins are present (implicitly fixed by the fix to
11229 window_box_text_cols).
11230 (scroll_left, scroll_right): Fix bug related to scrolling too far
11231 by default when display margins are present (implicitly fixed by
11232 the fix to window_box_text_cols).
11233 (struct saved_window): Rename members left to left_col, top to
11234 top_line, width to total_cols, height to total_lines, orig_top to
11235 orig_top_line, orig_height to orig_total_lines. All uses changed.
11236 New members left_margin_cols, right_margin_cols,
11237 left_fringe_width, right_fringe_width, fringes_outside_margins,
11238 scroll_bar_width, and vertical_scroll_bar_type for saving
11239 per-window display elements.
11240 (Fset_window_configuration): Restore display margins, fringes,
11241 and scroll bar settings. This fixes a bug which caused display
11242 margins to be discarded when saving and restoring a window
11243 configuration.
11244 (save_window_save): Save display margins, fringes, and scroll bar
11245 settings. This fixes a bug which caused display margins to be
11246 discarded when saving and restoring a window configuration.
11247 (Fset_window_margins): Do nothing if display margins are not
11248 really changed. Otherwise, call adjust_window_margins to ensure
11249 the text area doesn't get too narrow. This fixes a bug which
11250 could cause Emacs to trap if setting display margins wider than
11251 the width of the window.
11252 (Fset_window_fringes): New defun to allow user to specifically set
11253 this window's fringe widths and position vs. display margins.
11254 (Fwindow_fringes): New defun to return window's actual fringe settings.
11255 (Fset_window_scroll_bars): New defun to allow user to specifically
11256 set this window's scroll bar width and position.
11257 (Fwindow_scroll_bars): New defun to return window's actual scroll
11258 bar settings.
11259 (compare_window_configurations): Also compare display margins,
11260 fringes, and scroll bar settings.
11261 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
11262
11263 * xdisp.c: Make (many) trivial substitutions for renamed and
11264 new macros in dispextern.h, frame.h and window.h.
11265 (window_box_width): Adapt to per-window fringes and scroll bars,
11266 and new fringe vs. display margin position. Note that returned
11267 value is no longer guaranteed to be a whole multiple of the frame
11268 column width, since per-window fringes may now be any width.
11269 (window_box_left_offset): New function like window_box_left, but
11270 value is relative to left border of window (rather than frame).
11271 (window_box_right_offset): New function like window_box_right,
11272 but value is relative to left border of window.
11273 (window_box_left): Adapt to per-window fringes and scroll bars,
11274 and new fringe vs. display margin position. Simplify by using
11275 WINDOW_LEFT_EDGE_X and window_box_left_offset.
11276 (window_box): Allow null args for unnecessary return values;
11277 change/simplify relevant callers.
11278 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
11279 and new fringe vs. display margin position.
11280 Use window_box_left_offset and window_box_right_offset
11281 (get_glyph_string_clip_rect): Adapt to per-window fringes and
11282 scroll bars, and new fringe vs. display margin position.
11283 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
11284 (draw_fringe_bitmap): Rework to handle per-window fringes and new
11285 fringe vs. display margin position.
11286 (hscroll_window_tree): Use window_box_width instead of window_box.
11287 (redisplay_window): Adapt to per-window scroll bars.
11288 (draw_glyphs): Rework to handle per-window fringes and scroll
11289 bars, and new fringe vs. display margin position.
11290 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
11291 (x_clear_end_of_line): Adapt to per-window fringes and scroll
11292 bars, and new fringe vs. display margin position. Fix bug which
11293 increased total width of full_width rows by width of scroll bars
11294 although window's total width already includes that.
11295 (x_fix_overlapping_area): Simplify using window_box_left_offset.
11296 (expose_area): Simplify using window_box_left_offset.
11297 (x_draw_vertical_border): Handle per-window scroll bar settings,
11298 mixing windows with left, right and no scroll bars.
11299
11300 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
11301 where it's used in x_list_fonts (for clarity).
11302 (frame_update_line_height): Remove unused function; functionality
11303 is now done directly when setting the default font in x_set_font.
11304
11305 * xfns.c: Make (many) trivial substitutions for renamed and
11306 new macros in dispextern.h, frame.h and window.h.
11307
11308 * xmenu.c: Make (some) trivial substitutions for renamed and
11309 new macros in dispextern.h, frame.h and window.h.
11310
11311 * xterm.h (struct x_output): Move members left_pos, top_pos,
11312 border_width, pixel_height, pixel_width, line_height,
11313 internal_border_width, vertical_scroll_bar_extra,
11314 left_fringe_width, right_fringe_width, fringe_cols,
11315 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
11316 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
11317 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
11318 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
11319 (PIXEL_WIDTH, PIXEL_HEIGHT)
11320 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
11321 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
11322 frame.h and renamed [see frame.h changes].
11323 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
11324 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
11325 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
11326 and renamed [see frame.h changes].
11327
11328 * xterm.c: Make (several) trivial substitutions for renamed and
11329 new macros in dispextern.h, frame.h and window.h.
11330 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
11331 (scroll_run): Adapt to new fringe position.
11332 (glyph_rect): Use window coordinates returned from
11333 window_from_coordinates rather than frame_to_window_pixel_xy.
11334 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
11335 scroll-bars.
11336 (handle_one_xevent): Simplify a USE_GTK conditional.
11337 (x_clip_to_row): Remove superfluous whole_line_p arg and code
11338 (fringes are now inside margins, i.e. always in the clipping area).
11339 All callers changed.
11340 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
11341 directly, then call compute_fringe_widths. Don't call
11342 frame_update_line_height.
11343
11344 * w32term.h (struct w32_output): Move members left_pos, top_pos,
11345 border_width, pixel_height, pixel_width, line_height,
11346 internal_border_width, vertical_scroll_bar_extra,
11347 left_fringe_width, right_fringe_width, fringe_cols,
11348 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
11349 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
11350 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
11351 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
11352 (PIXEL_WIDTH, PIXEL_HEIGHT)
11353 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
11354 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
11355 frame.h and renamed [see frame.h changes].
11356 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
11357 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
11358 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
11359 and renamed [see frame.h changes].
11360
11361 * w32term.c: Make (several) trivial substitutions for renamed and
11362 new macros in dispextern.h, frame.h and window.h.
11363 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
11364 (glyph_rect): Use window coordinates returned from
11365 window_from_coordinates rather than frame_to_window_pixel_xy.
11366 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
11367 scroll-bars.
11368 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
11369 (fringes are now inside margins, i.e. always in the clipping area).
11370 All callers changed.
11371 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
11372 directly, then call compute_fringe_widths. Don't call
11373 frame_update_line_height.
11374
11375 * w32console.c: Make (few) trivial substitutions for renamed and
11376 new macros in dispextern.h, frame.h and window.h.
11377
11378 * w32fns.c: Make (many) trivial substitutions for renamed and
11379 new macros in dispextern.h, frame.h and window.h.
11380
11381 * w32menu.c: Make (few) trivial substitutions for renamed and
11382 new macros in dispextern.h, frame.h and window.h.
11383
11384 * macterm.h (struct mac_output): Move members left_pos, top_pos,
11385 border_width, pixel_height, pixel_width, line_height,
11386 internal_border_width, vertical_scroll_bar_extra,
11387 left_fringe_width, right_fringe_width, fringe_cols,
11388 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
11389 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
11390 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
11391 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
11392 (PIXEL_WIDTH, PIXEL_HEIGHT)
11393 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
11394 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
11395 frame.h and renamed [see frame.h changes].
11396 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
11397 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
11398 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
11399 and renamed [see frame.h changes].
11400
11401 * macterm.c: Make (several) trivial substitutions for renamed and
11402 new macros in dispextern.h, frame.h and window.h.
11403 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
11404 (glyph_rect): Use window coordinates returned from
11405 window_from_coordinates rather than frame_to_window_pixel_xy.
11406 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
11407 scroll-bars.
11408 (x_clip_to_row): Remove superfluous whole_line_p arg and code
11409 (fringes are now inside margins, i.e. always in the clipping area).
11410 All callers changed.
11411 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
11412 directly, then call compute_fringe_widths. Don't call
11413 frame_update_line_height.
11414
11415 * macfns.c: Make (several) trivial substitutions for renamed and
11416 new macros in dispextern.h, frame.h and window.h.
11417 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
11418
11419 * macmenu.c: Make (few) trivial substitutions for renamed and
11420 new macros in dispextern.h, frame.h and window.h.
11421
11422 * msdos.h (struct x_output): Remove members left_pos, top_pos,
11423 and line_height, and use corresponding new members in struct
11424 frame. All uses changed.
11425 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
11426 superseeded by corresponding macros in frame.h.
11427
11428 * msdos.c: Make (several) trivial substitutions for renamed and
11429 new macros in dispextern.h, frame.h and window.h.
11430 (IT_note_mouse_highlight): Use updated window coordinates returned
11431 by window_from_coordinates, rather than adjusting them locally.
11432 (internal_terminal_init): No need to initialize line_height here;
11433 it now defaults to 1.
11434
11435 2003-05-24 Stefan Monnier <monnier@cs.yale.edu>
11436
11437 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
11438 dropping `down' events.
11439
11440 2003-05-24 Andreas Schwab <schwab@suse.de>
11441
11442 * coding.c (find_safe_codings): Fix last change.
11443
11444 2003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
11445
11446 * xfns.c (x_window): Fix typo from 2003-05-21 change.
11447
11448 2003-05-23 Stefan Monnier <monnier@cs.yale.edu>
11449
11450 * xdisp.c (display_mode_element): Increase max depth.
11451 Simplify the error handling code. Use a different error string
11452 for the case where we hit the depth limit.
11453
11454 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
11455
11456 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
11457
11458 2003-05-21 Stefan Monnier <monnier@cs.yale.edu>
11459
11460 * intervals.c (get_local_map): Don't get char-property of previous
11461 point any more: get_pos_property already does it and better.
11462
11463 2003-05-21 Dave Love <fx@gnu.org>
11464
11465 [Merged from unicode branch.]
11466
11467 * xfns.c (x_window, x_window): Use use_xim.
11468
11469 * xterm.c (use_xim): Initialize.
11470 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
11471 (x_term_init): Maybe set use_xim.
11472
11473 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
11474
11475 2003-05-21 Jason Rumney <jasonr@gnu.org>
11476
11477 * unexw32.c (_start): Remove _fmode initialization.
11478
11479 * emacs.c (main) [WINDOWSNT]: Move it here.
11480
11481 2003-05-20 Dave Love <fx@gnu.org>
11482
11483 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
11484
11485 2003-05-19 Richard M. Stallman <rms@gnu.org>
11486
11487 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
11488 as value for QCfont attribute.
11489 (realize_default_face): lface should already exist; crash if not.
11490 Specify 0 for FORCE_P when calling set_lface_from_font_name.
11491
11492 * frame.c (Fignore_event): Doc fix.
11493
11494 2003-05-19 Kenichi Handa <handa@m17n.org>
11495
11496 * coding.c (decode_coding_string): Handle post-read-conversion
11497 even if the coding doesn't require decoding.
11498
11499 2003-05-18 Richard M. Stallman <rms@gnu.org>
11500
11501 * callproc.c (Fcall_process_region): Doc fix.
11502
11503 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
11504
11505 * lread.c (Fload): Print a message if package is obsolete.
11506
11507 * window.c (Fselect_window): Add optional `norecord' arg.
11508 (select_window_1): Fold into Fselect_window.
11509 (select_window_norecord): New function.
11510 (temp_output_buffer_show): Use it. Preserve current buffer.
11511
11512 * window.h (Fselect_window): Update declaration.
11513
11514 * window.c (delete_window, Fother_window, Fset_window_configuration):
11515 * minibuf.c (read_minibuf):
11516 * macterm.c (x_new_focus_frame):
11517 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
11518 * callint.c (Fcall_interactively):
11519 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
11520
11521 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
11522
11523 2003-05-17 David Kastrup <dak@gnu.org>
11524
11525 * process.c (read_process_output): Back out change from 2003-03-09.
11526
11527 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
11528
11529 * editfns.c (get_pos_property): Don't assume that `object' = nil.
11530
11531 * textprop.c (text_property_stickiness): New arg `buffer'.
11532
11533 * intervals.h (text_property_stickiness): New arg `buffer'.
11534 (get_pos_property): Declare.
11535
11536 * intervals.c (get_local_map): Use get_pos_property, to obey
11537 stickiness and empty overlays.
11538 (create_root_interval, graft_intervals_into_buffer): Use BEG.
11539 (merge_properties, intervals_equal, merge_properties_sticky):
11540 Use XCAR, XCDR.
11541 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
11542
11543 2003-05-17 Richard M. Stallman <rms@gnu.org>
11544
11545 * minibuf.c (read_minibuf): If buffer is empty, record the default
11546 in the history.
11547 (Fminibuffer_complete_word): When deleting the overlap, take account
11548 of its real position.
11549
11550 * fns.c (map_char_table): Fix previous change.
11551
11552 * syntax.c (find_defun_start):
11553 When open_paren_in_column_0_is_defun_start,
11554 return beginning of buffer.
11555
11556 * lisp.h (map_char_table): Declare added arg.
11557
11558 * fns.c (map_char_table): New arg TABLE gets the master table.
11559 All calls changed.
11560 Process default and inheritance, resorting to Faref if necessary.
11561
11562 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
11563 (Faccessible_keymaps): Pass new arg to map_char_table.
11564
11565 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
11566
11567 * casetab.c (set_case_table): Pass new arg to map_char_table.
11568
11569 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
11570
11571 * lisp.h (specbinding_func): New typedef.
11572 (struct specbinding): Use specbinding_func, to put the `volatile'
11573 in the right place.
11574
11575 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
11576 to avoid GCC warning.
11577
11578 2003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
11579
11580 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
11581
11582 2003-05-15 Stefan Monnier <monnier@cs.yale.edu>
11583
11584 * keyboard.c (apply_modifiers): Don't fill the other cache.
11585
11586 2003-05-14 Stefan Monnier <monnier@cs.yale.edu>
11587
11588 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
11589
11590 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
11591 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
11592 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
11593 (Fset_window_configuration, Fcurrent_window_configuration)
11594 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
11595 (Fpos_visible_in_window_p, mark_window_cursors_off)
11596 (window_internal_height, window_internal_width, Frecenter)
11597 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
11598 (replace_buffer_in_all_windows, init_window_once, init_window)
11599 (syms_of_window, keys_of_window): Move from lisp.h.
11600 * lisp.h: Move window.c declarations to window.h.
11601
11602 * bytecode.c: Include window.h.
11603 * emacs.c: Include window.h.
11604
11605 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
11606 (keyremap): Add `parent' field.
11607 (keyremap_step): Use it. Remove `parent' argument.
11608 (read_key_sequence): Setup and use the new `parent' field.
11609
11610 2003-05-11 Stefan Monnier <monnier@cs.yale.edu>
11611
11612 * keyboard.c (adjust_point_for_property): Ensure termination.
11613
11614 2003-05-10 Stefan Monnier <monnier@cs.yale.edu>
11615
11616 * keyboard.c (follow_key): Remove dead variable `did_meta'.
11617 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
11618 duplicated handling of function-key-map and key-translation-map
11619 in read_key_sequence.
11620 (read_key_sequence): Use them.
11621
11622 * keyboard.c (adjust_point_for_property): Try harder to move point
11623 to the non-sticky end of an invisible property.
11624
11625 * xdisp.c (single_display_prop_intangible_p): Make `space' display
11626 property intangible as well.
11627
11628 2003-05-10 Andreas Schwab <schwab@suse.de>
11629
11630 * xmenu.c (single_menu_item): Change last parameter to void* to
11631 avoid warning.
11632
11633 2003-05-09 Richard M. Stallman <rms@gnu.org>
11634
11635 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
11636 Bind Qinhibit_modification_hooks to t so there will be no GC.
11637 Rename local `tem' to `save_deactivate_mark'.
11638
11639 * eval.c (specpdl_ptr): Declare volatile.
11640 (unbind_to): Copy the whole binding and decrement specpdl_ptr
11641 before doing the work of unbinding it.
11642
11643 * lisp.h (struct specbinding): Declare elements volatile.
11644 (specpdl_ptr): Declare volatile.
11645
11646 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
11647
11648 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
11649 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
11650
11651 2003-05-08 Dave Love <fx@gnu.org>
11652
11653 * coding.c (Vlast_coding_system_used): Doc fix.
11654
11655 2003-05-07 Jason Rumney <jasonr@gnu.org>
11656
11657 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
11658 when system does not support them.
11659
11660 2003-05-05 Stefan Monnier <monnier@cs.yale.edu>
11661
11662 * fileio.c (Qwrite_region_annotate_functions): New var.
11663 (build_annotations): Use it to process the global part of the hook.
11664 (syms_of_fileio): Init and staticpro it.
11665
11666 * keyboard.c (safe_run_hooks_error): Display a message instead of
11667 silently ignoring the error.
11668
11669 2003-05-03 Stefan Monnier <monnier@cs.yale.edu>
11670
11671 * keyboard.c (input_available_signal): Mark static.
11672 (menu_bar_items): Use map_keymap.
11673 (menu_bar_one_keymap): Remove.
11674 (menu_bar_item): Adjust arglist (for use in map_keymap).
11675 Properly hide a second binding when not both are keymaps.
11676
11677 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
11678 (single_keymap_panes): Use it and map_keymap.
11679 (single_menu_item): Use skp as well.
11680
11681 * keymap.h (map_keymap_function_t): New type.
11682 (map_keymap): Declare.
11683
11684 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
11685 (map_keymap_call, Fmap_keymap): New functions.
11686 (syms_of_keymap): Defsubr map-keymap.
11687
11688 2003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11689
11690 * gtkutil.c (create_dialog, make_widget_for_menu_item)
11691 (make_menu_item, create_menus, xg_update_menu_item): Don't call
11692 ..._with_mnemonic functions for menu items.
11693
11694 2003-05-01 Kenichi Handa <handa@m17n.org>
11695
11696 * coding.c (coding_system_accept_latin_extra_p): Delete this
11697 function.
11698 (find_safe_codings): Pay attention to
11699 the property tranlsation-table-for-encode of each codings.
11700 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
11701
11702 2003-05-01 Stefan Monnier <monnier@cs.yale.edu>
11703
11704 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
11705
11706 2003-04-30 Stefan Monnier <monnier@cs.yale.edu>
11707
11708 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
11709
11710 * lisp.h (CHECK): Wrap args in parenthesis.
11711 (specbind): Fix doc: symbol = Qnil is not supported any more.
11712
11713 * bytecode.c (Fbyte_code) <unwind-protect>:
11714 Use Fprogn rather than 0 and Qnil.
11715
11716 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
11717 `double', and `triple' modifiers as well.
11718
11719 2003-04-30 Richard M. Stallman <rms@gnu.org>
11720
11721 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
11722
11723 * alloc.c (abort_on_gc): New variable.
11724 (Fgarbage_collect): Abort if abort_on_gc is set.
11725
11726 * lisp.h (abort_on_gc): Add decl.
11727
11728 * eval.c (Fsignal): Clear abort_on_gc.
11729
11730 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
11731 Reinit FORMAT_START and END before second scan.
11732
11733 * xdisp.c (move_it_vertically_backward): Do the final big else
11734 even if nlines is 0.
11735
11736 * xdisp.c (redisplay_internal): Finish the per-frame loop
11737 even if redisplay is suspended by input.
11738
11739 2003-04-24 Andrew Choi <akochoi@shaw.ca>
11740
11741 * macterm.c (x_list_fonts): Return all fonts that match if
11742 maxnames = -1.
11743
11744 2003-04-25 Kenichi Handa <handa@m17n.org>
11745
11746 * syntax.c (skip_chars): Fix previous change.
11747
11748 2003-04-24 Kenichi Handa <handa@m17n.org>
11749
11750 * syntax.c (skip_chars): Make the code faster by using the common
11751 technique of *p, *stop, and *endp.
11752
11753 2003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11754
11755 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
11756 tool_bar_items so GTK tool bar expose callback does not access items
11757 being updated.
11758
11759 2003-04-19 Stefan Monnier <monnier@cs.yale.edu>
11760
11761 * eval.c (Fapply): Undo last change and add a comment about why.
11762
11763 2003-04-18 Miles Bader <miles@gnu.org>
11764
11765 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
11766 pickier PARSE_MULTIBYTE_SEQ.
11767
11768 2003-04-17 Stefan Monnier <monnier@cs.yale.edu>
11769
11770 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
11771 Use XCDR, XCAR, CONSP.
11772 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
11773 (Fapply): Remove unnecessary GCPRO.
11774
11775 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
11776
11777 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
11778
11779 * buffer.h: Don't hardcode BEG==1.
11780
11781 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
11782
11783 2003-04-16 Richard M. Stallman <rms@gnu.org>
11784
11785 * xdisp.c (try_window, try_window_reusing_current_matrix):
11786 When at end of window, set window_end_pos to Z-ZV.
11787
11788 * buffer.c (Foverlay_recenter): Doc fix.
11789
11790 2003-04-14 Stefan Monnier <monnier@cs.yale.edu>
11791
11792 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
11793
11794 2003-04-14 Andrew Choi <akochoi@shaw.ca>
11795
11796 * macterm.c (mac_check_for_quit_char): Don't check more often than
11797 once a second.
11798
11799 2003-04-11 Stefan Monnier <monnier@cs.yale.edu>
11800
11801 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
11802 specially, so that they can't hide an implicit switch-frame event.
11803 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
11804 (head_table): Use switch-frame as event_kind for select-window.
11805 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
11806
11807 * editfns.c (Fformat): Lisp_Object/int mixup.
11808 (format2): Remove unused var numargs.
11809
11810 2003-04-11 Kenichi Handa <handa@m17n.org>
11811
11812 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
11813 (Qafter_insert_file_set_coding): New variable.
11814 (syms_of_fileio): Initialize and staticpro it. Delete declaration
11815 for after-insert-file-adjust-coding-function.
11816 (Finsert_file_contents): Call Qafter_insert_file_set_coding
11817 instead of Vafter_insert_file_adjust_coding_function.
11818
11819 2003-04-11 Kenichi Handa <handa@m17n.org>
11820
11821 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
11822
11823 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
11824 string. Callers changed.
11825
11826 2003-04-10 Kenichi Handa <handa@m17n.org>
11827
11828 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
11829 (syms_of_fileio): Declare it as a lisp variable.
11830 (Finsert_file_contents):
11831 Call Vafter_insert_file_adjust_coding_function before calling
11832 decode-format.
11833
11834 2003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11835
11836 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
11837 get GtkAdjustment as widget now is a GtkRange.
11838
11839 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
11840 GtkRange to avoid memory leak.
11841
11842 2003-04-09 Kenichi Handa <handa@m17n.org>
11843
11844 * xfaces.c (Vface_font_rescale_alist): New variable.
11845 (struct font_name): New member rescale_ratio.
11846 (font_rescale_ratio): New function.
11847 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
11848 (better_font_p): On comparing point sized, pay attention to
11849 recale_ratio member of fonts.
11850 (build_scalable_font_name): Reflect font->rescale_ratio in the
11851 font name.
11852 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
11853
11854 * lread.c (read1): Before calling index, check if the 2nd
11855 arguemnt is in ASCII range.
11856
11857 2003-04-08 Richard M. Stallman <rms@gnu.org>
11858
11859 * fileio.c (Ffile_symlink_p): Doc fix.
11860
11861 * editfns.c (Fformat): Translate positions of text properties
11862 in the format string to apply them to the result.
11863
11864 * fileio.c (Finsert_file_contents): Doc fix.
11865 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
11866
11867 2003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
11868
11869 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
11870
11871 2003-04-08 Steven Tamm <steventamm@mac.com>
11872
11873 * mac.c (init_mac_osx_environment): Switch libexec and bin so
11874 that self-contained application finds libexec files.
11875
11876 2003-04-08 Kenichi Handa <handa@m17n.org>
11877
11878 * coding.c (code_convert_region_unwind):
11879 Set Vlast_coding_system_used to the argument.
11880 (code_convert_region): If post-read-conversion function changed
11881 the value of last-coding-sytem, keep the new value in
11882 coding->symbol so that it won't be overridden.
11883 (run_pre_post_conversion_on_str): Likewise.
11884 (coding_system_accept_latin_extra_p): New function.
11885 (find_safe_codings): Pay attention to characters registered in
11886 latin-extra-code-table.
11887
11888 2003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
11889
11890 * Makefile.in (md5.o): Add missing dependency info.
11891
11892 2003-04-06 Richard M. Stallman <rms@gnu.org>
11893
11894 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
11895
11896 * marker.c (verify_bytepos): New function.
11897
11898 * intervals.c (set_intervals_multibyte_1): When becoming
11899 multibyte, adjust right and left child sizes to a whole set of
11900 characters. If an interval gets zero total-length, delete it.
11901 If an interval consists of just its children, delete one of them.
11902
11903 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
11904 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
11905
11906 * alloc.c (VALIDATE_LISP_STORAGE): Macro deleted.
11907 All calls deleted.
11908 (lisp_malloc): Do the work here directly.
11909
11910 2003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
11911
11912 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
11913 char tables.
11914
11915 2003-04-04 Kenichi Handa <handa@m17n.org>
11916
11917 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
11918 destructively change "%S" to "%s".
11919
11920 2003-04-03 Miles Bader <miles@gnu.org>
11921
11922 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
11923 always set.
11924
11925 2003-04-01 Dave Love <fx@gnu.org>
11926
11927 * xfns.c (xpm_lookup_color): Grok "opaque".
11928
11929 2003-03-31 Andrew Choi <akochoi@shaw.ca>
11930
11931 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
11932 parent window ID.
11933
11934 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
11935
11936 * macterm.h (struct mac_output): Define x_pixels_diff and
11937 y_pixels_diff.
11938
11939 2003-03-31 Juanma Barranquero <lektu@terra.es>
11940
11941 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
11942 blockinput.h and files included from it.
11943
11944 2003-03-31 Kim F. Storm <storm@cua.dk>
11945
11946 The following changes consolidates the common code related to
11947 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
11948 files into frame.c.
11949
11950 * frame.c: Include blockinput.h.
11951 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
11952 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
11953 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
11954 related vars here.
11955 (struct frame_parm_table, frame_parms): New table for describing
11956 frame parameters and their associated Q-variable.
11957 The order of the parameters corresponds to the sequence of the
11958 frame_parm_handlers table in redisplay_interface.
11959 (x_fullscreen_move, x_set_frame_parameters)
11960 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
11961 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
11962 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
11963 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
11964 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
11965 Generic functions for processing of frame parameters.
11966 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
11967 (display_x_get_resource, x_get_resource_string): Functions for
11968 generic access to X resources.
11969 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
11970 (x_default_parameter, Fx_parse_geometry): Functions for generic
11971 access to frame parameters.
11972 (x_figure_window_size): Generic calculation of frame size.
11973 Fixed to add space needed for tool bar. Also setup size_hint_flags.
11974 (syms_of_frame): Intern and staticpro frame parameter variables.
11975 Defvar_lisp Vx_resource_class and Vx_resource_name here.
11976 Defsubr Sx_get_resource and Sx_parse_geometry.
11977
11978 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
11979 parameter related vars defined in frame.c.
11980 (EMACS_CLASS): Define here.
11981 (enum FULLSCREEN_*): Define here.
11982 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
11983 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
11984 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
11985 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
11986 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
11987 (x_set_visibility, x_set_autoraise, x_set_autolower)
11988 (x_set_unsplittable, x_set_vertical_scroll_bars)
11989 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
11990 (x_figure_window_size): Add prototypes.
11991
11992 * dispextern.h (frame_parm_handler): New typedef.
11993 (struct redisplay_interface): New member frame_parm_handlers.
11994 (enum resource_types): Move declaration here.
11995 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
11996 (x_default_parameter): Add prototypes.
11997
11998 * window.c: Remove extern decl for frame parameter vars.
11999 (change_window_heights): New generic function;
12000 replaces x_change_window_heights. All users changed.
12001
12002 * window.h (change_window_heights): Add prototype.
12003
12004 * xfaces.c: Remove extern decl for frame parameter vars.
12005
12006 * xterm.h (EMACS_CLASS): Remove. Use generic define.
12007 (struct w32_display_info): Fix type of xrdb member.
12008 (enum FULLSCREEN_*): Remove.
12009 Remove prototypes for generic functions (in frame.h).
12010
12011 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
12012 parameters now defined in frame.h and frame.c.
12013 (Vx_resource_name): Remove. Use generic var.
12014 (enum x_frame_parms): Remove (bogus, unused enum).
12015 (check_x_display_info): Make non-static (for frame.c).
12016 (struct x_frame_parm_table, x_frame_parms): Remove.
12017 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
12018 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
12019 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
12020 (x_change_window_heights, x_set_autoraise, x_set_autolower)
12021 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
12022 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
12023 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
12024 Remove. Use generic functions instead.
12025 (enum resource_types): Remove.
12026 (x_set_scroll_bar_default_width): New global function (for frame.c).
12027 (Fx_create_frame): Depend on x_figure_window_size to add space for
12028 toolbar and setup size_hint_flags.
12029 (x_frame_parm_handlers): New table for redisplay_interface.
12030 (syms_of_xfns): Don't intern/staticpro removed vars.
12031
12032 * xterm.c: Remove unnecessary extern declarations.
12033 (x_fullscreen_adjust): Remove. Use generic instead.
12034 (x_redisplay_interface): Add x_frame_parm_handlers member.
12035
12036 * w32gui.h (XrmDatabase): New (dummy) typedef.
12037
12038 * w32term.h (EMACS_CLASS): Remove. Use generic define.
12039 (struct w32_display_info): Fix type of xrdb member.
12040 (enum FULLSCREEN_*): Remove.
12041 (x_fullscreen_adjust): Remove prototype.
12042
12043 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
12044 parameters now defined in frame.h and frame.c.
12045 (Vx_resource_name): Remove. Use generic var.
12046 (enum x_frame_parms): Remove (bogus, unused enum).
12047 (check_x_display_info): Make non-static (for frame.c).
12048 (struct x_frame_parm_table, x_frame_parms): Remove.
12049 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
12050 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
12051 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
12052 (x_change_window_heights, x_set_autoraise, x_set_autolower)
12053 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
12054 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
12055 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
12056 Remove. Use generic functions instead.
12057 (enum resource_types): Remove.
12058 (x_set_scroll_bar_default_width): New global function (for frame.c).
12059 (Fx_create_frame): Depend on x_figure_window_size to add space for
12060 toolbar and setup size_hint_flags.
12061 (w32_frame_parm_handlers): New table for redisplay_interface.
12062 (syms_of_w32fns): Don't intern/staticpro removed vars.
12063
12064 * w32term.c: Remove unnecessary extern declarations.
12065 (x_fullscreen_adjust): Remove. Use generic instead.
12066 (x_redisplay_interface): Add w32_frame_parm_handlers member.
12067
12068 * w32reg.c (x_get_string_resource): Use XrmDatabase.
12069
12070 * macgui.h (XrmDatabase): New (dummy) typedef.
12071
12072 * macterm.h (EMACS_CLASS): Remove.
12073 (struct mac_display_info): Add xrdb member.
12074 (struct mac_output): Add want_fullscreen member.
12075
12076 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
12077 parameters now defined in frame.h and frame.c.
12078 (Vx_resource_name): Remove. Use generic var.
12079 (check_x_display_info): Make non-static (for frame.c).
12080 (struct x_frame_parm_table, x_frame_parms): Remove.
12081 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
12082 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
12083 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
12084 (x_change_window_heights, x_set_autoraise, x_set_autolower)
12085 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
12086 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
12087 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
12088 Remove. Use generic functions instead.
12089 (enum resource_types): Remove.
12090 (x_set_scroll_bar_default_width): New global function (for frame.c).
12091 (mac_frame_parm_handlers): New table for redisplay_interface.
12092 (syms_of_macfns): Don't intern/staticpro removed vars.
12093
12094 * macterm.c: Remove unnecessary extern declarations.
12095 (x_redisplay_interface): Add mac_frame_parm_handlers member.
12096
12097 * Makefile.in (frame.o): Add dependency on blockinput.h and files
12098 included from it (atimer.h and systime.h).
12099
12100 2003-03-30 Andreas Schwab <schwab@suse.de>
12101
12102 * xdisp.c (x_insert_glyphs): Fix swapped width and height
12103 parameters for shift_glyphs_for_insert.
12104
12105 * macterm.c (x_redisplay_interface): Add missing entry for
12106 draw_vertical_window_border.
12107
12108 2003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
12109
12110 * fileio.c (Fexpand_file_name): In the no-handler case, after
12111 expanding, look again for a handler and invoke it. This is needed
12112 for filenames like "/foo/../user@host:/bar/../baz" -- the first
12113 expansion produces "/user@host:/bar/../baz" which needs to be
12114 expanded again for the finame result "/user@host:/baz".
12115
12116 2003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12117
12118 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
12119 of area to be redrawn for better performance.
12120
12121 2003-03-28 Stefan Monnier <monnier@cs.yale.edu>
12122
12123 * xterm.c (take_vertical_position_into_account): Remove.
12124 (xt_action_hook): Call set_vertical_scroll_bar if needed.
12125 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
12126 (xm_scroll_callback, x_create_toolkit_scroll_bar)
12127 (x_set_toolkit_scroll_bar_thumb): Simplify.
12128 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
12129 (XTread_socket): Remove unused var.
12130 (x_make_frame_invisible): Replace goto with else.
12131
12132 * xdisp.c (set_vertical_scroll_bar): New fun.
12133 (redisplay_window): Use it.
12134
12135 2003-03-26 Richard M. Stallman <rms@gnu.org>
12136
12137 * xdisp.c (update_tool_bar): Recompute tool bar if
12138 update_mode_lines is set. Set w->update_mode_line
12139 only if the tool bar contents actually change.
12140 (update_menu_bar): Undo previous change.
12141
12142 2003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12143
12144 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
12145 (xg_frame_set_char_size): Calculate scroll bar width before frame
12146 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
12147 (xg_separator_p): Check for all documented separator types.
12148 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
12149 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
12150
12151 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
12152 so tool bar gets updated.
12153
12154 2003-03-26 Stefan Monnier <monnier@cs.yale.edu>
12155
12156 * data.c (store_symval_forwarding): Re-instate part of the code
12157 that was deleted with too much enthusiasm.
12158
12159 2003-03-25 Stefan Monnier <monnier@cs.yale.edu>
12160
12161 * data.c (store_symval_forwarding): Delete special read-only
12162 hack for type == -1, since we now use ->constant instead.
12163 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
12164
12165 * buffer.c (overlays_in): Declare static.
12166 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
12167 `constant' field rather than the variable's `type' field.
12168
12169 2003-03-24 Andrew Choi <akochoi@shaw.ca>
12170
12171 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
12172
12173 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
12174
12175 * fns.c [MAC_OSX]: Do not redefine vector.
12176
12177 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
12178
12179 * macgui.h: Remove definition of No_Cursor.
12180
12181 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
12182
12183 * xdisp.c: Define No_Cursor.
12184 (x_write_glyphs, notice_overwritten_cursor)
12185 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
12186 (note_mouse_highlight): Remove Mac-specific code.
12187 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
12188
12189 2003-03-24 John Paul Wallington <jpw@gnu.org>
12190
12191 * xdisp.c (redisplay_window): If mini window's buffer is not
12192 empty, then redisplay it like other windows.
12193
12194 2003-03-23 Kim F. Storm <storm@cua.dk>
12195
12196 * w32term.c (w32_draw_window_cursor): Fix last change.
12197
12198 2003-03-23 Kenichi Handa <handa@m17n.org>
12199
12200 * alloc.c (make_string_from_bytes, make_specified_string):
12201 Add `const' for the arg CONTENTS.
12202
12203 * lisp.h (make_string_from_bytes, make_specified_string):
12204 Prototypes adjusted.
12205
12206 2003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12207
12208 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
12209
12210 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
12211 (XG_SB_RANGE): New define.
12212
12213 * gtkutil.c (xg_fixed_handle_expose): New function.
12214 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
12215 expose events.
12216 (xg_update_scrollbar_pos): Take two more arguments, left and width
12217 of scroll bar including borders.
12218 Clear left and right part outside scroll bar separately as some
12219 themes have bars that are not an even number of pixels.
12220 Don't set reallocate_redraws, don't call
12221 gdk_window_process_all_updates.
12222 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
12223 so no need to change it. Calculate size and value with XG_SB_RANGE.
12224
12225 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
12226 Pass left and width of scroll bar including borders to
12227 xg_update_scrollbar_pos.
12228
12229 2003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
12230
12231 * Makefile.in: Make sure space precedes end-of-line backslashes.
12232
12233 2003-03-22 Kim F. Storm <storm@cua.dk>
12234
12235 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
12236 Add generic versions here. Remove system specific versions
12237 defined elsewhere.
12238
12239 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
12240 Add prototypes.
12241
12242 * xterm.h (STORE_NATIVE_RECT): New macro.
12243
12244 2003-03-21 Kim F. Storm <storm@cua.dk>
12245
12246 * xdisp.c (get_glyph_string_clip_rect):
12247 Use FRAME_INTERNAL_BORDER_WIDTH.
12248
12249 * dispextern.h (struct redisplay_interface): Add active_p
12250 argument to draw_window_cursor member. All uses changed.
12251
12252 2003-03-21 Kim F. Storm <storm@cua.dk>
12253
12254 The following changes consolidate code related to writing and
12255 inserting glyphs, exposing frame, the tool bar, the mouse face,
12256 the output cursor, and help echo from xterm.c, w32term.c and
12257 macterm.c into xdisp.c. It also generalizes the use of the
12258 window_part enum instead of using numeric values throughout.
12259
12260 * xdisp.c: Consolidate gui-independent code here.
12261 Include keymap.h.
12262 (Qhelp_echo): Import.
12263 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
12264 (help_echo_string, help_echo_window, help_echo_object)
12265 (previous_help_echo_string, help_echo_pos): Declare here.
12266 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
12267 (estimate_mode_line_height): Define here. Handle windowing
12268 systems directly (without using estimate_mode_line_height_hook).
12269 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
12270 (update_window_cursor, update_cursor_in_window_tree)
12271 (fast_find_position, fast_find_string_pos)
12272 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
12273 (expose_area, expose_line, expose_overlaps, expose_window)
12274 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
12275 declared static as they are only used locally in xdisp.c.
12276 (draw_glyphs): Rename from x_draw_glyphs and make static.
12277 (tool_bar_item_info, notice_overwritten_cursor): Make static.
12278 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
12279 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
12280 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
12281 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
12282 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
12283 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
12284 (note_mouse_highlight, x_clear_window_mouse_face)
12285 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
12286 (x_intersect_rectangles): New generic functions for use by xdisp.c
12287 and GUI front-ends.
12288 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
12289 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
12290
12291 * dispextern.h (Display_Info): Generic typedef for *_display_info.
12292 (NativeRectangle): Generic typedef for rectangle type.
12293 (enum window_part): Move here from window.c.
12294 (struct redisplay_interface): New members flush_display_optional,
12295 define_frame_cursor, clear_frame_area, draw_window_cursor,
12296 draw_vertical_window_border, shift_glyphs_for_insert.
12297 Rename member clear_mouse_face to clear_window_mouse_face.
12298 (estimate_mode_line_height_hook): Remove hook.
12299 (auto_raise_tool_bar_buttons_p): Don't declare extern.
12300 (tool_bar_item_info): Remove prototype.
12301 (help_echo_string, help_echo_window, help_echo_object)
12302 (previous_help_echo_string, help_echo_pos)
12303 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
12304 (x_stretch_cursor_p, output_cursor): Declare extern.
12305 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
12306 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
12307 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
12308 (display_and_set_cursor, set_output_cursor, x_cursor_to)
12309 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
12310 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
12311 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
12312 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
12313 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
12314 Add prototypes.
12315 (mode_line_string, marginal_area_string): Fix prototypes.
12316
12317 * window.c (enum window_part): Move to dispextern.h.
12318 (coordinates_in_window): Use enum window_part member names
12319 instead of numbers to describe return value.
12320 (struct check_window_data): Change part member to window_part.
12321 (check_window_containing): Return window_part unaltered.
12322 (window_from_coordinates): Change part arg from int to enum
12323 window_part. Allow part arg to be null. All users changed.
12324
12325 * window.h (window_from_coordinates): Fix prototype.
12326
12327 * term.c (estimate_mode_line_height): Move to xdisp.c.
12328
12329 * keyboard.c (make_lispy_event): Use enum window_part.
12330
12331 * dispnew.c (mode_line_string, marginal_area_string): Use enum
12332 window_part instead of int in arg list. Users changed.
12333
12334 * xterm.h (No_Cursor): Declare as None for X.
12335 (struct mac_output): Replace member cross_cursor by hand_cursor.
12336
12337 * xterm.c: Remove consolidated defines and code.
12338 (BETWEEN): Remove unused macro.
12339 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
12340 (x_define_frame_cursor, x_clear_frame_area)
12341 (x_draw_window_cursor): New X-specific functions for RIF.
12342 (x_redisplay_interface): Add new members.
12343
12344 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
12345
12346 * w32term.h (struct w32_output): Remove cross_cursor member.
12347
12348 * w32term.c: Remove consolidated defines and code.
12349 (BETWEEN): Remove unused macro.
12350 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
12351 (w32_define_frame_cursor, w32_clear_frame_area)
12352 (w32_draw_window_cursor): New W32-specific functions for RIF.
12353 (w32_redisplay_interface): Add new members.
12354
12355 * w32gui.h (No_Cursor): Define as 0 for W32.
12356 (XRectangle): Add X compatible rectangle type.
12357 (NativeRectangle): Declare as RECT for W32.
12358 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
12359
12360 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
12361
12362 * w32console.c: Remove consolidated defines and code.
12363
12364 * msdos.h (Display_Info): Add generic typedef.
12365
12366 * msdos.c: Remove consolidated defines and code.
12367 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
12368
12369 * macterm.h (struct mac_output): Replace member cross_cursor by
12370 hand_cursor.
12371 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
12372
12373 * macterm.c: Remove consolidated defines and code.
12374 (BETWEEN): Remove unused macro.
12375 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
12376 (mac_define_frame_cursor, mac_clear_frame_area)
12377 (mac_draw_window_cursor): New Mac-specific functions for RIF.
12378 (x_redisplay_interface): Add new members.
12379
12380 * macgui.h (No_Cursor): Define as 0 for Mac.
12381 (XRectangle): Add X compatible rectangle type.
12382 (NativeRectangle): Declare as Rect for Mac.
12383 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
12384
12385 * macfns.c (x_set_mouse_color): Setup hand_cursor.
12386 (x_set_cursor_color): Use x_display_and_set_cursor.
12387
12388 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
12389 included from it. Add dependency on keymap.h.
12390
12391 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
12392
12393 2003-03-21 Kenichi Handa <handa@m17n.org>
12394
12395 * fileio.c (Fexpand_file_name): Fix previous change.
12396
12397 2003-03-19 Kenichi Handa <handa@m17n.org>
12398
12399 * fileio.c (Ffile_name_directory): Reconstruct file name by
12400 make_specified_string.
12401 (Ffile_name_nondirectory, Ffile_name_as_directory)
12402 (Fdirectory_file_name, Fexpand_file_name)
12403 (Fsubstitute_in_file_name): Likewise.
12404 (Fread_file_name): Compare decoded homedir with DIR and
12405 DEFAULT_FILENAME.
12406
12407 * alloc.c (make_specified_string): If NCHARS is negative, count
12408 the number of characters.
12409
12410 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12411
12412 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
12413 all widgets.
12414
12415 * gtkutil.h: Removed xg_ignore_next_thumb.
12416
12417 2003-03-18 Kenichi Handa <handa@m17n.org>
12418
12419 * coding.c (Vchar_coding_system_table): Remove this variable.
12420 (Vcoding_system_safe_chars): New variable.
12421 (intersection): Remove this function.
12422 (find_safe_codings): Don't use Vchar_coding_system_table, but try
12423 all codings in SAFE_CODINGS.
12424 (Ffind_coding_systems_region_internal): Adjust for the change of
12425 find_safe_codings. Get generic coding systems from
12426 Vcoding_system_safe_chars.
12427 (Fdefine_coding_system_internal): New function.
12428 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
12429 Initialize and staticpro Vcoding_system_safe_chars.
12430
12431 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12432
12433 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
12434 equal old values before updating.
12435
12436 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
12437
12438 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
12439
12440 2003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12441
12442 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
12443 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
12444 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
12445 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
12446 (xg_create_scroll_bar): Pass bar to button event callback.
12447 (xg_find_top_left_in_fixed): New function.
12448 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
12449 whole scroll bar area. Get old position with
12450 xg_find_top_left_in_fixed, calculate and only clear needed areas.
12451 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
12452 dragging is in progress. Calculate whole as for Motif.
12453 Remove code that saved last values. Call gtk_range functions to
12454 set scroll bar sizes.
12455
12456 * gtkutil.h: Removed xg_ignore_next_thumb.
12457
12458 2003-03-17 Juanma Barranquero <lektu@terra.es>
12459
12460 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
12461 and files included from it.
12462
12463 2003-03-18 Stefan Monnier <monnier@cs.yale.edu>
12464
12465 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
12466 multiple occurrences of the same keymap under different prefixes.
12467 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
12468
12469 2003-03-16 Jason Rumney <jasonr@gnu.org>
12470
12471 * w32gui.h: Use HDC for Display.
12472
12473 * w32term.c (w32_encode_char): Prevent double-byte chars from
12474 crashing Emacs.
12475
12476 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
12477 as binary.
12478
12479 2003-03-16 Juanma Barranquero <lektu@terra.es>
12480
12481 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
12482
12483 2003-03-16 Kim F. Storm <storm@cua.dk>
12484
12485 The following changes consolidate some of the gui-independent
12486 parts of the processing and drawing of "glyph strings" from
12487 xterm.c, w32term.c, and macterm.c into xdisp.c.
12488
12489 * dispextern.h (struct glyph): Reduce face_id member from 22 to
12490 21 bits (this reduces number of faces from 4M to 2M).
12491 Replace W32 specific w32_font_type member (2 bits) by generic
12492 font_type member (3 bits) for portability.
12493 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
12494 (enum draw_glyphs_face): Define here.
12495 (struct glyph_string): Define here. Merge W32 and X versions.
12496 (struct redisplay_interface): New members per_char_metric,
12497 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
12498 (VCENTER_BASELINE_OFFSET): Define here.
12499 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
12500 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
12501
12502 * xdisp.c: Consolidate gui-independent "glyph string" code here.
12503 (dump_glyph_string): Moved here.
12504 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
12505 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
12506 (fill_composite_glyph_string, fill_glyph_string)
12507 (fill_image_glyph_string, fill_stretch_glyph_string)
12508 (left_overwritten, left_overwriting, right_overwritten)
12509 (right_overwriting, get_char_face_and_encoding)
12510 (set_glyph_string_background_width, compute_overhangs_and_x)
12511 (append_glyph, append_composite_glyph, produce_image_glyph)
12512 (take_vertical_position_into_account, append_stretch_glyph)
12513 (produce_stretch_glyph): New generic functions (based on X version).
12514 Call platform specific functions through rif.
12515 (INIT_GLYPH_STRING): New macro, hides W32 details.
12516 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
12517 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
12518 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
12519 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
12520 (notice_overwritten_cursor):
12521 Generic functions exported to platform modules. Users changed.
12522
12523 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
12524 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
12525 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
12526 New macros for consolidated code.
12527
12528 * xterm.c: Remove consolidated defines and code.
12529 (x_per_char_metric, x_encode_char)
12530 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
12531 (x_redisplay_interface): Add new members.
12532
12533 * w32gui.h (Display): Add dummy typedef for consolidation.
12534 (XChar2b): Define alias for wchar_t for consolidation.
12535 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
12536
12537 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
12538 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
12539 New macros for consolidation.
12540
12541 * w32term.c: Remove consolidated defines and code.
12542 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
12543 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
12544 (w32_per_char_metric): Change font_type arg to int for RIF.
12545 (w32_encode_char): Return int according to RIF requirements.
12546 (w32_compute_glyph_string_overhangs): Adapt to RIF.
12547 (w32_get_glyph_overhangs): New function for RIF. Uses generic
12548 x_get_glyph_overhangs.
12549 (w32_redisplay_interface): Add new members.
12550
12551 * macgui.h (XChar2b): Move typedef here for consolidation.
12552 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
12553
12554 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
12555 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
12556 consolidation.
12557
12558 * macterm.c: Remove consolidated defines and code.
12559 (mac_per_char_metric): New function for RIF.
12560 (mac_encode_char): Adapt to new RIF requirements.
12561 (mac_compute_glyph_string_overhangs): Adapt for RIF.
12562 (x_redisplay_interface): Add new members.
12563
12564 2003-03-15 Stefan Monnier <monnier@cs.yale.edu>
12565
12566 * keymap.c (Vmenu_events): New var.
12567 (syms_of_keymap): Initialize it.
12568 (where_is_internal): Check more carefully what is a menu event.
12569
12570 2003-03-14 Richard M. Stallman <rms@gnu.org>
12571
12572 * lread.c (read1): After #!, exit loop on eof.
12573
12574 2003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12575
12576 * gtkutil.h: Add declaration for xg_frame_cleared.
12577
12578 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
12579
12580 * gtkutil.c (struct xg_last_sb_pos): New structure.
12581 (handle_fixed_child): New function.
12582 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
12583 and force a redraw on them.
12584 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
12585 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
12586 so we can avoid unneeded redraws.
12587 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
12588 and force a redraw on the scroll bar.
12589 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
12590 if xg_last_sb_pos shows the positions are up to date.
12591 (xg_frame_cleared): New function.
12592
12593 2003-03-13 Kenichi Handa <handa@m17n.org>
12594
12595 * coding.c (Fdetect_coding_region): Fix docstring.
12596 (Fdetect_coding_string): Fix docstring.
12597
12598 2003-03-13 Andreas Schwab <schwab@suse.de>
12599
12600 * gtkutil.c: Add prototype for create_menus.
12601
12602 * data.c (long_to_cons): Fix type of top.
12603
12604 * xselect.c (selection_data_to_lisp_data): Use int instead of
12605 long for an integer of size 4.
12606
12607 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
12608 (xg_tool_bar_help_callback): Likewise.
12609
12610 2003-03-12 Andreas Schwab <schwab@suse.de>
12611
12612 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
12613
12614 2003-03-12 Kim F. Storm <storm@cua.dk>
12615
12616 The following changes consolidate the fringe handling from
12617 xterm.c, w32term.c, and macterm.c into xdisp.c.
12618
12619 * xdisp.c: Consolidate fringe handling code here.
12620 (left_bits, right_bits, continued_bits, continuation_bits)
12621 (ov_bits, zv_bits): Define fringe bitmaps.
12622 (fringe_bitmaps): New array holding fringe bitmaps.
12623 (draw_fringe_bitmap): Draw a specific bitmap; call display
12624 specific drawing routine via rif->draw_fringe_bitmap.
12625 (draw_row_fringe_bitmaps): Generic replacement for
12626 x_draw_row_fringe_bitmaps; all callers changed.
12627 (compute_fringe_widths): Generic replacement for
12628 x_compute_fringe_widths; all callers changed.
12629
12630 * dispextern.h (enum fringe_bitmap_type): Define here.
12631 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
12632 (fringe_bitmaps): Declare extern.
12633 (struct redisplay_interface): New member draw_fringe_bitmap.
12634 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
12635
12636 * xterm.c: Remove generic fringe code.
12637 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
12638 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
12639
12640 * w32term.c: Remove generic fringe code.
12641 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
12642 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
12643
12644 * macterm.c: Remove generic fringe code.
12645 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
12646 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
12647
12648 2003-03-11 Stefan Monnier <monnier@cs.yale.edu>
12649
12650 * print.c (Fprin1_to_string): Return unibyte string if possible.
12651
12652 2003-03-09 David Kastrup <dak@gnu.org>
12653
12654 * process.c (read_process_output): We have allocated enough space
12655 for readmax and carryover, so actually use the alloted space.
12656
12657 2003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12658
12659 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
12660 toolkit scrollbar click.
12661
12662 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
12663 for USE_GTK.
12664 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
12665 also.
12666 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
12667 scrollbar and control is pressed, call x_scroll_bar_handle_click.
12668
12669 * gtkutil.h (xg_get_scroll_id_for_window): Declare.
12670
12671 * gtkutil.c (xg_get_scroll_id_for_window): New function.
12672 (xg_tool_bar_item_expose_callback): New function.
12673 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
12674 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
12675 on the tool bar widget.
12676 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
12677 to expose on the tool bar item widgets.
12678
12679 2003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12680
12681 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
12682 struct image* when deciding to update (struct image* may have been
12683 deleted from the image cache).
12684
12685 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
12686 the event isn't for a frame (i.e. for dialogs).
12687
12688 2003-03-07 Kenichi Handa <handa@m17n.org>
12689
12690 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
12691 composition components reaches the limit, terminate composing.
12692 (COMPOSITION_OK): New macro.
12693 (detect_coding_iso2022): Use it if an escape sequence for
12694 composition is found.
12695 (coding_restore_composition): Adjust the number of composition
12696 components if it is not sane.
12697
12698 2003-03-06 Juanma Barranquero <lektu@terra.es>
12699
12700 * w32term.h (struct w32_display_info): Add xrdb member to support
12701 passing resources via -xrm on Windows.
12702
12703 * w32term.c (w32_make_rdb): New function.
12704 (w32_term_init): Use it to initialize xrdb member of w32_display_info
12705 struct. Delete leftover code.
12706
12707 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
12708 for resources passed on the command line.
12709
12710 * w32reg.c (w32_get_rdb_resource): New function.
12711 (x_get_string_resource): Use it, so resources passed with -xrm
12712 supercede the ones in the registry.
12713
12714 2003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12715
12716 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
12717 instead of x_top_window_to_frame.
12718
12719 2003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12720
12721 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
12722 when restarting Emacs.
12723
12724 2003-03-03 Richard M. Stallman <rms@gnu.org>
12725
12726 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
12727 to run kill-buffer-query-functions.
12728 (Qkill_buffer_query_functions): New var.
12729 (syms_of_buffer): Init and staticpro it.
12730
12731 2003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12732
12733 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
12734
12735 2003-02-25 Kim F. Storm <storm@cua.dk>
12736
12737 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
12738 If centering point failed to make whole line visible and vscroll
12739 is non-zero, disable vscroll and try centering point again.
12740
12741 * lread.c (read1): Accept `single space' syntax like (? x).
12742
12743 2003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12744
12745 * keyboard.c (cancel_hourglass_unwind): Surround with
12746 #ifdef HAVE_X_WINDOWS
12747
12748 2003-02-25 Kenichi Handa <handa@m17n.org>
12749
12750 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
12751 process only when "subprocesses" is defined.
12752
12753 2003-02-24 Stefan Monnier <monnier@cs.yale.edu>
12754
12755 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
12756
12757 2003-02-24 Juanma Barranquero <lektu@terra.es>
12758
12759 * callint.c (fix_command): Declare as static void and move before
12760 Fcall_interactively.
12761
12762 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
12763 (syms_of_xdisp): Don't initialize Qwhen.
12764
12765 2003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12766
12767 * keyboard.c (cancel_hourglass_unwind): New function.
12768 (command_loop_1): Cancel hourglass with unwind-protect.
12769
12770 2003-02-23 Richard M. Stallman <rms@gnu.org>
12771
12772 * callint.c (fix_command): New subroutine, from Fcall_interactively.
12773 Detect (when ... (region-beginning)) etc.
12774 (Fcall_interactively): Call fix_command.
12775 (Qif, Qwhen): New variables.
12776 (syms_of_callint): Init and staticpro them.
12777
12778 * regex.c (print_partial_compiled_pattern): Output to stderr.
12779
12780 2003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
12781
12782 * dired.c (directory_files_internal): Don't expand directory.
12783 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
12784 instead. From Lars Hansen <larsh@math.ku.dk>.
12785
12786 2003-02-22 Stefan Monnier <monnier@cs.yale.edu>
12787
12788 * fns.c (string_to_multibyte): Remove unused var i.
12789 (Flanginfo): Fix int/Lisp_Object mixup.
12790 (void_call2): New fun.
12791 (Fmap_char_table): Use it in place of call2.
12792
12793 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
12794
12795 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
12796
12797 * keymap.c (copy_keymap_1): Make it static.
12798
12799 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
12800
12801 2003-02-22 David Ponce <david@dponce.com>
12802
12803 * lread.c (Fload): Don't check STRING_MULTIBYTE.
12804
12805 2003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12806
12807 * process.h: Removed subtty field from struct Lisp_Process.
12808
12809 * process.c (create_process): Remove setting of subtty.
12810 (emacs_get_tty_pgrp): New function.
12811 (Fprocess_running_child_p, process_send_signal):
12812 Call emacs_get_tty_pgrp instead of ioctl.
12813 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
12814
12815 2003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
12816
12817 * keymap.c (Fdefine_key): Doc fix.
12818
12819 2003-02-21 Juanma Barranquero <lektu@terra.es>
12820
12821 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
12822
12823 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
12824 POLLING_PROBLEM_IN_SELECT.
12825
12826 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
12827 Delete #undef of POLLING_PROBLEM_IN_SELECT.
12828
12829 * s/hpux10-20.h: New file.
12830
12831 * process.c (wait_reading_process_input):
12832 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
12833
12834 2003-02-20 Kenichi Handa <handa@m17n.org>
12835
12836 * fontset.c (check_fontset_name): If NAME is nil, return the
12837 default fontset.
12838 (override_font_info): New function.
12839 (Fset_fontset_font): Document that NAME nil means the default fontset.
12840 (Ffontset_info): If FONTSET is not the default fontset, merge
12841 FONTSET onto the copy of the default fontset, and work on that
12842 copy. Document that NAME nil means the default fontset.
12843 (Ffontset_font): Document that NAME nil means the default fontset.
12844
12845 * process.c (setup_process_coding_systems): If the process's
12846 in/out descriptor is -1, do nothing.
12847
12848 2003-02-19 Andreas Schwab <schwab@suse.de>
12849
12850 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
12851 Add prototypes.
12852
12853 2003-02-19 Kenichi Handa <handa@m17n.org>
12854
12855 * xfaces.c (try_alternative_families): Try all scalable fonts if
12856 Vscalable_fonts_allowed is not Qt.
12857
12858 2003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12859
12860 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
12861
12862 2003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12863
12864 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
12865 names.
12866
12867 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
12868 (sorted_font_list): Move allocation of struct font_name to
12869 x_face_list_fonts.
12870 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
12871 (Fx_list_fonts): Set maxnames to -1 to get all font names.
12872
12873 2003-02-18 Kim F. Storm <storm@cua.dk>
12874
12875 * lread.c (read1): Fix last change.
12876 "`" is not always special. Allow "?" after a character constant.
12877
12878 2003-02-18 Andrew Choi <akochoi@shaw.ca>
12879
12880 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
12881
12882 2003-02-18 Andreas Schwab <schwab@suse.de>
12883
12884 * window.c (window_scroll_pixel_based): Move outside a
12885 multi-glyph character before setting new window start.
12886
12887 * xdisp.c (in_display_vector_p): New function.
12888 * dispextern.h (in_display_vector_p): Declare.
12889
12890 2003-02-18 Kim F. Storm <storm@cua.dk>
12891
12892 * lread.c (read1): Fix and relax read syntax.
12893 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
12894 Only recognize "," after dotted-pair dot if inside backquote.
12895 Never include "`" or "," (inside backquote) in a symbol.
12896 Allow dotted-pair dot after a character constant.
12897 Allow "`" and "," (inside backquote) after a character constant.
12898
12899 2003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12900
12901 * gtkutil.c (xg_tool_bar_expose_callback): New function.
12902 (xg_create_tool_bar): Force style of tool bar to be horizontal with
12903 icons. Set name of tool bar to emacs-toolbar.
12904 (update_frame_tool_bar): Connect expose event to
12905 xg_tool_bar_expose_callback.
12906
12907 2003-02-17 Richard M. Stallman <rms@gnu.org>
12908
12909 * keyboard.c (this_command_key_count_reset): New variable.
12910 Initiatize to 0 where this_command_key_count is set.
12911 (read_char): Save and restore this_command_key_count_reset
12912 around input method code.
12913 (read_char): If this_command_key_count_reset, echo reread commands.
12914 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
12915
12916 2003-02-17 Kenichi Handa <handa@m17n.org>
12917
12918 * fns.c (string_to_multibyte): Always return a multibyte string.
12919
12920 2003-02-16 Jason Rumney <jasonr@gnu.org>
12921
12922 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
12923 Negative max_fonts parameter means list all.
12924
12925 2003-02-14 Dave Love <fx@gnu.org>
12926
12927 * fns.c (Flanginfo): Doc fix.
12928
12929 2003-02-13 Kim F. Storm <storm@cua.dk>
12930
12931 * lread.c (read_escape): Interpret \s as a SPACE character, except
12932 for \s-X in a character constant which still is the super modifier.
12933 (read1): Signal an `invalid read syntax' error if a character
12934 constant is immediately followed by a digit or symbol character.
12935
12936 * search.c (Fmatch_data): Doc fix. Explicitly state that
12937 match-data is undefined if last search failed.
12938
12939 * keymap.c (Fcommand_remapping): Rename from Fremap_command.
12940 All uses changed.
12941
12942 2003-02-12 Juanma Barranquero <lektu@terra.es>
12943
12944 * eval.c (Fdefmacro): Fix typo.
12945
12946 2003-02-12 Kim F. Storm <storm@cua.dk>
12947
12948 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
12949 macro is a string, convert meta modifiers in string when copying
12950 the string into a vector.
12951
12952 2003-02-11 Kim F. Storm <storm@cua.dk>
12953
12954 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
12955
12956 2003-02-11 Kenichi Handa <handa@m17n.org>
12957
12958 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
12959
12960 2003-02-10 Kim F. Storm <storm@cua.dk>
12961
12962 * process.c: Doc fixes.
12963 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
12964
12965 2003-02-10 Kenichi Handa <handa@m17n.org>
12966
12967 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
12968
12969 * process.c (QCfilter_multibyte): New variable.
12970 (setup_process_coding_systems): New function.
12971 (Fset_process_buffer, Fset_process_filter):
12972 Call setup_process_coding_systems.
12973 (Fstart_process): Initialize the member `filter_multibyte' of
12974 struct Lisp_Process.
12975 (create_process): Call setup_process_coding_systems.
12976 (Fmake_network_process): New keyward `:filter-multibyte'.
12977 Initialize the member `filter_multibyte' of struct Lisp_Process.
12978 Call setup_process_coding_systems.
12979 (server_accept_connection): Call setup_process_coding_systems.
12980 (read_process_output): If the process has a filter, decide the
12981 multibyteness of a string to given to the filter by
12982 `filter_multibyte' member of the process. If the process doesn't
12983 have a filter and the result of conversion is unibyte, use
12984 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
12985 multibyte form.
12986 (Fset_process_coding_system): Call setup_process_coding_systems.
12987 (Fset_process_filter_multibyte): New function.
12988 (Fprocess_filter_multibyte_p): New function.
12989 (syms_of_process): Intern and staticpro QCfilter_multibyte.
12990 Defsubr Sset_process_filter_multibyte and
12991 Sprocess_filter_multibyte_p.
12992
12993 * process.h (struct Lisp_Process): New member filter_multibyte.
12994
12995 * lisp.h (setup_process_coding_systems): Add prototype.
12996
12997 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
12998 process, update coding systems for the process.
12999
13000 2003-02-09 Kenichi Handa <handa@m17n.org>
13001
13002 * fns.c (string_to_multibyte): New function.
13003 (Fstring_to_multibyte): New function.
13004 (syms_of_fns): Defsubr it.
13005
13006 2003-02-08 Andreas Schwab <schwab@suse.de>
13007
13008 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
13009 instead of the substitution.
13010
13011 2003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13012
13013 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
13014
13015 * xmenu.c (menu_position_func): Adjust menu popup position so that
13016 the menu is fully visible.
13017
13018 2003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13019
13020 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
13021 (x_make_frame_invisible, x_wm_set_icon_position):
13022 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
13023
13024 * xfns.c (x_set_name, x_set_title): Ditto.
13025
13026 2003-02-04 Richard M. Stallman <rms@gnu.org>
13027
13028 * keyboard.c (echo_now): Update before_command_echo_length.
13029 (Freset_this_command_lengths): Reset this_command_key_count etc.
13030 immediately rather than arranging to do it later.
13031 (before_command_key_count_1, before_command_echo_length_1)
13032 (before_command_restore_flag): Vars deleted.
13033 (add_command_key): Don't handle before_command_restore_flag.
13034 (read_char, record_menu_key): Don't update before_command_key_count or
13035 before_command_echo_length.
13036 (read_char): Don't handle before_command_restore_flag.
13037
13038 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
13039 in direct-output clauses if it wouldn't be called in the ordinary case.
13040
13041 2003-02-04 Kim F. Storm <storm@cua.dk>
13042
13043 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
13044
13045 2003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13046
13047 * gtkutil.c (remove_from_container): Copying list is not needed.
13048 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
13049 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
13050 on list returned from gtk_container_get_children to avoid memory leak.
13051
13052 2003-02-01 Jason Rumney <jasonr@gnu.org>
13053
13054 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
13055 local malloc.
13056 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
13057 definitions in xpm.h.
13058 (init_xpm_functions): New function.
13059 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
13060 (init_external_image_libraries): Try to load libXpm.dll.
13061
13062 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
13063 timestamp.
13064
13065 2003-01-31 Dave Love <fx@gnu.org>
13066
13067 * syntax.c (Fskip_chars_forward)
13068 (open-paren-in-column-0-is-defun-start): Doc fix.
13069
13070 2003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
13071
13072 * fileio.c: Support // at start of name for Cygwin (just added proper
13073 preprocessor tests).
13074
13075 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
13076
13077 * Makefile.in: Use @EXEEXT@ for Cygwin.
13078
13079 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
13080
13081 * s/cygwin.h: Added for Cygwin port.
13082
13083 2003-01-31 Juanma Barranquero <lektu@terra.es>
13084
13085 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
13086 when including gif_lib.h.
13087 (init_gif_functions, init_tiff_functions): New functions.
13088 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
13089 Windows. Disable color table lookups. Call library functions
13090 through pointers determined at runtime.
13091 (init_external_image_libraries): Try to load libungif.dll and
13092 libtiff.dll.
13093
13094 2003-01-31 Kenichi Handa <handa@m17n.org>
13095
13096 * xdisp.c (SKIP_GLYPHS): New macro.
13097 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
13098
13099 2003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13100
13101 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
13102
13103 2003-01-30 Dave Love <fx@gnu.org>
13104
13105 * alloc.c (Vgc_elapsed, gcs_done): New variables.
13106 (Fgarbage_collect): Use them.
13107 (init_alloc, syms_of_alloc): Set them up.
13108
13109 2003-01-30 Juanma Barranquero <lektu@terra.es>
13110
13111 * w32fns.c (init_external_image_libraries): Add missing operator.
13112
13113 2003-01-29 Jason Rumney <jasonr@gnu.org>
13114
13115 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
13116 an alternative name for jpeg.dll.
13117
13118 2003-01-29 Kenichi Handa <handa@m17n.org>
13119
13120 * xdisp.c (set_cursor_from_row): Pay attention to string display
13121 properties.
13122
13123 2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
13124
13125 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
13126 <escape>.
13127 (keycode_to_xkeysym_table): Reformat and add more comments.
13128 (XTread_socket): Drop special case for backspace.
13129
13130 2003-01-28 Andrew Choi <akochoi@shaw.ca>
13131
13132 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
13133 values in old-style RGB specs.
13134
13135 2003-01-27 Juanma Barranquero <lektu@terra.es>
13136
13137 * w32fns.c (init_external_image_libraries): Try alternate names for the
13138 jpeg dll.
13139
13140 2003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13141
13142 * gtkutil.c (create_dialog, xg_separator_p)
13143 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
13144 before calling strcmp or strlen.
13145
13146 2003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13147
13148 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
13149 and handle image load failure.
13150
13151 2003-01-26 Jason Rumney <jasonr@gnu.org>
13152
13153 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
13154 New functions.
13155 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
13156 Disable color table lookups. Call jpeg library functions
13157 through pointers determined at runtime.
13158 (init_external_image_libraries): Try to load jpeg.dll.
13159
13160 2003-01-25 Richard M. Stallman <rms@gnu.org>
13161
13162 * lisp.h: Declare format2 instead of format1.
13163
13164 * fileio.c (barf_or_query_if_file_exists):
13165 Call format2 instead of format1.
13166
13167 * editfns.c (format2): New function, replaces format1
13168 but takes exactly two Lisp Objects as format args.
13169
13170 * buffer.c (Fkill_buffer): Call format2 instead of format1.
13171
13172 2003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13173
13174 * xterm.h: Change to return value of x_dispatch_event to int.
13175
13176 * xterm.c (x_filter_event): New function.
13177 (event_handler_gdk, XTread_socket): Call x_filter_event.
13178 (x_dispatch_event): Change to return value of finish.
13179 (event_handler_gdk): Use return value from x_dispatch_event.
13180
13181 * xfns.c (x_window): Call create_frame_xic for GTK version to
13182 initialize input methods.
13183
13184 * gtkutil.h: Add (void) prototypes.
13185
13186 * gtkutil.c (create_menus): Remove code that puts the help menu to
13187 the right.
13188
13189 2003-01-25 Jason Rumney <jasonr@gnu.org>
13190
13191 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
13192 [HAVE_PNG]: Sync with xfns.c version.
13193 (png_load): Adjust colors for Windows. Use Windows
13194 bitmaps. Disable color table lookups.
13195 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
13196 (init_png_functions): New function.
13197 (png_read_from_memory, png_load): Call png library functions
13198 through pointers determined at runtime.
13199 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
13200 (init_external_image_libraries): New function.
13201 (init_xfns): Call it.
13202
13203 2003-01-24 Andreas Schwab <schwab@suse.de>
13204
13205 * minibuf.c (Fminibuffer_message): Verify type of parameter.
13206
13207 2003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13208
13209 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
13210 of static initializer.
13211
13212 2003-01-24 Dave Love <fx@gnu.org>
13213
13214 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
13215 architectures.
13216
13217 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
13218 Use __alignof__.
13219
13220 2003-01-24 Kenichi Handa <handa@m17n.org>
13221
13222 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
13223 It it is nonzero, don't pretend that an invisible area doesn't exist.
13224 (command_loop_1): Call adjust_point_for_property with proper
13225 second arg.
13226
13227 2003-01-22 Jason Rumney <jasonr@gnu.org>
13228
13229 Sync changes with xterm.c and xfns.c.
13230
13231 * w32term.c (x_draw_glyph_string_foreground)
13232 (x_draw_composite_glyph_string_foreground): Implement overstriking.
13233
13234 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
13235 phys_cursor's hpos is overwritten. This is still not completely
13236 correct, as it doesn't really make sense to use hpos at all to
13237 get the cursor glyph (as that is relative to the width of the
13238 characters on the line, which may have changed during the update).
13239
13240 * w32term.c (notice_overwritten_cursor): Handle the special case
13241 of the cursor being in the first blank non-text line at the
13242 end of a window.
13243
13244 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
13245 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
13246 Compute from the x position returned by x_draw_glyphs.
13247
13248 (x_display_and_set_cursor): Don't set phys_cursor_width here,
13249 except for NO_CURSOR and system caret, to make phys_cursor_width
13250 contain what its name suggests.
13251 (notice_overwritten_cursor): Consider the cursor image erased if
13252 the output area intersects the cursor image in y-direction.
13253
13254 * w32term.c (note_mode_line_or_margin_highlight): Rename from
13255 note_mode_line_highlight and extend.
13256
13257 * w32term.c (last_window): New variable.
13258 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
13259 (note_mouse_movement): Remove reimplemented code in #if 0.
13260
13261 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
13262 not update_mode_lines, and always set it to 1.
13263
13264 2003-01-21 Jason Rumney <jasonr@gnu.org>
13265
13266 * w32fns.c (IDC_HAND): Define it if system headers don't.
13267
13268 2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
13269
13270 * w32term.h (struct w32_output): New member hand_cursor.
13271 (WM_EMACS_SETCURSOR): New message definition.
13272
13273 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
13274 function w32_define_cursor.
13275 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
13276 position, change member name output_data.x to output_data.w32 and
13277 add function w32_define_cursor.
13278 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
13279 and change member name output_data.x to output_data.w32.
13280 (w32_initialize_display_info):
13281 Setup dpyinfo->vertical_scroll_bar_cursor.
13282
13283 * w32fns.c (Vx_hand_shape): New variable.
13284 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
13285 WM_EMACS_SETCURSOR.
13286 (x-create-frame): Setup Cursor types.
13287
13288 2003-01-21 David Ponce <david@dponce.com>
13289
13290 * w32term.c (w32_encode_char): For DIM=1 charset, set
13291 ccl->reg[2] to -1 before calling ccl_driver.
13292 (Sync. with xterm.c x_encode_char change by Kenichi Handa
13293 <handa@m17n.org> on 2002-09-30.)
13294 (w32_draw_relief_rect): Declare all args.
13295 (w32_define_cursor): New.
13296
13297 * w32fns.c (w32_load_cursor): New function.
13298 (w32_init_class): Use it.
13299 (x_put_x_image): Declare all args.
13300
13301 2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
13302
13303 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
13304
13305 2003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13306
13307 * gtkutil.c: Must include stdio.h before termhooks.h
13308
13309 2003-01-21 Dave Love <fx@gnu.org>
13310
13311 * alloc.c (Fgc_status): Print zombie list.
13312 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
13313 Fix assignment of zombies.
13314 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
13315 Don't take car of non-cons.
13316
13317 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
13318
13319 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
13320
13321 2003-01-20 David Ponce <david@dponce.com>
13322
13323 * w32menu.c (digest_single_submenu): Declare all args.
13324
13325 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
13326 changes in xmenu.c:
13327
13328 (parse_single_submenu): Use individual keymap's prompt
13329 string as pane name, if there is one.
13330 (set_frame_menubar): Save menu_items_n_panes from each call to
13331 parse_single_submenu and use it when calling digest_single_submenu.
13332
13333 2003-01-20 Steven Tamm <steventamm@mac.com>
13334
13335 * macterm.c (XTread_socket): Check for valid, visible window
13336 before sending a scroll-wheel event.
13337
13338 2003-01-20 Richard M. Stallman <rms@gnu.org>
13339
13340 * xdisp.c (redisplay_window): If mini window's buffer is not
13341 a minibuffer, then redisplay it like other windows.
13342
13343 2003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13344
13345 * gtkutil.c (xg_create_frame_widgets): Check if there is an
13346 external tool bar before setting tool bar height.
13347
13348 2003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13349
13350 * xterm.c (handle_one_xevent): Surround popup_activated
13351 with #ifdef:s for non-toolkit version.
13352
13353 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
13354 (gtkutil.o): New file.
13355 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
13356 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
13357
13358 * gtkutil.c: New file for GTK version.
13359
13360 * gtkutil.h: New file for GTK version.
13361
13362 * xterm.h: Add xt_or_gtk_widget.
13363 Include gtk files for USE_GTK.
13364 (struct x_output): Add toolbar_height.
13365 (struct x_output): Add GTK widgets and Gdk size_hints.
13366 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
13367 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
13368 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
13369
13370 * xterm.c: Include gtkutil.h for USE_GTK.
13371 (free_frame_menubar): Declare extern void for USE_GTK.
13372 (note_mouse_highlight): Check popup_activated for USE_GTK.
13373 (xt_action_hook): Don't compile if USE_GTK.
13374 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
13375 (xg_scroll_callback): New function.
13376 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
13377 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
13378 for USE_GTK.
13379 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
13380 xg_show_scroll_bar for USE_GTK.
13381 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
13382 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
13383 (event_handler_gdk): New function for USE_GTK.
13384 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
13385 (handle_one_xevent): Make sure widget is mapped before
13386 calling x_real_positions for USE_GTK.
13387 (XTread_socket): Add GTK event loop for USE_GTK.
13388 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
13389 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
13390 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
13391 (x_iconify_frame): Add code for USE_GTK.
13392 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
13393 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
13394 is in gtkutil.c.
13395 (x_term_init): Add initialization for GTK.
13396 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
13397
13398 * xmenu.c: Include gtkutil.h for USE_GTK.
13399 (Fx_popup_menu): Use current position if x and y is NIL.
13400 (single_menu_item, single_menu_item, Fx_popup_dialog):
13401 Check for USE_GTK.
13402 (popup_widget_loop): New function for USE_GTK.
13403 (x_activate_menubar): Add code for USE_GTK.
13404 (popup_activate_callback, popup_deactivate_callback)
13405 (menu_highlight_callback, menubar_selection_callback):
13406 Add USE_GTK versions.
13407 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
13408 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
13409 (free_frame_menubar): Only compile if not USE_GTK. GTK version
13410 is in gtkutil.c.
13411 (popup_selection_callback): New version for USE_GTK.
13412 (create_and_show_popup_menu): New fuction, one USE_GTK version and
13413 one USE_X_TOOLKIT version.
13414 (xmenu_show): Call create_and_show_popup_menu.
13415 (dialog_selection_callback): New version for USE_GTK.
13416 (create_and_show_dialog): New fuction, one USE_GTK version and
13417 one USE_X_TOOLKIT version.
13418 (xdialog_show): Call create_and_show_dialog.
13419
13420 * xfns.c: Include gtkutil for USE_GTK.
13421 (x_window_to_frame, x_any_window_to_frame)
13422 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
13423 (x_top_window_to_frame): Add code for USE_GTK.
13424 (x_set_background_color): Call xg_set_background_color for GTK.
13425 (x_set_menu_bar_lines): Check for USE_GTK.
13426 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
13427 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
13428 (x_window): Call xg_create_frame_widgets for USE_GTK.
13429 (Fx_create_frame): Check for USE_GTK
13430 (Fx_file_dialog): New implementation for USE_GTK.
13431
13432 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
13433 (update_menu_bar): Add check for USE_GTK.
13434 (update_tool_bar): Add check for USE_GTK and external tool bar.
13435 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
13436 (redisplay_internal): Add check for USE_GTK and popup_activated.
13437 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
13438 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
13439 (display_menu_bar): Add check for USE_GTK
13440
13441 * lisp.h (Vx_resource_name): Declare extern.
13442
13443 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
13444 for USE_GTK.
13445 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
13446
13447 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
13448 (FRAME_EXTERNAL_TOOL_BAR): New macro.
13449 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
13450
13451 * fileio.c (Fread_file_name): Add check for USE_GTK.
13452
13453 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
13454 Add check for USE_GTK.
13455
13456 * config.in: Added HAVE_GTK
13457
13458 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
13459
13460 2003-01-18 Stefan Monnier <monnier@cs.yale.edu>
13461
13462 * charset.h (Funibyte_char_to_multibyte): Export.
13463
13464 2003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13465
13466 * xmenu.c (mouse_position_for_popup): New function.
13467 (Fx_popup_menu): Call mouse_position_for_popup for X and
13468 mouse_position_hook for others.
13469
13470 2003-01-17 Kim F. Storm <storm@cua.dk>
13471
13472 * editfns.c (Finsert): Mention `string-make-multibyte' and
13473 `string-as-multibyte' in doc string.
13474
13475 2003-01-17 Kenichi Handa <handa@m17n.org>
13476
13477 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
13478
13479 * editfns.c (Fformat): Convert an unibyte char argument that is
13480 formatted by "%c" to multibyte if the total result must be a
13481 multibyte string.
13482
13483 2003-01-16 Kim F. Storm <storm@cua.dk>
13484
13485 * process.c (set-process-filter): Document unibyte/multibyte-ness
13486 of string argument.
13487
13488 2003-01-16 Kenichi Handa <handa@m17n.org>
13489
13490 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
13491
13492 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
13493 (re_search_2): Likewise.
13494
13495 2003-01-15 Kenichi Handa <handa@m17n.org>
13496
13497 * xdisp.c (message_dolog): Fix bug of the case that *Message*
13498 buffer is unibyte.
13499
13500 2003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
13501
13502 * fns.c (Fsubstring): Clarify doc string.
13503
13504 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
13505 (Fprevious_char_property_change)
13506 (Fnext_single_char_property_change)
13507 (Fprevious_single_char_property_change, Fnext_property_change)
13508 (Fnext_single_property_change, Fprevious_property_change)
13509 (Fprevious_single_property_change, Fadd_text_properties)
13510 (Fput_text_property, Fset_text_properties)
13511 (Fremove_text_properties, Fremove_list_of_text_properties)
13512 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
13513
13514 2003-01-14 Kim F. Storm <storm@cua.dk>
13515
13516 * process.h (struct Lisp_Process): New member plist replaces old
13517 member private_vars. All uses changed.
13518
13519 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
13520 (QCplist): Rename from QCvars. Change all uses.
13521 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
13522 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
13523 (syms_of_process): Intern, staticpro, defsubr these.
13524 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
13525
13526 2003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
13527
13528 * m/delta.h: Remove (obsolete).
13529
13530 2003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
13531
13532 * fileio.c (Fdelete_directory, Fdelete_file): Document the
13533 behaviour in front of symlinks.
13534 (Fdelete_file): Raise an error on directories.
13535
13536 2003-01-13 Dave Love <fx@gnu.org>
13537
13538 * fns.c (Freverse): Use QUIT.
13539
13540 2003-01-13 Richard M. Stallman <rms@gnu.org>
13541
13542 * minibuf.c (minibuffer_completion_contents):
13543 Error if point is inside prompt.
13544
13545 * keyboard.c (command_loop_1): Don't redisplay directly
13546 if there's a post-command-hook.
13547
13548 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
13549 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
13550
13551 2003-01-12 Kim F. Storm <storm@cua.dk>
13552
13553 * process.h (struct Lisp_Process): New member private_vars.
13554
13555 * process.c (QCvars): New variable.
13556 (syms_of_process): Intern and staticpro it.
13557 (Fset_process_contact): Removed function.
13558 (Fprocess_variable, Fset_process_variable): New functions.
13559 (syms_of_process): Defsubr them.
13560 (Fstart_process): Initialize private_vars plist to nil.
13561 (Fmake_network_process): New arg :vars to setup the private
13562 variables for new network process.
13563 (server_accept_connection): Copy server's private variables to
13564 client process.
13565
13566 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
13567 crashes). Code rewritten and simplified. Now directly aligns the
13568 pointer and recalculates pure_bytes_used, rather than aligning the
13569 size and adjusting the pointer.
13570
13571 2003-01-11 Kim F. Storm <storm@cua.dk>
13572
13573 * process.c (Fset_process_contact): New function.
13574 (syms_of_process): defsubr it.
13575 (make-network-process): Update doc.
13576
13577 2003-01-10 Andreas Schwab <schwab@suse.de>
13578
13579 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
13580 Reported by Berthold Gunreben <b.gunreben@web.de>.
13581
13582 2003-01-10 Dave Love <fx@gnu.org>
13583
13584 * composite.c (syms_of_composite): Make composition_hash_table weak.
13585
13586 2003-01-09 Kim F. Storm <storm@cua.dk>
13587
13588 * process.c (Fmake_network_process): Convert new port number
13589 to host byte order for `:service t' case. From Mario Lang.
13590
13591 2003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13592
13593 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
13594 instead of XtAppProcessEvent.
13595
13596 * xterm.c (handle_one_xevent): New function.
13597 (x_dispatch_event): New function.
13598 (XTread_socket): Call handle_one_xevent.
13599
13600 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
13601
13602 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
13603 call XQueryPointer to get coordinates.
13604 (popup_get_selection): Do not set popup_activated_flag to zero,
13605 let popup_deactivate_callback do that. Needed for Motif.
13606 Call x_dispatch_event instead of XtDispatchEvent.
13607 (xmenu_show): Calculate root coordinate from frame top/left position.
13608
13609 2003-01-08 Kim F. Storm <storm@cua.dk>
13610
13611 * process.c (server_accept_connection): Fix recording of new
13612 connection's local address in :local property of contact info.
13613 (Fmake_network_process): Record local network address for new
13614 client processes in :local property of contact info.
13615 (format-network-address): Add arg OMIT-PORT. Change callers.
13616
13617 2003-01-07 Dave Love <fx@gnu.org>
13618
13619 * Makefile.in (fns.o): Depend on coding.h.
13620
13621 2003-01-07 Markus Rost <rost@math.ohio-state.edu>
13622
13623 * minibuf.c (Fread_variable): Doc fix.
13624
13625 * eval.c (Fuser_variable_p): Doc change. For custom variables,
13626 use the same test as for custom-variable-p.
13627
13628 2003-01-05 Richard M. Stallman <rms@gnu.org>
13629
13630 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
13631 Count LAST_LINE_MISFIT in scroll margin for end of window.
13632 Move label too_near_end before setting SCROLL_MARGIN_POS.
13633 Set LAST_LINE_MISFIT before jumping there.
13634
13635 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
13636 scroll_conservatively case. If scrolling that much doesn't change
13637 STARTP, move it down one line.
13638
13639 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
13640 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
13641
13642 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
13643 selected frame.
13644
13645 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
13646 (syms_of_keymap): Staticpro them.
13647 (Fapropos_internal): Initialize them and clear them out.
13648 Don't GCPRO them.
13649
13650 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
13651 Doc fixes.
13652
13653 * lisp.h: New misc type Lisp_Save_Value.
13654 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
13655 (XSAVE_VALUE): New macro.
13656 (struct Lisp_Save_Value): New data type.
13657 (union Lisp_Misc): Add u_save_value alternative.
13658 (make_save_value): Declare.
13659
13660 * alloc.c (make_save_value): New function.
13661
13662 * xterm.c (x_catch_errors): Save dpy using make_save_value.
13663 (x_catch_errors_unwind): Call XSync.
13664
13665 2003-01-01 Richard M. Stallman <rms@gnu.org>
13666
13667 * window.c (window_scroll_pixel_based): Partially undo last change.
13668
13669 * keyboard.c (command_loop_1): Call adjust_point_for_property
13670 in direct action cases for Qforward_char and Qbackward_char.
13671 Set already_adjusted so it won't be done twice.
13672
13673 2002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
13674
13675 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
13676 type definition of size_t.
13677
13678 2003-01-02 Steven Tamm <steventamm@mac.com>
13679
13680 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
13681 distinguish Carbon GUI builds from X11 builds on darwin.
13682
13683 2002-12-30 Steven Tamm <steventamm@mac.com>
13684
13685 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
13686 to default to t.
13687
13688 2002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
13689
13690 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
13691
13692 2002-12-28 Steven Tamm <steventamm@mac.com>
13693
13694 * Makefile.in (macosx-bundle): Fix Mac OS X/Carbon port to
13695 allow building in a different directory than source. Uses some
13696 GNU Make extensions, but there is no other make on Mac OS X.
13697
13698 2002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
13699
13700 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
13701 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
13702 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
13703 (Fstring_to_number): Mention the returned value in the doc strings.
13704
13705 2002-12-23 Richard M. Stallman <rms@gnu.org>
13706
13707 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
13708 <scroll-down-aggressively>: Doc fix.
13709
13710 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
13711 string as pane name, if there is one.
13712 (set_frame_menubar): Save menu_items_n_panes from each call to
13713 parse_single_submenu and use it when calling digest_single_submenu.
13714
13715 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
13716 Don't try to make last line fully visible if it is past end of window.
13717
13718 2002-12-22 Steven Tamm <steventamm@mac.com>
13719
13720 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
13721 (mac_menu_show): Add support for hierarchical popup menus.
13722 (add_menu_item): Remove indentation support.
13723 (fill_submenu, fill_menu): Create hierarchical menus
13724 instead of using indentation.
13725
13726 2002-12-22 Richard M. Stallman <rms@gnu.org>
13727
13728 * xdisp.c (try_cursor_movement): Don't call try_window here.
13729 (redisplay_window): Never redisplay minibuffer when inactive.
13730
13731 * window.c (select_window_1): Undo 9/21 change.
13732
13733 2002-12-22 Steven Tamm <steventamm@mac.com>
13734
13735 * macterm.c (XTread_socket): Call KeyTranslate for control and
13736 meta to deal correctly shifted non-alpha characters, like C-S-5
13737 being treated like C-%. Do not look for shift key to deal
13738 with masking off control-key with mac-reverse-ctrl-meta.
13739
13740 2002-12-21 Richard M. Stallman <rms@gnu.org>
13741
13742 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
13743 If it is non-nil, run timers. Use an unwind-protect to requeue
13744 the events that were read ahead.
13745 (popup_get_selection_unwind): New subroutine.
13746 (popup_get_selection_queue): File-scope variable now holds that queue.
13747 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
13748 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
13749 Use an unwind-protect to pop down the dialog box.
13750 (xdialog_show_unwind): New subroutine implements that.
13751
13752 * xdisp.c (row_containing_pos): Change exit test using last_y.
13753 (try_window_id): Abort if row_containing_pos returns null.
13754
13755 * lread.c (load_error_handler): New function.
13756 (Fload): Handle errors in Fsubstitute_in_file_name.
13757 Don't expect Fsignal to return.
13758
13759 * eval.c: Errors and throws work right with interrupt blocking.
13760 (struct catchtag): New elt interrupt_input_blocked.
13761 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
13762 (internal_catch, Fcondition_case, internal_condition_case)
13763 (internal_condition_case_1, internal_condition_case_2): Save it.
13764 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
13765
13766 * editfns.c (Fformat): Add parens.
13767
13768 * dired.c (file_name_completion): Fix that change.
13769 Delete special quit-handling code; just use QUIT.
13770
13771 2002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
13772
13773 * dired.c (file_name_completion): Close directory on error
13774 just as in directory_files_internal.
13775
13776 2002-12-19 David Kastrup <David.Kastrup@t-online.de>
13777
13778 * window.c (Fset_window_configuration): Set old_point to correct
13779 value when new_current_buffer == current_buffer.
13780
13781 2002-12-17 Ben Key <bkey1@tampabay.rr.com>
13782
13783 Revisited my earlier fix for the following entry in etc/PROBLEMS:
13784 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
13785 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
13786
13787 These changes were in part based upon suggestions made by Peter
13788 'Luna' Runestig [peter@runestig.com].
13789
13790 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token)
13791 (g_b_init_get_token_information, g_b_init_lookup_account_sid)
13792 (g_b_init_get_sid_identifier_authority ): Add several static
13793 global variables.
13794
13795 * w32.c (globals_of_w32): New function. Used to initialize those
13796 global variables that must always be initialized on startup even
13797 when the global variable initialized is non zero. Its primary
13798 purpose at this time is to set the global variables
13799 g_b_init_is_windows_9x, g_b_init_open_process_token,
13800 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
13801 g_b_init_get_sid_identifier_authority to 0 on startup.
13802 Called from main.
13803
13804 * w32.c (is_windows_9x): Perform initialization only if
13805 g_b_init_is_windows_9x is equal to 0. On initialization set
13806 g_b_init_is_windows_9x equal to 1.
13807
13808 * w32.c (open_process_token): Perform initialization only if
13809 g_b_init_open_process_token is equal to 0. On initialization set
13810 g_b_init_open_process_token equal to 1.
13811
13812 * w32.c (get_token_information): Perform initialization only if
13813 g_b_init_get_token_information is equal to 0. On initialization
13814 set g_b_init_get_token_information equal to 1.
13815
13816 * w32.c (lookup_account_sid): Perform initialization only if
13817 g_b_init_lookup_account_sid is equal to 0. On initialization
13818 set g_b_init_lookup_account_sid equal to 1.
13819
13820 * w32.c (get_sid_identifier_authority): Perform initialization
13821 only if g_b_init_get_sid_identifier_authority is equal to 0.
13822 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
13823
13824 * w32fns.c (globals_of_w32fns): New function. Used to initialize
13825 those global variables that must always be initialized on startup
13826 even when the global variable initialized is non zero.
13827 Its primary purpose at this time is to initialize the global variable
13828 track_mouse_event_fn.
13829
13830 * w32fns.c (w32_wnd_proc): Remove initialization of
13831 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
13832
13833 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
13834
13835 * w32menu.c (globals_of_w32menu): New function. Used to
13836 initialize those global variables that must always be initialized
13837 on startup even when the global variable initialized is non zero.
13838 Its primary purpose at this time is to initialize the global
13839 variables get_menu_item_info and set_menu_item_info.
13840
13841 * w32menu.c (initialize_frame_menubar): Remove initialization of
13842 get_menu_item_info and set_menu_item_info.
13843
13844 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
13845
13846 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
13847 Declare them.
13848
13849 * emacs.c (main): Call globals_of_w32 prior to calling
13850 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
13851 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
13852 is defined.
13853
13854 * w32term.c (x_update_window_begin): Fix Windows API error
13855 detected by BoundsChecker. Test to determine if
13856 w32_system_caret_hwnd is NULL prior to attempting to use
13857 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
13858
13859 * w32term.c (x_update_window_end): Fix Windows API error
13860 detected by BoundsChecker. Test to determine if
13861 w32_system_caret_hwnd is NULL prior to attempting to use
13862 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
13863
13864 2002-12-17 Kenichi Handa <handa@m17n.org>
13865
13866 * coding.c (coding_system_require_warning): New variable.
13867 (syms_of_coding): DEFVAR it.
13868
13869 * coding.h (coding_system_require_warning): Extern it.
13870
13871 * fileio.c (choose_write_coding_system): Even if
13872 Vcoding_system_for_write is non-nil, if
13873 coding_system_require_warning is nonzero, call
13874 Vselect_safe_coding_system_function.
13875
13876 2002-12-17 Markus Rost <rost@math.ohio-state.edu>
13877
13878 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
13879 (lisp): Add font-core.
13880
13881 2002-12-13 Stefan Monnier <monnier@cs.yale.edu>
13882
13883 * textprop.c (text_read_only): New arg `propval'.
13884 (get_char_property_and_overlay): Remove unused var `next_overlay'.
13885 (verify_interval_modification): Use text_read_only's new arg.
13886
13887 2002-12-13 Kenichi Handa <handa@m17n.org>
13888
13889 * coding.c (Funencodable_char_position): Set pend correctly.
13890
13891 2002-12-12 Jason Rumney <jasonr@gnu.org>
13892
13893 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
13894 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
13895 Be more careful about when help_events are generated.
13896
13897 2002-12-12 Steven Tamm <steventamm@mac.com>
13898
13899 * macterm.c (mac_check_for_quit_char): Correctly set the
13900 modifiers of the event to 0.
13901 * mac.c (sys_select): Duplicate rfds before calling select to
13902 ensure that rfds survive the while loop.
13903
13904 2002-12-11 Kim F. Storm <storm@cua.dk>
13905
13906 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
13907 row_containing_pos returned NULL.
13908
13909 2002-12-10 Steven Tamm <steventamm@mac.com>
13910
13911 * mac.c (sys_read): Fix sys_read to not call select if IO is
13912 non-blocking.
13913 (sys_select): Fix sys_select to not use a timeout larger than
13914 the one given.
13915
13916 2002-12-10 Juanma Barranquero <lektu@terra.es>
13917
13918 * editfns.c (Fformat): Use alloca, not _alloca.
13919
13920 2002-12-09 Richard M. Stallman <rms@gnu.org>
13921
13922 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
13923 as the last thing.
13924
13925 2002-12-09 Dave Love <fx@gnu.org>
13926
13927 * s/sol2-8.h: Removed. (Not necessary.)
13928
13929 2002-12-09 Matthew Swift <swift@alum.mit.edu>
13930
13931 * editfns.c (Fformat): Handle precision in string conversion
13932 specifiers like libc functions do (ie, print at most that many
13933 characters).
13934
13935 2002-12-08 Richard M. Stallman <rms@gnu.org>
13936
13937 * xdisp.c (row_containing_pos): Check more carefully
13938 whether charpos is really in the row before returning it.
13939
13940 2002-12-07 Steven Tamm <steventamm@mac.com>
13941
13942 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
13943
13944 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
13945 each stack frame. This may change as it could be time consuming.
13946
13947 * macterm.c (mac_check_for_quit_char, quit_char_comp)
13948 (init_quit_char_handler, mac_determine_quit_char_modifiers)
13949 (mac_initialize): Add code to check for pressing of quit_char
13950 in the OS event queue.
13951
13952 * mac.c (sys_select): Call mac_check_for_quit_char every second
13953 while blocking on select.
13954
13955 * mac.c (sys_read): Use sys_select to test for input first
13956 before calling read, to allow C-g to break.
13957
13958 2002-12-07 Richard M. Stallman <rms@gnu.org>
13959
13960 * minibuf.c (Fcompleting_read): Doc fix.
13961
13962 * lread.c (syms_of_lread) <load-history>: Doc fix.
13963
13964 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
13965
13966 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
13967 autoload.
13968
13969 * data.c (Fdefalias): Record in load-history redefining an autoload.
13970
13971 * alloca.c: Undo ifdef change accidentally made on 12-04.
13972
13973 2002-12-06 Francesco Potorti` <pot@gnu.org>
13974
13975 * xfns.c (png_load): Avoid double gamma correction for PNG images.
13976
13977 2002-12-04 Richard M. Stallman <rms@gnu.org>
13978
13979 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
13980
13981 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
13982
13983 * alloca.c: Don't use #error.
13984
13985 2002-12-03 Dave Love <fx@gnu.org>
13986
13987 * buffer.c (Qucs_set_table_for_input): New.
13988 (Fget_buffer_create): Use it.
13989 (Qset_buffer_major_mode_hook): Deleted.
13990 (Fset_buffer_major_mode): Revert previous change.
13991 (init_buffer_once): Intern ucs-set-table-for-input.
13992 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
13993 Add &Qucs_set_table_for_input.
13994
13995 2002-12-03 Andreas Schwab <schwab@suse.de>
13996
13997 * callint.c (Fcall_interactively): Use next_event only if less
13998 than key_count.
13999
14000 2002-12-02 Andrew Choi <akochoi@shaw.ca>
14001
14002 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
14003 names to 255 characters.
14004
14005 * macterm.c (XTread_socket): If all frames have been collapsed,
14006 expand the first one before handling drag-and-drop events.
14007
14008 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
14009 which is detected by autoconf.
14010
14011 2002-12-01 Steven Tamm <steventamm@mac.com>
14012
14013 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
14014 offset in two hints table to allow prebinding to be redone and
14015 allow the executable to be stripped.
14016
14017 2002-11-29 Dave Love <fx@gnu.org>
14018
14019 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
14020 already provided.
14021
14022 2002-11-29 Richard M. Stallman <rms@gnu.org>
14023
14024 * xdisp.c (start_display): Check more intelligently for
14025 whether the line is continued.
14026 (move_it_vertically_backward): Clear it->continuation_lines_width.
14027
14028 2002-11-28 Dave Love <fx@gnu.org>
14029
14030 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
14031 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
14032
14033 2002-11-27 Steven Tamm <steventamm@mac.com>
14034
14035 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
14036 more descriptive error output from lread.c:Fload upon most require
14037 cycles during boostrapping.
14038
14039 2002-11-27 Jason Rumney <jasonr@gnu.org>
14040
14041 * fileio.c (Finsert_file_contents): Give a more appropriate error
14042 for files bigger than 2Gb when off_t is 32 bit.
14043
14044 * dired.c (Ffile_attributes): Don't return negative file sizes for
14045 files bigger than 2Gb when off_t is 32 bit.
14046
14047 2002-11-27 Dave Love <fx@gnu.org>
14048
14049 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
14050
14051 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
14052 Test GETPGRP_VOID instead.
14053 [BSD_TERMIOS]: Remove definitions (never used).
14054
14055 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
14056 Don't define.
14057 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
14058
14059 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
14060
14061 2002-11-25 Jason Rumney <jasonr@gnu.org>
14062
14063 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
14064 supported.
14065
14066 2002-11-25 Dave Love <fx@gnu.org>
14067
14068 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
14069
14070 * Makefile.in (TEMACS_LDFLAGS): Update last change.
14071
14072 2002-11-25 Andreas Schwab <schwab@suse.de>
14073
14074 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
14075
14076 2002-11-24 Steven Tamm <steventamm@mac.com>
14077
14078 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
14079 determine the size of pointers alloced in unexed space instead
14080 of using possibly invalid emacs_zone pointers. This fixes the
14081 binary incompatibility problems caused by updates to libSystem.B.
14082
14083 2002-11-24 Richard M. Stallman <rms@gnu.org>
14084
14085 * search.c (Fstring_match): Doc fix.
14086
14087 * callint.c (Fcall_interactively): If a command fails because
14088 `*' detects a read-only buffer, but RECORD_FLAG is set,
14089 record it anyway if the args don't actually do tty input.
14090
14091 2002-11-22 Dave Love <fx@gnu.org>
14092
14093 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
14094
14095 * keyboard.c (interrupt_signal): Provide forward declaration.
14096 (kbd_buffer_store_event): Don't declare interrupt_signal.
14097
14098 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
14099
14100 2002-11-21 Richard M. Stallman <rms@gnu.org>
14101
14102 * eval.c (interactive_p): Skip any number of bytecode
14103 and special form frames, in any order.
14104
14105 2002-11-20 Jason Rumney <jasonr@gnu.org>
14106
14107 * w32fns.c (convert_mono_to_color_image): New function.
14108 (xbm_load, xbm_load_image): Use it when foreground or background
14109 is explicitly set.
14110
14111 2002-11-19 Dave Love <fx@gnu.org>
14112
14113 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
14114
14115 2002-11-18 Jason Rumney <jasonr@gnu.org>
14116
14117 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
14118 (XPutPixel): Swap blue and red.
14119 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
14120 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
14121 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
14122 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
14123
14124 2002-11-18 Dave Love <fx@gnu.org>
14125
14126 * m/orion105.h (HAVE_ALLOCA): Don't define.
14127
14128 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
14129
14130 * m/intel386.h: Don't include alloca.h or define alloca.
14131
14132 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
14133 malloc, realloc, calloc.
14134
14135 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
14136 (bcmp): Don't define.
14137
14138 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
14139
14140 * m/amdahl.h: Don't define LIB_STANDARD.
14141
14142 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
14143
14144 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
14145
14146 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
14147 Don't include alloca.h.
14148
14149 * s/aix3-2.h (HAVE_FSYNC): Don't define.
14150
14151 * regex.c (_GNU_SOURCE): Don't define.
14152
14153 * process.c (_GNU_SOURCE): Don't define.
14154
14155 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
14156
14157 2002-11-18 Markus Rost <rost@math.ohio-state.edu>
14158
14159 * s/sol2-8.h: Include sol2-6.h.
14160
14161 2002-11-18 Miles Bader <miles@gnu.org>
14162
14163 * dispextern.h (struct face): Add `overstrike' field.
14164 * xterm.c (x_draw_glyph_string_foreground)
14165 (x_draw_composite_glyph_string_foreground): Implement overstriking.
14166 * xfaces.c (load_face_font): Set `face->overstrike' based on
14167 result from choose_face_font.
14168 (best_matching_font, choose_face_font): Add `needs_overstrike'
14169 argument, and use it to return whether overstriking is desirable
14170 for this face/font combo.
14171 (set_font_frame_param: Pass new argument to choose_face_font.
14172
14173 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
14174
14175 This change is my fix for the following entry in etc/PROBLEMS:
14176 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
14177 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
14178
14179 * w32.c: Added wrapper functions around the win32 API functions
14180 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
14181 GetSidIdentifierAuthority. These wrapper functions serve two
14182 purposes:
14183 1. They ensure that the wrapped function can never be called
14184 when Emacs is running on an operating system on which they are
14185 not supported (Microsoft Windows 95 / 98 / ME).
14186 2. They call the wrapped functions via function pointers rather
14187 than calling them directly. This avoids taking advantage of the
14188 undocumented fact that although these functions are not supported
14189 in the 9x branch of Microsoft Windows, the functions do exist in
14190 the version of advapi32.dll that is found in the 9x branch of
14191 Microsoft Windows.
14192
14193 * w32.c (init_user_info): Replace the calls to the win32 API
14194 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
14195 and GetSidIdentifierAuthority with calls to the newly added
14196 wrapper functions.
14197
14198 * w32.h: Added extern declarations for the following functions:
14199 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
14200 syms_of_w32menu, and void syms_of_fontset.
14201
14202 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
14203 function pointer track_mouse_event_fn in the handler for the
14204 WM_SETFOCUS message.
14205
14206 * w32menu.c (initialize_frame_menubar): Add code to
14207 reinitialize the function pointers set_menu_item_info and
14208 get_menu_item_info.
14209
14210 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
14211
14212 * sound.c: Added a partial implementation of play-sound-internal
14213 for Microsoft Windows. Added various #ifdef / #else / #endif
14214 code blocks to separate the code that will compile under
14215 Microsoft Windows from the code that is specific to GNU/Linux.
14216 Moved several blocks of code around to make this separation of code
14217 into Windows compatible and GNU/Linux compatible code blocks easier.
14218
14219 * makefile.w32-in: Include sound.c and link with WinMM.lib.
14220
14221 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
14222 added support for play-sound-internal under Windows would be
14223 included in the build of Emacs.
14224
14225 2002-11-16 Jason Rumney <jasonr@gnu.org>
14226
14227 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
14228
14229 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
14230
14231 2002-11-15 Stefan Monnier <monnier@cs.yale.edu>
14232
14233 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
14234 (adjust_point_for_property): Move out of display and invisible even if
14235 we were already inside before (in case a property was added while
14236 we weren't looking). Be more careful when handling invisible props.
14237 Skip invisible text as if it really wasn't there at all.
14238
14239 2002-11-15 Jason Rumney <jasonr@gnu.org>
14240
14241 * w32term.c (x_draw_image_foreground)
14242 (w32_draw_image_foreground_1): Use standard copy and invert
14243 operations to draw images.
14244
14245 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
14246 depth of 1.
14247 (xbm_read_bitmap_data): Invert bits as xbm is read in.
14248 (XPutPixel): Don't invert bits here.
14249
14250 2002-11-15 Jason Rumney <jasonr@gnu.org>
14251
14252 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
14253 (w32_draw_image_foreground_1): Handle image masks.
14254 (x_draw_image_glyph_string): Don't BitBlt transparently.
14255
14256 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
14257 (x_from_xcolors): Adjust RGB values for W32.
14258 (image_background, image_background_transparent)
14259 (postprocess_image, x_to_xcolors, x_disable_image)
14260 (x_build_heuristic_mask): Adapt for W32 and enable.
14261 (x_create_x_image_and_pixmap): Mark images with palettes as such.
14262 (xbm_load): Remove unused variable.
14263
14264 2002-11-14 Richard M. Stallman <rms@gnu.org>
14265
14266 * buffer.c (syms_of_buffer): Doc fix.
14267
14268 2002-11-14 Dave Love <fx@gnu.org>
14269
14270 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
14271
14272 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
14273 * xmenu.c (unuse_menu_items, digest_single_submenu):
14274 * xfns.c (x_put_x_image):
14275 * xdisp.c (message2_nolog, set_message):
14276 * undo.c (record_point):
14277 * terminfo.c (tparam):
14278 * syntax.c (scan_sexps_forward):
14279 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
14280 * composite.c (update_compositions):
14281 * cm.c (calccost, cmgoto):
14282 * charset.c (c_string_width): Declare all args (per C99).
14283
14284 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
14285
14286 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
14287 Don't declare.
14288
14289 * emacs.c (main) [!VMS]: Avoid third arg.
14290
14291 * fns.c (Fcopy_sequence): Doc fix.
14292 (Fmap_char_table): Cast `call2'.
14293
14294 2002-11-14 Francesco Potorti` <pot@gnu.org>
14295
14296 * s/sol2-8.h: New file.
14297
14298 2002-11-14 Kim F. Storm <storm@cua.dk>
14299
14300 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
14301 dependency on `risky-local-variable' and the :propertize form.
14302
14303 2002-11-12 Stefan Monnier <monnier@cs.yale.edu>
14304
14305 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
14306
14307 * syntax.c (scan_sexps_forward): Undo last patch.
14308 Use a more obvious fix: check eob before updating the syntax table.
14309
14310 2002-11-09 Stefan Monnier <monnier@cs.yale.edu>
14311
14312 * syntax.c (scan_sexps_forward): Update syntax table before reading
14313 a char rather than after so we don't update the table past eob.
14314
14315 2002-11-09 Dave Love <fx@gnu.org>
14316
14317 * buffer.c (Fset_buffer_major_mode): Fix last change.
14318
14319 * regex.c (regexec): Fix pmatch declaration.
14320
14321 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
14322
14323 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
14324 to self-inserting characters.
14325 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
14326
14327 * coding.c (Vtranslation_table_for_input): New.
14328 (syms_of_coding): DEFVAR it.
14329
14330 2002-11-08 Juanma Barranquero <lektu@terra.es>
14331
14332 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
14333 window.
14334
14335 2002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14336
14337 * process.c (Fformat_network_address): Remove unused locals p,
14338 cp, and i.
14339
14340 2002-11-06 Dave Love <fx@gnu.org>
14341
14342 * buffer.c (Qset_buffer_major_mode_hook): New.
14343 (Fset_buffer_major_mode): Use it.
14344
14345 2002-11-06 Richard M. Stallman <rms@gnu.org>
14346
14347 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
14348 and stop_polling.
14349
14350 * process.c (wait_reading_process_input):
14351 Test POLLING_PROBLEM_IN_SELECT, not hpux.
14352 Avoid initialization for auto Lisp_Object var.
14353
14354 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
14355
14356 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
14357
14358 2002-11-05 Richard M. Stallman <rms@gnu.org>
14359
14360 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
14361
14362 * callint.c (Fcall_interactively): New local filter_specs.
14363 (Fcall_interactively): Check for progn as well as let.
14364 Add a gcpro.
14365 (Qprogn): New variable.
14366 (syms_of_callint): Staticpro and init Qprogn.
14367
14368 2002-11-04 John Paul Wallington <jpw@shootybangbang.com>
14369
14370 * lread.c (Feval_buffer): Doc fix.
14371
14372 2002-11-04 Dave Love <fx@gnu.org>
14373
14374 * keyboard.c (read_char): Always translate iff
14375 Vkeyboard_translate_table is a char table and c is valid.
14376
14377 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
14378 and fix C types.
14379
14380 2002-11-03 Stefan Monnier <monnier@cs.yale.edu>
14381
14382 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
14383
14384 * editfns.c (get_pos_property): Don't hardcode Qfield.
14385
14386 * keyboard.c (adjust_point_for_property): Handle `display' prop on
14387 overlays. Also handle `invisible' prop.
14388
14389 2002-11-02 Stefan Monnier <monnier@cs.yale.edu>
14390
14391 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
14392 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
14393
14394 2002-11-01 Andreas Schwab <schwab@suse.de>
14395
14396 * editfns.c (Fmessage): Revert last change to properly handle %%.
14397
14398 2002-11-01 Stefan Monnier <monnier@cs.yale.edu>
14399
14400 * xmenu.c (unuse_menu_items): New fun.
14401 (menu_items_inuse): New var.
14402 (syms_of_xmenu): Initialize it.
14403 (init_menu_items): Use it to detect re-entrance.
14404 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
14405 (Fx_popup_menu): Remove spurious XSETFRAME.
14406
14407 * editfns.c (find_field): Make an exception for nil fields.
14408
14409 2002-11-01 Dave Love <fx@gnu.org>
14410
14411 * m/gec63.h: Deleted.
14412
14413 2002-10-31 Dave Love <fx@gnu.org>
14414
14415 * xterm.c (XTread_socket): Fix last change.
14416 (xaw_scroll_callback): Cast call_data to long to avoid warning.
14417
14418 2002-10-31 Stefan Monnier <monnier@cs.yale.edu>
14419
14420 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
14421
14422 2002-10-30 Stefan Monnier <monnier@cs.yale.edu>
14423
14424 * editfns.c (overlays_around, get_pos_property): New funs.
14425 (find_field): Use them.
14426 Also be careful not to modify POS before its last use.
14427 (Fmessage): Don't Fformat if there's nothing to format.
14428
14429 2002-10-30 Dave Love <fx@gnu.org>
14430
14431 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
14432 [HAVE_PTY_H]; Include pty.h.
14433
14434 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
14435
14436 * xterm.c (Qeql): Declare.
14437 (Vx_keysym_table): New.
14438 (syms_of_xterm): Initialize it.
14439 (XTread_socket): Use it. Deal with ASCII keysyms.
14440 (XSetIMValues) [HAVE_X11R6]: Prototype.
14441
14442 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
14443 (lispy_kana_keys): Comment out.
14444 (make_lispy_event) [XK_kana_A]: Comment out.
14445 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
14446 Fix sprintf call.
14447
14448 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
14449 regexp.h change).
14450 (TERMINFO, LIBS_TERMCAP): Define.
14451
14452 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
14453 (bcmp): Define conditional on HAVE_BCMP.
14454 (NO_SIOCTL_H): Don't define.
14455 (TIOCSIGSEND): Don't make conditional on IRIX6.
14456
14457 * s/sol2-5.h: Don't include strings.h.
14458 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
14459
14460 * s/irix6-0.h (IRIX6): Don't define.
14461 (bcopy, bcmp, bzero): Don't undef.
14462
14463 * s/irix6-5.h: Don't include strings.h.
14464 (IRIX6): Don't define.
14465 (bcopy, bcmp, bzero): Don't undef.
14466
14467 * syntax.c (Fforward_comment): Doc fix.
14468
14469 2002-10-29 Kim F. Storm <storm@cua.dk>
14470
14471 * process.c (Fsignal_process): Allow PROCESS to be specified by
14472 name in addition to pid (as integer or string).
14473
14474 2002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
14475
14476 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
14477 environments.
14478
14479 2002-10-27 Kim F. Storm <storm@cua.dk>
14480
14481 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
14482
14483 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
14484
14485 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
14486
14487 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
14488
14489 2002-10-26 Richard M. Stallman <rms@gnu.org>
14490
14491 * editfns.c (Fformat): Detect invalid format letters for floats.
14492
14493 2002-10-25 Kenichi Handa <handa@m17n.org>
14494
14495 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
14496 (x_set_title): Likewise.
14497
14498 2002-10-25 Juanma Barranquero <lektu@terra.es>
14499
14500 * macgui.h:
14501 * w32gui.h: Remove definition of XColor.
14502
14503 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
14504
14505 2002-10-24 Kim F. Storm <storm@cua.dk>
14506
14507 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
14508 Callers changed (supply dummy arg).
14509
14510 * lisp.h (get_window_cursor_type): Update prototype.
14511
14512 * w32term.c (x_display_and_set_cursor): Get active_cursor from
14513 get_window_cursor_type to track system caret.
14514
14515 2002-10-24 Kim F. Storm <storm@cua.dk>
14516
14517 * process.c (Fformat_network_address): New function.
14518 (syms_of_process): Defsubr it.
14519 (list_processes_1): Use it to format :local/:remote address if
14520 service/host is not set; before Emacs would crash in that case.
14521 (Fmake_network_process): Don't use Ffind_operation_coding_system
14522 to setup coding system if host or service is not set.
14523
14524 2002-10-23 Juanma Barranquero <lektu@terra.es>
14525
14526 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
14527
14528 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
14529 COLORREF.
14530
14531 * macgui.h:
14532 * w32gui.h: Add definition of XColor.
14533
14534 * macfns.c:
14535 * w32fns.c:
14536 * xfaces.c: Remove definition of XColor.
14537
14538 2002-10-22 Stefan Monnier <monnier@cs.yale.edu>
14539
14540 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
14541
14542 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
14543 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
14544 window if it is dedicated.
14545 (Fshrink_window): Add preserve_before as was done for enlarge_window.
14546 (Vspecial_display_function): Update docstring.
14547
14548 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
14549 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
14550 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
14551
14552 2002-10-21 Stefan Monnier <monnier@cs.yale.edu>
14553
14554 * casefiddle.c (casify_region): Don't treat a prefix char as part
14555 of a word when at the beginning.
14556
14557 2002-10-17 Juanma Barranquero <lektu@terra.es>
14558
14559 * lread.c (syms_of_lread): Fix typos.
14560
14561 2002-10-17 Dave Love <fx@gnu.org>
14562
14563 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
14564
14565 2002-10-16 Richard M. Stallman <rms@gnu.org>
14566
14567 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
14568
14569 2002-10-14 Juanma Barranquero <lektu@terra.es>
14570
14571 * w16select.c (syms_of_win16select): Fix docstring for
14572 `selection-coding-system'.
14573
14574 * w32select.c (syms_of_w32select): Likewise.
14575
14576 2002-10-14 Stefan Monnier <monnier@cs.yale.edu>
14577
14578 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
14579 a backslash-quoted char.
14580 (scan_lists, scan_sexps_forward): Pacify the compiler.
14581
14582 2002-10-13 Richard M. Stallman <rms@gnu.org>
14583
14584 * window.c (window_scroll): Set immediate_quit.
14585
14586 * print.c (print): When backquote form is the car of a list,
14587 output in old style. Use old_backquote_output to output all
14588 comma forms inside it in old style too.
14589
14590 * buffer.h (struct buffer): Move `undo_list' down below `name'.
14591
14592 2002-10-11 Markus Rost <rost@math.ohio-state.edu>
14593
14594 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
14595 batch mode).
14596
14597 * lread.c (Fload): Doc fix (load-suffixes).
14598
14599 2002-10-10 Steven Tamm <steventamm@mac.com>
14600
14601 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
14602 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
14603 Also switch the default to Qnil from Qt.
14604
14605 2002-10-08 Kenichi Handa <handa@m17n.org>
14606
14607 * coding.c (code_convert_region): When we need more GAP for
14608 conversion, pay attention to the case that coding->produced is not
14609 greater than coding->consumed.
14610
14611 2002-10-07 Richard M. Stallman <rms@gnu.org>
14612
14613 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
14614
14615 2002-10-06 Andrew Choi <akochoi@shaw.ca>
14616
14617 * macmenu.c (mac_menu_show): Add j to count menu items; match
14618 menu_item_selection to it to find selected item.
14619
14620 2002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14621
14622 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
14623 cases. The correct fix is to pass ReparentNotify to Xt.
14624 The shell widget interprets ConfigureNotify differently depending
14625 on if it has been reparented or not.
14626
14627 2002-10-05 Markus Rost <rost@math.ohio-state.edu>
14628
14629 * editfns.c (Fformat_time_string): Doc fix.
14630
14631 2002-10-05 John Paul Wallington <jpw@shootybangbang.com>
14632
14633 * fns.c (Flength): Doc fix.
14634
14635 2002-10-04 Stefan Monnier <monnier@cs.yale.edu>
14636
14637 * keyboard.c (keyremap): New struct.
14638 (read_key_sequence): Use it: globally replace keytran_foo with
14639 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
14640 keytran_next and fkey_next to just `next'.
14641
14642 2002-10-04 Steven Tamm <steventamm@mac.com>
14643
14644 * macterm.c (keycode_to_xkeysym_table): Change return to be
14645 treated like an X keysym.
14646
14647 2002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14648
14649 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
14650 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
14651 This is to also handle x/y changes that occur because of a resize.
14652
14653 2002-10-02 John Paul Wallington <jpw@shootybangbang.com>
14654
14655 * frame.c (Vdelete_frame_functions): New variable.
14656 (syms_of_frame): Initialize and defvar it.
14657 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
14658 it when frame's `tooltip' parameter is non-nil.
14659
14660 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
14661
14662 * w32fns.c (x_create_tip_frame): Likewise.
14663
14664 * macfns.c (x_create_tip_frame): Likewise.
14665
14666 2002-09-30 Kenichi Handa <handa@m17n.org>
14667
14668 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
14669 -1 before calling ccl_driver.
14670
14671 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
14672 Only when it is non-nil, handle composition sequence.
14673 (setup_coding_system) <0>: Don't force composition handling.
14674
14675 * Makefile.in (lisp, shortlisp): Add utf-16.elc
14676
14677 2002-09-29 Richard M. Stallman <rms@gnu.org>
14678
14679 * search.c (Freplace_match): Adjust match data for the substitution
14680 just made in the buffer.
14681
14682 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
14683 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
14684
14685 2002-09-27 Richard M. Stallman <rms@gnu.org>
14686
14687 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
14688 (read_char): Use them. Do all exits thru the end of the function.
14689
14690 2002-09-27 Kenichi Handa <handa@etl.go.jp>
14691
14692 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
14693 is nil.
14694
14695 2002-09-26 Richard M. Stallman <rms@gnu.org>
14696
14697 * regex.h (__restrict_arr): Don't define if already defined.
14698
14699 * coding.c (run_pre_post_conversion_on_str):
14700 Save and restore Vdeactivate_mark.
14701
14702 2002-09-26 John Paul Wallington <jpw@shootybangbang.com>
14703
14704 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
14705
14706 2002-09-26 Kenichi Handa <handa@etl.go.jp>
14707
14708 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
14709 nonzero, try face's family at first. Otherwise try FAMILY at first.
14710 (choose_face_font): If C is a single byte char or latin-1, call
14711 try_font_list with PREFER_FACE_FAMILY 1.
14712
14713 2002-09-21 Richard M. Stallman <rms@gnu.org>
14714
14715 * window.c (select_window_1): Don't select frame.
14716 Set frame's selected window only when frame itself is selected.
14717 (Fselect_window): Doc fix.
14718
14719 2002-09-18 Kim F. Storm <storm@cua.dk>
14720
14721 * process.c (make-network-process): Doc fix (there is no
14722 network-server-log-function hook).
14723
14724 2002-09-18 Richard M. Stallman <rms@gnu.org>
14725
14726 * print.c (print): Clear out the unused parts of Vprint_number_table.
14727 (syms_of_print): Doc fix for `print-number-table'.
14728
14729 * unexelf.c (unexec): Undo previous change.
14730
14731 2002-09-17 Andreas Schwab <schwab@suse.de>
14732
14733 * m/alpha.h [LINUX]: Don't define DATA_START.
14734
14735 2002-09-16 Dave Love <fx@gnu.org>
14736
14737 * unexelf.c (unexec): Deal with .got, reinstating change from
14738 25-08-1999.
14739
14740 2002-09-13 Richard M. Stallman <rms@gnu.org>
14741
14742 * s/sol2-6.h (UNEXEC): Comment out definition.
14743
14744 * unexsol.c (unexec): Don't downcase first letter of error msg.
14745
14746 * xfaces.c (Fcolor_supported_p): Just one arg is required.
14747
14748 2002-09-12 Markus Rost <rost@math.ohio-state.edu>
14749
14750 * unexsol.c: Include buffer.h, charset.h, coding.h.
14751
14752 2002-09-11 Richard M. Stallman <rms@gnu.org>
14753
14754 * unexsol.c: Don't use report_file_error; do it by hand
14755 using dlerror.
14756
14757 * process.c (wait_reading_process_input, both versions):
14758 Before calling turn_on_atimers, call stop_polling.
14759
14760 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
14761
14762 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
14763 we go to too_near_end, call clear_glyph_matrix.
14764 (redisplay_window): After make_cursor_line_fully_visible,
14765 call clear_glyph_matrix and bypass `goto done'.
14766
14767 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
14768 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
14769
14770 2002-09-10 Richard M. Stallman <rms@gnu.org>
14771
14772 * fileio.c (Fdo_auto_save): Catch error making directory.
14773 Only call push_message if we need to.
14774 At the same time, make an unwind-protect to pop it.
14775 Rename local message_p to old_message_p.
14776 (do_auto_save_make_dir, do_auto_save_eh): New functions.
14777 (do_auto_save_unwind): Don't call pop_message.
14778
14779 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
14780
14781 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
14782
14783 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
14784
14785 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
14786
14787 2002-09-10 Stefan Monnier <monnier@cs.yale.edu>
14788
14789 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
14790 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
14791 (re_match_2_internal): Be more careful with infinite loops.
14792
14793 2002-09-10 Kim F. Storm <storm@cua.dk>
14794
14795 * macros.c (end_kbd_macro): New function.
14796 (Fend_kbd_macro): Use it.
14797
14798 * macros.h (end_kbd_macro): Declare extern.
14799
14800 * keyboard.c (Fdiscard_input): If defining keyboard macro,
14801 end and save it instead of discarding it.
14802
14803 2002-09-09 Markus Rost <rost@math.ohio-state.edu>
14804
14805 * s/sol2-6.h: Fix typo. Add comment.
14806
14807 2002-09-09 Richard M. Stallman <rms@gnu.org>
14808
14809 * regex.c (regnum_t): Use signed int, not unsigned int.
14810
14811 * s/sol2-6.h: New file.
14812
14813 * s/sol2-5.h (UNEXEC): Definition deleted.
14814
14815 2002-09-08 Kim F. Storm <storm@cua.dk>
14816
14817 * macros.c (executing_macro_index): Change type to EMACS_INT.
14818 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
14819
14820 * macros.h (executing_macro_index): Change type to EMACS_INT.
14821
14822 2002-09-06 Richard M. Stallman <rms@gnu.org>
14823
14824 * casetab.c (set_case_table): Make canon table point to eqv table.
14825
14826 2002-09-06 Juanma Barranquero <lektu@terra.es>
14827
14828 * coding.c (syms_of_coding): Fix spacing.
14829
14830 * composite.c (Fcompose_region_internal)
14831 (Fcompose_string_internal): Likewise.
14832
14833 * data.c (Flsh): Likewise.
14834
14835 * fontset.c (Fset_fontset_font): Likewise.
14836
14837 * macfns.c (Fx_server_max_request_size): Likewise.
14838
14839 * w16select.c (syms_of_win16select): Likewise.
14840
14841 * w32select.c (syms_of_w32select): Likewise.
14842
14843 * xselect.c (syms_of_xselect): Likewise.
14844
14845 2002-09-05 Richard M. Stallman <rms@gnu.org>
14846
14847 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
14848 call EXTEND_RANGE_TABLE and return a proper value.
14849 (set_image_of_range): Don't call set_image_of_range_1
14850 if no TRANSLATE or if range includes all of Latin-1.
14851 Only call it for the Latin-1 part of the range.
14852 For other cases, make two separate ranges,
14853 one for the original specified characters and one for
14854 their case-conversions.
14855
14856 2002-09-04 Richard M. Stallman <rms@gnu.org>
14857
14858 * s/sol2-5.h (UNEXEC): Use unexsol.o.
14859
14860 * window.c (displayed_window_lines): Correct for one-off bug
14861 in HEIGHT on non-window displays.
14862
14863 * regex.c (set_image_of_range_1): New function.
14864 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
14865 Return a value to indicate running out of memory.
14866 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
14867 (extend_range_table_work_area): New subroutine.
14868 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
14869 Different calling conventions, and used from set_image_of_range{,_1}.
14870 (IMMEDIATE_QUIT_CHECK): Definitions moved.
14871
14872 2002-09-04 Juanma Barranquero <lektu@terra.es>
14873
14874 * makefile.w32-in: All dependencies updated.
14875
14876 2002-09-01 Richard M. Stallman <rms@gnu.org>
14877
14878 * unexsol.c: New file.
14879
14880 * xfns.c (Qbox): Declare external, don't define.
14881
14882 * xdisp.c (redisplay_window) <force-start case>:
14883 If point is on semi-visible last line, reposition
14884 it at previous line.
14885
14886 * alloc.c (display_malloc_warning): Use display-warning.
14887 (malloc_warning_1): Function deleted.
14888
14889 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
14890
14891 * lread.c (read1): Handle #! by skipping the line.
14892
14893 2002-08-31 Richard M. Stallman <rms@gnu.org>
14894
14895 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
14896 Don't include LDFLAGS.
14897 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
14898
14899 2002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
14900
14901 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
14902 member of x_display_info unless we compile for some window system.
14903
14904 2002-08-31 Kim F. Storm <storm@cua.dk>
14905
14906 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
14907 (get_window_cursor_type): Don't use them.
14908 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
14909
14910 2002-08-30 Kenichi Handa <handa@etl.go.jp>
14911
14912 * xdisp.c (get_next_display_element): Fix previous change.
14913
14914 2002-08-30 Andrew Choi <akochoi@shaw.ca>
14915
14916 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
14917 (expose_window): Use it to fix the display of overlapping
14918 rows (merge code from xterm.c).
14919
14920 * macfns.c (Qbox): Add extern declaration.
14921
14922 2002-08-30 Juanma Barranquero <lektu@terra.es>
14923
14924 * w32fns.c (Qbox): Make extern.
14925 (syms_of_w32fns): Remove initialization of Qbox.
14926
14927 2002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
14928
14929 * xfns.c (Fx_open_connection): Fix error message.
14930
14931 2002-08-30 Kim F. Storm <storm@cua.dk>
14932
14933 The following changes consolidates the handling of the cursor
14934 type in xdisp.c, moving duplicate code and functionality from
14935 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
14936
14937 * frame.h (enum text_cursor_kinds): Consolidated here.
14938 Added DEFAULT_CURSOR value.
14939 (struct frame) <desired_cursor, cursor_width>
14940 <blink_off_cursor, blink_off_cursor_width>: New fields.
14941 Consolidated from output_x, output_w32 and output_mac structs.
14942 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
14943 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
14944
14945 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
14946 Variables consolidated here.
14947 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
14948 (Vcursor_in_non_selected_windows): Renamed from
14949 cursor_in_non_selected_windows and changed to Lisp_Object.
14950 (syms_of_xdisp): Define and staticpro new and moved variables.
14951 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
14952 consolidated here. Recognize Qhollow setting.
14953 (set_frame_cursor_types): New function to set frame cursor types
14954 based on the frame parameters.
14955 (get_window_cursor_type): New function to calculate new cursor
14956 type and width for the specified window. Based on duplicated
14957 code consolidated here.
14958 Enhancements: cursor-in-non-selected-windows may be a cursor type,
14959 check buffer-local alternate-cursor-type and blink-cursor-alist
14960 before using built-in blink off methods.
14961
14962 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
14963
14964 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
14965 (get_specified_cursor_type, get_window_cursor_type)
14966 (set_frame_cursor_types): Added prototypes.
14967
14968 * macfns.c (x_specified_cursor_type): Removed.
14969 (x_set_cursor_type): Use set_frame_cursor_types.
14970 (Qbar, Qbox): Removed.
14971 (syms_of_macfns): Don't intern or staticpro them.
14972
14973 * macterm.c (x_specified_cursor_type): Remove prototype.
14974 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
14975 (x_display_and_set_cursor): Use get_window_cursor_type.
14976 Remove unused local variables cursor_non_selected, active_cursor.
14977 Redraw cursor if hbar cursor width changes.
14978 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
14979
14980 * macterm.h (enum text_cursor_kinds): Removed.
14981 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
14982 <blink_off_cursor, blink_off_cursor_width>: Members removed.
14983 (FRAME_DESIRED_CURSOR): Macro removed.
14984
14985 * w32fns.c (Vblink_cursor_alist): Removed.
14986 (Qbar, Qhbar, Qbox, Qhollow): Removed.
14987 (syms_of_w32fns): Don't intern, staticpro, or define them.
14988 (x_specified_cursor_type): Removed.
14989 (x_set_cursor_type): Use set_frame_cursor_types.
14990
14991 * w32term.c (x_specified_cursor_type): Remove prototype.
14992 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
14993 (x_display_and_set_cursor): Use get_window_cursor_type.
14994 Remove unused local variables cursor_off_state.
14995 Redraw cursor if hbar cursor width changes.
14996 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
14997
14998 * w32term.h (enum text_cursor_kinds): Removed.
14999 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
15000 <blink_off_cursor, blink_off_cursor_width>: Members removed.
15001 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
15002 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
15003 (struct w32_display_info) <x_highlight_frame>: Renamed member from
15004 w32_highlight_frame.
15005
15006 * xfns.c (Vblink_cursor_alist): Removed.
15007 (Qbar, Qhbar, Qbox, Qhollow): Removed.
15008 (syms_of_xfns): Don't intern, staticpro, or define them.
15009 (x_specified_cursor_type): Removed.
15010 (x_set_cursor_type): Use set_frame_cursor_types.
15011
15012 * xterm.c (x_specified_cursor_type): Remove prototype.
15013 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
15014 (x_display_and_set_cursor): Use get_window_cursor_type.
15015 Remove unused local variables cursor_off_state.
15016 Redraw cursor if hbar cursor width changes.
15017
15018 * xterm.h (enum text_cursor_kinds): Removed.
15019 (struct output_x) <current_cursor, desired_cursor, cursor_width>
15020 <blink_off_cursor, blink_off_cursor_width>: Members removed.
15021 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
15022 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
15023 (x_specified_cursor_type): Remove prototype.
15024
15025 2002-08-28 Richard M. Stallman <rms@gnu.org>
15026
15027 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
15028 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
15029 (Vblink_cursor_alist): New variable.
15030 (syms_of_w32fns): Initialize and defvar it.
15031 (x_specified_cursor_type): Recognize Qbox for filled box.
15032 Exceptions are hollow boxes.
15033 (Qbox, Qhollow): New variables.
15034 (syms_of_w32fns): Initialize and staticpro them.
15035
15036 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
15037 New macros.
15038 (struct w32_output): New fields blink_off_cursor,
15039 blink_off_cursor_width.
15040 (FRAME_CURSOR_WIDTH): New macro.
15041
15042 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
15043 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
15044
15045 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
15046 for bar cursor.
15047
15048 * w32term.c (expose_overlaps): New function.
15049 (expose_window): Use it to fix the display of overlapping rows.
15050
15051 2002-08-28 Simon Josefsson <jas@extundo.com>
15052
15053 * xfns.c (Fx_open_connection): Improve help when X connection
15054 fails, xhost is insecure and xauth is better.
15055
15056 2002-08-28 Juanma Barranquero <lektu@terra.es>
15057
15058 * makefile.w32-in: Add missing dependencies on w32term.h and
15059 composite.h.
15060
15061 * emacs.c (USAGE1): Add missing newline.
15062
15063 2002-08-27 Andrew Choi <akochoi@shaw.ca>
15064
15065 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
15066
15067 2002-08-27 Richard M. Stallman <rms@gnu.org>
15068
15069 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
15070 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
15071 (Vblink_cursor_alist): New variable.
15072 (syms_of_xfns): Initialize and defvar it.
15073 (x_specified_cursor_type): Recognize Qbox for filled box.
15074 Exceptions are hollow boxes.
15075 (Qbox, Qhollow): New variables.
15076 (syms_of_xfns): Initialize and staticpro them.
15077
15078 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
15079 New macros.
15080 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
15081
15082 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
15083 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
15084
15085 * emacs.c (main): Handle --script.
15086 (USAGE1): Mention --script.
15087 (standard_args): Define sort order for --script.
15088
15089 2002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
15090
15091 * xdisp.c (redisplay_updating_p): Variable removed.
15092 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
15093 New variables.
15094 (init_iterator): Don't free realized faces if
15095 inhibit_free_realized_faces is set.
15096 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
15097 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
15098 initialize Qinhibit_free_realized_faces.
15099
15100 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
15101 when iterator is adding glyphs to a glyph matrix.
15102
15103 2002-08-27 Kenichi Handa <handa@etl.go.jp>
15104
15105 * xdisp.c (get_next_display_element): In unibyte case, don't use
15106 octal form for such eight-bit characters that can be converted to
15107 multibyte char.
15108
15109 2002-08-26 Kim F. Storm <storm@cua.dk>
15110
15111 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
15112 foreground and background colors. From Joe Buehler.
15113
15114 2002-08-26 Miles Bader <miles@gnu.org>
15115
15116 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
15117
15118 2002-08-25 Andrew Choi <akochoi@shaw.ca>
15119
15120 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
15121 defined instead of MAC_OSX.
15122
15123 * s/darwin.h (select): Define select to sys_select only if
15124 HAVE_CARBON is defined.
15125 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
15126 (DONT_REOPEN_PTY): #def it.
15127
15128 * macterm.c (XTread_socket): Remove code to call
15129 SendEventToEventTarget for keys with command modifiers when
15130 mac_command_key_is_meta is nil.
15131
15132 2002-08-24 Andreas Schwab <schwab@suse.de>
15133
15134 * eval.c (Fdefvar): Fix last change.
15135
15136 2002-08-23 Richard M. Stallman <rms@gnu.org>
15137
15138 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
15139 Record variables in load history as (defvar . VAR).
15140 (Fdefvar): Don't record in load history if no initial value.
15141 (Qdefvar): New variable.
15142 (syms_of_eval): Init and staticpro it.
15143
15144 * lread.c (syms_of_lread): Doc fix.
15145 (build_load_history): Use Fmember to see if a definition
15146 is already in the Vload_history element.
15147
15148 * process.c (Fstart_process): Remove /: from program name.
15149
15150 * emacs.c (decode_env_path): Don't add /: if file name handler
15151 has a `safe-magic' property.
15152
15153 * callproc.c (Fcall_process): Remove /: from program name.
15154
15155 2002-08-23 Stefan Monnier <monnier@cs.yale.edu>
15156
15157 * regex.c (PATFETCH): Remove the translating fetch.
15158 (PATFETCH_RAW): Rename to PATFETCH.
15159 (set_image_of_range): New fun.
15160 (SET_RANGE_TABLE_WORK_AREA): Use it.
15161 (regex_compile): Don't translate the pattern chars so eagerly.
15162 Only do it when inserting an `exactn' bytecode or when handling
15163 a char-range.
15164 (mutually_exclusive_p): Avoid empty statement.
15165
15166 2002-08-22 Kim F. Storm <storm@cua.dk>
15167
15168 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
15169 end up on a partially visible line; this reverts a specific part
15170 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
15171 display error which has been reported several times now.
15172 However it introduces the problem that changes was supposed to fix.
15173 See my comments in the source if you want to debug this further.
15174
15175 2002-08-20 Kenichi Handa <handa@etl.go.jp>
15176
15177 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
15178
15179 2002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
15180
15181 * msdos.c (croak): Add `void' to definition.
15182
15183 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
15184 Don't define them, they are defined in msdos.c.
15185
15186 * mem-limits.h [MSDOS]: Declare etext.
15187
15188 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
15189 `const' since CORRECT_DIR_SEPS modifies its target.
15190
15191 2002-08-19 Kim F. Storm <storm@cua.dk>
15192
15193 * keyboard.c (Fclear_this_command_keys): Add optional arg
15194 KEEP-RECORD to avoid clearing lossage when we just want to clear
15195 the current key sequence (kmacro needs this).
15196
15197 2002-08-19 Kenichi Handa <handa@localhost>
15198
15199 * composite.c (run_composition_function): Call FUNC if it is fboundp.
15200
15201 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
15202 cons, return Qnil.
15203
15204 2002-08-17 Richard M. Stallman <rms@gnu.org>
15205
15206 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
15207
15208 * sysdep.c [!VMS]: Include sys/files.h.
15209
15210 * editfns.c (save_restriction_restore): Defend from unchained marker.
15211
15212 * buffer.c (overlays_at): Handle extending vec uniformly.
15213 (overlays_in): Handle extending vec from length 0 as in overlays_at.
15214
15215 2002-08-15 Andrew Choi <akochoi@shaw.ca>
15216
15217 * mac.c (init_mac_osx_environment): New function.
15218
15219 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
15220
15221 2002-08-14 Kim F. Storm <storm@cua.dk>
15222
15223 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
15224 executing macro before appending to it (when used from Lisp).
15225 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
15226 which is called prior to each iteration of macro (for kmacro.el).
15227 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
15228
15229 * lisp.h (Fexecute_kbd_macro): Update prototype.
15230
15231 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
15232
15233 2002-08-14 Kenichi Handa <handa@etl.go.jp>
15234
15235 * xselect.c (QUTF8_STRING): New variable.
15236 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
15237 (x_atom_to_symbol): Likewise.
15238 (x_get_local_selection): New argument local_request. If it is
15239 nonzero, call handler_fn with the second arg nil.
15240 (x_handle_selection_request): Call x_get_local_selection with
15241 local_request 0.
15242 (lisp_data_to_selection_data): Don't encode the string here.
15243 (Fx_get_selection_internal): Call x_get_local_selection with
15244 local_request 1.
15245 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
15246
15247 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
15248
15249 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
15250
15251 2002-08-13 Richard M. Stallman <rms@gnu.org>
15252
15253 * minibuf.c (Fminibufferp): New function.
15254 (syms_of_minibuf): Defsubr it.
15255 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
15256
15257 2002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
15258
15259 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
15260
15261 2002-08-12 Richard M. Stallman <rms@gnu.org>
15262
15263 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
15264 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
15265 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
15266 already.
15267
15268 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
15269
15270 2002-08-11 Andrew Choi <akochoi@shaw.ca>
15271
15272 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
15273 (Vmac_pass_command_to_system): New variable.
15274 (Vmac_pass_control_to_system): New variable.
15275 (do_mouse_moved): Check wp with is_emacs_window.
15276 (XTread_socket): Check window_ptr with is_emacs_window.
15277 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
15278 events back to Mac Toolbox for processing, depending on values of
15279 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
15280 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
15281 Vmac_pass_control_to_system.
15282
15283 2002-08-10 Kenichi Handa <handa@etl.go.jp>
15284
15285 * coding.c (unencodable_char_position): New function.
15286 (Funencodable_char_position): New function.
15287 (syms_of_coding): Defsubr Funencodable_char_position.
15288
15289 2002-08-10 Andrew Choi <akochoi@shaw.ca>
15290
15291 * mac.c (sys_select) [MAC_OSX]: New function.
15292
15293 * macterm.c (MakeMeTheFrontProcess): New function.
15294 (mac_initialize): Call MakeMeTheFrontProcess.
15295
15296 * s/darwin.h: Define select to sys_select.
15297
15298 2002-08-09 Richard M. Stallman <rms@gnu.org>
15299
15300 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
15301
15302 2002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
15303
15304 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
15305 end of the buffer.
15306
15307 2002-08-08 Ken Raeburn <raeburn@mit.edu>
15308
15309 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
15310
15311 * puresize.h (BASE_PURESIZE): Increase to 910000.
15312
15313 2002-08-08 Kenichi Handa <handa@etl.go.jp>
15314
15315 * coding.c (Ffind_operation_coding_system): For write-region, if
15316 VISIT is a filename, make it the target.
15317
15318 2002-08-07 Richard M. Stallman <rms@gnu.org>
15319
15320 * alloc.c (mark_object): Detect long lists for debugging.
15321 (mark_object_loop_halt): New variable.
15322
15323 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
15324
15325 * data.c (Fmake_variable_frame_local): Doc fix.
15326
15327 2002-08-01 David Ponce <david@dponce.com>
15328
15329 * w32menu.c (local_heap, local_alloc, local_free): New macros.
15330 (malloc_widget_value, free_widget_value)
15331 (w32_free_submenu_strings): Use them.
15332
15333 (push_submenu_start, push_submenu_end, push_left_right_boundary)
15334 (push_menu_pane, push_menu_item, single_keymap_panes)
15335 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
15336 (single_submenu, set_frame_menubar)
15337 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
15338
15339 (Fx_popup_menu): Don't show pop up menu until preceding one is
15340 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
15341
15342 * w32menu.c: Changes adapted from xmenu.c
15343 (set_frame_menubar): First parse all submenus,
15344 then make widget_value trees from them.
15345 Don't allocate any widget_value objects
15346 until we are done with the parsing.
15347 (parse_single_submenu): New function.
15348 (digest_single_submenu): New function.
15349 (single_submenu): Function deleted, replaced by those two.
15350
15351 2002-08-04 Andrew Choi <akochoi@shaw.ca>
15352
15353 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
15354 returns a valid window pointer before proceeding for keyDown and
15355 autoKey events.
15356
15357 2002-08-03 Andrew Choi <akochoi@shaw.ca>
15358
15359 * macterm.c (USE_CARBON_EVENTS): New macro.
15360 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
15361 (x_iconify_frame): Call CollapseWindow.
15362 (Vmac_reverse_ctrl_meta): New variable.
15363 (Vmac_wheel_button_is_mouse_2): New variable.
15364 (init_mac_drag_n_drop): New function.
15365 (mac_do_receive_drag): New function.
15366 (mac_handle_service_event): New function.
15367 (init_service_handler): New function.
15368 (mac_to_emacs_modifiers): New function.
15369 (mac_event_to_emacs_modifiers): New function.
15370 (mac_get_mouse_btn): New function.
15371 (mac_convert_event_ref): New function.
15372 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
15373 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
15374 mac_get_mouse_btn.
15375 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
15376
15377 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
15378 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
15379 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
15380 TOOL_BAR_EVENT for MAC_OS as well.
15381 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
15382 as for WINDOWS_NT.
15383 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
15384
15385 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
15386
15387 2002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
15388
15389 * xdisp.c (forward_to_next_line_start): Fix a condition that
15390 lead to a newline being skipped.
15391
15392 2002-08-02 Andrew Choi <akochoi@shaw.ca>
15393
15394 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
15395
15396 2002-08-01 Richard M. Stallman <rms@gnu.org>
15397
15398 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
15399
15400 2002-07-31 Andrew Choi <akochoi@shaw.ca>
15401
15402 * macfns.c: #undef init_process before #define-ing it.
15403
15404 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
15405 HAVE_CARBON is defined.
15406
15407 2002-07-31 Richard M. Stallman <rms@gnu.org>
15408
15409 * xmenu.c (set_frame_menubar): First parse all submenus,
15410 then make widget_value trees from them.
15411 Don't allocate any widget_value objects
15412 until we are done with the parsing.
15413 (parse_single_submenu): New function.
15414 (digest_single_submenu): New function.
15415 (single_submenu): Function deleted, replaced by those two.
15416
15417 2002-07-30 Juanma Barranquero <lektu@terra.es>
15418
15419 * w32proc.c (syms_of_ntproc): Fix docstring of
15420 `w32-get-true-file-attributes'.
15421
15422 2002-07-28 Richard M. Stallman <rms@gnu.org>
15423
15424 * s/hpux8.h (HPUX8): Define this before including hpux.h.
15425 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
15426
15427 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
15428
15429 * keyboard.c (make_lispy_event):
15430 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
15431 Explicitly clear up_modifier in event->modifiers.
15432
15433 2002-07-27 Richard M. Stallman <rms@gnu.org>
15434
15435 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
15436
15437 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
15438 for bar cursor.
15439
15440 2002-07-26 Kenichi Handa <handa@etl.go.jp>
15441
15442 * coding.c (detect_coding_iso2022): While checking a byte sequence
15443 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
15444 it in the normal loop.
15445
15446 2002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
15447
15448 * xterm.c (expose_overlaps): New function.
15449 (expose_window): Use it to fix the display of overlapping rows.
15450
15451 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
15452
15453 2002-07-23 Ken Raeburn <raeburn@gnu.org>
15454
15455 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
15456 since it only depends on XUINT.
15457
15458 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
15459 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
15460 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
15461 Macros deleted.
15462
15463 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
15464 its value over other approaches.
15465 * sysdep.c (start_of_data): Don't define the function if a macro
15466 form has been defined.
15467
15468 2002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
15469
15470 * xdisp.c (redisplay_updating_p): New variable.
15471 (init_iterator): Don't free realized faces when
15472 redisplay_updating_p is set.
15473 (redisplay_internal): Set redisplay_updating_p while updating
15474 the display.
15475
15476 2002-07-23 Richard M. Stallman <rms@gnu.org>
15477
15478 * editfns.c (Fmessage): Treat "" like nil.
15479
15480 2002-07-23 Kenichi Handa <handa@etl.go.jp>
15481
15482 * xdisp.c (face_before_or_after_it_pos):
15483 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
15484
15485 2002-07-22 Juanma Barranquero <lektu@terra.es>
15486
15487 * callproc.c (init_callproc) [DOS_NT]:
15488 Initialize Vshared_game_score_directory to nil.
15489 (syms_of_callproc) [DOS_NT]: Likewise.
15490
15491 2002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
15492
15493 * xdisp.c (display_line): Replace an abort with xassert.
15494
15495 2002-07-21 Richard M. Stallman <rms@gnu.org>
15496
15497 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
15498 and END_UNCHANGED when setting buffer_unchanged_p.
15499 Use current_matrix_up_to_date_p to decide whether to use
15500 try_cursor_movement.
15501
15502 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
15503
15504 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
15505
15506 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
15507 Set to nil if dir does not exist.
15508 (syms_of_callproc): Init unconditionally and simply.
15509
15510 * buffer.c (Fbuffer_list): Doc fix.
15511
15512 2002-07-21 Ken Raeburn <raeburn@gnu.org>
15513
15514 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
15515
15516 * buffer.c (mmap_realloc): When shrinking, make sure number of
15517 pages to unmap is rounded towards zero.
15518
15519 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
15520 (XSETINT): Deleted.
15521
15522 * m/att3b.h (XINT): Don't define.
15523 (VALBITS, VALMASK, XTYPE): Deleted.
15524 (DATA_SEG_BITS): Define.
15525 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
15526 ARRAY_MARK_FLAG): Deleted.
15527 (DATA_SEG_BITS): Define.
15528 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
15529 (DATA_SEG_BITS): Define.
15530
15531 2002-07-20 Richard M. Stallman <rms@gnu.org>
15532
15533 * print.c (print_error_message): New args CONTEXT and CALLER.
15534 Calls changed.
15535
15536 * lisp.h (print_error_message): Declare new args.
15537
15538 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
15539 and CONTEXT to print_error_message, don't print them here.
15540 For a Quit, don't use Vsignaling_function.
15541 Call message_log_maybe_newline.
15542
15543 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
15544
15545 2002-07-20 Kim F. Storm <storm@cua.dk>
15546
15547 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
15548
15549 2002-07-19 Ken Raeburn <raeburn@gnu.org>
15550
15551 * bytecode.c (struct byte_stack): Pointers into byte string now
15552 point to const.
15553 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
15554 const.
15555 * charset.h (BCOPY_SHORT): Source pointer now points to const.
15556 * coding.c (encode_eol, detect_coding, detect_eol):
15557 (decode_coding, encode_coding, detect_coding_system):
15558 Source strings now treated as const.
15559 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
15560 modify Lisp string contents.
15561 * coding.h (decode_coding, encode_coding, detect_coding,
15562 detect_eol): Declarations updated.
15563 * composite.c (compose_chars_in_text): Treat Lisp string contents
15564 as const.
15565 * dispnew.c (safe_bcopy): Source pointer now points to const.
15566 * lisp.h (STRING_COPYIN): New macro.
15567 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
15568 (internal_with_output_to_temp_buffer): Declarations updated.
15569 * print.c (temp_output_buffer_setup):
15570 (internal_with_output_to_temp_buffer): Buffer name argument is now
15571 pointer to const.
15572 * sound.c (struct sound_device): Function pointer field "write"
15573 buffer argument now points to const.
15574 (vox_write): Buffer argument points to const.
15575 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
15576 contents as const.
15577 * sysdep.c (emacs_write): Buffer pointer now const.
15578 * term.c (encode_terminal_code): Buffer pointer now const.
15579 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
15580 (x_face_list_fonts, x_update_menu_appearance):
15581 (hash_string_case_insensitive): Treat Lisp string contents as const.
15582
15583 2002-07-19 Juanma Barranquero <lektu@terra.es>
15584
15585 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
15586
15587 * fileio.c (syms_of_fileio): Likewise.
15588 (Ffile_name_as_directory): Fix argument name in docstring.
15589 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
15590
15591 2002-07-18 Richard M. Stallman <rms@gnu.org>
15592
15593 * data.c (Fdefalias): Doc fix.
15594
15595 2002-07-17 Dave Love <fx@gnu.org>
15596
15597 * intervals.h (text_property_stickiness): Use P_.
15598
15599 * ccl.c: Remove `emacs' conditionals.
15600 (ccl_backtrace_table): Fix size spec.
15601 (ccl_driver): Fix type errors.
15602
15603 2002-07-16 Ken Raeburn <raeburn@gnu.org>
15604
15605 * alloc.c (xstrdup, make_string, make_unibyte_string)
15606 (make_multibyte_string, build_string): String pointer args now
15607 point to const.
15608 * charset.c (find_charset_in_text, c_string_width):
15609 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
15610 * fileio.c (report_file_error):
15611 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
15612 (count_combining_before, count_combining_after, insert_1_both):
15613 (insert, insert_and_inherit, insert_string):
15614 (insert_before_markers, insert_before_markers_and_inherit):
15615 * lread.c (intern, oblookup, hash_string):
15616 * minibuf.c (temp_echo_area_glyphs):
15617 * search.c (fast_c_string_match_ignore_case):
15618 * sysdep.c (emacs_open, set_file_times):
15619 * xfaces.c (xstricmp):
15620 * xdisp.c (store_frame_title, string_char_and_length):
15621 (message_dolog, message2, message2_nolog, set_message): Likewise.
15622 (set_message_1): Cast message string argument to const pointer.
15623 * editfns.c (general_insert_function): Insertion function now
15624 takes pointer to const for input data.
15625 * charset.h (find_charset_in_text, c_string_width):
15626 (parse_str_as_multibyte): Declarations updated.
15627 * dispextern.h (xstricmp): Declaration updated.
15628 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
15629 (count_size_as_multibyte, count_combining_before):
15630 (count_combining_after, insert_1, insert_1_both, message_dolog):
15631 (insert, insert_and_inherit, insert_before_markers)
15632 (insert_before_markers_and_inherit, set_message, message2):
15633 (message2_dolog, build_string, make_string, make_unibyte_string):
15634 (make_multibyte_string, intern, oblookup, report_file_error):
15635 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
15636 (emacs_open, xstrdup): Declarations updated.
15637 * systime.h (set_file_times): Declaration updated.
15638
15639 * charset.c (find_charset_in_text, lisp_string_width): Use const
15640 for pointer to lisp string data.
15641 * charset.h (FETCH_STRING_CHAR_ADVANCE):
15642 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
15643 * coding.c (Ffind_coding_systems_region_interval):
15644 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
15645 (Fmake_directory_internal, Fdelete_directory):
15646 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
15647 * fontset.c (font_family_registry, fs_query_fontset):
15648 (list_fontsets):
15649 * frame.c (Fframe_parameter):
15650 * keyboard.c (cmd_error_internal):
15651 * keymap.c (Fdescribe_buffer_bindings):
15652 * lread.c (complete_filename_p, openp):
15653 * minibuf.c (Fminibuffer_complete_word):
15654 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
15655 (face_before_or_after_it_pos, next_element_from_string):
15656 (get_overlay_arrow_glyph_row, display_mode_element):
15657 (decode_mode_spec_coding):
15658 * xterm.c (same_x_server): Likewise.
15659
15660 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
15661 settings of non-existent fields.
15662
15663 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
15664 copy a lisp value.
15665
15666 * lread.c (Fintern_soft): Use string macros instead of
15667 Lisp_String fields.
15668 * keyboard.c (echo_char, parse_modifiers_uncached):
15669 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
15670 * textprop.c (validate_interval_range, interval_of): Likewise.
15671
15672 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
15673
15674 * charset.h (FETCH_STRING_CHAR_ADVANCE)
15675 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
15676 XSTRING()->size_byte.
15677
15678 * lisp.h (SDATA, SREF): Produce rvalue.
15679 (SSET): New macro.
15680 * alloc.c (make_event_array): Use SSET for storing into a string.
15681 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
15682 a string.
15683 * casefiddle.c (casify_object): Use SSET.
15684 * charset.h (FETCH_STRING_CHAR_ADVANCE)
15685 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
15686 address of string contents.
15687 * data.c (Faref): Use SDATA.
15688 (Faset): Use SDATA, SSET.
15689 * dired.c (directory_files_internal): Use SSET.
15690 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
15691 (Fread_file_name): Use SREF, SSET.
15692 * fns.c (concat): Use SSET.
15693 (concat, Fdelete): Use SDATA.
15694 * insdel.c (insert_from_string_1): Use SDATA.
15695 * keyboard.c (Fevent_convert_list): Use SREF.
15696 * lread.c (Fload): Use SDATA, SSET.
15697 * macfns.c (validate_x_resource_name): Use SSET.
15698 * process.c (status_message): Use SSET.
15699 * search.c (wordify): Use SDATA.
15700 (Freplace_match): Use SREF.
15701 * w32fns.c (validate_x_resource_name): Use SSET.
15702 * xfns.c (validate_x_resource_name): Use SSET.
15703 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
15704
15705 2002-07-16 Richard M. Stallman <rms@gnu.org>
15706
15707 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
15708
15709 * xdisp.c (reconsider_clip_changes):
15710 Don't test prevent_redisplay_optimizations_p.
15711 (redisplay_internal): Test prevent_redisplay_optimizations_p
15712 along with clip_changed in some cases.
15713 (try_window_id): Likewise.
15714 (redisplay_window): New local var buffer_unchanged_p.
15715
15716 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
15717
15718 * process.c (create_process): Test USG_SUBTTY_WORKS.
15719 (process_send_signal): Clean up handling of GID.
15720 Detect errors in ioctls meant to set GID.
15721
15722 * window.c (temp_output_buffer_show):
15723 Don't set prevent_redisplay_optimizations_p.
15724
15725 2002-07-15 Juanma Barranquero <lektu@terra.es>
15726
15727 * eval.c (Fdefvaralias): Add docstring argument.
15728
15729 2002-07-15 Ken Raeburn <raeburn@gnu.org>
15730
15731 * lisp.h (STRING_INTERVALS): Produce rvalue.
15732 (STRING_SET_INTERVALS): New macro.
15733 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
15734 * fns.c (Fstring_as_multibyte): Likewise.
15735 * intervals.c (balance_possible_root_interval, delete_interval)
15736 (create_root_interval, copy_intervals_to_string): Likewise.
15737 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
15738 instead of 0.
15739
15740 2002-07-14 Ken Raeburn <raeburn@gnu.org>
15741
15742 * lisp.h (STRING_SET_CHARS): New macro.
15743 (SCHARS, SBYTES): Produce rvalues.
15744 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
15745 * fns.c (concat): Likewise.
15746 * lread.c (read_vector): Likewise.
15747
15748 * lisp.h (SMBP): Delete. All uses changed to STRING_MULTIBYTE.
15749 (STRING_SET_UNIBYTE): New macro.
15750 (SET_STRING_BYTES): Delete. Callers (all of which supplied a
15751 length of -1) changed to use STRING_SET_UNIBYTE.
15752 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
15753 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
15754 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
15755 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
15756 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
15757 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
15758 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
15759 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
15760 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
15761 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
15762 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
15763 STRING_BYTES or indirection changed to SCHARS, SBYTES,
15764 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
15765 unchanged for now.
15766
15767 2002-07-13 Kim F. Storm <storm@cua.dk>
15768
15769 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
15770
15771 2002-07-12 Richard M. Stallman <rms@gnu.org>
15772
15773 * fileio.c (Fwrite_region): Doc fix.
15774
15775 * print.c (print_error_message): Don't handle Vsignaling_function here.
15776
15777 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
15778 (command_loop_1): Avoid certain actions after memory-full error.
15779
15780 * eval.c (Fsignal): Don't call cancel_hourglass.
15781 For a memory-full error, don't call Vsignal_hook_function
15782 and don't set Vsignaling_function.
15783
15784 * process.c (process_send_signal): Add abort call.
15785
15786 2002-07-11 Markus Rost <rost@math.ohio-state.edu>
15787
15788 * keymap.c (Fkey_binding): Fix typo.
15789
15790 2002-07-11 Richard M. Stallman <rms@gnu.org>
15791
15792 * alloc.c (Vmemory_full): New variable.
15793 (Vmemory_signal_data): Rename from memory_signal_data.
15794 Uses changed.
15795 (syms_of_alloc): Defvar them.
15796 (memory_full, buffer_memory_full): Set Vmemory_full.
15797
15798 * lisp.h (Vmemory_full): Add declaration.
15799 (current_column, indented_beyond_p): Change declaration.
15800
15801 * indent.c (last_known_column): Declare as double, not float.
15802 (current_column, current_column_1, string_display_width)
15803 (position_indentation): Return `double'.
15804 (indented_beyond_p): Arg `column' is `double'. Callers changed.
15805
15806 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
15807 (back_to_previous_visible_line_start)
15808 (reseat_at_next_visible_line_start, next_element_from_buffer):
15809 Use `double', not `float', when calling indented_beyond_p.
15810
15811 * s/hpux11.h (BROKEN_SA_RESTART): Define.
15812
15813 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
15814
15815 2002-07-11 Juanma Barranquero <lektu@terra.es>
15816
15817 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
15818 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
15819 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
15820 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
15821 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
15822 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
15823
15824 2002-07-10 Juanma Barranquero <lektu@terra.es>
15825
15826 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
15827 All callers changed.
15828
15829 2002-07-09 Stefan Monnier <monnier@cs.yale.edu>
15830
15831 * data.c (Fdefalias): Add an optional `docstring' argument.
15832 (set_internal, Fsetq_default): Use XCAR/XCDR.
15833
15834 * composite.c (HASH_VALUE, HASH_KEY):
15835 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
15836
15837 2002-07-09 Kenichi Handa <handa@etl.go.jp>
15838
15839 * callproc.c (Fcall_process): Fix previous change.
15840
15841 2002-07-07 Stefan Monnier <monnier@cs.yale.edu>
15842
15843 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
15844 Add support for hash-tables.
15845 (Ftry_completion): Return t even if the string appears multiple times.
15846
15847 * fns.c (Fnconc): Use XCDR.
15848 (Fprovide): Use CONSP and XCDR.
15849 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
15850 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
15851 (Fmake_hash_table): Accept `:size nil'.
15852 (Fmakehash): Delete: moved to subr.el.
15853 (syms_of_fns): Don't defsubr makehash.
15854
15855 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
15856 (HASH_TABLE_SIZE): Move from fns.c.
15857
15858 2002-07-07 Richard M. Stallman <rms@gnu.org>
15859
15860 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
15861 Instead just return 0 when there is something to be done.
15862 (try_scrolling): If make_cursor_line_fully_visible returns 0,
15863 retry scrolling as if cursor were off the bottom.
15864 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
15865 return CURSOR_MOVEMENT_MUST_SCROLL.
15866 (redisplay_window): If make_cursor_line_fully_visible returns 0,
15867 go to try_to_scroll.
15868
15869 * buffer.c (Fbuffer_local_value): Store current value into its binding
15870 so we get the up-to-date value for the binding that is loaded.
15871
15872 * eval.c (Fdefmacro): Doc fix.
15873
15874 2002-07-05 Dave Love <fx@gnu.org>
15875
15876 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
15877 correctly.
15878
15879 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
15880 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
15881 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
15882 CCL_LookupCharConstTbl.
15883 (syms_of_ccl): Defvar translation-hash-table-vector.
15884
15885 2002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15886
15887 * xdisp.c: Remove unused variable `face'.
15888
15889 2002-07-04 Juanma Barranquero <lektu@terra.es>
15890
15891 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
15892 obsolescence information.
15893
15894 2002-07-03 Andrew Choi <akochoi@shaw.ca>
15895
15896 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
15897 pattern. Search cache first.
15898 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
15899 for Japanese font.
15900 (XLoadQueryFont): Use it.
15901
15902 2002-07-02 Richard M. Stallman <rms@gnu.org>
15903
15904 * keymap.c (Fdefine_key): Doc fix.
15905
15906 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
15907
15908 2002-07-02 Juanma Barranquero <lektu@terra.es>
15909
15910 * keymap.c (syms_of_keymap): Fix typo.
15911
15912 2002-07-01 Andrew Choi <akochoi@shaw.ca>
15913
15914 * s/darwin.h: Define POSIX_SIGNALS.
15915
15916 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
15917 and FSRefMakePath to convert FSSpec returned with Apple Event to
15918 Posix pathname.
15919 (mac_initialize) [TARGET_API_MAC_CARBON]:
15920 Call init_required_apple_events and disable the `Quit' menu item
15921 provided automatically by the Carbon Toolbox.
15922
15923 2002-07-01 Dave Love <fx@gnu.org>
15924
15925 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
15926 for K&R.
15927
15928 * xterm.c: Fix prototype for K&R.
15929
15930 * term.c (costs_set): Declare static, non-initialized for pcc.
15931
15932 2002-07-01 Richard M. Stallman <rms@gnu.org>
15933
15934 * keyboard.c (timer_last_idleness_start_time): New variable.
15935 (timer_start_idle): Set that.
15936 (read_key_sequence): Use that to reset timer_idleness_start_time
15937 to previous value.
15938
15939 * window.c (Frecenter): With arg, set optional_new_start.
15940
15941 * xdisp.c (redisplay_internal): Make optional_new_start really work.
15942
15943 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
15944 buffer for completion.
15945
15946 2002-06-29 Ken Raeburn <raeburn@gnu.org>
15947
15948 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
15949
15950 2002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15951
15952 * keyboard.c (readable_filtered_events): New function that filters
15953 FOCUS_IN_EVENT depending on parameter.
15954 (readable_events): Calls readable_filtered_events, not filtering
15955 FOCUS_IN_EVENT.
15956 (get_filtered_input_pending): New function, filtering parameter passed
15957 to readable_filtered_events.
15958 (get_input_pending): Calls get_filtered_input_pending, not filtering
15959 FOCUS_IN_EVENT.
15960 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
15961 FOCUS_IN_EVENT.
15962
15963 * xterm.h (struct x_output): Add focus_state.
15964
15965 * xterm.c (x_focus_changed): New function.
15966 (x_detect_focus_change): New function.
15967 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
15968 EnterNotify and LeaveNotify to track X focus changes.
15969
15970 2002-06-28 Andreas Schwab <schwab@suse.de>
15971
15972 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
15973
15974 2002-06-27 Kim F. Storm <storm@cua.dk>
15975
15976 * xdisp.c (mode_line_string_list, mode_line_string_face)
15977 (mode_line_string_face_prop): New variables.
15978 (store_mode_line_string): New function.
15979 (display_mode_element): Use store_mode_line_string to
15980 add mode-line string elements to mode_line_string_list
15981 when mode_line_string_list is non-nil.
15982 (Fformat_mode_line): Now returns propertized string by
15983 default. New arg NO-PROPS to ignore properties.
15984 (decode_mode_spec): Only add two dashes for %- in propertized
15985 mode-line string.
15986 (syms_of_xdisp): Init and staticpro mode_line_string_list.
15987
15988 2002-06-27 Stefan Monnier <monnier@cs.yale.edu>
15989
15990 * minibuf.c (minibuffer_completion_contents): Add return type.
15991
15992 2002-06-27 Juanma Barranquero <lektu@terra.es>
15993
15994 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
15995
15996 2002-06-26 Juanma Barranquero <lektu@terra.es>
15997
15998 * fileio.c (read_file_name_cleanup): Add missing return.
15999
16000 2002-06-26 Richard M. Stallman <rms@gnu.org>
16001
16002 * window.c (Frecenter): Don't set force_start flag.
16003
16004 * minibuf.c (do_completion, Fminibuffer_complete_word)
16005 (Fminibuffer_completion_help): Complete just the text before point.
16006 (minibuffer_completion_contents): New function.
16007
16008 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
16009
16010 * frame.c (frames_bury_buffer): Function deleted.
16011
16012 2002-06-25 Miles Bader <miles@gnu.org>
16013
16014 * callint.c (Fcall_interactively): When checking to see if doprnt hit
16015 the end of callint_message, allow for a terminating '\0'.
16016
16017 2002-06-24 Juanma Barranquero <lektu@terra.es>
16018
16019 * w32select.c: Include composite.h.
16020
16021 * w16select.c: Likewise.
16022
16023 2002-06-24 Kenichi Handa <handa@etl.go.jp>
16024
16025 * callproc.c (Fcall_process): If code detection is necessary,
16026 call detect_coding directly here.
16027
16028 * coding.c (detect_eol): Preserve coding->cmp_data.
16029
16030 * w16select.c (Fw16_get_clipboard_data):
16031 * w32fns.c (w32_to_x_font):
16032 * w32select.c (Fw32_get_clipboard_data):
16033 * xselect.c (selection_data_to_lisp_data):
16034 * xterm.c (XTread_socket): Disable composition handling.
16035
16036 2002-06-24 Stefan Monnier <monnier@cs.yale.edu>
16037
16038 * print.c (temp_output_buffer_setup): Kill all local variables.
16039
16040 2002-06-22 Stefan Monnier <monnier@cs.yale.edu>
16041
16042 * lread.c (Fread): Remove redundant and imprecise declaration.
16043
16044 * xfns.c (check_x_display_info): Use check_x_frame.
16045
16046 * .gdbinit (xprintsym): Use the new `xname' field.
16047 (xsymbol): Use it.
16048
16049 2002-06-22 Jason Rumney <jasonr@gnu.org>
16050
16051 * w32fns.c (file_dialog_callback): New function.
16052 (Fx_file_dialog): Allow selecting directories as well as files.
16053
16054 2002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16055
16056 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
16057 OpenBSD. Add support for mipseb-*-netbsd* machines.
16058
16059 2002-06-17 Andrew Choi <akochoi@shaw.ca>
16060
16061 * macterm.c (mac_scroll_area): Set foreground and backcolor to
16062 black and white before scrolling. Restore frame background and
16063 foreground color after scrolling.
16064 (do_window_update): Call XClearWindow before calling expose_frame.
16065 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
16066 FRAME_FOREGROUND_PIXEL of frame.
16067
16068 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
16069 test Mac command key as <ALT> key.
16070
16071 2002-06-17 Stefan Monnier <monnier@cs.yale.edu>
16072
16073 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
16074
16075 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
16076 Lookup keys in function-key-map immediately so that key-translation-map
16077 can be applied earlier.
16078 Remove function_key_possible and key_translation_possible, replaced
16079 by checking `keytran_start < t'.
16080
16081 * .gdbinit (xsymbol): Use the new `xname' field.
16082
16083 2002-06-17 Andrew Choi <akochoi@shaw.ca>
16084
16085 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
16086 test Mac command key as <ALT> key.
16087
16088 * mac.c (do_applescript): Call initialize_applescript if necessary
16089 when first called. Dispose of result_desc only when there is no error.
16090 (Fdo_applescript): Use %d format specifier instead of %ld.
16091
16092 2002-06-16 Andrew Choi <akochoi@shaw.ca>
16093
16094 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
16095 of FrontWindow for cases keyDown and autoKey.
16096
16097 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
16098 Vdefault_fontset to Monaco with mac-roman coding.
16099
16100 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
16101 init_process before and after inclusion of Carbon/Carbon.h, resp.
16102
16103 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
16104 cursor_gc.
16105 (add_font_name_table_entry): New function.
16106 (init_font_name_table): Use add_font_name_table_entry; add italic,
16107 bold, and bold-italic entries for truetype fonts.
16108
16109 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
16110 for Mac too.
16111 (try_font_list) [MAC_OS]: If no font matches given registry, try
16112 fonts with any registry matching face_family.
16113 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
16114
16115 * s/darwin.h: If autoconf detects the Ncurses library, define
16116 LIBS_TERMCAP to -lncurses to use it.
16117
16118 2002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
16119
16120 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
16121
16122 2002-06-15 Richard M. Stallman <rms@gnu.org>
16123
16124 * window.c (Fset_window_configuration): Explicitly preserve
16125 the point value that new_current_buffer had at the start.
16126
16127 2002-06-14 Juanma Barranquero <lektu@terra.es>
16128
16129 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
16130 Fix typos.
16131
16132 2002-06-14 Kim F. Storm <storm@cua.dk>
16133
16134 * insdel.c (insert_1_both, insert_from_string_1)
16135 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
16136 insert happened in the end_unchanged region. Otherwise, the
16137 redisplay may be confused and duplicate the last line in the
16138 buffer [seen after save-buffer when require-final-newline==t].
16139
16140 2002-06-13 Jason Rumney <jasonr@gnu.org>
16141
16142 * w32.c (init_environment): Remove EMACSLOCKDIR.
16143 (stat): Swap _S_IFDIR and _S_IFREG.
16144
16145 2002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16146
16147 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
16148 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
16149 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
16150 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
16151 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
16152 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
16153 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
16154 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
16155 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
16156 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
16157 SELECTION_REQUEST_EVENT, selection_clear_event to
16158 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
16159 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
16160 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
16161 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
16162 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
16163 no_event to NO_EVENT.
16164
16165 2002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16166
16167 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
16168
16169 2002-06-12 Stefan Monnier <monnier@cs.yale.edu>
16170
16171 * intervals.c (textget): Don't forget to `return'.
16172 (lookup_char_property): Use XCAR/XCDR.
16173
16174 2002-06-12 Juanma Barranquero <lektu@terra.es>
16175
16176 * xdisp.c (Fformat_mode_line): Fix typo.
16177
16178 2002-06-12 Kim F. Storm <storm@cua.dk>
16179
16180 * xdisp.c (Fformat_mode_line): New function.
16181 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
16182 (store_frame_title_char, store_frame_title): Use unconditionally.
16183 (init_xdisp): Defsubr Fformat_mode_line.
16184 Initialize frame_title_buf etc. unconditionally.
16185
16186 2002-06-11 Stefan Monnier <monnier@cs.yale.edu>
16187
16188 * keyboard.c (read_key_sequence):
16189 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
16190 things through those maps after downcasing events.
16191 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
16192 applies after function-key-map.
16193 Make sure that keytran can be done in the middle in the sequence.
16194 Be careful not to throw away events past the one we downcase.
16195
16196 * lread.c (read_integer): Remove unused var `tem'.
16197 (read1): Fix int/Lisp_Object mixup.
16198
16199 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
16200
16201 2002-06-11 Richard M. Stallman <rms@gnu.org>
16202
16203 * keyboard.c (readable_events): Ignore any number of
16204 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
16205
16206 2002-06-09 Miles Bader <miles@gnu.org>
16207
16208 * xfaces.c (Ftty_supports_face_attributes_p): New function.
16209 (parse_rgb_list, tty_lookup_color): New functions.
16210 (tty_defined_color): Use `tty_lookup_color' to do all the work.
16211 (color_distance, Fcolor_distance): New functions.
16212 (TTY_SAME_COLOR_THRESHOLD): New macro.
16213 (Qtty_color_standard_values): New variable.
16214 (syms_of_xfaces): Initialize new vars & functions.
16215
16216 2002-06-08 Colin Walters <walters@verbum.org>
16217
16218 * textprop.c (Vchar_property_alias_alist): New variable.
16219 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
16220
16221 * intervals.c (lookup_char_property): New function for looking up
16222 overlay and text properties, created from textget.
16223 (textget): Use it.
16224
16225 * intervals.h (lookup_char_property): Declare.
16226 (Vchar_property_alias_alist): Declare.
16227
16228 * buffer.c (Foverlay_get): Use lookup_char_property.
16229
16230 2002-06-07 Sam Steingold <sds@gnu.org>
16231
16232 * xselect.c (lisp_data_to_selection_data): Fix last change:
16233 *data_ret is not a Lisp string, while unibyte_string is.
16234
16235 2002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
16236
16237 * xselect.c (lisp_data_to_selection_data): Fix last change:
16238 set size_ret.
16239
16240 2002-06-07 Andreas Schwab <schwab@suse.de>
16241
16242 * m/amdx86-64.h: New file.
16243
16244 2002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
16245
16246 * fns.c (Fstring_make_unibyte): Doc fix.
16247
16248 * xselect.c (lisp_data_to_selection_data): If the requested type
16249 is STRING, call string_make_unibyte to encode the selected text
16250 as a string.
16251
16252 * window.c (Fset_window_hscroll): Doc fix.
16253
16254 2002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16255
16256 * fileio.c (choose_write_coding_system):
16257 Call select-safe-coding-system properly.
16258
16259 2002-06-03 Richard M. Stallman <rms@gnu.org>
16260
16261 * xdisp.c (message_with_string): Error if STRING is not a string.
16262
16263 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
16264
16265 * fileio.c (choose_write_coding_system): Pass FILE arg to
16266 Vselect_safe_coding_system_function.
16267
16268 2002-06-03 Ken Raeburn <raeburn@gnu.org>
16269
16270 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
16271
16272 2002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
16273
16274 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
16275 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
16276 * keymap.c (describe_command): Likewise.
16277 * minibuf.c (read_minibuf): Likewise.
16278
16279 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
16280 Cast `current_column' return value to int.
16281 (back_to_previous_visible_line_start)
16282 (reseat_at_next_visible_line_start, next_element_from_buffer):
16283 Cast `indented_beyond_p' 3rd arg to float.
16284
16285 * indent.c (last_known_column): Now a float.
16286 (current_column_1, position_indentation, current_column)
16287 (string_display_width): Return float.
16288 (Fcurrent_column): Cast `current_column' return value to int.
16289 (Fcurrent_indentation): Cast `position_indentation' retval to int.
16290 (indented_beyond_p): Third arg now a float.
16291 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
16292
16293 * lisp.h (current_column): Now returns float.
16294 (indented_beyond_p): 3rd arg now a float.
16295
16296 2002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
16297
16298 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
16299 is Qcompound_text_with_extensions.
16300
16301 * xselect.c (lisp_data_to_selection_data): Always set selection
16302 type as string if x_encode_text returns streingp non-NULL.
16303
16304 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
16305
16306 2002-05-30 Richard M. Stallman <rms@gnu.org>
16307
16308 * window.c (Fset_window_configuration): Correct the handling
16309 of point in current buffer, to work with multiple windows.
16310
16311 2002-05-29 Colin Walters <walters@verbum.org>
16312
16313 * lread.c (Fread_from_string): Don't depend on order of evaluation
16314 for C function parameters.
16315
16316 2002-05-28 Richard M. Stallman <rms@gnu.org>
16317
16318 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
16319 way for blinked-off state and for a nonselected window.
16320
16321 * window.c (window_scroll_pixel_based): Don't call Fbolp;
16322 instead, see if the new start pos is at beginning of line.
16323
16324 * fileio.c (Fwrite_region): If START is a string, don't
16325 make any annotations.
16326
16327 * eval.c (syms_of_eval): Doc fix.
16328
16329 2002-05-28 Colin Walters <walters@debian.org>
16330
16331 * emacs.c (USAGE1): Add --no-splash.
16332 (standard_args): Ditto.
16333
16334 2002-05-28 Colin Walters <walters@gnu.org>
16335
16336 * lread.c (readchar_count): New variable.
16337 (readchar): Increment it.
16338 (unreadchar): Decrement it.
16339 (read_multibyte): Decrement it.
16340 (Vread_with_symbol_positions): New variable.
16341 (Vread_symbol_positions_list): New variable.
16342 (read_internal_start): New function, created from Fread and
16343 Fread_from_string. Handle Vread_symbol_positions_list and
16344 Vread_with_symbol_positions.
16345 (readevalloop, Fread, Fread_from_string): Use it.
16346 (read1): Use readchar_count to add symbol positions to
16347 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
16348 (syms_of_lread): DEFVAR_LISP and initialize them.
16349
16350 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
16351 (substitute_object_recurse, substitute_object_in_subtree)
16352 (substitute_in_interval): Prototype.
16353 (read_multibyte): Return c if it's less than zero.
16354
16355 2002-05-28 Kim F. Storm <storm@cua.dk>
16356
16357 * fileio.c (Fread_file_name_internal): Added brute-force
16358 speed up for using predicate file-directory-p.
16359
16360 2002-05-28 Kim F. Storm <storm@cua.dk>
16361
16362 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
16363 New variables.
16364 (syms_of_fileio): DEFVAR_LISP them.
16365 (read_file_name_cleanup): New unwind function.
16366 (Fread_file_name_internal): Only return completions satifying
16367 Vread_file_name_predicate. Temporarily unwind protect and rebind
16368 default-directory while checking completions against the predicate.
16369 (Fread_file_name): Added PREDICATE argument. Specbind it to
16370 Vread_file_name_predicate during completion.
16371 Call Vread_file_name_function to read the file name if non-nil.
16372
16373 * lisp.h (Fread_file_name): Now has 6 args.
16374
16375 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
16376 predicate for Fread_file_name when reading directory name.
16377 Supply Qnil for predicate in other calls to Fread_file_name.
16378
16379 2002-05-26 Miles Bader <miles@gnu.org>
16380
16381 * term.c (tty_capable_p): New function.
16382 * dispextern.h (tty_capable_p): New function declaration.
16383 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
16384 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
16385
16386 2002-05-23 Stefan Monnier <monnier@cs.yale.edu>
16387
16388 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
16389 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
16390 (Vwrite_region_annotate_functions): Docstring fix.
16391
16392 2002-05-23 Kim F. Storm <storm@cua.dk>
16393
16394 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
16395 phys_cursor's hpos is overwritten. This is still not completely
16396 correct, as it doesn't really make sense to use hpos at all to
16397 get the cursor glyph (as that is relative to the width of the
16398 characters on the line, which may have changed during the update).
16399
16400 2002-05-22 Jason Rumney <jasonr@gnu.org>
16401
16402 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
16403 Lisp_Object.
16404 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
16405 Use modified enumfont_t struct.
16406
16407 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
16408
16409 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
16410 Handle the `hbar' cursor type.
16411 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
16412
16413 * w32fns.c (Qhbar): New variable.
16414 (x_specified_cursor_type): Use it.
16415
16416 2002-05-21 Ken Raeburn <raeburn@gnu.org>
16417
16418 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
16419 now, when the address is needed.
16420
16421 2002-05-21 Colin Walters <walters@gnu.org>
16422
16423 * Makefile.in (shortlisp): Add font-core.el.
16424
16425 2002-05-20 Richard M. Stallman <rms@gnu.org>
16426
16427 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
16428
16429 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
16430 equivalent key bindings here.
16431
16432 2002-05-20 Ken Raeburn <raeburn@gnu.org>
16433
16434 Change symbol structure to contain a lisp object for the symbol
16435 name:
16436 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
16437 object field named "xname".
16438 (SYMBOL_NAME): New macro.
16439 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
16440 name field.
16441 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
16442 (mark_object, gc_sweep): Use symbol xname field and XSTRING
16443 instead of name field.
16444 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
16445 SYMBOL_NAME instead of XSYMBOL and name field.
16446 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
16447 instead of XSYMBOL and name field.
16448 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
16449 and SYMBOL_NAME instead of XSYMBOL and name field.
16450 * coding.c (Fread_coding_system, code_convert_region1)
16451 (code_convert_string1, code_convert_string_norecord)
16452 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
16453 XSYMBOL and name field.
16454 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
16455 (Fmake_variable_buffer_local, Fmake_local_variable)
16456 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
16457 of XSYMBOL and name field.
16458 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
16459 XSYMBOL and name field.
16460 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
16461 instead of XSYMBOL and name field.
16462 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
16463 XSYMBOL and name field.
16464 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
16465 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
16466 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
16467 instead of XSYMBOL and name field.
16468 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
16469 (parse_modifiers, apply_modifiers, Fevent_convert_list)
16470 (parse_solitary_modifier, Fexecute_extended_command):
16471 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
16472 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
16473 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
16474 of XSYMBOL and name field.
16475 (describe_command, describe_translation): Use SYMBOL_NAME and
16476 assignment instead of XSYMBOL and name field and XSETSTRING.
16477 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
16478 instead of XSYMBOL and name field.
16479 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
16480 name field and XSETSTRING.
16481 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
16482 of XSYMBOL and name field.
16483 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
16484 assignment instead of XSYMBOL and name field and XSETSTRING.
16485 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
16486 XSTRING instead of XSYMBOL and name field.
16487 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
16488 and XSTRING instead of XSYMBOL and name field.
16489 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
16490 and XSTRING instead of XSYMBOL and name field.
16491 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
16492 XSTRING instead of XSYMBOL and name field.
16493 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
16494 of XSYMBOL and name field.
16495 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
16496 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
16497
16498 2002-05-19 Ken Raeburn <raeburn@gnu.org>
16499
16500 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
16501 and XCDR real rvalues in most configurations.
16502
16503 * buffer.c (fix_overlays_in_range, fix_overlays_before):
16504 Don't take the address of the cdr part of a cons cell; instead, track
16505 the parent cell and call XSETCDR, or set the variable for the head
16506 of the list if we haven't started down the list yet.
16507
16508 2002-05-19 Richard M. Stallman <rms@gnu.org>
16509
16510 * doc.c (reread_doc_file): Don't ask for confirmation.
16511
16512 2002-05-18 Jason Rumney <jasonr@gnu.org>
16513
16514 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
16515 (xbm_load_image): Use it.
16516 (xbm_load): Ditto.
16517 (xbm_read_bitmap_data): Reverted to xfns.c version.
16518 From David Ponce <david@dponce.com>.
16519
16520 2002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
16521
16522 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
16523 2.02 and later.
16524
16525 2002-05-16 Juanma Barranquero <lektu@terra.es>
16526
16527 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
16528
16529 2002-05-15 Stefan Monnier <monnier@cs.yale.edu>
16530
16531 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
16532 meaningful test.
16533 (read_char_minibuf_menu_prompt): Fix typo.
16534
16535 2002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
16536
16537 * eval.c (Fcommandp): Doc fix.
16538
16539 2002-05-13 Stefan Monnier <monnier@cs.yale.edu>
16540
16541 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
16542 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
16543 (Fset_keymap_parent): Gcpro a bit more.
16544 (access_keymap): Gcpro around meta_map call and around the main loop.
16545 (get_keyelt): Gcpro when following indirect references.
16546 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
16547 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
16548 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
16549 Remove useless ad-hoc remap code.
16550
16551 2002-05-13 Richard M. Stallman <rms@gnu.org>
16552
16553 * search.c (search_buffer): Give up boyer moore search if inverse
16554 translation change charset_base.
16555
16556 2002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
16557
16558 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
16559 characters is carried over from the previous block of text, adjust
16560 coding->produced to account for the extra character.
16561
16562 2002-05-11 Andreas Schwab <schwab@suse.de>
16563
16564 * coding.c (intersection): Keep the elements of the returned list
16565 in the same order as in the first list.
16566
16567 2002-05-11 Kim F. Storm <storm@cua.dk>
16568
16569 * keymap.c (current_minor_maps): Fix resizing of cmm_maps;
16570 only update cmm_size if realloc actually succeeds.
16571 Testing with initial size of 2 elements revealed that using
16572 realloc on GNU/Linux would cause a random trap in xmalloc
16573 later on, so I rewrote the code to use malloc/bcopy/free instead
16574 of realloc.
16575
16576 2002-05-10 Jason Rumney <jasonr@gnu.org>
16577
16578 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
16579
16580 2002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
16581
16582 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
16583 parens, to ensure correct evaluation order.
16584
16585 2002-05-10 Kim F. Storm <storm@cua.dk>
16586
16587 * keymap.c (Vemulation_mode_map_alists): New variable.
16588 (syms_of_keymap): DEFVAR_LISP it.
16589 (current_minor_maps): Process keymap alists in that list before
16590 minor-mode-overriding-map-alist and minor-mode-map-alist.
16591
16592 2002-05-09 Richard M. Stallman <rms@gnu.org>
16593
16594 * search.c (Freplace_match): Doc fix.
16595
16596 2002-05-09 Kim F. Storm <storm@cua.dk>
16597
16598 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
16599 Enlarge cursor rectangle drawn around image with non-zero relief.
16600
16601 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
16602 Enlarge cursor rectangle drawn around image with non-zero relief.
16603
16604 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
16605 Enlarge cursor rectangle drawn around image with non-zero relief.
16606
16607 2002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
16608
16609 * xselect.c (lisp_data_to_selection_data): Don't set selection
16610 type if comes from the Lisp object's car. If the selection
16611 contains a pure ASCII text, always return QSTRING as its type.
16612
16613 2002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16614
16615 * mac.c (mac-cut-function): Doc fix.
16616
16617 2002-05-05 Richard M. Stallman <rms@gnu.org>
16618
16619 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
16620
16621 2002-05-04 Jason Rumney <jasonr@gnu.org>
16622
16623 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
16624 for event-click-count.
16625
16626 * process.c (init_process): Only add server subfeature if we can
16627 use non-blocking I/O.
16628
16629 2002-05-04 Andrew Choi <akochoi@shaw.ca>
16630
16631 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
16632 repeatedly.
16633
16634 2002-05-03 Jason Rumney <jasonr@gnu.org>
16635
16636 * process.c (Fmake_network_process): Only support server sockets
16637 when we can make them non-blocking.
16638
16639 * s/ms-w32.h (HAVE_SELECT): Define.
16640
16641 * w32.h (FILE_NDELAY): New flag.
16642
16643 * w32.c (sys_getpeername, fcntl): New functions.
16644 (_sys_read_ahead): Temporarily block on non-blocking sockets.
16645
16646 * w32proc.c: include sys/file.h.
16647
16648 2002-05-03 Colin Walters <walters@verbum.org>
16649
16650 * callproc.c (Vgame_score_directory): Renamed to
16651 Vshared_game_score_directory.
16652
16653 2002-04-30 Richard M. Stallman <rms@gnu.org>
16654
16655 * s/gnu.h [emacs]: Include stdio.h.
16656 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
16657
16658 * eval.c (do_autoload): Error if called while preparing to dump.
16659
16660 * fns.c (Frequire): Error if need to load while preparing to dump.
16661
16662 2002-04-28 Colin Walters <walters@verbum.org>
16663
16664 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
16665 Default to "~/.emacs.d/games".
16666
16667 2002-04-29 Stefan Monnier <monnier@cs.yale.edu>
16668
16669 * lread.c (openp): Change arg exec_only to predicate.
16670 (build_load_history): Use XCAR/XCDR.
16671 (Flocate_file_internal): New fun.
16672 (syms_of_lread): Defsubr it.
16673 (Fload): Update call to openp.
16674
16675 * lisp.h (openp): Update prototype.
16676
16677 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
16678 * w32proc.c (sys_spawnve):
16679 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
16680 * w32.c (check_windows_init_file):
16681 * sound.c (Fplay_sound_internal):
16682 * process.c (Fstart_process):
16683 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
16684 * mac.c (run_mac_command):
16685 * emacs.c (init_cmdargs):
16686 * callproc.c (Fcall_process): Update call to openp.
16687
16688 * textprop.c (remove_properties): Don't use XCAR without CONSP.
16689
16690 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
16691
16692 2002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16693
16694 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
16695 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
16696
16697 2002-04-28 Richard M. Stallman <rms@gnu.org>
16698
16699 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
16700
16701 * eval.c (Fcommandp): New arg for_call_interactively.
16702 * lisp.h (Fcommandp): Declare new arg.
16703
16704 2002-04-28 Jason Rumney <jasonr@gnu.org>
16705
16706 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
16707
16708 * w32.c (stat, fstat): Use file index information to generate
16709 inodes for directories where available.
16710
16711 2002-04-26 Andrew Choi <akochoi@shaw.ca>
16712
16713 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
16714 [HAVE_CARBON]: Include Mac object files.
16715
16716 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
16717 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
16718 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
16719 MAC_OSX, and MAC_OS instead of macintosh.
16720
16721 * editfns.c [MAC_OS8]: Include stdio.h.
16722
16723 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
16724
16725 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
16726 Apple Monaco.
16727
16728 * process.c (QCfamily, QCfilte): Declare extern.
16729 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
16730 calling select.
16731
16732 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
16733
16734 * tparam.c [MAC_OSX]: Don't define BC and UP.
16735
16736 * config.in [HAVE_CARBON]: Add.
16737
16738 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
16739 Move here from mac/src and mac/inc.
16740
16741 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
16742
16743 2002-04-26 Gerd Moellmann <gerd@gnu.org>
16744
16745 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
16746 Compute phys_cursor_width from the x position returned
16747 by x_draw_glyhs, which is cheaper.
16748 (x_display_and_set_cursor): Compute the buffer-local value
16749 of `cursor-in-non-selected-windows' only when needed.
16750
16751 2002-04-25 Gerd Moellmann <gerd@gnu.org>
16752
16753 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
16754 cursor on a stretch glyph has a width that depends on
16755 x_stretch_cursor_p.
16756
16757 2002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16758
16759 * abbrev.c (abbrev-start-location): Doc fix.
16760
16761 * indent.c (Fvertical_motion): Fix last change.
16762
16763 2002-04-25 Gerd Moellmann <gerd@gnu.org>
16764
16765 * indent.c (Fvertical_motion): Move to the start of the line
16766 containing PT before moving up or down.
16767
16768 2002-04-24 Gerd Moellmann <gerd@gnu.org>
16769
16770 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
16771 case of writing a whole row, more or less analogous to the case of
16772 writing only parts of a row.
16773
16774 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
16775 0 for NO_CURSOR.
16776
16777 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
16778
16779 2002-04-23 Colin Walters <walters@verbum.org>
16780
16781 * buffer.c (syms_of_buffer): Doc fix.
16782
16783 2002-04-23 Gerd Moellmann <gerd@gnu.org>
16784
16785 * xterm.c (notice_overwritten_cursor): Handle the special case
16786 of the cursor being in the first blank non-text line at the
16787 end of a window.
16788
16789 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
16790 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
16791 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
16792 bar cursors only, to make phys_cursor_width contain what its name
16793 suggests.
16794 (notice_overwritten_cursor): Consider the cursor image erased if
16795 the output area intersects the cursor image in y-direction.
16796
16797 2002-04-23 Simon Marshall <simon@gnu.org>
16798
16799 * xfns.c (x_set_mouse_color): Change default for cross_cursor
16800 to XC_hand2.
16801
16802 2002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16803
16804 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
16805
16806 2002-04-22 Kim F. Storm <storm@cua.dk>
16807
16808 * textprop.c (remove_properties): Fixed trap for malformed plist.
16809
16810 2002-04-22 Richard M. Stallman <rms@gnu.org>
16811
16812 * cmds.c (Fend_of_line): Handle intangible text in mid line.
16813
16814 * window.c (make_window): Initialize height_fixed_p,
16815 last_cursor_off_p, and p->cursor_off_p slots.
16816
16817 2002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16818
16819 * fns.c (use-dialog-box): Doc fix.
16820
16821 2002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16822
16823 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
16824 variables `row', `i' and `area'.
16825 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
16826 toolkit library.
16827
16828 2002-04-19 Stefan Monnier <monnier@cs.yale.edu>
16829
16830 * xfaces.c (clear_font_table): Don't free the default font of
16831 a frame even if it's on another display.
16832 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
16833 that could be Qt.
16834
16835 2002-04-19 Juanma Barranquero <lektu@terra.es>
16836
16837 * indent.c (Fmove_to_column): Remove unused local variable
16838 `next_boundary_byte'.
16839 (current_column_1): Likewise.
16840
16841 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
16842
16843 * msdos.c (Qhbar): New variable.
16844 (syms_of_msdos): Intern and staticpro it.
16845 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
16846 cursor type.
16847
16848 2002-04-19 Dave Lambert <dlambert@acm.org>
16849
16850 Theses change implement an underscore-like (`hbar') cursor.
16851
16852 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
16853
16854 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
16855 Handle the `hbar' cursor type.
16856 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
16857
16858 * xfns.c (Qhbar): New variable.
16859 (syms_of_xfns): Intern and staticpro it.
16860 (x_specified_cursor_type): Handle `hbar' cursor.
16861
16862 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
16863 not defined.
16864
16865 2002-04-18 Richard M. Stallman <rms@gnu.org>
16866
16867 * textprop.c (remove_properties): New arg LIST allows scanning
16868 either a list or a plist.
16869 (interval_has_some_properties_list): New function, like
16870 interval_has_some_properties using list instead of plist.
16871 All callers changed.
16872 (Fremove_list_of_text_properties): New function.
16873 (syms_of_textprop): Defsubr it.
16874
16875 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
16876
16877 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
16878
16879 2002-04-17 Juanma Barranquero <lektu@terra.es>
16880
16881 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
16882
16883 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
16884
16885 * window.c (coordinates_in_window): Don't report on margin area
16886 if its width is zero.
16887
16888 2002-04-16 Jason Rumney <jasonr@gnu.org>
16889
16890 * w32fns.c (Fx_file_dialog): Decode file name before using.
16891
16892 * w32term.c (construct_drag_n_drop): Likewise.
16893
16894 2002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
16895
16896 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
16897 store load-history in pure space.
16898
16899 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
16900
16901 2002-04-16 Stefan Monnier <monnier@cs.yale.edu>
16902
16903 * xterm.c (Qlatin_1, Qutf_8): New vars.
16904 (syms_of_xterm): Initialize them.
16905 (XTread_socket): Eliminate incorrect optimization that tried to avoid
16906 decoding the output of X*LookupString.
16907 Always use latin-1 to decode the output of XLookupString.
16908 Try Xutf8LookupString if XmbLookupString failed.
16909
16910 * region-cache.c (new_region_cache): Use BEG.
16911
16912 2002-04-16 Gerd Moellmann <gerd@gnu.org>
16913
16914 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
16915 configuration files.
16916 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
16917 returns 0.
16918
16919 2002-04-15 Andreas Schwab <schwab@suse.de>
16920
16921 * config.in: Regenerated using autoheader.
16922
16923 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
16924 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
16925 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
16926 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
16927 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
16928 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
16929 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
16930 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
16931 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
16932 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
16933 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
16934 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
16935 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
16936 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
16937 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
16938 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
16939 STACK_DIRECTION, now set by autoconf.
16940
16941 2002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16942
16943 * dispnew.c (marginal_area_string): Sort arguments.
16944
16945 * dispextern.h (marginal_area_string): Add prototype.
16946
16947 2002-04-13 Richard M. Stallman <rms@gnu.org>
16948
16949 * fileio.c (Finsert_file_contents):
16950 Don't call temp_output_buffer_setup--do just part, by hand.
16951
16952 * coding.c (run_pre_post_conversion_on_str):
16953 Don't call temp_output_buffer_setup--do just part, by hand.
16954
16955 * keyboard.c (command_loop_1): Don't call start_hourglass
16956 or cancel_hourglass when executing a macro.
16957
16958 * marker.c (count_markers): New function.
16959
16960 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
16961 grow without limit. Move recently used elements to the front.
16962
16963 2002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
16964
16965 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
16966
16967 2002-04-12 Gerd Moellmann <gerd@gnu.org>
16968
16969 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
16970 rows marginal areas.
16971 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
16972 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
16973
16974 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
16975
16976 2002-04-12 Dave Love <fx@gnu.org>
16977
16978 * dispnew.c (marginal_area_string): New.
16979
16980 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
16981 (Qleft_margin, Qright_margin): Declare.
16982 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
16983
16984 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
16985 note_mode_line_highlight and extended.
16986
16987 * keyboard.c (Qleft_margin, Qright_margin): Declare.
16988 (make_lispy_event): Deal with mouse events in margins.
16989
16990 2002-04-12 Stefan Monnier <monnier@cs.yale.edu>
16991
16992 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
16993
16994 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
16995 than deactivating the mark if tmm is set to `lambda'.
16996 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
16997 Use a single event for HELP_EVENT.
16998 (Fexecute_extended_command): Save last_point_position.
16999
17000 2002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17001
17002 * lisp.h (Fpropertize): Add prototype.
17003
17004 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
17005
17006 2002-04-10 Colin Walters <walters@verbum.org>
17007
17008 * config.in: Add HAVE_SHARED_GAME_DIR.
17009
17010 * callproc.c (Vgame_score_directory): New variable.
17011 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
17012
17013 2002-04-10 Richard M. Stallman <rms@gnu.org>
17014
17015 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
17016
17017 2002-04-09 Stefan Monnier <monnier@cs.yale.edu>
17018
17019 * minibuf.c (read_minibuf): Use empty_string.
17020 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
17021 Short-circuit the search as soon as it "failed".
17022 (Fall_completions): Allow lambda forms and lists of strings for alist.
17023 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
17024 when require_match is nil.
17025 (Ftest_completion): Rename from `test_completion' and export to elisp.
17026 Call the predicate also when alist is a list.
17027 Obey Vcompletion_regexp_list.
17028 (do_completion, Fminibuffer_complete_and_exit): Use it.
17029 (Fassoc_string): Rename from `assoc_for_completion'.
17030 Allow list of strings as well and export to elisp.
17031
17032 2002-04-08 Stefan Monnier <monnier@cs.yale.edu>
17033
17034 * puresize.h (BASE_PURESIZE): Increase to 900KB.
17035
17036 2002-04-08 Juanma Barranquero <lektu@terra.es>
17037
17038 * w32.c (sys_accept): Don't hide variable `s'.
17039
17040 2002-04-05 Gerd Moellmann <gerd@gnu.org>
17041
17042 * callint.c (Fcall_interactively): Use INTEGERP instead of
17043 NUMBERP for checking Vhistory_length.
17044
17045 2002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17046
17047 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
17048 Doc fix to reflect it.
17049
17050 2002-04-04 Richard M. Stallman <rms@gnu.org>
17051
17052 * xdisp.c (display_mode_element): New arg RISKY.
17053 Disregard text props found or specified within a variable
17054 that isn't marked risky-local-variable.
17055 (Qrisky_local_variable): New variable.
17056 (syms_of_xdisp): Init and staticpro it.
17057
17058 2002-04-04 Stefan Monnier <monnier@cs.yale.edu>
17059
17060 * undo.c (record_point): New fun.
17061 (record_delete, record_insert): Use it.
17062
17063 2002-04-03 Juanma Barranquero <lektu@terra.es>
17064
17065 * doc.c (Fdocumentation): Add missing parentheses.
17066 (Fdocumentation_property): Likewise.
17067
17068 2002-04-03 Stefan Monnier <monnier@cs.yale.edu>
17069
17070 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
17071 data is 0, just return nil.
17072
17073 2002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
17074
17075 * msdos.c (syms_of_msdos): Fix last change with
17076 mouse_autoselect_window.
17077
17078 2002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17079
17080 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
17081 mouse_autoselect_window.
17082
17083 2002-04-02 Stefan Monnier <monnier@cs.yale.edu>
17084
17085 * keyboard.c (make_lispy_event): Handle unknown keysyms together
17086 with system-specific keysyms. Use it also for unknown function keys.
17087
17088 * doc.c (reread_doc_file): Return whether reload was attempted.
17089 (Fdocumentation, Fdocumentation_property): Don't try to reload
17090 if the doc is 0 and only ask once.
17091
17092 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
17093
17094 2002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
17095
17096 * keyboard.c (read_char): If the event was Qselect_window,
17097 restore timer_idleness_start_time to its previous value.
17098
17099 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
17100
17101 2002-04-01 Stefan Monnier <monnier@cs.yale.edu>
17102
17103 * region-cache.c (new_region_cache): Use BEG.
17104
17105 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
17106 Use BEG and BEG_BYTE.
17107
17108 * doc.c (get_doc_string): Return nil if the location is wrong.
17109 (reread_doc_file): New fun.
17110 (Fdocumentation, Fdocumentation_property):
17111 Call it if get_doc_string fails.
17112 (Fsnarf_documentation): Make it work for a dumped Emacs.
17113
17114 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
17115 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
17116
17117 * charset.c (Fstring): Allow 0 arguments.
17118
17119 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
17120
17121 * process.c (DATAGRAM_CONN_P, list_processes_1)
17122 (Fprocess_datagram_address, Fset_process_datagram_address)
17123 (Fset_network_process_options, server_accept_connection):
17124 Fix some int/Lisp_Object confusions (thank you union types).
17125
17126 2002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17127
17128 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
17129
17130 * w32term.c: Likewise.
17131 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
17132
17133 * keyboard.c (Qselect_window): New symbol.
17134 (head_table): Use it.
17135 (keys_of_keyboard): Bound select-window event to handle-select-window.
17136 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
17137
17138 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
17139 (last_window): New variable.
17140 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
17141 (note_mouse_movement): Remove reimplemented code in #if 0.
17142 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
17143 Emacs windows.
17144
17145 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
17146
17147 2002-03-31 Gerd Moellmann <gerd@gnu.org>
17148
17149 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
17150 Callers changed.
17151
17152 2002-03-30 Richard M. Stallman <rms@gnu.org>
17153
17154 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
17155 loop whenever it stops making progress.
17156
17157 * widget.c (set_frame_size): Don't call change_frame_size.
17158
17159 2002-03-30 Gerd Moellmann <gerd@gnu.org>
17160
17161 * dispnew.c (direct_output_for_insert):
17162 Call mark_window_display_accurate.
17163
17164 2002-03-29 Jason Rumney <jasonr@gnu.org>
17165
17166 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
17167
17168 2002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
17169
17170 * Makefile.in (lread.o): Depend on coding.h.
17171
17172 * lread.c (openp, Fload): Encode the file name before passing it
17173 to `stat', `access', and `emacs_open'.
17174 (openp): GCPRO the encoded file name. Don't recompute Lisp
17175 strings unnecessarily.
17176
17177 2002-03-29 Kim F. Storm <storm@cua.dk>
17178
17179 * fns.c (Flax_plist_put): Doc fix.
17180
17181 2002-03-28 Miles Bader <miles@gnu.org>
17182
17183 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
17184
17185 2002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17186
17187 * process.c (set-network-process-options): Add usage.
17188 (make-network-process): Doc fix.
17189
17190 2002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
17191
17192 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
17193
17194 2002-03-26 Richard M. Stallman <rms@gnu.org>
17195
17196 * fns.c (Fsubstring_no_properties): New function.
17197 (Flax_plist_get, Flax_plist_put): New functions.
17198 (syms_of_fns): defsubr them.
17199
17200 * xdisp.c (update_menu_bar): Test only update_mode_lines;
17201 don't test or alter w->update_mode_line.
17202
17203 * window.c (Fdisplay_buffer): Doc fix.
17204
17205 2002-03-24 Richard M. Stallman <rms@gnu.org>
17206
17207 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
17208
17209 2002-03-24 Gerd Moellmann <gerd@gnu.org>
17210
17211 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
17212 (Fdefmacro): Handle `(declare ...)'.
17213 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
17214 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
17215
17216 2002-03-24 Jason Rumney <jasonr@gnu.org>
17217
17218 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
17219 (xbm_file_p): Add prototypes.
17220 (xbm_format, xbm_image_p): Sync with xfns.c.
17221 (reflect_byte): New function.
17222 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
17223 (xbm_load_image): Create bitmaps with a depth of 1.
17224 (init_xfns): Enable XBM images.
17225
17226 2002-03-23 Jason Rumney <jasonr@gnu.org>
17227
17228 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
17229 correctly. Do not pass up_modifier to keyboard buffer.
17230
17231 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
17232
17233 2002-03-22 Stefan Monnier <monnier@cs.yale.edu>
17234
17235 * Makefile.in (bootstrapclean): New target.
17236 (bootstrap-temacs, bootstrap-doc): Remove.
17237 (bootstrap-emacs): Use a bog-standard `temacs'.
17238 Don't bother to build a DOC file.
17239
17240 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
17241
17242 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
17243 in temacs even if !CANNOT_DUMP.
17244 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
17245
17246 * alloc.c (check_pure_size): Only output a warning.
17247
17248 2002-03-22 Jason Rumney <jasonr@gnu.org>
17249
17250 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
17251 supported.
17252
17253 * w32term.c (zv_bits): Declare as short, for word alignment.
17254 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
17255 (syms_of_w32term): Define x-use-underline-position-properties.
17256
17257 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
17258 (clear_image_cache): Block input, fix logic, clear matrices in
17259 all frames that share this cache.
17260
17261 2002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
17262
17263 * emacs.c (main): Update the Copyright year in the blurb printed
17264 by "emacs --version".
17265
17266 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
17267
17268 * xterm.c (XTread_socket): If XK_ISO_Lock and
17269 XK_ISO_Last_Group_Lock are defined, handle keysyms between
17270 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
17271
17272 2002-03-21 Kim F. Storm <storm@cua.dk>
17273
17274 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
17275 menu-bar bindings in keymap and local-map properties _are_ used.
17276 But try keymap property first in accordance with 2002-01-03 patch.
17277 Added comment describing why this is not always reliable.
17278 (tool_bar_items): Ditto for tool-bar.
17279
17280 2002-03-21 Jason Rumney <jasonr@gnu.org>
17281
17282 * w32fns.c (x_clear_image_1): Disable color table code.
17283
17284 2002-03-21 Kim F. Storm <storm@cua.dk>
17285
17286 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
17287 removed the wrong version of the DEFUN macro; fixed it.
17288
17289 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
17290 Fmember rather than Fmemq).
17291 (Fprovide): Check that subfeatures is a list.
17292
17293 * process.c (QCfeature, QCdatagram): Removed variables.
17294 (QCtype, Qdatagram): New variables.
17295 (network_process_featurep): Removed function.
17296 (Fmake_network_process): Removed :feature check.
17297 Use :type 'datagram instead of :datagram t to create a datagram
17298 socket. This allows us to add other connection types (e.g. raw
17299 sockets) later in a consistent manner.
17300 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
17301 supported subfeatures for feature make-network-process.
17302 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
17303 Intern and staticpro QCtype and Qdatagram.
17304 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
17305
17306 * xfns.c: (QCtype): Remove duplicate declaration and
17307 initialization (is now declared in process.c).
17308
17309 * w32fns.c: (QCtype): Remove duplicate declaration and
17310 initialization (is now declared in process.c).
17311
17312 2002-03-21 Richard M. Stallman <rms@gnu.org>
17313
17314 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
17315 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
17316 when jumping to `fail' to avoid undoing reg changes in the
17317 last iteration of the loop.
17318 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
17319
17320 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
17321 Depend on process.h.
17322
17323 2002-03-20 Jason Rumney <jasonr@gnu.org>
17324
17325 Most of the following changes are still conditional on HAVE_IMAGES
17326 which is not set by default on Windows.
17327
17328 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
17329
17330 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
17331 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
17332 (four_corners_best, x_clear_image_1, x_clear_image)
17333 (x_alloc_image_color, postprocess_image)
17334 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
17335 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
17336 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
17337
17338 * w32gui.h (struct XImage): Define.
17339
17340 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
17341 extract mouse co-ordinates.
17342
17343 2002-03-20 Jason Rumney <jasonr@gnu.org>
17344
17345 * w32.c (init_winsock): Dynamically load new server and UDP
17346 socket functions.
17347 (socket_to_fd): New function.
17348 (sys_socket): Use it.
17349 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
17350 (sys_recvfrom, sys_sendto): New wrapper functions.
17351
17352 * process.c (QCfamily, QCfilter): Remove duplicate declaration
17353 and initialization.
17354
17355 * makefile.w32-in (LIBS): Remove $(WSOCK32).
17356
17357 2002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
17358
17359 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
17360 Don't use "sun" as a variable, it's a predefined constant on Sun
17361 machines.
17362
17363 2002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17364
17365 * bytecode.c (Fbyte_code): Revert last change.
17366
17367 2002-03-19 Kim F. Storm <storm@cua.dk>
17368
17369 * makefile.w32-in (LIBS): Add $(WSOCK32).
17370 From David Ponce <dponce@voila.fr>.
17371
17372 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17373
17374 * process.c (wait_reading_process_input): Move variables `pname'
17375 and `pnamelen' down where they are used.
17376
17377 * bytecode.c (Fbyte_code): Discard unused computed value to
17378 prevent gcc warning.
17379
17380 * lisp.h (Fplist_member): Add prototype.
17381
17382 2002-03-18 Kim F. Storm <storm@cua.dk>
17383
17384 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
17385 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
17386
17387 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
17388 Remove explicit GNU_LINUX settings for datagram support.
17389
17390 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17391
17392 * process.c (Fmake_network_process): Remove unused variable `sa'.
17393 Doc fix. Add usage:.
17394 (set_socket_options): Remove unused variables `optnum' and `opttype'.
17395
17396 2002-03-17 Richard M. Stallman <rms@gnu.org>
17397
17398 * xdisp.c (cursor_type_changed): New variable.
17399 (redisplay_internal): Redisplay all windows if cursor_type_changed.
17400 Clear it when clearing windows_or_buffers_changed.
17401 (try_cursor_movement, redisplay_window, try_window_id)
17402 (try_window_reusing_current_matrix): Test cursor_type_changed
17403 along with windows_or_buffers_changed.
17404
17405 * window.h (cursor_type_changed): New variable.
17406
17407 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
17408 not update_mode_lines, and always set it to 1.
17409
17410 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
17411 if no frames needed redrawing.
17412
17413 2002-03-17 Kim F. Storm <storm@cua.dk>
17414
17415 The following changes add support for network server processes,
17416 datagram connections, and local (unix) sockets.
17417
17418 * process.h (struct Lisp_Process): New member log.
17419 Doc fix: Member command used to indicate stopped network process.
17420 Doc fix: Member childp contains plist for network process.
17421 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
17422
17423 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
17424 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
17425 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
17426 New variables.
17427 (NETCONN1_P): New macro.
17428 (DATAGRAM_SOCKETS): New conditional symbol.
17429 (datagram_address): New array.
17430 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
17431 (status_message): Use concat3.
17432 (Fprocess_status): Add `listen' status to doc string. Return `stop'
17433 for a stopped network process.
17434 (Fset_process_buffer): Update contact plist for network process.
17435 (Fset_process_filter): Ditto. Don't enable input for stopped
17436 network processes. Server must listen, even if filter is t.
17437 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
17438 New functions.
17439 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
17440 (Fprocess_contact): Added KEY argument. Handle datagrams.
17441 (list_processes_1): Optionally show only processes with the query
17442 on exit flag set. Dynamically adjust column widths. Omit tty
17443 column if not needed. Report stopped network processes.
17444 Identify server and datagram network processes.
17445 (Flist_processes): New optional arg `query-only'.
17446 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
17447 (conv_lisp_to_sockaddr, set_socket_options)
17448 (network_process_featurep, unwind_request_sigio): New helper functions.
17449 (Fprocess_datagram_address, Fset_process_datagram_address):
17450 (Fset_network_process_options): New lisp functions.
17451 (Fopen_network_stream): Removed. Now defined in simple.el.
17452 (Fmake_network_process): New lisp function. Code is based on previous
17453 Fopen_network_stream, but heavily reworked with new property list based
17454 argument list, support for datagrams, server processes, and local
17455 sockets in addition to old client-only functionality.
17456 (server_accept_connection): New function.
17457 (wait_reading_process_input): Use it to handle incoming connects.
17458 Do not enable input on a new connection if process is stopped.
17459 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
17460 (send_process): Handle datagram sockets.
17461 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
17462 network process is indicated by setting command field to t .
17463 (Fprocess_send_eof): No-op if datagram connection.
17464 (Fstatus_notify): Don't read input for a stream server socket or a
17465 stopped network process.
17466 (init_process): Initialize datagram_address array.
17467 (syms_of_process): Intern and staticpro new variables, defsubr new
17468 functions.
17469
17470 2002-03-16 Jason Rumney <jasonr@gnu.org>
17471
17472 * w32fns.c (w32_to_all_x_charsets): Return correct type in
17473 startup case.
17474
17475 2002-03-16 Richard M. Stallman <rms@gnu.org>
17476
17477 * xdisp.c (redisplay_internal, redisplay_windows):
17478 Use list_of_error to call internal_condition_case_1.
17479 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
17480 so as to catch all errors with no possibility of debugger redisplay.
17481 (list_of_error): New variable.
17482 (syms_of_xdisp): Init and staticpro it.
17483
17484 * print.c (print_object): Delete `\ ' from printed rep of frame.
17485
17486 2002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
17487
17488 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
17489 until its implementation is fixed.
17490
17491 2002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17492
17493 * xfns.c (png_load): Remove unused variable `gamma_str'.
17494
17495 2002-03-14 Richard M. Stallman <rms@gnu.org>
17496
17497 * xfns.c (x_real_positions): Handle failure in XQueryTree.
17498
17499 2002-03-14 Miles Bader <miles@gnu.org>
17500
17501 * intervals.c (adjust_for_invis_intang): New function.
17502 (set_point_both): Use `adjust_for_invis_intang' to do most of the
17503 work for dealing with invisible+intangible regions. Do so before
17504 and after both forward and backward movements, to handle both
17505 front-sticky and rear-sticky cases.
17506 * textprop.c (text_property_stickiness): Function moved here from
17507 `editfns.c'.
17508 * intervals.h (text_property_stickiness): New declaration.
17509 * editfns.c (char_property_eq): Function removed.
17510 (text_property_stickiness): Function moved to `textprop.c'.
17511
17512 2002-03-13 Jason Rumney <jasonr@gnu.org>
17513
17514 * config.in: Add STRFTIME_NO_POSIX2.
17515
17516 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
17517 and %OX when underlying strftime does not.
17518
17519 2002-03-13 Stefan Monnier <monnier@cs.yale.edu>
17520
17521 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
17522 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
17523 line) to avoid annoying flicker.
17524 (xm_scroll_callback): Get rid of the now unnecessary kludge.
17525 (XTread_socket): Mark it static.
17526
17527 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
17528
17529 2002-03-13 Kim F. Storm <storm@cua.dk>
17530
17531 * puresize.h (BASE_PURESIZE): Increase to 775000.
17532
17533 2002-03-12 Juanma Barranquero <lektu@terra.es>
17534
17535 * editfns.c (syms_of_editfns): Fix typo.
17536
17537 2002-03-12 Gerd Moellmann <gerd@gnu.org>
17538
17539 * xsmfns.c: Include stdio.h because termhooks.h needs it.
17540 Include termopt.h for interrupt_input.
17541
17542 2002-03-11 Andreas Schwab <schwab@suse.de>
17543
17544 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
17545
17546 2002-03-11 Gerd Moellmann <gerd@gnu.org>
17547
17548 * xterm.c (note_mouse_movement): Put code for
17549 x_autoselect_window_p in #if 0.
17550
17551 * lread.c (Fload): Don't assume that message_with_string uses the
17552 string it is given like a C string.
17553
17554 2002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17555
17556 * xterm.h (x_session_check_input, x_session_initialize): Declare.
17557
17558 * xterm.c (XTread_socket): Add call to x_session_check_input and
17559 x_session_have_connection.
17560 (x_initialize): Add call to x_session_initialize.
17561
17562 * termhooks.h (enum event_kind): Add save_session_event.
17563
17564 * keyboard.c: Add Emacs event save_session_event.
17565
17566 * emacs.c (main): Add call to syms_of_xsmfns.
17567
17568 * lisp.h (syms_of_xsmfns): Declare extern.
17569
17570 * config.in: Add HAVE_X_SM.
17571
17572 * Makefile.in (LIBXT): Add -lSM -lICE
17573 if HAVE_X_SM and not USE_X_TOOLKIT.
17574 (XOBJ): New file xsmfns.c added.
17575
17576 * xsmfns.c: New file for X session management.
17577
17578 2002-03-09 Jason Rumney <jasonr@gnu.org>
17579
17580 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
17581 read-only when setting modified time.
17582
17583 2002-03-08 Gerd Moellmann <gerd@gnu.org>
17584
17585 * xdisp.c (move_it_vertically_backward): At the end of the function,
17586 when moving forward by lines, treat terminal frames specially.
17587
17588 * keyboard.c (echo_char): Make sure to add a separator between
17589 keys even if echo_dash hasn't been called.
17590
17591 * xdisp.c: Use new string macros.
17592 (update_echo_area): Pass number of bytes to message3 instead of
17593 number of chars.
17594 (set_message_1): Don't access a string's size_byte directly.
17595 (decode_mode_spec_coding): Use number of bytes of eoltype string
17596 instead number of chars.
17597
17598 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
17599
17600 2002-03-08 Juanma Barranquero <lektu@terra.es>
17601
17602 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
17603 24-bit.
17604
17605 2002-03-06 Jason Rumney <jasonr@gnu.org>
17606
17607 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
17608
17609 2002-03-06 Gerd Moellmann <gerd@gnu.org>
17610
17611 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
17612 (cancel_echoing, echo_length, echo_truncate): Changed to
17613 work with new kboard definition.
17614 (echo_now): Use message3_nolog instead of message2_nolog.
17615
17616 * alloc.c (mark_kboards): Mark echo_string.
17617
17618 * keyboard.h (ECHOBUFSIZE): Removed.
17619 (struct kboard): Member echoptr removed, member echobuf renamed
17620 to echo_string.
17621
17622 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
17623 message3 instead of message2 to display the message using STRING's
17624 text properties.
17625
17626 2002-03-05 Andreas Schwab <schwab@suse.de>
17627
17628 * xdisp.c (hscroll_margin): Change to EMACS_INT.
17629
17630 2002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
17631
17632 * frame.c (default-frame-alist): Explain that setting it doesn't
17633 affect existing frames.
17634
17635 2002-03-05 Stefan Monnier <monnier@cs.yale.edu>
17636
17637 * indent.c (skip_invisible): Fix my brain fart.
17638
17639 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
17640
17641 2002-03-04 Stefan Monnier <monnier@cs.yale.edu>
17642
17643 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
17644 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
17645 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
17646 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
17647 and variables to use EMACS_INT instead of just int.
17648
17649 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
17650
17651 2002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
17652
17653 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
17654 environment, pass it down with corrected value.
17655
17656 2002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17657
17658 * lread.c (read_filtered_event): Do not call start_hourglass
17659 before returning.
17660
17661 2002-03-04 Juanma Barranquero <lektu@terra.es>
17662
17663 * w32term.c (x_display_and_set_cursor): Fix typo.
17664
17665 2002-03-03 Richard M. Stallman <rms@gnu.org>
17666
17667 * fileio.c (Fmake_temp_name): Doc fix.
17668
17669 2002-03-03 Gary Wong <gtw@gnu.org>
17670
17671 * termcap.c [!emacs]: Replace ospeed for building standalone
17672 libtermcap, for binary compatibility.
17673
17674 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
17675
17676 2002-03-03 Richard M. Stallman <rms@gnu.org>
17677
17678 * xrdb.c (file_p): Rename arg `path' to `filename'.
17679
17680 * abbrev.c (Fexpand_abbrev): Increment plist as use count
17681 only if it is an integer.
17682
17683 * xfns.c (png_load): Set screen_gamma based on f->gamma.
17684 If png_get_sRGB gives an answer, call png_set_gamma
17685 using the default image gamma value.
17686
17687 * lread.c (read1): When reading from a file, default string to
17688 multibyte only if it has some multibyte characters.
17689
17690 * print.c (print_object): Output multibyte chars 128...255
17691 using \x even if ! print_escape_multibyte.
17692
17693 * xdisp.c (display_mode_element): Move the places where
17694 bytepos, charpos, this, and lisp_string are set.
17695 Use lisp_string to set bytepos.
17696
17697 * xdisp.c (redisplay_internal):
17698 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
17699
17700 * xdisp.c (display_mode_element): Merge properties specified with
17701 :propertize onto those that come with the string.
17702
17703 2002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
17704
17705 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
17706 automatic-hscrolling. Users changed.
17707 <hscroll-margin>: Renamed from automatic-hscroll-margin.
17708 Users changed.
17709 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
17710
17711 2002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
17712
17713 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
17714
17715 2002-03-02 Kim F. Storm <storm@cua.dk>
17716
17717 * window.c (Fminibuffer_selected_window): New function.
17718 (syms_of_window): Defsubr it.
17719
17720 2002-03-01 Kim F. Storm <storm@cua.dk>
17721
17722 * window.h (struct window): New member phys_cursor_width.
17723
17724 * window.c (make_window, replace_window): Init phys_cursor_width.
17725
17726 * xterm.c (x_display_and_set_cursor): Blink box cursor using
17727 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
17728
17729 * w32term.c (x_display_and_set_cursor): Blink box cursor using
17730 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
17731
17732 * lisp.h (GCPRO6): New macro.
17733
17734 * process.c (Fopen_network_stream): Use GCPRO6.
17735
17736 2002-03-01 Kim F. Storm <storm@cua.dk>
17737
17738 * process.c (Qconnect, Qfailed): New variables.
17739 (syms_of_process): Intern and staticpro them.
17740 (Fprocess_status): Document connect and failed return values.
17741 [NON_BLOCKING_CONNECT]: New conditional.
17742 (connect_wait_mask, num_pending_connects): New variables.
17743 (status_message): Convert Qfailed status.
17744 (Fopen_network_stream): Added support for non-blocking connect.
17745 New optional args: filter, sentinel, non_blocking. Doc updated.
17746 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
17747 (deactivate_process): Handle pending non-blocking connect.
17748 (wait_reading_process_input): Poll for status of non-blocking
17749 connects. Exec sentinel directly when connect succeeds.
17750 (status_notify): Don't read process output if not yet connected.
17751
17752 2002-02-28 Kim F. Storm <storm@cua.dk>
17753
17754 * window.c: (minibuf_selected_window): Renamed from
17755 Vminibuf_selected_window. Users changed.
17756 (syms_of_window): Staticpro it.
17757
17758 2002-02-26 Kim F. Storm <storm@cua.dk>
17759
17760 The following changes add a new Vminibuf_selected_window variable
17761 which is similar to Vminibuf_scroll_window, but which is only set
17762 on entry to the minibuffer (from a non-minibuffer window):
17763
17764 * window.c: (Vminibuf_selected_window): New variable.
17765 (struct save_window_data): New member minibuf_selected_window.
17766 (Fset_window_configuration): Restore Vminibuf_selected_window.
17767 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
17768 Set minibuf_scroll_window member to nil if minibuf_level is 0.
17769 (compare_window_configurations): Compare minibuf_selected_window.
17770
17771 * window.h: (Vminibuf_selected_window): Declare extern.
17772
17773 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
17774 entry to minibuffer or on entry from a non-minibuffer window.
17775
17776 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
17777 Vminibuf_selected_window instead of Vminibuf_scroll_window.
17778
17779 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
17780 instead of Vminibuf_scroll_window when deciding in which window
17781 the region should be highlighted. Consequently, the region remains
17782 highlighteded even when a completion buffer is also displayed.
17783
17784 2002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
17785
17786 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
17787
17788 * xselect.c (Qcompound_text_with_extensions): Renamed from
17789 Qcompound_text_no_extensions.
17790 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
17791
17792 2002-02-26 Juanma Barranquero <lektu@terra.es>
17793
17794 * w32proc.c (syms_of_ntproc): Doc fix.
17795
17796 2002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17797
17798 * intervals.h: Include "dispextern.h" unconditionally.
17799
17800 2002-02-24 Jason Rumney <jasonr@gnu.org>
17801
17802 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
17803 and disp-table.elc.
17804 (lisp): Add emacs-lisp/backquote.elc.
17805
17806 2002-02-24 Kim F. Storm <storm@cua.dk>
17807
17808 * keymap.c (Flookup_key): Fix problem in 2001-12-28 patch:
17809 The validation of the event type was too strict as it didn't
17810 allow string events; buffer names are used in bindings for
17811 menu-bar-select-buffer (see `menu-bar-update-buffers').
17812
17813 2002-02-23 Kim F. Storm <storm@cua.dk>
17814
17815 The following changes rework my patch of 2002-02-06 which
17816 added command remapping by entering the commands directly into
17817 the keymaps. Now, command remapping uses an explicit `remap'
17818 prefix in the keymaps, i.e. [remap COMMAND].
17819
17820 * keymap.c (Qremap, remap_command_vector): New variables.
17821 (is_command_symbol): Remove function.
17822 (Fdefine_key): No longer accept a symbol for KEY.
17823 Added validation of [remap COMMAND] argument for KEY.
17824 The DEF is no longer required to be a symbol when remapping a command.
17825 (Fremap_command): New function to remap command through keymaps.
17826 (Flookup_key): Perform command remapping initiated by
17827 Fremap_command directly for speed.
17828 (Fkey_binding): Use Fremap_command for command remapping.
17829 (where_is_internal): Handle new command remapping representation.
17830 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
17831 staticpro them. Defsubr Fremap_command.
17832
17833 * keymap.h (Fremap_command): Declare extern.
17834 (is_command_symbol): Remove extern.
17835
17836 * keyboard.c (command_loop_1): Use Fremap_command for command
17837 remapping; now try command remapping for all symbols.
17838
17839 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
17840
17841 * coding.h (run_pre_post_conversion_on_str): Add prototype.
17842
17843 2002-02-23 Jason Rumney <jasonr@gnu.org>
17844
17845 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
17846 on the string before encoding it.
17847 (Fw32_get_clipboard_data): Run post-read-conversion on the string
17848 after decoding it.
17849
17850 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
17851
17852 2002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17853
17854 * w32term.c (enter_timestamp): Remove unused static variable to
17855 prevent warning.
17856
17857 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
17858
17859 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
17860
17861 * w16select.c (Fw16_get_clipboard_data): Fix last change.
17862
17863 * xselect.c (selection_data_to_lisp_data): Fix last change.
17864
17865 2002-02-22 Jason Rumney <jasonr@gnu.org>
17866
17867 * w32term.h (struct w32_output): New member menu_command_in_progress.
17868
17869 * w32menu.c (menubar_selection_callback): Free the menu and
17870 clear the menu_command_in_progress flag.
17871
17872 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
17873 (menu_free_timer): New variable.
17874 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
17875 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
17876 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
17877 menu command is in progress.
17878 <WM_COMMAND>: Set the menu_command_in_progress flag.
17879 Kill any menu_free_timer that is running.
17880
17881 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
17882 Call ExtTextOutA rather than ExtTextOut.
17883
17884 2002-02-22 Eli Zaretskii <eliz@gnu.org>
17885
17886 * puresize.h (BASE_PURESIZE): Increase to 755000.
17887
17888 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
17889
17890 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
17891 on the string before encoding it.
17892 (Fw16_get_clipboard_data): Run post-read-conversion on the string
17893 after decoding it.
17894
17895 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
17896
17897 Support for ICCCM Extended Segments in X selections:
17898
17899 * xselect.c <Qcompound_text_no_extensions>: New variable.
17900 (syms_of_xselect): Intern and staticpro it.
17901 (selection_data_to_lisp_data): Run post-read-conversion on decoded
17902 selection text.
17903 (lisp_data_to_selection_data): If next-selection-coding-system is
17904 compound-text-no-extensions, set the type of selection to be
17905 compound-text.
17906
17907 * xterm.h (x_encode_text): Update prototype.
17908
17909 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
17910 callers changed. If SELECTIONP is non-zero, run the
17911 pre-write-conversion function before encoding the selection text.
17912
17913 2002-02-21 Kim F. Storm <storm@cua.dk>
17914
17915 * frame.c (syms_of_frame): Change mouse-highlight default to t.
17916
17917 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
17918 Correct composing of language-change event.
17919
17920 2002-02-20 Kim F. Storm <storm@cua.dk>
17921
17922 * keyboard.c (menu_bar_items): Don't include keymap or local-map
17923 bindings at PT when building menu (the menu is not updated often
17924 enough for this to work reliable).
17925 (tool_bar_items): Likewise.
17926 (current_active_maps): Removed unused (and buggy) function.
17927
17928 2002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17929
17930 * xfns.c (gif_load): Use correct width and height for GIF images.
17931
17932 2002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
17933
17934 * floatfns.c (Fatan): Accept an optional second arg and call
17935 atan2 if passed 2 args.
17936
17937 2002-02-18 Jason Rumney <jasonr@gnu.org>
17938
17939 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
17940
17941 2002-02-17 Jason Rumney <jasonr@gnu.org>
17942
17943 * w32term.c (x_autoselect_window_p): New variable.
17944 (syms_of_w32term): DEFVAR_BOOL and initialize it.
17945 (note_mouse_movement): Use it.
17946
17947 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
17948
17949 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
17950
17951 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
17952 New variables.
17953 (syms_of_w32fns): Intern and staticpro them.
17954 (x_frame_parms) <"fullscreen">: New parameter.
17955 (x_fullscreen_move, x_set_fullscreen): New functions.
17956 (x_set_frame_parameters): Support Qfullscreen.
17957 (x_real_positions): Save x/y_pixels_diff frame params.
17958 (x_figure_window_size): Support full-screen frames.
17959 (Fx_create_frame): Default the fullscreen parameter.
17960
17961 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
17962 (x_fullscreen_adjust): New functions.
17963 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
17964 fullscreen. Call x_check_fullscreen_move, and set the
17965 want_fullscreen member of output_data.w32
17966 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
17967
17968 * w32term.h: New enum for FULLSCREEN_* constants.
17969 (struct w32_output): New members want_fullscreen, x_pixels_diff,
17970 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
17971 (x-fullscreen-adjust): New prototype.
17972
17973 2002-02-17 Kim F. Storm <storm@cua.dk>
17974
17975 * frame.c (Vmouse_highlight): New variable.
17976 (syms_of_frame): DEFVAR_LISP it.
17977
17978 * frame.h (Vmouse_highlight): Declare extern.
17979
17980 * xterm.h (struct x_display_info): Add mouse_face_hidden.
17981
17982 * xterm.c (disable_mouse_highlight): Removed variable.
17983 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
17984 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
17985 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
17986 and on after keyboard input.
17987 (x_term_init): Initialize mouse_face_hidden.
17988
17989 * msdos.h (struct display_info): Add mouse_face_hidden.
17990
17991 * msdos.c (disable_mouse_highlight): Removed variable.
17992 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
17993 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
17994 (internal_terminal_init): Initialize mouse_face_hidden.
17995 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
17996 and on after keyboard input.
17997
17998 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
17999
18000 * w32term.c (disable_mouse_highlight): Removed variable.
18001 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
18002 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
18003 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
18004 and on after keyboard input.
18005 (w32_initialize_display_info): Initialize mouse_face_hidden.
18006
18007 2002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
18008
18009 * msdos.c (last_mouse_window): New variable.
18010 (dos_rawgetc): Fix last change--if the mouse is in the same window
18011 as recorded in last_mouse_window, don't select this window.
18012
18013 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
18014
18015 * msdos.c (x_autoselect_window_p): New variable.
18016 (syms_of_msdos): Defvar it.
18017 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
18018 which the last mouse movement occured, unless it is already selected.
18019
18020 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
18021 New variables.
18022 (syms_of_xdisp): DEVFAR them.
18023 (hscroll_window_tree): Use automatic_hscroll_margin and
18024 Vautomatic_hscroll_step to compute the amount of window scrolling.
18025
18026 2002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18027
18028 * xterm.c (x-autoselect-window): New variable.
18029 (note_mouse_movement): Use it.
18030
18031 * keyboard.c: Do not include "systime.h" twice.
18032
18033 2002-02-15 Andreas Schwab <schwab@suse.de>
18034
18035 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
18036
18037 * alloc.c (NSTATICS): Increase to 1280.
18038
18039 2002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
18040
18041 * alloc.c (NSTATICS): Bump to 1026.
18042
18043 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
18044 (Vx_super_keysym): New variables.
18045 (syms_of_xterm): DEFVAR_LISP them.
18046 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
18047 variables to determine which keys to use for the various modifiers.
18048
18049 2002-02-13 Kim F. Storm <storm@cua.dk>
18050
18051 * window.c: (Vmode_line_in_non_selected_windows): Removed.
18052 (mode_line_in_non_selected_windows): New variable.
18053 (syms_of_window): DEFVAR_BOOL it.
18054
18055 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
18056 Use mode_line_in_non_selected_windows.
18057 (mode_line_in_non_selected_windows): Declare extern.
18058 (Vmode_line_in_non_selected_windows): Removed extern.
18059
18060 2002-02-13 Richard M. Stallman <rms@gnu.org>
18061
18062 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
18063 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
18064 (Fclear_this_command_keys): Doc fixes.
18065
18066 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
18067 (update_face_from_frame_parameter): Increment face_change_count
18068 and windows_or_buffers_changed to force redisplay using changed faces.
18069
18070 * xdisp.c (QCpropertize): New variable.
18071 (mode_line_proptrans_alist): New variable.
18072 (display_mode_element): New arg PROPS; all calls changed.
18073 Implement this, for strings.
18074 Handle literal output of strings by sharing the
18075 main-line code for strings, using local var `literal'.
18076 Handle :propertize feature.
18077 (syms_of_xdisp): Initialze and staticpro QCpropertize and
18078 mode_line_proptrans_alist.
18079
18080 2002-02-11 Kim F. Storm <storm@cua.dk>
18081
18082 * window.c: (Vmode_line_in_non_selected_windows): New variable.
18083 (syms_of_window): DEFVAR_LISP it.
18084
18085 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
18086 (CURRENT_MODE_LINE_FACE_ID): Use it.
18087 (Vmode_line_in_non_selected_windows): Declare extern.
18088
18089 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
18090 to get mode line face.
18091
18092 2002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
18093
18094 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
18095 variables; cus-start.el doesn't need them anymore.
18096
18097 2002-02-09 Kim F. Storm <storm@cua.dk>
18098
18099 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
18100 reduction. This fixes a display problem where stray newlines were
18101 inserted in the window (corrected by C-l). Clarified code (IMHO).
18102
18103 2002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
18104
18105 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
18106
18107 * xdisp.c (display_mode_lines): Fix last change.
18108
18109 2002-02-09 Jason Rumney <jasonr@gnu.org>
18110
18111 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
18112 match each other.
18113 (w32_load_system_font): Prevent Cleartype fonts from loading.
18114 (Fx_show_tip): Ensure tip frames are above other topmost windows.
18115
18116 2002-02-09 Kim F. Storm <storm@cua.dk>
18117
18118 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
18119 (CURRENT_MODE_LINE_HEIGHT): Use it.
18120 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
18121
18122 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
18123 (pos_visible_p, handle_face_prop): Likewise.
18124 (display_mode_lines): Likewise, but for the real selected window.
18125 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
18126
18127 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
18128 in non-selected windows.
18129 (realize_basic_faces): Realize it.
18130 (syms_of_term): Intern and staticpro it.
18131
18132 2002-02-08 Kim F. Storm <storm@cua.dk>
18133
18134 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
18135 Changed mail addresses to emacs-devel@gnu.org.
18136
18137 2002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
18138
18139 * fileio.c (Fsubstitute_in_file_name): If the file name includes
18140 ~user, and there's no such user, don't discard everything before ~user.
18141
18142 * floatfns.c (Fround): Doc fix.
18143
18144 2002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18145
18146 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
18147
18148 2002-02-07 Stefan Monnier <monnier@cs.yale.edu>
18149
18150 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
18151
18152 2002-02-07 Kim F. Storm <storm@cua.dk>
18153
18154 * keymap.c (where_is_internal): Only check whether definition is
18155 remapped if it fulfills is_command_symbol.
18156
18157 2002-02-07 Andreas Schwab <schwab@suse.de>
18158
18159 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
18160
18161 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
18162
18163 2002-02-06 Kim F. Storm <storm@cua.dk>
18164
18165 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
18166 defining command remapping. Doc updated.
18167 (Flookup_key): Remap command through keymap if KEY is a symbol.
18168 (is_command_symbol): New function.
18169 (Fkey_binding): Use it. New optional argument NO-REMAP.
18170 Doc updated. Callers changed. Perform command remapping via
18171 recursive call unless that arg is non-nil.
18172 (where_is_internal): New argument no_remap. Callers changed.
18173 Call recursively to find original key bindings for a remapped
18174 comand unless that arg is non-nil.
18175 (Fwhere_is_internal): New optional argument NO-REMAP.
18176 Doc updated. Callers changed. Pass arg to where_is_internal.
18177
18178 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
18179 (is_command_symbol): Add prototype.
18180
18181 * keyboard.c (Vthis_original_command): New variable.
18182 (syms_of_keyboard): DEFVAR_LISP it.
18183 (command_loop_1): Set it, and perform command remapping.
18184
18185 2002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18186
18187 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
18188
18189 2002-02-06 Jason Rumney <jasonr@gnu.org>
18190
18191 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
18192
18193 2002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
18194
18195 * charset.c (get_charset_id): Use if-else instead of ?:.
18196
18197 2002-02-06 Richard M. Stallman <rms@gnu.org>
18198
18199 * filelock.c (S_ISLNK): Define if not defined.
18200
18201 2002-02-03 Richard M. Stallman <rms@gnu.org>
18202
18203 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
18204
18205 * lread.c (read1): Redesign strategy for force_multibyte and
18206 force_singlebyte. Now is_multibyte records whether read_buffer
18207 is multibyte. Encountering any multibyte character makes it so.
18208
18209 2002-02-02 Stefan Monnier <monnier@cs.yale.edu>
18210
18211 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
18212 with the same sequence, map that sequence to f10 rather than f0.
18213
18214 2002-02-03 Andreas Schwab <schwab@suse.de>
18215
18216 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
18217 latter never being defined on GNU/Linux.
18218
18219 2002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
18220
18221 * xfaces.c (realize_default_face): Don't set the weight and slant of
18222 the default face to Qnormal, unless these attributes are unspecified.
18223
18224 2002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18225
18226 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
18227 Call cancel_hourglass unconditionally.
18228
18229 * eval.c (Fsignal): Remove duplicated declaration of
18230 the variable `display_hourglass_p'.
18231
18232 2002-01-31 Richard M. Stallman <rms@gnu.org>
18233
18234 * editfns.c (region_limit): Nicer error message.
18235
18236 * coding.c (decode_composition_emacs_mule):
18237 Give up if NCOMPONENT gets too large to index `component'.
18238
18239 * callint.c (check_mark): New arg to specify clearer error message.
18240 Callers changed.
18241
18242 2002-01-27 Richard M. Stallman <rms@gnu.org>
18243
18244 * minibuf.c (Fcompleting_read): Doc fix.
18245
18246 2002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18247
18248 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
18249 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
18250 Fix doc-strings.
18251
18252 2002-01-26 Richard M. Stallman <rms@gnu.org>
18253
18254 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
18255
18256 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
18257 and scroll_up_aggressively.
18258
18259 2002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18260
18261 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
18262
18263 2002-01-25 Stefan Monnier <monnier@cs.yale.edu>
18264
18265 * textprop.c (Fnext_property_change, Fnext_single_property_change)
18266 (Fprevious_property_change, Fprevious_single_property_change):
18267 Stay within the narrowed-buffer boundaries.
18268
18269 2002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
18270
18271 * term.c (Ftty_display_color_cells): New function.
18272 (syms_of_term): Defsubr it.
18273 (Ftty_display_color_cells, Ftty_display_color_p): Change the
18274 argument name to DISPLAY. Doc fix.
18275
18276 * dispextern.h: Add prototype for set_tty_color_mode and
18277 tty_setup_colors.
18278
18279 2002-01-24 Jason Rumney <jasonr@gnu.org>
18280
18281 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
18282 If region left to draw is not what was expected, mark the frame as
18283 garbaged.
18284
18285 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
18286 Combine the regions returned by BeginPaint and GetUpdateRect.
18287
18288 2002-01-23 Jason Rumney <jasonr@gnu.org>
18289
18290 * w32term.c (x_update_window_begin): Only hide caret if
18291 w32_use_visible_system_caret is set.
18292 (x_update_window_end): Only show caret if
18293 w32_use_visible_system_caret is set.
18294 (syms_of_w32term): Handle SystemParametersInfo call failing.
18295
18296 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
18297
18298 2002-01-22 Richard M. Stallman <rms@gnu.org>
18299
18300 * unexelf.c (unexec): Define n so as to cause compilation error
18301 for the code where people have often written n instead of nn.
18302
18303 * .gdbinit (hookpost-run): Defined.
18304
18305 2002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
18306
18307 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
18308
18309 2002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
18310
18311 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
18312 if fullscreen is being set.
18313
18314 2002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18315
18316 * minibuf.c (Fminibuffer_contents)
18317 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
18318 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
18319
18320 2002-01-21 Richard M. Stallman <rms@gnu.org>
18321
18322 * window.c (check_frame_size): Fix minimum height calculation.
18323
18324 2002-01-20 Ken Raeburn <raeburn@gnu.org>
18325
18326 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
18327 height before comparison.
18328 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
18329
18330 2002-01-20 Jason Rumney <jasonr@gnu.org>
18331
18332 * w32term.c (w32_system_caret_width): Remove.
18333 (w32_use_visible_system_caret): New user flag.
18334 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
18335 Windows reports a screen reader running.
18336 (x_update_window_begin): Hide the system caret.
18337 (x_update_window_end): Show the system caret.
18338 (x_display_and_set_cursor): Don't draw a cursor when
18339 w32_use_visible_system_caret is set. Do not adjust width.
18340
18341 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
18342 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
18343 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
18344 the user requests it. Use system default width when creating.
18345 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
18346
18347 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
18348 New window messages.
18349
18350 2002-01-20 Richard M. Stallman <rms@gnu.org>
18351
18352 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
18353
18354 2002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18355
18356 * doprnt.c (doprnt1): Fix typos in error call.
18357
18358 2002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
18359
18360 * unexelf.c (unexec) [__sgi]: Support the .got sections.
18361
18362 2002-01-20 Jason Rumney <jasonr@gnu.org>
18363
18364 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
18365 that Windows returns. If a double check fails, try to guess how
18366 ExtTextOut is going to act.
18367
18368 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
18369 in place of stricmp.
18370 (w32_list_synthesized_fonts): Removed.
18371 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
18372 (struct enumfont_t): New element; list.
18373 (enum_font_cb2): List all style and charset variations of a font.
18374 (Fw32_select_font): New optional argument; include_proportional.
18375 Exclude vertical fonts. Exclude proportional fonts unless
18376 include_proportional is non-nil.
18377 (w32_enable_synthesized_fonts): Change to a boolean.
18378 (Fw32_send_sys_command): Doc fix.
18379
18380 2002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18381
18382 * dispnew.c (update_frame): Move the variable `tem' to the block
18383 where it is used.
18384
18385 2002-01-19 Jason Rumney <jasonr@gnu.org>
18386
18387 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
18388 call to face-set-after-frame-default.
18389
18390 2002-01-18 Richard M. Stallman <rms@gnu.org>
18391
18392 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
18393 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
18394
18395 2002-01-17 Richard M. Stallman <rms@gnu.org>
18396
18397 * window.c (enlarge_window): When exceeding size of parent,
18398 directly delete all the siblings instead of trying to resize it.
18399
18400 2002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18401
18402 * term.c (set_tty_color_mode): Remove unused variable `tem'.
18403
18404 2002-01-16 Henrik Enberg <henrik@enberg.org>
18405
18406 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
18407
18408 2002-01-16 Kim F. Storm <storm@cua.dk>
18409
18410 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
18411 is invisible. This can happen if cursor is on top line of a
18412 window, and we switch to a buffer with a header line.
18413
18414 * w32term.c (x_erase_phys_cursor): Ditto.
18415
18416 2002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18417
18418 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
18419 `dont_resize' only when used.
18420
18421 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
18422
18423 2002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
18424
18425 * xdisp.c (display_mode_element): When computing charpos, depend
18426 on multibyteness of elt, not the text in field.
18427
18428 2002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18429
18430 * buffer.c (Fkill_all_local_variables):
18431 Increment `update_mode_lines' only once.
18432
18433 2002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18434
18435 * lisp.h (adjust_after_replace_noundo)
18436 (Fupdate_coding_systems_internal): Add prototypes.
18437
18438 * sound.c (Fplay_sound): Initialize header_size also for :data case.
18439
18440 2002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
18441
18442 Support for the --color command-line argument and tty-color-mode
18443 frame parameter:
18444
18445 * term.c (tty_default_color_capabilities, tty_setup_colors)
18446 (set_tty_color_mode): New functions.
18447 (term_init): Call tty_default_color_capabilities.
18448 (Qtty_color_mode_alist): New variable.
18449 (syms_of_term): Intern and staticpro it.
18450
18451 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
18452 frames.
18453 (do_switch_frame): For termcap frames, switch the tty
18454 color mode as specified by the frame's parameters.
18455 (Qtty_color_mode): New variable.
18456 (syms_of_frame): Intern and staticpro it.
18457
18458 * emacs.c (USAGE2): Add the --color option.
18459 (standard_args): Ditto.
18460
18461 2002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
18462
18463 * xterm.h (struct x_output): New members want_fullscreen,
18464 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
18465 y_pixels_outer_diff.
18466 New enum for FULLSCREEN_* constants.
18467 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
18468 is NULL.
18469 (x_fullscreen_adjust): Add prototype.
18470
18471 * emacs.c (USAGE2): Add the new full-screen arguments.
18472 (standard_args): Ditto.
18473
18474 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
18475 New variables.
18476 (syms_of_xfns): Intern and staticpro them.
18477 (x_frame_parms) <"fullscreen">: New parameter.
18478 (x_fullscreen_move, x_set_fullscreen): New functions.
18479 (x_set_frame_parameters): Support for Qfullscreen.
18480 (x_real_positions): More accurate computation of the frame position.
18481 (x_figure_window_size): Support full-screen frames.
18482 (Fx_create_frame): Default the fullscreen parameter.
18483
18484 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
18485 (XTread_socket) <Expose>: Call x_check_fullscreen.
18486 <ConfigureNotify>: Don't resize to fullscreen.
18487 Call x_check_fullscreen_move, and set the want_fullscreen member of
18488 output_data.x.
18489
18490 2002-01-13 Jason Rumney <jasonr@gnu.org>
18491
18492 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
18493 for mice with more than 3 buttons.
18494
18495 * w32term.c (parse_button): New parameter xbutton. Callers changed.
18496 (w32_read_socket): Handle new "XBUTTON" messages.
18497
18498 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
18499 (syms_of_w32fns): DEFVAR_BOOL it.
18500 (w32_wnd_proc): Handle new "XBUTTON" messages.
18501
18502 2002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18503
18504 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
18505
18506 2002-01-13 Andreas Schwab <schwab@suse.de>
18507
18508 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
18509
18510 2002-01-12 Andreas Schwab <schwab@suse.de>
18511
18512 * .gdbinit (xbuffer): Remove address operator since data is now a
18513 pointer.
18514
18515 2002-01-11 Richard M. Stallman <rms@gnu.org>
18516
18517 * insdel.c (adjust_after_replace_noundo): New function.
18518
18519 * coding.c (code_convert_region): Don't copy old text if undo disabled.
18520
18521 2002-01-09 Jason Rumney <jasonr@gnu.org>
18522
18523 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
18524 when checking for multiple frames.
18525
18526 2002-01-08 Richard M. Stallman <rms@gnu.org>
18527
18528 * window.c (delete_window): Rewrite the code for changing the
18529 selected window to handle the case where WINDOW is not a leaf.
18530
18531 2002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
18532
18533 * process.c (send_process): Set src_multibyte to 1 after the call
18534 top setup_coding_system, not before the call.
18535
18536 2002-01-07 Jason Rumney <jasonr@gnu.org>
18537
18538 * xmenu.c (set_frame_menubar, xmenu_show):
18539 (xdialog_show): Initialize wv->help to Qnil.
18540
18541 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
18542 (w32_dialog_show): Initialize wv->help to Qnil.
18543
18544 2002-01-06 Jason Rumney <jasonr@gnu.org>
18545
18546 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
18547
18548 * w32menu.c (w32_menu_display_help): Revert last change.
18549
18550 * xmenu.c (menu_highlight_callback): Revert last change.
18551
18552 2002-01-06 Andreas Schwab <schwab@suse.de>
18553
18554 * insdel.c (make_gap_larger): Make sure buffer size does not
18555 overflow range of int.
18556
18557 2002-01-05 Jason Rumney <jasonr@gnu.org>
18558
18559 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
18560 OVERLAPS_P.
18561
18562 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
18563
18564 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
18565 to the left or to the right of the pointer, put it against
18566 the left screen edge.
18567 (x_frame_parms): Add missing braces around initializer.
18568
18569 * w32term.c (x_setup_relief_colors): Don't compute an image's
18570 background color if it doesn't have a Pixmap.
18571 (notice_overwritten_cursor): Don't depend on
18572 output_cursor and updated_area. Compare pixel coordinates with
18573 window's cursor pixel coordinates.
18574 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
18575 Call notice_overwritten_cursor with new arg list.
18576 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
18577 unconditionally.
18578 (x_draw_image_relief): Use predefined macro instead of
18579 constant when the value of `tool_bar_button_relief' is negative.
18580
18581 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
18582
18583 2002-01-04 Richard M. Stallman <rms@gnu.org>
18584
18585 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
18586
18587 2002-01-03 Richard M. Stallman <rms@gnu.org>
18588
18589 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
18590 (Fkey_binding): Try the `keymap' property map first.
18591 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
18592 minor mode bindings.
18593
18594 2002-01-03 Kim F. Storm <storm@cua.dk>
18595
18596 * keyboard.c (read_key_sequence): Fix cast of submaps arg to bcopy.
18597
18598 2002-01-02 Richard M. Stallman <rms@gnu.org>
18599
18600 * keyboard.c (read_key_sequence): Handle the keymap property
18601 before minor mode maps.
18602
18603 * editfns.c (Fformat): Update thissize from field_width
18604 based on the actual width, in the string case.
18605
18606 2002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18607
18608 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
18609 when used as truth value to prevent gcc warnings.
18610
18611 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
18612 * w32proc.c: Include <config.h>.
18613
18614 2002-01-01 Andreas Schwab <schwab@suse.de>
18615
18616 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
18617 not EMACS_INT, to make them compatible with DEFVAR_INT.
18618 * lisp.h (max_specpdl_size): Adjust declaration.
18619
18620 2002-01-01 Richard M. Stallman <rms@gnu.org>
18621
18622 * print.c (print_object): Test print_escape_nonascii only for
18623 unibyte strings.
18624 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
18625 when outputting to a multibyte buffer.
18626
18627 2001-12-29 Richard M. Stallman <rms@gnu.org>
18628
18629 * print.c (print_object): In multibyte string, use hex escapes.
18630 Use octal only for unibyte strings.
18631 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
18632
18633 * lread.c (read_escape): New arg BYTEREP for reporting whether
18634 escape forces unibyte or multibyte.
18635 (read1): When reading a string, take note of that info.
18636
18637 2001-12-29 Ken Raeburn <raeburn@gnu.org>
18638
18639 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
18640 comparison to test lisp value returned by Fget.
18641
18642 2001-12-29 Richard M. Stallman <rms@gnu.org>
18643
18644 * lisp.h (max_specpdl_size): Add declaration.
18645
18646 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
18647
18648 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
18649 Handle modifier bits. Correct typo in error message.
18650
18651 2001-12-28 Richard M. Stallman <rms@gnu.org>
18652
18653 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
18654 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
18655 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
18656 Update calls to Fdefine_abbrev.
18657 (write_abbrev): Update for changed data format.
18658 Don't list "system" abbrevs.
18659 (Fexpand_abbrev): Update use count with new data format.
18660 (describe_abbrev): Update for changed data format.
18661 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
18662
18663 * config.in (HAVE_MBSINIT): Add #undef.
18664
18665 * strftime.c (mbsinit): Define as no-op if not available.
18666
18667 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
18668 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
18669
18670 * keymap.c (Flookup_key): Error message if key has wrong data type.
18671 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
18672 (exclude_key): New variable.
18673
18674 2001-12-28 Gerd Moellmann <gerd@gnu.org>
18675
18676 * xterm.c (x_setup_relief_colors): Don't compute an image's
18677 background color if it doesn't have a Pixmap.
18678
18679 * xterm.c (notice_overwritten_cursor): Don't depend on
18680 output_cursor and updated_area. Compare pixel coordinates with
18681 window's cursor pixel coordinates.
18682 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
18683 Call notice_overwritten_cursor with new arg list.
18684 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
18685 unconditionally.
18686
18687 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
18688 height of the cursor line to the amount to scroll.
18689
18690 2001-12-27 Richard M. Stallman <rms@gnu.org>
18691
18692 * intervals.c (set_point_both): The position after an invisible,
18693 intangible character is not an acceptable stopping point.
18694
18695 2001-12-27 Ken Raeburn <raeburn@gnu.org>
18696
18697 * window.c (enlarge_window): In new preserve_before code, convert
18698 CURBEG from lisp object to integer before doing arithmetic.
18699
18700 2001-12-27 Richard M. Stallman <rms@gnu.org>
18701
18702 * bytecode.c (Fbyte_code): Undo previous change.
18703
18704 2001-12-26 Kim F. Storm <storm@cua.dk>
18705
18706 * keyboard.c (record_char): Ignore duplicate help-echo events only
18707 separated by mouse-movement. When tracking mouse, only record
18708 first and last mouse-movement event in same window.
18709 Don't record mouse-movement events in keyboard macros.
18710
18711 2001-12-25 Richard M. Stallman <rms@gnu.org>
18712
18713 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
18714 (Fenlarge_window): New arg PRESERVE_BEFORE.
18715
18716 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
18717 instead of Fstring_as_unibyte.
18718
18719 2001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18720
18721 The following changes remove mocklisp support:
18722
18723 * mocklisp.h, mocklisp.c: Files removed.
18724
18725 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
18726 `Qmocklisp' and `Qmocklisp_arguments'.
18727 Remove prototype of syms_of_mocklisp.
18728
18729 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
18730
18731 * callint.c: Do not include mocklisp.h.
18732 (Fcall_interactively): Do not test for mocklisp case.
18733
18734 * eval.c: Remove variables `Qmocklisp_arguments',
18735 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
18736 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
18737 Do not test for mocklisp case.
18738 (Fwhile): Remove unused variable `tem'.
18739 (syms_of_eval): Remove variable `moclisp-arguments'.
18740
18741 * data.c (wrong_type_argument): Remove mocklisp case.
18742
18743 * doc.c (Fdocumentation): Remove mocklisp case.
18744
18745 * emacs.c (main): Do not call syms_of_mocklisp.
18746
18747 2001-12-21 Richard M. Stallman <rms@gnu.org>
18748
18749 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
18750 to the left or to the right of the pointer, put it against
18751 the left screen edge.
18752
18753 2001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
18754
18755 * Makefile.in (distclean): Remove .gdbinit if we are building
18756 outside the source tree.
18757
18758 2001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
18759
18760 * w32.c (emacs_root_dir): New function.
18761
18762 * msdos.c (emacs_root_dir): New function.
18763
18764 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
18765 of the current drive as the fallback for default_directory.
18766
18767 * dired.c (file_name_completion): Run the elements of
18768 completion-ignored-extensions through ENCODE_FILE.
18769
18770 * lisp.h (scmp): Remove prototype, since it's now a static
18771 function private to dired.c.
18772
18773 2001-12-18 Richard M. Stallman <rms@gnu.org>
18774
18775 * dired.c (scmp): Function moved from minibuf.c.
18776 Delete multibyte handling--used only on encoded strings.
18777
18778 * minibuf.c (scmp): Function moved to dired.c.
18779
18780 * fns.c (merge): Add QUIT call.
18781
18782 2001-12-18 Dave Love <fx@gnu.org>
18783
18784 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
18785 language/georgian.el.
18786
18787 2001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
18788
18789 * Makefile.in (lisp, shortlisp): Synchronize with changes to
18790 lisp/Makefile.in:DONTCOMPILE.
18791
18792 2001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18793
18794 * xdisp.c (window_box_height): Do not return negative values.
18795 From Gerd Moellmann <gerd@gnu.org>.
18796
18797 * keyboard.c (head_table): Add missing braces around initializer.
18798
18799 * term.c (keys): Likewise.
18800
18801 * xfns.c (x_frame_parms, visual_classes): Likewise.
18802
18803 2001-12-17 Sam Steingold <sds@gnu.org>
18804
18805 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
18806 patch (COMPOSING_P, not COMPOSING).
18807
18808 2001-12-17 Richard M. Stallman <rms@gnu.org>
18809
18810 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
18811
18812 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
18813 before calling decode_coding.
18814
18815 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
18816
18817 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
18818 instead of only for COMPOSITION_DISABLED.
18819
18820 2001-12-16 Richard M. Stallman <rms@gnu.org>
18821
18822 * alloc.c (pure_alloc): After overflow, allocate just a small block.
18823
18824 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
18825
18826 * buffer.h (struct buffer): New field `display_error_modiff'.
18827 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
18828
18829 * window.c (Frecenter): Clear display_error_modiff field.
18830
18831 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
18832 Call redisplay_window, but not if display_error_modiff field says no.
18833 (redisplay_window_error): New function.
18834 (displayed_buffer): New variable.
18835 (redisplay_internal, redisplay_windows): Call the new functions
18836 instead of redisplay_window directly.
18837
18838 2001-12-15 Richard M. Stallman <rms@gnu.org>
18839
18840 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
18841
18842 2001-12-14 Andrew Innes <andrewi@gnu.org>
18843
18844 * makefile.w32-in (EMACSLOADPATH): Define.
18845 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
18846 (bootstrap-temacs): Remove dependency on bootstrap-clean.
18847
18848 2001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
18849
18850 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
18851 parameter have a numeric value all the time.
18852
18853 * w32fns.c (x_report_frame_params): Likewise.
18854
18855 2001-12-12 Richard M. Stallman <rms@gnu.org>
18856
18857 * fileio.c (Fwrite_region): Doc fix.
18858
18859 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
18860 (redisplay_internal): Call clear_image_cache only for window terminals.
18861
18862 2001-12-12 Gerd Moellmann <gerd@gnu.org>
18863
18864 * xdisp.c (move_it_vertically_backward): Change heuristic
18865 for the case that we didn't move far enough initially.
18866
18867 * window.c (Frecenter): Simplify computation in the case of window
18868 system frames and ARG < 0; use window_box_height.
18869
18870 2001-12-11 Richard M. Stallman <rms@gnu.org>
18871
18872 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
18873 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
18874
18875 2001-12-11 Andrew Innes <andrewi@gnu.org>
18876
18877 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
18878 arg is negative.
18879
18880 2001-12-11 Richard M. Stallman <rms@gnu.org>
18881
18882 * m/hp800.h: Split the __hpux conditional into the parts
18883 that are right for GNU/Linux too and the parts that are not.
18884 Use the former if GNU_LINUX.
18885 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
18886
18887 * s/gnu-linux.h (GNU_LINUX): Defined.
18888
18889 2001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18890
18891 * macros.c, msdos.c, w16select.c: Change doc-string comments to
18892 `new style' [w/`doc:' keyword].
18893
18894 2001-12-10 Jason Rumney <jasonr@gnu.org>
18895
18896 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
18897 before using.
18898
18899 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18900
18901 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
18902 keyword].
18903
18904 2001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
18905
18906 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
18907
18908 * s/hpux10.h (srand48): Don't undefine.
18909
18910 2001-12-09 Jason Rumney <jasonr@gnu.org>
18911
18912 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
18913 Add comment to explain where the struct came from.
18914 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
18915 (add_menu_item): Process pop-up menus first to avoid memory leak.
18916 (add_menu_item, w32_menu_display_help): Use `help' field as
18917 Lisp_Object.
18918 (w32_free_submenu_strings): Only free owner-drawn strings.
18919
18920 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18921
18922 * COPYING: Moved back.
18923
18924 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
18925 Add parentheses around && within ||.
18926
18927 * indent.c (compute_motion): Likewise.
18928
18929 * intervals.c (merge_properties_sticky): Likewise.
18930
18931 * coding.c (setup_coding_system, shrink_encoding_region)
18932 (Fdecode_sjis_char): Likewise.
18933
18934 2001-12-07 Andreas Schwab <schwab@suse.de>
18935
18936 * xdisp.c (display_mode_element): Don't read past end of string if
18937 it ends with '%'.
18938
18939 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
18940 can hold.
18941
18942 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
18943 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
18944 type changed to Lisp_Object.
18945 (syms_of_data): DEFVAR_LISP them.
18946
18947 2001-12-07 Richard M. Stallman <rms@gnu.org>
18948
18949 * callproc.c (init_callproc): Set Vdata_directory based on the source
18950 location whenever Emacs was run uninstalled.
18951
18952 2001-12-06 Paul Eggert <eggert@twinsun.com>
18953
18954 * config.in (HAVE_WORKING_VFORK): New #undefs.
18955 * process.c (create_process):
18956 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
18957 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
18958 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
18959 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
18960 * m/intel386.h (HAVE_VFORK): Likewise.
18961 * m/mips-siemens.h (HAVE_VFORK): Likewise.
18962 * m/mips.h (HAVE_VFORK): Likewise.
18963 * s/freebsd.h (vfork): Remove #define.
18964 * s/lynxos.h (HAVE_VFORK): Remove #undef.
18965 * s/usg5-4-2.h: Fix comment about vfork.
18966
18967 2001-12-06 Richard M. Stallman <rms@gnu.org>
18968
18969 * s/hpux10.h (random): Add undef.
18970 (HAVE_RANDOM): Define it just once.
18971
18972 2001-12-06 Stefan Monnier <monnier@cs.yale.edu>
18973
18974 * eval.c: Undo last change: the standard syntax is not wanted.
18975
18976 2001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
18977
18978 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
18979 scroll bars of the frame before deleting the frame itself. If the
18980 frame has a widget, delete the frame with XtDestroyWidget, and do
18981 not call XDestroyWindow before that.
18982
18983 2001-12-06 Kim F. Storm <storm@cua.dk>
18984
18985 * xfns.c (x_report_frame_params): Return actual fringe widths.
18986
18987 * w32fns.c (x_report_frame_params): Return actual fringe widths.
18988
18989 2001-12-05 Andrew Innes <andrewi@gnu.org>
18990
18991 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
18992 excessively large.
18993
18994 * insdel.c (make_gap_larger): New function.
18995 (make_gap_smaller): New function.
18996 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
18997 Call make_gap_smaller if arg is negative.
18998
18999 2001-12-04 Stefan Monnier <monnier@cs.yale.edu>
19000
19001 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
19002 Pass a dummy argument when calling interrupt_signal.
19003 (parse_menu_item): Mark disabled items before checking for empty def.
19004 (read_char_minibuf_menu_prompt): Make safety more visible.
19005 (read_key_sequence): Add a `first_unbound' variable.
19006 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
19007 unbound prefix as soon as we can detect it.
19008
19009 * doc.c (Fsnarf_documentation): Add prototype.
19010 (get_doc_string): Handle negative arguments.
19011 (Fdocumentation): Use AREF and ASIZE.
19012 Move the calls to get_doc_string to a single place.
19013 Don't confuse an interactive-spec for a docstring reference.
19014 (Fdocumentation_property): Take advantage of the fact that
19015 get_doc_string now ignores the sign of the docstring position.
19016
19017 * eval.c: Use standard syntax for usage in docstrings.
19018
19019 2001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19020
19021 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
19022
19023 2001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19024
19025 * xterm.c (x_draw_image_relief): Use predefined macro instead of
19026 constant when the value of `tool_bar_button_relief' is negative.
19027
19028 2001-12-02 Richard M. Stallman <rms@gnu.org>
19029
19030 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
19031 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
19032
19033 * fileio.c (read_non_regular): Delete Fsignal call.
19034
19035 2001-12-01 Stefan Monnier <monnier@cs.yale.edu>
19036
19037 * lisp.h (run_hook_list_with_args): Undo last change.
19038
19039 2001-12-01 Gerd Moellmann <gerd@gnu.org>
19040
19041 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
19042
19043 2001-12-01 Jason Rumney <jasonr@gnu.org>
19044
19045 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
19046
19047 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
19048 [!WM_MOUSELEAVE]: Define.
19049
19050 * w32menu.c (current_popup_menu, get_menu_item_info):
19051 (set_menu_item_info): New vars.
19052 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
19053 (w32_menu_show): Set current_popup_menu.
19054 (add_menu_item): Allocate new strings for owner-drawn menu items
19055 and help strings.
19056 Use owner-draw for disabled menu items again.
19057 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
19058 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
19059
19060 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
19061 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
19062 <WM_EXITMENULOOP>: Free menu strings.
19063 <WM_MOUSELEAVE>: Stop tracking mouse.
19064 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
19065
19066 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
19067 and mouse face.
19068
19069 2001-12-01 Kim F. Storm <storm@cua.dk>
19070
19071 The following changes add left-fringe and right-fringe
19072 frame parameters to adjust fringe widths, or remove one or
19073 both fringes.
19074
19075 * frame.h (struct frame): Remove trunc_area_pixel_width and
19076 trunc_area_cols fields.
19077 (Qleft_fringe, Qright_fringe): Declare.
19078 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
19079
19080 * frame.c (Qleft_fringe, Qright_fringe): New vars.
19081 (syms_of_frame): Initialize them.
19082
19083 * window.c (coordinates_in_window): Handle separate left and right
19084 fringe widths.
19085
19086 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
19087 and fringe_cols fields.
19088 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
19089 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
19090 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
19091 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
19092 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
19093 (x_compute_fringe_widths): Add prototype.
19094
19095 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
19096 fill fringe evenly with small dashes.
19097 (x_draw_fringe_bitmap): Clear background if necessary. Align and
19098 clip the new ZV bitmap to avoid jitter between rows.
19099 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
19100 background. Don't draw fringe bitmaps if fringe width is zero.
19101 (x_compute_fringe_widths): New function.
19102 (x_new_font, x_set_window_size_1): Use it.
19103
19104 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
19105 (x_set_frame_parameters): Process `font' parameter before other
19106 parameters as fringe widths depend on it.
19107 (x_set_fringe_width): New function.
19108 (x_figure_window_size): Use x_compute_fringe_widths.
19109 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
19110 parameters.
19111
19112 * widget.c (set_frame_size): Use x_compute_fringe_widths.
19113 (EmacsFrameSetCharSize): Ditto.
19114
19115 * w32term.h: Merged changes from xterm.h.
19116 * w32term.c: Merged changes from xterm.c.
19117 * w32fns.c: Merged changes from xfns.c.
19118
19119 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19120
19121 * COPYING: Removed.
19122
19123 2001-11-29 Dave Love <fx@gnu.org>
19124
19125 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
19126 extra extra slot.
19127 (detect_coding_mask): Fix call of detect_coding_iso2022.
19128
19129 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19130
19131 * fileio.c (file-name-coding-system)
19132 (default-file-name-coding-system): Doc fix (links to referenced
19133 variables added).
19134
19135 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
19136
19137 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
19138 Add dummy uses of gcproN variables.
19139
19140 * category.c (describe_category, describe_category_1)
19141 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
19142 (syms_of_category): Don't defsubr Sdescribe_categories.
19143
19144 2001-11-28 Richard M. Stallman <rms@gnu.org>
19145
19146 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
19147
19148 * Makefile.in (lispdir): New variable, referring to build dir.
19149 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
19150
19151 2001-11-28 Andrew Innes <andrewi@gnu.org>
19152
19153 * w32menu.c (w32_menu_display_help): Actually add the new argument
19154 OWNER.
19155
19156 2001-11-28 Jason Rumney <jasonr@gnu.org>
19157
19158 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
19159 menu items. From David Ponce <dponce@wanadoo.fr>.
19160 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
19161 conditionally.
19162 (w32_menu_display_help): New argument OWNER. Rewritten to store a
19163 help event in the owner frame's keyboard buffer.
19164
19165 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
19166 (Fx_show_tip): Don't subtract last width from row width.
19167
19168 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
19169 (w32_read_socket): Use EQ to compare frames.
19170
19171 2001-11-28 Gerd Moellmann <gerd@gnu.org>
19172
19173 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
19174 OVERLAPS_P.
19175
19176 2001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19177
19178 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
19179 `gcpro3' and `gcpro4'.
19180
19181 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
19182
19183 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
19184
19185 * ccl.c: Use AREF and ASIZE.
19186
19187 2001-11-27 Stefan Monnier <monnier@cs.yale.edu>
19188
19189 * lisp.h (run_hook_list_with_args): Remove.
19190 (LIST_END_P): Fix call to wrong_type_argument.
19191 (make_fixnum_or_float): Use EMACS_INT rather than int.
19192
19193 2001-11-26 Stefan Monnier <monnier@cs.yale.edu>
19194
19195 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
19196 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
19197
19198 * eval.c: Use AREF and ASIZE.
19199 (Ffetch_bytecode): Add the file name to the error message.
19200
19201 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
19202 which match the end of the file-name.
19203 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
19204 is not a valid env var, but leave it as is instead.
19205
19206 * keymap.c (access_keymap): Handle t bindings like nil bindings.
19207 Make nil bindings in char-tables transparent.
19208 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
19209
19210 2001-11-26 Richard M. Stallman <rms@gnu.org>
19211
19212 * textprop.c (set_text_properties_1): Allow START, END in either order.
19213 Do nothing if range is empty.
19214
19215 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
19216
19217 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
19218 (clean): Not here.
19219
19220 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
19221
19222 * textprop.c (set_text_properties_1): Clearly mark that the
19223 interval should not be empty.
19224
19225 * intervals.c (graft_intervals_into_buffer):
19226 Don't call set_text_properties_1 on an empty interval.
19227
19228 2001-11-25 Richard M. Stallman <rms@gnu.org>
19229
19230 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
19231
19232 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
19233 don't lose the data in it.
19234
19235 2001-11-25 Juanma Barranquero <lektu@terra.es>
19236
19237 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
19238
19239 * buffer.c (Fkill_buffer): Likewise.
19240
19241 * print.c (temp_output_buffer_setup): Likewise.
19242
19243 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
19244
19245 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
19246
19247 2001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
19248
19249 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
19250 Niemitalo <kon@iki.fi>.
19251
19252 2001-11-25 Jason Rumney <jasonr@gnu.org>
19253
19254 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
19255
19256 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
19257 (Fx_show_tip): Block input during frame creation.
19258 (Fx_show_tip, Fx_hide_tip): Enable.
19259
19260 2001-11-24 Richard M. Stallman <rms@gnu.org>
19261
19262 * lread.c (Fload): Detect recursive load error for more than 3
19263 nestings of the same file.
19264 (Vrecursive_load_depth_limit): Variable deleted.
19265 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
19266
19267 2001-11-24 Jason Rumney <jasonr@gnu.org>
19268
19269 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
19270 mouse position if either left or top is not specified.
19271
19272 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
19273 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
19274 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
19275 (my_create_tip_window): Assign tip_window.
19276 (x_create_tip_frame): Use same defaults as X.
19277 (compute_tip_xy): Remove unused variable. Use full screen width.
19278 (Fx_show_tip): Do not double height. Call ShowWindow directly.
19279
19280 * w32term.c (x_after_update_window_line): Doc fix.
19281 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
19282 frames.
19283 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
19284
19285 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
19286 for all Windowed systems.
19287
19288 2001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
19289
19290 * msdos.c (IT_clear_screen): If the frame's faces are not yet
19291 realized, use the initial screen colors to clear the screen.
19292
19293 2001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19294
19295 * textprop.c (Fset_text_properties): Remove unused variables
19296 `unchanged', `prev_changed', `s' and `len'.
19297
19298 * search.c (Freplace_match): Remove unused variable `inslen'.
19299
19300 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
19301
19302 2001-11-22 Jason Rumney <jasonr@gnu.org>
19303
19304 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
19305 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
19306 (my_create_tip_window): New function.
19307 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
19308 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
19309
19310 2001-11-20 Jason Rumney <jasonr@gnu.org>
19311
19312 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
19313 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
19314
19315 * w32fns.c (Vw32_system_coding_system): Remove.
19316 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
19317
19318 2001-11-19 Stefan Monnier <monnier@cs.yale.edu>
19319
19320 * fileio.c (Fwrite_region): Move choose_write_coding_system to
19321 after build_annotations.
19322
19323 * syntax.c (describe_syntax): Add dummy arg.
19324 (describe_syntax_1): Update call to describe_vector.
19325
19326 * category.c (describe_category): Add dummy arg.
19327 (describe_category_1): Update call to describe_vector.
19328
19329 * keymap.c (Fdescribe_vector): Add `describer' parameter.
19330 (describe_command, describe_translation): Add dummy second param.
19331 (describe_map): Call elt_describer with two arguments.
19332 (describe_vector_princ): Add `fun' parameter.
19333 Call it instead of the hardcoded `princ'.
19334 (describe_vector): Add arg `args'.
19335 Pass it as a new second argument to elt_describer.
19336
19337 * keymap.h (describe_vector): Update prototype.
19338
19339 * frame.c: Don't include keymap.h any more.
19340 (keys_of_frame): Remove.
19341
19342 * lisp.h (keys_of_frame): Remove declaration.
19343
19344 * emacs.c (main): Don't call `keys_of_frame' any more.
19345
19346 2001-11-14 Andreas Schwab <schwab@suse.de>
19347
19348 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
19349 if defined, 0 otherwise.
19350 (MAP_FAILED): Define if not defined and use it to test mmap failure.
19351 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
19352
19353 2001-11-19 Richard M. Stallman <rms@gnu.org>
19354
19355 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
19356
19357 2001-11-18 Jason Rumney <jasonr@gnu.org>
19358
19359 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
19360 (x_draw_bar_cursor): If the background color of the glyph under
19361 the cursor equals the frame's cursor color, use the glyph's
19362 foreground color for drawing the bar cursor.
19363 (x_after_update_window_line): Clear internal border in different
19364 circumstances.
19365 (w32_set_vertical_scroll_bar): Check for width and height > 0.
19366 (w32_draw_relief_rect): Correct relief by 1 pixel.
19367 (x_set_glyph_string_background_width):
19368 Set extends_to_end_of_line_p if the row's fill_line_p is set and
19369 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
19370 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
19371 if cursor_in_non_selected_windows is false.
19372 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
19373 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
19374 Notice if cursor gets overwritten.
19375 (notice_overwritten_cursor): Renamed from
19376 note_overwritten_text_cursor. Rewritten to take glyph widths
19377 into account, and to take X positions as parameters.
19378 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
19379 around call to x_draw_glyphs.
19380 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
19381 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
19382 color to use for image glyph reliefs.
19383 (x_draw_image_relief): Accept zero tool_bar_button_relief.
19384 (glyph_rect): Remove unused variable `area'.
19385
19386 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
19387 some items.
19388 (x_set_internal_border_width): Set frame garbaged when window
19389 doesn't exist yet.
19390 (Fx_create_frame): Accept zero tool_bar_button_relief.
19391 (x_clear_image_1, four_corners_best, image_background)
19392 (image_background_transparent): New functions.
19393 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
19394 (gs_format): Add `:background' entry.
19395 (lookup_image): Set IMG's background color if specified.
19396 (pbm_load, xbm_load_image, png_load): Set IMG's background field
19397 when appropriate.
19398 (x_clear_image_1): Reset `background_valid' and
19399 `background_transparent_valid' fields.
19400 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
19401 calculating it here. Set IMG's background_transparent field.
19402 (enum xpm_keyword_index): Add XPM_BACKGROUND.
19403 (enum png_keyword_index): Add PNG_BACKGROUND.
19404 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
19405 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
19406 (enum gif_keyword_index): Add GIF_BACKGROUND.
19407 (enum gs_keyword_index): Add GS_BACKGROUND.
19408 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
19409 Pre-calculate image background color where necessary.
19410 (x_create_x_image_and_pixmap, xbm_load, gs_load):
19411 Use display info's n_cbits entry for screen depth.
19412 (Fx_show_tip): Remove unused variables `buffer', `top',
19413 `left', `max_width' and `max_height'.
19414
19415 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
19416
19417 2001-11-18 Gerd Moellmann <gerd@gnu.org>
19418
19419 * puresize.h (BASE_PURESIZE): Increase to 750000.
19420
19421 2001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19422
19423 * frame.c (Fframe_live_p): Doc fix.
19424
19425 2001-11-18 Richard M. Stallman <rms@gnu.org>
19426
19427 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
19428 (message_dolog_marker3): New static variables hold three markers.
19429 (syms_of_xdisp): Initialize and staticpro them.
19430 (message_dolog): Use message_dolog_marker1..3 instead of
19431 allocating markers each time. Unchain them when done.
19432
19433 2001-11-17 Richard M. Stallman <rms@gnu.org>
19434
19435 * doc.c (Fsnarf_documentation): Doc fix.
19436
19437 2001-11-17 Andreas Schwab <schwab@suse.de>
19438
19439 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
19440
19441 2001-11-17 Richard M. Stallman <rms@gnu.org>
19442
19443 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
19444
19445 2001-11-17 Jason Rumney <jasonr@gnu.org>
19446
19447 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
19448
19449 2001-11-17 Gerd Moellmann <gerd@gnu.org>
19450
19451 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
19452 with invalid position.
19453
19454 2001-11-16 Richard M. Stallman <rms@gnu.org>
19455
19456 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
19457
19458 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
19459 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
19460 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
19461
19462 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
19463
19464 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
19465
19466 * fileio.c (build_annotations): Split off the tail.
19467 (build_annotations_2): New fun. Extracted from build_annotations.
19468 (Fwrite_region): Split the call to build_annotations into two
19469 calls to build_annotations and build_annotations_2.
19470
19471 2001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19472
19473 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
19474 clear_waiting_for_input with argument.
19475
19476 * xterm.h (x_update_cursor): Remove duplicated prototype.
19477
19478 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
19479
19480 * xterm.c (waiting_for_input): Remove unnecessary declaration.
19481
19482 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
19483
19484 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
19485
19486 * fileio.c (choose_write_coding_system): New fun, extracted
19487 from Fwrite_region.
19488 (Fwrite_region): Use it.
19489
19490 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
19491 (funcall_lambda, run_hook_with_args): Make static and add prototype.
19492 (ml_apply, find_handler_clause): Add prototype.
19493
19494 2001-11-16 Eli Zaretskii <eliz@gnu.org>
19495
19496 * config.in: Add #undef HAVE_COFF_H.
19497
19498 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
19499 Required for ISC 4.1.
19500
19501 2001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
19502
19503 * syswait.h (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
19504 Andrew Wiseman <a.wiseman@btclick.com>.
19505
19506 2001-11-16 Kim F. Storm <storm@cua.dk>
19507
19508 The following changes are made to clean up the various internal
19509 references to the fringes to actually use the term `fringe' for
19510 them. Previously, they were called `flags areas', `bitmap areas',
19511 `left/right side of windows', or implicitly as `flags' or
19512 `bitmaps':
19513
19514 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
19515 Comments fixed. Use renamed symbols.
19516
19517 * dispnew.c: Comment fix. Use renamed symbols.
19518
19519 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
19520 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
19521 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
19522
19523 * msdos.c: Comment fix.
19524
19525 * w32fns.c: Use renamed symbols.
19526
19527 * w32term.c: Comment fixes. Use renamed symbols.
19528 (fringe_bitmap_type): Renamed from bitmap_type.
19529 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
19530 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
19531 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
19532
19533 * w32term.h: Comment fixes. Use renamed symbols.
19534 (fringes_extra): Renamed from flags_areas_extra.
19535 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
19536 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
19537 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
19538 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
19539 (FRAME_X_LEFT_FRINGE_WIDTH):
19540 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
19541 (FRAME_X_RIGHT_FRINGE_WIDTH):
19542 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
19543
19544 * widget.c: Use renamed symbols.
19545
19546 * window.c: Comment fixes. Use renamed symbols.
19547 (coordinates-in-window-p): Doc fix.
19548
19549 * xdisp.c: Comment fixes. Use renamed symbols.
19550
19551 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
19552
19553 * xfns.c: Use renamed symbols.
19554
19555 * xterm.c: Comment fixes. Use renamed symbols.
19556 (fringe_bitmap_type): Renamed from bitmap_type.
19557 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
19558 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
19559 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
19560
19561 * xterm.h: Comment fixes. Use renamed symbols.
19562 (fringes_extra): Renamed from flags_areas_extra.
19563 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
19564 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
19565 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
19566 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
19567 (FRAME_X_LEFT_FRINGE_WIDTH):
19568 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
19569 (FRAME_X_RIGHT_FRINGE_WIDTH):
19570 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
19571
19572 2001-11-15 Jason Rumney <jasonr@gnu.org>
19573
19574 * w32menu.c (add-menu-item): Make help_echo and radio buttons
19575 work for most menu items. From David Ponce
19576 <david.ponce@wanadoo.fr>.
19577
19578 2001-11-15 Gerd Moellmann <gerd@gnu.org>
19579
19580 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
19581 Some x_set_* function expect to be called even if old and new
19582 value are equal.
19583
19584 * xdisp.c (build_desired_tool_bar_string): Accept zero
19585 tool_bar_button_relief.
19586
19587 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
19588
19589 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
19590
19591 * xterm.c (x_draw_bar_cursor): If the background color of the
19592 glyph under the cursor equals the frame's cursor color, use
19593 the glyph's foreground color for drawing the bar cursor.
19594
19595 * dispnew.c (direct_output_forward_char): Fix character/byte
19596 position comparison.
19597
19598 2001-11-15 Miles Bader <miles@gnu.org>
19599
19600 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
19601 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
19602 Update arguments to find_field.
19603 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
19604 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
19605 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
19606 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
19607
19608 2001-11-14 Richard M. Stallman <rms@gnu.org>
19609
19610 * editfns.c (Fpropertize): Allow call with 1 arg.
19611
19612 * dispextern.h (image_background, image_background_transparent):
19613 Conditionalize on HAVE_X_WINDOWS.
19614
19615 2001-11-13 Richard M. Stallman <rms@gnu.org>
19616
19617 * print.c (Fprin1_to_string): Doc fix.
19618
19619 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
19620
19621 * floatfns.c (Fceiling, Ffloor): Doc fixes.
19622
19623 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
19624
19625 * fileio.c (Ffile_accessible_directory_p): Doc fix.
19626
19627 * eval.c (syms_of_eval): Doc fix.
19628
19629 * coding.c (syms_of_coding): Doc fix.
19630
19631 * doc.c (Fsnarf_documentation): Doc fix.
19632
19633 * dispnew.c (syms_of_display): Doc fix.
19634
19635 * category.c (Fget_unused_category): Doc fix.
19636
19637 * buffer.c (syms_of_buffer): Doc fixes.
19638
19639 2001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
19640
19641 * print.c (prin1, print): Doc fix.
19642
19643 2001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19644
19645 * fontset.h: Remove declarations of variables
19646 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
19647
19648 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
19649 `Vclip_large_size_font'.
19650
19651 2001-11-13 Jason Rumney <jasonr@gnu.org>
19652
19653 * w32fns.c: Doc fix.
19654
19655 2001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19656
19657 * xfaces.c (Fface_attributes_as_vector): Doc fix.
19658
19659 * fns.c: Doc fix.
19660
19661 * emacs.c: Doc fix.
19662
19663 * coding.c: Doc fix.
19664
19665 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
19666 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
19667 `new style' [w/`doc:' keyword].
19668
19669 2001-11-12 Richard M. Stallman <rms@gnu.org>
19670
19671 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
19672 LeaveNotify events. Only FocusIn and FocusOut do that now.
19673 (x_display_and_set_cursor): Do display hollow cursors in active
19674 minibuffer windows when they are not selected.
19675
19676 2001-11-12 Jason Rumney <jasonr@gnu.org>
19677
19678 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
19679 * w32term.c: Change doc-string comments to `new style'
19680 [w/`doc:' keyword]. Doc fixes.
19681
19682 * w32fns.c: Don't define max.
19683 (Fx_open_connection): Only execute once.
19684
19685 2001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19686
19687 * ccl.c: Change macros to use do-while block instead of if-else.
19688 Use braces to follow GNU Coding Standards.
19689
19690 2001-11-11 Richard M. Stallman <rms@gnu.org>
19691
19692 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
19693
19694 * lread.c (read_escape): Use end_of_file_error for reporting eof.
19695
19696 * insdel.c (replace_range): Use adjust_markers_for_replace
19697 instead of adjust_markers_for_delete and adjust_markers_for_insert.
19698
19699 * intervals.h (set_text_properties, set_text_properties_1): Declare.
19700
19701 * textprop.c (set_text_properties_1): New subroutine
19702 broken out of set_text_properties.
19703 (set_text_properties): Use set_text_properties_1.
19704
19705 * intervals.c (graft_intervals_into_buffer):
19706 Use set_text_properties_1 to clear out properties.
19707
19708 * search.c (Freplace_match): Use replace_range to insert
19709 and delete. Don't request property inheritance from
19710 surrounding text.
19711
19712 2001-11-10 Jason Rumney <jasonr@gnu.org>
19713
19714 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
19715 vertical fonts. Allow them if face name is explicitly specified.
19716 Do not give up if we find a font that cannot be converted to an xlfd.
19717
19718 2001-11-10 Gerd Moellmann <gerd@gnu.org>
19719
19720 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
19721 instead of malloc/free.
19722
19723 2001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19724
19725 * xfaces.c (merge_face_vectors): Use braces to follow GNU
19726 Coding Standards.
19727 (Finternal_set_lisp_face_attribute): Likewise.
19728
19729 * buffer.c (Fbury_buffer): Likewise.
19730
19731 * indent.c (current_column_1): Remove unused variable `prev_col'.
19732
19733 * coding.c (encode_coding): Use precomputed value of `src'.
19734 (encode_coding): Remove unused variable `src_end'.
19735 (code_convert_region): Remove unused variables `count'.
19736
19737 2001-11-07 Jason Rumney <jasonr@gnu.org>
19738
19739 * w32term.c (x_display_and_set_cursor): Do not move system caret
19740 if cursor_glyph is NULL.
19741
19742 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19743
19744 * keymap.c (access_keymap): Fix compilation error.
19745
19746 2001-11-07 Miles Bader <miles@gnu.org>
19747
19748 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
19749
19750 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19751
19752 * intervals.c (graft_intervals_into_buffer):
19753 Remove #ifdef'd-out code.
19754 (graft_intervals_into_buffer): Remove unused variable `middle'.
19755
19756 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
19757 code (eval-current-buffer).
19758 Change doc-string comments to `new style' [w/`doc:' keyword].
19759
19760 2001-11-06 Richard M. Stallman <rms@gnu.org>
19761
19762 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
19763
19764 2001-11-06 Stefan Monnier <monnier@cs.yale.edu>
19765
19766 * lread.c (read1): Fix behavior with nested backquoting.
19767
19768 * keyboard.c (make_lispy_event): Check integerness and fix
19769 Lisp_Object/int mixup.
19770
19771 2001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19772
19773 * fns.c (copy_hash_table): Remove unused variable `v'.
19774
19775 * fontset.c (fontset_font_pattern): Remove unused variable
19776 `family_registry'.
19777
19778 * indent.c (current_column_1): Remove unused variable `prev_col'.
19779
19780 2001-11-05 Richard M. Stallman <rms@gnu.org>
19781
19782 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
19783
19784 * buffer.c (Fkill_buffer): Don't delete auto save file
19785 if buffer is modified.
19786
19787 2001-11-05 Andrew Innes <andrewi@gnu.org>
19788
19789 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
19790 CHECK_NUMBER_CDR.
19791
19792 2001-11-05 Richard M. Stallman <rms@gnu.org>
19793
19794 * unexelf.c (unexec): Minor changes; clean up comments.
19795
19796 2001-11-05 Sam Steingold <sds@gnu.org>
19797
19798 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
19799
19800 2001-11-05 Andreas Schwab <schwab@suse.de>
19801
19802 * sound.c (sound_perror): Save errno from being clobbered.
19803
19804 2001-11-05 Dale Hagglund <rdh@yottayotta.com>
19805
19806 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
19807 the program image directly.
19808
19809 2001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19810
19811 * buffer.h (Fbuffer_local_value): Add prototype.
19812
19813 2001-11-04 Richard M. Stallman <rms@gnu.org>
19814
19815 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
19816 and CHECK_BUFFER.
19817
19818 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
19819 (record_char): Likewise.
19820
19821 * keyboard.c (make_lispy_event): Don't insist a drag event must
19822 move to a different buffer position. Instead, check for moving at
19823 least double_click_fuzz.
19824
19825 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
19826
19827 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
19828
19829 * indent.c (current_column_1, Fmove_to_column): Separate the code
19830 for display-table glyphs from the code for buffer text, to fix
19831 bugs in the former.
19832
19833 2001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
19834
19835 * buffer.c (Fbuffer_local_value): New function.
19836 (syms_of_buffer): Defsubr it.
19837
19838 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
19839 value of `cursor-in-non-selected-windows'.
19840
19841 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
19842 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
19843 (syms_of_xdisp): Initialize it.
19844
19845 2001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19846
19847 * xfns.c (Fx_create_frame): Doc fix.
19848
19849 * coding.c: Change doc-string comments to `new style' [w/`doc:'
19850 keyword].
19851
19852 * eval.c (top_level_value, top_level_set): Remove commented and
19853 #ifdef'd-out code.
19854 (Fdefvar): Fix usage in doc-string.
19855
19856 2001-11-03 Richard M. Stallman <rms@gnu.org>
19857
19858 * xfns.c: Include unistd.h, if it exists.
19859
19860 * editfns.c: Move the include of ctype.h after unistd.h.
19861
19862 * gmalloc.c: Test BROKEN_PROTOTYPES.
19863
19864 2001-11-03 Ken Raeburn <raeburn@gnu.org>
19865
19866 * lisp.h (CHECK_STRING_CAR): New macro.
19867 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
19868 treating XCAR and XCDR as lvalues.
19869 (openp): Use CHECK_STRING_CAR.
19870 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
19871
19872 2001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
19873
19874 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
19875 (SIGMASKTYPE): Define.
19876
19877 * syssignal.h (sigunblock): Don't define if already defined.
19878
19879 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19880
19881 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
19882 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
19883 Fix typos in comments.
19884
19885 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
19886 and #ifdef'd-out code.
19887 Fix and reindent comments.
19888
19889 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
19890
19891 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
19892 argument `i' in macros.
19893
19894 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
19895 `i' in macros.
19896
19897 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
19898 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
19899 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
19900 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
19901 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
19902 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
19903 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
19904 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
19905 in macros.
19906
19907 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
19908 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
19909 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
19910 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
19911 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
19912 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
19913 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
19914 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
19915 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
19916 (remove unused second argument).
19917
19918 2001-11-02 Stefan Monnier <monnier@cs.yale.edu>
19919
19920 * syntax.c (describe_syntax): New wrapper.
19921 (Finternal_describe_syntax_value): Rename from describe_syntax.
19922 Don't insert space at front and \n at the end.
19923 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
19924
19925 * regex.c (re_wctype): Try to fix some warnings.
19926 (regcomp, regexec): Don't forget the __restrict.
19927
19928 2001-11-02 Richard M. Stallman <rms@gnu.org>
19929
19930 * textprop.c (Fget_char_property): Doc fix.
19931
19932 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19933
19934 * process.c (Fstart_process): Add usage to doc-string.
19935
19936 * data.c (Fsetq_default): Ditto.
19937
19938 * callint.c (Finteractive): Ditto.
19939
19940 2001-11-01 Stefan Monnier <monnier@cs.yale.edu>
19941
19942 * macros.c: Don't include keymap.h any more.
19943
19944 2001-11-01 Richard M. Stallman <rms@gnu.org>
19945
19946 * data.c (Fmake_local_variable): Doc fix.
19947
19948 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
19949 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
19950
19951 * keymap.c (Fdescribe_buffer_bindings): Print character property
19952 bindings along with or instead of the buffer local map.
19953 Make the overriding maps override what they should.
19954
19955 2001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19956
19957 * window.c (grow_mini_window): Fix typo in comment.
19958
19959 2001-11-01 Gerd Moellmann <gerd@gnu.org>
19960
19961 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
19962 (XTset_vertical_scroll_bar): Likewise.
19963
19964 * xfns.c (x_build_heuristic_mask): Use four_corners_best
19965 instead of IMAGE_BACKGROUND.
19966
19967 * xfns.c (four_corners_best): Reindent.
19968
19969 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
19970 Handle :box so that it is possible to specify sexprs.
19971
19972 2001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
19973
19974 * s/hpux11.h: New file.
19975
19976 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19977
19978 * emacs.c (USAGE1): Show command line option --no-window-system
19979 instead of --no-windows in usage.
19980 (standard_args): Rename --no-windows to --no-window-system.
19981 (bug_reporting_address): Follow Emacs coding conventions.
19982
19983 * eval.c (Fcommandp): Doc fix.
19984 Change doc-string comments to `new style' [w/`doc:' keyword].
19985
19986 * frame.c (Fframe_live_p): Doc fix.
19987
19988 * buffer.c (selective-display-ellipses): Doc fix.
19989
19990 2001-10-31 Gerd Moellmann <gerd@gnu.org>
19991
19992 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
19993
19994 * xfaces.c (realize_x_face): If C is not a single-byte character,
19995 set the face's colors_copied_bitwise_p instead of the defaulted_p
19996 members which have a different meaning.
19997 (free_face_colors): Do nothing for a face whose colors have been
19998 copied bitwise.
19999
20000 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
20001
20002 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20003
20004 * marker.c, mocklisp.c: Change doc-string comments to `new style'
20005 [w/`doc:' keyword].
20006
20007 2001-10-31 Gerd Moellmann <gerd@gnu.org>
20008
20009 * fns.c (require_unwind): Return Lisp_Object.
20010
20011 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20012
20013 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
20014 (last-input-char): Revert doc-string to be the same as the
20015 doc-string of `last-input-event'.
20016
20017 * xdisp.c: Fix typos in comments.
20018
20019 2001-10-31 Gerd Moellmann <gerd@gnu.org>
20020
20021 * window.c (grow_mini_window): Handle case that the root
20022 window is already smaller than the nominal mininum height.
20023
20024 2001-10-30 Stefan Monnier <monnier@cs.yale.edu>
20025
20026 * emacs.c (main): Don't call keys_of_macros any more.
20027
20028 * lisp.h (keys_of_macros): Remove.
20029
20030 * macros.c (keys_of_macros): Remove.
20031
20032 * xfaces.c (Fface_attribute_relative_p): Declare args.
20033
20034 2001-10-30 Jason Rumney <jasonr@gnu.org>
20035
20036 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
20037 (enum_font_cb2): Ignore fonts with vertical orientation.
20038
20039 2001-10-30 Richard M. Stallman <rms@gnu.org>
20040
20041 * keyboard.c (Finput_pending_p): Doc fix.
20042
20043 2001-10-30 Gerd Moellmann <gerd@gnu.org>
20044
20045 * xterm.c (x_after_update_window_line): Don't run the code
20046 clearing in borders for rows whose visible height is 0.
20047
20048 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
20049 resized_p flag is set. If not set, use the much less flickering
20050 method previously used.
20051
20052 * dispnew.c (change_frame_size_1): Set frame's resized_p.
20053
20054 * frame.h (struct frame) <resized_p>: New member.
20055
20056 * lread.c (to_multibyte): Ensure read_buffer is at least twice
20057 as large as the number of bytes to convert.
20058
20059 * lread.c (to_multibyte): New function.
20060 (read1): Use it.
20061
20062 2001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
20063
20064 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
20065
20066 2001-10-30 Gerd Moellmann <gerd@gnu.org>
20067
20068 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
20069 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
20070 if the row's fill_line_p is set and drawing the last glyph with
20071 DRAW_IMAGE_{RAISED,SUNKEN}.
20072
20073 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
20074
20075 2001-10-29 Stefan Monnier <monnier@cs.yale.edu>
20076
20077 * xmenu.c: Include coding.h and charset.h.
20078 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
20079 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
20080 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
20081 Explicitly set wv->help. Use `TRUE' rather than `True'.
20082 (menu_help_callback): Use empty_string.
20083
20084 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
20085 (Fx_popup_dialog): Explicitly init f.
20086 (w32_menu_display_help): Use empty_string.
20087
20088 2001-10-29 Richard M. Stallman <rms@gnu.org>
20089
20090 * fns.c (Frequire): Detect recursive try to require the same
20091 feature 3 or more levels deep, and get error.
20092 (require_unwind): New subroutine.
20093 (require_nesting_list): New variable.
20094 (syms_of_fns): Init and staticpro it.
20095
20096 * print.c (print_object): Clarify indication of insertion type.
20097
20098 2001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
20099
20100 * coding.c (syms_of_coding): Document that locale-coding-system is
20101 used for decoding input on X.
20102
20103 * window.c (Fscroll_left, Fscroll_right): Doc fix.
20104
20105 2001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20106
20107 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
20108 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
20109
20110 2001-10-29 Gerd Moellmann <gerd@gnu.org>
20111
20112 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
20113 use NO_CURSOR if cursor_in_non_selected_windows is false.
20114
20115 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
20116 the slant attribute if FRAME is t.
20117
20118 * xfns.c (x_set_internal_border_width): Set frame garbaged
20119 when X window doesn't exist yet.
20120
20121 * xterm.c (x_after_update_window_line): Clear internal border
20122 in different circumstances.
20123
20124 * xterm.c (XTread_socket) <KeyPress>: Don't use
20125 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
20126 <handa@etl.go.jp>.
20127
20128 2001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
20129
20130 * m/ibms390.h: New file. From Adam Thornton
20131 <athornton@sinenomine.net>.
20132
20133 2001-10-28 Gerd Moellmann <gerd@gnu.org>
20134
20135 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
20136
20137 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
20138 a loop counter.
20139
20140 2001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20141
20142 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
20143
20144 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
20145 keyword].
20146 Fix typos in comments.
20147
20148 * emacs.c (bug_reporting_address): New function.
20149 Use it when displaying usage message.
20150
20151 * minibuf.c (read_minibuf): Remove unused external declaration of
20152 variable `Qread_only'.
20153
20154 * keymap.c (access_keymap): Remove unused variable `charset'.
20155
20156 2001-10-28 Miles Bader <miles@gnu.org>
20157
20158 * xfaces.c (merge_face_heights): Handle TO being relative as well.
20159 Remove #ifdef'd-out code.
20160 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
20161 (syms_of_xfaces): Initialize them.
20162
20163 2001-10-27 Jason Rumney <jasonr@gnu.org>
20164
20165 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
20166 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
20167 position using the system caret.
20168
20169 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
20170 (w32_system_caret_height, w32_system_caret_x)
20171 (w32_system_caret_y): New variables for tracking system caret.
20172 (w32_initialize): Initialize them.
20173 (x_display_and_set_cursor): Make system caret follow the active cursor.
20174
20175 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
20176 New messages types.
20177
20178 * w32term.c (note_mouse_highlight): Clear old help_echo.
20179
20180 2001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20181
20182 * xterm.c: Fix typo in a comment.
20183
20184 * emacs.c: Fix typos in comments.
20185 Remove unnecessary spaces.
20186 Change doc-string comments to `new style' [w/`doc:' keyword].
20187 (USAGE2): Fix typos in usage string.
20188
20189 * xterm.c: Fix typo in a comment.
20190
20191 * lisp.h (gdb_lisp_params): Remove code in #if 0 which is now in
20192 emacs.c.
20193
20194 2001-10-27 Gerd Moellmann <gerd@gnu.org>
20195
20196 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
20197 instead of 1/2 line_height in the heuristic for skipping
20198 farther backward when target_y was not reached.
20199
20200 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
20201 Display errno only if non-zero.
20202 (sound_warning): New function.
20203 (vox_configure): Don't treat failing to set sample rate as error.
20204 (various places): Improve error messages.
20205
20206 2001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
20207
20208 * fileio.c (Faccess_file): Run the argument filename through
20209 Fexpand_file_name, before using it.
20210
20211 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
20212 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
20213
20214 2001-10-26 Gerd Moellmann <gerd@gnu.org>
20215
20216 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
20217
20218 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
20219 Fix clearing in the case of scroll bars on the right.
20220
20221 2001-10-26 Juanma Barranquero <lektu@terra.es>
20222
20223 * w32gui.h (XImage): Add a dummy typedef.
20224
20225 2001-10-26 Gerd Moellmann <gerd@gnu.org>
20226
20227 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
20228
20229 2001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
20230
20231 * frame.c (Fframe_parameter): Fix last change.
20232
20233 * fileio.c: Revert last change (which removed old commented-out
20234 version of expand-file-name). Add a comment that explains why
20235 this old version should not be removed.
20236
20237 2001-10-25 Gerd Moellmann <gerd@gnu.org>
20238
20239 * frame.c (Fframe_parameter): Fix a bug whereby some
20240 ``artificial'' frame parameters, like `minibuffer' were not
20241 obtained by calling Fframe_parameters.
20242
20243 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
20244 cursor differently.
20245
20246 * xdisp.c (move_it_vertically_backward): Compute line height
20247 differently. Add heuristic to try to be more compatible to 20.x.
20248
20249 2001-10-25 Stefan Monnier <monnier@cs.yale.edu>
20250
20251 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
20252
20253 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
20254 boolean.
20255
20256 2001-10-25 Miles Bader <miles@gnu.org>
20257
20258 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
20259 BG is a pointer to a structure, not a structure.
20260 (gif_format, png_format): Add missing commas.
20261
20262 2001-10-24 Richard M. Stallman <rms@gnu.org>
20263
20264 * xfaces.c (Fface_attributes_as_vector): New function.
20265 (syms_of_xfaces): Defsubr it.
20266
20267 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20268
20269 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
20270 variable `area'.
20271
20272 2001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20273
20274 * search.c (scan_newline): Remove unused variable `selective_display'.
20275
20276 2001-10-25 Miles Bader <miles@gnu.org>
20277
20278 * dispextern.h (struct image): Add `background',
20279 `background_valid', and `background_transparent' fields.
20280 (image_background, image_background_transparent): New declarations.
20281 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
20282 * xfns.c (image_background, image_background_transparent)
20283 (four_corners_best): New functions.
20284 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
20285 (gs_format): Add `:background' entry.
20286 (lookup_image): Set IMG's background color if specified.
20287 (pbm_load, xbm_load_image, png_load): Set IMG's background field
20288 when appropriate.
20289 (x_clear_image_1): Reset `background_valid' and
20290 `background_transparent_valid' fields.
20291 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
20292 calculating it here. Set IMG's background_transparent field.
20293 (enum xpm_keyword_index): Add XPM_BACKGROUND.
20294 (enum png_keyword_index): Add PNG_BACKGROUND.
20295 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
20296 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
20297 (enum gif_keyword_index): Add GIF_BACKGROUND.
20298 (enum gs_keyword_index): Add GS_BACKGROUND.
20299 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
20300 Pre-calculate image background color where necessary.
20301 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
20302 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
20303 color to use for image glyph reliefs.
20304
20305 2001-10-24 Gerd Moellmann <gerd@gnu.org>
20306
20307 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
20308 in full-width rows.
20309
20310 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
20311 Fix clearing of area not covered by scroll bar.
20312
20313 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20314
20315 * xterm.c (x_insert_glyphs): Remove unused variables `real_end'
20316 and `real_start'.
20317 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
20318 (glyph_rect): Remove unused variable `area'.
20319
20320 2001-10-24 Gerd Moellmann <gerd@gnu.org>
20321
20322 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
20323
20324 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
20325 (row_containing_pos): Take additional argument DY.
20326 Treat rows ending in middle of char differently.
20327 (display_line): Handle tabs on window systems differently.
20328
20329 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
20330 with additional argument.
20331
20332 * dispextern.h (row_containing_pos): Adjust prototype.
20333
20334 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
20335 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
20336 (try_window_id, try_window_reusing_current_matrix)
20337 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
20338 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
20339
20340 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20341
20342 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
20343 gnuemacs).
20344 (HAVE_BOXES): Fix typo in comment.
20345 (push_menu_pane): Fix typo in comment.
20346
20347 * xdisp.c (display_prop_string_p): Remove unused local declaration
20348 of `Qwhen'.
20349 (single_display_prop_string_p): Remove unused local declarations
20350 of `Qwhen' and `Qmargin'.
20351 (string_buffer_position): Remove unused variable `around'.
20352 (store_frame_title): Remove unused variable `width'.
20353
20354 * window.c: Don't define max.
20355 (coordinates_in_window): Remove unused variable `uy'.
20356
20357 * widget.c: Don't define max.
20358
20359 * process.c: Don't define max.
20360 (create_process): Remove unused variable `buffer'.
20361
20362 2001-10-23 Gerd Moellmann <gerd@gnu.org>
20363
20364 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
20365
20366 2001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
20367
20368 * xfaces.c (Finternal_set_lisp_face_attribute)
20369 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
20370 frame is on a windowed display.
20371
20372 2001-10-23 Gerd Moellmann <gerd@gnu.org>
20373
20374 * dispnew.c (sync_window_with_frame_matrix_rows):
20375 Fix handling of windows which aren't full-width, fix handling
20376 of marginal areas.
20377
20378 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
20379
20380 2001-10-23 Andreas Schwab <schwab@suse.de>
20381
20382 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
20383 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
20384
20385 2001-10-23 Gerd Moellmann <gerd@gnu.org>
20386
20387 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
20388 REAL_END. Notice if cursor gets overwritten.
20389 (notice_overwritten_cursor): Take X positions as parameters.
20390 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
20391 around call to x_draw_glyphs.
20392
20393 2001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20394
20395 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
20396 instead of C) and usage.
20397
20398 * editfns.c (char-to-string): Fix argument names (use CHAR instead
20399 of C) and usage.
20400
20401 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
20402 `left', `max_width' and `max_height'.
20403
20404 2001-10-23 Gerd Moellmann <gerd@gnu.org>
20405
20406 * xdisp.c (display_line): For a tab continued to the next line,
20407 set row's ends_in_middle_of_char_p.
20408
20409 2001-10-22 Gerd Moellmann <gerd@gnu.org>
20410
20411 * xdisp.c (display_line): Fix computation of continuation lines
20412 width for TABs.
20413
20414 2001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20415
20416 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
20417 `Qlaplace'.
20418
20419 * fileio.c: Remove unused code.
20420
20421 2001-10-22 Miles Bader <miles@gnu.org>
20422
20423 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
20424 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
20425 Remove `DOC_STRINGS_IN_COMMENTS' cases.
20426
20427 2001-10-21 Jason Rumney <jasonr@gnu.org>
20428
20429 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
20430
20431 2001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
20432
20433 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
20434 (Finsert_string): Avoid the multi-line string literals warning.
20435
20436 2001-10-22 Miles Bader <miles@gnu.org>
20437
20438 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
20439 (Fdocumentation): Don't use it.
20440 (syms_of_doc): Don't initialize it.
20441
20442 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
20443 * print.c (Fwith_output_to_temp_buffer): Likewise.
20444 * window.c (Fsave_window_excursion): Likewise.
20445 * editfns.c (Fsave_excursion, Fsave_current_buffer)
20446 (Fsave_restriction): Likewise.
20447 * eval.c (Frun_hooks, Frun_hook_with_args)
20448 (Frun_hook_with_args_until_failure)
20449 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
20450 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
20451 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
20452 (Funwind_protect, Fcondition_case): Likewise.
20453 * coding.c (Ffind_operation_coding_system): Likewise.
20454 * keyboard.c (Ftrack_mouse): Likewise.
20455
20456 2001-10-21 Miles Bader <miles@gnu.org>
20457
20458 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
20459 (Fmake_hash_table): Add usage: string to doc string.
20460 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
20461 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
20462 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
20463 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
20464 (Fml_prefix_argument_loop): Likewise.
20465
20466 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20467
20468 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
20469
20470 * sysdep.c (init_sys_modes): Change doc-string comments to `new
20471 style' [w/`doc:' keyword].
20472
20473 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
20474 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
20475 comments to `new style' [w/`doc:' keyword].
20476
20477 2001-10-21 Jason Rumney <jasonr@gnu.org>
20478
20479 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
20480
20481 * w32term.c (remember_mouse_glyph): New function.
20482 (w32_mouse_position): Use it.
20483 (note_mouse_movement): If the mouse moved off the glyph, remember
20484 its new position.
20485
20486 * w32term.h (struct w32_output): Correct spelling of x_compatible.
20487 (w32_display_info): Add mouse_face_overlay.
20488
20489 * w32term.c (notice_overwritten_cursor): Renamed from
20490 note_overwritten_text_cursor. Rewritten to take glyph widths into
20491 account.
20492 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
20493 (fast_find_string_pos): New function.
20494 (fast_find_position): Return the correct vpos. Add parameter
20495 STOP. In the final row, stop before glyphs having STOP as object.
20496 Don't consider glyphs that are not from a buffer.
20497 (fast_find_position) [0]: Add a presumably more correct version
20498 for after 21.1.
20499 (expose_window_tree, expose_frame): Don't compute intersections here.
20500 (expose_window): Do it here instead.
20501 (expose_window_tree, expose_window, expose_line): Return 1 when
20502 overwriting mouse-face.
20503 (expose_window): If W is the window currently being updated, mark
20504 the frame garbaged.
20505 (expose_frame): If mouse-face was overwritten, redo it.
20506 (x_use_underline_position_properties): New variable.
20507 (syms_of_xterm): DEFVAR_BOOL it.
20508 (x_draw_glyph_string): Add comment to use it in future.
20509 (x_draw_glyph_string): Restore clipping after drawing box.
20510 Fix a computation of the underline position.
20511 (w32_get_glyph_string_clip_rect): Minor cleanup.
20512 (x_fill_stretch_glyph_string): Remove an assertion.
20513 (x_produce_glyphs): Don't convert multibyte characters
20514 to unibyte characters in unibyte buffers.
20515 (cursor_in_mouse_face_p): New function.
20516 (x_draw_stretch_glyph_string): Use it to choose a different GC
20517 when drawing a cursor within highlighted text. Don't draw
20518 background again if it has already been drawn.
20519 (x_draw_glyph_string_box): Don't draw a full-width
20520 box just because the glyph row's full_width_p flag is set.
20521 (x_draw_glyphs): Fix computation of rightmost x for
20522 full-width rows.
20523 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
20524 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
20525 change bottom shadow accordingly. Some cleanup.
20526 (x_update_window_end): Handle overwritten mouse face
20527 also for tool bar windows.
20528 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
20529 DRAW is DRAW_IMAGE_RAISED.
20530 (clear_mouse_face): Return 1 if text with mouse face was
20531 actually redrawn. Make the function static.
20532 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
20533 optimize away highlighting if we pass over that same overlay again.
20534 (note_mouse_highlight): Call mouse_face_overlay_overlaps
20535 to detect a case where we have to highlight a different region
20536 despite not having left the currently highlighted region.
20537 Set mouse_face_overlay in the x_display_info. Avoid changing the
20538 mouse pointer shape when show_mouse_face has already done it, or
20539 there is no need. Handle mouse-face and help-echo in strings.
20540 (glyph_rect): New function.
20541 (w32_mouse_position): Use it to raise the threshold for mouse
20542 movement event generation.
20543 (w32_initialize_display_info): Initialize the x_display_info's
20544 mouse_face_overlay.
20545 (w32_set_vertical_scroll_bar): Don't clear a zero height
20546 or width area.
20547 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
20548 a widget to zero height.
20549
20550 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
20551 Protect unibyte strings created by replacing their multibyte
20552 equivalents in menu_items.
20553 (w32_menu_show): Don't overwrite an item's name with its key
20554 description in case the description is a multibyte string.
20555 (single_submenu): Some cleanup.
20556
20557 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
20558 (postprocess_image): New function.
20559 (lookup_image): Call it for all image types except PostScript.
20560 (x_kill_gs_process): Call postprocess_image.
20561 (tiff_error_handler, tiff_warning_handler): New functions.
20562 (tiff_load): Install them as handlers.
20563 (x_kill_gs_process): Recognize if someone has cleared the image
20564 cache under us.
20565 (valid_image_p): Protect better against invalid image
20566 specifications. Previous code could signal an error.
20567 (Fx_hide_tip, Fshow_tip): Doc fix.
20568 (Fv_max_tooltip_size): New variable.
20569 (syns_of_xfns): DEFVAR_LISP it.
20570 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
20571 window buffer to *tip* right after creating the frame. Set frame's
20572 window_width. Use a maximum tooltip size specified by
20573 Vx_max_tooltip_size, if that has valid contents.
20574 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
20575 Make sure the tooltip is completely visible.
20576 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
20577 (Fx_create_frame): Adjust the frame's height for presence
20578 of the tool bar before calling x_figure_window_size.
20579 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
20580 when the window gets smaller.
20581 (x_set_foreground_color): Set frame's cursor_pixel.
20582 (x_set_foreground_color, x_set_background_color): Cleaned up.
20583 (x_set_font): Handle case of x_new_fontset returning the same name
20584 as before, although there was a change in fontsets.
20585
20586 2001-10-21 Miles Bader <miles@gnu.org>
20587
20588 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
20589 (Flogxor): Add usage: string to doc string.
20590 * charset.c (Fstring): Likewise.
20591 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
20592 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
20593
20594 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20595
20596 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
20597
20598 * alloc.c: Reindent DEFUNs with doc: keywords.
20599
20600 * abbrev.c (Finsert_abbrev_table_description): Reindent.
20601
20602 * frame.c: Change doc-string comments to `new style' [w/`doc:'
20603 keyword].
20604
20605 See ChangeLog.9 for earlier changes.
20606
20607 ;; Local Variables:
20608 ;; coding: iso-2022-7bit
20609 ;; End:
20610
20611 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
20612 Copying and distribution of this file, with or without modification,
20613 are permitted provided the copyright notice and this notice are preserved.
20614
20615 ;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4