(Fdisplay_supports_face_attributes_p): Fix typo in docstring.
[bpt/emacs.git] / src / ChangeLog
1 2005-06-09 Juanma Barranquero <lekktu@gmail.com>
2
3 * xfaces.c (Fdisplay_supports_face_attributes_p):
4 Fix typo in docstring.
5
6 2005-06-08 Steven Tamm <steventamm@mac.com>
7
8 * unexmacosx.c (copy_data_segment): Copy __la_sym_ptr2 section
9 used by gcc4 on intel mac.
10
11 2005-06-09 Kim F. Storm <storm@cua.dk>
12
13 * search.c (Fmatch_data): Add optional RESEAT arg. Unchain markers
14 in REUSE list if non-nil; free them if equal to evaporate.
15 (Fset_match_data): Add optional RESEAT arg. Unchain markers in LIST
16 if non-nil; free them if equal to evaporate. Use XCAR/XCDR.
17 (restore_search_regs): Rename from restore_match_data. Uses changed.
18 (unwind_set_match_data): New function.
19 (record_unwind_save_match_data): New function like save-match-data.
20
21 * lisp.h (Fmatch_data, Fset_match_data): Fix EXFUN.
22 (record_unwind_save_match_data): Add prototype.
23 (restore_search_regs): Rename from restore_match_data.
24
25 * composite.c (compose_chars_in_text):
26 * eval.c (do_autoload):
27 * macmenu.c (set_frame_menubar):
28 * process.c (read_process_output, exec_sentinel):
29 * xmenu.c (set_frame_menubar):
30 * xdisp.c (prepare_menu_bars, update_menu_bar, update_tool_bar):
31 * w32menu.c (set_frame_menubar):
32 Use record_unwind_save_match_data.
33
34 2005-06-08 Richard M. Stallman <rms@gnu.org>
35
36 * xdisp.c (get_next_display_element): Alter previous change:
37 Distinguish Vshow_nonbreak_escape = t or not t.
38 For t, use escape_glyph once again, as before previous change.
39 Use space or hyphen for display, instead of the non-ASCII char.
40 (syms_of_xdisp) <show-nonbreak-escape>: Doc fix.
41
42 * process.c (Fstart_process): Don't touch command_channel_p slot.
43
44 * process.h (struct process): Delete command_channel_p.
45
46 2005-06-07 Masatake YAMATO <jet@gyve.org>
47
48 * xdisp.c (note_mode_line_or_margin_highlight): Check
49 the overlapping of re-rendering area to avoid flickering.
50 (note_mouse_highlight): Call clear_mouse_face if PART
51 is not ON_MODE_LINE nor ON_HEADER_LINE.
52
53 2005-06-07 Kim F. Storm <storm@cua.dk>
54
55 * process.c: Improve commentary for adaptive read buffering.
56
57 2005-06-06 Stefan Monnier <monnier@iro.umontreal.ca>
58
59 * xterm.c (x_create_toolkit_scroll_bar): Use XtNarrowScrollbars
60 if available.
61
62 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
63
64 * macmenu.c (menu_quit_handler, install_menu_quit_handler): New
65 functions for popping down menus on C-g.
66 (set_frame_menubar, mac_menu_show): Call install_menu_quit_handler.
67
68 * macterm.c: Make mac_quit_char_modifiers and mac_quit_char_keycode
69 non-static.
70
71 * config.in: Add HAVE_CANCELMENUTRACKING.
72
73 2005-06-06 Eli Zaretskii <eliz@gnu.org>
74
75 * w32heap.h (OFFSET_TO_RVA, RVA_TO_OFFSET, RVA_TO_PTR): Remove
76 macros.
77
78 * unexw32.c (RVA_TO_PTR): Moved here from w32heap.h.
79
80 * w32proc.c (RVA_TO_PTR): New macro.
81
82 * w32heap.c (RVA_TO_PTR): No need to #undef now.
83
84 * makefile.w32-in ($(BLD)/emacs.$(O), $(BLD)/w32select.$(O)):
85 Depend on w32heap.h.
86
87 2005-06-06 Luc Teirlinck <teirllm@auburn.edu>
88
89 * keyboard.c (command_loop_1): Update Vthis_original_command.
90
91 2005-06-06 Richard M. Stallman <rms@gnu.org>
92
93 * xmenu.c (popup_get_selection): Undo previous change.
94
95 2005-06-06 Juri Linkov <juri@jurta.org>
96
97 * xdisp.c (Qno_break_space): New variable.
98 (syms_of_xdisp): Initialize it.
99 (get_next_display_element): Add no-break space and soft hypen
100 codes for iso8859-2 and iso8859-5. Don't add `\' for them.
101 Use `no-break-space' face for no-break spaces.
102
103 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
104
105 * window.c (delete_window): Handle the case where a h/vchild has
106 a h/vchild.
107
108 2005-06-05 Eli Zaretskii <eliz@gnu.org>
109
110 * w32.c (sys_setsockopt): Change arg 4 to `const void *'. In the
111 call to pfn_setsockopt, cast optval to `const char *'.
112
113 2005-06-04 Eli Zaretskii <eliz@gnu.org>
114
115 * w32.c (gettimeofday): Use struct _timeb, not struct timeb.
116 (open_unc_volume): Cast return value of map_w32_filename, to avoid
117 compiler warnings.
118
119 * s/ms-w32.h (fileno): Don't define if already defined.
120
121 * emacs.c: Include w32heap.h, to avoid compiler warning about sbrk.
122
123 * makefile.w32-in (DOC): Define to point to the generated DOC-X.
124
125 2005-06-04 Richard M. Stallman <rms@gnu.org>
126
127 * xmenu.c (popup_get_selection): Click not in menu deactivates menu.
128
129 2005-06-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
130
131 * macmenu.c (cleanup_popup_menu): New function.
132 (Fx_popup_menu): unwind protect cleanup_popup_menu in case
133 mac_menu_show Quit:s.
134 (mac_menu_show): Quit on cancel if not popped up on click (i.e.
135 a dialog).
136
137 2005-06-04 Kim F. Storm <storm@cua.dk>
138
139 * coding.c (decode_coding_string): Handle CODING_FINISH_INTERRUPT.
140
141 * callproc.c (Fcall_process): Don't use alloca to gradually
142 increase size of buf, as it effectively uses twice the necessary
143 space on the stack. Instead, pre-allocate buf of full size, and
144 gradually increase the read size.
145
146 * bytecode.c (BYTE_CODE_QUIT): Check Vthrow_on_input.
147
148 * eval.c (unbind_to): Preserve value of Vquit_flag.
149
150 * xterm.c (handle_one_xevent): Also ignore mouse motion just
151 before a button release event.
152
153 2005-06-03 Juanma Barranquero <lekktu@gmail.com>
154
155 * xfaces.c (Finternal_lisp_face_equal_p): Really report
156 on faces in a frame, if the argument FRAME is non-nil.
157 Improve argument/docstring consistency.
158
159 2005-06-02 Kim F. Storm <storm@cua.dk>
160
161 * xdisp.c (MODE_LINE_NOPROP_LEN): New macro.
162 (x_consider_frame_title, Fformat_mode_line): Save offset into
163 mode_line_noprop_buf rather than pointer, in case buffer is relocated.
164
165 2005-06-01 Kim F. Storm <storm@cua.dk>
166
167 * fns.c (mapcar1): Maybe exit loop if original sequence was modified.
168
169 2005-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
170
171 * macterm.c (mac_to_x_fontname, mac_do_list_fonts): Set XLFD
172 resolution fields for scalable fonts to 0.
173
174 * xfaces.c (build_scalable_font_name): Round pixel size to the
175 nearest integer.
176
177 2005-06-01 Kim F. Storm <storm@cua.dk>
178
179 * xdisp.c (display_mode_line): Support nested calls to redisplay
180 and format-mode-line. Set mode_line_target to MODE_LINE_DISPLAY.
181
182 2005-05-31 Stefan Monnier <monnier@iro.umontreal.ca>
183
184 * fileio.c (Finsert_file_contents):
185 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
186
187 2005-05-31 Kim F. Storm <storm@cua.dk>
188
189 * xdisp.c (mode_line_noprop_buf, mode_line_noprop_buf_end)
190 (mode_line_noprop_ptr): Rename from frame_title_*.
191 (store_mode_line_noprop_char): Rename from store_frame_title_char.
192 (store_mode_line_noprop): Rename from store_frame_title.
193 (mode_line_target): New enum to specify current output target
194 for mode line formatting.
195 (display_mode_element): Test it rather than frame_title_ptr and
196 mode_line_string_list to determine where output should go.
197 (mode_line_proptrans_alist, mode_line_string_alist): Make static.
198 (Vmode_line_unwind_vector): New variable.
199 (format_mode_line_unwind_data, unwind_format_mode_line):
200 New functions for unwind protection in mode line formatting.
201 (x_consider_frame_title): Use them and new local var 'title_start'
202 to support nested calls to format-mode-line and redisplay. Set
203 mode_line_target to MODE_LINE_TITLE.
204 (Fformat_mode_line): Use them and new local var 'string_start' to
205 support nested calls to format-mode-line and redisplay. Set
206 mode_line_target to MODE_LINE_NOPROP or MODE_LINE_STRING.
207 Don't trim trailing dashes.
208 (decode_mode_spec): Don't make infinite number of trailing dashes
209 for MODE_LINE_NOPROP and MODE_LINE_STRING targets.
210 (syms_of_xdisp): Initialize and staticpro mode_line_string_face,
211 mode_line_string_face_prop, and Vmode_line_unwind_vector.
212 (init_xdisp): Initialize mode_line_noprop_ptr to start of _buf.
213 Initialize mode_line_target to MODE_LINE_DISPLAY.
214
215 2005-05-29 Richard M. Stallman <rms@gnu.org>
216
217 * buffer.c (Fbuffer_local_value): Call indirect_variable.
218
219 2005-05-28 Masatake YAMATO <jet@gyve.org>
220
221 * xdisp.c (note_mode_line_or_margin_highlight): Change the
222 pointer to a hand cursor when hoovering over a mouse-face.
223
224 2005-05-27 Kenichi Handa <handa@m17n.org>
225
226 * xterm.c (x_encode_char): Call check_ccl_update in advance.
227
228 * ccl.c: Now an element of Vccl_program_table is a vector of
229 length 4, not 3.
230 (ccl_get_compiled_code): New arg idx. Caller changed.
231 Adjust for the change of Vccl_program_table.
232 (setup_ccl_program): Adjust for the change of Vccl_program_table.
233 (check_ccl_update): New function.
234 (Fregister_ccl_program): Use ASET to set an element of a vector.
235 Adjusted for the change of Vccl_program_table.
236
237 * ccl.h (struct ccl_program): New member idx.
238 (check_ccl_update): Extern it.
239
240 2005-05-27 Juanma Barranquero <lekktu@gmail.com>
241
242 * image.c (Vimage_library_alist): Move from image.el.
243 (syms_of_image): Defvar it.
244 (lookup_image_type): Use it.
245
246 * buffer.c (Fbuffer_local_value): Make argument name match its use
247 in docstring.
248
249 2005-05-26 Juanma Barranquero <lekktu@gmail.com>
250
251 * keyboard.c (Frecursive_edit): Fix typo in docstring.
252 (Fposn_at_x_y): Make argument name match its use in docstring.
253
254 2005-05-26 Lute Kamstra <lute@gnu.org>
255
256 * eval.c (Frun_hooks): Mention run-mode-hooks in docstring.
257
258 2005-05-24 Masatake YAMATO <jet@gyve.org>
259
260 * xdisp.c (note_mode_line_or_margin_highlight): Use b and e
261 as loop sentinels.
262
263 2005-05-24 Nick Roberts <nickrob@snap.net.nz>
264
265 * xmenu.c (Fx_popup_dialog): Add a third boolean argument to
266 select frame title ("Question"/"Information").
267 (xdialog_show): Use it.
268
269 * macmenu.c (Fx_popup_dialog, mac_dialog_show): As for xmenu.c.
270
271 * w32menu.c (Fx_popup_dialog, w32_dialog_show): As for xmenu.c.
272
273 * fns.c (Fyes_or_no_p, Fy_or_n_p): Call Fx_popup_dialog with
274 a third argument (Qnil).
275
276 * lisp.h: x-popup-dialog can have three arguments.
277
278 * editfns.c (Fmessage_box): Use "Information" for frame title.
279
280 2005-05-23 Thien-Thi Nguyen <ttn@gnu.org>
281
282 * termcap.c [VMS]: Include <starlet.h>.
283
284 2005-05-23 Masatake YAMATO <jet@gyve.org>
285
286 * xdisp.c (note_mode_line_or_margin_highlight): Add code
287 for mouse-face. Change the type of the first argument from `window'
288 to `Lisp_Object'.
289 (note_mouse_highlight): Call note_mode_line_or_margin_highlight with
290 window instead of w.
291
292 2005-05-22 Andreas Schwab <schwab@suse.de>
293
294 * process.c (send_process): Move misplaced volatile.
295
296 2005-05-21 Richard M. Stallman <rms@gnu.org>
297
298 * xdisp.c (display_mode_element): If we're processing a list and
299 padding is specified, put it after the last element.
300
301 2005-05-21 Eli Zaretskii <eliz@gnu.org>
302
303 * fileio.c (Fexpand_file_name) [DOS_NT]: Don't try to support
304 "superroot" on DOS_NT systems.
305
306 2005-05-21 David Hunter <hunterd42@comcast.net> (tiny change)
307
308 * process.c (send_process): Restore the SIGPIPE handler if we
309 catch a SIGPIPE.
310
311 2005-05-20 Juanma Barranquero <lekktu@gmail.com>
312
313 * image.c (lookup_image, png_read_from_memory): Remove hacks (and
314 misleading comments).
315 (DEF_IMGLIB_FN): Use C calling convention for image libraries.
316
317 2005-05-20 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
318
319 * window.c (Fwindow_inside_edges, Fwindow_inside_pixel_edges):
320 Correct the right value.
321
322 2005-05-19 Nick Roberts <nickrob@snap.net.nz>
323
324 * keyboard.c (syms_of_keyboard): Remove Lisp variables
325 post-command-idle-hook and post-command-idle-delay.
326 (command_loop_1): Don't try to execute post-command-idle-hook.
327
328 2005-05-16 Kim F. Storm <storm@cua.dk>
329
330 * xdisp.c (handle_display_prop): Handle empty replacement.
331 (handle_single_display_spec): Return -1 for empty replacement.
332
333 * keyboard.c (adjust_point_for_property): Skip empty overlay string.
334
335 * .gdbinit (pitx): Print more info about iterator.
336
337 2005-05-16 Andreas Schwab <schwab@suse.de>
338
339 * unexmacosx.c (unexec_realloc): Move declarations before statements.
340
341 2005-05-14 Richard M. Stallman <rms@gnu.org>
342
343 * xdisp.c (message3): Call cancel_echoing.
344
345 * alloc.c (Fmemory_full_p): New function.
346 (syms_of_alloc): defsubr it.
347
348 * process.c (send_process_trap): Unblock SIGPIPE.
349 (send_process): Reset SIGPIPE handler before reporting error.
350
351 2005-05-14 Nick Roberts <nickrob@snap.net.nz>
352
353 * emacs.c (syms_of_emacs): Fix doc string for system-type.
354
355 2005-05-13 Richard M. Stallman <rms@gnu.org>
356
357 * fileio.c (Ffind_file_name_handler): Handle lambda-exp as handler.
358 (Finsert_file_contents): If we read 0 bytes from a special file,
359 unlock the visited file if we locked it.
360 (Fmake_symbolic_link, Frecent_auto_save_p): Doc fixes.
361 (Ffile_exists_p, Ffile_symlink_p): Doc fixes.
362
363 2005-05-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
364
365 * emacs.c (main) [MAC_OS8]: Call init_atimer before mac_term_init.
366
367 * keyboard.c (readable_events) [USE_TOOLKIT_SCROLL_BARS]:
368 Regard toolkit scroll bar thumb drag events as squeezable and prevent
369 redisplay from being paused by them.
370
371 * mac.c [!MAC_OSX]: Include keyboard.h and syssignal.h.
372 [!MAC_OSX] (target_ticks): Remove variable.
373 [!MAC_OSX] (check_alarm, pause, index): Remove functions.
374 [!MAC_OSX && __MRC__] (sys_strftime): Likewise.
375 [!MAC_OSX] (select): If fd 0 is not set in rfds and some input
376 event occurs before timeout, behave as if the function were interrupted.
377 [!MAC_OSX] (sigblock, sigsetmask, alarm): Simulate SIGALRM
378 handling using Time Manager routines.
379 [!MAC_OSX] (mac_atimer_task, mac_atimer_qlink, signal_mask):
380 New variables.
381 [!MAC_OSX] (mac_atimer_handler, set_mac_atimer, remove_mac_atimer)
382 (setitimer): New functions.
383
384 * macfns.c, macmenu.c: Don't include signal.h.
385
386 * macterm.c [USE_TOOLKIT_SCROLL_BARS] (get_control_part_bounds):
387 Rename from get_control_part_bound. All callers changed.
388 (x_scroll_bar_clear): New function.
389 (x_clear_frame): Use it.
390 (XTset_vertical_scroll_bar): Don't call Draw1Control.
391 (x_scroll_bar_handle_click): Change type of second argument from
392 int to ControlPartCode.
393 (check_alarm): Remove declaration.
394 (XTread_socket) [!TARGET_API_MAC_CARBON]: Don't call it.
395 (XTread_socket): Use ControlPartCode instead of SInt16.
396
397 2005-05-13 Nozomu Ando <nand@mac.com>
398
399 * unexmacosx.c: Include assert.h.
400 (MACOSX_MALLOC_MULT16): New define.
401 [MACOSX_MALLOC_MULT16] (ptr_in_unexec_regions): Determine whether
402 ptr is in unexec regions by checking it is multiple of 16.
403 (unexec_malloc_header_t): New typedef.
404 (unexec_malloc, unexec_realloc, unexec_free): Store and use
405 allocated size information in unexec_malloc_header.
406
407 2005-05-10 Richard M. Stallman <rms@gnu.org>
408
409 * xterm.c (noinclude): Add #undef.
410
411 * image.c, xfns.c, xmenu.c: Don't include signal.h.
412
413 2005-05-09 Juanma Barranquero <lekktu@gmail.com>
414
415 * fileio.c (Fexpand_file_name, Frename_file, Fadd_name_to_file)
416 (Fmake_symbolic_link, Faccess_file, Frecent_auto_save_p):
417 Doc fixes.
418
419 * dired.c (Ffile_name_completion): Make argument name
420 match its use in docstring.
421
422 2005-05-08 Luc Teirlinck <teirllm@auburn.edu>
423
424 * eval.c (Fdefvaralias): Remove any pre-existing
425 variable-documentation property of the alias.
426
427 2005-05-07 Thien-Thi Nguyen <ttn@gnu.org>
428
429 * xfns.c (start_hourglass): Do nothing when running on a tty.
430
431 2005-05-07 Juanma Barranquero <lekktu@gmail.com>
432
433 * fns.c (Fchar_table_range): Fix typos in docstring.
434
435 2005-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
436
437 * fns.c (Fchar_table_range): Yet Another Int/Lisp_Object Mixup.
438
439 2005-05-06 Eli Zaretskii <eliz@gnu.org>
440
441 * lread.c (Flocate_file_internal): Doc fix.
442
443 * Makefile.in (lisp, shortlisp): Add jka-cmpr-hook.elc.
444
445 2005-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
446
447 * macselect.c (x_own_selection): Accept Lisp string as result of
448 selection converter function.
449 (x_clear_frame_selections): Don't call x-lost-selection-functions
450 if Emacs is not owner of the selection.
451 (Vmac_services_selection): Put variable and initialization in
452 #ifdef MAC_OSX.
453 (syms_of_macselect) [MAC_OSX]: Set default value of
454 Vmac_services_selection to PRIMARY.
455
456 * macterm.c (toolkit_scroll_bar_interaction): Remove unused variable.
457 (mac_handle_tool_bar_click): Remove unused function and declaration.
458 [USE_TOOLKIT_SCROLL_BARS] (scroll_bar_timer_callback)
459 (install_scroll_bar_timer, set_scroll_bar_timer)
460 (control_part_code_to_scroll_bar_part, construct_scroll_bar_click)
461 (get_control_part_bound, x_scroll_bar_handle_press)
462 (x_scroll_bar_handle_release, x_scroll_bar_handle_drag)
463 (x_set_toolkit_scroll_bar_thumb): New functions and declarations.
464 [USE_TOOLKIT_SCROLL_BARS] (last_scroll_bar_part, scroll_bar_timer)
465 (scroll_bar_timer_event_posted_p): New variables.
466 [USE_TOOLKIT_SCROLL_BARS] (SCROLL_BAR_FIRST_DELAY)
467 (SCROLL_BAR_CONTINUOUS_DELAY): New macros.
468 (x_scroll_bar_create): Set control reference with NewControl.
469 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
470 Initialize track_top and track_height to nil.
471 (x_scroll_bar_set_handle, x_scroll_bar_note_movement):
472 Put functions in #ifndef USE_TOOLKIT_SCROLL_BARS.
473 (XTset_vertical_scroll_bar): Don't make space between scroll bar
474 and associated window.
475 (XTset_vertical_scroll_bar) [MAC_OSX]: Get scroll bar area width
476 from window config.
477 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
478 Set track_top and track_height to nil when scroll bar size is changed.
479 Recalculate them if they are nil.
480 (XTread_socket) [MAC_OSX]: Use control kind to determine if the
481 clicked control is a scroll bar.
482 (XTread_socket) [USE_TOOLKIT_SCROLL_BARS]: Use toolkit scroll bar
483 event handler functions. Don't add modifiers to scroll bar click
484 events. Call scroll bar release handler when window is deactivated.
485 (mac_initialize): Remove unused code for X toolkit.
486 (syms_of_macterm) [!USE_TOOLKIT_SCROLL_BARS]:
487 Initialize Vx_toolkit_scroll_bars to nil.
488
489 * macterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
490 New members track_top and track_height.
491
492 * sysselect.h [DARWIN || MAC_OSX]: Temporarily undefine
493 init_process when including sys/select.h.
494
495 2005-05-05 Luc Teirlinck <teirllm@auburn.edu>
496
497 * eval.c (Fdefvaralias): Doc fix.
498
499 * xmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
500
501 2005-05-05 Kim F. Storm <storm@cua.dk>
502
503 * buffer.c (init_buffer_once): Set cursor_in_non_selected_windows
504 default value.
505 (syms_of_buffer): Add default-cursor-in-non-selected-windows.
506 Fix type of cursor-in-non-selected-windows.
507
508 2005-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
509
510 * mac.c: #undef init_process so not to conflict with system headers.
511
512 2005-05-02 Richard M. Stallman <rms@gnu.org>
513
514 * buffer.c (syms_of_buffer): Define cursor-in-non-selected-windows.
515
516 * buffer.h (struct buffer): Add cursor_in_non_selected_windows slot.
517
518 * xdisp.c (Vcursor_in_non_selected_windows)
519 (Qcursor_in_non_selected_windows): Vars deleted.
520 (syms_of_xdisp): Don't initialize them.
521 (get_window_cursor_type): Use cursor_in_non_selected_windows
522 buffer slot.
523
524 2005-05-02 Kim F. Storm <storm@cua.dk>
525
526 * macros.c (executing_kbd_macro_index): Rename from
527 executing_macro_index. All uses changed.
528 (executing_kbd_macro_iterations): Rename from
529 executing_macro_iterations. All uses changed.
530 (executing_kbd_macro): Rename from executing_macro.
531 All uses changed.
532 (syms_of_macros): Rename Lisp var executing-macro-index to
533 executing-kbd-macro-index.
534
535 * xdisp.c (move_it_in_display_line_to): Fix last change.
536
537 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
538
539 * xmenu.c (Fx_popup_menu): Doc fix.
540
541 * charset.c (syms_of_charset): Delete defsubr for Schars_in_region.
542
543 2005-05-02 Jason Rumney <jasonr@gnu.org>
544
545 * emacs.c (USAGE3, USAGE4): Keep strings below 2048 bytes.
546
547 2005-05-02 Nozomu Ando <nand@mac.com>
548
549 * sysselect.h: Fix typo.
550
551 2005-05-02 Nick Roberts <nickrob@snap.net.nz>
552
553 * charset.c (Fchars_in_region): Remove as obsolete.
554
555 2005-05-01 Kim F. Storm <storm@cua.dk>
556
557 * xdisp.c (move_it_in_display_line_to): Stop if we move beyond
558 TO_CHARPOS. This may happen if last glyphs was an image or stretch
559 glyph.
560
561 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
562
563 * dispnew.c (sit_for): Vexecuting_macro -> Vexecuting_kbd_macro.
564
565 2005-05-01 Richard M. Stallman <rms@gnu.org>
566
567 * xmenu.c [not HAVE_X_TOOLKIT] (xmenu_show):
568 If user cancels the menu, quit unless FOR_CLICK.
569
570 * macros.c (Vexecuting_kbd_macro): Rename from Vexecuting_macro.
571 All uses changed.
572 (syms_of_macros): Define only executing-kbd-macro, not executing-macro.
573 * keyboard.c: Change Vexecuting_macro to Vexecuting_kbd_macro.
574 * macros.h (Vexecuting_kbd_macro): Declare instead of Vexecuting_macro.
575 * commands.h (Vexecuting_kbd_macro): Likewise.
576
577 2005-05-01 Thien-Thi Nguyen <ttn@gnu.org>
578
579 * sysdep.c (get_frame_size) [VMS]: Use a fresh i/o channel.
580
581 2005-04-30 Richard M. Stallman <rms@gnu.org>
582
583 * fileio.c (Ffind_file_name_handler): Handle the `operations'
584 property of the file name handler.
585 (Qoperations): New variable.
586 (syms_of_fileio): Initialize and staticpro it.
587
588 * xdisp.c (set_message_1): Delete xassert.
589
590 2005-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
591
592 * mac.c: Don't include time.h. Include sysselect.h after systime.h.
593
594 * macfns.c (Fx_server_version): Add BLOCK_INPUT around Gestalt.
595
596 * macgui.h [HAVE_CARBON && MAC_OSX]: Don't undefine/define mktime
597 before/after including Carbon.h if there is a working mktime.
598
599 2005-04-28 Kim F. Storm <storm@cua.dk>
600
601 * xfaces.c (resolve_face_name): Add arg SIGNAL_P. Calls changed.
602 Fix cyclic alias check. If alias loop is detected, signal
603 circular-list error if SIGNAL_P, and return Qdefault if !SIGNAL_P.
604
605 2005-04-28 Lute Kamstra <lute@gnu.org>
606
607 * eval.c (do_autoload): Record only autoloads in the autoload
608 property of symbols.
609
610 2005-04-28 Nick Roberts <nickrob@snap.net.nz>
611
612 * emacs.c (USAGE1): Add --basic-display and --quick options.
613
614 2005-04-27 Kim F. Storm <storm@cua.dk>
615
616 * data.c (syms_of_data) Staticpro Qcyclic_variable_indirection.
617
618 2005-04-26 Richard M. Stallman <rms@gnu.org>
619
620 * window.c (Fsame_window_p, Fspecial_display_p): Doc fixes.
621 (syms_of_window): Doc fixes.
622
623 * indent.c (Fvertical_motion): Undo previous change.
624
625 2005-04-26 Kenichi Handa <handa@m17n.org>
626
627 * fns.c (char_table_range): New function.
628 (Fchar_table_range): Signal an error if characters in the range
629 have inconsistent values. Don't check the parent.
630
631 2005-04-25 Kenichi Handa <handa@m17n.org>
632
633 * fontset.c (fontset_set): Fix previous change.
634
635 2005-04-24 Richard M. Stallman <rms@gnu.org>
636
637 * indent.c (Fvertical_motion): Bind fontification-functions to nil.
638
639 2005-04-24 Eli Zaretskii <eliz@gnu.org>
640
641 * regex.c (re_search_2, re_match_2_internal): Convert second arg
642 of RE_TRANSLATE to int, to shut up GCC warnings.
643
644 * fileio.c (Fcopy_file): Doc fix.
645 [MSDOS]: Fix call to emacs_open: buffer_file_type not defined and
646 not needed.
647
648 2005-04-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
649
650 * Makefile.in [HAVE_CARBON] (MAC_OBJ): Add macselect.o.
651 (SOME_MACHINE_OBJECTS): Likewise.
652 (mac.o): Depend on ccl.h.
653 (macselect.o): New target.
654
655 * emacs.c (main) [MAC_OS8 || MAC_OSX && HAVE_CARBON]:
656 Call syms_of_macselect.
657
658 * frame.c (Fdelete_frame) [MAC_OS]: Call x_clear_frame_selections.
659
660 * mac.c [!TARGET_API_MAC_CARBON]: Don't include charset.h or coding.h.
661 (QCLIPBOARD): Remove variable.
662 (syms_of_mac): Don't initialize it.
663 (Fmac_paste_function, Fmac_cut_function, Fx_selection_exists_p):
664 Remove functions.
665 (syms_of_mac): Don't defsubr them.
666 [TARGET_API_MAC_CARBON] (Qmime_charset, QNFD, QNFKD, QNFC, QNFKC)
667 (QHFS_plus_D, QHFS_plus_C): New variables.
668 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
669 [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp)
670 (cfstring_create_normalized): New functions.
671 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Likewise.
672 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
673
674 * macterm.c (handling_window_update, terminate_flag):
675 Remove variables.
676 (do_window_update, do_ae_quit_application, XTread_socket):
677 Don't use them.
678 (WNE_SLEEP_AT_SUSPEND, WNE_SLEEP_AT_RESUME): Don't define.
679 [USE_CARBON_EVENTS && MAC_OSX] (mac_handle_service_event)
680 (init_service_handler): Move to macselect.c. Remove declarations.
681 [USE_CARBON_EVENTS && MAC_OSX] (init_service_handler): Add extern.
682 (Qapplication, Qabout): New variables.
683 (syms_of_mac): Initialize them.
684 [USE_CARBON_EVENTS && MAC_OSX] (Qpreferences, Qservices, Qpaste)
685 (Qperform): New variables.
686 (syms_of_mac) [USE_CARBON_EVENTS && MAC_OSX]: Initialize them.
687 (do_get_menus) [TARGET_API_MAC_CARBON]: Don't call AppendResMenu.
688 (do_menu_choice): Unhighlight menu bar also when menu_id is 0.
689 (mac_store_application_menu_event, init_menu_bar): New functions.
690 [USE_CARBON_EVENTS] (mac_handle_command_event)
691 (init_command_handler): New functions.
692 (mac_handle_window_event): Return noErr on window update event.
693 (do_ae_quit_application): Call mac_store_application_menu_event.
694 (mac_initialize) [USE_CARBON_EVENTS]: Call init_command_handler
695 and init_menu_bar.
696
697 * macterm.h (x_clear_frame_selections): Add extern.
698
699 * macselect.c: New file for selection processing on Mac OS.
700
701 2005-04-23 Richard M. Stallman <rms@gnu.org>
702
703 * fileio.c (Fcopy_file): New arg MUSTBENEW.
704 (Frename_file): Pass new arg to Fcopy_file.
705
706 * window.c (window_size_fixed): Variable deleted.
707 (syms_of_window): Initialize window-size-fixed to nil.
708 But don't DEFVAR window_size_fixed.
709
710 2005-04-23 Andreas Schwab <schwab@suse.de>
711
712 * m/macppc.h (LD_SWITCH_MACHINE) [LINUX]: Don't define.
713 (START_FILES, LIB_STANDARD) [LINUX && _ARCH_PPC64]: Override to
714 use lib64 instead of lib.
715 (_LP64) [_ARCH_PPC64]: Define if not defined.
716
717 2005-04-23 David Hunter <hunterd42@comcast.net> (tiny change)
718
719 * s/ms-w32.h (HAVE_PWD_H): Define.
720
721 2005-04-22 Kenichi Handa <handa@m17n.org>
722
723 * fns.c (copy_sub_char_table): Explicitly copy the default value
724 of the sub-chartable.
725
726 * fontset.c (fontset_set): When a sub-chartable is created,
727 explicitly sets the defalt value.
728
729 2005-04-22 Kim F. Storm <storm@cua.dk>
730
731 * fns.c (Fplist_get): Replace by Fsafe_plist_get.
732 (Fsafe_plist_get): Rename to Fplist_get.
733 (Fsafe_get): Remove, as Fget now uses safe Fplist_get.
734 (defsubr): Remove defsubr for Fsafe_plist_get and Fsafe_get.
735
736 * lisp.h (Fsafe_plist_get, Fsafe_get): Remove EXFUN.
737
738 * xdisp.c (store_mode_line_string, produce_stretch_glyph)
739 (note_mode_line_or_margin_highlight, note_mouse_highlight):
740 Use Fplist_get instead of Fsafe_plist_get.
741
742 * xfaces.c (resolve_face_name): Use Fget instead of Fsafe_get.
743
744 2005-04-21 Miles Bader <miles@gnu.org>
745
746 * xdisp.c (dump_glyph_row): Don't display overlay_arrow_p field.
747
748 2005-04-20 Thien-Thi Nguyen <ttn@gnu.org>
749
750 * sysdep.c: Remove reference to defunct vms-pwd.h.
751 * dired.c: Likewise. Also, for pwd.h, use HAVE_PWD_H, not !VMS.
752 * editfns.c, fileio.c, filelock.c, sysdep.c, xrdb.c: Likewise.
753
754 * config.in: Regenerate.
755
756 2005-04-20 Kenichi Handa <handa@m17n.org>
757
758 * lisp.h (CHAR_TABLE_DEFAULT_SLOT_ASCII): New macro.
759 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_CONTROL): New macro.
760 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_GRAPHIC): New macro.
761
762 * alloc.c (make_sub_char_table): Argument changed to initial
763 value of the slots.
764
765 * data.c (Faref): Handle special slots used as default values of
766 ascii, eight-bit-control, eight-bit-control. Don't ignore a
767 default value set for a group of characters.
768 (Faset): Signal an error if IDXVAL is not a valid character code.
769 Make a sub-chartable with correct initial value.
770
771 * fns.c (Fset_char_table_range): Don't set slots used as default
772 values for ascii, eight-bit-control, eight-bit-graphic.
773 Don't call Faref with charset-id.
774 (Fset_char_table_default): Document how to treat normal character
775 argument. Handle special slots used as default values of ascii,
776 eight-bit-control, eight-bit-control. Make a sub chartable if
777 necessary.
778
779 2005-04-20 Kenichi Handa <handa@m17n.org>
780
781 * search.c (boyer_moore): Fix previous change.
782
783 2005-04-19 Kim F. Storm <storm@cua.dk>
784
785 * xdisp.c (setup_for_ellipsis): Reset saved_face_id to use default
786 face unless last visible char and first invisible char have the
787 same face. Also use default face if saved_face_id is undefined.
788
789 2005-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
790
791 * macgui.h (MacFontStruct): Remove member `fontname'. Add member
792 `full_name'.
793 [TARGET_API_MAC_CARBON] (MacFontStruct): Use type int for
794 mac_scriptcode member.
795
796 * macterm.c (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): Remove variables.
797 (syms_of_mac): Don't initialize them.
798 (Vmac_charset_info_alist): New variable.
799 (syms_of_mac): Defvar it.
800 (create_text_encoding_info_alist): New function.
801 (decode_mac_font_name, mac_to_x_fontname)
802 (x_font_name_to_mac_font_name, init_font_name_table): Don't hard
803 code the correspondence among XLFD charsets, Mac script codes, and
804 Emacs coding systems. Use Vmac_charset_info_alist and result of
805 create_text_encoding_info_alist instead.
806 (init_font_name_table) [TARGET_API_MAC_CARBON]: Use Font Manager
807 routines also on Mac OS Classic.
808 (init_font_name_table) [!TARGET_API_MAC_CARBON]:
809 Use add_font_name_table_entry.
810 (mac_do_list_fonts): Regard 0 in XLFD scaleble fields as
811 specified. Derive unspecified scalable fields from specified one.
812 (x_list_fonts): Consider Valternate_fontname_alist.
813 (kDefaultFontSize): Change value from 9 to 12.
814 (XLoadQueryFont): Get decoded font family, font face, and charset
815 from x_font_name_to_mac_font_name. Set full name of loaded font.
816 (mac_unload_font): Free `full_name' member.
817 (x_load_font): Don't try XLoadQueryFont if x_list_fonts returns
818 NULL. Copy full_name member of struct MacFontStruct to that of
819 struct font_info.
820
821 2005-04-19 Kim F. Storm <storm@cua.dk>
822
823 * xdisp.c (handle_stop): Set saved_face_id to current face if
824 selective_display_ellipsis_p so ellipsis will be shown in same
825 face as preceding text.
826 (setup_for_ellipsis): Don't set saved_face_id here.
827 (next_element_from_display_vector): Default to saved_face_id.
828
829 * fns.c (Fsafe_get): New function.
830 (syms_of_fns): Defsubr it.
831
832 * lisp.h (Fsafe_get): EXFUN it.
833
834 * xfaces.c (resolve_face_name): Use Fsafe_get to avoid redisplay
835 loops in case of bad face property lists. Limit number of face
836 alias lookups to 10 (in case of face alias loops).
837
838 2005-04-18 Kim F. Storm <storm@cua.dk>
839
840 * dispextern.h (struct glyph_row): New member overlay_arrow_bitmap.
841 It replaces the corresponding member from struct window, as a
842 window may now show multiple overlay arrows.
843 Remove member overlay_arrow_p, superseeded by overlay_arrow_bitmap.
844
845 * dispnew.c (row_equal_p, update_window_line, scrolling_window):
846 Compare overlay_arrow_bitmap than overlay_arrow_p members.
847
848 * fringe.c (draw_fringe_bitmap): Use overlay_arrow_bitmap from row
849 rather than from window.
850 (update_window_fringes): Compare overlay_arrow_bitmap rather than
851 overlay_arrow_p members.
852 (Ffringe_bitmaps_at_pos): Return fringe overlay_arrow_bitmap name
853 if not default.
854
855 * window.h (struct window): Remove member overlay_arrow_bitmap.
856
857 * window.c (make_window): Don't initialize overlay_arrow_bitmap.
858
859 * xdisp.c (overlay_arrow_string_or_property): Remove PBITMAP arg.
860 Calls changed. Don't check for overlay-arrow-bitmap property here.
861 (overlay_arrow_at_row): Remove PBITMAP arg. Instead, if left
862 fringe is present, return Lisp integer for bitmap (or -1 for default).
863 Fix value of overlay-arrow-bitmap property to be a symbol, use
864 lookup_fringe_bitmap to parse it.
865 (display_line): Change call to overlay_arrow_at_row. Store integer
866 return value as overlay bitmap in row rather than window.
867 Only show overlay arrow if row displays text, or if no other overlay
868 arrow is seen in window (if overlay marker is at point-max).
869
870 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
871
872 * xfaces.c (realize_x_face) [!HAVE_WINDOW_SYSTEM]: Return NULL.
873
874 2005-04-18 Lute Kamstra <lute@gnu.org>
875
876 * lread.c (Vloads_in_progress): Static.
877 * fns.c (Vloads_in_progress): Remove extern.
878 (load_in_progress): Add extern.
879 (Frequire): Use load_in_progress instead of Vloads_in_progress.
880
881 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
882
883 * xmenu.c (Fx_popup_menu): Initialize error_name to NULL.
884
885 2005-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
886
887 * macterm.c (XTread_socket): Don't beep on keyboard input even if
888 no frame is visible.
889
890 2005-04-16 Dan Nicolaescu <dann@ics.uci.edu>
891
892 * term.c (struct keys): Add support for shifted keys.
893
894 2005-04-16 Richard M. Stallman <rms@gnu.org>
895
896 * xdisp.c (with_echo_area_buffer): Delete WHICH < 0 case.
897 (set_message): Call with_echo_area_buffer with WHICH = 0.
898 (set_message_1): Erase the echo area buffer first thing.
899 (echo_area_display): Don't clear echo_message_buffer.
900
901 2005-04-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
902
903 * Makefile.in (mac.o): Depend on charset.h and coding.h.
904
905 * mac.c: Include charset.h and coding.h.
906 [TARGET_API_MAC_CARBON] (Qutf_8): Remove extern.
907 [TARGET_API_MAC_CARBON] (cfstring_create_with_string): New function.
908 [TARGET_API_MAC_CARBON] (Fmac_get_preference): Use it.
909
910 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
911
912 * image.c [MAC_OSX] (image_load_quartz2d): Likewise.
913
914 * macterm.c (x_autoselect_window_p): Remove variable.
915 (last_window): New variable.
916 (XTreassert_line_highlight, x_change_line_highlight):
917 Remove declarations.
918 (mac_focus_changed, x_detect_focus_change): New functions and
919 declarations.
920 (XTextExtents16, front_emacs_window): Remove function.
921 (mac_focus_frame): New function.
922 (XTmouse_position, do_menu_choice, do_zoom_window, XTread_socket)
923 (mac_check_for_quit_char): Use it instead of front_emacs_window.
924 (x_scroll_bar_report_motion): Obtain window from control owner.
925 (x_make_frame_invisible): Set window manager size hint.
926 (do_mouse_moved): Remove function.
927 (XTread_socket): Move its contents here. Generate select-window
928 event on mouse movement if needed. Use x_detect_focus_change on
929 activate/deactivate events. Don't deiconify frame or invalidate
930 window rectangle when dnd items are dropped.
931 Don't activate/deactivate root control.
932 (frame_highlight, frame_unhighlight): Activate/deactivate root
933 control here.
934 (syms_of_macterm): Delete DEFVAR_BOOL for x_autoselect_window_p.
935
936 * macterm.h (cfstring_create_with_string) [TARGET_API_MAC_CARBON]:
937 New extern.
938
939 2005-04-15 Luc Teirlinck <teirllm@auburn.edu>
940
941 * Makefile.in: Define new macro TOOLTIP_SUPPORT.
942 (lisp): Use it.
943 (SOME_MACHINE_LISP): Add tooltip.
944
945 2005-04-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
946
947 * mac.c [!TARGET_API_MAC_CARBON]: Include MacLocales.h.
948 Don't include TextEncodingConverter.h.
949 (mac_system_script_code, Vmac_system_locale): New variables.
950 (syms_of_mac): Defvar them.
951 (mac_get_system_locale): New function.
952
953 * macfns.c (x_set_name, x_set_title) [!TARGET_API_MAC_CARBON]:
954 Use ENCODE_SYSTEM to encode title bar string.
955 (x_create_tip_frame): Apply 2005-03-18 change for xfns.c.
956 (Fx_file_dialog) [TARGET_API_MAC_CARBON && !MAC_OSX]:
957 Use CFStringGetSystemEncoding to get system default string encoding.
958
959 * macterm.c [!TARGET_API_MAC_CARBON]: Don't include
960 TextEncodingConverter.h.
961
962 2005-04-13 Steven Tamm <steventamm@mac.com>
963
964 * macterm.c (syms_of_macterm): Remove redundant definition of
965 mac-pass-control-to-system.
966
967 2005-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
968
969 * window.c (Fset_window_configuration): Be careful when you choose
970 among several possible points for the new_current_buffer.
971
972 2005-04-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
973
974 * keyboard.c (poll_for_input) [SYNC_INPUT]: Don't call
975 poll_for_input_1. Set interrupt_input_pending to 1 instead.
976 (Qlanguage_change) [MAC_OS]: New variable.
977 (syms_of_keyboard) [MAC_OS]: Intern and staticpro it.
978 (kbd_buffer_get_event) [MAC_OS]: Make event for LANGUAGE_CHANGE_EVENT.
979
980 * macterm.c (mac_keyboard_text_encoding)
981 (current_mac_keyboard_text_encoding): Remove variables.
982 (XTread_socket): Store language-change event if keyboard script change
983 is detected. Don't convert input to `mac_keyboard_text_encoding'.
984 (syms_of_macterm): Delete DEFVAR_INT for mac-keyboard-text-encoding.
985
986 * termhooks.h (enum event_kind) [MAC_OS]: Add LANGUAGE_CHANGE_EVENT.
987
988 2005-04-10 Richard M. Stallman <rms@gnu.org>
989
990 * emacs.c (standard_args): Rename --bare-bones to --quick.
991 Add -D aka --basic-display.
992
993 * buffer.c (Fmake_indirect_buffer): Clear out some local variables.
994
995 2005-04-09 Richard M. Stallman <rms@gnu.org>
996
997 * keymap.c (where_is_internal): Convert a string used as event type
998 into "(any string)".
999
1000 * lread.c (Vloads_in_progress): Not static.
1001 * fns.c (Vloads_in_progress): Add extern.
1002 (Frequire): Don't do LOADHIST_ATTACH if Vloads_in_progress is nil.
1003
1004 2005-04-09 Thien-Thi Nguyen <ttn@surf.glug.org>
1005
1006 * dispnew.c (mirror_line_dance): Avoid crash if W2 is null.
1007
1008 2005-04-09 Lute Kamstra <lute@gnu.org>
1009
1010 * print.c (PRINTPREPARE): Check if the marker PRINTCHARFUN is
1011 within the accessible part of the buffer.
1012
1013 2005-04-09 Kim F. Storm <storm@cua.dk>
1014
1015 * lread.c (readevalloop): Add args START and END as region in
1016 current buffer to read. Callers changed.
1017 When specified, narrow to this region only when reading,
1018 not during eval. Track next point to read from during eval.
1019 Also restore point to "real" buffer position before eval.
1020 (Feval_region): Don't save excursion and restriction here, and
1021 don't narrow to region. Just pass region to readevalloop.
1022 Note: Point is now preserved even when PRINTFLAG is nil.
1023
1024 2005-04-08 Kim F. Storm <storm@cua.dk>
1025
1026 * xdisp.c (syms_of_xdisp): Init overlay-arrow-string to "=>".
1027
1028 2005-04-06 Kim F. Storm <storm@cua.dk>
1029
1030 * emacs.c (standard_args): Add -Q, --bare-bones, -bare-bones.
1031
1032 2005-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1033
1034 * mac.c (cfdate_to_lisp): Add `const' for variable `epoch_gdate'.
1035 (Fmac_get_preference): Doc fix.
1036
1037 * macfns.c (Fx_create_frame, x_create_tip_frame):
1038 Add "fontset-mac" to fallback font/fontsets.
1039
1040 2005-04-04 Kim F. Storm <storm@cua.dk>
1041
1042 * alloc.c (Fgarbage_collect): Call CHECK_CONS_LIST before and after gc.
1043
1044 * eval.c (Ffuncall): Always call CHECK_CONS_LIST on entry.
1045 Call it again after autoload.
1046
1047 2005-04-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1048
1049 * alloc.c (allocate_string_data): Call BLOCK_INPUT before calling
1050 mallopt.
1051
1052 * ralloc.c (r_alloc_init): Ditto.
1053
1054 2005-04-01 Kenichi Handa <handa@m17n.org>
1055
1056 * lisp.h (Vascii_upcase_table, Vascii_canon_table)
1057 (Vascii_eqv_table): Extern them.
1058
1059 * casetab.c (set_case_table): If standard is nonzero, setup
1060 Vascii_upcase_table, Vascii_canon_table, and Vascii_eqv_table.
1061
1062 * search.c (looking_at_1): Use current_buffer->case_canon_table,
1063 not DOWNCASE_TABLE.
1064 (string_match_1): Likewise.
1065 (fast_c_string_match_ignore_case): Use Vascii_canon_table, not
1066 Vascii_downcase_table.
1067 (fast_string_match_ignore_case): Likewise.
1068 (search_buffer): Fix checking of boyer-moore usability.
1069 (boyer_moore): Calculate translate_prev_byte1/2/3 in advance.
1070 No need of tranlating characters in PAT. Fix calculation of
1071 simple_translate.
1072
1073 2005-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
1074
1075 * xterm.c [HAVE_XAW3D]: Include ThreeD.h for XtNbeNiceToColormap.
1076 (x_create_toolkit_scroll_bar): Test XtNbeNiceToColormap before using it.
1077 Use XtNtopShadowPixel and XtNbottomShadowPixel.
1078 (x_set_toolkit_scroll_bar_thumb): Remove ugly old hack that didn't
1079 really work and that breaks with some versions of Xaw3d.
1080
1081 2005-03-31 Kenichi Handa <handa@m17n.org>
1082
1083 * coding.c (syms_of_coding): Fix previous change.
1084
1085 2005-03-30 Stefan Monnier <monnier@iro.umontreal.ca>
1086
1087 * fileio.c (search_embedded_absfilename): Fix last change.
1088
1089 2005-03-25 Kenichi Handa <handa@m17n.org>
1090
1091 * coding.c (syms_of_coding): Suggest to use set-coding-category in
1092 the docstring of coding-category-list.
1093
1094 2005-03-31 Kim F. Storm <storm@cua.dk>
1095
1096 * keyboard.c (Qmouse_fixup_help_message): New var.
1097 (syms_of_keyboard): Intern and staticpro it.
1098 (show_help_echo): Apply mouse-fixup-help-message to help string.
1099
1100 2005-03-30 Kim F. Storm <storm@cua.dk>
1101
1102 * xdisp.c (display_line): Allow multiple overlay arrows in window.
1103
1104 2005-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
1105
1106 * fileio.c (Fexpand_file_name): Use IS_DEVICE_SEP.
1107 (file_name_absolute_p): New fun, extracted from Ffile_name_absolute_p.
1108 (Ffile_name_absolute_p): Use it.
1109 (search_embedded_absfilename): New fun, extracted from
1110 Fsubstitute_in_file_name. Use file_name_absolute_p.
1111 Free the pw data after use.
1112 (Fsubstitute_in_file_name): Use it.
1113 After cutting a prefix, re-check file-name-handler.
1114
1115 2005-03-26 Lennart Borgman <lennart.borgman.073@student.lu.se>
1116
1117 * w32term.h (x_output): Add focus_state.
1118
1119 * w32term.c (x_focus_changed, w32_detect_focus_change): New functions.
1120 (w32_read_socket) [WM_SETFOCUS]: Call w32_detect_focus_change.
1121
1122 2005-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
1123
1124 * minibuf.c (Fminibuffer_complete_and_exit, Fself_insert_and_exit):
1125 Use Fexit_minibuffer.
1126 (Fexit_minibuffer): Mark it as no-return, deactivate the mark.
1127
1128 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
1129
1130 * dired.c (Ffile_attributes): Add a missing gcpro.
1131
1132 * alloc.c (make_number): The arg can be bigger than `int'.
1133 * lisp.h (make_number): Make prototype more precise.
1134
1135 * process.c, dired.c (Vfile_name_coding_system)
1136 (Vdefault_file_name_coding_system):
1137 * callproc.c (Vdoc_file_name, Vfile_name_coding_system)
1138 (Vdefault_file_name_coding_system): Remove unused declarations.
1139
1140 2005-03-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1141
1142 * xmenu.c (create_and_show_popup_menu): Just remove menu and return
1143 if it failed to pop up (Gnome "show pointer on ctrl" option makes
1144 menus fail to pop up).
1145
1146 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
1147
1148 * xdisp.c (get_next_display_element): Also use `\ ' & `\-' for latin-9.
1149 Just prepend a backslash without replacing the NBSP by an SPC.
1150
1151 2005-03-22 Kim F. Storm <storm@cua.dk>
1152
1153 * xfaces.c (lookup_derived_face): Add arg SIGNAL_P.
1154 * dispextern.h (lookup_derived_face): Fix prototype.
1155 * msdos.c (XMenuActivate): Fix call to lookup_derived_face.
1156
1157 * xdisp.c (handle_single_display_spec): Derive left-fringe and
1158 right-fringe face from fringe face.
1159
1160 * fringe.c (draw_fringe_bitmap_1, Fset_fringe_bitmap_face):
1161 Derive face from fringe face.
1162
1163 2005-03-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1164
1165 * xrdb.c (x_load_resources): Undo previous change (2005-03-18).
1166
1167 2005-03-22 David Kastrup <dak@gnu.org>
1168
1169 * textprop.c (Fnext_char_property_change)
1170 (Fprevious_char_property_change): Allow marker as limit.
1171 (Fnext_single_char_property_change)
1172 (Fprevious_single_char_property_change): Check that limit is a
1173 number in strings.
1174 (Fnext_single_char_property_change): Coerce position to integer.
1175 (Fprevious_single_char_property_change): Same here.
1176
1177 2005-03-21 Thien-Thi Nguyen <ttn@gnu.org>
1178
1179 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Define if undefined.
1180
1181 2005-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
1182
1183 * frame.c (Fignore_event): Remove.
1184 (syms_of_frame): Don't defsubr it.
1185
1186 * keyboard.c (keys_of_keyboard): Just use `ignore' instead of the
1187 redundant `ignore-event'.
1188
1189 2005-03-19 Eli Zaretskii <eliz@gnu.org>
1190
1191 * unexec.c (write_segment, unexec): Move these functions to avoid
1192 forward references (which cause errors with "gcc -gcoff").
1193
1194 2005-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1195
1196 * xfns.c (x_create_tip_frame): Remove setting of Vx_resource_name so
1197 that it doesn't become "tooltip". The specbind is enough.
1198
1199 * xrdb.c (x_load_resources): Use different char *helv when I18N
1200 is present.
1201
1202 2005-03-17 Kenichi Handa <handa@m17n.org>
1203
1204 * coding.c (syms_of_coding): Docstring of coding-category-list fixed.
1205
1206 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
1207
1208 * xfaces.c (x_update_menu_appearance) [HAVE_X_I18N]:
1209 Use xic_create_fontsetname even for non-Motif menus.
1210 Don't forget to free the fontsetname.
1211
1212 * xfns.c (xic_create_fontsetname): Add a final catch-all font pattern.
1213
1214 2005-03-17 Richard M. Stallman <rms@gnu.org>
1215
1216 * dispnew.c (mirror_line_dance): Set W2 according to FRAME_FROM.
1217
1218 * fileio.c (Fcopy_file, Frename_file, Fadd_name_to_file)
1219 (Fmake_symbolic_link): Use G to read the new file name.
1220
1221 * callint.c (Finteractive): Document G option.
1222 (Fcall_interactively): Implement G option.
1223
1224 * buffer.c (buffer_lisp_local_variables): New function,
1225 broken out from Fbuffer_local_variables.
1226 (clone_per_buffer_values): Use buffer_lisp_local_variables.
1227
1228 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
1229
1230 * xfns.c (xic_create_fontsetname): Add `motif' argument.
1231 Always return a freshly allocated string.
1232 (xic_create_xfontset): Adjust call.
1233
1234 * xfaces.c (x_update_menu_appearance) [USE_MOTIF]:
1235 Use xic_create_fontsetname to create a fontset so utf-8 locales work.
1236 (dump_realized_face): Fix warning.
1237
1238 * emacs.c (Fkill_emacs): YAILOM.
1239
1240 * frame.c (Fignore_event): Fix ancient obscure C-u handling bug.
1241
1242 2005-03-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1243
1244 * mac.c (HASHKEY_TERMINAL): Remove.
1245 (HASHKEY_MAX_NID): New macro.
1246 (xrm_q_get_resource_1): Rename from xrm_q_get_resource. Add extra
1247 argument.
1248 (xrm_q_get_resource): Call xrm_q_get_resource_1 with extra argument.
1249 (xrm_create_database, xrm_q_put_resource)
1250 (xrm_merge_string_database, xrm_q_get_resource_1)
1251 (xrm_q_get_resource): Change resource database representation so
1252 that it may not use multiple hash tables for a single database.
1253 [TARGET_API_MAC_CARBON] (xrm_cfproperty_list_to_value): YAILOM.
1254
1255 2005-03-16 Stefan Monnier <monnier@iro.umontreal.ca>
1256
1257 * xmenu.c (ENCODE_MENU_STRING) [HAVE_X_I18N]: Use ENCODE_SYSTEM.
1258
1259 * coding.h (ENCODE_SYSTEM, DECODE_SYSTEM) [!WINDOWSNT]: Use the
1260 locale-coding-system, as was already done for WINDOWSNT.
1261
1262 * keyboard.c (read_char): Only do the 7-bit-meta -> 27-bit-meta
1263 translation for chars in the 0-255 range.
1264
1265 2005-03-16 Lute Kamstra <lute@gnu.org>
1266
1267 * floatfns.c (Ffloor): Doc fix.
1268
1269 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1270
1271 * mac.c: Include macterm.h instead of directly including Carbon.h.
1272 [TARGET_API_MAC_CARBON] (Qstring, Qnumber, Qboolean, Qdate, Qdata)
1273 (Qarray, Qdictionary): New variables.
1274 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
1275 [TARGET_API_MAC_CARBON] (Qutf_8): Add extern.
1276 [TARGET_API_MAC_CARBON] (DECODE_UTF_8): New macro.
1277 [TARGET_API_MAC_CARBON] (struct cfdict_context): New struct used
1278 in callback for CFDictionaryApplyFunction.
1279 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
1280 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
1281 (cfobject_desc_to_lisp, cfdictionary_add_to_list)
1282 (cfdictionary_puthash, cfproperty_list_to_lisp): New functions.
1283 [TARGET_API_MAC_CARBON] (Fmac_get_preference): New function.
1284 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
1285 (P, LOOSE_BINDING, SINGLE_COMPONENT, HASHKEY_TERMINAL): New macro.
1286 (skip_white_space, parse_comment, parse_include_file)
1287 (parse_binding, parse_component, parse_resource_name, parse_value)
1288 (parse_resource_line, xrm_create_database, xrm_q_put_resource)
1289 (xrm_merge_string_database, xrm_q_get_resource, xrm_get_resource)
1290 (xrm_cfproperty_list_to_value, xrm_get_preference_database):
1291 New functions.
1292
1293 * macfns.c (mac_get_rdb_resource): Remove function.
1294 (x_get_string_resource): Use xrm_get_resource.
1295
1296 * macgui.h (XrmDatabase): Typedef to Lisp_Object.
1297
1298 * macterm.c (x_list_fonts): FONT-LIST-CACHE is now cadr part of
1299 name_list_element.
1300 (mac_make_rdb): Create resource database from preferences and
1301 argument string.
1302 (mac_term_init): Save resource database to cddr part of
1303 name_list_element.
1304
1305 * macterm.h (xrm_merge_string_database, xrm_get_resource)
1306 (xrm_get_preference_database): Add externs.
1307 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
1308 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
1309 (cfobject_desc_to_lisp, cfproperty_list_to_lisp): Likewise.
1310
1311 * process.c (init_process): Change `#ifdef DARWIN' to `#if
1312 defined (DARWIN) || defined (MAC_OSX)'
1313
1314 * s/darwin.h (DARWIN): Don't define.
1315
1316 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1317
1318 * macfns.c (Qhyper, Qsuper, Qmeta, Qalt, Qctrl, Qcontrol, Qshift):
1319 Remove unused variables.
1320 (syms_of_macfns): Don't initialize them. Likewise for
1321 Qface_set_after_frame_default. Defvar and initialize
1322 Vx_window_horizontal_drag_shape.
1323 (x_set_mouse_color): Change mouse pointer shape.
1324 (mac_window) [!MAC_OSX]: Create root control.
1325 (Fx_create_frame): Remove initializations of mouse pointer shapes.
1326 (hourglass_started): New function (from xfns.c).
1327 (start_hourglass, cancel_hourglass): Put function body in #ifdef
1328 MAC_OSX.
1329 (show_hourglass) [TARGET_API_MAC_CARBON]: Create progress
1330 indicator for each non-tooltip frame if needed, and show it.
1331 (hide_hourglass) [TARGET_API_MAC_CARBON]: Hide progress indicators.
1332
1333 * macgui.h [!TARGET_API_MAC_CARBON]: Include Appearance.h and
1334 Controls.h. Use ThemeCursor instead of CursHandle.
1335
1336 * macterm.c (activate_scroll_bars, deactivate_scroll_bars):
1337 Remove functions and declarations.
1338 (mac_set_colors): Take argument for saving background color.
1339 All callers changed.
1340 (XDrawLine, XClearArea, mac_draw_bitmap, XFillRectangle)
1341 (mac_draw_rectangle, mac_draw_string_common): Save and Restore
1342 background color.
1343 (x_update_end, mac_do_track_drag): Don't reset background color.
1344 (mac_define_frame_cursor) [!TARGET_API_MAC_CARBON]:
1345 Use SetThemeCursor.
1346 (x_set_window_size) [TARGET_API_MAC_CARBON]: Move progress
1347 indicator control to the upper-right corner of the window.
1348 (arrow_cursor) [!TARGET_API_MAC_CARBON]: Remove variable.
1349 (do_init_managers) [!TARGET_API_MAC_CARBON]: Don't initialize it.
1350 (do_window_update): Update controls after updating content area.
1351 (mac_handle_window_event): Remove unused extern.
1352 (XTread_socket): Check both control handle and control part code
1353 to determine whether a scroll bar is clicked. Activate/deactivate
1354 root control instead of contained scroll bar controls.
1355 (make_mac_terminal_frame): Use ThemeCursor constants.
1356
1357 * macterm.h (struct mac_output) [TARGET_API_MAC_CARBON]:
1358 New member hourglass_control.
1359 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): New defines.
1360 (activate_scroll_bars, deactivate_scroll_bars): Remove declarations.
1361
1362 2005-03-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1363
1364 * macterm.c (keycode_to_xkeysym_table): Change mapping so that it
1365 coincides with that in Apple X11 except `clear', `enter' on
1366 laptops, and fn + `enter' on laptops.
1367
1368 2005-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
1369
1370 * xmenu.c (ENCODE_MENU_STRING): Explicitly use string_make_unibyte.
1371 (list_of_panes, list_of_items, Fx_popup_menu): Use XCAR/XCDR.
1372 (digest_single_submenu, xmenu_show): Use ENCODE_MENU_STRING.
1373
1374 * xfns.c (xic_defaut_fontset): New constant.
1375 (xic_create_fontsetname): New function.
1376 Extracted from create_frame_xic. Try to generate a slightly
1377 better fontset.
1378 (xic_create_xfontset): Use it.
1379 (create_frame_xic): Simplify.
1380
1381 2005-03-11 Stefan Monnier <monnier@iro.umontreal.ca>
1382
1383 * fileio.c (Fmake_symbolic_link): Fix last change.
1384
1385 2005-03-11 Richard M. Stallman <rms@gnu.org>
1386
1387 * fileio.c (Frename_file, Fadd_name_to_file)
1388 (Fmake_symbolic_link): If NEWNAME or LINKNAME is a directory,
1389 expand the basename of FILE relative to it.
1390
1391 2005-03-11 Kenichi Handa <handa@m17n.org>
1392
1393 * fileio.c (Finsert_file_contents): Call Fcheck_coding_system
1394 before calling setup_coding_system so that autoloading of a coding
1395 system work.
1396
1397 2005-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1398
1399 * xfns.c (hourglass_started): New function.
1400
1401 * dispextern.h: Declare hourglass_started.
1402
1403 * keyboard.c (Fexecute_extended_command): Restart hourglass
1404 after call to Fcompleting_read if already started.
1405
1406 * gtkutil.c (xg_update_scrollbar_pos): Call x_sync so that the
1407 GTK main loop is entered in xterm.c, thus doing the redraw.
1408
1409 2005-03-10 Kim F. Storm <storm@cua.dk>
1410
1411 * xdisp.c (pos_visible_p): Fix X value in last line of buffer.
1412
1413 2005-03-08 Kenichi Handa <handa@m17n.org>
1414
1415 * frame.c (x_set_font): Call set_default_ascii_font if an
1416 available font is found.
1417
1418 * fontset.c (set_default_ascii_font): New function.
1419 (syms_of_fontset): Don't set FONTSET_ASCII (Vdefault_fontset) here.
1420
1421 * fontset.h (set_default_ascii_font): Extern it.
1422
1423 2005-03-07 Kim F. Storm <storm@cua.dk>
1424
1425 * xdisp.c (CLEAR_IMAGE_CACHE_COUNT): New const.
1426 (clear_image_cache_count): New var.
1427 (redisplay_internal): Don't clear face and image caches in the
1428 middle of redisplay; do it afterwards.
1429
1430 * blockinput.h (TOTALLY_UNBLOCK_INPUT): Avoid dangling else.
1431
1432 * xdisp.c (notice_overwritten_cursor): Check that phys_cursor.vpos
1433 is valid. If not, clear phys_cursor_on_p and return.
1434
1435 2005-03-07 Andreas Schwab <schwab@suse.de>
1436
1437 * blockinput.h (UNBLOCK_INPUT_TO): Always call UNBLOCK_INPUT.
1438
1439 2005-03-06 Richard M. Stallman <rms@gnu.org>
1440
1441 * keyboard.c (Ftop_level): Let Fthrow deal with UNBLOCK_INPUT.
1442
1443 * eval.c (unwind_to_catch): Use UNBLOCK_INPUT_TO.
1444 (Feval, Ffuncall): Use CHECK_CONS_LIST.
1445
1446 * lisp.h (CHECK_CONS_LIST): New macro (two definitions).
1447
1448 * blockinput.h (UNBLOCK_INPUT_TO): New macro.
1449 (TOTALLY_UNBLOCK_INPUT): Handle a pending signal if any.
1450
1451 2005-03-05 Juri Linkov <juri@jurta.org>
1452
1453 * emacs.c (USAGE1): Replace Info node name "command arguments"
1454 with "emacs invocation".
1455 (USAGE3): Fix usage of `--color=MODE' which actually doesn't
1456 allow arguments `--color' and `MODE' to be separated by space.
1457 Add --no-blinking-cursor, -nbc.
1458 (standard_args): Add -nbc, --no-blinking-cursor.
1459
1460 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
1461
1462 * s/vms.h: Define NO_HYPHENS_IN_FILENAMES.
1463 * s/vms4-4.h, s/vms5-5.h: Undefine NO_HYPHENS_IN_FILENAMES.
1464 * fileio.c (Fexpand_file_name) [VMS]:
1465 Use NO_HYPHENS_IN_FILENAMES, not VMS4_4.
1466 * doc.c (munge_doc_file_name) [VMS]: Likewise.
1467 (Fsnarf_documentation): Call munge_doc_file_name.
1468
1469 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
1470
1471 * s/vms.h (FILE_SYSTEM_CASE): New macro.
1472 * fileio.c (Fexpand_file_name) [VMS]: Don't upcase the name
1473 "manually"; this is now handled generally via FILE_SYSTEM_CASE.
1474
1475 2005-03-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1476
1477 * emacs.c (main): Change `#ifdef HAVE_CARBON' to `#if
1478 defined (MAC_OSX) && defined (HAVE_CARBON)'.
1479
1480 * image.c [!MAC_OSX && TARGET_API_MAC_CARBON]: Include QuickTime.h.
1481
1482 * mac.c [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
1483 [!MAC_OSX] (select) [TARGET_API_MAC_CARBON]: Use ReceiveNextEvent.
1484 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): New functions.
1485 (mac_clear_font_name_table): Move extern to macterm.h.
1486
1487 * macfns.c (install_window_handler): Move extern to macterm.h.
1488 (Fx_file_dialog): Check STRINGP (default_filename) to see it is
1489 valid. Don't check !NILP (dir) because it is already checked with
1490 CHECK_STRING.
1491 (Fx_file_dialog) [!MAC_OSX]: Use FSSpec instead of FSRef for
1492 specifying the default location and obtaining the selected filename.
1493
1494 * macgui.h [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
1495
1496 * macmenu.c [TARGET_API_MAC_CARBON]: Don't include headers that
1497 are included via Carbon.h.
1498
1499 * macterm.c [TARGET_API_MAC_CARBON && !MAC_OSX]:
1500 Define USE_CARBON_EVENTS to 1.
1501 (qd) [__MRC__ && TARGET_API_MAC_CARBON]: Don't declare.
1502 (x_free_frame_resources): Call remove_window_handler for
1503 non-tooltip windows.
1504 [TARGET_API_MAC_CARBON]: Don't include headers that are included
1505 via Carbon.h.
1506 [TARGET_API_MAC_CARBON] (mac_do_track_dragUPP)
1507 (mac_do_receive_dragUPP): New variables.
1508 (mac_handle_service_event, init_service_handler): Put declarations
1509 and definitions in #ifdef MAC_OSX.
1510 (install_window_handler) [TARGET_API_MAC_CARBON]: Create UPPs for
1511 drag-and-drop handler functions and register them.
1512 (remove_window_handler): New function.
1513 (do_ae_open_documents, mac_do_receive_drag) [!MAC_OSX]:
1514 Use fsspec_to_posix_pathname.
1515 (main): Change #if !TARGET_API_MAC_CARBON to #ifdef MAC_OS8.
1516 (XTread_socket) [!MAC_OSX]: Don't pass keyboard events to TSM.
1517 [MAC_OS8] (make_mac_terminal_frame) [TARGET_API_MAC_CARBON]:
1518 Set default cursors.
1519 (mac_initialize) [USE_CARBON_EVENTS && !MAC_OSX] : Don't call
1520 init_service_handler or init_quit_char_handler.
1521 (mac_initialize) [!MAC_OSX]: Don't call MakeMeTheFrontProcess.
1522
1523 * macterm.h (install_window_handler, remove_window_handler)
1524 (posix_pathname_to_fsspec, fsspec_to_posix_pathname)
1525 (mac_clear_font_name_table): New externs.
1526
1527 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
1528
1529 * fileio.c (FILE_SYSTEM_CASE): Define macro if not already defined.
1530 (Ffile_name_directory): Use FILE_SYSTEM_CASE unconditionally.
1531 (Fexpand_file_name): Likewise.
1532
1533 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
1534
1535 * emacs.c (Fkill_emacs): Use EXIT_SUCCESS;
1536 no longer special-case VMS. Add bogus return value.
1537
1538 2005-03-02 Kim F. Storm <storm@cua.dk>
1539
1540 * dispextern.h (XASSERTS): Define to 0 if not already defined.
1541 (xassert) [!XASSERTS]: Define dummy version.
1542
1543 2005-03-02 Kim F. Storm <storm@cua.dk>
1544
1545 * xdisp.c (redisplay_window): YABX (yet another bogus xassert).
1546 Reported by David Kastrup.
1547
1548 2005-03-01 Ehud Karni <ehud@unix.mvs.co.il>
1549
1550 * xdisp.c (get_next_display_element): Fix control and escape
1551 glyph from display vector.
1552
1553 2005-03-01 Stefan Monnier <monnier@iro.umontreal.ca>
1554
1555 * keyboard.c (Fposn_at_x_y): Check integerness of X and Y.
1556
1557 2005-02-27 Richard M. Stallman <rms@gnu.org>
1558
1559 * xdisp.c (fast_find_position): Rename END to BEG.
1560 (syms_of_xdisp) <menu-bar-update-hook>: Doc fix.
1561
1562 2005-02-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1563
1564 * gtkutil.c (xg_resize_outer_widget): Remove unneeded call to
1565 gtk_window_resize and x_wm_set_size_hint.
1566
1567 2005-02-25 Kim F. Storm <storm@cua.dk>
1568
1569 * dispextern.h (OVERLAY_STRING_CHUNK_SIZE): Increase from 3 to 16.
1570
1571 * xdisp.c (init_from_display_pos): Don't read past end of
1572 it->overlay_strings array.
1573
1574 2005-02-25 Stephan Stahl <stahl@eos.franken.de> (tiny change)
1575
1576 * buffer.c (syms_of_buffer): Fix typo.
1577
1578 2005-02-23 Lute Kamstra <lute@gnu.org>
1579
1580 * buffer.c (Foverlay_buffer): Doc fix.
1581
1582 2005-02-22 Kim F. Storm <storm@cua.dk>
1583
1584 * minibuf.c (Ftry_completion, Fall_completions): Allow both string
1585 and symbol keys in alists and hash tables.
1586
1587 * xdisp.c (fast_find_position): Fix search for start of overlay.
1588
1589 2005-02-21 Kim F. Storm <storm@cua.dk>
1590
1591 * window.c (window_scroll_pixel_based): When scrolling backwards,
1592 handle partial visible line at end of window even when we hit PT.
1593
1594 2005-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
1595
1596 * keymap.h: Declare Fcurrent_active_maps, used in doc.c.
1597
1598 2005-02-21 Kim F. Storm <storm@cua.dk>
1599
1600 * xdisp.c (move_it_vertically_backward): Eliminate two xasserts.
1601 I think those asserts are bogus if buffer contains invisible text
1602 or images.
1603
1604 2005-02-21 David Kastrup <dak@gnu.org>
1605
1606 * gtkutil.c (xg_create_frame_widgets): UNBLOCK_INPUT on error.
1607
1608 2005-02-20 Kim F. Storm <storm@cua.dk>
1609
1610 * xdisp.c (pos_visible_p): Be sure to move to the specified
1611 position. Always get the full ascent / descent of the
1612 corresponding row, to return reliable rtop and rbot values.
1613 (back_to_previous_visible_line_start): Fix 2005-01-18 change.
1614 Must look one character back, as back_to_previous_line_start
1615 returns position after the newline.
1616 (move_it_vertically_backward): Fix heuristic for when to move further
1617 back in case line_height * 2/3 is larger than window height.
1618 (cursor_row_fully_visible_p): Rename make_cursor_line_fully_visible_p
1619 as it does not do anything anymore. Add arg current_matrix_p to
1620 use current matrix rather than desired matrix when set.
1621 (try_cursor_movement): Don't scroll to make cursor row fully
1622 visible if cursor didn't move. This avoids unexpected recentering
1623 in case of blinking cursor or accepting process output.
1624 Use current matrix to check cursor row visibility.
1625 (redisplay_window): Fix whether to recenter or move to top in case
1626 cursor line is taller than window height.
1627 (find_first_unchanged_at_end_row): Stop search if we reach a row
1628 which not enabled (instead of abort).
1629
1630 2005-02-18 Kim F. Storm <storm@cua.dk>
1631
1632 * xfaces.c (Finternal_set_lisp_face_attribute): Allow :color property
1633 to be nil in a :box attribute value list; customize prints that
1634 as lisp value when no box color is specified.
1635
1636 * .gdbinit (pitx, pit): Pretty print display iterator.
1637 (prowx, prow): Pretty print glyph row.
1638 (pcursorx, pcursor): Pretty print a window cursor.
1639 (pwinx, pwin): Pretty print struct window.
1640
1641 2005-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
1642
1643 * alloc.c (BLOCK_BYTES): Harmless typo.
1644
1645 2005-02-17 Andreas Schwab <schwab@suse.de>
1646
1647 * xfns.c (hack_wm_protocols): Use correct type for last parameter
1648 of XGetWindowProperty to avoid aliasing issues.
1649 (Fx_window_property): Likewise.
1650
1651 * xselect.c (Fx_disown_selection_internal): Use union of struct
1652 input_event and struct selection_input_event to avoid aliasing issues.
1653
1654 * xterm.c (handle_one_xevent): Use union of struct input_event and
1655 struct selection_input_event to avoid aliasing issues.
1656 (SET_SAVED_MENU_EVENT): Adapt reference to inev.
1657
1658 2005-02-17 Kim F. Storm <storm@cua.dk>
1659
1660 * dispextern.h (enum it_method): New enum.
1661 (GET_FROM_*): Its members.
1662 (struct it): Change member method from function pointer to enum.
1663
1664 * xdisp.c (check_it, init_from_display_pos, handle_stop)
1665 (setup_for_ellipsis, handle_single_display_spec)
1666 (handle_composition_prop, next_overlay_string)
1667 (get_overlay_strings, reseat_1, reseat_to_string)
1668 (next_element_from_ellipsis, BUFFER_POS_REACHED_P)
1669 (in_display_vector_p, display_line, get_next_display_element):
1670 Change it->method from function pointer to enum.
1671 (get_next_element): New array to map it->method to function.
1672 (get_next_display_element): Use it.
1673 (set_iterator_to_next): Use switch instead of if/else chain.
1674
1675 2005-02-15 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
1676
1677 * w32select.c: Summary: Thorough rework to implement Unicode
1678 clipboard operations and delayed rendering.
1679
1680 Drop last_clipboard_text and related code, keep track of
1681 ownership via clipboard_owner instead. Drop old #if0 sections.
1682
1683 (DEFAULT_LCID, ANSICP, OEMCP, QUNICODE, QANSICP, QOEMCP)
1684 (clipboard_owner, modifying_clipboard, cfg_coding_system)
1685 (cfg_codepage, cfg_lcid, cfg_clipboard_type, current_text)
1686 (current_coding_system, current_requires_encoding)
1687 (current_num_nls, current_clipboard_type, current_lcid):
1688 New static variables.
1689
1690 (convert_to_handle_as_ascii, convert_to_handle_as_coded)
1691 (render, render_all, run_protected, lisp_error_handler)
1692 (owner_callback, create_owner, setup_config)
1693 (enum_locale_callback, cp_from_locale, coding_from_cp):
1694 New local functions.
1695
1696 (term_w32select, globals_of_w32select): New global functions.
1697
1698 (Fw32_set_clipboard_data): Ignore parameter FRAME, use
1699 clipboard_owner instead. Use delayed rendering and provide
1700 all text formats. Provide CF_LOCALE if necessary.
1701
1702 (Fw32_get_clipboard_data): Handle CF_UNICODETEXT and
1703 CF_LOCALE. Fall back to CF_TEXT, if CF_UNICODETEXT is not
1704 available. Force DOS line-ends for decoding.
1705
1706 (Fx_selection_exists_p): Handle CF_UNICODETEXT.
1707
1708 (syms_of_w32select): Init and register new variables.
1709
1710 * w32.h: Add prototypes for globals_of_w32select and
1711 term_w32select. Make the neighboring K&R declarations into
1712 prototypes, too.
1713
1714 * emacs.c: Include w32.h to get function prototypes.
1715 (main): Call globals_of_w32select.
1716
1717 * w32.c (term_ntproc): Call term_w32select.
1718
1719 * s/ms-w32.h: Guard MSC-specific #pragmas with an #ifdef.
1720
1721 2005-02-16 Kim F. Storm <storm@cua.dk>
1722
1723 * xdisp.c (BUFFER_POS_REACHED_P): Return true if pos reached and
1724 at end of display vector.
1725
1726 2005-02-15 Richard M. Stallman <rms@gnu.org>
1727
1728 * xdisp.c (get_next_display_element): Fix escape-glyph criterion
1729 for mode and header lines.
1730
1731 * lread.c (syms_of_lread) <user-init-file>: Doc fix.
1732
1733 * keymap.h (describe_map_tree): Change decl.
1734
1735 * keyboard.c (command_loop_1): Always use safe_run_hooks
1736 to run Qdeferred_action_function.
1737
1738 * keymap.c (describe_map_tree): New arg MENTION_SHADOW. Calls changed.
1739 (describe_map, describe_vector): Likewise. When it's 1,
1740 don't omit shadowed bindings, instead mark them as shadowed.
1741
1742 * doc.c (Fsubstitute_command_keys): Compute list of shadowing maps
1743 for describe_map_tree. Pass 1 for MENTION_SHADOW.
1744
1745 * data.c (Fsetq_default): Allow no arg case.
1746
1747 2005-02-14 Kenichi Handa <handa@m17n.org>
1748
1749 * coding.c (encode_coding_string): Always return a unibyte string.
1750 If NOCOPY is nonzero and there's no need of encoding, make STR
1751 unibyte directly.
1752
1753 * xselect.c (lisp_data_to_selection_data): If OBJ is a non-ASCII
1754 multibyte string, signal an error instead of aborting.
1755
1756 2005-02-12 Dan Nicolaescu <dann@ics.uci.edu>
1757
1758 * keyboard.c: If HAVE_FCNTL_H include fcntl.h.
1759
1760 2005-02-12 Kim F. Storm <storm@cua.dk>
1761
1762 * xdisp.c (expose_window): Don't fix overlaps for mode lines.
1763
1764 2005-02-10 Kim F. Storm <storm@cua.dk>
1765
1766 * xdisp.c (try_window_id): Set first_unchanged_at_end_row to NULL
1767 if it moves outside window or it doesn't display text.
1768
1769 2005-02-09 Kim F. Storm <storm@cua.dk>
1770
1771 * undo.c (Fprimitive_undo): Check that undo function does not
1772 switch buffer.
1773
1774 2005-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1775
1776 * xselect.c (selection_data_to_lisp_data): For the special case
1777 type == XA_ATOM, data contains array of int, not array of Atom.
1778 (x_property_data_to_lisp, selection_data_to_lisp_data):
1779 Comment update: data must be array of int for format == 32.
1780
1781 2005-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
1782
1783 * undo.c (Fprimitive_undo): Check veracity of delta,start,end.
1784
1785 2005-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1786
1787 * xfns.c (Fx_change_window_property): Use long array when format is 32.
1788 (Fx_window_property): If format is 32 and long is bigger than 32 bits,
1789 convert long array returned from XGetWindowProperty to an int array.
1790 (x_set_tool_bar_lines): Check that width and height is greater than
1791 zero before clearing area.
1792
1793 * xselect.c (x_reply_selection_request): Pass long array to
1794 XChangeProperty so that 64 bit longs are handeled correctly.
1795 (x_get_window_property): If format is 32 and long is bigger than 32
1796 bits convert data from XGetWindowProperty from long array to int array.
1797 (lisp_data_to_selection_data): When the input is a vector and the
1798 format is 32, allocate a long array even if long is bigger than 32 bits.
1799 (x_fill_property_data): Use char, short and long as the man page
1800 for XChangeProperty specifies. This way the data returned is OK for
1801 both 32 and 64 bit machines.
1802 (x_handle_dnd_message): Calculate size correctly even for 64 bit
1803 machines.
1804 (Fx_send_client_event): Undo change from 2005-02-05,
1805 x_fill_property_data now handles that case.
1806
1807 * xfns.c (Fx_backspace_delete_keys_p): Add comment about the
1808 reason for the approach in the code.
1809
1810 2005-02-07 Kim F. Storm <storm@cua.dk>
1811
1812 * undo.c (Fprimitive_undo): Record max one dummmy apply element.
1813
1814 2005-02-06 Richard M. Stallman <rms@gnu.org>
1815
1816 * eval.c (Frun_hook_with_args)
1817 (Frun_hook_with_args_until_success)
1818 (Frun_hook_with_args_until_failure): Doc fixes.
1819
1820 2005-02-05 Andreas Schwab <schwab@suse.de>
1821
1822 * sysdep.c (sys_subshell): Properly terminate execlp argument list.
1823
1824 2005-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1825
1826 * xselect.c (Fx_send_client_event, x_handle_dnd_message): Handle
1827 the longs in a XClientMessageEvent correctly when long is 64 bits.
1828
1829 2005-02-05 Eli Zaretskii <eliz@gnu.org>
1830
1831 * xfaces.c (face_color_supported_p): Use HAVE_WINDOW_SYSTEM
1832 instead of HAVE_X_WINDOWS, for non-X windowed sessions.
1833
1834 2005-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1835
1836 * xmenu.c (menubar_selection_callback): Force out GTK buffered
1837 events so the menu event comes after them. This is to prevent sit-for
1838 from exiting on buffered events directly after a menu selection,
1839 lisp code for Help => About Emacs uses sit-for.
1840
1841 * gtkutil.c (create_menus): Connect selection-done event instead of
1842 the deactivate event to deactivate_cb. This will make the last
1843 leave event come before the call to deactivate_cb, so the leave
1844 event does not make sit-for exit after a menu selection.
1845
1846 2005-02-03 Kim F. Storm <storm@cua.dk>
1847
1848 * dispnew.c (build_frame_matrix_from_leaf_window)
1849 [!GLYPH_DEBUG]: Fix xassert.
1850
1851 * xfaces.c (x_free_gc) [!GLYPH_DEBUG]: Fix xassert.
1852
1853 * xfns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
1854
1855 2005-02-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1856
1857 * mac.c: Use MAC_OS_X_VERSION_MAX_ALLOWED to conditionalize by
1858 the compiling OS version.
1859
1860 * macfns.c (x_create_tip_frame): Likewise.
1861
1862 * macterm.c (mac_draw_string_common, x_make_frame_visible): Likewise.
1863
1864 2005-02-03 Richard M. Stallman <rms@gnu.org>
1865
1866 * xterm.c (x_error_quitter): On GCC 3 and up, specify noinline.
1867
1868 * xdisp.c (echo_area_display): Clear echo_message_buffer.
1869
1870 * buffer.c (Fbury_buffer): Doc fix.
1871
1872 2005-02-02 Steven Tamm <steventamm@mac.com>
1873
1874 * macfns.c (unwind_create_frame): Fix compile error due to
1875 xassert being uncondition, but predicate is.
1876 * dispnew.c (update_window): Fix compile error due to
1877 xassert being uncondition, but predicate is.
1878
1879 2005-02-02 Miles Bader <miles@gnu.org>
1880
1881 * dispextern.h (xassert): Enable unconditionally.
1882
1883 2005-02-02 Kim F. Storm <storm@cua.dk>
1884
1885 * undo.c (Fprimitive_undo): Fix dummy apply undo entry.
1886
1887 2005-02-02 Kenichi Handa <handa@m17n.org>
1888
1889 * casefiddle.c (casify_object): Enable changing characters of
1890 different byte length.
1891 (casify_region): Fix loop condition, args to replace_range_2, and
1892 update opoint_byte.
1893
1894 * insdel.c (replace_range_2): Fix bugs in adjusting markers and point.
1895
1896 2005-02-01 Kim F. Storm <storm@cua.dk>
1897
1898 * xdisp.c (back_to_previous_visible_line_start): Reset iterator
1899 stack before calling handle_display_prop.
1900
1901 2005-01-31 Kim F. Storm <storm@cua.dk>
1902
1903 * undo.c (Qapply): New lisp var.
1904 (syms_of_undo): Intern and staticpro it.
1905 (Fprimitive_undo): Support formats (apply FUNNAME . ARGS) and
1906 (apply DELTA BEG END FUNNAME . ARGS) instead of (FUNNAME . ARGS).
1907
1908 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
1909
1910 2005-01-30 Jesper Harder <harder@phys.au.dk>
1911
1912 * macterm.c (syms_of_macterm) <mac-reverse-ctrl-meta>
1913 <mac-emulate-three-button-mouse>: Fix docstring indentation.
1914
1915 2005-01-29 Luc Teirlinck <teirllm@auburn.edu>
1916
1917 * undo.c (syms_of_undo) <undo-outer-limit>: Doc update.
1918 Increase value to 3 Meg.
1919
1920 2005-01-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1921
1922 * xfns.c (show_hourglass): Use FRAME_X_WINDOW as parent for GTK,
1923 button events are not received otherwise.
1924
1925 2005-01-29 Richard M. Stallman <rms@gnu.org>
1926
1927 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
1928
1929 * undo.c (Fprimitive_undo): Handle (FUNNAME . ARGS) by calling FUNNAME.
1930
1931 2005-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
1932
1933 * keymap.c (access_keymap): YAILOM.
1934
1935 2005-01-27 Kim F. Storm <storm@cua.dk>
1936
1937 * xdisp.c (get_phys_cursor_geometry): New function to calculate
1938 phys cursor position and size for hollow cursor. Position is
1939 aligned with get_glyph_string_clip_rect and ensures that a hollow
1940 cursor is shown, even when the actual glyph is not visible.
1941
1942 * dispextern.h (get_phys_cursor_geometry): Add prototype.
1943
1944 * xterm.c (x_clip_to_row): Ensure y >= 0.
1945 (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
1946
1947 * w32term.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
1948
1949 * macterm.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
1950
1951 2005-01-27 Stefan Monnier <monnier@iro.umontreal.ca>
1952
1953 * xterm.c (x_error_quitter): Add a prototype. Make it static again.
1954
1955 2005-01-27 Kim F. Storm <storm@cua.dk>
1956
1957 * xdisp.c (get_glyph_string_clip_rect): Always show a cursor
1958 glyph, even when row is only partially visible and actual cursor
1959 position is not visible.
1960
1961 2005-01-24 Richard M. Stallman <rms@gnu.org>
1962
1963 * xterm.c (x_error_quitter): No longer static, and moved after
1964 x_error_handler.
1965
1966 2005-01-24 Kim F. Storm <storm@cua.dk>
1967
1968 * xdisp.c (move_it_by_lines): If we move forward after going too
1969 far back, cancel move if end position is same as start position.
1970
1971 2005-01-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1972
1973 * dispextern.h (struct glyph_string): New members clip_head and
1974 clip_tail.
1975
1976 * xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip
1977 region to the area between clip_head and clip_tail.
1978 (draw_glyphs): Record the area that need to be actually redrawn to
1979 the new variables clip_head and clip_tail when there are
1980 overhangs. Set values of these variables to the corresponding
1981 members in struct glyph_string. Refine x coordinates for
1982 notice_overwritten_cursor using clip_head and clip_tail.
1983
1984 * macgui.h (STORE_XCHARSETSTRUCT): New macro.
1985
1986 * macterm.c (mac_compute_glyph_string_overhangs): Implement with
1987 QDTextBounds.
1988 (x_draw_glyph_string): Don't fill the background of the successor
1989 of a glyph with a right overhang if the successor will draw a cursor.
1990 (XLoadQueryFont): Obtain font metrics using QDTextBounds.
1991 (x_redisplay_interface): Add entry for compute_glyph_string_overhangs.
1992
1993 2005-01-24 Kim F. Storm <storm@cua.dk>
1994
1995 * window.c (window_scroll_pixel_based): Fix scrolling in the wrong
1996 direction if window height was smaller than next-screen-context-lines.
1997 Now always scroll at least one line in the requested direction.
1998 Ensure that we actually do scroll backwards when requested to do so.
1999
2000 * xdisp.c (redisplay_window): Only try to make cursor line fully
2001 visible once (to avoid redisplay loop).
2002
2003 2005-01-23 Kim F. Storm <storm@cua.dk>
2004
2005 * window.c (Fpos_visible_in_window_p): Simplify return value for
2006 partially visible rows.
2007 (window_scroll_pixel_based): Adapt to that change.
2008
2009 * window.c (window_scroll_pixel_based): Force moving to next line
2010 if scrolling doesn't move start point, e.g. if looking at tall image.
2011
2012 * xdisp.c (pos_visible_p): Return 0 if non-interactive.
2013 Clear last_height before calling line_bottom_y to get real height.
2014 Fix calculation of y.
2015
2016 2005-01-22 Steven Tamm <steventamm@mac.com>
2017
2018 * s/darwin.h: Removed PTY_ITERATION from here.
2019 (DARWIN): Define.
2020
2021 * process.c (init_process): Default process-connection-type to
2022 nil on darwin 6 or less, t if it is 7 or higher. This way the
2023 broken pty behavior is still allowed on darwin 6 for interactive
2024 processes for people that know what they are doing.
2025
2026 2005-01-22 Kim F. Storm <storm@cua.dk>
2027
2028 * window.c (auto_window_vscroll_p): New boolean.
2029 (syms_of_window): DEFVAR_BOOL it.
2030 (Fpos_visible_in_window_p): Extend return value to include RTOP
2031 and RBOT values if FULLY is nil.
2032 (window_scroll_pixel_based): Adjust vscroll for partially visible
2033 rows if auto_window_vscroll_p is set.
2034 (Fset_window_vscroll): Do nothing if vscroll is not modified.
2035
2036 * xdisp.c (pos_visible_p): Replace FULLY arg by RTOP and RBOT args
2037 to return number of partially invisible pixels at top and bottom
2038 of the dislay row at POS.
2039
2040 * lisp.h (pos_visible_p): Fix prototype.
2041
2042 2005-01-21 Richard M. Stallman <rms@gnu.org>
2043
2044 * fileio.c (Fcopy_file): Doc fix.
2045
2046 2005-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2047
2048 * gtkutil.c (xg_tool_bar_detach_callback): Remove unused variable bw.
2049 (xg_get_file_name): Move declaration ofx_use_old_gtk_file_dialog to
2050 start of function for older compilers.
2051
2052 2005-01-20 Richard M. Stallman <rms@gnu.org>
2053
2054 * editfns.c (Fmessage): If arg is "", return "" (as before).
2055
2056 * keymap.c (access_keymap): Protect from bad value of meta_prefix_char.
2057
2058 * .gdbinit (xgetptr, xgetint, xgettype): Copy $arg0 into a temp
2059 variable.
2060
2061 2005-01-20 Steven Tamm <steventamm@mac.com>
2062
2063 * editfns.c (Voperating_system_release): Add.
2064 (init_editfns): Assign new variable operating-system-release
2065 based on call to uname if available.
2066 (get_operating_system_release): Add function to
2067 allow c-level access to operating system release.
2068
2069 * config.h: Regenerated.
2070
2071 * s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or less.
2072 (MIN_PTY_KERNEL_VERSION): Define minimum kernel version for
2073 using ptys as '7'.
2074
2075 2005-01-20 Kim F. Storm <storm@cua.dk>
2076
2077 * alloc.c (STRING_MARKED_P, VECTOR_MARKED_P): Return boolean.
2078
2079 * xterm.c (x_draw_glyph_string_box): Fix last_x for full width rows.
2080 Thanks to Chong Yidong <cyd@stupidchicken.com> for debugging this.
2081
2082 * macterm.c (x_draw_glyph_string_box): Likewise.
2083
2084 * w32term.c (x_draw_glyph_string_box): Likewise.
2085
2086 * indent.c (Fvertical_motion): Temporarily disable selective display.
2087
2088 2005-01-19 Kim F. Storm <storm@cua.dk>
2089
2090 * xdisp.c (note_mode_line_or_margin_highlight): Fix :pointer
2091 image property.
2092
2093 * fns.c (sweep_weak_table): Advance prev pointer when we keep a pair.
2094
2095 2005-01-18 Kim F. Storm <storm@cua.dk>
2096
2097 * xdisp.c (fast_find_position): Backtrack to find first row if
2098 charpos is inside a display overlay that spans multiple lines.
2099
2100 2005-01-18 Kenichi Handa <handa@m17n.org>
2101
2102 * coding.c (decode_coding_iso2022): Translate invalid codes if
2103 translation-table is specified.
2104
2105 2005-01-18 Kim F. Storm <storm@cua.dk>
2106
2107 * xdisp.c (back_to_previous_visible_line_start): Undo 2004-12-28
2108 change. If handle_display_prop indicates newline is replaced by
2109 image or text, move back to start of relevant overlay or interval
2110 and continue scan from there. Simplify.
2111
2112 2005-01-17 Kim F. Storm <storm@cua.dk>
2113
2114 * dispnew.c (mode_line_string, marginal_area_string):
2115 Fix off-by-one error in search for glyph.
2116
2117 2005-01-16 Kim F. Storm <storm@cua.dk>
2118
2119 * macterm.c (syms_of_macterm) <mac-allow-anti-aliasing>: Doc fix.
2120
2121 2005-01-16 Steven Tamm <steventamm@mac.com>
2122
2123 * macterm.c (mac_to_x_fontname): Remove spurious argument.
2124
2125 2005-01-16 Andreas Schwab <schwab@suse.de>
2126
2127 * macterm.c (mac_draw_string_common): Fix compilation on OSX 10.1.
2128
2129 2005-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2130
2131 * fringe.c (Fdefine_fringe_bitmap, init_fringe): When assigning
2132 fringe_faces, cast result from xmalloc/xrealloc to Lisp_Object *.
2133
2134 2005-01-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2135
2136 * keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW)
2137 (READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES):
2138 New flags for readable_events.
2139 (get_filtered_input_pending, readable_filtered_events): Remove.
2140 (tracking_off): Call readable_events and get_input_pending with
2141 flag READABLE_EVENTS_DO_TIMERS_NOW.
2142 (readable_events): Move code from old readable_filtered_events here,
2143 but check new READABLE_EVENTS_* in argument flags instead of previous
2144 two boolean arguments do_timers_now and filter_events.
2145 If we are doing mouse tracking and the mouse moved, return only if
2146 READABLE_EVENTS_IGNORE_SQUEEZABLES is not set in flags.
2147 (swallow_events): Call get_input_pending with flag
2148 READABLE_EVENTS_DO_TIMERS_NOW.
2149 (get_input_pending): Move code from old get_filtered_input_pending
2150 here. Replace boolean arguments do_timers_now, filter_events with
2151 flags, and pass flags to readable_events. Document new
2152 READABLE_EVENTS_* flags.
2153 (detect_input_pending_ignore_squeezables): New function.
2154 (detect_input_pending_run_timers): Call get_input_pending with flag
2155 READABLE_EVENTS_DO_TIMERS_NOW.
2156 (Finput_pending_p): Call get_input_pending with flags
2157 READABLE_EVENTS_DO_TIMERS_NOW and READABLE_EVENTS_FILTER_EVENTS.
2158
2159 * dispnew.c (update_window, update_frame_1): Replace calls to
2160 detect_input_pending with detect_input_pending_ignore_squeezables
2161 so that redisplay is not paused if the event queue contains only
2162 mouse movements.
2163
2164 * lisp.h: Declare detect_input_pending_ignore_squeezables.
2165
2166 2005-01-15 Steven Tamm <steventamm@mac.com>
2167
2168 * macterm.c (Vmac_use_core_graphics): Declare variable for
2169 mac-allow-anti-aliasing.
2170 (syms_of_macterm): DEFVAR_LISP and initialize it.
2171 (mac_draw_string_common): Use core graphics text rendering if
2172 mac-allow-anti-aliasing is enabled.
2173
2174 * macfns.c (Fx_file_dialog): Save As dialog includes only the
2175 file name in the text box.
2176
2177 2005-01-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2178
2179 * macfns.c (x_set_foreground_color, x_set_background_color):
2180 Sync with xfns.c.
2181 (mac_window, x_create_tip_frame): Use XSetWindowBackground.
2182 * macterm.c (XSetBackground, XSetWindowBackground): New functions.
2183 * macterm.h (XSetBackground, XSetWindowBackground): Add externs.
2184
2185 2005-01-14 Kim F. Storm <storm@cua.dk>
2186
2187 * keyboard.c (Fposn_at_x_y): Add optional arg WHOLE.
2188
2189 2005-01-13 Richard M. Stallman <rms@gnu.org>
2190
2191 * keymap.c (Fcurrent_active_maps): Ignore Voverriding_local_map
2192 if Voverriding_terminal_local_map is non-nil.
2193
2194 * keyboard.c (syms_of_keyboard): Doc fix.
2195
2196 2005-01-13 Kim F. Storm <storm@cua.dk>
2197
2198 * xdisp.c (Fformat_mode_line): Fix last change. Remove NO_PROPS arg
2199 (specify 0 for FACE instead). Reorder arg list. Doc fix.
2200
2201 2005-01-12 Richard M. Stallman <rms@gnu.org>
2202
2203 * xdisp.c (Fformat_mode_line): New arg FACE specifies a default
2204 face property for characters that don't specify one.
2205
2206 * fns.c (Frequire): Record in load-history unconditionally.
2207
2208 2005-01-10 Kim F. Storm <storm@cua.dk>
2209
2210 * dispextern.h (merge_faces): Rename from merge_into_realized_face.
2211
2212 * xfaces.c (merge_faces): Rename from merge_into_realized_face.
2213 Callers changed.
2214 Add support to merge with lisp face id too (if face_name is t).
2215
2216 * xdisp.c (get_next_display_element, next_element_from_display_vector):
2217 Don't lookup lface_id from display table glyphs here; instead use
2218 merge_faces to merge the lisp face id into current face.
2219
2220 2005-01-09 Kim F. Storm <storm@cua.dk>
2221
2222 * dispextern.h (struct it): New member dpvec_face_id.
2223 (merge_into_realized_face): Add prototype.
2224
2225 * xfaces.c (merge_into_realized_face): New function. Used to
2226 merge escape-glyph face or face from display table into current face.
2227
2228 * xdisp.c (Vshow_nonbreak_escape): New lisp var.
2229 (syms_of_xdisp): DEFVAR_LISP it.
2230 (escape_glyph_face): Remove var.
2231 (redisplay_window): Don't initialize it.
2232 (setup_for_ellipsis, get_next_display_element):
2233 Set it->dpvec_face_id to -1.
2234 (get_next_display_element): Test Vshow_nonbreak_escape.
2235 Do not setup escape_glyph_face.
2236 Properly merge escape-glyph face or face from display table with
2237 current face for escape and control characters.
2238 Set it->dpvec_face_id to relevant face id instead of adding it to each
2239 element of display vector.
2240 (next_element_from_display_vector): If it->dpvec_face_id is set,
2241 use that instead of lface_id from glyph itself.
2242
2243 2005-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2244
2245 * xterm.h (struct x_output): New member, toolbar_detached.
2246
2247 * gtkutil.c (xg_create_frame_widgets): Set initial tool bar height to
2248 38.
2249 (xg_tool_bar_detach_callback): Set toolbar_detached to 1.
2250 (xg_tool_bar_attach_callback): Set toolbar_detached to 0.
2251 (xg_create_tool_bar): Initialize toolbar_detached.
2252 (update_frame_tool_bar): Only set FRAME_TOOLBAR_HEIGHT (f) if
2253 toolbar_detached is zero.
2254
2255 2005-01-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2256
2257 * xmenu.c (create_and_show_popup_menu): Pass zero as button to
2258 gtk_menu_popup if not for_click, so callbacks for the menu are called.
2259
2260 * gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar)
2261 (xg_tool_bar_callback, xg_tool_bar_help_callback)
2262 (update_frame_tool_bar): Cast to EMACS_INT to avoid compiler warning.
2263
2264 * xselect.c (x_get_foreign_selection, x_fill_property_data)
2265 (Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with
2266 XFLOAT_DATA to get extract number from Lisp object.
2267
2268 2005-01-07 Kim F. Storm <storm@cua.dk>
2269
2270 * xdisp.c (set_iterator_to_next): Fix 2004-12-13 change.
2271 Set stop_charpos to current charpos instead of 0.
2272
2273 2005-01-06 Nick Roberts <nickrob@snap.net.nz>
2274
2275 * xdisp.c (Fformat_mode_line): First arg now required.
2276
2277 2005-01-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2278
2279 * macterm.c (XLoadQueryFont): Correctly handle 0 size
2280 font widths that are returned from some Japanese fonts.
2281
2282 2005-01-06 Kim F. Storm <storm@cua.dk>
2283
2284 * fringe.c (fringe_faces): Change to Lisp_Object pointer.
2285 (draw_fringe_bitmap_1): Lookup user defined fringe faces here.
2286 (destroy_fringe_bitmap): Set fringe_faces element to nil.
2287 (Fdefine_fringe_bitmap, init_fringe): Change allocation of
2288 fringe_faces array and init elements to nil.
2289 (Fset_fringe_bitmap_face): Set fringe_faces to face name instead of
2290 non-persistent face id.
2291 (mark_fringe_data): New function for GC.
2292
2293 * alloc.c (mark_fringe_data): Declare extern.
2294 (Fgarbage_collect): Call mark_fringe_data.
2295
2296 * alloc.c (overrun_check_free): Invalidate freed memory if
2297 XMALLOC_CLEAR_FREE_MEMORY is defined.
2298
2299 2005-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2300
2301 * macfns.c: Include sys/param.h.
2302 [TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration
2303 and function.
2304 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size
2305 of filename string. Set event callback function when creating
2306 dialog boxes. Add code conversions for filenames. Don't dispose
2307 apple event descriptor record if failed to create it.
2308
2309 * macterm.c: Include sys/param.h.
2310 [USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for
2311 kEventWindowUpdate.
2312 (install_window_handler) [USE_CARBON_EVENTS]: Register it.
2313 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead
2314 of FSSpec from apple event descriptor record.
2315 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for
2316 size of filename string.
2317 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.
2318 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a
2319 file dialog is in action.
2320 [TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise.
2321 Reject only when there are no filename items. Set background color
2322 before (un)highlighting the window below the dragged items.
2323 (XTread_socket) [USE_CARBON_EVENTS]: Don't call do_window_update.
2324
2325 2005-01-05 Romain Francoise <romain@orebokech.com>
2326
2327 * term.c (encode_terminal_code): Fix buffer size computation.
2328
2329 2005-01-04 Richard M. Stallman <rms@gnu.org>
2330
2331 * xdisp.c (Fformat_mode_line): Doc fix.
2332
2333 2005-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
2334
2335 * alloc.c (refill_memory_reserve): Move.
2336 (emacs_blocked_free, emacs_blocked_malloc, emacs_blocked_realloc)
2337 (reset_malloc_hooks, uninterrupt_malloc) [SYNC_INPUT]: Don't define.
2338
2339 2005-01-03 Richard M. Stallman <rms@gnu.org>
2340
2341 * window.c (window_scroll_pixel_based): Don't correct preserve_y
2342 for CURRENT_HEADER_LINE_HEIGHT when moving backwards.
2343
2344 2005-01-03 Jason Rumney <jasonr@gnu.org>
2345
2346 * w32bdf.c (w32_load_bdf_font): Set fontp->average_width and
2347 fontp->space_width to FONT_WIDTH so they are valid.
2348
2349 * w32fns.c (w32_load_system_font): Set FONT_WIDTH to maximum, not
2350 average width. Set fontp->average_width and fontp->space_width to
2351 their appropriate values.
2352
2353 * w32term.c (x_new_font): Set FRAME_COLUMN_WIDTH to
2354 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
2355 fontp->space_width.
2356
2357 2005-01-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2358
2359 * macterm.c (x_new_font): Set FRAME_SPACE_WIDTH.
2360 (x_font_min_bounds, XLoadQueryFont): Use the correct font width
2361 metrics for max and min bounds.
2362 (x_load_font): Correctly calculate average font width metrics.
2363
2364 2005-01-02 Richard M. Stallman <rms@gnu.org>
2365
2366 * alloc.c (Fgarbage_collect): Don't truncate_undo_list on dead buffers.
2367
2368 2004-12-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2369
2370 * xterm.c (handle_one_xevent): Clear area in expose event for GTK.
2371
2372 2004-12-31 Richard M. Stallman <rms@gnu.org>
2373
2374 * xdisp.c (setup_for_ellipsis, get_next_display_element):
2375 Set it->ellipsis_p to 1 or 0.
2376 (display_line): Record whether row ends in mid-ellipsis.
2377 (set_cursor_from_row): If ends in ellipsis, find start of it.
2378 (cursor_row_p): If PT's at the end of the ellipsis the row
2379 ends within, don't display cursor on this row.
2380
2381 * dispextern.h (struct it): New element ellipsis_p.
2382 (struct glyph_row): New element ends_in_ellipsis_p.
2383
2384 * xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified
2385 position if we're reading from something other than the buffer.
2386
2387 * window.c (window_scroll_pixel_based): Only look at
2388 Vscroll_preserve_screen_position if the old PT can't be kept.
2389 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
2390
2391 2004-12-30 Kim F. Storm <storm@cua.dk>
2392
2393 * xdisp.c (get_line_height_property): New function extracted from
2394 original calc_line_height_property.
2395 (calc_line_height_property): Rework. Handle t and (nil . ratio).
2396 (x_produce_glyphs): Use them to handle line-height and
2397 line-spacing according to new height spec.
2398 (Qtotal): Remove.
2399 (syms_of_xdisp): Remove intern and staticpro for Qtotal.
2400
2401 2004-12-30 Kenichi Handa <handa@m17n.org>
2402
2403 * fileio.c (Finsert_file_contents): Don't use
2404 current_buffer->buffer_file_coding_system even if REPLACE is
2405 non-nil. Call Qafter_insert_file_set_coding with the second arg VISIT.
2406
2407 * fontset.h (struct font_info): New members space_width and
2408 average_width.
2409
2410 * frame.h (struct frame): New member space_width.
2411 (FRAME_SPACE_WIDTH): New macro.
2412
2413 * xterm.h (struct x_display_info): New member Xatom_AVERAGE_WIDTH.
2414
2415 * xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to
2416 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
2417 fontp->space_width.
2418 (x_load_font): Calculate fontp->space_width and fontp->average_width.
2419 (x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH.
2420
2421 * xdisp.c (x_produce_glyphs): Calculate tab width by
2422 FRAME_SPACE_WIDTH, not FRAME_COLUMN_WIDTH.
2423
2424 2004-12-29 Sanghyuk Suh <han9kin@mac.com>
2425
2426 * macterm.c (SelectionRange): Add Xcode position apple event struct.
2427 (do_ae_open_documents): Handle Xcode-style file position open events.
2428
2429 2004-12-29 Luc Teirlinck <teirllm@auburn.edu>
2430
2431 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Correct typo.
2432
2433 2004-12-29 Richard M. Stallman <rms@gnu.org>
2434
2435 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Doc fix.
2436
2437 2004-12-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2438
2439 * macfns.c (install_window_handler): Modify extern to return OSErr
2440 value.
2441 (mac_window): Handle return value of install_window_handler.
2442
2443 * macterm.c (reflect_byte): Remove function.
2444 (mac_create_bitmap_from_bitmap_data): Don't call reflect_byte.
2445 Lookup table instead.
2446 (mac_do_font_lists): Simplify calculation of the longest
2447 nonspecial string.
2448 (init_mac_drag_n_drop): Remove function and declaration.
2449 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
2450 init_mac_drag_n_drop.
2451 (mac_do_track_drag): New function and declaration.
2452 (install_window_handler): Return OSErr value.
2453 (install_window_handler) [TARGET_API_MAC_CARBON]:
2454 Register handlers for tracking/receiving drag-and-drop items.
2455 (do_ae_open_documents): Generate unibyte strings for filenames.
2456 (mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise.
2457 Reject only non-filename items. Set event modifiers, and return value.
2458
2459 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
2460
2461 * coding.c (decode_coding): Fix previous change.
2462
2463 2004-12-28 Richard M. Stallman <rms@gnu.org>
2464
2465 * xdisp.c (back_to_previous_visible_line_start):
2466 Don't call handle_display_prop.
2467
2468 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
2469
2470 * coding.c (decode_coding_XXX, decode_composition_emacs_mule)
2471 (decode_coding_emacs_mule, encode_coding_emacs_mule)
2472 (decode_coding_iso2022, encode_designation_at_bol)
2473 (encode_coding_iso2022, decode_coding_sjis_big5, decode_eol)
2474 (decode_coding): Constify arguments and local vars.
2475
2476 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2477
2478 * xmenu.c (popup_get_selection): Only pop down dialogs
2479 on C-g and Escape.
2480 (popup_get_selection): Remove parameter down_on_keypress.
2481 (create_and_show_popup_menu, create_and_show_dialog):
2482 Remove parameter down_on_keypress to popup_get_selection.
2483
2484 2004-12-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2485
2486 * dispextern.h: Change HAVE_CARBON to MAC_OS.
2487 (struct glyph_string): Likewise.
2488
2489 * emacs.c (main) [MAC_OS8]: Call mac_term_init instead of
2490 mac_initialize.
2491
2492 * fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name):
2493 Change TARGET_API_MAC_CARBON to HAVE_CARBON.
2494
2495 * fns.c (vector): Change MAC_OSX to MAC_OS.
2496
2497 * frame.c (x_set_frame_parameters, x_report_frame_params)
2498 (x_set_fullscreen): Remove #ifndef HAVE_CARBON.
2499 (x_set_border_width, Vdefault_frame_scroll_bars):
2500 Change HAVE_CARBON to MAC_OS.
2501
2502 * image.c [MAC_OS]: Include sys/stat.h.
2503 [MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and
2504 QuickTimeComponents.h.
2505
2506 * mac.c [!MAC_OSX] (mac_wait_next_event): Add extern.
2507 [!MAC_OSX] (select): Use mac_wait_next_event.
2508 [!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to Vexec_suffixes.
2509 [!MAC_OSX] (select, run_mac_command): Change `#ifdef
2510 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
2511 (mac_clear_font_name_table): Add extern.
2512 (Fmac_clear_font_name_table): New defun.
2513 (syms_of_mac): Defsubr it.
2514 [MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define.
2515 [MAC_OSX] (select_and_poll_event): New function.
2516 [MAC_OSX] (sys_select): Use it.
2517 [MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function.
2518 [MAC_OSX && SELECT_USE_CFSOCKET]
2519 (SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines.
2520 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and
2521 RunLoop for simultaneously monitoring two kinds of inputs, window
2522 events and process outputs, without periodically polling.
2523
2524 * macfns.c (mac_initialized): Remove extern.
2525 (stricmp): Put in #if 0. All callers changed to use xstricmp in
2526 xfaces.c.
2527 (strnicmp): Decrement `n' at the end of each loop, not the beginning.
2528 (check_mac): Use the term "Mac native windows" instead of "Mac OS".
2529 (check_x_display_info, x_display_info_for_name): Sync with xfns.c.
2530 (mac_get_rdb_resource): New function (from w32reg.c).
2531 (x_get_string_resource): Use it.
2532 (install_window_handler): Add extern.
2533 (mac_window): New function.
2534 (Fx_create_frame): Use it instead of make_mac_frame.
2535 Set parameter for Qfullscreen. Call x_wm_set_size_hint.
2536 (Fx_open_connection, Fx_close_connection): New defuns.
2537 (syms_of_macfns): Defsubr them.
2538 (x_create_tip_frame) [TARGET_API_MAC_CARBON]:
2539 Add kWindowNoUpdatesAttribute to the window attribute.
2540 (x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow.
2541 (x_create_tip_frame): Don't call ShowWindow.
2542 (Fx_show_tip): Call ShowWindow.
2543 (Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if
2544 TARGET_API_MAC_CARBON'.
2545 (mac_frame_parm_handlers): Set handlers for Qfullscreen.
2546 (syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0.
2547
2548 * macgui.h [!MAC_OSX]: Don't include Controls.h. Include Windows.h.
2549 (Window): Typedef to WindowPtr and move outside `#if
2550 TARGET_API_MAC_CARBON'.
2551 (XSizeHints): New struct.
2552
2553 * macterm.c (x_update_begin, x_update_end)
2554 [TARGET_API_MAC_CARBON]: Disable screen updates during update of a
2555 frame.
2556 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
2557 [MAC_OS8]: Use XDrawImageString/XDrawImageString16.
2558 (construct_mouse_click): Put in #if 0.
2559 (x_check_fullscreen, x_check_fullscreen_move): Remove decls.
2560 (x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef
2561 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
2562 (activate_scroll_bars, deactivate_scroll_bars)
2563 [!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl.
2564 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window
2565 if the position is neither user-specified nor program-specified.
2566 (x_free_frame_resources): Free size_hints.
2567 (x_wm_set_size_hint): Allocate size_hints if needed. Set size_hints.
2568 (mac_clear_font_name_table): New function.
2569 (mac_do_list_fonts): Initialize font_name_table if needed.
2570 (x_list_fonts): Don't initialize font_name_table. Add BLOCK_INPUT
2571 around mac_do_list_fonts.
2572 (mac_unload_font): New function.
2573 (x_load_font): Add BLOCK_INPUT around XLoadQueryFont.
2574 (init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations
2575 and definitions with #if TARGET_API_MAC_CARBON.
2576 [USE_CARBON_EVENTS] (mac_handle_window_event): Add decl.
2577 (install_window_handler): Add decl.
2578 (do_window_update): Add BeginUpdate/EndUpdate for the tooltip
2579 window. Use UpdateControls. Get the rectangle that should be
2580 updated and restrict the target of expose_frame to it.
2581 (do_grow_window): Set minimum height/width according to size_hints.
2582 (do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow.
2583 (do_zoom_window): Don't use x_set_window_size.
2584 [USE_CARBON_EVENTS] (mac_handle_window_event): New function.
2585 (install_window_handler): New function.
2586 [!USE_CARBON_EVENTS] (mouse_region): New variable.
2587 [!USE_CARBON_EVENTS] (mac_wait_next_event): New function.
2588 (XTread_socket) [USE_CARBON_EVENTS]: Move call to
2589 GetEventDispatcherTarget inside BLOCK_INPUT.
2590 (XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event.
2591 Update mouse_region when mouse is moved.
2592 (make_mac_frame): Remove.
2593 (make_mac_terminal_frame): Put in #ifdef MAC_OS8.
2594 Initialize mouse pointer shapes. Change values of f->left_pos and
2595 f->top_pos. Don't use make_mac_frame. Use NewCWindow.
2596 Don't call ShowWindow.
2597 (mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from
2598 Vinvocation_name and Vsystem_name.
2599 (mac_make_rdb): New function (from w32term.c).
2600 (mac_term_init): Use it. Add BLOCK_INPUT. Error if display has
2601 already been opened. Don't pass argument to
2602 mac_initialize_display_info. Don't set dpyinfo->height/width.
2603 Add entries to x_display_list and x_display_name_list.
2604 (x_delete_display): New function.
2605 (mac_initialize): Don't call mac_initialize_display_info.
2606 (syms_of_macterm) [!MAC_OSX]: Don't call Fprovide.
2607
2608 * macterm.h (check_mac): Add extern.
2609 (struct mac_output): New member size_hints.
2610 (FRAME_SIZE_HINTS): New macro.
2611 (mac_unload_font): Add extern.
2612
2613 * xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
2614
2615 * xfaces.c (clear_font_table) [MAC_OS]: call mac_unload_font.
2616
2617 2004-12-27 Richard M. Stallman <rms@gnu.org>
2618
2619 * buffer.c (Fbuffer_disable_undo): Delete (move to simple.el).
2620 (syms_of_buffer): Don't defsubr it.
2621
2622 * process.c (list_processes_1): Set undo_list instead
2623 of calling Fbuffer_disable_undo.
2624
2625 * xdisp.c (single_display_spec_string_p): Rename from
2626 single_display_prop_string_p.
2627 (single_display_spec_intangible_p): Rename from
2628 single_display_prop_intangible_p.
2629 (handle_single_display_spec): Rename from handle_single_display_prop.
2630 Rewritten to be easier to understand.
2631
2632 Change in load-history format. Functions now get (defun . NAME),
2633 and variables get just NAME.
2634
2635 * data.c (Fdefalias): Use (defun . FN_NAME) in LOADHIST_ATTACH.
2636
2637 * eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH.
2638 (Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH.
2639 (Qdefvar): Var deleted.
2640 (syms_of_eval): Don't initialze it.
2641
2642 * lread.c (syms_of_lread) <load-history>: Doc fix.
2643
2644 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2645
2646 * xmenu.c (popup_get_selection): Pop down on C-g.
2647 (set_frame_menubar): Install translations for Lucid/Motif/Lesstif that
2648 pops down menu on C-g.
2649 (xdialog_show): If dialog popped down and no button in the dialog was
2650 pushed, call Fsignal to quit.
2651 (xmenu_show): In no toolkit version, if menu returns NO_SELECT call
2652 Fsignal to quit.
2653
2654 * xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g.
2655
2656 * gtkutil.c (xg_initialize): Install bindings for C-g so that
2657 dialogs and menus pop down.
2658
2659 2004-12-27 Kenichi Handa <handa@m17n.org>
2660
2661 * coding.c (code_convert_region): Fix calculation of `ratio'.
2662
2663 2004-12-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2664
2665 * gtkutil.c (update_frame_tool_bar): Make the value of
2666 tool-bar-button-margin control margins of images in tool bar.
2667
2668 * alloc.c (check_depth): New variable.
2669 (overrun_check_malloc, overrun_check_realloc): Only add
2670 overhead and write check pattern if check_depth is 1 (to handle
2671 recursive calls). Increase/decrease check_depth in entry/exit.
2672 (overrun_check_free): Only check for overhead if check_depth is 1.
2673 Increase/decrease check_depth in entry/exit.
2674
2675 2004-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2676
2677 * keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK
2678 before touching input_available_clear_time, to avoid accessing it
2679 from multiple threads.
2680
2681 2004-12-23 Jason Rumney <jasonr@gnu.org>
2682
2683 * image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour
2684 of JPEG library.
2685
2686 2004-12-22 Richard M. Stallman <rms@gnu.org>
2687
2688 * emacs.c (main): If batch mode, set Vundo_outer_limit to nil.
2689
2690 * lisp.h (Vundo_outer_limit): Fix decl.
2691
2692 * undo.c (Vundo_outer_limit): Replaces undo_outer_limit.
2693 Uses changed.
2694 (syms_of_undo): Initialize appropriately.
2695 (truncate_undo_list): If it's nil, there's no limit.
2696
2697 2004-12-22 Kenichi Handa <handa@m17n.org>
2698
2699 * xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string.
2700
2701 2004-12-21 Richard M. Stallman <rms@gnu.org>
2702
2703 * eval.c (unwind_to_catch): Clear immediate_quit.
2704
2705 * xdisp.c (get_next_display_element): Display codes 8a0 and 8ad
2706 specially as `\ ' and `\-'.
2707
2708 * keyboard.c (kbd_buffer_store_event_hold):
2709 In the code for while-no-input, handle immediate_quit.
2710
2711 * alloc.c (Fgarbage_collect): Update call to truncate_undo_list.
2712 Call that at the very start.
2713 (undo_limit, undo_strong_limit, undo_outer_limit): Move to undo.c.
2714 (syms_of_alloc): Don't define undo-limit,
2715 undo-strong-limit and undo-outer-limit here.
2716
2717 * undo.c (truncate_undo_list): Return void.
2718 Take just one argument, the buffer.
2719 Make it current, and inhibit recursive GC.
2720 Access and update the undo list directly; return void.
2721 Refer to the undo...limit variables directly.
2722 Test undo_outer_limit only after counting the whole current command.
2723 When it's exceeded, call the function in undo-outer-limit-function.
2724 (undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c.
2725 (Vundo_outer_limit_function): New variable.
2726 (syms_of_undo): Define undo-limit, undo-strong-limit
2727 and undo-outer-limit here, and undo-outer-limit-function.
2728 Doc fixes.
2729
2730 * lisp.h (truncate_undo_list): Update decl.
2731
2732 2004-12-21 Piet van Oostrum <piet@cs.uu.nl>
2733
2734 * fileio.c (Fread_file_name): Delete duplicates in
2735 file-name-history when history_delete_duplicates is true.
2736
2737 2004-12-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2738
2739 * macterm.c (mac_do_list_fonts): Fix memory leak
2740
2741 2004-12-20 Richard M. Stallman <rms@gnu.org>
2742
2743 * regex.c (re_match_2_internal) <symend, wordend>:
2744 Fix calls to UPDATE_SYNTAX_TABLE_FORWARD.
2745
2746 2004-12-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2747
2748 * macterm.c (endif, x_font_name_to_mac_font_name):
2749 Use maccentraleurroman instead of maccentraleuropean
2750 (mac_c_string_match, mac_do_list_fonts): Speed up font search by
2751 quickly finding a specific font without needing regexps.
2752
2753 2004-12-15 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2754
2755 * syssignal.h: Declare main_thread.
2756 (SIGNAL_THREAD_CHECK): New macro.
2757
2758 * keyboard.c (input_available_signal): Move thread checking code
2759 to macro SIGNAL_THREAD_CHECK and call that macro.
2760 (interrupt_signal): Call SIGNAL_THREAD_CHECK.
2761
2762 * alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.
2763
2764 * emacs.c: Define main_thread.
2765 (main): Initialize main_thread.
2766 (handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
2767 (memory_warning_signal): Call SIGNAL_THREAD_CHECK.
2768
2769 * floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.
2770
2771 * dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.
2772
2773 * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.
2774
2775 * process.c (send_process_trap, sigchld_handler):
2776 Call SIGNAL_THREAD_CHECK.
2777
2778 * data.c (arith_error): Call SIGNAL_THREAD_CHECK.
2779
2780 * atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.
2781
2782 * xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before
2783 returning when xg_ignore_gtk_scrollbar is true.
2784
2785 2004-12-14 Kim F. Storm <storm@cua.dk>
2786
2787 * keyboard.c (read_char): Save and restore echo_string when
2788 handling input method.
2789
2790 2004-12-13 Richard M. Stallman <rms@gnu.org>
2791
2792 * eval.c (syms_of_eval) <quit-flag>: Doc fix.
2793
2794 * keyboard.c (Vthrow_on_input): New variable.
2795 (syms_of_keyboard): Defvar and initialize it.
2796 (kbd_buffer_store_event_hold): Handle Vthrow_on_input.
2797
2798 * lisp.h (QUIT): Check for Vthrow_on_input.
2799 (Vthrow_on_input): Declare it.
2800
2801 2004-12-13 Kim F. Storm <storm@cua.dk>
2802
2803 * xdisp.c (set_iterator_to_next): Reset stop_charpos after display
2804 vector.
2805
2806 2004-12-12 Richard M. Stallman <rms@gnu.org>
2807
2808 * indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0.
2809
2810 * minibuf.c (Fall_completions): Add var `zero' and use it in loop.
2811 (Ftry_completion): Really use outer `zero'; eliminate inner one.
2812
2813 2004-12-12 Kenichi Handa <handa@m17n.org>
2814
2815 * term.c (encode_terminal_code): Fix previous change.
2816
2817 2004-12-11 Stefan Monnier <monnier@iro.umontreal.ca>
2818
2819 * keyboard.c (handle_async_input): Remove pthread mutex handling.
2820 (input_available_signal): Move pthread thingy to !SYNC_INPUT branch.
2821
2822 * syntax.c (Fforward_word): Avoid non-idempotent side-effects
2823 in macro arguments.
2824
2825 * minibuf.c (Ftry_completion, Fall_completions): Don't use
2826 XFASTINT blindly.
2827
2828 * emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT.
2829
2830 2004-12-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2831
2832 * w32term.c (x_calc_absolute_position): Remove calculation of
2833 difference between inner and outer window. Don't subtract difference
2834 for left and top calculations.
2835
2836 * xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
2837 for left and top calculations. Remove call to x_real_positions.
2838 [Bug report by Drew Adams in November]
2839 (x_check_expected_move): Do not set change_gravity to 1 when calling
2840 x_set_offset.
2841
2842 2004-12-08 Richard M. Stallman <rms@gnu.org>
2843
2844 * xdisp.c (get_next_display_element): Use `escape-glyph' for
2845 control chars and escaped octal codes.
2846 (Qescape_glyph): New variable.
2847 (syms_of_xdisp): Initialize it.
2848 (escape_glyph_face): New variable.
2849 (redisplay_window): Initialize it.
2850
2851 2004-12-07 Paul Eggert <eggert@cs.ucla.edu>
2852
2853 * image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE)
2854 (init_image): Use 1 rather than TRUE. TRUE's not always defined.
2855
2856 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2857
2858 * emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around
2859 reset_malloc_hooks.
2860
2861 * keyboard.c (handle_async_input, input_available_signal):
2862 Add ! defined (SYSTEM_MALLOC) around thread code.
2863
2864 * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC.
2865
2866 2004-12-07 Stefan Monnier <monnier@iro.umontreal.ca>
2867
2868 * eval.c (init_eval_once): Increase max_specpdl_size to 1000.
2869
2870 * config.in: Regenerate.
2871
2872 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2873
2874 * xmenu.c (Fx_popup_menu): Correct documentation about position.
2875 (xmenu_show): Do not call XTranslateCoordinates. Adjust position
2876 if not given by a mouse click to correspond with x-popup-menu
2877 documentation.
2878
2879 * config.in: Regenerate.
2880
2881 * gtkutil.c: Include signal.h and syssignal.h.
2882 (xg_get_file_name): Block and unblock __SIGRTMIN if defined.
2883
2884 * alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
2885 new variables main_thread and alloc_mutex,
2886 define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
2887 emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
2888 If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same as
2889 (UN)BLOCK_INPUT.
2890 (emacs_blocked_free, emacs_blocked_malloc)
2891 (emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
2892 (uninterrupt_malloc): Initialize main_thread and alloc_mutex.
2893 (reset_malloc_hooks): New function.
2894
2895 * lisp.h: Declare reset_malloc_hooks.
2896
2897 * emacs.c (Fdump_emacs): Call reset_malloc_hooks.
2898
2899 * keyboard.c: Conditionally include pthread.h
2900 (handle_async_input, input_available_signalt): If not in the main
2901 thread, block signal, send signal to main thread and return.
2902
2903 * gtkutil.c (xg_get_file_with_chooser): Handle local files only.
2904 Set current folder in file chooser if default_filename is a directory.
2905
2906 2004-12-05 Stefan Monnier <monnier@iro.umontreal.ca>
2907
2908 * regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end.
2909 Remove redundant correctness checks.
2910 (regex_compile): Fix up error codes for \{..\} expressions.
2911
2912 2004-12-05 Richard M. Stallman <rms@gnu.org>
2913
2914 * regex.c (regex_compile): Fix end-of-pattern case for space.
2915
2916 2004-12-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2917
2918 * macterm.h (cfstring_create_with_utf8_cstring): Add prototype.
2919 * mac.c (cfstring_create_with_utf8_cstring): Add to prevent
2920 crashes with invalid characters.
2921 * macmenu.c (add_menu_item): Use it.
2922 * image.c (image_load_quartz2d): Likewise.
2923 * macfns.c (x_set_name, x_set_title): Likewise.
2924 (Fx_file_dialog): Likewise. Use constant CFRefs instead of
2925 creating them each time for labels.
2926
2927 2004-12-02 Richard M. Stallman <rms@gnu.org>
2928
2929 * config.in (RE_TRANSLATE_P): If make_number is not a macro,
2930 don't use it here.
2931
2932 * eval.c (Fcalled_interactively_p): Don't check INTERACTIVE.
2933 (interactive_p): Skip Scalled_interactively_p frames
2934 like Sinteractive_p frames.
2935 (unwind_to_catch): Clear handling_signal.
2936
2937 * data.c (Fmake_variable_buffer_local): Doc fix.
2938 (Fmake_local_variable): Doc fix.
2939
2940 * insdel.c (insert_from_string_before_markers)
2941 (insert_from_string): Don't modify buffer on empty insertion.
2942
2943 * window.c (Fget_lru_window, Fget_largest_window): Doc fixes.
2944
2945 2004-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2946
2947 * macmenu.c (add_menu_item): Fallback on MacRoman if encoding
2948 menu text as UTF8 fails.
2949
2950 2004-12-01 Kim F. Storm <storm@cua.dk>
2951
2952 * alloc.c: Add commentary for last change.
2953 (XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle
2954 sizeof(size_t) != 4.
2955 (overrun_check_malloc, overrun_check_realloc, overrun_check_free):
2956 Use them. Also clear header and trailer of freed memory.
2957 (GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA.
2958 (string_overrun_cookie): Rename from string_overrun_pattern.
2959 (GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE.
2960
2961 2004-12-01 Andreas Schwab <schwab@suse.de>
2962
2963 * lisp.h: Declare string_to_multibyte.
2964
2965 2004-12-01 Kenichi Handa <handa@m17n.org>
2966
2967 * w32console.c (w32con_write_glyphs): Decide coding here.
2968 Adjusted for the change of encode_terminal_code.
2969
2970 * term.c (encode_terminal_code): Don't make it "static".
2971
2972 2004-11-30 Kenichi Handa <handa@m17n.org>
2973
2974 * term.c (encode_terminal_buf, encode_terminal_bufsize): New variables.
2975 (encode_terminal_code): Argument changed. Encode all
2976 characters at once, and return a pointer to the result of encoding.
2977 (write_glyphs): Decide coding here. Adjusted for the above change.
2978 (insert_glyphs): Likewise.
2979 (term_init): Initialize encode_terminal_bufsize to 0.
2980
2981 * coding.c (Vcode_conversion_workbuf_name): New variable.
2982 (syms_of_coding): Initialize and staticpro it.
2983 (set_conversion_work_buffer): New function.
2984 (run_pre_post_conversion_on_str): Use it.
2985 (run_pre_write_conversin_on_c_str): New function.
2986
2987 * coding.h (run_pre_write_conversin_on_c_str): Extern it.
2988
2989 2004-11-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2990
2991 * keyboard.c: Don't undef SIGIO
2992 * s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
2993 * Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
2994 (macfns.o): Don't depend on ccl.h.
2995 * macfns.c (mac_frame_parm_handlers): Set handlers for
2996 Qleft_fringe and Qright_fringe.
2997 * macterm.c (mac_fill_rectangle_to_pixmap)
2998 (mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
2999 (mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
3000 Put in #if 0.
3001 (mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
3002 (x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
3003 (XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
3004 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
3005 [!MAC_OS8]: Added ifdef'd out code for os8. Don't use
3006 XDrawImageString. Always draw background and foreground separately.
3007 (x_draw_image_foreground): Use clipping instead of computing the
3008 intersection rectangle.
3009 (x_draw_image_glyph_string): Don't draw an image with mask to a
3010 pixmap.
3011 (x_redisplay_interface): Set flush_display_optional member to 0.
3012 (XTread_socket): Correctly reset the TEConverter
3013 object.
3014
3015 2004-11-30 Kim F. Storm <storm@cua.dk>
3016
3017 * lisp.h: New defines to enable buffer overrun checking.
3018 (GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST)
3019 (XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add.
3020
3021 * alloc.c: Add more checks for buffer overruns.
3022 (XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header)
3023 xmalloc_overrun_check_trailer, overrun_check_malloc)
3024 overrun_check_realloc, overrun_check_free): Add.
3025 (GC_STRING_EXTRA, string_overrun_pattern): Add.
3026 (check_sblock, allocate_string_data, compact_small_strings):
3027 Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN.
3028 (check_cons_list): Condition on GC_CHECK_CONS_LIST.
3029 (check_string_free_list): Add.
3030 (allocate_string, sweep_strings): Call check_string_free_list.
3031
3032 * emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if
3033 XMALLOC_OVERRUN_CHECK to avoid crash during load.
3034
3035 2004-11-29 Kim F. Storm <storm@cua.dk>
3036
3037 * fns.c (concat): Use SAFE_ALLOCA.
3038
3039 2004-11-29 Stefan Monnier <monnier@iro.umontreal.ca>
3040
3041 * sysdep.c (emacs_write): Don't use QUIT.
3042
3043 2004-11-29 Kenichi Handa <handa@m17n.org>
3044
3045 * buffer.c (init_buffer): Set current_buffer->directory to a
3046 multibyte string made by string_to_multibyte.
3047
3048 * emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args.
3049
3050 2004-11-27 Andreas Schwab <schwab@suse.de>
3051
3052 * alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined.
3053
3054 * s/gnu-linux.h: Enable no-op gcpros on ia64.
3055 (GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
3056
3057 * filelock.c (lock_file_1): Call get_boot_time early.
3058 Increase buffer size.
3059
3060 2004-11-27 Eli Zaretskii <eliz@gnu.org>
3061
3062 * lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN
3063 is not defined.
3064
3065 2004-11-27 Kim F. Storm <storm@cua.dk>
3066
3067 * search.c (syms_of_search) <search-spaces-regexp>: Move 'doc:'
3068 marker out of doc string.
3069
3070 2004-11-26 Stefan Monnier <monnier@iro.umontreal.ca>
3071
3072 * s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25,
3073 which was not mentioned in the log.
3074
3075 2004-11-26 Kim F. Storm <storm@cua.dk>
3076
3077 * fringe.c (update_window_fringes): Prefer truncation bitmaps over
3078 angle bitmaps at top/bottom line.
3079
3080 * xdisp.c: Undo recent changes for restoring saved_face_id. Instead,
3081 set it when it->method is set to next_element_from_display_vector.
3082 (setup_for_ellipsis): Add LEN argument. Callers changed.
3083 Set it->saved_face_id.
3084 (get_next_display_element): Use loop instead of recursion.
3085 Set it->saved_face_id. Combine duplicate code for ctr chars.
3086 (next_element_from_display_vector): Do not set it->saved_face_id.
3087 (next_element_from_ellipsis): Use setup_for_ellipsis.
3088
3089 2004-11-26 Eli Zaretskii <eliz@gnu.org>
3090
3091 * eval.c (Fdefvar): Declare pdl from last change as `volatile' to
3092 prevent compiler warnings.
3093
3094 2004-11-25 Stefan Monnier <monnier@iro.umontreal.ca>
3095
3096 * keyboard.c (command_loop_1): Print a message describing the key
3097 the user just pressed when this key has no binding.
3098
3099 * sysdep.c (sys_signal): Don't use SA_RESTART if SYNC_INPUT is set.
3100 (emacs_open, emacs_read, emacs_write): Check QUIT when interrupted.
3101
3102 * lread.c (readchar): Check QUIT when `getc' is interrupted.
3103
3104 2004-11-24 Richard M. Stallman <rms@gnu.org>
3105
3106 * coding.c (run_pre_post_conversion_on_str): Bind Qinhibit_read_only.
3107
3108 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>: Doc fix.
3109
3110 2004-11-24 Kim F. Storm <storm@cua.dk>
3111
3112 * xdisp.c (move_it_in_display_line_to, display_line):
3113 Restore saved_face_id also when truncate-lines or hscrolled.
3114
3115 2004-11-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3116
3117 * gtkutil.c (xg_get_file_name): Rename use-old-gtk-file-dialog to
3118 x-use-old-gtk-file-dialog.
3119
3120 * xfns.c: Define x_use_old_gtk_file_dialog.
3121 (syms_of_xfns): Rename use-old-gtk-file-dialog to x-... Move it
3122 outside ifdef USE_GTK.
3123
3124 2004-11-23 Stefan Monnier <monnier@iro.umontreal.ca>
3125
3126 * coding.h (ENCODE_FILE, DECODE_FILE, ENCODE_SYSTEM, DECODE_SYSTEM):
3127 Don't use XFASTINT blindly.
3128
3129 * config.in (RE_TRANSLATE_P): Don't use XFASTINT blindly.
3130
3131 * indent.c (skip_invisible): Avoid non-idempotent side-effects
3132 in macro arguments.
3133
3134 * keymap.c (Flookup_key): Check INTEGERP before XINT.
3135
3136 * lread.c (oblookup): Don't use XFASTINT blindly.
3137
3138 * window.c (Fset_window_scroll_bars): Don't use XINT if it isn't int.
3139 (decode_next_window_args, window_loop): Don't use XFASTINT blindly.
3140
3141 2004-11-23 Kim F. Storm <storm@cua.dk>
3142
3143 * dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P)
3144 (MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero.
3145
3146 * xfaces.c (lookup_named_face): Add signal_p arg. Return -1 if
3147 signal_p is zero and face name is unknown.
3148 (Fx_list_fonts): Don't signal error in lookup_named_face.
3149 (Fface_font): Signal error in lookup_named_face.
3150 (ascii_face_of_lisp_face): Likewise.
3151
3152 * dispextern.h (lookup_named_face): Fix prototype.
3153
3154 * xdisp.c (handle_single_display_prop): Don't signal error in
3155 lookup_named_face for unknown fringe face name.
3156 (highlight_trailing_whitespace): Don't signal error in
3157 lookup_named_face if trailing-whitespace face unknown.
3158 (calc_line_height_property): Don't signal error in
3159 lookup_named_face if specified face name is unknown.
3160
3161 * fringe.c (update_window_fringes): Show top row indicator if
3162 window has header-line. Don't show arrow at bob and eob
3163 if the boundary indicators are not used.
3164 (Fset_fringe_bitmap_face): Signal error in lookup_named_face.
3165
3166 * window.c (set_window_buffer): Clear display_error_modiff.
3167
3168 2004-11-22 Kim F. Storm <storm@cua.dk>
3169
3170 * fringe.c (update_window_fringes): Provide sensible fall-back
3171 value for non-nil indicate-buffer-boundaries setting.
3172
3173 2004-11-22 Markus Rost <rost@ias.edu>
3174
3175 * minibuf.c (Fminibuffer_complete_and_exit): Fix previous change.
3176
3177 2004-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
3178
3179 * eval.c (Fdefvar): Warn when var is let-bound but globally void.
3180
3181 2004-11-21 Kim F. Storm <storm@cua.dk>
3182
3183 * xdisp.c (erase_phys_cursor): Clear hollow cursor inside TEXT_AREA.
3184
3185 * xterm.c (x_clip_to_row): Add area arg. Callers changed.
3186 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
3187
3188 * w32term.c (w32_clip_to_row): Add area arg. Callers changed.
3189 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
3190
3191 * macterm.c (x_clip_to_row): Add area arg. Callers changed.
3192 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
3193
3194 * xdisp.c (move_it_in_display_line_to, display_line):
3195 Restore saved_face_id if overflow-newline-into-fringe is enabled and
3196 line is continued before or in middle of element from display vector.
3197
3198 * indent.c (Fvertical_motion): Fix last change. Use another
3199 method to detect if iterator moved too far ahead after reseat.
3200
3201 * xdisp.c (IT_EXPAND_MATRIX_WIDTH): New macro. Do not
3202 expand matrix width for overflow in zero-width area.
3203 (append_glyph, append_composite_glyph, produce_image_glyph)
3204 (append_stretch_glyph): Use it to avoid loop in redisplay.
3205 (note_mode_line_or_margin_highlight): Don't let help-echo from
3206 string override help-echo from image map.
3207
3208 2004-11-20 Luc Teirlinck <teirllm@auburn.edu>
3209
3210 * fns.c (Fyes_or_no_p): Call Fread_from_minibuffer with extra argument.
3211 * callint.c (Fcall_interactively): Ditto.
3212
3213 2004-11-20 Stefan Monnier <monnier@iro.umontreal.ca>
3214
3215 * minibuf.c (Fminibuffer_complete_and_exit):
3216 Fixup the case of the completed value, for case-indep completion.
3217
3218 2004-11-20 Richard M. Stallman <rms@gnu.org>
3219
3220 * lisp.h (Fread_from_minibuffer): Add arg in decl.
3221
3222 * minibuf.c (read_minibuf): New arg KEEP_ALL. Callers changed.
3223 (Fread_from_minibuffer): New arg KEEP_ALL. Callers changed.
3224
3225 * search.c (Vsearch_spaces_regexp):
3226 Rename from Vsearch_whitespace_regexp. All uses changed.
3227
3228 2004-11-20 Thien-Thi Nguyen <ttn@gnu.org>
3229
3230 * eval.c (init_eval_once): Increase `max_specpdl_size' to 650.
3231
3232 2004-11-19 Richard M. Stallman <rms@gnu.org>
3233
3234 * search.c (Vsearch_whitespace_regexp): New variable.
3235 (syms_of_search): Defvar it.
3236 (compile_pattern_1): Call re_set_whitespace_regexp with it.
3237 (search_buffer): No regexp is trivial if Vsearch_whitespace_regexp
3238 is non-nil.
3239 (struct regexp_cache): New element whitespace_regexp.
3240 (syms_of_search): Initialize whitespace_regexp elements.
3241 (compile_pattern): Compare whitespace_regexp elements.
3242 (compile_pattern_1): Set whitespace_regexp elements.
3243
3244 * regex.c (regex_compile): Substitute whitespace_regexp
3245 for spaces, if it is nonzero.
3246 (whitespace_regexp): New variable.
3247 (re_set_whitespace_regexp): New function.
3248
3249 2004-11-19 Kim F. Storm <storm@cua.dk>
3250
3251 * indent.c (Fvertical_motion): Fix last change.
3252
3253 2004-11-18 Kim F. Storm <storm@cua.dk>
3254
3255 * indent.c (Fvertical_motion): Undo 2004-11-16 change.
3256 Instead, move back again if reseating moves too far ahead.
3257
3258 2004-11-17 Luc Teirlinck <teirllm@auburn.edu>
3259
3260 * xdisp.c (message3): Call clear_message.
3261
3262 2004-11-17 Kim F. Storm <storm@cua.dk>
3263
3264 * xdisp.c (erase_phys_cursor): Adjust cursor row visible height.
3265
3266 2004-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3267
3268 * gtkutil.c (xg_get_file_name): Typo in HAVE_GTK_FILE_SELECTION_NEW.
3269
3270 * xmenu.c (x_menu_in_use): Remove.
3271 (x_menu_set_in_use): Also set popup_activated_flag.
3272
3273 * xfns.c (Fx_file_dialog): Call popup_activated instead of
3274 x_menu_in_use. Call x_menu_set_in_use in Motif version also.
3275
3276 * xterm.h (x_menu_in_use): Remove.
3277
3278 2004-11-16 Richard M. Stallman <rms@gnu.org>
3279
3280 * keymap.c (Fmap_keymap): New arg SORT-FIRST.
3281 Use map-keymap-internal to implement that.
3282
3283 * indent.c (Fvertical_motion): In batch mode, use vmotion directly.
3284
3285 2004-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
3286
3287 * xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's
3288 a window before using XWINDOW.
3289
3290 * window.c (make_window, Fselect_window, make_dummy_parent)
3291 (save_window_save):
3292 * frame.c (make_frame):
3293 * fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments.
3294
3295 * lisp.h (NILP): Use EQ rather than XFASTINT.
3296
3297 2004-11-16 Kim F. Storm <storm@cua.dk>
3298
3299 * fringe.c (Fdefine_fringe_bitmap): Always set 'h'. Simplify.
3300
3301 * indent.c (Fvertical_motion): Fix last change. Only reseat when
3302 moving backwards.
3303
3304 2004-11-16 Luc Teirlinck <teirllm@auburn.edu>
3305
3306 * dispextern.h: Extern reseat_at_previous_visible_line_start.
3307
3308 2004-11-16 Kenichi Handa <handa@m17n.org>
3309
3310 * xdisp.c (display_mode_element): Fix previous change (calculate
3311 end position of substring to display correctly).
3312
3313 2004-11-16 Kim F. Storm <storm@cua.dk>
3314
3315 * keyboard.c (Fposn_at_point): Remove extra */ after doc string.
3316 Reported by Andrew M. Scott.
3317
3318 2004-11-15 Kim F. Storm <storm@cua.dk>
3319
3320 * fns.c (Fsafe_plist_get): New defun.
3321 (syms_of_fns): Defsubr it.
3322
3323 * lisp.h (Fsafe_plist_get): Add EXFUN.
3324
3325 * xdisp.c (store_mode_line_string, produce_stretch_glyph):
3326 Use Fsafe_plist_get.
3327 (note_mode_line_or_margin_highlight, note_mouse_highlight):
3328 Fix image map element parsing. Use Fsafe_plist_get.
3329
3330 2004-11-15 Richard M. Stallman <rms@gnu.org>
3331
3332 * xdisp.c (get_next_display_element): Fix previous change.
3333
3334 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3335
3336 * window.c (shrink_windows): Handle special case of one window left
3337 when trying to shrink the final reminder. Grow windows if
3338 total_removed is less than total_shrink.
3339
3340 * xmenu.c (pop_down_menu): Remove global variable current_menu,
3341 extract pointer from arg with XSAVE_VALUE.
3342 (create_and_show_popup_menu, create_and_show_dialog, xmenu_show):
3343 Construct arg to record_unwind_protect with make_save_value.
3344
3345 2004-11-13 Richard M. Stallman <rms@gnu.org>
3346
3347 * xdisp.c (reseat_at_previous_visible_line_start): No longer static.
3348 (get_next_display_element): Fix previous change to apply only to \n.
3349
3350 * indent.c (Fvertical_motion): Scan to PT from start of line to
3351 make iterator consistent.
3352
3353 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
3354
3355 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3356
3357 * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
3358
3359 * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
3360 Record unwind with clean_up_file_dialog.
3361
3362 * xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event):
3363 Declare.
3364
3365 * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
3366
3367 2004-11-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3368
3369 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
3370 (xg_file_sel_destroy): Remove.
3371 (xg_file_response_cb, pop_down_file_dialog)
3372 (xg_get_file_name_from_chooser, xg_get_file_name_from_selector):
3373 New functions.
3374 (xg_get_file_with_chooser, xg_get_file_with_selection):
3375 Take new arg func, set it to xg_get_file_name_from_chooser/selector.
3376 Move common code to xg_get_file_name. Return widget created.
3377 (xg_get_file_name): Set name, transient for, modal and destroy
3378 with parent here. Connect response signal to xg_file_response_cb,
3379 connect delete-event to gtk_true. Record pop_down_file_dialog
3380 for unwind. Do event loop and call x_menu_wait_for_event in loop.
3381 (xg_create_widget): Make dialogs modal.
3382
3383 * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type
3384 Lisp_Object.
3385 (popup_get_selection): Move unwind protect ...
3386 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
3387 Move destroy of widget to pop_down_menu.
3388 (popup_widget_loop): Move unwind protect ...
3389 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
3390 Move destroy of widget to pop_down_menu.
3391 (pop_down_menu): BLOCK_INPUT and destroy widget/window.
3392 (xmenu_show): Record unwind pop_down_menu. Move XMenuDestroy,
3393 x_mouse_leave and grabbed = 0 to pop_down_menu.
3394
3395 2004-11-13 Kim F. Storm <storm@cua.dk>
3396
3397 * xdisp.c (make_cursor_line_fully_visible_p): New variable.
3398 (syms_of_xdisp): DEFVAR_BOOL it.
3399 (make_cursor_line_fully_visible, try_cursor_movement)
3400 (try_window_id): Use it.
3401
3402 2004-11-12 Kim F. Storm <storm@cua.dk>
3403
3404 * dispextern.h (struct glyph_row): New member extra_line_spacing.
3405 (struct it): New member max_extra_line_spacing.
3406 (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
3407 (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
3408 (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
3409 part of last line is only extra line spacing (so the text on the
3410 line is fully visible). Use helper macros.
3411 Add W arg (to use them). All callers changed.
3412 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
3413 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
3414
3415 * window.c (window_scroll_pixel_based, Frecenter):
3416 Use move_it_vertically_backward directly.
3417 (Frecenter): Fix calculation of new start pos for negative arg.
3418 Before, the new start pos was sometimes chosen too far back, so
3419 the last line became only partially visible, and thus would be
3420 either only semi-visible or automatically scrolled to the middle
3421 of the window by redisplay.
3422
3423 * xdisp.c (init_iterator): Clear it.max_extra_line_spacing.
3424 (move_it_vertically_backward): Don't recure to move further back.
3425 (move_it_vertically): Remove superfluous condition.
3426 (move_it_by_lines): Clear last_height when moved 0 lines.
3427 (resize_mini_window): Use it.max_extra_line_spacing.
3428 (display_tool_bar_line): Clear row->extra_line_spacing.
3429 (try_scrolling): Use move_it_vertically_backward directly.
3430 (redisplay_window): Likewise.
3431 (compute_line_metrics): Set row->extra_line_spacing.
3432 (display_line, display_string): Likewise.
3433 (x_produce_glyphs): Update it->max_extra_line_spacing.
3434
3435 * xmenu.c (pop_down_menu): Return nil.
3436
3437 2004-11-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3438
3439 * xmenu.c (x_menu_wait_for_event): New function.
3440 (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
3441 to handle timers.
3442 (popup_widget_loop): Add argument do_timers.
3443 (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
3444 do_timers to popup_widget_loop.
3445 (xmenu_show): Call XMenuActivateSetWaitFunction so that
3446 x_menu_wait_for_event is called by XMenuActivate.
3447 (create_and_show_popup_menu): Pass 1 for do_timers to
3448 popup_get_selection.
3449 (pop_down_menu): New function.
3450 (popup_get_selection, popup_widget_loop): Unwind protect to
3451 pop_down_menu.
3452 (popup_widget_loop): Add argument widget.
3453 (create_and_show_popup_menu, create_and_show_dialog): Pass new
3454 argument widget to popup_widget_loop.
3455
3456 2004-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
3457
3458 * keymap.c (Fkeymap_prompt): Accept symbol keymaps.
3459
3460 2004-11-09 Kim F. Storm <storm@cua.dk>
3461
3462 * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
3463 Fix various comments referring to XEvents instead of input events.
3464 (x_queue_event): Fix format strings.
3465 (x_stop_queuing_selection_requests): Likewise.
3466
3467 * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
3468 (pint2hrstr): Add extra braces to silence compiler.
3469
3470 * print.c (print_object): Fix format string.
3471
3472 * lread.c (read1): Fix next_char matching.
3473
3474 * lisp.h (Fdelete): Add EXFUN.
3475 (replace_range_2): Add prototype.
3476
3477 * keyboard.c (read_avail_input): Remove unused variable 'discard'.
3478
3479 * intervals.h (NULL_INTERVAL_P): Add separate version when
3480 ENABLE_CHECKING is not defined to silence compiler.
3481 (compare_string_intervals): Add prototype.
3482
3483 * fringe.c (destroy_fringe_bitmap): Fix return type.
3484 (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
3485
3486 * emacs.c (Fdump_emacs): Fix format string.
3487
3488 * doc.c: Include <ctype.h>.
3489 (Fsubstitute_command_keys): Remove unused variable 'firstkey'.
3490
3491 * data.c (store_symval_forwarding): Remove unused variables.
3492
3493 * callint.c (Fcall_interactively): Remove unused variable 'funcar'.
3494
3495 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3496
3497 * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
3498 to ${OLDXMENU}.
3499
3500 2004-11-09 Kim F. Storm <storm@cua.dk>
3501
3502 * process.c (Fmake_network_process): Remove kludge for interrupted
3503 connects on BSD. If connect is interrupted, just close socket and
3504 start over rather than sleeping and retry with same socket.
3505
3506 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3507
3508 * .cvsignore: Add buildobj.lst.
3509
3510 * doc.c: New variable Vbuild_files.
3511 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
3512 file names from buildobj.lst. Only attach docstrings from files
3513 that are in Vbuild_files.
3514 (syms_of_doc): Defvar Vbuild_files.
3515
3516 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
3517 and w32*.o.
3518 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
3519 (mostlyclean): Rm buildobj.lst
3520
3521 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
3522 is linked.
3523
3524 2004-11-09 Kim F. Storm <storm@cua.dk>
3525
3526 * fringe.c (update_window_fringes): Update fringe bitmaps if
3527 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
3528 also update previous row to get rid of misc. artifacts.
3529
3530 2004-11-08 Kim F. Storm <storm@cua.dk>
3531
3532 * xdisp.c (fast_find_position): Fix start pos if header line present.
3533 (note_mouse_highlight): Clear mouse face if we move out of text area.
3534
3535 2004-11-08 Eli Zaretskii <eliz@gnu.org>
3536
3537 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
3538 Don't include <sys/time.h> explicitly.
3539 Include <stdio.h> unconditionally, not just on MacOS.
3540
3541 2004-11-08 Kenichi Handa <handa@m17n.org>
3542
3543 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
3544 don't pay attention to '\' before '*'.
3545 (fontset_pattern_regexp): Change the meaning of the second arg.
3546 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
3547 (check_fontset_name): Try NAME as literal at first, and if it
3548 failes, try NAME as pattern.
3549
3550 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3551
3552 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
3553
3554 2004-11-07 Andreas Schwab <schwab@suse.de>
3555
3556 * lisp.h (Fmsdos_downcase_filename): Declare.
3557 * dired.c (Fmsdos_downcase_filename): Don't declare here.
3558 * fileio.c: Likewise.
3559
3560 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3561
3562 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
3563 comparisons with integers instead of Lisp_Object address.
3564 (Fmsdos_set_keyboard): Declare argument allkeys.
3565
3566 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
3567
3568 * dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid
3569 int/Lisp_Object mixup.
3570
3571 * fileio.c: Ditto.
3572
3573 2004-11-06 Steven Tamm <steventamm@mac.com>
3574
3575 * editfns.c: Need to include sys/time.h before resource.h on darwin.
3576
3577 2004-11-06 Richard M. Stallman <rms@gnu.org>
3578
3579 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
3580
3581 * xfaces.c (merge_named_face): GCPRO the face_name in the
3582 named_merge_point struct that we make.
3583 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
3584
3585 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
3586 before deciding whether to inactivate mark.
3587
3588 2004-11-06 Lars Brinkhoff <lars@nocrew.org>
3589
3590 * config.in: Regenerate (add HAVE_GETRUSAGE).
3591 * editfns.c (Fget_internal_run_time): New function.
3592 (syms_of_data): Defsubr it.
3593 * fns.c (sxhash): As far as possible, merge calculation of
3594 hash code for symbols and strings.
3595
3596 2004-11-06 Eli Zaretskii <eliz@gnu.org>
3597
3598 * frame.c (syms_of_frame): Fix the example in the doc string.
3599
3600 2004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3601
3602 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
3603
3604 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
3605 (create_and_show_dialog): Revert change from 2004-10-31.
3606
3607 2004-11-05 Luc Teirlinck <teirllm@auburn.edu>
3608
3609 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
3610
3611 2004-11-05 Kim F. Storm <storm@cua.dk>
3612
3613 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
3614
3615 * fileio.c (Ffile_modes): Doc fix.
3616 (auto_save_1): Check for Ffile_modes nil value.
3617
3618 2004-11-05 Kim F. Storm <storm@cua.dk>
3619
3620 * xselect.c (struct selection_event_queue, selection_queue)
3621 (x_queue_selection_requests, x_queue_event)
3622 (x_start_queuing_selection_requests)
3623 (x_stop_queuing_selection_requests): Add new queue for selection
3624 input events to replace previous XEvent queue in xterm.c.
3625 (queue_selection_requests_unwind): Adapt to new queue.
3626 (x_reply_selection_request): Adapt to new queue.
3627 Unexpect wait_object in case of x errors (memory leak).
3628 (x_handle_selection_request, x_handle_selection_clear): Make static.
3629 (x_handle_selection_event): New function. May queue selection events.
3630 (wait_for_property_change_unwind): Use save_value instead of cons.
3631 Clear property_change_reply_object.
3632 (wait_for_property_change): Abort if already waiting.
3633 Use save_value instead of cons for unwind data.
3634 (x_handle_property_notify): Skip events already arrived, but don't
3635 free them, as "arrived" field is checked by wait_for_property_change,
3636 and it will be freed by unwind or explicit unexpect_property_change.
3637 (x_get_foreign_selection): Add to new queue.
3638 (receive_incremental_selection): Don't unexpect wait_object when done
3639 as it has already been freed by previous wait_for_property_change.
3640
3641 * xterm.h (x_start_queuing_selection_requests)
3642 (x_stop_queuing_selection_requests, x_handle_selection_request)
3643 (x_handle_selection_clear): Remove prototypes.
3644 (x_handle_selection_event): Add prototype.
3645
3646 * xterm.c (handle_one_xevent): Don't queue X selection events
3647 here, it may be too late if we start queuing after we have already
3648 stored some selection events into the kbd buffer.
3649 (struct selection_event_queue, queue, x_queue_selection_requests)
3650 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
3651 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
3652 (x_catch_errors_unwind): Block input around final XSync.
3653
3654 * keyboard.h (kbd_buffer_unget_event): Add prototype.
3655
3656 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
3657 (kbd_buffer_unget_event): New function.
3658 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
3659 and use x_handle_selection_event.
3660 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
3661
3662 2004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3663
3664 * xselect.c (TRACE3): New debug macro.
3665 (x_reply_selection_request): Use it.
3666 (receive_incremental_selection): In call to TRACE0, the name of
3667 a symbol is in xname.
3668
3669 2004-11-05 Kim F. Storm <storm@cua.dk>
3670
3671 * fontset.c (fontset_pattern_regexp): Use unsigned char.
3672
3673 2004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3674
3675 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
3676
3677 * gtkutil.h (use_old_gtk_file_dialog): Declare.
3678
3679 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
3680 (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
3681 * xfns.c (syms_of_xfns): ... to here.
3682
3683 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
3684 it doesn't start with /.
3685
3686 2004-11-04 Kenichi Handa <handa@m17n.org>
3687
3688 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
3689 treat it as a literal character.
3690
3691 2004-11-03 Kim F. Storm <storm@cua.dk>
3692
3693 * .gdbinit (ppt): New function.
3694
3695 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3696
3697 * xterm.c (x_window_to_scroll_bar): Only call
3698 xg_get_scroll_id_for_window if toolkit scroll bars are used.
3699
3700 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
3701 of save.
3702
3703 2004-11-02 Andreas Schwab <schwab@suse.de>
3704
3705 * window.c (Fscroll_right): Fix last change.
3706
3707 2004-11-02 Kim F. Storm <storm@cua.dk>
3708
3709 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
3710
3711 2004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3712
3713 * callproc.c (Fcall_process): Block input around vfork.
3714
3715 2004-11-02 Kim F. Storm <storm@cua.dk>
3716
3717 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
3718 (syms_of_eval): Defsubr it.
3719
3720 2004-11-02 Richard M. Stallman <rms@gnu.org>
3721
3722 * insdel.c (replace_range_2): New function.
3723
3724 * casefiddle.c (casify_region): Handle changes in byte-length
3725 using replace_range_2.
3726
3727 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
3728
3729 * xdisp.c (back_to_previous_visible_line_start):
3730 Subtract 1 from pos when checking previous newline for invisibility.
3731
3732 * window.c (window_scroll_pixel_based): Update preserve_y
3733 for header line if any.
3734 (Fscroll_left, Fscroll_right): Don't call interactive_p;
3735 use a new second argument instead.
3736
3737 * eval.c (Fcall_interactive_p): New function.
3738 (interactive_p): Don't test INTERACTIVE here.
3739 (Finteractive_p): Doc fix.
3740
3741 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
3742
3743 2004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
3744
3745 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
3746 comparing font names.
3747
3748 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3749
3750 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
3751 Fx_file_dialog if only directories should be read.
3752
3753 * lisp.h: Fx_file_dialog takes 5 parameters.
3754
3755 * xfns.c (Fx_file_dialog): Both Motif and GTK version:
3756 Add parameter only_dir_p.
3757 In Motif version, don't put DEFAULT_FILENAME in filter part of the
3758 dialog, just text field part. Do not add DEFAULT_FILENAME
3759 to list of files if it isn't there.
3760 In GTK version, pass only_dir_p parameter to xg_get_file_name.
3761
3762 * macfns.c (Fx_file_dialog): Add parameter only_dir_p.
3763 Check only_dir_p instead of comparing prompt to "Dired". When using
3764 a save dialog, add option kNavDontConfirmReplacement, change title
3765 to "Enter name", change text for save button to "Ok".
3766
3767 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
3768 Check only_dir_p instead of comparing prompt to "Dired".
3769
3770 * gtkutil.c (xg_get_file_with_chooser)
3771 (xg_get_file_with_selection): New functions, only defined ifdef
3772 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
3773 respectively.
3774 (xg_get_file_name): Add parameter only_dir_p.
3775 Call xg_get_file_with_chooser or xg_get_file_with_selection
3776 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
3777 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
3778
3779 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
3780
3781 * config.in: Rebuild (added HAVE_GTK_FILE_*).
3782
3783 2004-11-01 Kim F. Storm <storm@cua.dk>
3784
3785 * process.c (connect_wait_mask, num_pending_connects):
3786 Only declare and use them if NON_BLOCKING_CONNECT is defined.
3787 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
3788 (IF_NON_BLOCKING_CONNECT): New helper macro.
3789 (wait_reading_process_output): Only declare and use local vars
3790 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
3791
3792 2004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
3793
3794 * w32term.c (x_scroll_run): Delete region objects after use.
3795
3796 2004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3797
3798 * xmenu.c: Add prototypes for forward function declarations.
3799 (popup_get_selection): Remove parameter do_timers, remove call to
3800 timer_check.
3801 (create_and_show_popup_menu, create_and_show_dialog):
3802 Remove parameter do_timers from call to popup_get_selection.
3803
3804 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
3805 tool_bar_items and assign the result to f->tool_bar_items if
3806 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
3807 tool_bar_items to assignment of result.
3808
3809 * atimer.c (alarm_signal_handler): Do not call set_alarm if
3810 pending_atmers is non-zero.
3811
3812 2004-10-31 Kim F. Storm <storm@cua.dk>
3813
3814 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
3815
3816 2004-10-28 Will <will@glozer.net>
3817
3818 * macterm.c: allow user to assign key modifiers to the Mac Option
3819 key via a 'mac-option-modifier' variable.
3820
3821 2004-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
3822
3823 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
3824 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
3825 (x_handle_selection_request, x_handle_selection_clear)
3826 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
3827
3828 2004-10-28 Richard M. Stallman <rms@gnu.org>
3829
3830 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
3831
3832 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
3833
3834 2004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
3835
3836 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
3837 comment-starter over a 1-char one.
3838
3839 2004-10-27 Richard M. Stallman <rms@gnu.org>
3840
3841 * xdisp.c (get_next_display_element): In mode lines,
3842 treat newline and tab like other control characters.
3843
3844 * editfns.c (Fmessage): Doc fix.
3845
3846 * indent.c (vmotion): When moving up, check the newline before.
3847 Make prevline an int, not a Lisp_Object.
3848
3849 2004-10-27 Kim F. Storm <storm@cua.dk>
3850
3851 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
3852 Only allocate info and discarded tables once.
3853
3854 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
3855 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
3856 (SAFE_FREE): Test it to determine if we need to unwind to free.
3857 Remove size arg. All users changed.
3858 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
3859
3860 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3861
3862 * gtkutil.c: Put empty line between comment and function body.
3863 (xg_destroy_widgets): Rename from remove_from_container.
3864 Just destroy all widgets in list. Argument wcont removed.
3865 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
3866 instead of remove_from_container.
3867 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
3868 (free_frame_tool_bar): Add comment.
3869
3870 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
3871 is not NULL before strcmp.
3872
3873 2004-10-26 Kim F. Storm <storm@cua.dk>
3874
3875 * callint.c (Fcall_interactively): Add 'U' code to get the
3876 up-event discarded by a previous 'k' or 'K' argument.
3877
3878 2004-10-26 David Kastrup <dak@gnu.org>
3879
3880 * buffer.c (syms_of_buffer): Fix a few typos.
3881
3882 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3883
3884 * xsmfns.c: Put empty line between comment and function body.
3885 Use two spaces before comment end.
3886
3887 2004-10-25 Kenichi Handa <handa@m17n.org>
3888
3889 * fontset.c (fontset_pattern_regexp): Optimize for the case that
3890 PATTERN is full XLFD.
3891
3892 2004-10-24 Kenichi Handa <handa@m17n.org>
3893
3894 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
3895
3896 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
3897 (regex_compile): Return REG_ERANGEX if appropriate.
3898
3899 2004-10-22 Kenichi Handa <handa@m17n.org>
3900
3901 * editfns.c (Ftranslate_region_internal): New function.
3902 (syms_of_editfns): Defsubr it.
3903
3904 2004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3905
3906 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
3907
3908 2004-10-21 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
3909
3910 * xterm.h (x_output): New member `xic_base_fontname'.
3911 (FRAME_XIC_BASE_FONTNAME): New macro.
3912 (xic_free_xfontset): Declare.
3913
3914 * xfns.c (xic_create_xfontset): Share fontsets between frames
3915 based on base_fontname.
3916 (xic_free_xfontset): New function.
3917 (free_frame_xic): Use it.
3918 (xic_set_xfontset): Ditto.
3919
3920 * xterm.c (xim_destroy_callback): Ditto.
3921
3922
3923 2004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
3924
3925 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
3926
3927 2004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3928
3929 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
3930 XSync.
3931
3932 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
3933 New variables and constant.
3934 (main): Calculate heap_bss_diff. If we are dumping and the
3935 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
3936 and exec ourself again.
3937 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
3938 print a warning.
3939
3940 * lastfile.c: Make my_endbss and my_endbss_static available on all
3941 platforms.
3942
3943 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
3944 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
3945
3946 2004-10-19 Luc Teirlinck <teirllm@auburn.edu>
3947
3948 * data.c (Flocal_variable_if_set_p): Doc fix.
3949
3950 2004-10-19 Jason Rumney <jasonr@gnu.org>
3951
3952 * w32.c (init_environment): Set emacs_dir correctly when running
3953 emacs from the build directory.
3954
3955 2004-10-19 Richard M. Stallman <rms@gnu.org>
3956
3957 * editfns.c (Fdelete_and_extract_region):
3958 If region is empty, return null string.
3959
3960 2004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3961
3962 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
3963 and canon_width.
3964 (xg_frame_cleared): Remove.
3965
3966 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
3967 (xg_find_top_left_in_fixed): Remove.
3968 (xg_create_scroll_bar): Put an event box widget between
3969 the scroll bar widget and the edit widget.
3970 (xg_show_scroll_bar): Show the parent widget (the event box).
3971 (xg_remove_scroll_bar): Destroy parent (the event box) also.
3972 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
3973 Move the parent (the event box) widget inside the fixed widget.
3974 Move window clear to xterm.c.
3975
3976 * gtkutil.h (xg_frame_cleared): Remove.
3977
3978 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
3979 (x_scroll_bar_create, XTset_vertical_scroll_bar):
3980 Remove arguments left and width to xg_update_scrollbar_pos.
3981 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
3982
3983 2004-10-19 Kenichi Handa <handa@m17n.org>
3984
3985 * xdisp.c (display_mode_element): Fix display of wide chars.
3986
3987 2004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3988
3989 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
3990 gdk_window_clear and move gdk_window_process_all_updates after
3991 clear so events are sent to the X server in correct order.
3992
3993 2004-10-18 Kenichi Handa <handa@m17n.org>
3994
3995 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
3996 comparing font names.
3997 (fs_query_fontset): Use fast_string_match for comparing fontset names.
3998 (list_fontsets): Likewise.
3999
4000 * search.c (fast_string_match_ignore_case): New function.
4001
4002 * lisp.h (fast_string_match_ignore_case): Extern it.
4003
4004 2004-10-17 Kim F. Storm <storm@cua.dk>
4005
4006 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
4007 than bitmap if there is not left fringe.
4008 (get_overlay_arrow_glyph_row): Also used on windows system.
4009 (display_line): Display overlay string if no left fringe.
4010
4011 2004-10-16 Jason Rumney <jasonr@gnu.org>
4012
4013 * w32fns.c (w32_font_match): Encode font name being matched.
4014
4015 2004-10-16 Richard M. Stallman <rms@gnu.org>
4016
4017 * window.c (Fspecial_display_p): Doc fix.
4018
4019 2004-10-15 Stefan Monnier <monnier@iro.umontreal.ca>
4020
4021 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
4022 Don't ignore menus, because where-is-internal already does it for us.
4023
4024 2004-10-15 Kim F. Storm <storm@cua.dk>
4025
4026 * xdisp.c (redisplay_window): Only update fringes and vertical
4027 border on window frames.
4028
4029 2004-10-14 Andreas Schwab <schwab@suse.de>
4030
4031 * m/ia64.h (DATA_SEG_BITS): Don't define.
4032
4033 2004-10-14 Kim F. Storm <storm@cua.dk>
4034
4035 * xterm.h: Include Xutil.h after keysym.h to work around bug
4036 in some X versions.
4037
4038 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
4039
4040 * fns.c (map_char_table): Add missing gcpros.
4041
4042 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
4043
4044 * keymap.c (get_keymap): An autoload form is not a keymap.
4045
4046 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
4047
4048 2004-10-13 Kim F. Storm <storm@cua.dk>
4049
4050 * callproc.c (Fcall_process): Simplify handling of display arg.
4051 Resume `display_on_the_fly' once a coding system is determined.
4052
4053 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
4054
4055 2004-10-12 Kim F. Storm <storm@cua.dk>
4056
4057 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
4058 caller, such as call-process, is not going to poll for input.
4059 (calc_line_height_property): Handle case where it->object is nil.
4060
4061 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
4062
4063 2004-10-12 Kenichi Handa <handa@m17n.org>
4064
4065 * xdisp.c (get_next_display_element):
4066 If unibyte_display_via_language_environment is zero, display 8-bit
4067 chars in octal in unibyte buffer.
4068
4069 2004-10-12 Kim F. Storm <storm@cua.dk>
4070
4071 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
4072 are no ordinary bindings.
4073
4074 2004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4075
4076 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
4077
4078 2004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4079
4080 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
4081 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
4082 (make_mac_frame): Add BLOCK_INPUT around the making of a
4083 terminal frame.
4084 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
4085 * macgui.h (mktime): Use emacs_mktime.
4086 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
4087 Make a cancel file-open dialog be like C-g.
4088 * mac.c (mktime): Use emacs_mktime.
4089 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
4090 (Fmac_paste_function): Add better error handling for carbon cut/paste.
4091
4092 2004-10-10 Kim F. Storm <storm@cua.dk>
4093
4094 * keyboard.c (timer_resume_idle): New function to resume idle
4095 timer without resetting timers on the idle list.
4096 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
4097 (timer_start_idle, timer_stop_idle): Declare static.
4098 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
4099
4100 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
4101
4102 2004-10-08 Steven Tamm <steventamm@mac.com>
4103
4104 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
4105 * macterm.c (mac_check_for_quit_char): Remove warning for using
4106 NULL where 0 should be used.
4107 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
4108 objc/malloc.h
4109 * mac.c: Include time.h for Tiger compatibility.
4110
4111 2004-10-07 Kim F. Storm <storm@cua.dk>
4112
4113 * xdisp.c (redisplay_window): Fix flicker on vertical line between
4114 windows. Update vertical line after drawing window fringes, but
4115 only if actually drawing any bitmaps--or there is no fringe.
4116
4117 * xterm.c (x_update_window_end): Likewise.
4118 * macterm.c (x_update_window_end): Likewise.
4119 * w32term.c (x_update_window_end): Likewise.
4120
4121 * fringe.c (draw_window_fringes): Return value now indicates if
4122 any fringe bitmaps were redrawn (or there are no fringes).
4123
4124 * dispextern.h (draw_window_fringes): Update prototype.
4125
4126 2004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4127
4128 * macfns.c (mac_get_window_bounds): Add extern.
4129 (x_real_positions): Use mac_get_window_bounds.
4130
4131 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
4132 xmenu.c (YAILOM).
4133
4134 * macterm.c [!MAC_OSX]: Include Windows.h.
4135 (front_emacs_window): Rename from mac_front_window. All uses
4136 changed. Return the frontmost non-tooltip emacs window.
4137 (mac_get_window_bounds): New function.
4138 (x_calc_absolute_position): Use the difference of width and height
4139 between the inner and outer window.
4140 (x_set_offset): Specify window position by the coordinae of the
4141 outer window. Adjust the position if the title bar is completely
4142 outside the screen.
4143 (app_is_suspended, app_sleep_time): Remove unused variables.
4144 (do_app_resume, do_app_suspend): Remove their contents because
4145 window-activate/deactivate events will do the job.
4146 (do_zoom_window): Remove unused variables. Make compliant to the
4147 standard way of zooming. Set f->left_pos and f->top_pos.
4148 (XTread_socket): Don't use argument `expected'. Don't use
4149 FrontWindow to determine the clicked window. Exclude unprocessed
4150 mouseUp cases in the early stage. Add parentheses to fix operator
4151 precedence.
4152 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
4153
4154 2004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
4155
4156 * config.in: Regenerate.
4157
4158 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
4159 HAVE_EXECSHIELD.
4160
4161 2004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4162
4163 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
4164 a row if Alt or Meta has been found for that row. Also stop scanning
4165 for Keysyms for that row.
4166
4167 2004-10-04 Kim F. Storm <storm@cua.dk>
4168
4169 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
4170 to list. Include overlay arrow bitmap in return value.
4171
4172 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
4173 bars with fractional column width. If scroll bar separates two
4174 windows, move it towards the window it belongs to. Only update
4175 the padding area below the scroll bar widget when necessary,
4176 i.e. when scroll bar widget is created, moved, or resized.
4177
4178 * xdisp.c (define_frame_cursor1): Do not change frame cursor
4179 while tracking/dragging mouse.
4180 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
4181
4182 * window.c (coordinates_in_window): Relax check for cursor
4183 on vertial border between mode lines.
4184 (Fset_window_fringes): Do not allow negative widths.
4185 (Fset_window_scroll_bars): Likewise.
4186
4187 * .gdbinit (pp): Shorthand for p ARG + pr.
4188 (ff): New command: flush frame updates (X only).
4189
4190 2004-10-03 Michael Albinus <michael.albinus@gmx.de>
4191
4192 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
4193
4194 2004-09-30 Kenichi Handa <handa@m17n.org>
4195
4196 * process.c (send_process): Free composition data.
4197
4198 * fileio.c (Finsert_file_contents): Free composition data.
4199
4200 * coding.c (code_convert_region): Don't skip ASCIIs if there are
4201 compositions to encode.
4202 (encode_coding_string): Likewise. Free composition data.
4203
4204 2004-09-30 Florian Weimer <fw@deneb.enyo.de>
4205
4206 * coding.c (code_convert_region): Free composition data.
4207
4208 2004-09-29 Kim F. Storm <storm@cua.dk>
4209
4210 * fringe.c: Remove limit on number of bitmaps.
4211 (fringe_bitmaps, fringe_faces): Change to pointers.
4212 (max_fringe_bitmaps): New var.
4213 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
4214 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
4215
4216 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
4217 (struct glyph_row): Reorder fringe_bitmap related fields.
4218 (struct it): Likewise.
4219
4220 * w32term.c (fringe_bmp): Change to pointer.
4221 (max_fringe_bmp): New var.
4222 (w32_define_fringe_bitmap): Expand fringe_bmp.
4223 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
4224 (w32_destroy_fringe_bitmap): Likewise.
4225
4226 2004-09-29 Kim F. Storm <storm@cua.dk>
4227
4228 * fringe.c: Simplify last change.
4229 (lookup_fringe_bitmap): New function.
4230 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
4231 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
4232 Keep standard bitmaps in Vfringe_bitmaps.
4233 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
4234 (Fset_fringe_bitmap_face): Likewise.
4235
4236 * dispextern.h (lookup_fringe_bitmap): Add prototype.
4237 (valid_fringe_bitmap_p): Remove prototype.
4238
4239 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
4240
4241 2004-09-29 Kim F. Storm <storm@cua.dk>
4242
4243 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
4244 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
4245
4246 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
4247
4248 * fringe.c (Vfringe_bitmaps): New variable.
4249 (syms_of_fringe): DEFVAR_LISP it.
4250 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
4251 Change arg to Lisp_Object and fail if not an integer.
4252 (get_fringe_bitmap_name, resolve_fringe_bitmap)
4253 (destroy_fringe_bitmap): New functions.
4254 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
4255 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
4256 clear its fringe property.
4257 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
4258 Fdestroy_fringe_bitmap.
4259 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
4260 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
4261 and set fringe property. Signal error if no free slots.
4262 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
4263 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
4264
4265 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
4266 symbols with a fringe property.
4267
4268 2004-09-27 Kim F. Storm <storm@cua.dk>
4269
4270 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
4271 Doc fix. Format may now be a symbol or alist, not a cons.
4272
4273 * fringe.c (update_window_fringes): Handle new formats of
4274 indicate-buffer-boundaries (symbol or alist). No longer
4275 allow a simple cons.
4276 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
4277
4278 2004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4279
4280 * config.in: Rebuild.
4281
4282 2004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4283
4284 * config.in: Rebuild.
4285
4286 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
4287
4288 2004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
4289
4290 * xterm.c (x_term_init): Work around a bug in some X servers.
4291
4292 2004-09-18 Richard M. Stallman <rms@gnu.org>
4293
4294 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
4295
4296 * xdisp.c (try_window_reusing_current_matrix):
4297 Handle the case where we reach the old displayed text,
4298 out of sync with the old line boundary.
4299
4300 2004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
4301
4302 * fileio.c (Finsert_file_contents): Fix case of replacement in a
4303 narrowed buffer.
4304
4305 2004-09-14 Kim F. Storm <storm@cua.dk>
4306
4307 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
4308
4309 * xfaces.c (Qface_no_inherit): New var.
4310 (syms_of_xfaces): Intern and staticpro it.
4311 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
4312 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
4313 Don't increment face_change_count when face has non-nil
4314 face-no-inherit property.
4315
4316 2004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
4317
4318 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
4319 (Fbyte_code): Remove dead code after `wrong_type_argument'.
4320
4321 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
4322 before doing the mark_stack_check_gcpros since they're not on the stack.
4323
4324 2004-09-12 Kim F. Storm <storm@cua.dk>
4325
4326 * editfns.c (Fformat): Handle format strings with multiple text
4327 properties. Reverse text property list from the format string,
4328 so the positions are in increasing order.
4329
4330 2004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4331
4332 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
4333 x_uncatch_errors so that possible protocol errors are delivered.
4334
4335 2004-09-10 Eli Zaretskii <eliz@gnu.org>
4336
4337 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
4338 blockinput.h.
4339 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
4340 charset.h, and coding.h
4341 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
4342 (term.o): Depend on window.h and keymap.h.
4343 (abbrev.o): Depend on syntax.h.
4344 (callint.o): Depend on keymap.h.
4345 (casefiddle.o): Depend on charset.h and keymap.h.
4346 (category.o): Depend on keymap.h.
4347 (coding.o): Depend on dispextern.h.
4348 (cmds.o): Depend on keyboard.h and keymap.h.
4349 (dispnew.o): Depend on indent.h and intervals.h.
4350 (doc.o): Depend on keymap.h.
4351 (editfns.o): Depend on frame.h.
4352 (emacs.o): Depend on dispextern.h.
4353 (fileio.o): Don't depend on ccl.h.
4354 (filelock.o): Depend on charset.h and coding.h.
4355 (frame.o): Depend on w32term.h and macterm.h.
4356 (insdel.o): Depend on region-cache.h.
4357 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
4358 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
4359 (search.o): Depend on $(INTERVALS_SRC).
4360 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
4361 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
4362 xterm.h, w32term.h, and macterm.h.
4363 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
4364 w32term.h, and macterm.h.
4365 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
4366 region-cache.h, xterm.h, w32term.h, and macterm.h.
4367 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
4368 (data.o): Depend on frame.h.
4369 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
4370 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
4371 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
4372 (intervals.o): Depend on keymap.h.
4373
4374 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
4375 Add debugging print-out to termscript.
4376
4377 2004-09-09 Richard M. Stallman <rms@gnu.org>
4378
4379 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
4380
4381 2004-09-08 Richard M. Stallman <rms@gnu.org>
4382
4383 * window.c (Fset_window_buffer): Doc fix.
4384
4385 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
4386
4387 2004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
4388
4389 * minibuf.c (history_delete_duplicates): New variable.
4390 (read_minibuf): Use it.
4391 (syms_of_minibuf): Create the corresponding lisp variable.
4392
4393 2004-09-08 Kim F. Storm <storm@cua.dk>
4394
4395 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
4396 overlay just before point.
4397
4398 2004-09-07 Luc Teirlinck <teirllm@auburn.edu>
4399
4400 * buffer.h (struct buffer): Add auto_save_file_format field.
4401 * buffer.c (reset_buffer, init_buffer_once):
4402 Handle auto_save_file_format field.
4403 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
4404 `buffer-auto-save-file-format'.
4405 * fileio.c: Delete declaration for removed Vauto_save_file_format.
4406 (build_annotations): Adapt to replacement of
4407 `auto-save-file-format' with the new buffer-local variable
4408 `buffer-auto-save-file-format'.
4409 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
4410
4411 2004-09-07 Jason Rumney <jasonr@gnu.org>
4412
4413 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
4414
4415 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
4416 Handle Unicode menu titles.
4417
4418 2004-09-07 Kim F. Storm <storm@cua.dk>
4419
4420 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
4421 property from text property or overlay strings at point.
4422
4423 2004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
4424
4425 * xmenu.c (update_submenu_strings): YAILOM.
4426 (set_frame_menubar): Make sure last_i is initialized.
4427
4428 2004-09-03 Jason Rumney <jasonr@gnu.org>
4429
4430 * w32menu.c (_widget_value): Add lname and lkey.
4431 (digest_single_submenu): Set lname and lkey in widget_value
4432 instead of name and key.
4433 (update_submenu_strings): New function.
4434 (set_frame_menubar): Remove call to inhibit_garbage_collection,
4435 call update_submenu_strings.
4436
4437 * w32menu.c (globals_of_w32menu): Check for Unicode API.
4438 (digest_single_submenu, w32_menu_show): Encode menu strings as
4439 UTF-8 if Unicode API is available.
4440 (utf8to16): New function.
4441 (add_menu_item): Use it when calling Unicode API.
4442
4443 2004-09-03 Kim F. Storm <storm@cua.dk>
4444
4445 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
4446 in overlay or text-property strings; set cursor on corresponding
4447 glyph rather than at end of the string.
4448
4449 2004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4450
4451 * macfns.c (x_real_positions): Save the current window port and
4452 set a new one before obtaining the global coordinate.
4453 Use FRAME_MAC_WINDOW.
4454 (x_set_name, x_set_title): Encode title to UTF8.
4455 Use SetWindowTitleWithCFString.
4456 (Fx_server_version): Get correct OS version.
4457
4458 * macmenu.c (add_menu_item): Remove unused variable `i'.
4459 Don't let separator items destroy refence constants of other menu items.
4460
4461 * macterm.c (x_update_end): Move SetPortWindowPort to inside
4462 BLOCK_INPUT.
4463 (x_set_offset): Use FRAME_MAC_WINDOW.
4464
4465 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
4466 nontext_cursor if it is on a scroll bar.
4467
4468 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
4469 Carbon support.
4470 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
4471 Use LIBS_CARBON.
4472
4473 2004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4474
4475 * xfns.c (x_set_name_internal): New function. Check if we shall call
4476 xfree before ENCODE_UTF_8.
4477 (x_set_name, x_set_title): Call x_set_name_internal.
4478
4479 2004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
4480
4481 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
4482 reload it.
4483
4484 2004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4485
4486 * macmenu.c (_widget_value): Add lname and lkey.
4487 (single_submenu): Set lname and lkey in widget_value
4488 instead of name and key.
4489 (update_submenu_strings): New function.
4490 (set_frame_menubar): Remove call to inhibit_garbage_collection,
4491 call update_submenu_strings.
4492
4493 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
4494 instead of name and key.
4495 (update_submenu_strings): New function.
4496 (set_frame_menubar): Remove call to inhibit_garbage_collection,
4497 call update_submenu_strings.
4498
4499 * gtkutil.h (_widget_value): Added lname and lkey.
4500
4501 2004-08-30 Steven Tamm <steventamm@mac.com>
4502
4503 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
4504 by using different names for inner loop variables.
4505
4506 2004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4507
4508 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
4509 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
4510
4511 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
4512 tool bar items is 0.
4513
4514 2004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4515
4516 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
4517 strings in menu items.
4518 (single_submenu): Use ENCODE_MENU_STRING
4519 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
4520 button release isn't passed to event loop
4521 (add_menu_item): Use SetMenuItemWithCFString
4522
4523 2004-08-26 Steven Tamm <steventamm@mac.com>
4524
4525 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
4526 tool-bar/menu click.
4527 * macfns.c (Fx_file_dialog): Implement using NavServices.
4528
4529 2004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4530
4531 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
4532
4533 * xfns.c (x_window_to_frame, x_any_window_to_frame)
4534 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
4535 (x_top_window_to_frame): Return 0 if wdesc is None.
4536
4537 2004-08-22 Richard M. Stallman <rms@gnu.org>
4538
4539 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
4540 HAVE_TERMIOS]: If there's no char for this signal, drop through
4541 and use system calls.
4542
4543 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
4544
4545 2004-08-20 Kim F. Storm <storm@cua.dk>
4546
4547 * process.c (wait_reading_process_output): Rename from
4548 wait_reading_process_input. All uses changed.
4549 (wait_reading_process_output_1): Rename from
4550 wait_reading_process_input_1. All uses changed.
4551
4552 * dispnew.c (Fsleep_for): Remove obsolete code.
4553
4554 2004-08-20 Kenichi Handa <handa@m17n.org>
4555
4556 * syntax.c (skip_chars): Fix for unibyte case.
4557
4558 2004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
4559
4560 * syntax.c (char_quoted): Mixup byte/char pos.
4561 (back_comment): Fixup globals in all cases.
4562
4563 2004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4564
4565 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
4566 passing it to gtk_window_set_title.
4567
4568 2004-08-19 Kim F. Storm <storm@cua.dk>
4569
4570 * process.c (wait_reading_process_input): Clean up.
4571 Add wait_for_cell, wait_proc, and just_wait_proc args
4572 to avoid overloading `read_kbd' and `do_display' args.
4573 Change read_kbd arg to int. All callers changed.
4574
4575 * process.c (process_send_signal): Use CDISABLE.
4576
4577 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
4578
4579 2004-08-18 Kim F. Storm <storm@cua.dk>
4580
4581 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
4582 forward to wait_reading_process_input via DO_DISPLAY arg.
4583 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
4584 object, only process output from that process; also inhibit
4585 running timers if DO_DISPLAY==-2.
4586
4587 2004-08-17 Kim F. Storm <storm@cua.dk>
4588
4589 * process.c (process_send_signal): Fix last change--use
4590 _POSIX_VDISABLE instead of CVDISABLE when available.
4591
4592 2004-08-16 Richard M. Stallman <rms@gnu.org>
4593
4594 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
4595 Set VQUIT and VINTR chars to the standard ones if they are unset.
4596 [AIX]: Don't do that here. And don't force VINTR to standard
4597 when SIGNALS_VIA_CHARACTERS.
4598
4599 * process.c (process_send_signal)
4600 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
4601 Do nothing if the character is CVDISABLE.
4602
4603 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
4604
4605 * intervals.c (move_if_not_intangible):
4606 Force POSITION to be between BEGV and ZV.
4607
4608 2004-08-14 John Paul Wallington <jpw@gnu.org>
4609
4610 * buffer.c (Frestore_buffer_modified_p): Doc fix.
4611
4612 * fileio.c (Fread_file_name): Doc fix.
4613
4614 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
4615
4616 2004-08-09 Luc Teirlinck <teirllm@auburn.edu>
4617
4618 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
4619
4620 2004-08-08 Luc Teirlinck <teirllm@auburn.edu>
4621
4622 * keyboard.c: Declare Qdisabled_command_function instead of
4623 Qdisabled_command_hook.
4624 (Fcommand_execute): Use Qdisabled_command_function instead of
4625 Qdisabled_command_hook.
4626 (syms_of_keyboard): Ditto.
4627
4628 2004-08-07 Luc Teirlinck <teirllm@auburn.edu>
4629
4630 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
4631 (syms_of_keymap) <key-translation-map>: Doc fixes.
4632
4633 2004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
4634
4635 * window.c (window_list_1): YAILOM.
4636
4637 * fileio.c (make_temp_name): Handle multibyte prefixes.
4638
4639 2004-08-06 Luc Teirlinck <teirllm@auburn.edu>
4640
4641 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
4642 Doc fix.
4643
4644 2004-08-03 Kenichi Handa <handa@m17n.org>
4645
4646 * coding.c (decode_coding_string): Adjust coding->consumed, and
4647 etc. with shrinked_bytes.
4648
4649 2004-08-03 Kim F. Storm <storm@cua.dk>
4650
4651 * indent.c (compute_motion): Fix check for full width window
4652 in non-window case. Do not count left truncation glyph on
4653 window systems.
4654
4655 2004-08-02 Luc Teirlinck <teirllm@auburn.edu>
4656
4657 * data.c (Finteractive_form): Doc fix.
4658
4659 2004-08-02 Kim F. Storm <storm@cua.dk>
4660
4661 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
4662 properly accounting for continuation glyph on non-window systems.
4663 (Fcompute_motion): Use actual window width if WIDTH is nil, and
4664 actual window width/height if TOPOS is nil, properly accounting for
4665 continuation glyphs on non-window systems, and optional header lines.
4666 (vmotion): Let compute_motion calculate actual window width.
4667
4668 * window.c (window_scroll_line_based): Let compute_motion
4669 calculate actual window width.
4670
4671 2004-08-02 Kim F. Storm <storm@cua.dk>
4672
4673 * process.c (read_process_output): Use whole read buffer.
4674 Don't trigger adaptive read buffering on errors.
4675
4676 2004-07-31 Luc Teirlinck <teirllm@auburn.edu>
4677
4678 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
4679
4680 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
4681
4682 * callint.c (Fcall_interactively): Doc fix.
4683
4684 2004-07-30 Richard M. Stallman <rms@gnu.org>
4685
4686 * abbrev.c (Fexpand_abbrev): Undo previous change.
4687
4688 2004-07-30 Kim F. Storm <storm@cua.dk>
4689
4690 * editfns.c (Fformat): Allocate extra (dummy) element in info.
4691
4692 2004-07-28 Luc Teirlinck <teirllm@auburn.edu>
4693
4694 * eval.c (Fdefvar, Fdefconst): Doc fixes.
4695
4696 2004-07-27 Kim F. Storm <storm@cua.dk>
4697
4698 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
4699 we have ensured that the glyph fits on the current line (or returned
4700 MOVE_LINE_CONTINUED otherwise).
4701
4702 2004-07-26 Kim F. Storm <storm@cua.dk>
4703
4704 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
4705 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
4706 if target position is at end of display line but char is not a newline.
4707
4708 2004-07-25 Richard M. Stallman <rms@gnu.org>
4709
4710 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
4711 instead of ON_VERTICAL_BORDER, when on scroll bar.
4712 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
4713
4714 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
4715
4716 * window.c (Fcoordinates_in_window_p):
4717 Take account of FRAME_INTERNAL_BORDER_WIDTH.
4718
4719 * alloc.c (check_cons_list): New function (contents commented out).
4720
4721 2004-07-24 Luc Teirlinck <teirllm@auburn.edu>
4722
4723 * xfaces.c (Fcolor_supported_p): Doc fix.
4724
4725 * frame.c (Fselect_frame, Fset_frame_selected_window)
4726 (Fframe_visible_p, Fraise_frame): Doc fixes.
4727
4728 2004-07-24 Richard M. Stallman <rms@gnu.org>
4729
4730 * keyboard.h (not_single_kboard_state): Declare.
4731
4732 * fileio.c (Fwrite_region): Doc fix.
4733
4734 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
4735
4736 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
4737 only when a real abbrev is present.
4738
4739 * xfns.c (x_icon_verify): New function.
4740 (Fx_create_frame): Use it.
4741
4742 2004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
4743
4744 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
4745
4746 2004-07-21 Kim F. Storm <storm@cua.dk>
4747
4748 * window.h (struct glyph_matrix): New members nrows_scale_factor
4749 and ncols_scale_factor.
4750
4751 * window.c (make_window): Initialize nrows_scale_factor and
4752 ncols_scale_factor members.
4753
4754 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
4755 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
4756 (required_matrix_height): Apply nrows_scale_factor.
4757 (required_matrix_width): Apply ncols_scale_factor.
4758
4759 * xdisp.c (display_line): Increment nrows_scale_factor and set
4760 fonts_changed_p if past last allocated row.
4761 (append_glyph, append_composite_glyph, produce_image_glyph)
4762 (append_stretch_glyph): Increment ncols_scale_factor and set
4763 fonts_changed_p if current area is full.
4764
4765 2004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4766
4767 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
4768
4769 2004-07-19 Luc Teirlinck <teirllm@auburn.edu>
4770
4771 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
4772 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
4773 (Fset_window_start, Fscroll_up, Fscroll_down)
4774 (Fother_window_for_scrolling, Fscroll_other_window)
4775 (Fsave_window_excursion, Fset_window_vscroll)
4776 (syms_of_window) <window-size-fixed>: Doc fixes.
4777
4778 2004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
4779
4780 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
4781 ENCODE_SYSTEM for filenames.
4782
4783 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4784
4785 * mac.c (sys_select): Block input around call to
4786 ReceiveNextEvent to prevent breakage. Correctly handle
4787 blocking on event queue only by calling ReceiveNextEvent
4788 instead of select (since GUI events aren't on an fd).
4789 (sys_read): Remove function
4790 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
4791
4792 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4793
4794 * mac.c (sys_select): Redo sys_select to use alarm-based
4795 polling instead of 1 sec timeouts (like solaris).
4796
4797 * macterm.c (x_make_frame_visible): Comment in polling on
4798 frame creation.
4799
4800 * keyboard.c: Undef SIGIO on Carbon
4801
4802 * atimer.c (alarm_signal_handler): Call alarm handlers after
4803 scheduling.
4804
4805 * eval.c (Feval): Remove quit_char test
4806
4807 * process.c (wait_reading_process_input): Remove clearing
4808 stdin for select call on process input.
4809
4810 2004-07-18 Luc Teirlinck <teirllm@auburn.edu>
4811
4812 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
4813 capitalization error in docstring.
4814
4815 2004-07-17 Juanma Barranquero <lektu@terra.es>
4816
4817 * keyboard.c (not_single_kboard_state): Do nothing unless
4818 MULTI_KBOARD is defined.
4819
4820 2004-07-17 Richard M. Stallman <rms@gnu.org>
4821
4822 * window.c (coordinates_in_window): Inside the window but outside
4823 its box to the L or R, return ON_VERTICAL_BORDER.
4824 (window_list_1): Rotate the list to start with WINDOW.
4825
4826 * print.c (print_preprocess): Test for print_depth at limit
4827 before entering in being_printed.
4828
4829 * keyboard.c (not_single_kboard_state): New function.
4830 (stuff_buffered_input): Now no-op only if no SIGTSTP.
4831
4832 * frame.c (Fdelete_frame): If we're in single_bboard_state on
4833 this kboard, and we delete its last frame, go to any_kboard_state.
4834
4835 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
4836
4837 2004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
4838
4839 * w32fns.c (Fx_file_dialog): Encode strings in system coding
4840 system before passing them to OS functions for display.
4841
4842 2004-07-15 David Kastrup <dak@gnu.org>
4843
4844 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
4845 Apparently fixes an abort condition.
4846
4847 2004-07-14 Luc Teirlinck <teirllm@auburn.edu>
4848
4849 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
4850 instead of a cons.
4851
4852 2004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
4853
4854 * keyboard.c (echo_dash): Do nothing if there already is a dash
4855 at the end of the echo string.
4856
4857 2004-07-12 Kim F. Storm <storm@cua.dk>
4858
4859 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
4860 if GC_MARK_STACK.
4861
4862 2004-07-10 Luc Teirlinck <teirllm@auburn.edu>
4863
4864 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
4865
4866 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
4867 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
4868 (Freplace_buffer_in_windows, Fset_window_buffer)
4869 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
4870 (syms_of_window): Expand docstring of `display-buffer-function'.
4871
4872 2004-07-09 Luc Teirlinck <teirllm@auburn.edu>
4873
4874 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
4875 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
4876 that time values of the type (HIGH . LOW) are considered obsolete.
4877
4878 2004-07-06 Luc Teirlinck <teirllm@auburn.edu>
4879
4880 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
4881 docstring.
4882
4883 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
4884
4885 2004-07-06 John Paul Wallington <jpw@gnu.org>
4886
4887 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
4888
4889 * fns.c (Fclear_string): Signal an error if STRING is not a string.
4890
4891 2004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4892
4893 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
4894 instead of CGMainDisplayID (only in OSX 10.2 and later).
4895
4896 2004-07-04 John Paul Wallington <jpw@gnu.org>
4897
4898 * fileio.c (read_file_name_completion_ignore_case): New variable.
4899 (syms_of_fileio): Declare and initialise it.
4900 (Fread_file_name): Bind `completion-ignore-case' to respect it.
4901
4902 2004-07-03 Eli Zaretskii <eliz@gnu.org>
4903
4904 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
4905 for event.x and event.y.
4906
4907 2004-07-01 Kenichi Handa <handa@m17n.org>
4908
4909 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
4910 after getting a new string by pre-write-conversion.
4911
4912 2004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
4913
4914 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
4915 (x_calc_absolute_position): Remove unused var `child'.
4916
4917 * xfaces.c (x_supports_face_attributes_p)
4918 (Fdisplay_supports_face_attributes_p): YAILOM.
4919 (tty_supports_face_attributes_p): Remove unused var `i'.
4920
4921 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
4922 back_unibyte_ok.
4923
4924 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
4925
4926 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
4927
4928 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
4929
4930 2004-06-30 Andreas Schwab <schwab@suse.de>
4931
4932 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
4933 (Finit_image_library): Pass LIBRARIES through to
4934 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
4935 (lookup_image_type): Pass Qnil as second argument to
4936 Finit_image_library.
4937
4938 * lisp.h (Finit_image_library): Declare.
4939
4940 2004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4941
4942 * macterm.c (do_window_activate, do_window_deactivate): Remove.
4943 (XTread_socket): Send mouse button events to the toolbox
4944 dispatcher even when the mouse is grabbed. Don't process window
4945 activate events for non-Emacs windows. Replace function calls to
4946 do_window_activate and do_window_deactivate with their contents.
4947 Reset mouse grabbing status when a window is deactivated.
4948
4949 2004-06-29 Steven Tamm <steventamm@mac.com>
4950
4951 * macterm.c (mac_get_emulated_btn)
4952 (mac_event_to_emacs_modifiers): Fix emulated mouse button
4953 support to correctly mask out modifiers.
4954
4955 2004-06-29 David Kastrup <dak@gnu.org>
4956
4957 * search.c (Fset_match_data): Allow buffer before end of list
4958 which can happen if set-match-data is using a pre-consed list.
4959
4960 2004-06-28 Steven Tamm <steventamm@mac.com>
4961
4962 * macterm.c (XTread_socket): Correctly set the frame position
4963 after the window is moved.
4964
4965 2004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4966
4967 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
4968 gpix and gmask just before return to avoid memory leak.
4969 (xg_get_image_for_pixmap): Add workaround for monochrome displays
4970 so insensitive and activated icons look ok.
4971
4972 2004-06-27 Jason Rumney <jasonr@gnu.org>
4973
4974 * w32fns.c (file_dialog_callback): Disable edit control if set
4975 to directories only on CDN_INITDONE message.
4976 (Fx_file_dialog): Default to directories only when prompt starts
4977 with "Dired".
4978
4979 2004-06-25 Kim F. Storm <storm@cua.dk>
4980
4981 * alloc.c (allocate_misc): Update total_free_markers.
4982 (free_misc): New function.
4983 (safe_alloca_unwind, free_marker): Use it.
4984
4985 * lisp.h (free_misc): Add prototype.
4986
4987 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
4988
4989 2004-06-24 Richard M. Stallman <rms@gnu.org>
4990
4991 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
4992 (syms_of_emacs): Lisp variables deleted.
4993
4994 2004-06-23 David Kastrup <dak@gnu.org>
4995
4996 * search.c (Freplace_match): Adjust the match-data more thoroughly
4997 when replacing strings in the buffer.
4998 (Fmatch_data): When INTEGERS is non-nil and the last match was in
4999 a buffer, add the buffer as last element to the match data.
5000 (Fset_match_data): If an additional element of the match-data is a
5001 buffer, restore it to last_thing_searched.
5002 (save_search_regs): Save last_thing_searched as part of the match data.
5003 (restore_match_data): Restore it again.
5004
5005 2004-06-23 Luc Teirlinck <teirllm@auburn.edu>
5006
5007 * keymap.c (Ftext_char_description): Doc fix.
5008 * doc.c (Fsnarf_documentation): Doc fix.
5009
5010 2004-06-22 Kim F. Storm <storm@cua.dk>
5011
5012 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
5013
5014 * lisp.h (struct Lisp_Save_Value): New member dogc.
5015 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
5016 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
5017 (SAFE_FREE_LISP): New macro.
5018
5019 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
5020 (make_save_value): Init new dogc member.
5021 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
5022
5023 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
5024 SAFE_FREE_LISP macros.
5025
5026 2004-06-22 Kim F. Storm <storm@cua.dk>
5027
5028 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
5029 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
5030 in that memory area are unknown to GC. Add comments.
5031
5032 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
5033
5034 2004-06-21 Kim F. Storm <storm@cua.dk>
5035
5036 * lisp.h (MAX_ALLOCA): Define here.
5037 (safe_alloca_unwind): Add prototype.
5038 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
5039
5040 * alloc.c (safe_alloca_unwind): New function.
5041
5042 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
5043
5044 * charset.c (Fstring): Use SAFE_ALLOCA.
5045
5046 * coding.c (MAX_ALLOCA): Remove define.
5047
5048 * data.c (MAX_ALLOCA): Remove define.
5049 (Faset): Use SAFE_ALLOCA.
5050
5051 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
5052
5053 * fns.c (string_make_multibyte, string_to_multibyte)
5054 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
5055 (MAX_ALLOCA): Remove define.
5056 (Fbase64_encode_region, Fbase64_encode_string)
5057 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
5058 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
5059 memory leak if encoding fails.
5060
5061 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
5062
5063 2004-06-21 Eli Zaretskii <eliz@gnu.org>
5064
5065 * print.c (Fwith_output_to_temp_buffer): Doc fix.
5066
5067 2004-06-20 Richard M. Stallman <rms@gnu.org>
5068
5069 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
5070
5071 * search.c (match_limit): Cleaner err msg when no match data available.
5072
5073 * window.c (syms_of_window): Doc fix.
5074
5075 * keyboard.c (command_loop_1): Handle values `only' and `identity'
5076 for Vtransient_mark_mode.
5077
5078 * buffer.c (syms_of_buffer): Doc fix.
5079
5080 2004-06-21 David Kastrup <dak@gnu.org>
5081
5082 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
5083 and unbinding of `case-fold-search' according to
5084 `completion-ignore-case' around calls of string-match and
5085 predicates, respectively. Should give satisfactory performance
5086 in all relevant cases.
5087
5088 2004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5089
5090 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
5091 clip_x/y_origin.
5092
5093 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
5094
5095 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
5096
5097 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
5098 on Mac OSX.
5099
5100 2004-06-16 Luc Teirlinck <teirllm@auburn.edu>
5101
5102 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
5103
5104 2004-06-16 Kim F. Storm <storm@cua.dk>
5105
5106 * dispextern.h (Vimage_types): Remove extern.
5107
5108 2004-06-16 Miles Bader <miles@gnu.org>
5109
5110 * image.c (lookup_image_type): Initialize image type if necessary.
5111
5112 2004-06-15 Kim F. Storm <storm@cua.dk>
5113
5114 * xdisp.c (try_cursor_movement): Exclude header line from scroll
5115 margin at top of window.
5116 (try_window_reusing_current_matrix): Calculate proper cursor position
5117 after scrolling up with non-zero scroll margin, as the old cursor
5118 position corresponds to value of PT before executing this command.
5119 (try_window_id): Consider scroll margin at bottom of window too;
5120 otherwise we fail to scroll when hl-line-mode is enabled.
5121
5122 * syntax.c (skip_chars): Only recognize [:class:] when it has the
5123 proper format and class is a lower-case word.
5124
5125 2004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5126
5127 * gtkutil.c (xg_get_image_for_pixmap): New function.
5128 (xg_get_gdk_pixmap_and_mask): Remove.
5129 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
5130 xg_get_gdk_pixmap_and_mask.
5131
5132 * xterm.h (struct x_display_info): Typo in comment fixed.
5133
5134 2004-06-14 Juanma Barranquero <lektu@terra.es>
5135
5136 * dispextern.h (Vimage_types): Make it conditional on
5137 HAVE_WINDOW_SYSTEM.
5138
5139 * image.c (Vimage_types): Move from xdisp.c.
5140 (Vimage_type_cache): New variable.
5141 (define_image_type): New argument indicating whether an image
5142 library was loaded; cache loaded status and return t on success,
5143 nil otherwise.
5144 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
5145 (w32_delayed_load): New function to load an image library from a
5146 list of possible filenames.
5147 (init_xpm_functions, init_png_functions, init_jpeg_functions)
5148 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
5149 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
5150 (Finit_image_library): New function, extracted from `init_image'.
5151 Try to initialize an image library on demand and cache whether we
5152 were successful or not.
5153 (syms_of_image): Initialize `Vimage_types' and
5154 `Vimage_type_cache'. Add recognized image types to Vimage_types.
5155 Export `init-image-library'.
5156 (init_image): Remove initialization of all image types, except xbm
5157 and pbm.
5158
5159 * xdisp.c (Vimage_types): Delete (moved to image.c).
5160
5161 2004-06-14 Andreas Schwab <schwab@suse.de>
5162
5163 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
5164 Avoid calling specbind when completion-regexp-list is empty.
5165
5166 2004-06-13 Richard M. Stallman <rms@gnu.org>
5167
5168 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
5169 (re_wctype, re_iswctype, re_wctype_to_bit):
5170 Non-function definitions moved here from regex.c.
5171
5172 * regex.c (re_wctype, re_iswctype): Function defs longer static.
5173 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
5174 (re_wctype, re_iswctype, re_wctype_to_bit):
5175 Non-function definitions moved to regex.h.
5176
5177 * window.c (Fselect_window): Doc fix.
5178
5179 * syntax.c: Include regex.h.
5180 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
5181 If requested, make a list of classes, then check the scanned
5182 chars for membership in them.
5183 (in_classes): New function.
5184 Doc fix.
5185
5186 * keyboard.c (cmd_error): Don't call any_kboard_state
5187 if inside a recursive edit level.
5188
5189 2004-06-13 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
5190
5191 * keyboard.c (command_loop): Call any_kboard_state before
5192 command_loop_2 when at top level.
5193
5194 2004-06-13 Andreas Schwab <schwab@suse.de>
5195
5196 * print.c (print_object): Always use %ld for printing EMACS_INT.
5197
5198 * keyboard.c (cancel_hourglass_unwind): Return a value.
5199 (modify_event_symbol): Always use %ld for printing EMACS_INT.
5200 (Fexecute_extended_command): Likewise.
5201
5202 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
5203 avoid clashes.
5204 (SYNTAX): Likewise.
5205 (SYNTAX_WITH_FLAGS): Likewise.
5206 (SYNTAX_MATCH): Likewise.
5207
5208 * syntax.c (char_quoted): Avoid warning about undefined operation.
5209 (find_defun_start): Likewise.
5210 (scan_lists): Likewise.
5211 (INC_FROM): Likewise.
5212 (scan_sexps_forward): Likewise.
5213
5214 * image.c: Include <ctype.h>.
5215
5216 * xfaces.c (face_attr_equal_p): Declare parameters.
5217
5218 2004-06-13 Kenichi Handa <handa@m17n.org>
5219
5220 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
5221
5222 2004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
5223
5224 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
5225
5226 2004-06-12 Kenichi Handa <handa@m17n.org>
5227
5228 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
5229 ccl_prog_stack_struct and update it.
5230 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
5231 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
5232 ccl->eof_ic on EOF.
5233 (ccl_debug_hook): New function.
5234 (struct ccl_prog_stack): New member eof_ic.
5235 (ccl_driver): Handle EOF in subrountine call correctly.
5236
5237 2004-06-11 Kenichi Handa <handa@m17n.org>
5238
5239 * coding.c (encode_coding_string): Check CODING_FINISH_INTERRUPT.
5240
5241 2004-06-11 Kim F. Storm <storm@cua.dk>
5242
5243 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
5244
5245 2004-06-11 Juanma Barranquero <lektu@terra.es>
5246
5247 * keyboard.c (Fposn_at_point): Doc fix.
5248
5249 2004-06-11 David Kastrup <dak@gnu.org>
5250
5251 * search.c (match_limit): Don't flag an error if match-data
5252 exceeding the allocated search_regs.num_regs gets requested, just
5253 return Qnil.
5254
5255 2004-06-08 Miles Bader <miles@gnu.org>
5256
5257 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
5258
5259 2004-06-07 Juanma Barranquero <lektu@terra.es>
5260
5261 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
5262 (Fcurrent_time_string, Fcurrent_time_zone)
5263 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
5264
5265 2004-06-07 Miles Bader <miles@gnu.org>
5266
5267 * xfaces.c (struct named_merge_point): New type.
5268 (push_named_merge_point): New function.
5269 (merge_named_face): New function.
5270 (merge_face_ref, face_at_buffer_position, face_at_string_position):
5271 Use `merge_named_face'.
5272 (merge_face_inheritance): Function removed.
5273 (merge_face_ref): Rename from `merge_face_vector_with_property'.
5274 Add new `err_msgs' and `named_merge_points' args. Return error
5275 status. Only print error messages if ERR_MSGS is true. Don't try to
5276 do :inherit attribute validation.
5277 (merge_face_heights): Handle `unspecified' in both directions.
5278 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
5279 Call `merge_face_ref' instead of `merge_face_inheritance'.
5280 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
5281 (compute_char_face, face_at_buffer_position)
5282 (face_at_string_position): Call `merge_face_ref' instead of
5283 `merge_face_vector_with_property'.
5284
5285 2004-06-07 Kenichi Handa <handa@m17n.org>
5286
5287 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
5288 the necessary places.
5289
5290 2004-06-07 Kim F. Storm <storm@cua.dk>
5291
5292 * process.c (Fdelete_process): Undo 2004-05-28 change.
5293 Instead, call status_notify also for network process.
5294 (status_message): Use process instead of status as arg.
5295 Give messages "deleted" or "connection broken by remote peer" for
5296 an exited network process.
5297 (status_notify): Change call to status_message.
5298 (read_process_output): Increase readmax to 4096. Do not increase
5299 buffer size for datagram channels (default is now large enough).
5300
5301 2004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
5302
5303 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
5304 problem due to newly defined variable.
5305
5306 2004-06-06 Miles Bader <miles@gnu.org>
5307
5308 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
5309 immediately if non-interactive or not initialized.
5310
5311 2004-06-05 Richard M. Stallman <rms@gnu.org>
5312
5313 * minibuf.c (Fcompleting_read): Doc fix.
5314
5315 2004-06-05 Andreas Schwab <schwab@suse.de>
5316
5317 * macfns.c (x_create_tip_frame): Fix declaration after statement.
5318
5319 2004-06-05 Juanma Barranquero <lektu@terra.es>
5320
5321 * keymap.c (Fdescribe_vector): Fix docstring.
5322 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
5323
5324 2004-06-05 Miles Bader <miles@gnu.org>
5325
5326 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
5327 attributes have different values than the default face.
5328
5329 2004-06-04 Eli Zaretskii <eliz@gnu.org>
5330
5331 * xfaces.c (x_supports_face_attributes_p): Make this function
5332 conditional on HAVE_WINDOW_SYSTEM.
5333 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
5334 Don't call x_supports_face_attributes_p if it was not compiled in.
5335
5336 2004-06-04 Miles Bader <miles@gnu.org>
5337
5338 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
5339 from Ftty_supports_face_attributes_p.
5340 (x_supports_face_attributes_p): New function.
5341 (Ftty_supports_face_attributes_p): Function deleted.
5342 (Fdisplay_supports_face_attributes_p): New function.
5343 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
5344 (face_attr_equal_p): New function.
5345 (lface_equal_p): Use it.
5346
5347 2004-06-03 Juanma Barranquero <lektu@terra.es>
5348
5349 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
5350 (Vw32_color_map): Fix typo in docstring.
5351 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
5352 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
5353 Make argument names match their use in docstring.
5354
5355 2004-06-02 Juanma Barranquero <lektu@terra.es>
5356
5357 Work around bugs/problems with MinGW builds of graphics libraries
5358 called from MSVC builds of Emacs.
5359
5360 * image.c (lookup_image): Make pointer to img static.
5361 (png_read_from_memory): Disable "global" optimization.
5362
5363 2004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
5364
5365 * eval.c (Fcondition_case): Fix usage. Simplify.
5366
5367 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
5368
5369 2004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5370
5371 * macfns.c: Don't include ccl.h.
5372 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
5373 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
5374 TextUtils.h.
5375 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
5376 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
5377 display height/width.
5378 (compute_tip_xy, Vx_max_tooltip_size): Declare.
5379 (unwind_create_tip_frame, compute_tip_xy): New functions.
5380 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
5381 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
5382 and last_show_tip_args.
5383
5384 * macgui.h [!MAC_OSX]: Include Gestalt.h.
5385 (Cursor, No_Cursor): New defines.
5386 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
5387 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
5388
5389 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
5390
5391 * macterm.c: Don't include Gestalt.h.
5392 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
5393 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
5394 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
5395 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
5396 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
5397 (construct_mouse_click, XTmouse_position)
5398 (x_scroll_bar_report_motion, x_calc_absolute_position)
5399 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
5400 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
5401 (note_mouse_movement): Clear the mouse face and reset the pointer
5402 shape when the pointer goes outside the frame without grabbing.
5403 (mac_front_window): New function.
5404 (mac_window_to_frame): New macro.
5405 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
5406 (do_window_activate, do_window_deactivate, do_app_resume)
5407 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
5408 (do_zoom_window, mac_do_receive_drag, XTread_socket)
5409 (mac_check_for_quit_char): Use mac_front_window and/or
5410 mac_window_to_frame.
5411 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
5412 scroll-bar click event.
5413 (mac_define_frame_cursor): Change the pointer shape.
5414 (x_free_frame_resources): Reset tip_window to NULL when it is disposed.
5415 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
5416 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
5417 (do_window_update): Don't do anything if the updated window is the
5418 tooltip window.
5419 (do_mouse_moved): Handle mouse movement events here (previously in
5420 XTread_socket). Clear the mouse face if
5421 dpyinfo->mouse_face_hidden is set.
5422 (do_os_event, do_events): Remove (now in XTread_socket).
5423 (XTread_socket): Immediately return if interrupt_input_blocked.
5424 Loop until all the events in the queue are processed.
5425 Rearrange codes for mouse grabbing. Add tooltip support. Include the
5426 contents of do_os_event and do_events. Remove mouse movement
5427 handling (now in do_mouse_moved). Add the case where
5428 Vmouse_highlight has an integer value.
5429 (NewMacWindow): Remove.
5430 (make_mac_frame): Do what NewMacWindow previously did. Don't do
5431 excess initializations.
5432 (make_mac_terminal_frame): Previous initializations in
5433 make_mac_frame are moved here.
5434 (mac_initialize_display_info):
5435 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
5436
5437 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
5438 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
5439
5440 2004-05-29 Richard M. Stallman <rms@gnu.org>
5441
5442 * lisp.h (truncate_undo_list): Update decl.
5443
5444 * alloc.c (undo_outer_limit): New variable.
5445 (syms_of_alloc): Defvar it.
5446 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
5447
5448 * undo.c (truncate_undo_list): New arg LIMITSIZE.
5449
5450 * alloc.c (lisp_align_malloc): Check for base == 0
5451 regardless of HAVE_POSIX_MEMALIGN.
5452 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
5453
5454 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
5455
5456 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
5457 (marker_blocks_pending_free): Remove.
5458 (Fgarbage_collect): Sweep after cleaning up undo-lists.
5459 Mark the undo lists after claning them up.
5460 Don't free block in marker_blocks_pending_free.
5461 (mark_buffer): Don't mark undo_list.
5462 (gc_sweep): Sweep hash-tables and strings first.
5463 Do free marker blocks that are empty.
5464
5465 2004-05-28 Jim Blandy <jimb@redhat.com>
5466
5467 * regex.c (print_partial_compiled_pattern): Add missing 'break'
5468 after 'case wordend'. For symbeg and symend, print to stderr,
5469 like the other cases.
5470
5471 2004-05-28 Noah Friedman <friedman@splode.com>
5472
5473 * process.c (Fdelete_process): Do not call remove_process.
5474
5475 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
5476
5477 * alloc.c (struct backtrace): Remove.
5478 (Fgarbage_collect): Use the new mark_backtrace.
5479
5480 * eval.c (mark_backtrace): New function.
5481
5482 * minibuf.c (run_exit_minibuf_hook): New function.
5483 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
5484 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
5485
5486 2004-05-27 Kim F. Storm <storm@cua.dk>
5487
5488 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
5489 over display properties, e.g. images, that replace buffer text.
5490
5491 2004-05-25 Kim F. Storm <storm@cua.dk>
5492
5493 * alloc.c (marker_blocks_pending_free): New var.
5494 (gc_sweep): Store free marker blocks on that list.
5495 (Fgarbage_collect): Free them after undo-list cleanup.
5496
5497 * process.c (wait_reading_process_input): Check connect_wait_mask
5498 before actually accepting connection in case it has already been
5499 accepted due to recursion.
5500
5501 2004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
5502
5503 * coding.c (Fset_safe_terminal_coding_system_internal):
5504 Set suppress_error in safe_terminal_coding, not terminal_coding.
5505
5506 2004-05-22 Richard M. Stallman <rms@gnu.org>
5507
5508 * alloc.c (Fmake_string): Doc fix.
5509
5510 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
5511 and the alist pairs too.
5512
5513 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
5514
5515 * emacs.c (main): Update copyright year.
5516
5517 * fileio.c (Fread_file_name): Expand DIR if not absolute.
5518
5519 * insdel.c (del_range_2, replace_range): Don't write an anchor
5520 if the gap is empty.
5521
5522 * xdisp.c (try_scrolling): If scroll-up-aggressively or
5523 scroll-down-aggressively is small but positive, put point
5524 near the screen edge.
5525
5526 2004-05-22 Juanma Barranquero <lektu@terra.es>
5527
5528 * keymap.c (Fdefine_key): Doc fix.
5529
5530 2004-05-22 Kim F. Storm <storm@cua.dk>
5531
5532 * alloc.c (struct backtrace): Add debug_on_exit member.
5533 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
5534 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
5535 the removed cons cells.
5536 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
5537 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
5538 any cons cells pointing to unallocated stings.
5539 Do not lisp_free any marker blocks, as there may still be pointers
5540 to them from buffer undo lists at this stage of GC.
5541
5542 * keyboard.c (struct backtrace): Add debug_on_exit member.
5543 (Fcommand_execute): Clear it.
5544
5545 2004-05-20 Luc Teirlinck <teirllm@auburn.edu>
5546
5547 * intervals.c (lookup_char_property): Do not prematurely return nil.
5548
5549 2004-05-19 Jim Blandy <jimb@redhat.com>
5550
5551 Add support for new '\_<' and '\_>' regexp operators, matching the
5552 beginning and end of symbols.
5553
5554 * regex.c (enum syntaxcode): Add Ssymbol.
5555 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
5556 (re_opcode_t): New opcodes `symbeg' and `symend'.
5557 (print_partial_compiled_pattern): Print the new opcodes properly.
5558 (regex_compile): Parse the new operators.
5559 (analyse_first): Skip sym(beg|end) (they match only the empty string).
5560 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
5561 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
5562 (re_match_2_internal): Match symbeg and symend.
5563
5564 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
5565
5566 2004-05-19 Kim F. Storm <storm@cua.dk>
5567
5568 * .gdbinit (xsymbol): Fix last change.
5569
5570 2004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
5571
5572 * .gdbinit (xprintstr): New fun.
5573 (xstring, xprintsym): Use it.
5574
5575 * w32proc.c (create_child): Use INTMASK.
5576
5577 * alloc.c (Fgarbage_collect): Do all the marking before flushing
5578 unmarked elements of the undo list.
5579
5580 2004-05-18 David Ponce <david@dponce.com>
5581
5582 * print.c (print): Reset print_depth before to call print_object.
5583
5584 2004-05-18 Jason Rumney <jasonr@gnu.org>
5585
5586 * w32console.c: Prefix RIF functions with w32con_ to avoid
5587 namespace clash with functions in term.c and w32term.c.
5588
5589 * w32menu.c (add_menu_item, w32_menu_display_help)
5590 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
5591
5592 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
5593
5594 2004-05-18 Eli Zaretskii <eliz@gnu.org>
5595
5596 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
5597
5598 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
5599 with make_number.
5600 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
5601 with XINT.
5602
5603 2004-05-18 Kim F. Storm <storm@cua.dk>
5604
5605 * blockinput.h (INPUT_BLOCKED_P): New macros.
5606
5607 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
5608 (Ftop_level): Unblock input if blocked.
5609
5610 * buffer.h (GET_OVERLAYS_AT): New macro.
5611 * msdos.c (IT_note_mouse_highlight): Use it.
5612 * textprop.c (get_char_property_and_overlay): Use it.
5613 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
5614 * xfaces.c (face_at_buffer_position): Use it.
5615
5616 * print.c (print_object): Increase buf size.
5617
5618 2004-05-17 Jason Rumney <jasonr@gnu.org>
5619
5620 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
5621 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
5622 Lisp_Object using i member.
5623 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
5624 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
5625 consistently.
5626
5627 * w32proc.c (create_child): Use make_number instead of masking pid.
5628
5629 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
5630 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
5631 Use EQ to compare Lisp_Objects.
5632 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
5633
5634 * w32term.c (w32_num_mouse_buttons): Rename from
5635 Vw32_num_mouse_buttons and make it an int.
5636
5637 * w32.c (init_environment): Use it.
5638
5639 * w32fns.c (w32_wnd_proc): Likewise.
5640
5641 * w32proc.c (w32_pipe_read_delay): Rename from
5642 Vw32_pipe_read_delay and make it an int.
5643
5644 * w32.c (_sys_read_ahead): Use it.
5645
5646 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
5647
5648 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
5649
5650 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
5651 (key_event): Don't mix Lisp_Object and int.
5652
5653 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
5654
5655 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
5656 modifiers in language change event.
5657
5658 2004-05-17 Kim F. Storm <storm@cua.dk>
5659
5660 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
5661 Such objects may be freed markers which still exist on an undo list.
5662
5663 2004-05-16 Juanma Barranquero <lektu@terra.es>
5664
5665 * data.c (Fset_default): Make argument names match their use in
5666 docstring.
5667
5668 2004-05-15 Andreas Schwab <schwab@suse.de>
5669
5670 * emacs.c (gdb_array_mark_flag): Define.
5671 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
5672
5673 2004-05-15 Eli Zaretskii <eliz@gnu.org>
5674
5675 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
5676 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
5677 defined for the MS-DOS build.
5678
5679 2004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
5680
5681 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
5682
5683 2004-05-14 Kenichi Handa <handa@m17n.org>
5684
5685 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
5686
5687 2004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5688
5689 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
5690 section to frame.c section.
5691 (Fxw_display_color_p, Fx_file_dialog): Declare if
5692 HAVE_WINDOW_SYSTEM defined.
5693
5694 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
5695
5696 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
5697
5698 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
5699 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
5700 (XTread_socket): Fix int/Lisp_Object mixup.
5701 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
5702
5703 * macterm.h (struct frame, struct face, struct image)
5704 (display_x_get_resource, Fx_display_color_p)
5705 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
5706 Add prototypes.
5707
5708 2004-05-14 Kim F. Storm <storm@cua.dk>
5709
5710 * process.c (wait_reading_process_input): Make reentrant.
5711 Make Available and Connecting non-static. Save and restore value
5712 of waiting_for_user_input_p.
5713
5714 2004-05-13 Kim F. Storm <storm@cua.dk>
5715
5716 * keyboard.c (mark_kboards): Don't mark x and y members
5717 that are overloaded in selection request events.
5718
5719 2004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
5720
5721 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
5722
5723 2004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
5724
5725 * window.c (Fdisplay_buffer, Fsplit_window)
5726 (split-height-threshold): Doc fix.
5727
5728 2004-05-13 Juanma Barranquero <lektu@terra.es>
5729
5730 * xfaces.c (Ftty_supports_face_attributes_p)
5731 (Finternal_copy_lisp_face): Fix typo in docstring.
5732 (Finternal_get_lisp_face_attribute): Fix docstring.
5733
5734 2004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5735
5736 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
5737
5738 2004-05-11 Steven Tamm <steventamm@mac.com>
5739
5740 * macfns.c (Fx_create_frame): Default to using tool-bar by
5741 setting tool-bar-lines to 1 in default-frame-alist.
5742
5743 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5744
5745 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
5746 (xpm_get_color_table_v, xpm_make_color_table_h)
5747 (xpm_put_color_table_h, xpm_get_color_table_h)
5748 (xpm_str_to_color_key, xpm_load_image, xpm_load)
5749 (syms_of_image): Support XPM on Carbon Emacs. Does not
5750 depend on libXpm, but only supports XPM version 3 without extensions.
5751
5752 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5753
5754 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
5755 instead of FRAME_X_P
5756
5757 2004-05-11 Kim F. Storm <storm@cua.dk>
5758
5759 * process.c (read_process_output): Grow decoding_buf when needed;
5760 this could cause a crash in allocate_string and compact_small_strings.
5761
5762 2004-04-29 Jim Blandy <jimb@redhat.com>
5763
5764 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
5765 against proper opcode.
5766
5767 2004-05-10 Juanma Barranquero <lektu@terra.es>
5768
5769 * process.c (Fstart_process): Fix docstring.
5770
5771 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
5772 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
5773 (Fsplit_char, Fchar_charset): Make argument names match their use
5774 in docstring.
5775
5776 2004-05-10 Richard M. Stallman <rms@gnu.org>
5777
5778 * print.c (print_preprocess): Use being_printed, loop_count and
5779 halftail to detect overdeep nesting and cyclic cdr chains.
5780
5781 2004-05-10 Andreas Schwab <schwab@suse.de>
5782
5783 * lisp.h (Fmake_symbolic_link): Declare.
5784
5785 * fileio.c (Frename_file): Remove extra argument in call to
5786 Fmake_symbolic_link.
5787
5788 2004-05-10 Kim F. Storm <storm@cua.dk>
5789
5790 * xdisp.c (calc_line_height_property): Use string position when
5791 object is a string.
5792
5793 2004-05-10 Kenichi Handa <handa@m17n.org>
5794
5795 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
5796 inhibit-modification-hooks to t temporarily before calling
5797 Ferase_buffer.
5798
5799 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
5800 inhibit-modification-hooks to t temporarily before calling
5801 Ferase_buffer.
5802
5803 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
5804 inhibit-modification-hooks to t temporarily before calling
5805 Ferase_buffer.
5806
5807 * fns.c (count_combining): Delete it.
5808 (concat): Don't check combining bytes.
5809
5810 2004-05-09 Jason Rumney <jasonr@gnu.org>
5811
5812 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
5813 (globals_of_w32fns): Set it.
5814
5815 2004-05-09 Piet van Oostrum <piet@cs.uu.nl>
5816
5817 * data.c (Fquo): Simplify.
5818
5819 2004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
5820
5821 * data.c (Fquo): If any argument is float, do the computation in
5822 floating point.
5823
5824 2004-05-08 Juanma Barranquero <lektu@terra.es>
5825
5826 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
5827 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
5828 Fix spelling of Emacs on docstring.
5829 (Fset_process_coding_system, Fprocess_coding_system)
5830 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
5831 Make argument names match their use in docstring.
5832 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
5833 Fix docstring.
5834
5835 * editfns.c (Finsert_buffer_substring): Make argument names match their
5836 use in docstring.
5837
5838 * syntax.c (Fmodify_syntax_entry): Fix docstring.
5839
5840 2004-05-07 Steven Tamm <steventamm@mac.com>
5841
5842 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
5843 around call to ReceiveEvent to avoid certain crashes.
5844
5845 2004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5846
5847 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
5848 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
5849 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
5850 Save/restore the current graphics port and device handle when
5851 drawing into an offscreen graphics world.
5852
5853 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
5854 (gif_load): Likewise.
5855
5856 2004-05-07 Juanma Barranquero <lektu@terra.es>
5857
5858 * window.c (Fset_window_buffer): Fix docstring.
5859
5860 2004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
5861
5862 * emacs.c (main) [VMS]: Fix var ref.
5863
5864 2004-05-06 Romain Francoise <romain@orebokech.com>
5865
5866 * data.c (Fsetq_default): Fix docstring.
5867
5868 2004-05-06 Jason Rumney <jasonr@gnu.org>
5869
5870 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
5871 to avoid name clash.
5872
5873 2004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5874
5875 * fileio.c (barf_or_query_if_file_exists): Use lstat.
5876 (Frename_file): Handle renaming of symlinks across file systems.
5877 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
5878
5879 2004-05-04 Kim F. Storm <storm@cua.dk>
5880
5881 * xdisp.c (Qtotal): New var.
5882 (syms_of_xdisp): Intern and staticpro it.
5883 (calc_line_height_property): New arg total. Set it if
5884 line-spacing property has format (total . VALUE).
5885 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
5886 Handle total line-spacing property.
5887
5888 2004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5889
5890 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
5891 "under" scroll bar when size/position changes.
5892
5893 2004-05-03 Jason Rumney <jasonr@gnu.org>
5894
5895 * makefile.nt: Remove.
5896
5897 2004-05-02 Eli Zaretskii <eliz@gnu.org>
5898
5899 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
5900 Avoid compiler warnings.
5901
5902 * Makefile.in (region-cache.o): Depend on config.h.
5903
5904 2004-05-02 Romain Francoise <romain@orebokech.com>
5905
5906 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
5907 with continuation lines, too.
5908
5909 2004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
5910
5911 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
5912
5913 2004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
5914
5915 * xdisp.c (calc_line_height_property): YAILOM (yet another
5916 int/Lisp_Object mixup).
5917
5918 2004-05-01 Eli Zaretskii <eliz@gnu.org>
5919
5920 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
5921 undo bad effect of pack(4) in some versions of system headers.
5922
5923 2004-05-01 Jason Rumney <jasonr@gnu.org>
5924
5925 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
5926
5927 2004-04-30 Kim F. Storm <storm@cua.dk>
5928
5929 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
5930 (syms_of_buffer) <cursor-type>: Doc fix.
5931
5932 * dispextern.h (struct it): Remove member use_default_face.
5933 Add members override_ascent, override_descent, override_boff.
5934
5935 * xdisp.c (init_iterator): Handle line-spacing float value.
5936 Initialize override_ascent member.
5937 (append_space_for_newline): Reset override_ascent.
5938 Remove use_default_face.
5939 (calc_line_height_property): New function to calculate value of
5940 line-height and line-spacing properties. Look at overlays, too.
5941 Set override_ascent, override_descent, override_boff members when
5942 using another face than the current face. Float values are now
5943 relative to the frame default font, by default; accept a cons
5944 of ratio and face name to specify value relative to a specific face.
5945 (x_produce_glyphs): Use calc_line_height_property.
5946 Use override_ascent etc. when set to handle different face heights.
5947 A negative line-spacing property value is interpreted as a total
5948 line height, rather than inter-line spacing.
5949 (note_mouse_highlight): Allocate room for 40 overlays initially.
5950
5951 2004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
5952
5953 * data.c (Fsubr_name): New fun.
5954 (syms_of_data): Defsubr it.
5955
5956 2004-04-29 Kim F. Storm <storm@cua.dk>
5957
5958 * xdisp.c (null_glyph_slice): New var.
5959 (append_glyph, append_composite_glyph, append_stretch_glyph):
5960 Use it to initialize glyph slice.
5961
5962 2004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
5963
5964 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
5965 (on_hot_spot_p): Make sure we always return a value.
5966 (Flookup_image_map): Remove unused var ix and iy.
5967 (note_mode_line_or_margin_highlight): Remove unused var `image'.
5968
5969 2004-04-27 Eli Zaretskii <eliz@gnu.org>
5970
5971 * msdos.c (init_environment): If one of the TMP... environment
5972 variables is set to a drive letter without a trailing slash,
5973 append a slash.
5974
5975 2004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
5976
5977 * editfns.c (lisp_time_argument): Provide externally.
5978
5979 * fileio.c (Fset_file_times): New function.
5980 (syms_of_fileio): Intern and staticpro it.
5981
5982 2004-04-27 Kim F. Storm <storm@cua.dk>
5983
5984 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
5985 header line strings.
5986
5987 * dispextern.h (struct it): New member use_default_face.
5988
5989 * xdisp.c (Qline_height): New variable.
5990 (syms_of_xdisp): Intern and staticpro it.
5991 (append_space_for_newline): Partially undo 2004-04-25 change;
5992 add default_face_p arg, and restore callers.
5993 Clear it->use_default_face after use.
5994 (x_produce_glyphs): Set default font for ascii char if
5995 it->use_default_font is set. Change line-spacing property to set
5996 just extra line spacing. Handle new line-height property.
5997
5998 2004-04-26 Andreas Schwab <schwab@suse.de>
5999
6000 * print.c (print_object): Print non-ascii characters in bool
6001 vector representation as octal escapes.
6002
6003 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
6004 * print.c (print_object): Use it instead of BITS_PER_CHAR for
6005 bool vectors.
6006 * lread.c (read1): Likewise.
6007 * alloc.c (Fmake_bool_vector): Likewise.
6008 * data.c (Faref, Faset): Likewise.
6009 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
6010 (mapcar1): Likewise.
6011
6012 2004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
6013
6014 * lread.c (init_lread): Fix typo in HAVE_CARBON test logic.
6015
6016 2004-04-26 Miles Bader <miles@gnu.org>
6017
6018 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
6019
6020 2004-04-26 Juanma Barranquero <lektu@terra.es>
6021
6022 * buffer.c (Fpop_to_buffer): Fix docstring.
6023
6024 2004-04-26 Steven Tamm <steventamm@mac.com>
6025
6026 * lread.c (init_lread): Don't display missing lisp directory
6027 warnings with Carbon Emacs because self-contained bundled Emacs
6028 may be built without correct installation path.
6029
6030 2004-04-25 Kim F. Storm <storm@cua.dk>
6031
6032 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
6033
6034 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
6035
6036 * xdisp.c (append_space_for_newline): Rename from append_space.
6037 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
6038 (x_produce_glyphs): Handle line-spacing property on newline char.
6039 If value is t, adjust ascent and descent to fit current row height.
6040 If value is an integer or float, set extra_line_spacing to integer
6041 value, or to float value x current line height.
6042
6043 2004-04-23 Kenichi Handa <handa@m17n.org>
6044
6045 * fontset.c (Finternal_char_font): If POSITION is nil, return
6046 font for displaying CH with the default face.
6047
6048 2004-04-23 Juanma Barranquero <lektu@terra.es>
6049
6050 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
6051
6052 2004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
6053
6054 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
6055 Don't make assumptions about the relative place of i and val.
6056 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
6057
6058 2004-04-21 Kim F. Storm <storm@cua.dk>
6059
6060 * dispextern.h (struct glyph_slice): New struct.
6061 (struct glyph): New member slice.
6062 (GLYPH_SLICE_EQUAL_P): New macro.
6063 (GLYPH_EQUAL_P): Use it.
6064 (struct glyph_string): New member slice.
6065 (struct it_slice): New struct.
6066 (struct it): New member slice, add member to stack too.
6067 New member constrain_row_ascent_descent_p.
6068 (image_ascent): Add prototype.
6069
6070 * dispnew.c (buffer_posn_from_coords): Return full image width
6071 and height even for image slices (posn is relative to full image).
6072 (marginal_area_string): Adjust x0,y0 for image slice.
6073
6074 * image.c (image_ascent): Add slice arg; calculate ascent for
6075 image slice (or full image).
6076
6077 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
6078 (syms_of_keyboard): Defsubr them.
6079
6080 * lisp.h (pos_visible_p): Fix prototype.
6081
6082 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
6083 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
6084 (x_draw_image_foreground, x_draw_image_relief)
6085 (x_draw_image_foreground_1, x_draw_image_glyph_string):
6086 Draw sliced images.
6087
6088 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
6089 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
6090 (x_draw_image_foreground, x_draw_image_relief)
6091 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
6092 Draw sliced images.
6093
6094 * w32term.h (image_ascent): Remove prototype.
6095
6096 * window.c (Fpos_visible_in_window_p): Return pixel position if
6097 PARTIALLY arg is non-nil. Simplify. Doc fix.
6098 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
6099 to return/set vscroll in pixels.
6100
6101 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
6102
6103 * xdisp.c (Qslice): New variable.
6104 (syms_of_xdisp): Intern and staticpro it.
6105 (pos_visible_p): Return pixel position in new x and y args.
6106 (init_iterator): Reset it->slice info.
6107 (handle_display_prop): Parse (slice ...) property.
6108 (push_it, pop_it): Save/restore slice info.
6109 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
6110 force repositioning of tall row if window is vscrolled, as that
6111 would reset vscroll.
6112 (append_space): Set it->constrain_row_ascent_descent_p to avoid
6113 increasing row height if row is non-empty.
6114 (fill_image_glyph_string): Copy slice info.
6115 (take_vertical_position_into_account): Simplify.
6116 (produce_image_glyph): Handle iterator slice info, setup glyph
6117 slice info. Do not force minimum line height.
6118 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
6119 do not increase height (ascent/descent) of non-empty row when
6120 adding normal character glyph; instead reduce glyph ascent/descent
6121 appropriately; if row is higher than current glyph, adjust glyph
6122 descent/ascent to reposition glyph within the existing row.
6123 Likewise, when char is newline, only set ascent/descent if row is
6124 currently empty.
6125 (note_mouse_highlight): Handle hotspots with sliced image.
6126
6127 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
6128 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
6129 (x_draw_image_foreground, x_draw_image_relief)
6130 (x_draw_image_foreground_1, x_draw_image_glyph_string):
6131 Draw sliced images.
6132
6133 * xterm.h (image_ascent): Remove prototype.
6134
6135 2004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
6136
6137 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
6138
6139 2004-04-20 John Paul Wallington <jpw@gnu.org>
6140
6141 * fns.c (Fassoc, Feql): Fix indentation.
6142
6143 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
6144
6145 2004-04-19 John Paul Wallington <jpw@gnu.org>
6146
6147 * fns.c (Feql): New function.
6148 (syms_of_fns): Defsubr it.
6149
6150 2004-04-18 Jason Rumney <jasonr@gnu.org>
6151
6152 * w32select.c (Fw32_set_clipboard_data): Get sequence number
6153 after closing the clipboard.
6154
6155 2004-04-16 Luc Teirlinck <teirllm@auburn.edu>
6156
6157 * buffer.c (Fbuffer_base_buffer): Doc fix.
6158
6159 2004-04-17 Kim F. Storm <storm@cua.dk>
6160
6161 * keymap.c (Fkey_description): Add optional PREFIX arg.
6162 Combine prefix with KEYS to make up the full key sequence to describe.
6163 Correlate meta_prefix_char and following (simple) key to describe
6164 as meta modifier. All callers changed.
6165 (describe_map): Rename arg `keys' to `prefix'. Remove local
6166 `elt_prefix' var. Use Fkey_description with prefix instead of
6167 elt_prefix combined with Fsingle_key_description.
6168 (describe_vector): Declare static. Replace arg `elt_prefix' with
6169 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
6170 if !KEYMAP_P. Use Fkey_description with prefix instead of
6171 Fsingle_key_description.
6172
6173 * keymap.h (Fkey_description): Fix prototype.
6174 (describe_vector): Remove prototype.
6175
6176 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
6177
6178 * image.c (PNG_BG_COLOR_SHIFT): Remove.
6179 (png_load): Fix calculation of transparent background color on X
6180 and W32 platforms.
6181
6182 2004-04-16 Juanma Barranquero <lektu@terra.es>
6183
6184 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
6185 not too large before computing how much to scroll.
6186
6187 2004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
6188
6189 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
6190
6191 2004-04-14 Luc Teirlinck <teirllm@auburn.edu>
6192
6193 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
6194 Add hyperlink to Elisp manual to the docstring.
6195
6196 2004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
6197
6198 * callint.c (fix_command): Use XDCR.
6199
6200 2004-04-14 Nick Roberts <nick@nick.uklinux.net>
6201
6202 * window.c (Fget_lru_window): Doc fix.
6203
6204 2004-04-14 Kim F. Storm <storm@cua.dk>
6205
6206 * editfns.c (Fformat): Fix allocation size of precision array.
6207
6208 * dispnew.c (update_window): Only set changed_p if
6209 scrolling_window actually did scroll.
6210 (scrolling_window): Only return 1 if we actually did scroll.
6211
6212 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
6213 height to glyph height when cursor row is not fully visible.
6214 (make_cursor_line_fully_visible): Add FORCE_P arg to return
6215 failure in case row is higher than window. Callers changed.
6216 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
6217 Try to scroll partially visible, higher-than-window cursor row.
6218 (redisplay_window): Always try to scroll partially visible,
6219 higher-than-window cursor row - both initially and again with
6220 centering_position = 0.
6221 Clear desired matrix before retrying with centering_position = 0.
6222
6223 2004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
6224
6225 * syntax.c (scan_lists): Simplify backward string scan.
6226 Fix off-by-one boundary check for string and comment fences.
6227
6228 2004-04-13 Joe Buehler <jbuehler@hekimian.com>
6229
6230 * sheap.c, unexcw.c: New files.
6231
6232 2004-04-12 Luc Teirlinck <teirllm@auburn.edu>
6233
6234 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
6235 base buffer has been killed. Correct the error message if the
6236 base buffer does not exist.
6237
6238 2004-04-12 Joe Buehler <jbuehler@hekimian.com>
6239
6240 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
6241 Cygwin itself. Add support for Xaw3d scrollbars.
6242
6243 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
6244
6245 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
6246
6247 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
6248 before Cygwin unexec.
6249
6250 * Makefile.in: Link changes for Cygwin unexec() support.
6251
6252 2004-04-12 Andreas Schwab <schwab@suse.de>
6253
6254 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
6255
6256 2004-04-11 Luc Teirlinck <teirllm@auburn.edu>
6257
6258 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
6259 IGNORE argument equals NAME. Doc fix.
6260
6261 2004-04-11 Masatake YAMATO <jet@gyve.org>
6262
6263 * buffer.c (fix_start_end_in_overlays): Make overlays
6264 empty if they are backwards.
6265
6266 2004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
6267
6268 * xfaces.c (face_color_supported_p): Fix compilation without X11.
6269
6270 2004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
6271
6272 * doc.c (Fsnarf_documentation): Ignore new file name entries.
6273
6274 2004-04-06 Kim F. Storm <storm@cua.dk>
6275
6276 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
6277 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
6278
6279 * w32term.c (w32_read_socket): Set mouse_face_hidden after
6280 clearing highlight.
6281
6282 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
6283
6284 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
6285 clearing highlight.
6286
6287 * indent.c (vmotion): Do not reserve one column for continuation
6288 marks on window frames.
6289
6290 2004-04-04 Eli Zaretskii <eliz@gnu.org>
6291
6292 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
6293 from GCC.
6294
6295 2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
6296
6297 * .gdbinit-union: Remove.
6298
6299 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
6300 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
6301 ($nonvalbits): Remove.
6302 ($valmask): Set it by calling xreload to avoid redundancy.
6303
6304 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
6305 (gdb_emacs_intbits): Remove.
6306
6307 2004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6308
6309 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
6310
6311 2004-03-30 Kenichi Handa <handa@m17n.org>
6312
6313 * editfns.c (Fformat): Fix initialization of the array info.
6314
6315 2004-03-30 Kim F. Storm <storm@cua.dk>
6316
6317 * xterm.c (x_mouse_click_focus_ignore_position): New var.
6318 (syms_of_xterm): DEFVAR_BOOL it.
6319 (ignore_next_mouse_click_timeout): New var.
6320 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
6321 Use it to filter mouse clicks following focus event.
6322
6323 2004-03-29 David Ponce <david@dponce.com>
6324
6325 * callint.c (Fcall_interactively): Fix last change.
6326
6327 2004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
6328
6329 * eval.c (Fcommandp): Simplify.
6330
6331 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
6332 Extend to handle all kinds of functions.
6333
6334 * lisp.h (Finteractive_form): Declare.
6335
6336 * callint.c (Fcall_interactively): Use it.
6337
6338 2004-03-26 Kim F. Storm <storm@cua.dk>
6339
6340 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
6341 to catch errors in calc_pixel_width_or_height during redisplay.
6342
6343 2004-03-26 Masatake YAMATO <jet@gyve.org>
6344
6345 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
6346
6347 * lisp.h (fix_start_end_in_overlays): Likewise.
6348
6349 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
6350
6351 * editfns.c (Ftranspose_regions): Likewise.
6352
6353 2004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6354
6355 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
6356
6357 2004-03-19 Richard M. Stallman <rms@gnu.org>
6358
6359 * s/sol2-6.h: Delete previous change.
6360
6361 2004-03-19 Kim F. Storm <storm@cua.dk>
6362
6363 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
6364 to_charpos corresponds to newline in right fringe. Use local
6365 BUFFER_POS_REACHED_P macro.
6366
6367 2004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6368
6369 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
6370 to compile on non-window system.
6371
6372 2004-03-19 Kim F. Storm <storm@cua.dk>
6373
6374 * dispextern.h (calc_pixel_width_or_height): Add prototype.
6375
6376 * image.c (Qcenter): Move to xdisp.c.
6377
6378 * xdisp.c (Qcenter): Declare here.
6379 (syms_of_xdisp): Intern and staticpro it.
6380 (handle_single_display_prop): Allow space display property on all
6381 platforms.
6382 (display_mode_line): Set mode_line_p before displaying line.
6383 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
6384 handling. Remove complex cases for fringes and scroll-bars.
6385 Add left, right, and center alignment positions. Add text (area)
6386 width/height. Return width or height for image specs.
6387 (produce_stretch_glyph): Improve handling of :align-to. Is now
6388 relative to left of text area by default, but other base offsets
6389 can be specified -- also for text lines.
6390
6391 * term.c (produce_glyphs): Handle IT_STRETCH.
6392 (produce_stretch_glyph): New function to handle space width and
6393 align-to display properties on non-window systems.
6394
6395 2004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
6396
6397 * fileio.c (Fread_file_name): Set completion-ignore-case for
6398 case-insensitive systems.
6399
6400 2004-03-14 Masatake YAMATO <jet@gyve.org>
6401
6402 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
6403 when keymap and cursor are setup.
6404
6405 2004-03-14 Steven Tamm <steventamm@mac.com>
6406
6407 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
6408
6409 2004-03-14 Kim F. Storm <storm@cua.dk>
6410
6411 * dispextern.h (x_find_image_file): Add prototype.
6412
6413 * image.c (x_find_image_file): Make extern.
6414
6415 * xfns.c (x_find_image_file): Remove prototype.
6416
6417 2004-03-13 Eli Zaretskii <eliz@gnu.org>
6418
6419 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
6420
6421 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
6422
6423 2004-03-12 Richard M. Stallman <rms@gnu.org>
6424
6425 * fns.c (internal_equal): New arg PROPS controls comparing
6426 text properties. All callers changed.
6427 (Fequal_including_properties): New function.
6428 (syms_of_fns): defsubr it.
6429
6430 2004-03-12 Kim F. Storm <storm@cua.dk>
6431
6432 Fix image support on MAC. From YAMAMOTO Mitsuharu.
6433
6434 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
6435 (image_background, image_background_transparent): Fix prototypes.
6436
6437 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
6438
6439 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
6440 (x_query_font, x_find_ccl_program, x_set_window_size)
6441 (x_make_frame_visible, mac_initialize, XCreatePixmap)
6442 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
6443 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
6444
6445 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
6446 (x_query_font, x_find_ccl_program, x_set_window_size)
6447 (x_make_frame_visible, mac_initialize, XCreatePixmap)
6448 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
6449 (mac_draw_line_to_pixmap): Add prototypes.
6450
6451 2004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6452
6453 * macterm.c (XTread_socket): Fix mouse click on tool bar.
6454
6455 2004-03-11 Kim F. Storm <storm@cua.dk>
6456
6457 * dispextern.h: Move image related prototypes from xfns.c section
6458 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
6459 HAVE_X_WINDOWS.
6460
6461 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
6462 Move gtkutil.o to new GTK_OBJ list.
6463 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
6464 (GTK_OBJ) [USE_GTK]: New declaration.
6465 (obj): Add $(GTK_OBJ) to list.
6466
6467 2004-03-11 Steven Tamm <steventamm@mac.com>
6468
6469 * image.c [MAC_OSX]: Include sys/stat.h.
6470
6471 * macfns.c (syms_of_macfns): Remove definitions of things now
6472 defined in image.c.
6473
6474 2004-03-11 Kim F. Storm <storm@cua.dk>
6475
6476 The following changes consolidates the identical/similar image
6477 support code previously found in xfns.c, w32fns.c, and macfns.c
6478 into a new file image.c.
6479
6480 * makefile.w32-in (OBJ1): Add image.o.
6481 ($(BLD)/image.$(O)): Add dependencies.
6482
6483 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
6484 (image.o): Add dependencies.
6485
6486 * image.c: New file with consolidated image support code.
6487 (COLOR_TABLE_SUPPORT): New define to control whether
6488 color table support is available (X only).
6489 (Bitmap_Record): Common name for x_bitmap_record,
6490 w32_bitmap_record, and mac_bitmap_record.
6491 (XImagePtr): Common name for pointer to XImage or equivalent.
6492 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
6493 to XImagePtr on X+MAC, and to HDC on W32.
6494 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
6495 (NO_PIXMAP): Common name for "None" or equivalent.
6496 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
6497 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
6498 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
6499 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
6500 Define with suitable equivalents on W32 and MAC for code sharing.
6501 (XDrawLine): Define on MAC for code sharing.
6502 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
6503 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
6504 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
6505 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
6506 (x_reference_bitmap, x_create_bitmap_from_data)
6507 (x_create_bitmap_from_file, x_destroy_bitmap)
6508 (x_destroy_all_bitmaps, x_create_bitmap_mask)
6509 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
6510 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
6511 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
6512 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
6513 (define_image_type, lookup_image_type, valid_image_p)
6514 (image_error, enum image_value_type, struct image_keyword)
6515 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
6516 (make_image, free_image, prepare_image_for_display, image_ascent)
6517 (four_corners_best, image_background, image_background_transparent)
6518 (x_clear_image_1, x_clear_image, x_alloc_image_color)
6519 (make_image_cache, free_image_cache, clear_image_cache)
6520 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
6521 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
6522 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
6523 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
6524 (init_image_func_pointer, image_load_quartz2d)
6525 (struct ct_color, init_color_table, free_color_table)
6526 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
6527 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
6528 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
6529 (x_disable_image, x_build_heuristic_mask)
6530 (XBM support, XPM support, PBM support, PNG support, JPEG support)
6531 (TIFF support, GIF support, Ghostscript support): Consolidate image
6532 code from xfns.c, w32fns.c, and macfns.c.
6533 (syms_of_image): Consolidate image related symbol setup here.
6534 (init_image): Consolidate image related initializations here.
6535
6536 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
6537 and init_image. Remove call to init_xfns.
6538
6539 * macterm.h (struct mac_bitmap_record): Add file member.
6540 Not currently used, but simplifies code sharing.
6541
6542 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
6543 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
6544 (x_reference_bitmap, x_create_bitmap_from_data)
6545 (x_create_bitmap_from_file, x_destroy_bitmap)
6546 (x_destroy_all_bitmaps, x_create_bitmap_mask)
6547 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
6548 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
6549 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
6550 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
6551 (define_image_type, lookup_image_type, valid_image_p)
6552 (image_error, enum image_value_type, struct image_keyword)
6553 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
6554 (make_image, free_image, prepare_image_for_display, image_ascent)
6555 (four_corners_best, image_background, image_background_transparent)
6556 (x_clear_image_1, x_clear_image, x_alloc_image_color)
6557 (make_image_cache, free_image_cache, clear_image_cache)
6558 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
6559 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
6560 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
6561 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
6562 (init_image_func_pointer, image_load_quartz2d)
6563 (struct ct_color, init_color_table, free_color_table)
6564 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
6565 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
6566 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
6567 (x_disable_image, x_build_heuristic_mask)
6568 (XBM support, XPM support, PBM support, PNG support, JPEG support)
6569 (TIFF support, GIF support, Ghostscript support): Merge with image
6570 code from xfns.c and macfns.c into image.c.
6571 (syms_of_xfns): Move image related symbols to image.c.
6572 (init_external_image_libraries, init_xfns): Remove; initialization
6573 moved to init_image in image.c.
6574
6575 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
6576 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
6577 (x_reference_bitmap, x_create_bitmap_from_data)
6578 (x_create_bitmap_from_file, x_destroy_bitmap)
6579 (x_destroy_all_bitmaps, x_create_bitmap_mask)
6580 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
6581 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
6582 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
6583 (define_image_type, lookup_image_type, valid_image_p)
6584 (image_error, enum image_value_type, struct image_keyword)
6585 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
6586 (make_image, free_image, prepare_image_for_display, image_ascent)
6587 (four_corners_best, image_background, image_background_transparent)
6588 (x_clear_image_1, x_clear_image, x_alloc_image_color)
6589 (make_image_cache, free_image_cache, clear_image_cache)
6590 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
6591 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
6592 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
6593 (struct ct_color, init_color_table, free_color_table)
6594 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
6595 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
6596 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
6597 (x_disable_image, x_build_heuristic_mask)
6598 (XBM support, XPM support, PBM support, PNG support, JPEG support)
6599 (TIFF support, GIF support, Ghostscript support): Merge with image
6600 code from xfns.c and macfns.c into image.c.
6601 (syms_of_xfns): Move image related symbols to image.c.
6602 (init_external_image_libraries, init_xfns): Remove; initialization
6603 moved to init_image in image.c.
6604
6605 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
6606 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
6607 (x_reference_bitmap, x_create_bitmap_from_data)
6608 (x_create_bitmap_from_file, x_destroy_bitmap)
6609 (x_destroy_all_bitmaps, x_create_bitmap_mask)
6610 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
6611 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
6612 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
6613 (define_image_type, lookup_image_type, valid_image_p)
6614 (image_error, enum image_value_type, struct image_keyword)
6615 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
6616 (make_image, free_image, prepare_image_for_display, image_ascent)
6617 (four_corners_best, image_background, image_background_transparent)
6618 (x_clear_image_1, x_clear_image, x_alloc_image_color)
6619 (make_image_cache, free_image_cache, clear_image_cache)
6620 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
6621 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
6622 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
6623 (struct ct_color, init_color_table, free_color_table)
6624 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
6625 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
6626 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
6627 (x_disable_image, x_build_heuristic_mask)
6628 (XBM support, XPM support, PBM support, PNG support, JPEG support)
6629 (TIFF support, GIF support, Ghostscript support): Merge with
6630 w32fns.c and macfns.c image code into image.c.
6631 (syms_of_xfns): Move image related symbols to image.c.
6632 (init_xfns): Remove; initialization moved to init_image in image.c.
6633
6634 * lisp.h (syms_of_image, init_image): Add protoypes.
6635 (init_xfns): Remove prototype.
6636
6637 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
6638 (x_reference_bitmap, x_create_bitmap_from_data)
6639 (x_create_bitmap_from_file, x_destroy_bitmap)
6640 (x_create_bitmap_mask): Move prototypes from dispextern.h.
6641 (gamma_correct) [MAC_OS]: Add prototype.
6642
6643 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
6644 (x_reference_bitmap, x_create_bitmap_from_data)
6645 (x_create_bitmap_from_file, x_destroy_bitmap)
6646 (x_create_bitmap_mask): Move prototypes to dispextern.h.
6647
6648 2004-03-09 Kenichi Handa <handa@etlken2>
6649
6650 * coding.c (decode_coding_emacs_mule): Handle insufficent source
6651 correctly.
6652
6653 2004-03-04 Richard M. Stallman <rms@gnu.org>
6654
6655 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
6656
6657 * window.c (Fdisplay_buffer): Doc fix.
6658
6659 * buffer.c (Fpop_to_buffer): Doc fix.
6660
6661 2004-03-03 Kim F. Storm <storm@cua.dk>
6662
6663 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
6664
6665 2004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
6666
6667 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
6668
6669 2004-03-02 Richard M. Stallman <rms@gnu.org>
6670
6671 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
6672
6673 2004-03-02 Kenichi Handa <handa@m17n.org>
6674
6675 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
6676
6677 2004-03-02 Kim F. Storm <storm@cua.dk>
6678
6679 * window.h (struct window): New member overlay_arrow_bitmap.
6680
6681 * window.c (make_window): Initialize overlay_arrow_bitmap.
6682
6683 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
6684 implement and integrate multiple overlay arrows with redisplay.
6685 (syms_of_xdisp): DEFVAR_LISP and initialize it.
6686 (last_arrow_position, last_arrow_string): Replace by properties.
6687 (Qlast_arrow_position, Qlast_arrow_string)
6688 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
6689 (syms_of_xdisp): Intern and staticpro them.
6690 (overlay_arrow_string_or_property, update_overlay_arrows)
6691 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
6692 (overlay_arrow_at_row): New functions for multiple overlay arrows.
6693 (redisplay_internal): Use them instead of directly accessing
6694 Voverlay_arrow_position etc. for multiple overlay arrows.
6695 (mark_window_display_accurate): Use update_overlay_arrows.
6696 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
6697 (try_window_id): Use overlay_arrows_changed_p.
6698 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
6699 (display_line): Use overlay_arrow_at_row to check multiple
6700 overlay arrows, and get relevant overlay-arrow-string and
6701 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
6702 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
6703 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
6704
6705 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
6706 (update_window_fringes): Remove unused code.
6707
6708 2004-03-01 Jason Rumney <jasonr@gnu.org>
6709
6710 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
6711
6712 2004-03-01 Juanma Barranquero <lektu@terra.es>
6713
6714 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
6715
6716 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
6717
6718 2004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6719
6720 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
6721 how many colors can be displayed.
6722
6723 2004-03-01 Kenichi Handa <handa@m17n.org>
6724
6725 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
6726 correctly.
6727
6728 2004-02-28 Kim F. Storm <storm@cua.dk>
6729
6730 * dispnew.c (update_window): Update header line also if there are
6731 no other changes in window (move code after set_cursor label).
6732
6733 * lisp.h (mark_window_display_accurate): Remove prototype.
6734
6735 * window.c (window_loop, Fforce_window_update): Force mode line
6736 updates by setting prevent_redisplay_optimizations_p and
6737 update_mode_lines.
6738
6739 2004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6740
6741 * xfns.c (x_window): Fix indentation.
6742
6743 * xterm.c (x_calc_absolute_position): Call x_real_positions
6744 to get WM window sizes and use those to calculate position.
6745 (x_set_offset): Remove code commented out.
6746
6747 2004-02-28 Miles Bader <miles@gnu.org>
6748
6749 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
6750
6751 2004-02-28 Kim F. Storm <storm@cua.dk>
6752
6753 * keyboard.c (kbd_buffer_store_event_hold): New function to store
6754 an event into kbd fifo, but with special handling of quit event;
6755 a quit event is saved for later, and further events are discarded
6756 until the saved quit event has been processed.
6757 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
6758 (gen_help_event): Store help event in kbd fifo.
6759 (NREAD_INPUT_EVENTS): Remove.
6760 (read_avail_input): Adapt to new read_socket_hook interface.
6761 Remove allocation and initialization of local input_event buffer,
6762 as read_socket_hook stores events directly in fifo. Allocate and
6763 initialize local hold_quit event to handle postponed quit event
6764 (and store it if set by kbd_buffer_store_event_hold).
6765
6766 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
6767 (gen_help_event): Fix prototype.
6768
6769 * macterm.c (XTread_socket): Remove bufp_r and
6770 numcharsp args. Add hold_quit arg.
6771 Rework to use just one, local, inev input_event. Store inev
6772 directly in fifo using kbd_buffer_store_event_hold.
6773
6774 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
6775 (read_input_waiting): Adapt to new read_socket_hook interface.
6776 Remove allocation and initialization of local input_event buffer,
6777 as read_socket_hook stores events directly in fifo. Allocate and
6778 initialize local hold_quit event to handle postponed quit event
6779 (and store it if set by kbd_buffer_store_event_hold).
6780
6781 * term.c (read_socket_hook): Fix arg list.
6782
6783 * termhooks.h (read_socket_hook): Fix prototype.
6784
6785 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
6786 numcharsp args. Add hold_quit arg.
6787 Rework to use just one, local, inev input_event. Store inev
6788 directly in fifo using kbd_buffer_store_event_hold.
6789
6790 * w32inevt.h (w32_console_mouse_position): Fix prototype.
6791
6792 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
6793 Add hold_quit arg. Rework to use just one, local, inev
6794 input_event. Store inev directly in fifo using
6795 kbd_buffer_store_event_hold. Update count in one place.
6796 Postpone call to gen_help_event until inev is stored; use new
6797 local do_help for this.
6798 Remove local emacs_event in handing of ButtonPress event; just use
6799 inev instead (so no reason to copy it later).
6800
6801 * xsmfns.c (x_session_check_input): Remove numchars arg.
6802
6803 * xterm.c (x_focus_changed, x_detect_focus_change):
6804 Remove numchars arg. Always store event into bufp arg.
6805 Return nothing. Callers changed accordingly.
6806 (glyph_rect): Simplify.
6807 (STORE_KEYSYM_FOR_DEBUG): New macro.
6808 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
6809 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
6810 (current_hold_quit) [USE_GTK]: Add.
6811 (event_handler_gdk): Adapt to new handle_one_xevent.
6812 (handle_one_xevent): Remove bufp_r and numcharsp args.
6813 Add hold_quit arg. Rework to use just one, local, inev
6814 input_event. Store inev directly in fifo using
6815 kbd_buffer_store_event_hold. Update count in one place.
6816 Postpone call to gen_help_event until inev is stored; use new
6817 local do_help for this.
6818 Simplify handling of keysyms (consolidate common code). Fix bug
6819 where count was updated with nchars instead of nbytes.
6820 Remove local emacs_event in handing of ButtonPress event; just use
6821 inev instead (so no reason to copy it later).
6822 Remove `out' label. Rename label `ret' to `done'; add various
6823 `goto done' to clarify code flow in deeply nested blocks.
6824 (x_dispatch_event): Simplify as handle_one_xevent now calls
6825 kbd_buffer_store_event itself.
6826 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
6827 arg. Call handle_one_xevent with new arglist. Store event from
6828 x_session_check_input in fifo.
6829 [USE_GTK]: Setup current_hold_quit.
6830 Decrement handling_signal before unblocking input.
6831 (x_initialize) [USE_GTK]: Initialize current_count.
6832
6833 * xterm.h (x_session_check_input): Fix prototype.
6834
6835 2004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6836
6837 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
6838
6839 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
6840 macgui.h).
6841
6842 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
6843
6844 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
6845 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
6846 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
6847 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
6848 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
6849 (Bitmap): Remove typedef.
6850 (Pixmap): Change int to GWorldPtr.
6851
6852 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
6853
6854 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
6855 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
6856 New #define to extract 16-bit depth color components from unsigned
6857 long representation.
6858 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
6859 colors used for masks.
6860 (struct mac_display_info): Add color_p. Remove n_cbits.
6861
6862 * macfns.c: Include sys/types.h and sys/stat.h.
6863 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
6864 Include QuickTime/QuickTime.h.
6865 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
6866 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
6867 functions defined in macterm.c.
6868 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
6869 (ZPixmap): New #define for compatibility with xfns.c.
6870 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
6871 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
6872 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
6873 New functions.
6874 (four_corners_best, x_create_x_image_and_pixmap)
6875 (x_destroy_x_image, unwind_create_frame, x_disable_image)
6876 (x_edge_detection, init_color_table, colors_in_color_table)
6877 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
6878 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
6879 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
6880 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
6881 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
6882 long mixup.
6883 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
6884 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
6885 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
6886 (x_set_cursor_type, Fxw_color_values, valid_image_p)
6887 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
6888 (x_alloc_image_color, clear_image_cache, lookup_image)
6889 (x_find_image_file, xbm_read_bitmap_file_data)
6890 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
6891 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
6892 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
6893 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
6894 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
6895 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
6896 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
6897 #if 0.
6898 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
6899 #if 0. Free white_relief.gc and black_relief.gc.
6900 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
6901 New functions (from xfns.c).
6902 (Fx_create_frame): Record unwind_create_frame.
6903 (Fxw_display_color_p): Use dpyinfo->color_p.
6904 (Fx_display_grayscale_p, Fx_display_planes): Don't use
6905 dpyinfo->n_cbits.
6906 (Fx_display_color_cells): Use dpyinfo->n_planes;
6907 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
6908 (Qheuristic, cross_disabled_images, emboss_matrix)
6909 (laplace_matrix): New variables (from xfns.c).
6910 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
6911 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
6912 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
6913 (image_background_transparent): New function (from xfns.c).
6914 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
6915 (image_load_quicktime): Add declaration.
6916 [MAC_OSX] (image_load_quartz2d): Likewise.
6917 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
6918 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
6919 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
6920 (xbm_load_image_from_file, x_laplace_read_row)
6921 (x_laplace_write_row, pbm_read_file): Remove functions.
6922 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
6923 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
6924 (colors_in_color_table): Sync with xfns.c (although not used).
6925 (lookup_rgb_color): Don't lookup color table. Just do gamma
6926 correction.
6927 (COLOR_INTENSITY): New #define (from xfns.c).
6928 (x_disable_image): New function (from xfns.c).
6929 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
6930 (x_build_heuristic_mask): Sync with xfns.c.
6931 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
6932 (HAVE_PBM): Remove #ifdef.
6933 (pbm_load): Sync with xfns.c. Set img->width and img->height
6934 before IMAGE_BACKGROUND.
6935 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
6936 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
6937 Don't enclose with #if HAVE_PNG.
6938 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
6939 symbol _CGImageCreateWithPNGDataProvider is defined.
6940 Otherwise use image_load_quicktime.
6941 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
6942 [HAVE_PNG] (png_load): Sync with xfns.c.
6943 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
6944 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
6945 HAVE_JPEG.
6946 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
6947 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
6948 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
6949 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
6950 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
6951 (tiff_image_p, tiff_load): Don't enclose declarations with #if
6952 HAVE_TIFF.
6953 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
6954 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
6955 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
6956 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
6957 New functions (from xfns.c).
6958 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
6959 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
6960 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
6961 Don't enclose with #if HAVE_GIF.
6962 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
6963 animated gif. Otherwise use image_load_quicktime.
6964 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
6965 gif_DrawText to avoid conflict with QuickdrawText.h.
6966 [HAVE_GIF] (gif_load): Sync with xfns.c.
6967 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
6968 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
6969 Ghostscript is not supported yet).
6970 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
6971 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
6972 cross_disabled_images (from xfns.c). Remove #if 0 for supported
6973 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
6974 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
6975 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
6976 HAVE_PNG. Call EnterMovies to support animated gifs.
6977 Call init_image_func_pointer to bind a symbol
6978 _CGImageCreateWithPNGDataProvider if it is defined.
6979
6980 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
6981 (x_draw_bar_cursor): Sync declaration with xterm.c.
6982 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
6983 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
6984 graphics).
6985 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
6986 (mac_draw_line_to_pixmap, XCreatePixmap)
6987 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
6988 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
6989 New functions.
6990 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
6991 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
6992 Cast bits to char *.
6993 (reflect_byte): New function (from w32fns.c).
6994 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
6995 due to byte alignment.
6996 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
6997 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
6998 (XSetForeground): Remove static (now used in macfns.c).
6999 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
7000 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
7001 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
7002 (x_draw_glyph_string_box, x_draw_image_foreground)
7003 (x_draw_image_foreground_1, x_draw_image_glyph_string)
7004 (x_draw_stretch_glyph_string, x_draw_glyph_string)
7005 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
7006 Sync with xterm.c.
7007 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
7008 than the xterm.c version when a strictly horizontal or vertical
7009 line is drawn.
7010 (XTset_terminal_window): Add static.
7011 (x_make_frame_visible): Add UNBLOCK_INPUT.
7012 (x_free_frame_resources): New funcion (from xterm.c).
7013 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
7014 occurs in tool bar area.
7015 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
7016 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
7017 Initialize image cache.
7018 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
7019 Enclose unused functions with #if 0.
7020 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
7021 (decode_mac_font_name): New function to apply code conversions
7022 from a mac font name to an XLFD font name according to its script code.
7023 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
7024 font name to a mac font name according to REGISTRY and ENCODING fields.
7025 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
7026 whose name starts with `.'.
7027 (init_font_name_table): Use decode_mac_font_name. Add both
7028 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
7029 of a font is smJapanese.
7030 (mac_do_list_fonts): New function to list fonts that match a given
7031 pattern.
7032 (x_list_fonts, XLoadQueryFont): Use it.
7033 (XLoadQueryFont): Set rbearing field for each variable width
7034 character to avoid needless redraw.
7035 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
7036
7037 2004-02-26 Kim F. Storm <storm@cua.dk>
7038
7039 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
7040 as read_socket_hook handler on X aborts if buffer is too small
7041 and W32 handler doesn't always check buffer limit.
7042
7043 * xdisp.c (handle_single_display_prop): Handle left-fringe and
7044 right-fringe similar to a display margin image. Specifically,
7045 the characters having the fringe prop are no longer shown, and
7046 we use IT_IMAGE/next_element_from_image with image_id = -1 to
7047 do this. Set fringe bitmap face_id in it->face_id.
7048 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
7049 still realize it->face (i.e. the fringe bitmap face).
7050
7051 2004-02-25 Miles Bader <miles@gnu.org>
7052
7053 * xdisp.c (check_it): Check string/string_pos consistency.
7054 (init_iterator): Initialize string-related fields properly.
7055
7056 2004-02-11 Miles Bader <miles@gnu.org>
7057
7058 * xdisp.c (produce_image_glyph): Force negative descents to zero.
7059
7060 2004-02-10 Miles Bader <miles@gnu.org>
7061
7062 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
7063 BLOCK_INPUT can be nested, so it doesn't make much sense.
7064
7065 2004-02-24 Michael Mauger <mmaug@yahoo.com>
7066
7067 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
7068 (xbm_read_bitmap_data): Use unsigned char for image data.
7069
7070 2004-02-23 Luc Teirlinck <teirllm@auburn.edu>
7071
7072 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
7073
7074 2004-02-22 Jason Rumney <jasonr@gnu.org>
7075
7076 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
7077 correctly over other bitmaps.
7078
7079 2004-02-21 Eli Zaretskii <eliz@gnu.org>
7080
7081 * emacs.c (USAGE1): Split into two halves.
7082 (USAGE2): Second half of the old USAGE1.
7083 (USAGE3): Rename from USAGE2.
7084 (USAGE4): Rename from USAGE3.
7085
7086 2004-02-21 Juri Linkov <juri@jurta.org>
7087
7088 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
7089 Fix --multibyte. Move --help, --version to USAGE2. Add alias
7090 --file. Fix -f, -l. Sort options. Untabify.
7091 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
7092
7093 2004-02-19 Luc Teirlinck <teirllm@auburn.edu>
7094
7095 * category.c (Fdefine_category, Fcategory_docstring)
7096 (Fget_unused_category, Fset_category_table)
7097 (Fcategory_set_mnemonics): Doc fixes.
7098
7099 2004-02-20 Kim F. Storm <storm@cua.dk>
7100
7101 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
7102 The following changes are relative to the 2004-01-21 revision.
7103 (NREAD_INPUT_EVENTS): Define as max number of input events to read
7104 in one call to read_socket_hook. Value is 8.
7105 (read_avail_input): Separate and rework handling of read_socket_hook
7106 and non-read_socket_hook cases. Use smaller input_event buffer
7107 in read_socket_hook case, and repeat if full buffer is read.
7108 Use new local variable 'discard' to skip input after C-g.
7109 In non-read_socket_hook case, just use a single input_event, and
7110 call kbd_buffer_store_event on the fly for each character.
7111
7112 2004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
7113
7114 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
7115 Remove unused `gu' alternative.
7116
7117 2004-02-19 Andreas Schwab <schwab@suse.de>
7118
7119 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
7120 warning.
7121
7122 2004-02-18 Kim F. Storm <storm@cua.dk>
7123
7124 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
7125 Fix last change.
7126
7127 2004-02-17 Kim F. Storm <storm@cua.dk>
7128
7129 * xdisp.c (fast_find_position): Fix return value of new version;
7130 it was inverted compared to the 21.1 version.
7131 (get_window_cursor_type): Don't look at glyph if NULL.
7132 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
7133
7134 * keyboard.c: Rework previous change; it didn't consider that the
7135 buf array was allocated on the stack.
7136 (prev_read): Remove variable.
7137 (read_avail_input_buf): New static event buffer array.
7138 (in_read_avail_input): New static variable to handle re-entrancy.
7139 (read_avail_input): Change buf to pinter to read_avail_input_buf.
7140 Use in_read_avail_input to handle re-entrance; when re-entered,
7141 fully initialize and use tmp_buf array instead of read_avail_input_buf.
7142 Do not initialize read_avail_input_buf in full here; instead assume it
7143 is always cleared on entry. To ensure that, we clear (just) the
7144 entries that were used before we return.
7145 (init_keyboard): Initialize read_avail_input_buf here.
7146
7147 2004-02-16 Jesper Harder <harder@ifa.au.dk>
7148
7149 * cmds.c (Fend_of_line): Doc fix.
7150
7151 2004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
7152
7153 * keyboard.c (prev_read): New static variable.
7154 (read_avail_input): Use it to zero out only those slots in buf[]
7155 that were used last time we were called.
7156
7157 2004-02-16 Eli Zaretskii <eliz@gnu.org>
7158
7159 * Makefile.in (obj): Move fringe.o from here...
7160 (XOBJ, MAC_OBJ): ...to here.
7161
7162 2004-02-16 Stephen Eglen <stephen@gnu.org>
7163
7164 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
7165
7166 2004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
7167
7168 * data.c (Fbyteorder):
7169 * fringe.c (Fdefine_fringe_bitmap):
7170 * xdisp.c (handle_single_display_prop):
7171 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
7172
7173 2004-02-16 Jason Rumney <jasonr@gnu.org>
7174
7175 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
7176
7177 2004-02-15 Steven Tamm <steventamm@mac.com>
7178
7179 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
7180 controlling emulation of a three button mouse with option and
7181 command keys.
7182 (Qreverse, mac_get_enumlated_btn): Handle the emulation.
7183 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
7184
7185 2004-02-15 Kim F. Storm <storm@cua.dk>
7186
7187 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
7188
7189 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
7190 Perform byte-swapping.
7191
7192 2004-02-14 Kim F. Storm <storm@cua.dk>
7193
7194 * dispextern.h (struct draw_fringe_bitmap_params): Change member
7195 bits from char to short to facilitate wider bitmaps.
7196 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
7197 member.
7198
7199 * fringe.c (struct fringe_bitmap): Change member bits from char to
7200 short to facilitate 16 bits wide bitmaps. Modify all standard
7201 bitmaps accordingly.
7202 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
7203 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
7204 (draw_fringe_bitmap): Ditto.
7205 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
7206 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
7207 handle up to 16 bits wide bitmaps.
7208 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
7209 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
7210
7211 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
7212 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
7213 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
7214
7215 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
7216 so it is no longer necessary to expand them here.
7217
7218 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
7219
7220 2004-02-12 Kim F. Storm <storm@cua.dk>
7221
7222 * window.c (Fwindow_fringes): Doc fix.
7223
7224 2004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7225
7226 * xselect.c (x_get_foreign_selection): Add new optional parameter
7227 time_stamp.
7228 (Fx_get_selection_internal): Ditto, pass time_stamp to
7229 x_get_foreign_selection.
7230
7231 * data.c (Fbyteorder): New function.
7232
7233 2004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7234
7235 * atimer.c: Move include stdio.h to same place as in other files.
7236
7237 * region-cache.c: Ditto.
7238
7239 * sysdep.c: Ditto.
7240
7241 * xfaces.c: Ditto.
7242
7243 2004-02-09 Sam Steingold <sds@gnu.org>
7244
7245 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
7246
7247 2004-02-09 Kim F. Storm <storm@cua.dk>
7248
7249 * fringe.c: New file. Move original fringe related declarations
7250 and code from dispextern.h and xdisp.c here.
7251 Rework code to support user defined fringe bitmaps, redefining
7252 standard bitmaps, ability to overlay user defined bitmap with
7253 overlay arrow bitmap, and add faces to bitmaps.
7254 (Voverflow_newline_into_fringe): Declare here.
7255 (enum fringe_bitmap_align): New enum.
7256 (..._bits): All bitmaps are now defined without bitswapping; that
7257 is now done in init_fringe_once (if necessary).
7258 (standard_bitmaps): New array with specifications for the
7259 standard fringe bitmaps.
7260 (fringe_faces): New array.
7261 (valid_fringe_bitmap_id_p): New function.
7262 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
7263 (draw_fringe_bitmap): New function which draws fringe bitmap,
7264 possibly overlaying bitmap with cursor in right fringe or the
7265 overlay arrow in the left fringe.
7266 (update_window_fringes): Do not handle overlay arrow here.
7267 Compare and copy fringe bitmap faces.
7268 (init_fringe_bitmap): New function.
7269 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
7270 define and destroy user defined fringe bitmaps.
7271 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
7272 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
7273 (syms_of_fringe): New function. Defsubr new DEFUNs.
7274 DEFVAR_LISP Voverflow_newline_into_fringe.
7275 (init_fringe_once, init_fringe): New functions.
7276 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
7277
7278 * Makefile.in (obj): Add fringe.o.
7279 (fringe.o): New dependencies.
7280
7281 * dispextern.h (FRINGE_ID_BITS): New definition for number of
7282 bits allocated to hold a fringe number. Increase number of bits
7283 from 4 to 8 to allow user defined fringe bitmaps.
7284 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
7285 left_user_fringe_face_id, right_user_fringe_bitmap,
7286 right_user_fringe_face_id.
7287 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
7288 Move to new file fringe.c.
7289 (MAX_FRINGE_BITMAPS): Define here.
7290 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
7291 and overlay_p. Change member which to int.
7292 (struct redisplay_interface): New members define_fringe_bitmap
7293 and destroy_fringe_bitmap.
7294 (valid_fringe_bitmap_id_p): Add prototype.
7295 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
7296
7297 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
7298 arrows.
7299 (update_frame): Do flush_display if force_flush_display_p to
7300 ensure display (specifically fringes) are updated in a timely
7301 manner when resizing the frame by dragging the mouse.
7302 (update_window_line): Update row if overlay arrow changed.
7303 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
7304 or overlay arrow changed.
7305
7306 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
7307 syms_of_fringe, and init_fringe.
7308
7309 * frame.h (struct frame): New member force_flush_display_p.
7310
7311 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
7312 Add prototypes.
7313
7314 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
7315 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
7316 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
7317 Use cursor color for displaying cursor in fringe.
7318 (x_redisplay_interface): Add null handlers for
7319 define_fringe_bitmap and destroy_fringe_bitmap functions.
7320
7321 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
7322 xterm.c to handle overlayed fringe bitmaps and to use cursor color
7323 for displaying cursor in fringe.
7324 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
7325 specific functions to define and destroy fringe bitmaps in fringe_bmp.
7326 (w32_redisplay_interface): Add them to redisplay_interface.
7327 (w32_term_init): Call w32_init_fringe instead of explicitly
7328 defining fringe bitmaps in fringe_bmp array.
7329 (x_delete_display): Call w32_reset_fringes instead of explicitly
7330 destroying fringe bitmaps in fringe_bmp array.
7331
7332 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
7333 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
7334 (continued_bits, continuation_bits, ov_bits, first_line_bits)
7335 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
7336 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
7337 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
7338 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
7339 Move fringe handling vars and code to new file fringe.c.
7340 (handle_display_prop): Handle left-fringe and right-fringe
7341 display properties; store user fringe bitmaps in iterator.
7342 (move_it_in_display_line_to): Handle cursor in fringe at eob.
7343 (clear_garbaged_frames): Set force_flush_display_p if resized.
7344 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
7345 (display_line): Handle cursor in fringe at eob.
7346 (display_line): Set row user fringe bitmaps from iterator.
7347
7348 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
7349 Use cursor color for displaying cursor in fringe.
7350 (x_redisplay_interface): Add null handlers for
7351 define_fringe_bitmap and destroy_fringe_bitmap functions.
7352
7353 2004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7354
7355 * macfns.c (Fx_change_window_property): Make doc string and
7356 parameters same as for X version.
7357
7358 * w32fns.c (Fx_change_window_property): Ditto.
7359
7360 2004-02-07 Kim F. Storm <storm@cua.dk>
7361
7362 * xdisp.c (hscroll_window_tree): Position cursor near to right
7363 margin in hscrolled window when jumping to end of line (rather
7364 than centering cursor).
7365
7366 * process.c (wait_reading_process_input): Don't do adaptive read
7367 buffering if waiting for a specific process.
7368
7369 2004-02-05 Luc Teirlinck <teirllm@auburn.edu>
7370
7371 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
7372 (Fread_minibuffer, Feval_minibuffer)
7373 (Fread_string, Fread_no_blanks_input)
7374 (Fcompleting_read): Doc fixes.
7375 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
7376 completion-regexp-list. Define Qcase_fold_search and staticpro it.
7377 (read_minibuf): Fix initial comment.
7378 (Ftry_completion, Fall_completions, Ftest_completion): Bind
7379 case-fold-search to the value of completion-ignore-case when
7380 checking completion-regexp-list.
7381 (Fdisplay_completion_list): Make it handle arguments that are
7382 symbols. Doc fix.
7383
7384 2004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7385
7386 * xterm.h: Add declaration of free_frame_menubar.
7387
7388 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
7389 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
7390 (Fx_change_window_property): Add declaration of parameters type and
7391 format. Remove unused variable cons.
7392
7393 * xselect.c: Include stdio,h.
7394
7395 2004-02-05 Kenichi Handa <handa@m17n.org>
7396
7397 * fns.c (Fset_char_table_range): Fix previous change.
7398
7399 * buffer.c (Fset_buffer_multibyte): Fix docstring.
7400
7401 2004-02-04 Luc Teirlinck <teirllm@auburn.edu>
7402
7403 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
7404
7405 2004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
7406
7407 * keymap.c (Vmouse_events): Rename from Vmenu_events.
7408 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
7409
7410 2004-02-04 Kenichi Handa <handa@m17n.org>
7411
7412 * fns.c (Fset_char_table_range): Handle charsets ascii,
7413 eight-bit-control, and eight-bit-graphic correctly.
7414
7415 2004-02-03 Jason Rumney <jasonr@gnu.org>
7416
7417 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
7418
7419 * w32fns.c (x_to_w32_font): Likewise.
7420
7421 2004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7422
7423 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
7424 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
7425
7426 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
7427 ClientMessages.
7428
7429 * xselect.c: Include termhooks.h and X11/Xproto.h
7430 (x_check_property_data, x_fill_property_data)
7431 (x_property_data_to_lisp, mouse_position_for_drop)
7432 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
7433 (Fx_send_client_event): Move here from xfns.c.
7434 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
7435
7436 * xfns.c (x-send-client-message): Move to xselect.c
7437 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
7438 OUTER_P.
7439 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
7440 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
7441 if vector_ret_p is true.
7442 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
7443
7444 2004-02-02 Eli Zaretskii <eliz@gnu.org>
7445
7446 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
7447 basename of FILE relative to it, not FILE itself.
7448
7449 2004-02-02 Kenichi Handa <handa@m17n.org>
7450
7451 * coding.c (coding_restore_composition): Check invalid
7452 composition data more rigidly.
7453
7454 2004-01-30 Luc Teirlinck <teirllm@auburn.edu>
7455
7456 * fileio.c (Fread_file_name_internal): Correctly handle the case
7457 where insert-default-directory is nil.
7458 (Fread_file_name): Always return an empty string if the user exits
7459 with an empty minibuffer. Adapt the docstring accordingly.
7460 (syms_of_fileio): Adapt the docstring of insert-default-directory
7461 to the change in Fread_file_name.
7462
7463 2004-01-29 Eli Zaretskii <eliz@gnu.org>
7464
7465 * alloca.c [!alloca]: Fix the prototype for xfree.
7466
7467 2004-01-29 Kenichi Handa <handa@m17n.org>
7468
7469 * fns.c (string_char_to_byte): Optimize for ASCII only string.
7470 (string_byte_to_char): Likewise.
7471
7472 2004-01-28 Peter Runestig <peter@runestig.com>
7473
7474 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
7475
7476 2004-01-27 Steven Tamm <steventamm@mac.com>
7477
7478 * unexmacosx.c (unexec_copy): Do not copy more than was
7479 requested to prevent overwriting during unexec.
7480
7481 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7482
7483 * process.c (sigchld_handler): Add comment about not calling malloc.
7484
7485 * process.h: Add extern to synch_process_termsig.
7486
7487 2004-01-27 Steven Tamm <steventamm@mac.com>
7488
7489 * macterm.c (make_mac_frame, make_mac_terminal_frame):
7490 Move setting of scroll bars from make_mac_frame to
7491 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
7492
7493 2004-01-26 Richard M. Stallman <rms@gnu.org>
7494
7495 * search.c (Freplace_match): Handle nonexistent
7496 back-references properly.
7497
7498 2004-01-03 Richard M. Stallman <rms@gnu.org>
7499
7500 * window.c (decode_any_window): New function.
7501 (Fwindow_height, Fwindow_width, Fwindow_edges)
7502 (Fwindow_pixel_edges, Fwindow_inside_edges)
7503 (Fwindow_inside_pixel_edges): Use decode_any_window.
7504
7505 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7506
7507 * process.h: synch_process_termsig new variable.
7508
7509 * callproc.c: Define synch_process_termsig.
7510 (Fcall_process): Initiate synch_process_termsig to zero and
7511 check if non-zero and get signal name after subprocess has ended.
7512
7513 * process.c (sigchld_handler): Set synch_process_termsig
7514 if terminated by a signal. synch_process_death setting removed.
7515
7516 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
7517
7518 2004-01-26 Andreas Schwab <schwab@suse.de>
7519
7520 * print.c (print_preprocess): Declare size as EMACS_INT to not
7521 lose bits.
7522 (print_object): Likewise.
7523 * alloc.c (Fpurecopy): Likewise.
7524
7525 2004-01-25 Luc Teirlinck <teirllm@auburn.edu>
7526
7527 * window.c (Fwindow_minibuffer_p): Doc fix.
7528
7529 2004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
7530
7531 * editfns.c (Fformat): Make both passes accept the same set of flags.
7532
7533 2004-01-23 Kenichi Handa <handa@m17n.org>
7534
7535 * fns.c (Fmd5): If OBJECT is a buffer different from the current
7536 one, set buffer to OBJECT temporarily.
7537
7538 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
7539
7540 * keyboard.c (kbd_buffer_gcpro): Remove.
7541 (kbd_buffer_store_event, clear_event, Fdiscard_input)
7542 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
7543 Don't initialize and/or maintain the variable any more. It was made
7544 redundant by my commit of 2003-06-15.
7545
7546 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
7547
7548 2004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7549
7550 * lisp.h: Add undef DECL_ALIGN.
7551
7552 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
7553
7554 * process.c (wait_reading_process_input) [SYNC_INPUT]:
7555 Check interrupt_input_pending explicitly.
7556
7557 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
7558
7559 * keyboard.c (handle_async_input): New fun,
7560 extracted from input_available_signal.
7561 (input_available_signal, reinvoke_input_signal): Use it.
7562
7563 2004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
7564
7565 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
7566
7567 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
7568 manipulation macros for when tags are in the lower bits.
7569 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
7570 (DECL_ALIGN): New macro.
7571 (DEFUN): Use it.
7572
7573 * lisp.h [ENABLE_CHECKING]: Don't force union type.
7574
7575 * s/darwin.h (__attribute__): Remove outdated workaround.
7576
7577 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
7578
7579 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
7580 Don't check range of malloc address.
7581 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
7582
7583 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
7584
7585 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
7586
7587 2004-01-19 Kenichi Handa <handa@m17n.org>
7588
7589 * fontset.c (fontset_font_pattern): Fix previous change.
7590
7591 2004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
7592
7593 * xdisp.c (Voverflow_newline_into_fringe)
7594 (move_it_in_display_line_to, redisplay_internal)
7595 (update_window_fringes, redisplay_window, display_line, window):
7596 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
7597 that it compiles without a window-system.
7598 * dispnew.c (direct_output_for_insert, update_window): Likewise.
7599
7600 2004-01-16 Kim F. Storm <storm@cua.dk>
7601
7602 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
7603
7604 * buffer.c (init_buffer_once): Set buffer_defaults and
7605 buffer_local_flags for indicate_buffer_boundaries.
7606 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
7607 default- variable for it.
7608
7609 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
7610 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
7611 New members exact_window_width_line_p and cursor_in_fringe_p for
7612 overflowing newlines into right fringe.
7613 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
7614 and indicate_bottom_line_p for buffer boundaries and scrolling.
7615 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
7616 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
7617 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
7618 and HOLLOW_SQUARE_BITMAP.
7619 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
7620 Add prototypes.
7621
7622 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
7623 instead of related indicator fields.
7624 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
7625 (direct_output_for_insert): Handle exact width lines like
7626 contined lines. Call update_window_fringes.
7627 (update_window): Call update_window_fringes.
7628 (scrolling_window): Don't skip desired rows with changed bitmaps.
7629 Check if fringe bitmaps changes when assigning scrolled rows.
7630
7631 * xdisp.c (Voverflow_newline_into_fringe): New variable.
7632 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
7633 (move_it_in_display_line_to): Overflow newline into fringe for
7634 rows that are exactly as wide as the window.
7635 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
7636 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
7637 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
7638 (fringe_bitmaps): Add new bitmaps.
7639 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
7640 Select proper bitmap for cursor in fringe when appropriate.
7641 Handle alignment of bitmap to top or bottom of row.
7642 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
7643 done by update_window_fringes.
7644 (update_window_fringes, draw_window_fringes): New functions.
7645 (redisplay_internal): Call update_window_fringes in case only
7646 cursor row is updated.
7647 (redisplay_window): Call update_window_fringes.
7648 Explicitly call draw_window_fringes if redisplay was done using
7649 the current matrix or the overlay arrow is in the window.
7650 (try_window_reusing_current_matrix): Mark scrolled rows for
7651 fringe update (to update buffer-boundaries / scrolling icons).
7652 (find_last_unchanged_at_beg_row): Handle exact width lines line
7653 continued lines.
7654 (display_line): Overflow newline into fringe for rows that are
7655 exactly as wide as the window. Don't append space for newline
7656 in this case.
7657 (notice_overwritten_cursor): Explicitly clear cursor bitmap
7658 in fringe as if it had been overwritten.
7659 (erase_phys_cursor): Erase cursor bitmap in fringe.
7660 (syms_of_xdisp): Mark show-trailing-whitespace and
7661 void-text-area-pointer as user options.
7662 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
7663
7664 * xterm.c (x_update_window_end): Call draw_window_fringes.
7665 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
7666 in row instead of actually drawing fringe bitmaps.
7667 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
7668 (x_draw_window_cursor): Draw cursor in fringe.
7669
7670 * w32term.c (x_update_window_end): Call draw_window_fringes.
7671 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
7672 in row instead of actually drawing fringe bitmaps.
7673 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
7674 (w32_draw_window_cursor): Draw cursor in fringe.
7675
7676 * macterm.c (x_update_window_end): Call draw_window_fringes.
7677 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
7678 in row instead of actually drawing fringe bitmaps.
7679 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
7680 (mac_draw_window_cursor): Draw cursor in fringe.
7681
7682 2004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7683
7684 * xterm.c (handle_one_xevent): Don't handle characters that are part
7685 of an old style (XLookupString) compose sequence.
7686
7687 2004-01-15 Kenichi Handa <handa@m17n.org>
7688
7689 * search.c (Freplace_match): Use make_multibyte_string or
7690 make_unibyte_string according to the buffer multibyteness.
7691
7692 2004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
7693
7694 * alloc.c (struct interval_block, struct string_block)
7695 (struct symbol_block, struct marker_block, live_string_p)
7696 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
7697 Better preserve alignment for objects in blocks.
7698 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
7699
7700 * lread.c (defvar_per_buffer): Remove dead declaration.
7701
7702 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
7703 space size.
7704
7705 2004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7706
7707 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
7708 if a key press should pop down. Only pop down if a key is pressed
7709 outside the menu/dialog.
7710 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
7711 popup_get_selection.
7712 (create_and_show_dialog): Pass 1 for down_on_keypress to
7713 popup_get_selection.
7714
7715 2004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7716
7717 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
7718 BLOCK/UNBLOCK_INPUT.
7719
7720 2004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7721
7722 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
7723 specified.
7724
7725 2004-01-08 Kenichi Handa <handa@m17n.org>
7726
7727 * editfns.c (Fformat): Fix '&' to '&&'.
7728
7729 2004-01-08 Andreas Schwab <schwab@suse.de>
7730
7731 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
7732 size if PSEUDOVECTOR_FLAG is set.
7733
7734 2004-01-07 Kenichi Handa <handa@m17n.org>
7735
7736 * charset.c (Fdeclare_equiv_charset): Fix docstring.
7737
7738 * fontset.c (fontset_ref_via_base): Fix previous change.
7739
7740 2004-01-07 Kim F. Storm <storm@cua.dk>
7741
7742 * process.c (read_process_output): Only activate adaptive
7743 buffering if we read less than 256 bytes at a time.
7744
7745 2004-01-06 Kim F. Storm <storm@cua.dk>
7746
7747 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
7748 object and image object. Return glyph width and height.
7749 (mode_line_string, marginal_area_string): Ditto.
7750
7751 * dispextern.h (buffer_posn_from_coords, mode_line_string)
7752 (marginal_area_string): Fix prototypes.
7753
7754 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
7755 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
7756 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
7757
7758 * keyboard.c (make_lispy_position): Use modified mode_line_string,
7759 buffer_posn_from_coords, and marginal_area_string functions to
7760 include both string object and image object in the lispy position.
7761 Also add actual glyph width and height to position.
7762 (read_key_sequence): Use real buffer position from mouse
7763 event to find keymap property even when click is in marginal area.
7764
7765 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
7766 mode_line_string and marginal_area_string functions to handle
7767 both string object and image object properties.
7768
7769 2004-01-06 Andreas Schwab <schwab@suse.de>
7770
7771 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
7772 character.
7773
7774 2004-01-02 Andreas Schwab <schwab@suse.de>
7775
7776 * macterm.c (emacs_options, x_initialized, same_x_server):
7777 Remove unused (and duplicated) definitions.
7778
7779 2004-01-02 Kim F. Storm <storm@cua.dk>
7780
7781 * process.h (struct Lisp_Process): New members for adaptive read
7782 buffering: adaptive_read_buffering, read_output_delay, and
7783 read_output_skip.
7784
7785 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
7786 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
7787 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
7788 (process_output_delay_count, process_output_skip): New vars.
7789 (Vprocess_adaptive_read_buffering): New variable.
7790 (make_process): Initialize adaptive read buffering members.
7791 (Fstart_process): Set adaptive_read_buffering member.
7792 (deactivate_process): Cleanup adaptive read buffering.
7793 (wait_reading_process_input): Temporarily omit delayed
7794 subprocesses from the set of file descriptors to read from;
7795 adjust the select timeout if we skipped any subprocesses.
7796 (read_process_output): Increase adaptive read buffering delay if
7797 we read less than a full buffer; reduce delay when we read a
7798 full buffer.
7799 (send_process): Simplify using local Lisp_Process var.
7800 Reset adaptive read buffering delay after write.
7801 (init_process): Initialize process_output_delay_count and
7802 process_output_skip.
7803 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
7804
7805 2004-01-01 Jason Rumney <jasonr@gnu.org>
7806
7807 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
7808
7809 2003-12-30 Luc Teirlinck <teirllm@auburn.edu>
7810
7811 * print.c (Ferror_message_string): Add hyperlink in the docstring
7812 to the definition of `signal' in the Elisp manual.
7813 * eval.c (Fsignal): Ditto.
7814
7815 2003-12-29 James Clark <jjc@jclark.com>
7816
7817 * fns.c (internal_equal): Return t for two NaN arguments.
7818
7819 2003-12-29 Richard M. Stallman <rms@gnu.org>
7820
7821 * data.c (store_symval_forwarding): Handle setting
7822 default-fill-column, etc., by changing the value in
7823 buffers that use the default.
7824
7825 * minibuf.c (Fset_minibuffer_window): Doc fix.
7826
7827 * fileio.c (choose_write_coding_system): Ignore auto_saving
7828 if using the visited file for auto saves.
7829 (Fwrite_region): Don't update SAVE_MODIFF
7830 if auto-saving in visited file.
7831
7832 2003-12-29 Kenichi Handa <handa@m17n.org>
7833
7834 * dispextern.h (face_font_available_p): Extern it.
7835
7836 * fontset.c (Voverriding_fontspec_alist): New variable.
7837 (lookup_overriding_fontspec): New function.
7838 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
7839 (fontset_font_pattern): Likewise.
7840 (regulalize_fontname): New function.
7841 (Fset_fontset_font): Call regulalize_fontname.
7842 (Fset_overriding_fontspec_internal): New function.
7843 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
7844 Defsubr Sset_overriding_fontspec_internal.
7845
7846 * xfaces.c (face_font_available_p): New function.
7847
7848 2003-12-28 Richard M. Stallman <rms@gnu.org>
7849
7850 * buffer.c (Fother_buffer): Don't crash if BUF is nil
7851 or if its name is nil.
7852
7853 * buffer.c (Fkill_buffer): Don't delete auto-save file
7854 if it's the same as the visited file.
7855
7856 2003-12-28 Luc Teirlinck <teirllm@auburn.edu>
7857
7858 * coding.c (Fcheck_coding_system): Doc fix.
7859
7860 2003-12-28 Kim F. Storm <storm@cua.dk>
7861
7862 * Makefile.in (eval.o): Depend on dispextern.h.
7863
7864 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
7865 image glyph using image's ascent.
7866 (mode_line_string): Return image glyph as object clicked on.
7867 Adjust y0 for image glyph using image's ascent.
7868
7869 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
7870 (struct glyph): New members, ascent and descent. Used to save
7871 this glyph's ascent and descent, instead of having.
7872 (struct glyph): Declare member face_id using FACE_ID_BITS.
7873 (find_hot_spot): Add prototype.
7874
7875 * keyboard.c (Qimage): Remove extern (now in lisp.h).
7876 (QCmap): Declare extern.
7877 (make_lispy_position): When position is inside image hot-spot,
7878 use hot-spot element's id as posn element.
7879
7880 * lisp.h (IMAGEP): New macro to test for image object type.
7881 (Qimage): Declare extern.
7882
7883 * macfns.c (Qimage): Remove extern (now in lisp.h).
7884 (valid_image_p, parse_image_spec): Use IMAGEP macro.
7885
7886 * macterm.c (Qface, Qmouse_face): Remove unused externs.
7887
7888 * w32fns.c (Qimage): Remove extern (now in lisp.h).
7889 (valid_image_p, parse_image_spec): Use IMAGEP macro.
7890
7891 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
7892
7893 * w32term.c (Qface, Qmouse_face): Remove unused externs.
7894
7895 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
7896 pointer types.
7897 (Qrelative_width, Qalign_to): Remove unused variables.
7898 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
7899 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
7900 image maps.
7901 (x_y_to_hpos_vpos): Return glyph relative coordinates through
7902 new dx and dy args.
7903 Remove buffer_only_p arg (always 0). Simplify code accordingly.
7904 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
7905 than row's ascent and height, to get sensible height on tall rows.
7906 (build_desired_tool_bar_string): Remove Qimage extern.
7907 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
7908 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
7909 image glyph is alone on the last line.
7910 (append_glyph, append_composite_glyph, produce_image_glyph)
7911 (append_stretch_glyph): Set glyph's ascent and descent.
7912 (on_hot_spot_p): New function to check if position is inside an
7913 rectangular, circular, or polygon-shaped image hot-spot,
7914 (find_hot_spot): New function to search for image hot-spot.
7915 (Flookup_image_map): New defun to search for image hot-spot.
7916 (define_frame_cursor1): New aux function to determine frame pointer.
7917 (note_mode_line_or_margin_highlight, note_mouse_highlight):
7918 Handle `pointer' text property and :pointer image property to
7919 control frame pointer shape. Detect image hot-spots for pointer
7920 and help_echo properties. Use define_frame_cursor1.
7921 (note_mouse_highlight): Use Vvoid_text_area_pointer.
7922 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
7923 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
7924
7925 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
7926
7927 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
7928 (Qimage): Remove extern (now in lisp.h).
7929 (valid_image_p, parse_image_spec): Use IMAGEP macro.
7930
7931 * xmenu.c (show_help_event): Remove unused code.
7932
7933 * xterm.c (Qface, Qmouse_face): Remove unused externs.
7934 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
7935 row's ascent and descent, to get a sensible height on tall rows.
7936
7937 2003-12-25 Luc Teirlinck <teirllm@auburn.edu>
7938
7939 * minibuf.c (Fcompleting_read): Undo previous change.
7940
7941 2003-12-25 Lars Hansen <larsh@math.ku.dk>
7942
7943 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
7944 Arguments GCPRO'ed in call to file name handler.
7945
7946 2003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
7947
7948 * termcap.c (tgetst1): Scan for "%pN"; if all
7949 N are continuous in [1,9], remove all "%pN".
7950
7951 2003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7952
7953 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
7954
7955 * xfaces.c (lface_fully_specified_p): Take into account that
7956 MAC OS always have unspecified stipple.
7957
7958 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
7959
7960 * tparam.c (tparam1): Add handling for `%pN', which
7961 means use param N for the next substitution.
7962
7963 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
7964
7965 * xfaces.c (Fcolor_gray_p): Fix omission bug:
7966 In case `frame' is nil, consult the selected frame.
7967 (Fcolor_supported_p): Likewise.
7968
7969 2003-12-23 Luc Teirlinck <teirllm@auburn.edu>
7970
7971 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
7972 Doc fixes.
7973
7974 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
7975 and an integer. Adapt the introductory comment accordingly.
7976 (Fread_from_minibuffer): Delete code moved into read_minibuf.
7977 Doc fix.
7978 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
7979 read_minibuf.
7980 (Fcompleting_read): Delete code moved into read_minibuf.
7981 (Ftest_completion): Make it handle obarrays and hash tables correctly.
7982
7983 2003-12-03 Kenichi Handa <handa@m17n.org>
7984
7985 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
7986 encoding sequence.
7987
7988 2003-12-01 Kenichi Handa <handa@m17n.org>
7989
7990 * composite.c (syms_of_composite): Don't make the compostion hash
7991 table week.
7992
7993 2003-11-30 Luc Teirlinck <teirllm@auburn.edu>
7994
7995 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
7996 * textprop.c (Fget_char_property_and_overlay): New function.
7997 (syms_of_textprop): Defsubr it.
7998
7999 2003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8000
8001 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
8002 to compile on terminal configuration.
8003
8004 * fileio.c (Fread_file_name): Check use_file_dialog also before
8005 calling Fx_file_dialog.
8006
8007 * fns.c: use_file_dialog: New variable.
8008 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
8009
8010 2003-11-29 Kim F. Storm <storm@cua.dk>
8011
8012 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
8013 (syms_of_msdos): Don't intern and staticpro them.
8014
8015 2003-11-27 Kim F. Storm <storm@cua.dk>
8016
8017 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
8018 coordinates relative to glyph at posn. If glyph is an image,
8019 return that as object at posn. Callers changed.
8020 (mode_line_string, marginal_area_string): Calculate and return
8021 pixel coordinates relative to glyph. Callers changed.
8022
8023 * dispextern.h (buffer_posn_from_coords, mode_line_string)
8024 (marginal_area_string): Fix prototypes.
8025 (window_box_left_offset, window_box_right_offset): Add prototypes.
8026
8027 * frame.h (get_specified_cursor_type, get_window_cursor_type):
8028 Remove prototypes.
8029
8030 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
8031
8032 * keyboard.c (make_lispy_position): Add x and y coordinates
8033 relative to the current glyph as 7th element of position.
8034 If glyph is an image, return it in the object element.
8035 (read_key_sequence): Skip checks for keymap property in cases
8036 where POSN_STRING is not a string (e.g. an image).
8037
8038 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
8039 (Vshow_text_cursor_in_void): New variable.
8040 (glyph_to_pixel_coords): Don't use negative hpos.
8041 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
8042 (append_stretch_glyph): Change ascent arg to be actual value
8043 in pixels rather than ratio to height. Callers changed.
8044 (calc_pixel_width_or_height): New aux function, implementing
8045 pixel based artihmetic for glyph widths and heights.
8046 (produce_stretch_glyph): Use calc_pixel_width_or_height for
8047 :width, :height, :align-to, and :ascent, thus allowing these to
8048 be specified in pixels as well as multiples of characters.
8049 Don't produce stretch glyphs with zero width or height.
8050 (get_specified_cursor_type): Declare static.
8051 (get_window_cursor_type): Declare static. Add glyph arg to be
8052 able to know when cursor is on an image; always substitute
8053 hollow-box cursor for filled-box cursor on images, to avoid
8054 negative images and flicker when blinking the cursor.
8055 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
8056 (note_mode_line_or_margin_highlight): Use non-text cursor rather
8057 than vertical scroll-bar cursor in display margins.
8058 (note_mouse_highlight): Use non-text cursor rather than text
8059 cursor in fringes and over images in the text area.
8060 Use non-text cursor when mouse pointer is outside editable text,
8061 i.e. in the void after end-of-line or end-of-buffer; this was
8062 already done for W32, but is now standard for all systems --
8063 user can toggle show-text-cursor-in-void to get old behaviour.
8064 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
8065 Vdisplay_pixels_per_inch.
8066
8067 2003-11-25 Andreas Schwab <schwab@suse.de>
8068
8069 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
8070 EMACS_INT to not lose bits.
8071 (Ffillarray): Don't set bits beyond the size of a bool vector.
8072
8073 2003-11-25 Kim F. Storm <storm@cua.dk>
8074
8075 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
8076 define this defun on systems that cannot use stderr as lvalue.
8077
8078 2003-11-24 Gerd Moellmann <gerd@gnu.org>
8079
8080 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
8081 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
8082 ld's default is incompatible with unexec.
8083
8084 2003-11-23 Kim F. Storm <storm@cua.dk>
8085
8086 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
8087 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
8088 (Fforce_window_update): New defun.
8089 (syms_of_window): Defsubr it.
8090 (Fset_window_margins, Fset_window_fringes): Doc fix.
8091
8092 * print.c (Fredirect_debugging_output): New defun.
8093 (syms_of_print): Defsubr it.
8094
8095 2003-11-22 Luc Teirlinck <teirllm@auburn.edu>
8096
8097 * fns.c (Fset_char_table_parent): Doc fix.
8098
8099 2003-11-22 Kim F. Storm <storm@cua.dk>
8100
8101 * dispnew.c (buffer_posn_from_coords): Return actual row/column
8102 for glyph clicked on, rather than (unused) pixel positions.
8103 (mode_line_string, marginal_area_string): Change X and Y args to
8104 pointers for returning actual row/column for glyph clicked on.
8105 Simplify and optimize loops.
8106
8107 * dispextern.h (mode_line_string, marginal_area_string):
8108 Update prototypes.
8109
8110 * keyboard.c (make_lispy_position): New function for generating
8111 mouse click positions from frame and pixel coordinates.
8112 Enhanced to return buffer position and actual row/column for
8113 events outside the text area using updated mode_line_string and
8114 marginal_area_string functions.
8115 Return left-fringe and right-fringe clicks as such, rather than
8116 clicks in text area.
8117 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
8118 pixel_to_glyph_coords, as we never use the results.
8119 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
8120 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
8121 Eliminate unused code in WHEEL_EVENT handling.
8122 (make_lispy_movement): Use make_lispy_position.
8123
8124 * window.c (coordinates_in_window): Remove redundant tests.
8125 Fix returned X pixel value for left-margin.
8126
8127 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
8128 mode_line_string and marginal_area_string parameters.
8129
8130 2003-11-22 Lars Hansen <larsh@math.ku.dk>
8131
8132 * w32.c (struct the_group, getgrgid): Add.
8133 * mac.c (struct my_group, getgrgid): Add.
8134
8135 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
8136
8137 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
8138
8139 2003-11-21 Lars Hansen <larsh@math.ku.dk>
8140
8141 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
8142 include in call to file name handler. Optionally translate numeric
8143 UID and GID to strings. Update docstring.
8144 (directory_files_internal): Add parameter ID-FORMAT.
8145 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
8146 include in call to file name handler and call to
8147 directory_files_internal. Update Docstring.
8148 (Fdirectory_files): Add dummy parameter in call to
8149 directory_files_internal.
8150 * lisp.h (Qinteger): Add.
8151 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
8152 (Ffile_attributes): Add parameter.
8153 * data.c (Qinteger): Export.
8154
8155 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
8156
8157 * fns.c (Freverse, Fnreverse): Doc fixes.
8158
8159 2003-11-19 Kim F. Storm <storm@cua.dk>
8160
8161 * xdisp.c (init_iterator): Initialize it->start to position
8162 before reseating (in case start position is invisible).
8163 (init_to_row_start): Set it->start to row-start.
8164 (redisplay_window): Accept optional_new_start if start position
8165 is invisible (in which case IT_CHARPOS overshoots PT).
8166 (display_line): Setup row->start from it->start (rather than
8167 it->current which is wrong if first char on line is invisible).
8168 When done, reseat it->start to it->current (= start of next row).
8169 (expose_area): Fix exposure of text area when first char (e.g. TAB)
8170 is only partially visible.
8171
8172 * dispextern.h (struct it): New member start.
8173
8174 2003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
8175
8176 * alloc.c (make_float, Fcons): Clear the markbit at init time.
8177 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
8178 of block_index outside of the macro call.
8179 (Fgarbage_collect): Remove null code.
8180
8181 * m/amdx86-64.h: Don't redefine XPNTR.
8182
8183 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
8184 of VALMASK.
8185
8186 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
8187 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
8188 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
8189
8190 * lisp.h (VALMASK): Only define for non-union type.
8191 (MARKBIT): Remove.
8192 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
8193 (XTYPE): Define unconditionally.
8194 (XSETTYPE): Remove one more remnant.
8195 (EQ): Define differently for the union and non-union cases.
8196 (INTMASK): New bit mask.
8197 (struct Lisp_Marker): Move down to prepare for upcoming patch.
8198 (GC_EQ): Delegate to EQ.
8199
8200 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
8201
8202 2003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8203
8204 * xterm.c (x_window_to_scroll_bar): Move check of display to
8205 where window_id is compared.
8206
8207 2003-11-17 Kim F. Storm <storm@cua.dk>
8208
8209 * dispextern.h (struct it): New member first_vpos.
8210
8211 * xdisp.c (start_display): Set it->first_vpos.
8212 (try_window_id): Use first_vpos to start display in first _text_
8213 line if no reusable lines at start of window with header line.
8214
8215 2003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8216
8217 * w32fns.c (XPutPixel):
8218 * w32bdf.c (w32_init_bdf_font):
8219 * sunfns.c (sel_read):
8220 * process.c (Fmake_network_process):
8221 * frame.c (store_frame_param):
8222 * fontset.c (Fset_fontset_font):
8223 * emacs.c (shut_down_emacs):
8224 * ccl.c (ccl_driver): Remove period at end of error message.
8225
8226 * config.in: Regenerate.
8227
8228 * xfns.c (x_window_to_frame, x_any_window_to_frame)
8229 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
8230 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
8231 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
8232 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
8233
8234 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
8235
8236 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
8237 (XTmouse_position, handle_one_xevent): Pass Display* to
8238 x_window_to_scroll_bar.
8239 (x_window_to_scroll_bar): Take a Display* argument.
8240 Check that display for frame is equal to Display* argument.
8241 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
8242 x_display_info_for_display instead. Use Display in xev instead
8243 of GDK_DISPLAY.
8244 (x_dispatch_event): Call x_display_info_for_display.
8245 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
8246 (x_connection_closed): Call xg_display_close for GTK.
8247 (x_term_init): Call xg_display_open for additional displays.
8248 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
8249 for GTK.
8250
8251 * xmenu.c (single_menu_item, mouse_position_for_popup)
8252 (x_activate_menubar): Formatting adjustments.
8253
8254 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
8255 adjustments.
8256
8257 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
8258 (xg_display_close, xg_create_default_cursor)
8259 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
8260 handling.
8261 (xg_left_ptr_cursor): Remove.
8262 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
8263 cursor here.
8264 (xg_win_to_widget): Take Display* argument, call
8265 gdk_xid_table_lookup_for_display.
8266 (xg_create_frame_widgets, xg_get_file_name, create_menus)
8267 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
8268 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
8269 in FRAME_X_DISPLAY_INFO.
8270 (xg_get_scroll_id_for_window): Take Display* argument.
8271 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
8272 (xg_initialize): Remove xg_left_ptr_cursor.
8273
8274 * gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add
8275 Display* argument.
8276 (xg_display_open, xg_display_close, xg_create_default_cursor): Declare.
8277
8278 2003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8279
8280 * xterm.c (x_detect_focus_change): Do not change focus frame for
8281 Enter/LeaveNotify if the current focus frame has explicit focus.
8282
8283 2003-11-14 Kim F. Storm <storm@cua.dk>
8284
8285 * dispnew.c (update_text_area): Fix redisplay error when hscroll
8286 is active and first glyph is only partially visible.
8287
8288 2003-11-13 Kenichi Handa <handa@m17n.org>
8289
8290 * xdisp.c (select_frame_for_redisplay): New function.
8291 (redisplay_internal): Record also selected_frame for
8292 unwind_redisplay. Call select_frame_for_redisplay before
8293 redrawing each frame.
8294 (unwind_redisplay): Argument changed to a cons.
8295
8296 2003-11-12 Luc Teirlinck <teirllm@auburn.edu>
8297
8298 * fns.c (Fstring_to_multibyte): Doc fix.
8299
8300 2003-11-11 Kenichi Handa <handa@m17n.org>
8301
8302 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
8303
8304 2003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8305
8306 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
8307 program specified positions.
8308
8309 2003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8310
8311 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
8312
8313 2003-11-08 Kenichi Handa <handa@m17n.org>
8314
8315 * Makefile.in (lisp): Add kannada.el.
8316 (shortlisp): Likewise.
8317
8318 2003-11-07 Kenichi Handa <handa@m17n.org>
8319
8320 * coding.c (coding_allocate_composition_data):
8321 Reset coding->composing to COMPOSITION_NO.
8322 (coding_restore_composition): Detect invalid composition data.
8323 Give Fstring and Fvector a Lispy integer, not C int.
8324
8325 2003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
8326
8327 * floatfns.c (Flogb): Don't use VALMASK.
8328
8329 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
8330 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
8331
8332 * lisp.h (XINT): Move the cast to clarify what is going on.
8333 (GCTYPEMASK, XSETTYPE): Remove.
8334 (XGCTYPE): Make it an alias of XTYPE.
8335
8336 2003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8337
8338 * xterm.c (x_term_init): Fix formatting.
8339
8340 2003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8341
8342 * gtkutil.h (xg_have_tear_offs): Declare.
8343 (xg_keep_popup, xg_did_tearoff): Remove.
8344
8345 * gtkutil.c: Remove variable xg_did_tearoff.
8346 (xg_have_tear_offs): New function.
8347 (tearoff_remove): Just decrease xg_detached_menus.
8348 (tearoff_activate): Increase xg_detached_menus and call
8349 tearoff_remove when tearoff is removed.
8350 (xg_keep_popup): Remove function.
8351 (create_menus): Give add_tearoff_p as argument to recursive
8352 call to create_menus.
8353 (xg_create_widget): Use variables instead of multiple
8354 strcmp. Tell create_menus to create tear off only for
8355 menu bar menus.
8356 (xg_update_menubar): Change title for a detached menu also.
8357 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
8358 of deep_p.
8359 (xg_initialize): Initialize xg_detached_menus, remove
8360 initialization of xg_did_tearoff.
8361
8362 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
8363 xg_have_tear_offs returns non-zero.
8364 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
8365 call to xg_keep_popup.
8366
8367 2003-11-01 Andrew Choi <akochoi@shaw.ca>
8368
8369 * macterm.c (XTread_socket): Handle menubar selection and grow
8370 window only for mouseDown events.
8371
8372 2003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8373
8374 * xterm.c (x_term_init): For GTK part, increase x_initialized
8375 to check for more than one display. Use error instead of return 0.
8376
8377 2003-10-31 Andrew Choi <akochoi@shaw.ca>
8378
8379 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
8380 (copy_dysymtab): Call it.
8381
8382 2003-10-31 Luc Teirlinck <teirllm@auburn.edu>
8383
8384 * eval.c (Fdefvaralias): Doc fix.
8385
8386 2003-10-26 Luc Teirlinck <teirllm@auburn.edu>
8387
8388 * data.c (Fsetplist): Doc fix.
8389
8390 2003-10-14 Lute Kamstra <lute@gnu.org>
8391
8392 * window.c (Fset_window_fringes): Clarify docstring.
8393
8394 2003-10-14 Kim F. Storm <storm@cua.dk>
8395
8396 * window.c (Fset_window_margins): Simplify arg checking.
8397
8398 2003-10-13 Richard M. Stallman <rms@gnu.org>
8399
8400 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
8401 (print_partial_compiled_pattern): Replace assert with a printout.
8402 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
8403
8404 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
8405
8406 * window.c (Fset_window_margins): Allow only integers as args.
8407 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
8408 Doc fixes.
8409
8410 2003-10-13 Lute Kamstra <lute@gnu.org>
8411
8412 * window.c (Fset_window_fringes): Elaborate docstring.
8413
8414 2003-10-12 Andrew Choi <akochoi@shaw.ca>
8415
8416 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
8417
8418 * s/darwin.h (GC_MARK_STACK): Define.
8419
8420 2003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8421
8422 * window.c (shrink_windows): New function.
8423 (size_window): Call shrink_windows to calculate window sizes when
8424 shrinking frame with more than one window.
8425
8426 2003-10-12 Kim F. Storm <storm@cua.dk>
8427
8428 * xdisp.c (compute_fringe_widths): Doc fix.
8429
8430 2003-10-08 Kenichi Handa <handa@m17n.org>
8431
8432 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
8433
8434 2003-10-07 Kenichi Handa <handa@m17n.org>
8435
8436 * coding.c (Qcoding_system_define_form): New variable.
8437 (syms_of_coding): Intern and staticpro it.
8438 (Fcheck_coding_system): Try to autoload the definition of
8439 CODING-SYSTEM.
8440
8441 2003-10-05 Luc Teirlinck <teirllm@auburn.edu>
8442
8443 * fns.c (Frequire): Doc fix.
8444
8445 2003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8446
8447 * xfns.c (Fx_send_client_event): New function as a base for
8448 manipulating extended window manager hints.
8449 (Fx_send_client_event): Remove unused variable s.
8450
8451 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
8452 that function is removed.
8453
8454 * xterm.c (x_set_offset): Use move_offset_left/top instead of
8455 x/y_pixels_outer_diff.
8456 (x_check_expected_move): Calculate move_offset_left/top.
8457
8458 * xterm.h (struct x_output): New members: move_offset_top/left.
8459
8460 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
8461 call x_set_offset directly.
8462
8463 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
8464
8465 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
8466
8467 * xterm.c (x_delete_display): Free font names and font_encoder
8468 in dpyinfo->font_table.
8469
8470 * xfns.c (Fx_close_connection): Only call XFreeFont here.
8471 Move xfree of font names to x_delete_display.
8472
8473 * xterm.h (struct x_display_info): New member, wm_type.
8474 (struct x_output): New members, expected_top/left and
8475 check_expected_move.
8476
8477 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
8478 is received.
8479 (handle_one_xevent): Rename x_check_expected_move from
8480 x_check_fullscreen_move.
8481 (x_set_offset): Only add WM decoration sizes to modified_top/left
8482 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
8483 (x_check_expected_move): Rename from x_check_fullscreen_move.
8484 Removed fullscreen specific code. Use check_expected_move,
8485 expected_left/top instead. Also, set wm_type.
8486 (x_term_init): Initialize wm_type to unknown.
8487
8488 * frame.c (x_fullscreen_move): Remove addition of WM decoration
8489 sizes to move_x/y.
8490
8491 2003-10-03 Kenichi Handa <handa@m17n.org>
8492
8493 * macterm.c (x_load_font): Clear all members of FONTP before start
8494 filling them.
8495
8496 2003-10-02 Kenichi Handa <handa@m17n.org>
8497
8498 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
8499 before calling find_ccl_program_func. Call find_ccl_program_func
8500 only when fontp->font_encoder is not NULL.
8501
8502 * xterm.c (x_load_font): Clear all members of FONTP before start
8503 filling them.
8504
8505 2003-10-03 John Paul Wallington <jpw@gnu.org>
8506
8507 * keymap.c (map_keymap): Don't abort when binding is a vector.
8508
8509 2003-10-02 Jason Rumney <jasonr@gnu.org>
8510
8511 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
8512 Sync dependencies with Makefile.in.
8513 (alloca.o): Remove.
8514
8515 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
8516 filling them.
8517
8518 * w32bdf.c (w32_load_bdf_font): Likewise.
8519
8520 2003-09-30 Richard M. Stallman <rms@gnu.org>
8521
8522 * term.c (set_tty_color_mode): Calculate current_mode_spec
8523 regardless of value of VAL.
8524
8525 * intervals.c (graft_intervals_into_buffer):
8526 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
8527 Handle over_used when splitting UNDER.
8528
8529 2003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8530
8531 * regex.c (regex_compile): Free the stack when returning from function.
8532
8533 2003-09-28 Kenichi Handa <handa@m17n.org>
8534
8535 * fontset.c (Finternal_char_font): Change return value to
8536 cons (FONT-NAME . GLYPH-CODE).
8537
8538 2003-09-28 Eli Zaretskii <eliz@gnu.org>
8539
8540 * term.c (tty_setup_colors): Treat any negative argument as -1.
8541
8542 2003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
8543
8544 * process.c (send_process): Delete unused temp_buf.
8545
8546 2003-09-26 Dave Love <fx@gnu.org>
8547
8548 * xterm.c (x_bitmap_mask): Declare.
8549
8550 2003-09-25 Dave Love <fx@gnu.org>
8551
8552 * Makefile.in (fns.o): Depend on md5.h.
8553
8554 2003-09-25 Kim F. Storm <storm@cua.dk>
8555
8556 * window.c (set_window_buffer): Fix redisplay problems when
8557 switching between buffers with different display margin widths.
8558
8559 2003-09-23 Kim F. Storm <storm@cua.dk>
8560
8561 * process.c (set_socket_option): Fix :bindtodevice option.
8562 (Fset_network_process_option): Update process contact list when
8563 setting option succeeds.
8564 (Fmake_network_process): Doc fix.
8565
8566 2003-09-23 Dave Love <fx@gnu.org>
8567
8568 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
8569
8570 2003-09-22 Eli Zaretskii <eliz@gnu.org>
8571
8572 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
8573 color mode is an integer number (it could be -1).
8574
8575 2003-09-22 Richard M. Stallman <rms@gnu.org>
8576
8577 * intervals.c (graft_intervals_into_buffer): Correct the main loop
8578 in the case where OVER is longer than UNDER.
8579
8580 2003-09-22 Masatake YAMATO <jet@gyve.org>
8581
8582 * window.c (Fset_window_scroll_bars): Validate the value of
8583 `vertical_type'.
8584
8585 2003-09-21 Kim F. Storm <storm@cua.dk>
8586
8587 * frame.c (Vdefault_frame_scroll_bars): New variable.
8588 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
8589 (syms_of_frame): DEFVAR_LISP it, and initialize according to
8590 window-system default scroll bar position.
8591
8592 * window.c (Fwindow_scroll_bars): Doc fix.
8593
8594 2003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8595
8596 * xterm.c (x_set_offset): Take window manager decorations into account.
8597
8598 2003-09-19 Richard M. Stallman <rms@gnu.org>
8599
8600 * atimer.h: Don't include lisp.h.
8601 (P_): Define it here (as well as elsewhere).
8602
8603 * print.c (Fprin1_to_string): Move the PRINTPREPARE
8604 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
8605
8606 * data.c (Fvariable_binding_locus): New function.
8607 (syms_of_data): defsubr it.
8608 (Flocal_variable_p): Delete duplicate call to indirect_variable.
8609
8610 2003-09-18 Dave Love <fx@gnu.org>
8611
8612 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
8613
8614 * process.c (Fnetwork_interface_info): Fix type error.
8615 (Fnetwork_interface_list): Doc fix.
8616 (read_process_output, read_process_output): Delete unused var.
8617
8618 2003-09-17 Kim F. Storm <storm@cua.dk>
8619
8620 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
8621 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
8622 (Fnetwork_interface_info): Check that ifreq struct has required
8623 fields before accessing them; this requires that those fields are
8624 defined as macros, which may be too restrictive on some platforms,
8625 but it is better than failing on other platforms.
8626 (syms_of_process): Only defsubr above fns when included.
8627
8628 2003-09-17 Dave Love <fx@gnu.org>
8629
8630 * unexalpha.c: Don't include varargs.h.
8631
8632 2003-09-17 Kim F. Storm <storm@cua.dk>
8633
8634 * process.c (Fset_process_sentinel): Add sentinel to childp plist
8635 for network process.
8636 (socket_options): Add `:' prefix to option names. Add optbit field.
8637 (set_socket_option): Remove no_error arg and special handling of s < 0.
8638 Return 1<<optbit for known option, 0 for unknown.
8639 Do not interpret 0 as false for boolean option (only nil).
8640 Pass failed option and value to report_file_error.
8641 (Fset_network_process_options): Replace by Fset_network_process_option.
8642 (Fset_network_process_option): New function to set just one option.
8643 (Fmake_network_process): Allow :coding arg to be a cons.
8644 Allow :server arg to be an integer specifying backlog size.
8645 Remove :options arg, and allow options to be specified directly
8646 as :KEY, VALUE pairs. Parse these options before binding socket.
8647 As before, :reuseaddr t is default for a server process, but this
8648 can now be disabled by specifying :reuseaddr nil.
8649 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
8650 (init_process): Availability of network options is now checked with
8651 simpler syntax (featurep 'make-network-process :OPTION); use loop to
8652 setup features.
8653 (syms_of_process): Fix defsubr's for the replaced functions.
8654
8655 2003-09-16 Dave Love <fx@gnu.org>
8656
8657 * Makefile.in: Depend on coding.h.
8658
8659 2003-09-14 Kim F. Storm <storm@cua.dk>
8660
8661 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
8662 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
8663 (syms_of_process): Defsubr them.
8664
8665 * config.in: Regenerate.
8666
8667 2003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
8668
8669 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
8670 * m/news-r6.h (XUNMARK): Remove.
8671 * m/mips.h (XUNMARK): Remove.
8672 * m/mips-siemens.h (XUNMARK): Remove.
8673 * m/iris4d.h (XUNMARK): Remove.
8674 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
8675
8676 2003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
8677
8678 * lisp.h (VALBITS): Don't remove 1 for the markbit.
8679 (union Lisp_Object): Use unsigned int for types. Remove markbit.
8680 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
8681 (XTYPE): Use unsigned right-shift.
8682 (XMARKBIT, XMARK, XUNMARK): Remove.
8683
8684 * alloc.c (init_intervals, init_symbol, init_marker):
8685 Don't preallocate anything.
8686 (Fgarbage_collect, mark_object): Ignore the markbit.
8687
8688 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
8689
8690 2003-09-08 Lute Kamstra <lute@gnu.org>
8691
8692 * xdisp.c (pint2hrstr): New function.
8693 (decode_mode_spec): Add `%i' and `%I' specs.
8694 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
8695 for `mode-line-format'.
8696
8697 2003-09-07 Andreas Schwab <schwab@suse.de>
8698
8699 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
8700 avoid warning.
8701
8702 2003-09-07 Eli Zaretskii <eliz@gnu.org>
8703
8704 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
8705
8706 2003-09-03 Kim F. Storm <storm@cua.dk>
8707
8708 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
8709 change (superseded by 2002-08-30 change); the default blink-off
8710 cursor is now again "no cursor".
8711
8712 2003-09-01 Jason Rumney <jasonr@gnu.org>
8713
8714 * makefile.w32-in (alloca.o): Remove.
8715 (coding.o): Depend on intervals.h
8716 (emacs.o, bytecode.o): Depend on window.h
8717
8718 2003-09-01 Dave Love <fx@gnu.org>
8719
8720 * Makefile.in (alloca.o): Remove commands.
8721 (coding.o): Depend on intervals.h composite.h window.h.
8722 (emacs.o): Depend on window.h keyboard.h keymap.h.
8723 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
8724 (bytecode.o): Depend on window.h.
8725
8726 2003-08-31 Jason Rumney <jasonr@gnu.org>
8727
8728 * w32term.c (w32_per_char_metric): Allow cached metrics to be
8729 returned even when font_type is unknown.
8730
8731 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
8732
8733 2003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8734
8735 * xterm.c (x_term_init): Initialize new fields in x_display_info.
8736
8737 * xterm.h (struct x_display_info): Add red/green/blue_bits and
8738 *_offset.
8739
8740 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
8741 calculate pixel value.
8742
8743 2003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
8744
8745 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
8746 Don't tell redisplay display is accurate when it's actually been
8747 paused for pending input.
8748
8749 2003-08-29 Richard M. Stallman <rms@gnu.org>
8750
8751 * dispnew.c (adjust_glyph_matrix): Call window_box
8752 whenever W is nonzero.
8753
8754 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
8755 (Fkill_local_variable, Fmake_variable_frame_local)
8756 (Flocal_variable_p, Flocal_variable_if_set_p):
8757 Use indirect_variable to trace thru variable aliases.
8758
8759 * config.in: Updated.
8760
8761 * callint.c (Fcall_interactively): Save and restore
8762 Vthis_command, Vthis_original_command, real_this_command,
8763 and current_kboard->Vlast_command.
8764
8765 * abbrev.c (Fexpand_abbrev): Insert before deleting.
8766
8767 2003-08-29 Gerd Moellmann <gerd@gnu.org>
8768
8769 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
8770
8771 2003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
8772
8773 * coding.c (decode_coding_iso2022): Initialize local variable c2.
8774 (decode_coding_sjis_big5): Likewise.
8775
8776 2003-08-27 Jason Rumney <jasonr@gnu.org>
8777
8778 * w32.c (sys_pipe): Protect against file descriptor overflow.
8779
8780 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
8781
8782 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
8783
8784 2003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
8785
8786 * xfns.c (Vgtk_version_string): New variable.
8787 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
8788
8789 2003-08-24 Eli Zaretskii <eliz@gnu.org>
8790
8791 * term.c (term_init): Remove `const' from buffer_size's declaration.
8792
8793 * Makefile.in (msdos.o): Depend on intervals.h.
8794
8795 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
8796
8797 2003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8798
8799 * xterm.h (struct x_display_info): New fields: client_leader_window
8800 and Xatom_wm_client_leader.
8801
8802 * xterm.c (x_initialize): Move call to x_session_initialize to ...
8803 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
8804
8805 * xsmfns.c (create_client_leader_window): New function.
8806 (x_session_initialize): Call create_client_leader_window, take
8807 dpyinfo as argument.
8808
8809 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
8810
8811 * Makefile.in (xsmfns.o): Add more depenedencies.
8812
8813 2003-08-21 Dave Love <fx@gnu.org>
8814
8815 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
8816
8817 2003-08-21 Kenichi Handa <handa@m17n.org>
8818
8819 * term.c (term_init): Fix previous change; don't rely on the
8820 length of `buffer' if TERMINFO is defined.
8821
8822 2003-08-20 Dave Love <fx@gnu.org>
8823
8824 * atimer.h: Include lisp.h.
8825
8826 * lisp.h (EMACS_LISP_H): New.
8827 (popup_activated_flag): Don't declare.
8828
8829 * alloca.c: Some merging with gnulib. Change logic and doc
8830 concerning (x)malloc/(x)free -- no longer Emacs-specific.
8831 [DO_BLOCK_INPUT]: Don't include lisp.h.
8832 (xmalloc, xfree): Declare.
8833 (malloc): Don't declare.
8834
8835 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
8836 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
8837 atimer.h, blockinput.h.
8838
8839 * alloc.c (lisp_align_malloc): Change type of `aligned'.
8840
8841 * alloca.s: Remove.
8842
8843 2003-08-19 Gerd Moellmann <gerd@gnu.org>
8844
8845 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
8846 use -lncurses.
8847
8848 * term.c (term_init): Use a buffer of size 4096 for tgetent since
8849 FreeBSD returns something longer than 2044. Abort if the end of
8850 the buffer is overwritten.
8851
8852 2003-08-19 Miles Bader <miles@gnu.org>
8853
8854 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
8855
8856 2003-08-19 Gerd Moellmann <gerd@gnu.org>
8857
8858 * alloc.c (lisp_align_malloc): Check for memory full when
8859 allocating ablocks, which also avoids freeing a pointer into an
8860 ablocks structure.
8861
8862 * puresize.h (BASE_PURESIZE): Increase to 1100000.
8863
8864 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
8865
8866 2003-08-16 Richard M. Stallman <rms@gnu.org>
8867
8868 * editfns.c (Fencode_time): Doc fix.
8869
8870 2003-08-16 David Ponce <david@dponce.com>
8871
8872 * fileio.c (Fwrite_region): Fix conditional expression to issue
8873 the right message.
8874
8875 2003-08-16 Juri Linkov <juri@jurta.org>
8876
8877 * syntax.c (Fforward_word): Argument changed to optional.
8878 Set default value to 1.
8879
8880 2003-08-15 Kenichi Handa <handa@m17n.org>
8881
8882 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
8883 what autoscaled.
8884 (best_matching_font): Once we find a better scalable font, set
8885 non_scalable_has_exact_height_p to 1.
8886 (try_font_list): Call try_alternative_families to try any family
8887 with the given registry.
8888
8889 2003-08-09 Andreas Schwab <schwab@suse.de>
8890
8891 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
8892
8893 * print.c (print_string): Fix printing of multibyte string with
8894 nontrivial printcharfun.
8895
8896 2003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8897
8898 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
8899
8900 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
8901
8902 2003-07-31 Kenichi Handa <handa@m17n.org>
8903
8904 * process.c (read_process_output): Return the actually read bytes
8905 instead of the result of decoding.
8906
8907 2003-07-31 Kenichi Handa <handa@m17n.org>
8908
8909 * xterm.h (struct x_bitmap_record): New member have_mask.
8910
8911 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
8912 to 0.
8913 (x_create_bitmap_from_file): Likewise.
8914 (x_destroy_bitmap): Check have_mask member before freeing a mask.
8915 (x_destroy_all_bitmaps): Likewise.
8916 (x_create_bitmap_mask): Set have_mask member to 1.
8917
8918 2003-07-30 Richard M. Stallman <rms@gnu.org>
8919
8920 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
8921
8922 2003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8923
8924 * gtkutil.c (xg_mark_data): Update calls to mark_object.
8925
8926 2003-07-29 Richard M. Stallman <rms@gnu.org>
8927
8928 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
8929 Conditionalize XIM code on HAVE_XIM.
8930
8931 * fns.c (Fclear_string): New function.
8932 (syms_of_fns): defsubr it.
8933
8934 2003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
8935
8936 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
8937
8938 2003-07-22 Stefan Monnier <monnier@cs.yale.edu>
8939
8940 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
8941
8942 * buffer.c (delete_all_overlays): New function.
8943 * buffer.h (delete_all_overlays): Declare.
8944 * coding.c (run_pre_post_conversion_on_str):
8945 * print.c (temp_output_buffer_setup):
8946 * fileio.c (Finsert_file_contents):
8947 * minibuf.c (get_minibuffer): Use it.
8948
8949 2003-07-22 Andrew Choi <akochoi@shaw.ca>
8950
8951 * unexmacosx.c (unexec_regions_sort_compare):
8952 (unexec_regions_merge): New functions. Sort and merge unexec
8953 regions before dumping them.
8954
8955 2003-07-22 Dave Love <fx@gnu.org>
8956
8957 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
8958
8959 2003-07-21 Stefan Monnier <monnier@cs.yale.edu>
8960
8961 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
8962 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
8963 MARKBIT as the gcmarkbit for strings.
8964
8965 2003-07-21 Richard M. Stallman <rms@gnu.org>
8966
8967 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
8968
8969 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
8970 (syms_of_fns): Corresponding change.
8971
8972 * alloc.c (syms_of_alloc): Doc fixes.
8973
8974 2003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
8975
8976 * s/netbsd.h: Use -Wl syntax.
8977
8978 2003-07-17 Richard M. Stallman <rms@gnu.org>
8979
8980 * xterm.c (xim_initialize): Redo 6/24 change.
8981
8982 2003-07-15 Stefan Monnier <monnier@cs.yale.edu>
8983
8984 * buffer.c (copy_overlays): Use EMACS_INT for positions.
8985 (Fswitch_to_buffer): Don't signal an error when switching to the same
8986 buffer in a dedicated window.
8987
8988 * alloc.c: Use bitmaps for cons, as was done for floats.
8989 (init_float, init_cons): Let the normal code allocate the first block.
8990 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
8991 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
8992 New macros.
8993 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
8994 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
8995 (live_cons_p): Check the pointer is not past the `conses' array.
8996 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
8997 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
8998 (survives_gc_p): Use CONS_MARKED_P and simplify.
8999 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
9000
9001 2003-07-13 Paul Eggert <eggert@twinsun.com>
9002
9003 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
9004 puts it into BSS instead, at least on Solaris 8 and 9.
9005 This is a valid optimization, and it may occur on other platforms,
9006 so Emacs should not assume that initializing a static variable to
9007 zero puts it into data.
9008 * alloc.c (pure, staticvec):
9009 Initialize these arrays to nonzero, so that they're not
9010 put into BSS by that optimization.
9011
9012 2003-07-13 Stefan Monnier <monnier@cs.yale.edu>
9013
9014 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
9015 (lisp_align_malloc): Use posix_memalign is available.
9016 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
9017 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
9018 for consistency. Update users.
9019
9020 2003-07-13 Richard M. Stallman <rms@gnu.org>
9021
9022 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
9023
9024 2003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
9025
9026 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
9027 and use the Gtk+ function gtk_window_icon_from_file if available.
9028
9029 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
9030 handle mask of bitmaps.
9031 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
9032 mask property.
9033 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
9034
9035 * xterm.h (xg_set_icon): New function.
9036
9037 2003-07-12 Paul Eggert <eggert@twinsun.com>
9038
9039 * unexelf.c (unexec): Consider a section to precede the .bss
9040 section if its addresses overlap that of .bss.
9041
9042 2003-07-12 Richard M. Stallman <rms@gnu.org>
9043
9044 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
9045
9046 * config.in (HAVE_CRTIN): Add #undef.
9047 (INLINE): Really inline only if OPTIMIZE is defined.
9048
9049 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
9050 END_FILES_1.
9051 (START_FILES_1, END_FILES_1): New macros (conditional).
9052 (LD_SWITCH_SYSTEM_TEMACS): Define.
9053
9054 * s/openbsd.h: Don't include bsd4-3.h.
9055 (TERMINFO): Define.
9056 (LIBS_TERMCAP): Define.
9057 (LD_SWITCH_SYSTEM): Define (two definitions).
9058
9059 * xfns.c: Include libpng/png.h instead of png.h.
9060
9061 2003-07-11 Andreas Schwab <schwab@suse.de>
9062
9063 * buffer.c (modify_overlay): Update prototype.
9064 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
9065 Likewise.
9066
9067 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
9068
9069 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
9070 (struct interval): Move to intervals.h.
9071 (struct Lisp_Marker): Use EMACS_INT for position info.
9072 (forward_point): Remove prototype of defunct function.
9073 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
9074 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
9075 (syms_of_textprop, set_text_properties): Remove prototypes that are
9076 already in intervals.h.
9077
9078 * intervals.h (struct interval): Move from lisp.h.
9079 Use EMACS_INT for position and size info.
9080
9081 * coding.c: Include intervals.h for Fset_text_properties.
9082
9083 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
9084 position and length information.
9085
9086 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
9087
9088 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
9089 position and length information.
9090
9091 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
9092
9093 Change overlays_after and overlays_before so the overlays themselves
9094 are linked into lists, rather than using cons cells. After all each
9095 Lisp_Misc already occupies 5 words, so we can add a `next' field to
9096 Lisp_Overlay for free and save up one cons cell per overlay (not
9097 to mention one indirection when traversing the list of overlay).
9098
9099 * lisp.h (struct Lisp_Overlay): New field `next'.
9100
9101 * buffer.h (struct buffer): Change overlays_before and overlays_after
9102 from Lisp lists of overlays to pointers to overlays.
9103
9104 * buffer.c (overlay_strings, recenter_overlay_lists):
9105 Fix typo in eassert in last commit.
9106 (unchain_overlay): New function.
9107 (add_overlay_mod_hooklist): Use AREF.
9108 (copy_overlays, reset_buffer, overlays_at, overlays_in)
9109 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
9110 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
9111 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
9112 (report_overlay_modification, evaporate_overlays, init_buffer_once):
9113 Adjust to new type of overlays_(before|after).
9114
9115 * alloc.c (mark_object): Mark the new `next' field of overlays.
9116 (mark_buffer): Manually mark the overlays_(after|before) fields.
9117
9118 * coding.c (run_pre_post_conversion_on_str):
9119 * editfns.c (overlays_around):
9120 * xdisp.c (load_overlay_strings):
9121 * fileio.c (Finsert_file_contents):
9122 * indent.c (current_column):
9123 * insdel.c (signal_before_change, signal_after_change):
9124 * intervals.c (set_point_both):
9125 * print.c (temp_output_buffer_setup): Use new type for
9126 overlays_(before|after).
9127
9128 2003-07-08 Stefan Monnier <monnier@cs.yale.edu>
9129
9130 * buffer.c (report_overlay_modification): Don't run hooks while
9131 traversing the list of overlays.
9132
9133 * buffer.h (struct buffer): Use an int for overlay_center.
9134 (overlays_at, evaporate_overlays, recenter_overlay_lists)
9135 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
9136
9137 * buffer.c (reset_buffer, recenter_overlay_lists)
9138 (adjust_overlays_for_insert, adjust_overlays_for_delete)
9139 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
9140 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
9141 (overlays_at, evaporate_overlays, recenter_overlay_lists)
9142 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
9143
9144 * xdisp.c (fast_find_position): Remove unused var.
9145
9146 * cmds.c (Qexpand_abbrev): New sym.
9147 (syms_of_cmds): Initialize it.
9148 (internal_self_insert): Use it to call expand-abbrev.
9149
9150 2003-07-09 Kim F. Storm <storm@cua.dk>
9151
9152 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
9153 was configured with --without-xim.
9154 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
9155
9156 2003-07-07 Richard M. Stallman <rms@gnu.org>
9157
9158 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
9159
9160 * alloc.c (Fgarbage_collect): Doc fix.
9161
9162 2003-07-07 Nozomu Ando <nand@mac.com>
9163
9164 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
9165
9166 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
9167
9168 * minibuf.c (read_minibuf): UNGCPRO before returning.
9169 (Ftry_completion, Fall_completions): Doc fix.
9170
9171 * alloc.c (live_float_p): Check that p is not past the `floats' array,
9172 now that `floats' is not the last element of the struct any more.
9173
9174 2003-07-06 Jason Rumney <jasonr@gnu.org>
9175
9176 * w32term.h (ClipboardSequence_Proc): New type.
9177
9178 * w32fns.c (clipboard_sequence_fn): New variable.
9179 (globals_of_w32fns): Initialize it.
9180
9181 * w32select.c (last_clipboard_sequence_number): New variable.
9182 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
9183 number if possible.
9184
9185 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
9186
9187 * m/amdx86-64.h (MARKBIT):
9188 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
9189 MARKBIT and ARRAY_MARK_FLAG any more.
9190
9191 * m/hp800.h (XSETMARKBIT):
9192 * m/sr2k.h (XSETMARKBIT):
9193 * lisp.h (XSETMARKBIT): Remove unused macro.
9194
9195 * lisp.h (mark_object): Change prototype.
9196
9197 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
9198 (last_marked): Change accordingly.
9199 (mark_interval, mark_maybe_object, mark_maybe_pointer)
9200 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
9201 (mark_buffer): Update calls to mark_object.
9202
9203 * bytecode.c (mark_byte_stack):
9204 * fns.c (sweep_weak_table):
9205 * keyboard.c (mark_kboards): Update calls to mark_object.
9206
9207 2003-07-06 Jason Rumney <jasonr@gnu.org>
9208
9209 * alloc.c (struct ablock): Only include padding when there is some.
9210
9211 2003-07-04 Stefan Monnier <monnier@cs.yale.edu>
9212
9213 * alloc.c (ALIGN): Add casts to simplify usage.
9214 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
9215 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
9216 (struct ablock, struct ablocks): New types.
9217 (free_ablock): New global var.
9218 (lisp_align_malloc, lisp_align_free): New functions.
9219 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
9220 (struct float_block): Reorder and add gcmarkbits.
9221 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
9222 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
9223 (init_float, make_float): Use lisp_align_malloc.
9224 (free_float, live_float_p): Don't use `type' any more.
9225 (make_float): Use FLOAT_UNMARK to access to mark bit.
9226 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
9227 Use FLOAT_MARKED_P to access the mark bit.
9228 (pure_alloc): Simplify use of ALIGN.
9229 (mark_object): Use FLOAT_MARK to access the mark bit.
9230 (gc_sweep): Use new macros to access the float's mark bit.
9231 (init_alloc_once): Init free_ablock.
9232
9233 * lisp.h (struct Lisp_Float): Remove unused field `type'.
9234
9235 2003-06-27 Stefan Monnier <monnier@cs.yale.edu>
9236
9237 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
9238 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
9239 (allocate_buffer): Move.
9240 (string_bytes): Don't mask markbit of `size_byte'.
9241 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
9242 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
9243 Use the `size' field of buffers (rather than the `name' field) for
9244 the mark bit, as is done for all other vectorlike objects.
9245 Use the new macros to access the mark bit of vectorlike objects.
9246
9247 2003-06-26 Richard M. Stallman <rms@gnu.org>
9248
9249 * puresize.h (BASE_PURESIZE): Increment base size.
9250
9251 * xdisp.c (fast_find_position): Enable Gerd's new definition.
9252
9253 * xterm.c (xim_initialize): Undo previous change.
9254
9255 2003-06-26 Stefan Monnier <monnier@cs.yale.edu>
9256
9257 * alloc.c (survives_gc_p): Simplify.
9258
9259 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
9260
9261 * window.c (Fset_window_dedicated_p): Simplify.
9262 (display_buffer_1): Don't raise the win from which minibuf was entered.
9263 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
9264 (Fminibuffer_selected_window): Simplify.
9265
9266 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
9267
9268 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
9269 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
9270
9271 * insdel.c (check_markers, adjust_markers_for_delete)
9272 (adjust_markers_for_insert, adjust_markers_for_replace)
9273 (prepare_to_modify_buffer, RESTORE_VALUE):
9274 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
9275 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
9276 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
9277 * alloc.c (Fmake_marker, free_marker, gc_sweep):
9278 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
9279 * editfns.c (save_excursion_restore, transpose_markers):
9280 * window.c (delete_window):
9281 * xdisp.c (message_dolog): Update for new types.
9282
9283 2003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9284
9285 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
9286 (realize_default_face): Use default_face_done_p for the force_p
9287 argument to set_lface_from_font_name. Set default_face_done_p to one.
9288
9289 * frame.c (make_frame): Initialize default_face_done_p.
9290
9291 * frame.h (struct frame): Add default_face_done_p.
9292
9293 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
9294 will be defined.
9295
9296 2003-06-25 Stefan Monnier <monnier@cs.yale.edu>
9297
9298 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
9299 Initialize the new field `gcmarkbit'.
9300 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
9301 (mark_interval_tree): Don't mark the tree separately from the nodes.
9302 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
9303 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
9304 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
9305
9306 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
9307 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
9308 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
9309 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
9310 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
9311
9312 2003-06-24 Dave Love <fx@gnu.org>
9313
9314 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
9315
9316 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
9317 from gnulib.
9318
9319 2003-06-21 Richard M. Stallman <rms@gnu.org>
9320
9321 * fileio.c (Fwrite_region): Alternate messages
9322 for append and partial write.
9323
9324 * keyboard.c (read_key_sequence): When converting upcase fn key to
9325 downcase, update fkey and keytran so `backspace' gets translated.
9326
9327 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
9328
9329 * process.c (wait_reading_process_input): Don't signal SIGIO
9330 in batch mode.
9331
9332 2003-06-17 Kenichi Handa <handa@m17n.org>
9333
9334 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
9335 composite.h.
9336
9337 * xselect.c: Don't include charset.h, coding.h, composite.h.
9338 (Qforeign_selection): New variable.
9339 (syms_of_xselect): Intern and static it.
9340 (selection_data_to_lisp_data): Return a unibyte string made from
9341 data with `foreign-selection' text property.
9342
9343 2003-06-15 Stefan Monnier <monnier@cs.yale.edu>
9344
9345 * termhooks.h (EVENT_INIT): New macro.
9346
9347 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
9348
9349 * alloc.c (mark_kboards): Move to keyboard.c.
9350
9351 * keyboard.c (record_asynch_buffer_change, read_avail_input):
9352 * xterm.c (x_dispatch_event):
9353 * xmenu.c (find_and_call_menu_selection):
9354 * xdisp.c (handle_tool_bar_click):
9355 * w32menu.c (menubar_selection_callback):
9356 * sysdep.c (kbd_input_ast, read_input_waiting):
9357 * msdos.c (dos_rawgetc):
9358 * macterm.c (mac_check_for_quit_char):
9359 * macmenu.c (menubar_selection_callback):
9360 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
9361 data to kbd_buffer_store_event.
9362
9363 2003-06-15 Kim F. Storm <storm@cua.dk>
9364
9365 * xdisp.c (x_fix_overlapping_area): Always use area relative X
9366 to fix redisplay problem with tall characters (such as \e,AC\e(B).
9367
9368 2003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
9369
9370 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
9371
9372 2003-06-12 Kenichi Handa <handa@m17n.org>
9373
9374 * fileio.c (Fwrite_region): Save and restore restriction.
9375
9376 2003-06-12 Dave Love <fx@gnu.org>
9377
9378 * alloca.c (alloca): Declare arg as size_t.
9379
9380 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
9381 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
9382
9383 2003-06-11 Dave Love <fx@gnu.org>
9384
9385 * search.c (shrink_regexp_cache): Use xrealloc.
9386 (syms_of_search): Use xmalloc.
9387
9388 2003-06-10 Kim F. Storm <storm@cua.dk>
9389
9390 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
9391 Adjust phys_cursor.x to be relative to window box, rather than
9392 text area before checking -- to ensure cursor is redrawn when
9393 exposing window.
9394 Note: This also fixes a similar (older) bug if display margins
9395 are present.
9396
9397 2003-06-06 Kenichi Handa <handa@m17n.org>
9398
9399 * coding.c (encoding_buffer_size): If coding->type is
9400 coding_type_ccl, double magnification on CRLF encoding.
9401
9402 2003-06-06 Jason Rumney <jasonr@gnu.org>
9403
9404 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
9405 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
9406
9407 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
9408 Mac too.
9409
9410 2003-06-05 Dave Love <fx@gnu.org>
9411
9412 * strftime.c: Merge changes from gnulib.
9413
9414 * mktime.c (__mktime_internal): Merge changes from gnulib
9415 involving year 69 and dst2.
9416
9417 Changes to merge with gnulib version and be consistent with the
9418 autoconf test:
9419
9420 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
9421 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
9422 [HAVE_LOCALE_H]: Include locale.h.
9423 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
9424
9425 2003-06-05 Kim F. Storm <storm@cua.dk>
9426
9427 * window.c (coordinates_in_window): Convert X and Y to window
9428 relative coordinates inside mode-line and header-line parts.
9429 Convert X and Y to margin area relative coordinates inside left
9430 and right display margin parts.
9431
9432 2003-06-05 Jason Rumney <jasonr@gnu.org>
9433
9434 * w32fns.c (add_system_logical_colors_to_map): New function.
9435 (Fx_open_connection): Use it.
9436
9437 2003-06-04 Stefan Monnier <monnier@cs.yale.edu>
9438
9439 * process.c (allocate_pty): Revert part of the previous patch.
9440 (Faccept_process_output): Simplify.
9441
9442 2003-06-04 Jason Rumney <jasonr@gnu.org>
9443
9444 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
9445
9446 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
9447 (lispy_mouse_wheel_names): Remove.
9448 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
9449 Always define drag_and_drop_syms.
9450
9451 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
9452 WHEEL_EVENT events.
9453
9454 2003-06-03 Stefan Monnier <monnier@cs.yale.edu>
9455
9456 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
9457
9458 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
9459
9460 2003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9461
9462 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
9463 menu item label.
9464
9465 2003-06-03 Richard M. Stallman <rms@gnu.org>
9466
9467 * window.c (Fwindow_edges): Doc fix.
9468 (Fwindow_pixel_edges, Fwindow_inside_edges)
9469 (Fwindow_inside_pixel_edges): New functions.
9470 (syms_of_window): defsubr them.
9471
9472 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
9473 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
9474
9475 2003-06-02 Stefan Monnier <monnier@cs.yale.edu>
9476
9477 * dispnew.c (Fsit_for): Don't lie about the number of args.
9478
9479 2003-06-02 Dave Love <fx@gnu.org>
9480
9481 * callproc.c: Use HAVE_FCNTL_H, not USG5.
9482 (syms_of_callproc) <process-environment>: Doc fix.
9483
9484 * doc.c: Use HAVE_FCNTL_H, not USG5.
9485
9486 * xfaces.c (font_rescale_ratio): Fix for K&R.
9487
9488 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
9489
9490 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
9491
9492 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
9493
9494 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
9495 (xg_create_frame_widgets): Use ENCODE_UTF_8.
9496
9497 * xterm.c (Qutf_8): Move to coding.c
9498
9499 * xmenu.c (ENCODE_MENU_STRING): New.
9500 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
9501 Use it.
9502
9503 * coding.h (ENCODE_UTF_8): New.
9504 (Qutf_8): Declare.
9505
9506 * coding.c (Qutf_8): New.
9507 (syms_of_coding): Intern it.
9508
9509 * fns.c: Doc fixes.
9510
9511 2003-06-02 Kenichi Handa <handa@m17n.org>
9512
9513 * buffer.c (Fset_buffer_multibyte): Fix previous change.
9514
9515 2003-06-01 Stefan Monnier <monnier@cs.yale.edu>
9516
9517 * lread.c (openp): Make sure STR is a string.
9518
9519 2003-06-01 David Ponce <david@dponce.com>
9520
9521 * termhooks.h (enum event_kind): Add new WHEEL_EVENT event.
9522 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
9523
9524 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
9525 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
9526 (discard_mouse_events): Discard WHEEL_EVENT events too.
9527 (lispy_wheel_names, wheel_syms): New.
9528 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
9529 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX defined.
9530 (make_lispy_event): Add WHEEL_EVENT handler.
9531
9532 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
9533 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
9534 WHEEL_EVENT events.
9535
9536 2003-05-31 John Paul Wallington <jpw@gnu.org>
9537
9538 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
9539 timer are in lisp/emacs-lisp.
9540
9541 2003-05-31 Kenichi Handa <handa@m17n.org>
9542
9543 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
9544 region when a buffer is changed to unibyte.
9545
9546 * charset.h (VALID_LEADING_CODE_P): New macro.
9547 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
9548
9549 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
9550 is nonzero, accept multibyte form of eight-bit-control chars.
9551 (decode_composition_emacs_mule): Likewise.
9552 (decode_coding_emacs_mule): Likewise.
9553 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
9554 multibyte form of eight-bit-control chars.
9555
9556 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
9557 (Finsert_file_contents): If coding-system-for-read is bound to
9558 Qauto_save_coding, use the coding system emacs-mule with special
9559 setting for recovering a file.
9560 (choose_write_coding_system): On auto saving, use the coding
9561 system emacs-mule with special setting for auto saving.
9562 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
9563
9564 2003-05-30 Kenichi Handa <handa@m17n.org>
9565
9566 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
9567 properly before calling ccl_driver.
9568
9569 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
9570
9571 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is nonzero.
9572 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
9573 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
9574
9575 2003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
9576
9577 * xfaces.c (realize_default_face): Do not abort if lface is
9578 non-existent - reverts change from 2003-05-19.
9579
9580 2003-05-29 Kenichi Handa <handa@m17n.org>
9581
9582 * coding.c (decode_coding_iso2022): Pay attention to the byte
9583 sequence of CTEXT extended segment, and retain those bytes as is.
9584
9585 2003-05-28 Kenichi Handa <handa@m17n.org>
9586
9587 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjust for the name change
9588 of CODING_REPLACEMENT_CHARACTER.
9589 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
9590 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
9591 check this flag on encoding.
9592 (encode_coding_sjis_big5):
9593 Check CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
9594 (Fset_terminal_coding_system_internal):
9595 Set CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
9596 instead of setting CODING_FLAG_ISO_SAFE flag in terminal_coding.flags.
9597
9598 * coding.h (CODING_REPLACEMENT_CHARACTER): Rename from
9599 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
9600 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
9601
9602 2003-05-28 Richard M. Stallman <rms@gnu.org>
9603
9604 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
9605
9606 * eval.c (unbind_to): Move init of this_binding to separate statement.
9607
9608 2003-05-28 Kim F. Storm <storm@cua.dk>
9609
9610 * xdisp.c (expose_window): Fix error in calculation of
9611 window relative coordinates of area to redisplay.
9612
9613 2003-05-27 Jason Rumney <jasonr@gnu.org>
9614
9615 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
9616
9617 2003-05-27 David Ponce <david@dponce.com>
9618
9619 Handle W32 mouse wheel events as mouse click events, like in X.
9620
9621 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
9622 MOUSE_WHEEL_EVENT anymore.
9623
9624 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
9625 Scrolling down/up the mouse wheel is respectively mapped to mouse
9626 button 4 and 5.
9627 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
9628 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
9629 WM_MOUSEWHEEL events.
9630
9631 2003-05-27 Andreas Schwab <schwab@suse.de>
9632
9633 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
9634
9635 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
9636 partially visible line.
9637
9638 * alloc.c (Fgarbage_collect): Fix last change.
9639
9640 2003-05-26 John Paul Wallington <jpw@gnu.org>
9641
9642 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
9643
9644 2003-05-25 Stefan Monnier <monnier@cs.yale.edu>
9645
9646 * window.c (Fset_window_buffer): Add type of `keep_margins'.
9647 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
9648
9649 * window.h (window_box_text_cols): Declare.
9650
9651 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
9652 (x_draw_vertical_border): Remove unused var `f'.
9653
9654 * xfaces.c (build_scalable_font_name): Remove `unused var
9655 pixel_size' warning.
9656
9657 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
9658
9659 * unexelf.c (unexec): Remove `unused var n' warning.
9660
9661 * strftime.c (my_strftime_localtime_r): Remove `defined but
9662 unused' warning.
9663
9664 * process.c (allocate_pty): Remove `unused var stb' and
9665 `cp might be used uninitialized' warnings.
9666
9667 * dispnew.c (mode_line_string): Remove unused var `f'.
9668
9669 * coding.c (find_safe_codings): Remove unused var `i'.
9670
9671 * bytecode.c (Fbyte_code): Remove `unused val' warning.
9672
9673 * buffer.c (Fkill_buffer): Remove unused var `list'.
9674
9675 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
9676
9677 2003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9678
9679 * frame.c (make_frame): Condition want_fullscreen with
9680 HAVE_WINDOW_SYSTEM.
9681
9682 2003-05-25 Juanma Barranquero <lektu@terra.es>
9683
9684 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
9685 (Fwindow_scroll_bars): Fix typo in docstring.
9686
9687 2003-05-24 Kim F. Storm <storm@cua.dk>
9688
9689 The following changes serve several purposes:
9690
9691 1) Swap the position of fringes and display margins in windows, i.e.
9692 the fringes are now displayed between the margins and the text area
9693 (by default).
9694
9695 2) Allow fringe and scroll bar parameters to be set per-buffer and
9696 per-window (like display margins). Such settings are now stored
9697 in window configurations, preserved when frames are resized, and
9698 copied when windows are split vertically or horizontally.
9699 Several bugs related to display margins have been fixed.
9700
9701 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9702
9703 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
9704 rather than FRAME_WIDTH (FRAME_FONT (f)).
9705
9706 5) Introduce a consistent naming of variables, members and macros
9707 depending on whether their value is measured in pixels or in
9708 canonical columns/lines. Pixel dimensions are named *_width and
9709 *_height, while canonical columns/lines are named *_cols and
9710 *_lines. Pixel positions are named *_x and *_y, while column/line
9711 positions are named *_col and *_line.
9712
9713 6) Consolidate more of the X, W32, and MAC gui code by moving
9714 common data into struct frame, and generalize it for the non-gui
9715 case by using suitable defaults.
9716
9717 7) Cleanup and consolidate the macros controlling frame and window
9718 layout into frame.h and window.h, and generalize the use of the
9719 various window_box_* functions (enhanced to handle the new fringe
9720 position and the per-window fringe and scroll bar settings).
9721
9722 * frame.h (struct frame): Rename members height to text_lines,
9723 width to text_cols, window_height to total_lines, window_width to
9724 total_cols, new_height to new_text_lines, new_width to
9725 new_text_cols. All uses changed.
9726 (struct frame): New members which consolidate common members of
9727 x_output, w32_output, and mac_output structures: left_pos,
9728 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
9729 win_gravity, size_hint_flags, border_width, internal_border_width,
9730 line_height, fringe_cols, left_fringe_width, right_fringe_width,
9731 want_fullscreen. All uses changed.
9732 (struct frame): New member column_width contaning the canonical
9733 column width, analogue to line_height. All uses changed.
9734 (struct frame): Rename members scroll_bar_pixel_width to
9735 config_scroll_bar_width, and scroll_bar_cols to
9736 config_scroll_bar_cols. All uses changed.
9737 (struct frame): New member scroll_bar_actual_width which
9738 consolidates and renames the vertical_scroll_bar_extra member of
9739 x_output, w32_output, and mac_output structures. All uses changed.
9740 (FRAME_PIXEL_HEIGHT): Rename from PIXEL_HEIGHT and moved
9741 from x/w32/macterm.h files. All uses changed. Also change code
9742 which referred to f->output_data...->pixel_height.
9743 (FRAME_PIXEL_WIDTH): Rename from PIXEL_WIDTH and moved
9744 from x/w32/macterm.h files. All uses changed. Also change code
9745 which referred to f->output_data...->pixel_width.
9746 (FRAME_LINES): Rename from FRAME_HEIGHT. All uses changed.
9747 Also change code which referred to f->height.
9748 (FRAME_COLS): Rename from FRAME_WIDTH. All uses changed.
9749 Also change code which referred to f->width.
9750 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
9751 to update new_text_lines and new_text_cols members directly.
9752 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Rename from
9753 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
9754 (FRAME_CONFIG_SCROLL_BAR_COLS): Rename from
9755 FRAME_SCROLL_BAR_COLS. All uses changed.
9756 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
9757 Rename from FRAME_LEFT_SCROLL_BAR_WIDTH and
9758 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
9759 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
9760 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
9761 (FRAME_TOTAL_COLS): Rename from FRAME_WINDOW_WIDTH.
9762 (SET_FRAME_COLS): Rename from SET_FRAME_WIDTH.
9763 (FRAME_TOTAL_COLS_ARG): Rename from FRAME_WINDOW_WIDTH_ARG.
9764 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
9765 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
9766 (FRAME_LINE_HEIGHT): Rename from CANON_Y_UNIT.
9767 Unconditionally return line_height member (it now has proper value
9768 also for non-window frames).
9769 (FRAME_COLUMN_WIDTH): Rename from CANON_X_UNIT. Unconditionally
9770 return new column_width member (rather than the default font width).
9771 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
9772 (FRAME_RIGHT_FRINGE_WIDTH): Rename from FRAME_X_... and moved
9773 from x/w32/macterm.h files. Unconditionally return corresponding
9774 member of frame structure (they now have proper values also for
9775 non-window frames).
9776 (FRAME_TOTAL_FRINGE_WIDTH): Rename from FRAME_FRINGE_WIDTH.
9777 Calculate return value from left and right widths.
9778 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
9779 internal_border_width member (has proper value for non-window frame).
9780 (FRAME_PIXEL_X_FROM_CANON_X): Rename from PIXEL_X_FROM_CANON_X.
9781 (FRAME_PIXEL_Y_FROM_CANON_Y): Rename from PIXEL_Y_FROM_CANON_Y.
9782 (FRAME_CANON_X_FROM_PIXEL_X): Rename from CANON_X_FROM_PIXEL_X.
9783 (FRAME_CANON_Y_FROM_PIXEL_Y): Rename from CANON_Y_FROM_PIXEL_Y.
9784 (FRAME_LINE_TO_PIXEL_Y): Rename from CHAR_TO_PIXEL_ROW,
9785 consolidated from xterm.h, macterm.h, and w32term.h.
9786 (FRAME_COL_TO_PIXEL_X): Rename from CHAR_TO_PIXEL_COL,
9787 consolidated from xterm.h, macterm.h, and w32term.h.
9788 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rename from
9789 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
9790 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Rename from
9791 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
9792 (FRAME_PIXEL_Y_TO_LINE): Rename from PIXEL_TO_CHAR_ROW
9793 consolidated from x/mac/w32term.h.
9794 (FRAME_PIXEL_X_TO_COL): Rename from PIXEL_TO_CHAR_COL
9795 consolidated from x/mac/w32term.h.
9796 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Rename from
9797 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
9798 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Rename from
9799 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
9800
9801 * window.h (struct window): Rename members left to left_col,
9802 top to top_line, height to total_lines, width to total_cols,
9803 left_margin_width to left_margin_cols, right_margin_width to
9804 right_margin_cols, orig_height to orig_total_lines, orig_top to
9805 orig_top_line. All uses changed.
9806 (struct window): New members left_fringe_width, right_fringe_width,
9807 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
9808 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
9809 New macros primarily used to simplify other macros.
9810 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
9811 referred to XINT (w->width).
9812 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
9813 referred to XINT (w->height).
9814 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
9815 referred to XINT (w->width) * canon_x_unit.
9816 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
9817 referred to XINT (w->height) * canon_y_unit.
9818 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
9819 referred to XINT (w->left).
9820 (WINDOW_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_EDGE. Change
9821 all uses and code that referred to XINT (w->left) + XINT (w->width).
9822 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
9823 referred to XINT (w->top).
9824 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
9825 referred to XINT (w->top) + XINT (w->height).
9826 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
9827 referred to XINT (w->left) * canon_x_unit.
9828 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
9829 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
9830 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
9831 referred to XINT (w->top) * canon_y_unit.
9832 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
9833 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
9834 (WINDOW_LEFTMOST_P): New macro.
9835 (WINDOW_BOX_LEFT_EDGE_COL): Rename from WINDOW_LEFT_MARGIN.
9836 All uses changed.
9837 (WINDOW_BOX_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_MARGIN.
9838 All uses changed.
9839 (WINDOW_BOX_LEFT_EDGE_X): Rename from
9840 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
9841 Do not exclude left fringe width.
9842 (WINDOW_BOX_RIGHT_EDGE_X): Rename from
9843 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
9844 Do not exclude fringe widths.
9845 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
9846 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
9847 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
9848 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
9849 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
9850 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
9851 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
9852 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
9853 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
9854 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
9855 New macros. Change code which referenced corresponding
9856 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
9857 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
9858 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
9859 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
9860 allow per-window scroll-bar settings.
9861 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
9862 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
9863 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
9864 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
9865 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
9866 FRAME_SCROLL_BAR_WIDTH.
9867 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9868 (WINDOW_SCROLL_BAR_AREA_X): New macros.
9869 (WINDOW_HEADER_LINE_HEIGHT): Rename from
9870 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
9871 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Rename from
9872 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
9873 (WINDOW_BOX_TEXT_HEIGHT): Rename from
9874 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
9875 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
9876 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
9877 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Move here from dispextern.h.
9878 (WINDOW_LEFT_MARGIN_WIDTH): Rename from
9879 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
9880 (WINDOW_RIGHT_MARGIN_WIDTH): Rename from
9881 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
9882 (window_from_coordinates): Update prototype.
9883 (Fset_window_buffer): Update EXFUN.
9884 (set_window_buffer): Update prototype.
9885
9886 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9887 to window_left_col, window_top_y to window_top_line. All uses
9888 changed.
9889 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
9890 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
9891 internal_border_width is now set to 0 for non-window frames.
9892 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
9893 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
9894 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
9895 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
9896 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
9897 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
9898 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
9899 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
9900 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9901 Move to window.h and renamed [see window.h changes].
9902 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
9903 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9904 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
9905 Use WINDOW_TOTAL_LINES.
9906 (frame_update_line_height): Remove prototype.
9907
9908 * buffer.h (struct buffer): Rename members measured in columns:
9909 left_margin_width to left_margin_cols, right_margin_width to
9910 right_margin_cols. All uses changed.
9911 New members left_fringe_width, right_fringe_width,
9912 fringes_outside_margins for per-buffer fringe settings.
9913 New members scroll_bar_width and vertical_scroll_bar_type for
9914 per-buffer scroll bar settings.
9915
9916 * buffer.c (init_buffer_once): Set buffer_defaults and
9917 buffer_local_flags for new buffer-local variables
9918 left_fringe_width, right_fringe_width, fringes_outside_margins,
9919 scroll_bar_width, and vertical_scroll_bar_type.
9920 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
9921 default-* variables for them.
9922
9923 * dispnew.c: Make (many) trivial substitutions for renamed and
9924 new macros in dispextern.h, frame.h and window.h.
9925 (mode_line_string): No need to adjust width for mode lines, as it
9926 is already adjusted by the caller.
9927 (marginal_area_string): Handle fringes inside/outside margins.
9928
9929 * frame.c: Make (many) trivial substitutions for renamed and
9930 new macros in dispextern.h, frame.h and window.h.
9931 (make_frame): Initialize left_fringe_width, right_fringe_width,
9932 fringe_cols, scroll_bar_actual_width, border_width,
9933 internal_border_width, column_width, line_height, x_pixels_diff,
9934 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
9935 members with values suitable for a non-window frames.
9936
9937 * gtkutil.c: Make (many) trivial substitutions for renamed and
9938 new macros in dispextern.h, frame.h and window.h.
9939
9940 * indent.c: Make (few) trivial substitutions for renamed and
9941 new macros in dispextern.h, frame.h and window.h.
9942
9943 * keyboard.c: Make (many) trivial substitutions for renamed and
9944 new macros in dispextern.h, frame.h and window.h.
9945 (make_lispy_event): Use window positions returned from
9946 window_from_coordinates when constructing the lisp event for
9947 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
9948 (incorrect) values locally.
9949 (make_lispy_movement): Use window positions returned from
9950 window_from_coordinates when constructing the lisp event, rather
9951 than calculating (incorrect) values locally.
9952
9953 * scroll.c: Make (some) trivial substitutions for renamed and
9954 new macros in dispextern.h, frame.h and window.h.
9955
9956 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
9957 scroll-bars.
9958
9959 * sysdep.c: Make (few) trivial substitutions for renamed and
9960 new macros in dispextern.h, frame.h and window.h.
9961
9962 * term.c: Make (some) trivial substitutions for renamed and
9963 new macros in dispextern.h, frame.h and window.h.
9964
9965 * widget.c: Make (few) trivial substitutions for renamed and
9966 new macros in dispextern.h, frame.h and window.h.
9967
9968 * window.c: Make (many) trivial substitutions for renamed and
9969 new macros in dispextern.h, frame.h and window.h.
9970 (make_window): Initialize new members
9971 left_margin_cols, right_margin_cols, left_fringe_width,
9972 right_fringe_width, fringes_outside_margins, scroll_bar_width,
9973 and vertical_scroll_bar_type.
9974 (coordinates_in_window): Adapt to new fringe/margin positions
9975 and per-window fringes and scroll-bars.
9976 Fix bug related to incorrectly adjusting coordinates by
9977 frame's internal_border_width (the effect normally negible since
9978 the internal_border_width is typically 0 or 1 pixel, but very
9979 noticeable for an internal_border_width of e.g. 25 pixels).
9980 Upon successful return (other than ON_NOTHING), the coordinates
9981 are now always properly converted to window relative for the
9982 given display element.
9983 (window_from_coordinates): Add new parameters wx and wy to
9984 return the window relative x and y position in the returned
9985 window and part. A null arg means, don't return the position.
9986 All callers changed.
9987 (adjust_window_margins): New function which may reduce the width
9988 of the display margins if a window's text area is too small after
9989 resizing or splitting windows.
9990 (size_window): Fix bug that did not account for display margin
9991 widths when checking the minimum width of a window; use
9992 adjust_window_margins.
9993 (set_window_buffer): Call Fset_window_fringes and
9994 Fset_window_scroll_bars to setup per-window elements.
9995 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
9996 existing display margin, fringe widths, and scroll bar settings
9997 (e.g. after splitting a window or resizing the frame).
9998 All callers changed.
9999 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
10000 (Fsplit_window): Duplicate original window's display margin,
10001 fringe, and scroll-bar settings; then call Fset_window_buffer with
10002 KEEP_MARGINS non-nil. This fixes a bug which caused a split
10003 window to only preserve the display margins in one of the windows.
10004 When splitting horizontally, call adjust_window_margins on both
10005 windows to ensure that the text area of the new windows is non too
10006 narrow. This fixes a bug which could cause Emacs to trap if the
10007 width of the split window was less than the width of the display
10008 margins.
10009 (window_box_text_cols): Rename from window_internal_width.
10010 All uses changed. Adapt to per-window fringes and scroll bars.
10011 Fix bug that caused vertical separator to be subtracted also on
10012 window frames. Fix another bug that did not reduce the returned
10013 value by the columns used for display margins.
10014 (window_scroll_line_based): Fix bug related to scrolling too much
10015 when display margins are present (implicitly fixed by the fix to
10016 window_box_text_cols).
10017 (scroll_left, scroll_right): Fix bug related to scrolling too far
10018 by default when display margins are present (implicitly fixed by
10019 the fix to window_box_text_cols).
10020 (struct saved_window): Rename members left to left_col, top to
10021 top_line, width to total_cols, height to total_lines, orig_top to
10022 orig_top_line, orig_height to orig_total_lines. All uses changed.
10023 New members left_margin_cols, right_margin_cols,
10024 left_fringe_width, right_fringe_width, fringes_outside_margins,
10025 scroll_bar_width, and vertical_scroll_bar_type for saving
10026 per-window display elements.
10027 (Fset_window_configuration): Restore display margins, fringes,
10028 and scroll bar settings. This fixes a bug which caused display
10029 margins to be discarded when saving and restoring a window
10030 configuration.
10031 (save_window_save): Save display margins, fringes, and scroll bar
10032 settings. This fixes a bug which caused display margins to be
10033 discarded when saving and restoring a window configuration.
10034 (Fset_window_margins): Do nothing if display margins are not
10035 really changed. Otherwise, call adjust_window_margins to ensure
10036 the text area doesn't get too narrow. This fixes a bug which
10037 could cause Emacs to trap if setting display margins wider than
10038 the width of the window.
10039 (Fset_window_fringes): New defun to allow user to specifically set
10040 this window's fringe widths and position vs. display margins.
10041 (Fwindow_fringes): New defun to return window's actual fringe settings.
10042 (Fset_window_scroll_bars): New defun to allow user to specifically
10043 set this window's scroll bar width and position.
10044 (Fwindow_scroll_bars): New defun to return window's actual scroll
10045 bar settings.
10046 (compare_window_configurations): Also compare display margins,
10047 fringes, and scroll bar settings.
10048 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
10049
10050 * xdisp.c: Make (many) trivial substitutions for renamed and
10051 new macros in dispextern.h, frame.h and window.h.
10052 (window_box_width): Adapt to per-window fringes and scroll bars,
10053 and new fringe vs. display margin position. Note that returned
10054 value is no longer guaranteed to be a whole multiple of the frame
10055 column width, since per-window fringes may now be any width.
10056 (window_box_left_offset): New function like window_box_left, but
10057 value is relative to left border of window (rather than frame).
10058 (window_box_right_offset): New function like window_box_right,
10059 but value is relative to left border of window.
10060 (window_box_left): Adapt to per-window fringes and scroll bars,
10061 and new fringe vs. display margin position. Simplify by using
10062 WINDOW_LEFT_EDGE_X and window_box_left_offset.
10063 (window_box): Allow null args for unnecessary return values;
10064 change/simplify relevant callers.
10065 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
10066 and new fringe vs. display margin position.
10067 Use window_box_left_offset and window_box_right_offset
10068 (get_glyph_string_clip_rect): Adapt to per-window fringes and
10069 scroll bars, and new fringe vs. display margin position.
10070 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
10071 (draw_fringe_bitmap): Rework to handle per-window fringes and new
10072 fringe vs. display margin position.
10073 (hscroll_window_tree): Use window_box_width instead of window_box.
10074 (redisplay_window): Adapt to per-window scroll bars.
10075 (draw_glyphs): Rework to handle per-window fringes and scroll
10076 bars, and new fringe vs. display margin position.
10077 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
10078 (x_clear_end_of_line): Adapt to per-window fringes and scroll
10079 bars, and new fringe vs. display margin position. Fix bug which
10080 increased total width of full_width rows by width of scroll bars
10081 although window's total width already includes that.
10082 (x_fix_overlapping_area): Simplify using window_box_left_offset.
10083 (expose_area): Simplify using window_box_left_offset.
10084 (x_draw_vertical_border): Handle per-window scroll bar settings,
10085 mixing windows with left, right and no scroll bars.
10086
10087 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
10088 where it's used in x_list_fonts (for clarity).
10089 (frame_update_line_height): Remove unused function; functionality
10090 is now done directly when setting the default font in x_set_font.
10091
10092 * xfns.c: Make (many) trivial substitutions for renamed and
10093 new macros in dispextern.h, frame.h and window.h.
10094
10095 * xmenu.c: Make (some) trivial substitutions for renamed and
10096 new macros in dispextern.h, frame.h and window.h.
10097
10098 * xterm.h (struct x_output): Move members left_pos, top_pos,
10099 border_width, pixel_height, pixel_width, line_height,
10100 internal_border_width, vertical_scroll_bar_extra,
10101 left_fringe_width, right_fringe_width, fringe_cols,
10102 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
10103 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
10104 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
10105 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
10106 (PIXEL_WIDTH, PIXEL_HEIGHT)
10107 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
10108 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
10109 frame.h and renamed [see frame.h changes].
10110 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
10111 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
10112 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
10113 and renamed [see frame.h changes].
10114
10115 * xterm.c: Make (several) trivial substitutions for renamed and
10116 new macros in dispextern.h, frame.h and window.h.
10117 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
10118 (scroll_run): Adapt to new fringe position.
10119 (glyph_rect): Use window coordinates returned from
10120 window_from_coordinates rather than frame_to_window_pixel_xy.
10121 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
10122 scroll-bars.
10123 (handle_one_xevent): Simplify a USE_GTK conditional.
10124 (x_clip_to_row): Remove superfluous whole_line_p arg and code
10125 (fringes are now inside margins, i.e. always in the clipping area).
10126 All callers changed.
10127 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
10128 directly, then call compute_fringe_widths. Don't call
10129 frame_update_line_height.
10130
10131 * w32term.h (struct w32_output): Move members left_pos, top_pos,
10132 border_width, pixel_height, pixel_width, line_height,
10133 internal_border_width, vertical_scroll_bar_extra,
10134 left_fringe_width, right_fringe_width, fringe_cols,
10135 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
10136 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
10137 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
10138 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
10139 (PIXEL_WIDTH, PIXEL_HEIGHT)
10140 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
10141 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
10142 frame.h and renamed [see frame.h changes].
10143 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
10144 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
10145 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
10146 and renamed [see frame.h changes].
10147
10148 * w32term.c: Make (several) trivial substitutions for renamed and
10149 new macros in dispextern.h, frame.h and window.h.
10150 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
10151 (glyph_rect): Use window coordinates returned from
10152 window_from_coordinates rather than frame_to_window_pixel_xy.
10153 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
10154 scroll-bars.
10155 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
10156 (fringes are now inside margins, i.e. always in the clipping area).
10157 All callers changed.
10158 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
10159 directly, then call compute_fringe_widths. Don't call
10160 frame_update_line_height.
10161
10162 * w32console.c: Make (few) trivial substitutions for renamed and
10163 new macros in dispextern.h, frame.h and window.h.
10164
10165 * w32fns.c: Make (many) trivial substitutions for renamed and
10166 new macros in dispextern.h, frame.h and window.h.
10167
10168 * w32menu.c: Make (few) trivial substitutions for renamed and
10169 new macros in dispextern.h, frame.h and window.h.
10170
10171 * macterm.h (struct mac_output): Move members left_pos, top_pos,
10172 border_width, pixel_height, pixel_width, line_height,
10173 internal_border_width, vertical_scroll_bar_extra,
10174 left_fringe_width, right_fringe_width, fringe_cols,
10175 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
10176 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
10177 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
10178 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
10179 (PIXEL_WIDTH, PIXEL_HEIGHT)
10180 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
10181 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
10182 frame.h and renamed [see frame.h changes].
10183 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
10184 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
10185 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
10186 and renamed [see frame.h changes].
10187
10188 * macterm.c: Make (several) trivial substitutions for renamed and
10189 new macros in dispextern.h, frame.h and window.h.
10190 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
10191 (glyph_rect): Use window coordinates returned from
10192 window_from_coordinates rather than frame_to_window_pixel_xy.
10193 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
10194 scroll-bars.
10195 (x_clip_to_row): Remove superfluous whole_line_p arg and code
10196 (fringes are now inside margins, i.e. always in the clipping area).
10197 All callers changed.
10198 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
10199 directly, then call compute_fringe_widths. Don't call
10200 frame_update_line_height.
10201
10202 * macfns.c: Make (several) trivial substitutions for renamed and
10203 new macros in dispextern.h, frame.h and window.h.
10204 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
10205
10206 * macmenu.c: Make (few) trivial substitutions for renamed and
10207 new macros in dispextern.h, frame.h and window.h.
10208
10209 * msdos.h (struct x_output): Remove members left_pos, top_pos,
10210 and line_height, and use corresponding new members in struct
10211 frame. All uses changed.
10212 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
10213 superseeded by corresponding macros in frame.h.
10214
10215 * msdos.c: Make (several) trivial substitutions for renamed and
10216 new macros in dispextern.h, frame.h and window.h.
10217 (IT_note_mouse_highlight): Use updated window coordinates returned
10218 by window_from_coordinates, rather than adjusting them locally.
10219 (internal_terminal_init): No need to initialize line_height here;
10220 it now defaults to 1.
10221
10222 2003-05-24 Stefan Monnier <monnier@cs.yale.edu>
10223
10224 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
10225 dropping `down' events.
10226
10227 2003-05-24 Andreas Schwab <schwab@suse.de>
10228
10229 * coding.c (find_safe_codings): Fix last change.
10230
10231 2003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
10232
10233 * xfns.c (x_window): Fix typo from 2003-05-21 change.
10234
10235 2003-05-23 Stefan Monnier <monnier@cs.yale.edu>
10236
10237 * xdisp.c (display_mode_element): Increase max depth.
10238 Simplify the error handling code. Use a different error string
10239 for the case where we hit the depth limit.
10240
10241 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
10242
10243 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
10244
10245 2003-05-21 Stefan Monnier <monnier@cs.yale.edu>
10246
10247 * intervals.c (get_local_map): Don't get char-property of previous
10248 point any more: get_pos_property already does it and better.
10249
10250 2003-05-21 Dave Love <fx@gnu.org>
10251
10252 [Merged from unicode branch.]
10253
10254 * xfns.c (x_window, x_window): Use use_xim.
10255
10256 * xterm.c (use_xim): Initialize.
10257 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
10258 (x_term_init): Maybe set use_xim.
10259
10260 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
10261
10262 2003-05-21 Jason Rumney <jasonr@gnu.org>
10263
10264 * unexw32.c (_start): Remove _fmode initialization.
10265
10266 * emacs.c (main) [WINDOWSNT]: Move it here.
10267
10268 2003-05-20 Dave Love <fx@gnu.org>
10269
10270 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
10271
10272 2003-05-19 Richard M. Stallman <rms@gnu.org>
10273
10274 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
10275 as value for QCfont attribute.
10276 (realize_default_face): lface should already exist; crash if not.
10277 Specify 0 for FORCE_P when calling set_lface_from_font_name.
10278
10279 * frame.c (Fignore_event): Doc fix.
10280
10281 2003-05-19 Kenichi Handa <handa@m17n.org>
10282
10283 * coding.c (decode_coding_string): Handle post-read-conversion
10284 even if the coding doesn't require decoding.
10285
10286 2003-05-18 Richard M. Stallman <rms@gnu.org>
10287
10288 * callproc.c (Fcall_process_region): Doc fix.
10289
10290 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
10291
10292 * lread.c (Fload): Print a message if package is obsolete.
10293
10294 * window.c (Fselect_window): Add optional `norecord' arg.
10295 (select_window_1): Fold into Fselect_window.
10296 (select_window_norecord): New function.
10297 (temp_output_buffer_show): Use it. Preserve current buffer.
10298
10299 * window.h (Fselect_window): Update declaration.
10300
10301 * window.c (delete_window, Fother_window, Fset_window_configuration):
10302 * minibuf.c (read_minibuf):
10303 * macterm.c (x_new_focus_frame):
10304 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
10305 * callint.c (Fcall_interactively):
10306 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
10307
10308 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
10309
10310 2003-05-17 David Kastrup <dak@gnu.org>
10311
10312 * process.c (read_process_output): Back out change from 2003-03-09.
10313
10314 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
10315
10316 * editfns.c (get_pos_property): Don't assume that `object' = nil.
10317
10318 * textprop.c (text_property_stickiness): New arg `buffer'.
10319
10320 * intervals.h (text_property_stickiness): New arg `buffer'.
10321 (get_pos_property): Declare.
10322
10323 * intervals.c (get_local_map): Use get_pos_property, to obey
10324 stickiness and empty overlays.
10325 (create_root_interval, graft_intervals_into_buffer): Use BEG.
10326 (merge_properties, intervals_equal, merge_properties_sticky):
10327 Use XCAR, XCDR.
10328 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
10329
10330 2003-05-17 Richard M. Stallman <rms@gnu.org>
10331
10332 * minibuf.c (read_minibuf): If buffer is empty, record the default
10333 in the history.
10334 (Fminibuffer_complete_word): When deleting the overlap, take account
10335 of its real position.
10336
10337 * fns.c (map_char_table): Fix previous change.
10338
10339 * syntax.c (find_defun_start):
10340 When open_paren_in_column_0_is_defun_start,
10341 return beginning of buffer.
10342
10343 * lisp.h (map_char_table): Declare added arg.
10344
10345 * fns.c (map_char_table): New arg TABLE gets the master table.
10346 All calls changed.
10347 Process default and inheritance, resorting to Faref if necessary.
10348
10349 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
10350 (Faccessible_keymaps): Pass new arg to map_char_table.
10351
10352 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
10353
10354 * casetab.c (set_case_table): Pass new arg to map_char_table.
10355
10356 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
10357
10358 * lisp.h (specbinding_func): New typedef.
10359 (struct specbinding): Use specbinding_func, to put the `volatile'
10360 in the right place.
10361
10362 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
10363 to avoid GCC warning.
10364
10365 2003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
10366
10367 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
10368
10369 2003-05-15 Stefan Monnier <monnier@cs.yale.edu>
10370
10371 * keyboard.c (apply_modifiers): Don't fill the other cache.
10372
10373 2003-05-14 Stefan Monnier <monnier@cs.yale.edu>
10374
10375 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
10376
10377 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
10378 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
10379 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
10380 (Fset_window_configuration, Fcurrent_window_configuration)
10381 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
10382 (Fpos_visible_in_window_p, mark_window_cursors_off)
10383 (window_internal_height, window_internal_width, Frecenter)
10384 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
10385 (replace_buffer_in_all_windows, init_window_once, init_window)
10386 (syms_of_window, keys_of_window): Move from lisp.h.
10387 * lisp.h: Move window.c declarations to window.h.
10388
10389 * bytecode.c: Include window.h.
10390 * emacs.c: Include window.h.
10391
10392 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
10393 (keyremap): Add `parent' field.
10394 (keyremap_step): Use it. Remove `parent' argument.
10395 (read_key_sequence): Setup and use the new `parent' field.
10396
10397 2003-05-11 Stefan Monnier <monnier@cs.yale.edu>
10398
10399 * keyboard.c (adjust_point_for_property): Ensure termination.
10400
10401 2003-05-10 Stefan Monnier <monnier@cs.yale.edu>
10402
10403 * keyboard.c (follow_key): Remove dead variable `did_meta'.
10404 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
10405 duplicated handling of function-key-map and key-translation-map
10406 in read_key_sequence.
10407 (read_key_sequence): Use them.
10408
10409 * keyboard.c (adjust_point_for_property): Try harder to move point
10410 to the non-sticky end of an invisible property.
10411
10412 * xdisp.c (single_display_prop_intangible_p): Make `space' display
10413 property intangible as well.
10414
10415 2003-05-10 Andreas Schwab <schwab@suse.de>
10416
10417 * xmenu.c (single_menu_item): Change last parameter to void* to
10418 avoid warning.
10419
10420 2003-05-09 Richard M. Stallman <rms@gnu.org>
10421
10422 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
10423 Bind Qinhibit_modification_hooks to t so there will be no GC.
10424 Rename local `tem' to `save_deactivate_mark'.
10425
10426 * eval.c (specpdl_ptr): Declare volatile.
10427 (unbind_to): Copy the whole binding and decrement specpdl_ptr
10428 before doing the work of unbinding it.
10429
10430 * lisp.h (struct specbinding): Declare elements volatile.
10431 (specpdl_ptr): Declare volatile.
10432
10433 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
10434
10435 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
10436 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
10437
10438 2003-05-08 Dave Love <fx@gnu.org>
10439
10440 * coding.c (Vlast_coding_system_used): Doc fix.
10441
10442 2003-05-07 Jason Rumney <jasonr@gnu.org>
10443
10444 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
10445 when system does not support them.
10446
10447 2003-05-05 Stefan Monnier <monnier@cs.yale.edu>
10448
10449 * fileio.c (Qwrite_region_annotate_functions): New var.
10450 (build_annotations): Use it to process the global part of the hook.
10451 (syms_of_fileio): Init and staticpro it.
10452
10453 * keyboard.c (safe_run_hooks_error): Display a message instead of
10454 silently ignoring the error.
10455
10456 2003-05-03 Stefan Monnier <monnier@cs.yale.edu>
10457
10458 * keyboard.c (input_available_signal): Mark static.
10459 (menu_bar_items): Use map_keymap.
10460 (menu_bar_one_keymap): Remove.
10461 (menu_bar_item): Adjust arglist (for use in map_keymap).
10462 Properly hide a second binding when not both are keymaps.
10463
10464 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
10465 (single_keymap_panes): Use it and map_keymap.
10466 (single_menu_item): Use skp as well.
10467
10468 * keymap.h (map_keymap_function_t): New type.
10469 (map_keymap): Declare.
10470
10471 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
10472 (map_keymap_call, Fmap_keymap): New functions.
10473 (syms_of_keymap): Defsubr map-keymap.
10474
10475 2003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10476
10477 * gtkutil.c (create_dialog, make_widget_for_menu_item)
10478 (make_menu_item, create_menus, xg_update_menu_item): Don't call
10479 ..._with_mnemonic functions for menu items.
10480
10481 2003-05-01 Kenichi Handa <handa@m17n.org>
10482
10483 * coding.c (coding_system_accept_latin_extra_p): Delete this
10484 function.
10485 (find_safe_codings): Pay attention to
10486 the property tranlsation-table-for-encode of each codings.
10487 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
10488
10489 2003-05-01 Stefan Monnier <monnier@cs.yale.edu>
10490
10491 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
10492
10493 2003-04-30 Stefan Monnier <monnier@cs.yale.edu>
10494
10495 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
10496
10497 * lisp.h (CHECK): Wrap args in parenthesis.
10498 (specbind): Fix doc: symbol = Qnil is not supported any more.
10499
10500 * bytecode.c (Fbyte_code) <unwind-protect>:
10501 Use Fprogn rather than 0 and Qnil.
10502
10503 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
10504 `double', and `triple' modifiers as well.
10505
10506 2003-04-30 Richard M. Stallman <rms@gnu.org>
10507
10508 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
10509
10510 * alloc.c (abort_on_gc): New variable.
10511 (Fgarbage_collect): Abort if abort_on_gc is set.
10512
10513 * lisp.h (abort_on_gc): Add decl.
10514
10515 * eval.c (Fsignal): Clear abort_on_gc.
10516
10517 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
10518 Reinit FORMAT_START and END before second scan.
10519
10520 * xdisp.c (move_it_vertically_backward): Do the final big else
10521 even if nlines is 0.
10522
10523 * xdisp.c (redisplay_internal): Finish the per-frame loop
10524 even if redisplay is suspended by input.
10525
10526 2003-04-24 Andrew Choi <akochoi@shaw.ca>
10527
10528 * macterm.c (x_list_fonts): Return all fonts that match if
10529 maxnames = -1.
10530
10531 2003-04-25 Kenichi Handa <handa@m17n.org>
10532
10533 * syntax.c (skip_chars): Fix previous change.
10534
10535 2003-04-24 Kenichi Handa <handa@m17n.org>
10536
10537 * syntax.c (skip_chars): Make the code faster by using the common
10538 technique of *p, *stop, and *endp.
10539
10540 2003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10541
10542 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
10543 tool_bar_items so GTK tool bar expose callback does not access items
10544 being updated.
10545
10546 2003-04-19 Stefan Monnier <monnier@cs.yale.edu>
10547
10548 * eval.c (Fapply): Undo last change and add a comment about why.
10549
10550 2003-04-18 Miles Bader <miles@gnu.org>
10551
10552 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
10553 pickier PARSE_MULTIBYTE_SEQ.
10554
10555 2003-04-17 Stefan Monnier <monnier@cs.yale.edu>
10556
10557 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
10558 Use XCDR, XCAR, CONSP.
10559 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
10560 (Fapply): Remove unnecessary GCPRO.
10561
10562 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
10563
10564 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
10565
10566 * buffer.h: Don't hardcode BEG==1.
10567
10568 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
10569
10570 2003-04-16 Richard M. Stallman <rms@gnu.org>
10571
10572 * xdisp.c (try_window, try_window_reusing_current_matrix):
10573 When at end of window, set window_end_pos to Z-ZV.
10574
10575 * buffer.c (Foverlay_recenter): Doc fix.
10576
10577 2003-04-14 Stefan Monnier <monnier@cs.yale.edu>
10578
10579 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
10580
10581 2003-04-14 Andrew Choi <akochoi@shaw.ca>
10582
10583 * macterm.c (mac_check_for_quit_char): Don't check more often than
10584 once a second.
10585
10586 2003-04-11 Stefan Monnier <monnier@cs.yale.edu>
10587
10588 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
10589 specially, so that they can't hide an implicit switch-frame event.
10590 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
10591 (head_table): Use switch-frame as event_kind for select-window.
10592 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
10593
10594 * editfns.c (Fformat): Lisp_Object/int mixup.
10595 (format2): Remove unused var numargs.
10596
10597 2003-04-11 Kenichi Handa <handa@m17n.org>
10598
10599 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
10600 (Qafter_insert_file_set_coding): New variable.
10601 (syms_of_fileio): Initialize and staticpro it. Delete declaration
10602 for after-insert-file-adjust-coding-function.
10603 (Finsert_file_contents): Call Qafter_insert_file_set_coding
10604 instead of Vafter_insert_file_adjust_coding_function.
10605
10606 2003-04-11 Kenichi Handa <handa@m17n.org>
10607
10608 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
10609
10610 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
10611 string. Callers changed.
10612
10613 2003-04-10 Kenichi Handa <handa@m17n.org>
10614
10615 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
10616 (syms_of_fileio): Declare it as a lisp variable.
10617 (Finsert_file_contents):
10618 Call Vafter_insert_file_adjust_coding_function before calling
10619 decode-format.
10620
10621 2003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10622
10623 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
10624 get GtkAdjustment as widget now is a GtkRange.
10625
10626 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
10627 GtkRange to avoid memory leak.
10628
10629 2003-04-09 Kenichi Handa <handa@m17n.org>
10630
10631 * xfaces.c (Vface_font_rescale_alist): New variable.
10632 (struct font_name): New member rescale_ratio.
10633 (font_rescale_ratio): New function.
10634 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
10635 (better_font_p): On comparing point sized, pay attention to
10636 recale_ratio member of fonts.
10637 (build_scalable_font_name): Reflect font->rescale_ratio in the
10638 font name.
10639 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
10640
10641 * lread.c (read1): Before calling index, check if the 2nd
10642 arguemnt is in ASCII range.
10643
10644 2003-04-08 Richard M. Stallman <rms@gnu.org>
10645
10646 * fileio.c (Ffile_symlink_p): Doc fix.
10647
10648 * editfns.c (Fformat): Translate positions of text properties
10649 in the format string to apply them to the result.
10650
10651 * fileio.c (Finsert_file_contents): Doc fix.
10652 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
10653
10654 2003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
10655
10656 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
10657
10658 2003-04-08 Steven Tamm <steventamm@mac.com>
10659
10660 * mac.c (init_mac_osx_environment): Switch libexec and bin so
10661 that self-contained application finds libexec files.
10662
10663 2003-04-08 Kenichi Handa <handa@m17n.org>
10664
10665 * coding.c (code_convert_region_unwind):
10666 Set Vlast_coding_system_used to the argument.
10667 (code_convert_region): If post-read-conversion function changed
10668 the value of last-coding-sytem, keep the new value in
10669 coding->symbol so that it won't be overridden.
10670 (run_pre_post_conversion_on_str): Likewise.
10671 (coding_system_accept_latin_extra_p): New function.
10672 (find_safe_codings): Pay attention to characters registered in
10673 latin-extra-code-table.
10674
10675 2003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
10676
10677 * Makefile.in (md5.o): Add missing dependency info.
10678
10679 2003-04-06 Richard M. Stallman <rms@gnu.org>
10680
10681 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
10682
10683 * marker.c (verify_bytepos): New function.
10684
10685 * intervals.c (set_intervals_multibyte_1): When becoming
10686 multibyte, adjust right and left child sizes to a whole set of
10687 characters. If an interval gets zero total-length, delete it.
10688 If an interval consists of just its children, delete one of them.
10689
10690 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
10691 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
10692
10693 * alloc.c (VALIDATE_LISP_STORAGE): Macro deleted.
10694 All calls deleted.
10695 (lisp_malloc): Do the work here directly.
10696
10697 2003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
10698
10699 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
10700 char tables.
10701
10702 2003-04-04 Kenichi Handa <handa@m17n.org>
10703
10704 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
10705 destructively change "%S" to "%s".
10706
10707 2003-04-03 Miles Bader <miles@gnu.org>
10708
10709 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
10710 always set.
10711
10712 2003-04-01 Dave Love <fx@gnu.org>
10713
10714 * xfns.c (xpm_lookup_color): Grok "opaque".
10715
10716 2003-03-31 Andrew Choi <akochoi@shaw.ca>
10717
10718 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
10719 parent window ID.
10720
10721 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
10722
10723 * macterm.h (struct mac_output): Define x_pixels_diff and
10724 y_pixels_diff.
10725
10726 2003-03-31 Juanma Barranquero <lektu@terra.es>
10727
10728 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
10729 blockinput.h and files included from it.
10730
10731 2003-03-31 Kim F. Storm <storm@cua.dk>
10732
10733 The following changes consolidates the common code related to
10734 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
10735 files into frame.c.
10736
10737 * frame.c: Include blockinput.h.
10738 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
10739 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
10740 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
10741 related vars here.
10742 (struct frame_parm_table, frame_parms): New table for describing
10743 frame parameters and their associated Q-variable.
10744 The order of the parameters corresponds to the sequence of the
10745 frame_parm_handlers table in redisplay_interface.
10746 (x_fullscreen_move, x_set_frame_parameters)
10747 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
10748 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
10749 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
10750 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
10751 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
10752 Generic functions for processing of frame parameters.
10753 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
10754 (display_x_get_resource, x_get_resource_string): Functions for
10755 generic access to X resources.
10756 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
10757 (x_default_parameter, Fx_parse_geometry): Functions for generic
10758 access to frame parameters.
10759 (x_figure_window_size): Generic calculation of frame size.
10760 Fixed to add space needed for tool bar. Also setup size_hint_flags.
10761 (syms_of_frame): Intern and staticpro frame parameter variables.
10762 Defvar_lisp Vx_resource_class and Vx_resource_name here.
10763 Defsubr Sx_get_resource and Sx_parse_geometry.
10764
10765 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
10766 parameter related vars defined in frame.c.
10767 (EMACS_CLASS): Define here.
10768 (enum FULLSCREEN_*): Define here.
10769 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
10770 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
10771 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
10772 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
10773 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
10774 (x_set_visibility, x_set_autoraise, x_set_autolower)
10775 (x_set_unsplittable, x_set_vertical_scroll_bars)
10776 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
10777 (x_figure_window_size): Add prototypes.
10778
10779 * dispextern.h (frame_parm_handler): New typedef.
10780 (struct redisplay_interface): New member frame_parm_handlers.
10781 (enum resource_types): Move declaration here.
10782 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
10783 (x_default_parameter): Add prototypes.
10784
10785 * window.c: Remove extern decl for frame parameter vars.
10786 (change_window_heights): New generic function;
10787 replaces x_change_window_heights. All users changed.
10788
10789 * window.h (change_window_heights): Add prototype.
10790
10791 * xfaces.c: Remove extern decl for frame parameter vars.
10792
10793 * xterm.h (EMACS_CLASS): Remove. Use generic define.
10794 (struct w32_display_info): Fix type of xrdb member.
10795 (enum FULLSCREEN_*): Remove.
10796 Remove prototypes for generic functions (in frame.h).
10797
10798 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
10799 parameters now defined in frame.h and frame.c.
10800 (Vx_resource_name): Remove. Use generic var.
10801 (enum x_frame_parms): Remove (bogus, unused enum).
10802 (check_x_display_info): Make non-static (for frame.c).
10803 (struct x_frame_parm_table, x_frame_parms): Remove.
10804 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
10805 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
10806 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
10807 (x_change_window_heights, x_set_autoraise, x_set_autolower)
10808 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
10809 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
10810 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
10811 Remove. Use generic functions instead.
10812 (enum resource_types): Remove.
10813 (x_set_scroll_bar_default_width): New global function (for frame.c).
10814 (Fx_create_frame): Depend on x_figure_window_size to add space for
10815 toolbar and setup size_hint_flags.
10816 (x_frame_parm_handlers): New table for redisplay_interface.
10817 (syms_of_xfns): Don't intern/staticpro removed vars.
10818
10819 * xterm.c: Remove unnecessary extern declarations.
10820 (x_fullscreen_adjust): Remove. Use generic instead.
10821 (x_redisplay_interface): Add x_frame_parm_handlers member.
10822
10823 * w32gui.h (XrmDatabase): New (dummy) typedef.
10824
10825 * w32term.h (EMACS_CLASS): Remove. Use generic define.
10826 (struct w32_display_info): Fix type of xrdb member.
10827 (enum FULLSCREEN_*): Remove.
10828 (x_fullscreen_adjust): Remove prototype.
10829
10830 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
10831 parameters now defined in frame.h and frame.c.
10832 (Vx_resource_name): Remove. Use generic var.
10833 (enum x_frame_parms): Remove (bogus, unused enum).
10834 (check_x_display_info): Make non-static (for frame.c).
10835 (struct x_frame_parm_table, x_frame_parms): Remove.
10836 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
10837 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
10838 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
10839 (x_change_window_heights, x_set_autoraise, x_set_autolower)
10840 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
10841 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
10842 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
10843 Remove. Use generic functions instead.
10844 (enum resource_types): Remove.
10845 (x_set_scroll_bar_default_width): New global function (for frame.c).
10846 (Fx_create_frame): Depend on x_figure_window_size to add space for
10847 toolbar and setup size_hint_flags.
10848 (w32_frame_parm_handlers): New table for redisplay_interface.
10849 (syms_of_w32fns): Don't intern/staticpro removed vars.
10850
10851 * w32term.c: Remove unnecessary extern declarations.
10852 (x_fullscreen_adjust): Remove. Use generic instead.
10853 (x_redisplay_interface): Add w32_frame_parm_handlers member.
10854
10855 * w32reg.c (x_get_string_resource): Use XrmDatabase.
10856
10857 * macgui.h (XrmDatabase): New (dummy) typedef.
10858
10859 * macterm.h (EMACS_CLASS): Remove.
10860 (struct mac_display_info): Add xrdb member.
10861 (struct mac_output): Add want_fullscreen member.
10862
10863 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
10864 parameters now defined in frame.h and frame.c.
10865 (Vx_resource_name): Remove. Use generic var.
10866 (check_x_display_info): Make non-static (for frame.c).
10867 (struct x_frame_parm_table, x_frame_parms): Remove.
10868 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
10869 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
10870 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
10871 (x_change_window_heights, x_set_autoraise, x_set_autolower)
10872 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
10873 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
10874 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
10875 Remove. Use generic functions instead.
10876 (enum resource_types): Remove.
10877 (x_set_scroll_bar_default_width): New global function (for frame.c).
10878 (mac_frame_parm_handlers): New table for redisplay_interface.
10879 (syms_of_macfns): Don't intern/staticpro removed vars.
10880
10881 * macterm.c: Remove unnecessary extern declarations.
10882 (x_redisplay_interface): Add mac_frame_parm_handlers member.
10883
10884 * Makefile.in (frame.o): Add dependency on blockinput.h and files
10885 included from it (atimer.h and systime.h).
10886
10887 2003-03-30 Andreas Schwab <schwab@suse.de>
10888
10889 * xdisp.c (x_insert_glyphs): Fix swapped width and height
10890 parameters for shift_glyphs_for_insert.
10891
10892 * macterm.c (x_redisplay_interface): Add missing entry for
10893 draw_vertical_window_border.
10894
10895 2003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
10896
10897 * fileio.c (Fexpand_file_name): In the no-handler case, after
10898 expanding, look again for a handler and invoke it. This is needed
10899 for filenames like "/foo/../user@host:/bar/../baz" -- the first
10900 expansion produces "/user@host:/bar/../baz" which needs to be
10901 expanded again for the finame result "/user@host:/baz".
10902
10903 2003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10904
10905 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
10906 of area to be redrawn for better performance.
10907
10908 2003-03-28 Stefan Monnier <monnier@cs.yale.edu>
10909
10910 * xterm.c (take_vertical_position_into_account): Remove.
10911 (xt_action_hook): Call set_vertical_scroll_bar if needed.
10912 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
10913 (xm_scroll_callback, x_create_toolkit_scroll_bar)
10914 (x_set_toolkit_scroll_bar_thumb): Simplify.
10915 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
10916 (XTread_socket): Remove unused var.
10917 (x_make_frame_invisible): Replace goto with else.
10918
10919 * xdisp.c (set_vertical_scroll_bar): New fun.
10920 (redisplay_window): Use it.
10921
10922 2003-03-26 Richard M. Stallman <rms@gnu.org>
10923
10924 * xdisp.c (update_tool_bar): Recompute tool bar if
10925 update_mode_lines is set. Set w->update_mode_line
10926 only if the tool bar contents actually change.
10927 (update_menu_bar): Undo previous change.
10928
10929 2003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10930
10931 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
10932 (xg_frame_set_char_size): Calculate scroll bar width before frame
10933 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
10934 (xg_separator_p): Check for all documented separator types.
10935 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
10936 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
10937
10938 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
10939 so tool bar gets updated.
10940
10941 2003-03-26 Stefan Monnier <monnier@cs.yale.edu>
10942
10943 * data.c (store_symval_forwarding): Re-instate part of the code
10944 that was deleted with too much enthusiasm.
10945
10946 2003-03-25 Stefan Monnier <monnier@cs.yale.edu>
10947
10948 * data.c (store_symval_forwarding): Delete special read-only
10949 hack for type == -1, since we now use ->constant instead.
10950 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
10951
10952 * buffer.c (overlays_in): Declare static.
10953 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
10954 `constant' field rather than the variable's `type' field.
10955
10956 2003-03-24 Andrew Choi <akochoi@shaw.ca>
10957
10958 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
10959
10960 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
10961
10962 * fns.c [MAC_OSX]: Do not redefine vector.
10963
10964 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
10965
10966 * macgui.h: Remove definition of No_Cursor.
10967
10968 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
10969
10970 * xdisp.c: Define No_Cursor.
10971 (x_write_glyphs, notice_overwritten_cursor)
10972 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
10973 (note_mouse_highlight): Remove Mac-specific code.
10974 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
10975
10976 2003-03-24 John Paul Wallington <jpw@gnu.org>
10977
10978 * xdisp.c (redisplay_window): If mini window's buffer is not
10979 empty, then redisplay it like other windows.
10980
10981 2003-03-23 Kim F. Storm <storm@cua.dk>
10982
10983 * w32term.c (w32_draw_window_cursor): Fix last change.
10984
10985 2003-03-23 Kenichi Handa <handa@m17n.org>
10986
10987 * alloc.c (make_string_from_bytes, make_specified_string):
10988 Add `const' for the arg CONTENTS.
10989
10990 * lisp.h (make_string_from_bytes, make_specified_string):
10991 Prototypes adjusted.
10992
10993 2003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10994
10995 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
10996
10997 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
10998 (XG_SB_RANGE): New define.
10999
11000 * gtkutil.c (xg_fixed_handle_expose): New function.
11001 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
11002 expose events.
11003 (xg_update_scrollbar_pos): Take two more arguments, left and width
11004 of scroll bar including borders.
11005 Clear left and right part outside scroll bar separately as some
11006 themes have bars that are not an even number of pixels.
11007 Don't set reallocate_redraws, don't call
11008 gdk_window_process_all_updates.
11009 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
11010 so no need to change it. Calculate size and value with XG_SB_RANGE.
11011
11012 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
11013 Pass left and width of scroll bar including borders to
11014 xg_update_scrollbar_pos.
11015
11016 2003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
11017
11018 * Makefile.in: Make sure space precedes end-of-line backslashes.
11019
11020 2003-03-22 Kim F. Storm <storm@cua.dk>
11021
11022 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
11023 Add generic versions here. Remove system specific versions
11024 defined elsewhere.
11025
11026 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
11027 Add prototypes.
11028
11029 * xterm.h (STORE_NATIVE_RECT): New macro.
11030
11031 2003-03-21 Kim F. Storm <storm@cua.dk>
11032
11033 * xdisp.c (get_glyph_string_clip_rect):
11034 Use FRAME_INTERNAL_BORDER_WIDTH.
11035
11036 * dispextern.h (struct redisplay_interface): Add active_p
11037 argument to draw_window_cursor member. All uses changed.
11038
11039 2003-03-21 Kim F. Storm <storm@cua.dk>
11040
11041 The following changes consolidate code related to writing and
11042 inserting glyphs, exposing frame, the tool bar, the mouse face,
11043 the output cursor, and help echo from xterm.c, w32term.c and
11044 macterm.c into xdisp.c. It also generalizes the use of the
11045 window_part enum instead of using numeric values throughout.
11046
11047 * xdisp.c: Consolidate gui-independent code here.
11048 Include keymap.h.
11049 (Qhelp_echo): Import.
11050 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
11051 (help_echo_string, help_echo_window, help_echo_object)
11052 (previous_help_echo_string, help_echo_pos): Declare here.
11053 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
11054 (estimate_mode_line_height): Define here. Handle windowing
11055 systems directly (without using estimate_mode_line_height_hook).
11056 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
11057 (update_window_cursor, update_cursor_in_window_tree)
11058 (fast_find_position, fast_find_string_pos)
11059 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
11060 (expose_area, expose_line, expose_overlaps, expose_window)
11061 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
11062 declared static as they are only used locally in xdisp.c.
11063 (draw_glyphs): Rename from x_draw_glyphs and make static.
11064 (tool_bar_item_info, notice_overwritten_cursor): Make static.
11065 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
11066 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
11067 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
11068 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
11069 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
11070 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
11071 (note_mouse_highlight, x_clear_window_mouse_face)
11072 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
11073 (x_intersect_rectangles): New generic functions for use by xdisp.c
11074 and GUI front-ends.
11075 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
11076 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
11077
11078 * dispextern.h (Display_Info): Generic typedef for *_display_info.
11079 (NativeRectangle): Generic typedef for rectangle type.
11080 (enum window_part): Move here from window.c.
11081 (struct redisplay_interface): New members flush_display_optional,
11082 define_frame_cursor, clear_frame_area, draw_window_cursor,
11083 draw_vertical_window_border, shift_glyphs_for_insert.
11084 Rename member clear_mouse_face to clear_window_mouse_face.
11085 (estimate_mode_line_height_hook): Remove hook.
11086 (auto_raise_tool_bar_buttons_p): Don't declare extern.
11087 (tool_bar_item_info): Remove prototype.
11088 (help_echo_string, help_echo_window, help_echo_object)
11089 (previous_help_echo_string, help_echo_pos)
11090 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
11091 (x_stretch_cursor_p, output_cursor): Declare extern.
11092 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
11093 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
11094 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
11095 (display_and_set_cursor, set_output_cursor, x_cursor_to)
11096 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
11097 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
11098 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
11099 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
11100 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
11101 Add prototypes.
11102 (mode_line_string, marginal_area_string): Fix prototypes.
11103
11104 * window.c (enum window_part): Move to dispextern.h.
11105 (coordinates_in_window): Use enum window_part member names
11106 instead of numbers to describe return value.
11107 (struct check_window_data): Change part member to window_part.
11108 (check_window_containing): Return window_part unaltered.
11109 (window_from_coordinates): Change part arg from int to enum
11110 window_part. Allow part arg to be null. All users changed.
11111
11112 * window.h (window_from_coordinates): Fix prototype.
11113
11114 * term.c (estimate_mode_line_height): Move to xdisp.c.
11115
11116 * keyboard.c (make_lispy_event): Use enum window_part.
11117
11118 * dispnew.c (mode_line_string, marginal_area_string): Use enum
11119 window_part instead of int in arg list. Users changed.
11120
11121 * xterm.h (No_Cursor): Declare as None for X.
11122 (struct mac_output): Replace member cross_cursor by hand_cursor.
11123
11124 * xterm.c: Remove consolidated defines and code.
11125 (BETWEEN): Remove unused macro.
11126 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
11127 (x_define_frame_cursor, x_clear_frame_area)
11128 (x_draw_window_cursor): New X-specific functions for RIF.
11129 (x_redisplay_interface): Add new members.
11130
11131 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
11132
11133 * w32term.h (struct w32_output): Remove cross_cursor member.
11134
11135 * w32term.c: Remove consolidated defines and code.
11136 (BETWEEN): Remove unused macro.
11137 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
11138 (w32_define_frame_cursor, w32_clear_frame_area)
11139 (w32_draw_window_cursor): New W32-specific functions for RIF.
11140 (w32_redisplay_interface): Add new members.
11141
11142 * w32gui.h (No_Cursor): Define as 0 for W32.
11143 (XRectangle): Add X compatible rectangle type.
11144 (NativeRectangle): Declare as RECT for W32.
11145 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
11146
11147 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
11148
11149 * w32console.c: Remove consolidated defines and code.
11150
11151 * msdos.h (Display_Info): Add generic typedef.
11152
11153 * msdos.c: Remove consolidated defines and code.
11154 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
11155
11156 * macterm.h (struct mac_output): Replace member cross_cursor by
11157 hand_cursor.
11158 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
11159
11160 * macterm.c: Remove consolidated defines and code.
11161 (BETWEEN): Remove unused macro.
11162 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
11163 (mac_define_frame_cursor, mac_clear_frame_area)
11164 (mac_draw_window_cursor): New Mac-specific functions for RIF.
11165 (x_redisplay_interface): Add new members.
11166
11167 * macgui.h (No_Cursor): Define as 0 for Mac.
11168 (XRectangle): Add X compatible rectangle type.
11169 (NativeRectangle): Declare as Rect for Mac.
11170 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
11171
11172 * macfns.c (x_set_mouse_color): Setup hand_cursor.
11173 (x_set_cursor_color): Use x_display_and_set_cursor.
11174
11175 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
11176 included from it. Add dependency on keymap.h.
11177
11178 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
11179
11180 2003-03-21 Kenichi Handa <handa@m17n.org>
11181
11182 * fileio.c (Fexpand_file_name): Fix previous change.
11183
11184 2003-03-19 Kenichi Handa <handa@m17n.org>
11185
11186 * fileio.c (Ffile_name_directory): Reconstruct file name by
11187 make_specified_string.
11188 (Ffile_name_nondirectory, Ffile_name_as_directory)
11189 (Fdirectory_file_name, Fexpand_file_name)
11190 (Fsubstitute_in_file_name): Likewise.
11191 (Fread_file_name): Compare decoded homedir with DIR and
11192 DEFAULT_FILENAME.
11193
11194 * alloc.c (make_specified_string): If NCHARS is negative, count
11195 the number of characters.
11196
11197 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11198
11199 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
11200 all widgets.
11201
11202 * gtkutil.h: Removed xg_ignore_next_thumb.
11203
11204 2003-03-18 Kenichi Handa <handa@m17n.org>
11205
11206 * coding.c (Vchar_coding_system_table): Remove this variable.
11207 (Vcoding_system_safe_chars): New variable.
11208 (intersection): Remove this function.
11209 (find_safe_codings): Don't use Vchar_coding_system_table, but try
11210 all codings in SAFE_CODINGS.
11211 (Ffind_coding_systems_region_internal): Adjust for the change of
11212 find_safe_codings. Get generic coding systems from
11213 Vcoding_system_safe_chars.
11214 (Fdefine_coding_system_internal): New function.
11215 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
11216 Initialize and staticpro Vcoding_system_safe_chars.
11217
11218 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11219
11220 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
11221 equal old values before updating.
11222
11223 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
11224
11225 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
11226
11227 2003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11228
11229 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
11230 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
11231 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
11232 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
11233 (xg_create_scroll_bar): Pass bar to button event callback.
11234 (xg_find_top_left_in_fixed): New function.
11235 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
11236 whole scroll bar area. Get old position with
11237 xg_find_top_left_in_fixed, calculate and only clear needed areas.
11238 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
11239 dragging is in progress. Calculate whole as for Motif.
11240 Remove code that saved last values. Call gtk_range functions to
11241 set scroll bar sizes.
11242
11243 * gtkutil.h: Removed xg_ignore_next_thumb.
11244
11245 2003-03-17 Juanma Barranquero <lektu@terra.es>
11246
11247 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
11248 and files included from it.
11249
11250 2003-03-18 Stefan Monnier <monnier@cs.yale.edu>
11251
11252 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
11253 multiple occurrences of the same keymap under different prefixes.
11254 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
11255
11256 2003-03-16 Jason Rumney <jasonr@gnu.org>
11257
11258 * w32gui.h: Use HDC for Display.
11259
11260 * w32term.c (w32_encode_char): Prevent double-byte chars from
11261 crashing Emacs.
11262
11263 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
11264 as binary.
11265
11266 2003-03-16 Juanma Barranquero <lektu@terra.es>
11267
11268 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
11269
11270 2003-03-16 Kim F. Storm <storm@cua.dk>
11271
11272 The following changes consolidate some of the gui-independent
11273 parts of the processing and drawing of "glyph strings" from
11274 xterm.c, w32term.c, and macterm.c into xdisp.c.
11275
11276 * dispextern.h (struct glyph): Reduce face_id member from 22 to
11277 21 bits (this reduces number of faces from 4M to 2M).
11278 Replace W32 specific w32_font_type member (2 bits) by generic
11279 font_type member (3 bits) for portability.
11280 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
11281 (enum draw_glyphs_face): Define here.
11282 (struct glyph_string): Define here. Merge W32 and X versions.
11283 (struct redisplay_interface): New members per_char_metric,
11284 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
11285 (VCENTER_BASELINE_OFFSET): Define here.
11286 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
11287 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
11288
11289 * xdisp.c: Consolidate gui-independent "glyph string" code here.
11290 (dump_glyph_string): Moved here.
11291 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
11292 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
11293 (fill_composite_glyph_string, fill_glyph_string)
11294 (fill_image_glyph_string, fill_stretch_glyph_string)
11295 (left_overwritten, left_overwriting, right_overwritten)
11296 (right_overwriting, get_char_face_and_encoding)
11297 (set_glyph_string_background_width, compute_overhangs_and_x)
11298 (append_glyph, append_composite_glyph, produce_image_glyph)
11299 (take_vertical_position_into_account, append_stretch_glyph)
11300 (produce_stretch_glyph): New generic functions (based on X version).
11301 Call platform specific functions through rif.
11302 (INIT_GLYPH_STRING): New macro, hides W32 details.
11303 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
11304 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
11305 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
11306 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
11307 (notice_overwritten_cursor):
11308 Generic functions exported to platform modules. Users changed.
11309
11310 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
11311 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
11312 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
11313 New macros for consolidated code.
11314
11315 * xterm.c: Remove consolidated defines and code.
11316 (x_per_char_metric, x_encode_char)
11317 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
11318 (x_redisplay_interface): Add new members.
11319
11320 * w32gui.h (Display): Add dummy typedef for consolidation.
11321 (XChar2b): Define alias for wchar_t for consolidation.
11322 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
11323
11324 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
11325 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
11326 New macros for consolidation.
11327
11328 * w32term.c: Remove consolidated defines and code.
11329 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
11330 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
11331 (w32_per_char_metric): Change font_type arg to int for RIF.
11332 (w32_encode_char): Return int according to RIF requirements.
11333 (w32_compute_glyph_string_overhangs): Adapt to RIF.
11334 (w32_get_glyph_overhangs): New function for RIF. Uses generic
11335 x_get_glyph_overhangs.
11336 (w32_redisplay_interface): Add new members.
11337
11338 * macgui.h (XChar2b): Move typedef here for consolidation.
11339 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
11340
11341 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
11342 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
11343 consolidation.
11344
11345 * macterm.c: Remove consolidated defines and code.
11346 (mac_per_char_metric): New function for RIF.
11347 (mac_encode_char): Adapt to new RIF requirements.
11348 (mac_compute_glyph_string_overhangs): Adapt for RIF.
11349 (x_redisplay_interface): Add new members.
11350
11351 2003-03-15 Stefan Monnier <monnier@cs.yale.edu>
11352
11353 * keymap.c (Vmenu_events): New var.
11354 (syms_of_keymap): Initialize it.
11355 (where_is_internal): Check more carefully what is a menu event.
11356
11357 2003-03-14 Richard M. Stallman <rms@gnu.org>
11358
11359 * lread.c (read1): After #!, exit loop on eof.
11360
11361 2003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11362
11363 * gtkutil.h: Add declaration for xg_frame_cleared.
11364
11365 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
11366
11367 * gtkutil.c (struct xg_last_sb_pos): New structure.
11368 (handle_fixed_child): New function.
11369 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
11370 and force a redraw on them.
11371 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
11372 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
11373 so we can avoid unneeded redraws.
11374 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
11375 and force a redraw on the scroll bar.
11376 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
11377 if xg_last_sb_pos shows the positions are up to date.
11378 (xg_frame_cleared): New function.
11379
11380 2003-03-13 Kenichi Handa <handa@m17n.org>
11381
11382 * coding.c (Fdetect_coding_region): Fix docstring.
11383 (Fdetect_coding_string): Fix docstring.
11384
11385 2003-03-13 Andreas Schwab <schwab@suse.de>
11386
11387 * gtkutil.c: Add prototype for create_menus.
11388
11389 * data.c (long_to_cons): Fix type of top.
11390
11391 * xselect.c (selection_data_to_lisp_data): Use int instead of
11392 long for an integer of size 4.
11393
11394 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
11395 (xg_tool_bar_help_callback): Likewise.
11396
11397 2003-03-12 Andreas Schwab <schwab@suse.de>
11398
11399 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
11400
11401 2003-03-12 Kim F. Storm <storm@cua.dk>
11402
11403 The following changes consolidate the fringe handling from
11404 xterm.c, w32term.c, and macterm.c into xdisp.c.
11405
11406 * xdisp.c: Consolidate fringe handling code here.
11407 (left_bits, right_bits, continued_bits, continuation_bits)
11408 (ov_bits, zv_bits): Define fringe bitmaps.
11409 (fringe_bitmaps): New array holding fringe bitmaps.
11410 (draw_fringe_bitmap): Draw a specific bitmap; call display
11411 specific drawing routine via rif->draw_fringe_bitmap.
11412 (draw_row_fringe_bitmaps): Generic replacement for
11413 x_draw_row_fringe_bitmaps; all callers changed.
11414 (compute_fringe_widths): Generic replacement for
11415 x_compute_fringe_widths; all callers changed.
11416
11417 * dispextern.h (enum fringe_bitmap_type): Define here.
11418 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
11419 (fringe_bitmaps): Declare extern.
11420 (struct redisplay_interface): New member draw_fringe_bitmap.
11421 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
11422
11423 * xterm.c: Remove generic fringe code.
11424 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
11425 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
11426
11427 * w32term.c: Remove generic fringe code.
11428 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
11429 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
11430
11431 * macterm.c: Remove generic fringe code.
11432 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
11433 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
11434
11435 2003-03-11 Stefan Monnier <monnier@cs.yale.edu>
11436
11437 * print.c (Fprin1_to_string): Return unibyte string if possible.
11438
11439 2003-03-09 David Kastrup <dak@gnu.org>
11440
11441 * process.c (read_process_output): We have allocated enough space
11442 for readmax and carryover, so actually use the alloted space.
11443
11444 2003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11445
11446 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
11447 toolkit scrollbar click.
11448
11449 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
11450 for USE_GTK.
11451 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
11452 also.
11453 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
11454 scrollbar and control is pressed, call x_scroll_bar_handle_click.
11455
11456 * gtkutil.h (xg_get_scroll_id_for_window): Declare.
11457
11458 * gtkutil.c (xg_get_scroll_id_for_window): New function.
11459 (xg_tool_bar_item_expose_callback): New function.
11460 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
11461 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
11462 on the tool bar widget.
11463 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
11464 to expose on the tool bar item widgets.
11465
11466 2003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11467
11468 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
11469 struct image* when deciding to update (struct image* may have been
11470 deleted from the image cache).
11471
11472 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
11473 the event isn't for a frame (i.e. for dialogs).
11474
11475 2003-03-07 Kenichi Handa <handa@m17n.org>
11476
11477 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
11478 composition components reaches the limit, terminate composing.
11479 (COMPOSITION_OK): New macro.
11480 (detect_coding_iso2022): Use it if an escape sequence for
11481 composition is found.
11482 (coding_restore_composition): Adjust the number of composition
11483 components if it is not sane.
11484
11485 2003-03-06 Juanma Barranquero <lektu@terra.es>
11486
11487 * w32term.h (struct w32_display_info): Add xrdb member to support
11488 passing resources via -xrm on Windows.
11489
11490 * w32term.c (w32_make_rdb): New function.
11491 (w32_term_init): Use it to initialize xrdb member of w32_display_info
11492 struct. Delete leftover code.
11493
11494 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
11495 for resources passed on the command line.
11496
11497 * w32reg.c (w32_get_rdb_resource): New function.
11498 (x_get_string_resource): Use it, so resources passed with -xrm
11499 supercede the ones in the registry.
11500
11501 2003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11502
11503 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
11504 instead of x_top_window_to_frame.
11505
11506 2003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11507
11508 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
11509 when restarting Emacs.
11510
11511 2003-03-03 Richard M. Stallman <rms@gnu.org>
11512
11513 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
11514 to run kill-buffer-query-functions.
11515 (Qkill_buffer_query_functions): New var.
11516 (syms_of_buffer): Init and staticpro it.
11517
11518 2003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11519
11520 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
11521
11522 2003-02-25 Kim F. Storm <storm@cua.dk>
11523
11524 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
11525 If centering point failed to make whole line visible and vscroll
11526 is non-zero, disable vscroll and try centering point again.
11527
11528 * lread.c (read1): Accept `single space' syntax like (? x).
11529
11530 2003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11531
11532 * keyboard.c (cancel_hourglass_unwind): Surround with
11533 #ifdef HAVE_X_WINDOWS
11534
11535 2003-02-25 Kenichi Handa <handa@m17n.org>
11536
11537 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
11538 process only when "subprocesses" is defined.
11539
11540 2003-02-24 Stefan Monnier <monnier@cs.yale.edu>
11541
11542 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
11543
11544 2003-02-24 Juanma Barranquero <lektu@terra.es>
11545
11546 * callint.c (fix_command): Declare as static void and move before
11547 Fcall_interactively.
11548
11549 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
11550 (syms_of_xdisp): Don't initialize Qwhen.
11551
11552 2003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11553
11554 * keyboard.c (cancel_hourglass_unwind): New function.
11555 (command_loop_1): Cancel hourglass with unwind-protect.
11556
11557 2003-02-23 Richard M. Stallman <rms@gnu.org>
11558
11559 * callint.c (fix_command): New subroutine, from Fcall_interactively.
11560 Detect (when ... (region-beginning)) etc.
11561 (Fcall_interactively): Call fix_command.
11562 (Qif, Qwhen): New variables.
11563 (syms_of_callint): Init and staticpro them.
11564
11565 * regex.c (print_partial_compiled_pattern): Output to stderr.
11566
11567 2003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
11568
11569 * dired.c (directory_files_internal): Don't expand directory.
11570 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
11571 instead. From Lars Hansen <larsh@math.ku.dk>.
11572
11573 2003-02-22 Stefan Monnier <monnier@cs.yale.edu>
11574
11575 * fns.c (string_to_multibyte): Remove unused var i.
11576 (Flanginfo): Fix int/Lisp_Object mixup.
11577 (void_call2): New fun.
11578 (Fmap_char_table): Use it in place of call2.
11579
11580 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
11581
11582 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
11583
11584 * keymap.c (copy_keymap_1): Make it static.
11585
11586 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
11587
11588 2003-02-22 David Ponce <david@dponce.com>
11589
11590 * lread.c (Fload): Don't check STRING_MULTIBYTE.
11591
11592 2003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11593
11594 * process.h: Removed subtty field from struct Lisp_Process.
11595
11596 * process.c (create_process): Remove setting of subtty.
11597 (emacs_get_tty_pgrp): New function.
11598 (Fprocess_running_child_p, process_send_signal):
11599 Call emacs_get_tty_pgrp instead of ioctl.
11600 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
11601
11602 2003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
11603
11604 * keymap.c (Fdefine_key): Doc fix.
11605
11606 2003-02-21 Juanma Barranquero <lektu@terra.es>
11607
11608 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
11609
11610 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
11611 POLLING_PROBLEM_IN_SELECT.
11612
11613 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
11614 Delete #undef of POLLING_PROBLEM_IN_SELECT.
11615
11616 * s/hpux10-20.h: New file.
11617
11618 * process.c (wait_reading_process_input):
11619 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
11620
11621 2003-02-20 Kenichi Handa <handa@m17n.org>
11622
11623 * fontset.c (check_fontset_name): If NAME is nil, return the
11624 default fontset.
11625 (override_font_info): New function.
11626 (Fset_fontset_font): Document that NAME nil means the default fontset.
11627 (Ffontset_info): If FONTSET is not the default fontset, merge
11628 FONTSET onto the copy of the default fontset, and work on that
11629 copy. Document that NAME nil means the default fontset.
11630 (Ffontset_font): Document that NAME nil means the default fontset.
11631
11632 * process.c (setup_process_coding_systems): If the process's
11633 in/out descriptor is -1, do nothing.
11634
11635 2003-02-19 Andreas Schwab <schwab@suse.de>
11636
11637 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
11638 Add prototypes.
11639
11640 2003-02-19 Kenichi Handa <handa@m17n.org>
11641
11642 * xfaces.c (try_alternative_families): Try all scalable fonts if
11643 Vscalable_fonts_allowed is not Qt.
11644
11645 2003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11646
11647 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
11648
11649 2003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11650
11651 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
11652 names.
11653
11654 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
11655 (sorted_font_list): Move allocation of struct font_name to
11656 x_face_list_fonts.
11657 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
11658 (Fx_list_fonts): Set maxnames to -1 to get all font names.
11659
11660 2003-02-18 Kim F. Storm <storm@cua.dk>
11661
11662 * lread.c (read1): Fix last change.
11663 "`" is not always special. Allow "?" after a character constant.
11664
11665 2003-02-18 Andrew Choi <akochoi@shaw.ca>
11666
11667 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
11668
11669 2003-02-18 Andreas Schwab <schwab@suse.de>
11670
11671 * window.c (window_scroll_pixel_based): Move outside a
11672 multi-glyph character before setting new window start.
11673
11674 * xdisp.c (in_display_vector_p): New function.
11675 * dispextern.h (in_display_vector_p): Declare.
11676
11677 2003-02-18 Kim F. Storm <storm@cua.dk>
11678
11679 * lread.c (read1): Fix and relax read syntax.
11680 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
11681 Only recognize "," after dotted-pair dot if inside backquote.
11682 Never include "`" or "," (inside backquote) in a symbol.
11683 Allow dotted-pair dot after a character constant.
11684 Allow "`" and "," (inside backquote) after a character constant.
11685
11686 2003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11687
11688 * gtkutil.c (xg_tool_bar_expose_callback): New function.
11689 (xg_create_tool_bar): Force style of tool bar to be horizontal with
11690 icons. Set name of tool bar to emacs-toolbar.
11691 (update_frame_tool_bar): Connect expose event to
11692 xg_tool_bar_expose_callback.
11693
11694 2003-02-17 Richard M. Stallman <rms@gnu.org>
11695
11696 * keyboard.c (this_command_key_count_reset): New variable.
11697 Initiatize to 0 where this_command_key_count is set.
11698 (read_char): Save and restore this_command_key_count_reset
11699 around input method code.
11700 (read_char): If this_command_key_count_reset, echo reread commands.
11701 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
11702
11703 2003-02-17 Kenichi Handa <handa@m17n.org>
11704
11705 * fns.c (string_to_multibyte): Always return a multibyte string.
11706
11707 2003-02-16 Jason Rumney <jasonr@gnu.org>
11708
11709 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
11710 Negative max_fonts parameter means list all.
11711
11712 2003-02-14 Dave Love <fx@gnu.org>
11713
11714 * fns.c (Flanginfo): Doc fix.
11715
11716 2003-02-13 Kim F. Storm <storm@cua.dk>
11717
11718 * lread.c (read_escape): Interpret \s as a SPACE character, except
11719 for \s-X in a character constant which still is the super modifier.
11720 (read1): Signal an `invalid read syntax' error if a character
11721 constant is immediately followed by a digit or symbol character.
11722
11723 * search.c (Fmatch_data): Doc fix. Explicitly state that
11724 match-data is undefined if last search failed.
11725
11726 * keymap.c (Fcommand_remapping): Rename from Fremap_command.
11727 All uses changed.
11728
11729 2003-02-12 Juanma Barranquero <lektu@terra.es>
11730
11731 * eval.c (Fdefmacro): Fix typo.
11732
11733 2003-02-12 Kim F. Storm <storm@cua.dk>
11734
11735 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
11736 macro is a string, convert meta modifiers in string when copying
11737 the string into a vector.
11738
11739 2003-02-11 Kim F. Storm <storm@cua.dk>
11740
11741 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
11742
11743 2003-02-11 Kenichi Handa <handa@m17n.org>
11744
11745 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
11746
11747 2003-02-10 Kim F. Storm <storm@cua.dk>
11748
11749 * process.c: Doc fixes.
11750 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
11751
11752 2003-02-10 Kenichi Handa <handa@m17n.org>
11753
11754 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
11755
11756 * process.c (QCfilter_multibyte): New variable.
11757 (setup_process_coding_systems): New function.
11758 (Fset_process_buffer, Fset_process_filter):
11759 Call setup_process_coding_systems.
11760 (Fstart_process): Initialize the member `filter_multibyte' of
11761 struct Lisp_Process.
11762 (create_process): Call setup_process_coding_systems.
11763 (Fmake_network_process): New keyward `:filter-multibyte'.
11764 Initialize the member `filter_multibyte' of struct Lisp_Process.
11765 Call setup_process_coding_systems.
11766 (server_accept_connection): Call setup_process_coding_systems.
11767 (read_process_output): If the process has a filter, decide the
11768 multibyteness of a string to given to the filter by
11769 `filter_multibyte' member of the process. If the process doesn't
11770 have a filter and the result of conversion is unibyte, use
11771 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
11772 multibyte form.
11773 (Fset_process_coding_system): Call setup_process_coding_systems.
11774 (Fset_process_filter_multibyte): New function.
11775 (Fprocess_filter_multibyte_p): New function.
11776 (syms_of_process): Intern and staticpro QCfilter_multibyte.
11777 Defsubr Sset_process_filter_multibyte and
11778 Sprocess_filter_multibyte_p.
11779
11780 * process.h (struct Lisp_Process): New member filter_multibyte.
11781
11782 * lisp.h (setup_process_coding_systems): Add prototype.
11783
11784 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
11785 process, update coding systems for the process.
11786
11787 2003-02-09 Kenichi Handa <handa@m17n.org>
11788
11789 * fns.c (string_to_multibyte): New function.
11790 (Fstring_to_multibyte): New function.
11791 (syms_of_fns): Defsubr it.
11792
11793 2003-02-08 Andreas Schwab <schwab@suse.de>
11794
11795 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
11796 instead of the substitution.
11797
11798 2003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11799
11800 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
11801
11802 * xmenu.c (menu_position_func): Adjust menu popup position so that
11803 the menu is fully visible.
11804
11805 2003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11806
11807 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
11808 (x_make_frame_invisible, x_wm_set_icon_position):
11809 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
11810
11811 * xfns.c (x_set_name, x_set_title): Ditto.
11812
11813 2003-02-04 Richard M. Stallman <rms@gnu.org>
11814
11815 * keyboard.c (echo_now): Update before_command_echo_length.
11816 (Freset_this_command_lengths): Reset this_command_key_count etc.
11817 immediately rather than arranging to do it later.
11818 (before_command_key_count_1, before_command_echo_length_1)
11819 (before_command_restore_flag): Vars deleted.
11820 (add_command_key): Don't handle before_command_restore_flag.
11821 (read_char, record_menu_key): Don't update before_command_key_count or
11822 before_command_echo_length.
11823 (read_char): Don't handle before_command_restore_flag.
11824
11825 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
11826 in direct-output clauses if it wouldn't be called in the ordinary case.
11827
11828 2003-02-04 Kim F. Storm <storm@cua.dk>
11829
11830 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
11831
11832 2003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11833
11834 * gtkutil.c (remove_from_container): Copying list is not needed.
11835 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
11836 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
11837 on list returned from gtk_container_get_children to avoid memory leak.
11838
11839 2003-02-01 Jason Rumney <jasonr@gnu.org>
11840
11841 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
11842 local malloc.
11843 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
11844 definitions in xpm.h.
11845 (init_xpm_functions): New function.
11846 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
11847 (init_external_image_libraries): Try to load libXpm.dll.
11848
11849 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
11850 timestamp.
11851
11852 2003-01-31 Dave Love <fx@gnu.org>
11853
11854 * syntax.c (Fskip_chars_forward)
11855 (open-paren-in-column-0-is-defun-start): Doc fix.
11856
11857 2003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
11858
11859 * fileio.c: Support // at start of name for Cygwin (just added proper
11860 preprocessor tests).
11861
11862 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
11863
11864 * Makefile.in: Use @EXEEXT@ for Cygwin.
11865
11866 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
11867
11868 * s/cygwin.h: Added for Cygwin port.
11869
11870 2003-01-31 Juanma Barranquero <lektu@terra.es>
11871
11872 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
11873 when including gif_lib.h.
11874 (init_gif_functions, init_tiff_functions): New functions.
11875 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
11876 Windows. Disable color table lookups. Call library functions
11877 through pointers determined at runtime.
11878 (init_external_image_libraries): Try to load libungif.dll and
11879 libtiff.dll.
11880
11881 2003-01-31 Kenichi Handa <handa@m17n.org>
11882
11883 * xdisp.c (SKIP_GLYPHS): New macro.
11884 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
11885
11886 2003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11887
11888 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
11889
11890 2003-01-30 Dave Love <fx@gnu.org>
11891
11892 * alloc.c (Vgc_elapsed, gcs_done): New variables.
11893 (Fgarbage_collect): Use them.
11894 (init_alloc, syms_of_alloc): Set them up.
11895
11896 2003-01-30 Juanma Barranquero <lektu@terra.es>
11897
11898 * w32fns.c (init_external_image_libraries): Add missing operator.
11899
11900 2003-01-29 Jason Rumney <jasonr@gnu.org>
11901
11902 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
11903 an alternative name for jpeg.dll.
11904
11905 2003-01-29 Kenichi Handa <handa@m17n.org>
11906
11907 * xdisp.c (set_cursor_from_row): Pay attention to string display
11908 properties.
11909
11910 2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
11911
11912 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
11913 <escape>.
11914 (keycode_to_xkeysym_table): Reformat and add more comments.
11915 (XTread_socket): Drop special case for backspace.
11916
11917 2003-01-28 Andrew Choi <akochoi@shaw.ca>
11918
11919 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
11920 values in old-style RGB specs.
11921
11922 2003-01-27 Juanma Barranquero <lektu@terra.es>
11923
11924 * w32fns.c (init_external_image_libraries): Try alternate names for the
11925 jpeg dll.
11926
11927 2003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11928
11929 * gtkutil.c (create_dialog, xg_separator_p)
11930 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
11931 before calling strcmp or strlen.
11932
11933 2003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11934
11935 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
11936 and handle image load failure.
11937
11938 2003-01-26 Jason Rumney <jasonr@gnu.org>
11939
11940 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
11941 New functions.
11942 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
11943 Disable color table lookups. Call jpeg library functions
11944 through pointers determined at runtime.
11945 (init_external_image_libraries): Try to load jpeg.dll.
11946
11947 2003-01-25 Richard M. Stallman <rms@gnu.org>
11948
11949 * lisp.h: Declare format2 instead of format1.
11950
11951 * fileio.c (barf_or_query_if_file_exists):
11952 Call format2 instead of format1.
11953
11954 * editfns.c (format2): New function, replaces format1
11955 but takes exactly two Lisp Objects as format args.
11956
11957 * buffer.c (Fkill_buffer): Call format2 instead of format1.
11958
11959 2003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11960
11961 * xterm.h: Change to return value of x_dispatch_event to int.
11962
11963 * xterm.c (x_filter_event): New function.
11964 (event_handler_gdk, XTread_socket): Call x_filter_event.
11965 (x_dispatch_event): Change to return value of finish.
11966 (event_handler_gdk): Use return value from x_dispatch_event.
11967
11968 * xfns.c (x_window): Call create_frame_xic for GTK version to
11969 initialize input methods.
11970
11971 * gtkutil.h: Add (void) prototypes.
11972
11973 * gtkutil.c (create_menus): Remove code that puts the help menu to
11974 the right.
11975
11976 2003-01-25 Jason Rumney <jasonr@gnu.org>
11977
11978 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
11979 [HAVE_PNG]: Sync with xfns.c version.
11980 (png_load): Adjust colors for Windows. Use Windows
11981 bitmaps. Disable color table lookups.
11982 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
11983 (init_png_functions): New function.
11984 (png_read_from_memory, png_load): Call png library functions
11985 through pointers determined at runtime.
11986 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
11987 (init_external_image_libraries): New function.
11988 (init_xfns): Call it.
11989
11990 2003-01-24 Andreas Schwab <schwab@suse.de>
11991
11992 * minibuf.c (Fminibuffer_message): Verify type of parameter.
11993
11994 2003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11995
11996 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
11997 of static initializer.
11998
11999 2003-01-24 Dave Love <fx@gnu.org>
12000
12001 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
12002 architectures.
12003
12004 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
12005 Use __alignof__.
12006
12007 2003-01-24 Kenichi Handa <handa@m17n.org>
12008
12009 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
12010 It it is nonzero, don't pretend that an invisible area doesn't exist.
12011 (command_loop_1): Call adjust_point_for_property with proper
12012 second arg.
12013
12014 2003-01-22 Jason Rumney <jasonr@gnu.org>
12015
12016 Sync changes with xterm.c and xfns.c.
12017
12018 * w32term.c (x_draw_glyph_string_foreground)
12019 (x_draw_composite_glyph_string_foreground): Implement overstriking.
12020
12021 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
12022 phys_cursor's hpos is overwritten. This is still not completely
12023 correct, as it doesn't really make sense to use hpos at all to
12024 get the cursor glyph (as that is relative to the width of the
12025 characters on the line, which may have changed during the update).
12026
12027 * w32term.c (notice_overwritten_cursor): Handle the special case
12028 of the cursor being in the first blank non-text line at the
12029 end of a window.
12030
12031 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
12032 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
12033 Compute from the x position returned by x_draw_glyphs.
12034
12035 (x_display_and_set_cursor): Don't set phys_cursor_width here,
12036 except for NO_CURSOR and system caret, to make phys_cursor_width
12037 contain what its name suggests.
12038 (notice_overwritten_cursor): Consider the cursor image erased if
12039 the output area intersects the cursor image in y-direction.
12040
12041 * w32term.c (note_mode_line_or_margin_highlight): Rename from
12042 note_mode_line_highlight and extend.
12043
12044 * w32term.c (last_window): New variable.
12045 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
12046 (note_mouse_movement): Remove reimplemented code in #if 0.
12047
12048 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
12049 not update_mode_lines, and always set it to 1.
12050
12051 2003-01-21 Jason Rumney <jasonr@gnu.org>
12052
12053 * w32fns.c (IDC_HAND): Define it if system headers don't.
12054
12055 2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
12056
12057 * w32term.h (struct w32_output): New member hand_cursor.
12058 (WM_EMACS_SETCURSOR): New message definition.
12059
12060 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
12061 function w32_define_cursor.
12062 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
12063 position, change member name output_data.x to output_data.w32 and
12064 add function w32_define_cursor.
12065 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
12066 and change member name output_data.x to output_data.w32.
12067 (w32_initialize_display_info):
12068 Setup dpyinfo->vertical_scroll_bar_cursor.
12069
12070 * w32fns.c (Vx_hand_shape): New variable.
12071 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
12072 WM_EMACS_SETCURSOR.
12073 (x-create-frame): Setup Cursor types.
12074
12075 2003-01-21 David Ponce <david@dponce.com>
12076
12077 * w32term.c (w32_encode_char): For DIM=1 charset, set
12078 ccl->reg[2] to -1 before calling ccl_driver.
12079 (Sync. with xterm.c x_encode_char change by Kenichi Handa
12080 <handa@m17n.org> on 2002-09-30.)
12081 (w32_draw_relief_rect): Declare all args.
12082 (w32_define_cursor): New.
12083
12084 * w32fns.c (w32_load_cursor): New function.
12085 (w32_init_class): Use it.
12086 (x_put_x_image): Declare all args.
12087
12088 2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
12089
12090 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
12091
12092 2003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12093
12094 * gtkutil.c: Must include stdio.h before termhooks.h
12095
12096 2003-01-21 Dave Love <fx@gnu.org>
12097
12098 * alloc.c (Fgc_status): Print zombie list.
12099 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
12100 Fix assignment of zombies.
12101 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
12102 Don't take car of non-cons.
12103
12104 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
12105
12106 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
12107
12108 2003-01-20 David Ponce <david@dponce.com>
12109
12110 * w32menu.c (digest_single_submenu): Declare all args.
12111
12112 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
12113 changes in xmenu.c:
12114
12115 (parse_single_submenu): Use individual keymap's prompt
12116 string as pane name, if there is one.
12117 (set_frame_menubar): Save menu_items_n_panes from each call to
12118 parse_single_submenu and use it when calling digest_single_submenu.
12119
12120 2003-01-20 Steven Tamm <steventamm@mac.com>
12121
12122 * macterm.c (XTread_socket): Check for valid, visible window
12123 before sending a scroll-wheel event.
12124
12125 2003-01-20 Richard M. Stallman <rms@gnu.org>
12126
12127 * xdisp.c (redisplay_window): If mini window's buffer is not
12128 a minibuffer, then redisplay it like other windows.
12129
12130 2003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12131
12132 * gtkutil.c (xg_create_frame_widgets): Check if there is an
12133 external tool bar before setting tool bar height.
12134
12135 2003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12136
12137 * xterm.c (handle_one_xevent): Surround popup_activated
12138 with #ifdef:s for non-toolkit version.
12139
12140 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
12141 (gtkutil.o): New file.
12142 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
12143 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
12144
12145 * gtkutil.c: New file for GTK version.
12146
12147 * gtkutil.h: New file for GTK version.
12148
12149 * xterm.h: Add xt_or_gtk_widget.
12150 Include gtk files for USE_GTK.
12151 (struct x_output): Add toolbar_height.
12152 (struct x_output): Add GTK widgets and Gdk size_hints.
12153 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
12154 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
12155 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
12156
12157 * xterm.c: Include gtkutil.h for USE_GTK.
12158 (free_frame_menubar): Declare extern void for USE_GTK.
12159 (note_mouse_highlight): Check popup_activated for USE_GTK.
12160 (xt_action_hook): Don't compile if USE_GTK.
12161 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
12162 (xg_scroll_callback): New function.
12163 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
12164 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
12165 for USE_GTK.
12166 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
12167 xg_show_scroll_bar for USE_GTK.
12168 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
12169 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
12170 (event_handler_gdk): New function for USE_GTK.
12171 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
12172 (handle_one_xevent): Make sure widget is mapped before
12173 calling x_real_positions for USE_GTK.
12174 (XTread_socket): Add GTK event loop for USE_GTK.
12175 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
12176 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
12177 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
12178 (x_iconify_frame): Add code for USE_GTK.
12179 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
12180 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
12181 is in gtkutil.c.
12182 (x_term_init): Add initialization for GTK.
12183 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
12184
12185 * xmenu.c: Include gtkutil.h for USE_GTK.
12186 (Fx_popup_menu): Use current position if x and y is NIL.
12187 (single_menu_item, single_menu_item, Fx_popup_dialog):
12188 Check for USE_GTK.
12189 (popup_widget_loop): New function for USE_GTK.
12190 (x_activate_menubar): Add code for USE_GTK.
12191 (popup_activate_callback, popup_deactivate_callback)
12192 (menu_highlight_callback, menubar_selection_callback):
12193 Add USE_GTK versions.
12194 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
12195 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
12196 (free_frame_menubar): Only compile if not USE_GTK. GTK version
12197 is in gtkutil.c.
12198 (popup_selection_callback): New version for USE_GTK.
12199 (create_and_show_popup_menu): New fuction, one USE_GTK version and
12200 one USE_X_TOOLKIT version.
12201 (xmenu_show): Call create_and_show_popup_menu.
12202 (dialog_selection_callback): New version for USE_GTK.
12203 (create_and_show_dialog): New fuction, one USE_GTK version and
12204 one USE_X_TOOLKIT version.
12205 (xdialog_show): Call create_and_show_dialog.
12206
12207 * xfns.c: Include gtkutil for USE_GTK.
12208 (x_window_to_frame, x_any_window_to_frame)
12209 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
12210 (x_top_window_to_frame): Add code for USE_GTK.
12211 (x_set_background_color): Call xg_set_background_color for GTK.
12212 (x_set_menu_bar_lines): Check for USE_GTK.
12213 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
12214 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
12215 (x_window): Call xg_create_frame_widgets for USE_GTK.
12216 (Fx_create_frame): Check for USE_GTK
12217 (Fx_file_dialog): New implementation for USE_GTK.
12218
12219 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
12220 (update_menu_bar): Add check for USE_GTK.
12221 (update_tool_bar): Add check for USE_GTK and external tool bar.
12222 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
12223 (redisplay_internal): Add check for USE_GTK and popup_activated.
12224 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
12225 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
12226 (display_menu_bar): Add check for USE_GTK
12227
12228 * lisp.h (Vx_resource_name): Declare extern.
12229
12230 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
12231 for USE_GTK.
12232 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
12233
12234 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
12235 (FRAME_EXTERNAL_TOOL_BAR): New macro.
12236 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
12237
12238 * fileio.c (Fread_file_name): Add check for USE_GTK.
12239
12240 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
12241 Add check for USE_GTK.
12242
12243 * config.in: Added HAVE_GTK
12244
12245 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
12246
12247 2003-01-18 Stefan Monnier <monnier@cs.yale.edu>
12248
12249 * charset.h (Funibyte_char_to_multibyte): Export.
12250
12251 2003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12252
12253 * xmenu.c (mouse_position_for_popup): New function.
12254 (Fx_popup_menu): Call mouse_position_for_popup for X and
12255 mouse_position_hook for others.
12256
12257 2003-01-17 Kim F. Storm <storm@cua.dk>
12258
12259 * editfns.c (Finsert): Mention `string-make-multibyte' and
12260 `string-as-multibyte' in doc string.
12261
12262 2003-01-17 Kenichi Handa <handa@m17n.org>
12263
12264 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
12265
12266 * editfns.c (Fformat): Convert an unibyte char argument that is
12267 formatted by "%c" to multibyte if the total result must be a
12268 multibyte string.
12269
12270 2003-01-16 Kim F. Storm <storm@cua.dk>
12271
12272 * process.c (set-process-filter): Document unibyte/multibyte-ness
12273 of string argument.
12274
12275 2003-01-16 Kenichi Handa <handa@m17n.org>
12276
12277 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
12278
12279 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
12280 (re_search_2): Likewise.
12281
12282 2003-01-15 Kenichi Handa <handa@m17n.org>
12283
12284 * xdisp.c (message_dolog): Fix bug of the case that *Message*
12285 buffer is unibyte.
12286
12287 2003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
12288
12289 * fns.c (Fsubstring): Clarify doc string.
12290
12291 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
12292 (Fprevious_char_property_change)
12293 (Fnext_single_char_property_change)
12294 (Fprevious_single_char_property_change, Fnext_property_change)
12295 (Fnext_single_property_change, Fprevious_property_change)
12296 (Fprevious_single_property_change, Fadd_text_properties)
12297 (Fput_text_property, Fset_text_properties)
12298 (Fremove_text_properties, Fremove_list_of_text_properties)
12299 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
12300
12301 2003-01-14 Kim F. Storm <storm@cua.dk>
12302
12303 * process.h (struct Lisp_Process): New member plist replaces old
12304 member private_vars. All uses changed.
12305
12306 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
12307 (QCplist): Rename from QCvars. Change all uses.
12308 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
12309 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
12310 (syms_of_process): Intern, staticpro, defsubr these.
12311 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
12312
12313 2003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
12314
12315 * m/delta.h: Remove (obsolete).
12316
12317 2003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
12318
12319 * fileio.c (Fdelete_directory, Fdelete_file): Document the
12320 behaviour in front of symlinks.
12321 (Fdelete_file): Raise an error on directories.
12322
12323 2003-01-13 Dave Love <fx@gnu.org>
12324
12325 * fns.c (Freverse): Use QUIT.
12326
12327 2003-01-13 Richard M. Stallman <rms@gnu.org>
12328
12329 * minibuf.c (minibuffer_completion_contents):
12330 Error if point is inside prompt.
12331
12332 * keyboard.c (command_loop_1): Don't redisplay directly
12333 if there's a post-command-hook.
12334
12335 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
12336 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
12337
12338 2003-01-12 Kim F. Storm <storm@cua.dk>
12339
12340 * process.h (struct Lisp_Process): New member private_vars.
12341
12342 * process.c (QCvars): New variable.
12343 (syms_of_process): Intern and staticpro it.
12344 (Fset_process_contact): Removed function.
12345 (Fprocess_variable, Fset_process_variable): New functions.
12346 (syms_of_process): Defsubr them.
12347 (Fstart_process): Initialize private_vars plist to nil.
12348 (Fmake_network_process): New arg :vars to setup the private
12349 variables for new network process.
12350 (server_accept_connection): Copy server's private variables to
12351 client process.
12352
12353 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
12354 crashes). Code rewritten and simplified. Now directly aligns the
12355 pointer and recalculates pure_bytes_used, rather than aligning the
12356 size and adjusting the pointer.
12357
12358 2003-01-11 Kim F. Storm <storm@cua.dk>
12359
12360 * process.c (Fset_process_contact): New function.
12361 (syms_of_process): defsubr it.
12362 (make-network-process): Update doc.
12363
12364 2003-01-10 Andreas Schwab <schwab@suse.de>
12365
12366 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
12367 Reported by Berthold Gunreben <b.gunreben@web.de>.
12368
12369 2003-01-10 Dave Love <fx@gnu.org>
12370
12371 * composite.c (syms_of_composite): Make composition_hash_table weak.
12372
12373 2003-01-09 Kim F. Storm <storm@cua.dk>
12374
12375 * process.c (Fmake_network_process): Convert new port number
12376 to host byte order for `:service t' case. From Mario Lang.
12377
12378 2003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12379
12380 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
12381 instead of XtAppProcessEvent.
12382
12383 * xterm.c (handle_one_xevent): New function.
12384 (x_dispatch_event): New function.
12385 (XTread_socket): Call handle_one_xevent.
12386
12387 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
12388
12389 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
12390 call XQueryPointer to get coordinates.
12391 (popup_get_selection): Do not set popup_activated_flag to zero,
12392 let popup_deactivate_callback do that. Needed for Motif.
12393 Call x_dispatch_event instead of XtDispatchEvent.
12394 (xmenu_show): Calculate root coordinate from frame top/left position.
12395
12396 2003-01-08 Kim F. Storm <storm@cua.dk>
12397
12398 * process.c (server_accept_connection): Fix recording of new
12399 connection's local address in :local property of contact info.
12400 (Fmake_network_process): Record local network address for new
12401 client processes in :local property of contact info.
12402 (format-network-address): Add arg OMIT-PORT. Change callers.
12403
12404 2003-01-07 Dave Love <fx@gnu.org>
12405
12406 * Makefile.in (fns.o): Depend on coding.h.
12407
12408 2003-01-07 Markus Rost <rost@math.ohio-state.edu>
12409
12410 * minibuf.c (Fread_variable): Doc fix.
12411
12412 * eval.c (Fuser_variable_p): Doc change. For custom variables,
12413 use the same test as for custom-variable-p.
12414
12415 2003-01-05 Richard M. Stallman <rms@gnu.org>
12416
12417 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
12418 Count LAST_LINE_MISFIT in scroll margin for end of window.
12419 Move label too_near_end before setting SCROLL_MARGIN_POS.
12420 Set LAST_LINE_MISFIT before jumping there.
12421
12422 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
12423 scroll_conservatively case. If scrolling that much doesn't change
12424 STARTP, move it down one line.
12425
12426 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
12427 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
12428
12429 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
12430 selected frame.
12431
12432 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
12433 (syms_of_keymap): Staticpro them.
12434 (Fapropos_internal): Initialize them and clear them out.
12435 Don't GCPRO them.
12436
12437 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
12438 Doc fixes.
12439
12440 * lisp.h: New misc type Lisp_Save_Value.
12441 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
12442 (XSAVE_VALUE): New macro.
12443 (struct Lisp_Save_Value): New data type.
12444 (union Lisp_Misc): Add u_save_value alternative.
12445 (make_save_value): Declare.
12446
12447 * alloc.c (make_save_value): New function.
12448
12449 * xterm.c (x_catch_errors): Save dpy using make_save_value.
12450 (x_catch_errors_unwind): Call XSync.
12451
12452 2003-01-01 Richard M. Stallman <rms@gnu.org>
12453
12454 * window.c (window_scroll_pixel_based): Partially undo last change.
12455
12456 * keyboard.c (command_loop_1): Call adjust_point_for_property
12457 in direct action cases for Qforward_char and Qbackward_char.
12458 Set already_adjusted so it won't be done twice.
12459
12460 2002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
12461
12462 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
12463 type definition of size_t.
12464
12465 2003-01-02 Steven Tamm <steventamm@mac.com>
12466
12467 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
12468 distinguish Carbon GUI builds from X11 builds on darwin.
12469
12470 2002-12-30 Steven Tamm <steventamm@mac.com>
12471
12472 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
12473 to default to t.
12474
12475 2002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
12476
12477 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
12478
12479 2002-12-28 Steven Tamm <steventamm@mac.com>
12480
12481 * Makefile.in (macosx-bundle): Fix Mac OS X/Carbon port to
12482 allow building in a different directory than source. Uses some
12483 GNU Make extensions, but there is no other make on Mac OS X.
12484
12485 2002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
12486
12487 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
12488 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
12489 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
12490 (Fstring_to_number): Mention the returned value in the doc strings.
12491
12492 2002-12-23 Richard M. Stallman <rms@gnu.org>
12493
12494 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
12495 <scroll-down-aggressively>: Doc fix.
12496
12497 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
12498 string as pane name, if there is one.
12499 (set_frame_menubar): Save menu_items_n_panes from each call to
12500 parse_single_submenu and use it when calling digest_single_submenu.
12501
12502 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
12503 Don't try to make last line fully visible if it is past end of window.
12504
12505 2002-12-22 Steven Tamm <steventamm@mac.com>
12506
12507 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
12508 (mac_menu_show): Add support for hierarchical popup menus.
12509 (add_menu_item): Remove indentation support.
12510 (fill_submenu, fill_menu): Create hierarchical menus
12511 instead of using indentation.
12512
12513 2002-12-22 Richard M. Stallman <rms@gnu.org>
12514
12515 * xdisp.c (try_cursor_movement): Don't call try_window here.
12516 (redisplay_window): Never redisplay minibuffer when inactive.
12517
12518 * window.c (select_window_1): Undo 9/21 change.
12519
12520 2002-12-22 Steven Tamm <steventamm@mac.com>
12521
12522 * macterm.c (XTread_socket): Call KeyTranslate for control and
12523 meta to deal correctly shifted non-alpha characters, like C-S-5
12524 being treated like C-%. Do not look for shift key to deal
12525 with masking off control-key with mac-reverse-ctrl-meta.
12526
12527 2002-12-21 Richard M. Stallman <rms@gnu.org>
12528
12529 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
12530 If it is non-nil, run timers. Use an unwind-protect to requeue
12531 the events that were read ahead.
12532 (popup_get_selection_unwind): New subroutine.
12533 (popup_get_selection_queue): File-scope variable now holds that queue.
12534 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
12535 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
12536 Use an unwind-protect to pop down the dialog box.
12537 (xdialog_show_unwind): New subroutine implements that.
12538
12539 * xdisp.c (row_containing_pos): Change exit test using last_y.
12540 (try_window_id): Abort if row_containing_pos returns null.
12541
12542 * lread.c (load_error_handler): New function.
12543 (Fload): Handle errors in Fsubstitute_in_file_name.
12544 Don't expect Fsignal to return.
12545
12546 * eval.c: Errors and throws work right with interrupt blocking.
12547 (struct catchtag): New elt interrupt_input_blocked.
12548 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
12549 (internal_catch, Fcondition_case, internal_condition_case)
12550 (internal_condition_case_1, internal_condition_case_2): Save it.
12551 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
12552
12553 * editfns.c (Fformat): Add parens.
12554
12555 * dired.c (file_name_completion): Fix that change.
12556 Delete special quit-handling code; just use QUIT.
12557
12558 2002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
12559
12560 * dired.c (file_name_completion): Close directory on error
12561 just as in directory_files_internal.
12562
12563 2002-12-19 David Kastrup <David.Kastrup@t-online.de>
12564
12565 * window.c (Fset_window_configuration): Set old_point to correct
12566 value when new_current_buffer == current_buffer.
12567
12568 2002-12-17 Ben Key <bkey1@tampabay.rr.com>
12569
12570 Revisited my earlier fix for the following entry in etc/PROBLEMS:
12571 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
12572 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
12573
12574 These changes were in part based upon suggestions made by Peter
12575 'Luna' Runestig [peter@runestig.com].
12576
12577 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token)
12578 (g_b_init_get_token_information, g_b_init_lookup_account_sid)
12579 (g_b_init_get_sid_identifier_authority ): Add several static
12580 global variables.
12581
12582 * w32.c (globals_of_w32): New function. Used to initialize those
12583 global variables that must always be initialized on startup even
12584 when the global variable initialized is non zero. Its primary
12585 purpose at this time is to set the global variables
12586 g_b_init_is_windows_9x, g_b_init_open_process_token,
12587 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
12588 g_b_init_get_sid_identifier_authority to 0 on startup.
12589 Called from main.
12590
12591 * w32.c (is_windows_9x): Perform initialization only if
12592 g_b_init_is_windows_9x is equal to 0. On initialization set
12593 g_b_init_is_windows_9x equal to 1.
12594
12595 * w32.c (open_process_token): Perform initialization only if
12596 g_b_init_open_process_token is equal to 0. On initialization set
12597 g_b_init_open_process_token equal to 1.
12598
12599 * w32.c (get_token_information): Perform initialization only if
12600 g_b_init_get_token_information is equal to 0. On initialization
12601 set g_b_init_get_token_information equal to 1.
12602
12603 * w32.c (lookup_account_sid): Perform initialization only if
12604 g_b_init_lookup_account_sid is equal to 0. On initialization
12605 set g_b_init_lookup_account_sid equal to 1.
12606
12607 * w32.c (get_sid_identifier_authority): Perform initialization
12608 only if g_b_init_get_sid_identifier_authority is equal to 0.
12609 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
12610
12611 * w32fns.c (globals_of_w32fns): New function. Used to initialize
12612 those global variables that must always be initialized on startup
12613 even when the global variable initialized is non zero.
12614 Its primary purpose at this time is to initialize the global variable
12615 track_mouse_event_fn.
12616
12617 * w32fns.c (w32_wnd_proc): Remove initialization of
12618 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
12619
12620 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
12621
12622 * w32menu.c (globals_of_w32menu): New function. Used to
12623 initialize those global variables that must always be initialized
12624 on startup even when the global variable initialized is non zero.
12625 Its primary purpose at this time is to initialize the global
12626 variables get_menu_item_info and set_menu_item_info.
12627
12628 * w32menu.c (initialize_frame_menubar): Remove initialization of
12629 get_menu_item_info and set_menu_item_info.
12630
12631 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
12632
12633 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
12634 Declare them.
12635
12636 * emacs.c (main): Call globals_of_w32 prior to calling
12637 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
12638 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
12639 is defined.
12640
12641 * w32term.c (x_update_window_begin): Fix Windows API error
12642 detected by BoundsChecker. Test to determine if
12643 w32_system_caret_hwnd is NULL prior to attempting to use
12644 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
12645
12646 * w32term.c (x_update_window_end): Fix Windows API error
12647 detected by BoundsChecker. Test to determine if
12648 w32_system_caret_hwnd is NULL prior to attempting to use
12649 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
12650
12651 2002-12-17 Kenichi Handa <handa@m17n.org>
12652
12653 * coding.c (coding_system_require_warning): New variable.
12654 (syms_of_coding): DEFVAR it.
12655
12656 * coding.h (coding_system_require_warning): Extern it.
12657
12658 * fileio.c (choose_write_coding_system): Even if
12659 Vcoding_system_for_write is non-nil, if
12660 coding_system_require_warning is nonzero, call
12661 Vselect_safe_coding_system_function.
12662
12663 2002-12-17 Markus Rost <rost@math.ohio-state.edu>
12664
12665 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
12666 (lisp): Add font-core.
12667
12668 2002-12-13 Stefan Monnier <monnier@cs.yale.edu>
12669
12670 * textprop.c (text_read_only): New arg `propval'.
12671 (get_char_property_and_overlay): Remove unused var `next_overlay'.
12672 (verify_interval_modification): Use text_read_only's new arg.
12673
12674 2002-12-13 Kenichi Handa <handa@m17n.org>
12675
12676 * coding.c (Funencodable_char_position): Set pend correctly.
12677
12678 2002-12-12 Jason Rumney <jasonr@gnu.org>
12679
12680 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
12681 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
12682 Be more careful about when help_events are generated.
12683
12684 2002-12-12 Steven Tamm <steventamm@mac.com>
12685
12686 * macterm.c (mac_check_for_quit_char): Correctly set the
12687 modifiers of the event to 0.
12688 * mac.c (sys_select): Duplicate rfds before calling select to
12689 ensure that rfds survive the while loop.
12690
12691 2002-12-11 Kim F. Storm <storm@cua.dk>
12692
12693 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
12694 row_containing_pos returned NULL.
12695
12696 2002-12-10 Steven Tamm <steventamm@mac.com>
12697
12698 * mac.c (sys_read): Fix sys_read to not call select if IO is
12699 non-blocking.
12700 (sys_select): Fix sys_select to not use a timeout larger than
12701 the one given.
12702
12703 2002-12-10 Juanma Barranquero <lektu@terra.es>
12704
12705 * editfns.c (Fformat): Use alloca, not _alloca.
12706
12707 2002-12-09 Richard M. Stallman <rms@gnu.org>
12708
12709 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
12710 as the last thing.
12711
12712 2002-12-09 Dave Love <fx@gnu.org>
12713
12714 * s/sol2-8.h: Removed. (Not necessary.)
12715
12716 2002-12-09 Matthew Swift <swift@alum.mit.edu>
12717
12718 * editfns.c (Fformat): Handle precision in string conversion
12719 specifiers like libc functions do (ie, print at most that many
12720 characters).
12721
12722 2002-12-08 Richard M. Stallman <rms@gnu.org>
12723
12724 * xdisp.c (row_containing_pos): Check more carefully
12725 whether charpos is really in the row before returning it.
12726
12727 2002-12-07 Steven Tamm <steventamm@mac.com>
12728
12729 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
12730
12731 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
12732 each stack frame. This may change as it could be time consuming.
12733
12734 * macterm.c (mac_check_for_quit_char, quit_char_comp)
12735 (init_quit_char_handler, mac_determine_quit_char_modifiers)
12736 (mac_initialize): Add code to check for pressing of quit_char
12737 in the OS event queue.
12738
12739 * mac.c (sys_select): Call mac_check_for_quit_char every second
12740 while blocking on select.
12741
12742 * mac.c (sys_read): Use sys_select to test for input first
12743 before calling read, to allow C-g to break.
12744
12745 2002-12-07 Richard M. Stallman <rms@gnu.org>
12746
12747 * minibuf.c (Fcompleting_read): Doc fix.
12748
12749 * lread.c (syms_of_lread) <load-history>: Doc fix.
12750
12751 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
12752
12753 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
12754 autoload.
12755
12756 * data.c (Fdefalias): Record in load-history redefining an autoload.
12757
12758 * alloca.c: Undo ifdef change accidentally made on 12-04.
12759
12760 2002-12-06 Francesco Potorti` <pot@gnu.org>
12761
12762 * xfns.c (png_load): Avoid double gamma correction for PNG images.
12763
12764 2002-12-04 Richard M. Stallman <rms@gnu.org>
12765
12766 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
12767
12768 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
12769
12770 * alloca.c: Don't use #error.
12771
12772 2002-12-03 Dave Love <fx@gnu.org>
12773
12774 * buffer.c (Qucs_set_table_for_input): New.
12775 (Fget_buffer_create): Use it.
12776 (Qset_buffer_major_mode_hook): Deleted.
12777 (Fset_buffer_major_mode): Revert previous change.
12778 (init_buffer_once): Intern ucs-set-table-for-input.
12779 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
12780 Add &Qucs_set_table_for_input.
12781
12782 2002-12-03 Andreas Schwab <schwab@suse.de>
12783
12784 * callint.c (Fcall_interactively): Use next_event only if less
12785 than key_count.
12786
12787 2002-12-02 Andrew Choi <akochoi@shaw.ca>
12788
12789 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
12790 names to 255 characters.
12791
12792 * macterm.c (XTread_socket): If all frames have been collapsed,
12793 expand the first one before handling drag-and-drop events.
12794
12795 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
12796 which is detected by autoconf.
12797
12798 2002-12-01 Steven Tamm <steventamm@mac.com>
12799
12800 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
12801 offset in two hints table to allow prebinding to be redone and
12802 allow the executable to be stripped.
12803
12804 2002-11-29 Dave Love <fx@gnu.org>
12805
12806 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
12807 already provided.
12808
12809 2002-11-29 Richard M. Stallman <rms@gnu.org>
12810
12811 * xdisp.c (start_display): Check more intelligently for
12812 whether the line is continued.
12813 (move_it_vertically_backward): Clear it->continuation_lines_width.
12814
12815 2002-11-28 Dave Love <fx@gnu.org>
12816
12817 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
12818 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
12819
12820 2002-11-27 Steven Tamm <steventamm@mac.com>
12821
12822 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
12823 more descriptive error output from lread.c:Fload upon most require
12824 cycles during boostrapping.
12825
12826 2002-11-27 Jason Rumney <jasonr@gnu.org>
12827
12828 * fileio.c (Finsert_file_contents): Give a more appropriate error
12829 for files bigger than 2Gb when off_t is 32 bit.
12830
12831 * dired.c (Ffile_attributes): Don't return negative file sizes for
12832 files bigger than 2Gb when off_t is 32 bit.
12833
12834 2002-11-27 Dave Love <fx@gnu.org>
12835
12836 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
12837
12838 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
12839 Test GETPGRP_VOID instead.
12840 [BSD_TERMIOS]: Remove definitions (never used).
12841
12842 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
12843 Don't define.
12844 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
12845
12846 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
12847
12848 2002-11-25 Jason Rumney <jasonr@gnu.org>
12849
12850 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
12851 supported.
12852
12853 2002-11-25 Dave Love <fx@gnu.org>
12854
12855 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
12856
12857 * Makefile.in (TEMACS_LDFLAGS): Update last change.
12858
12859 2002-11-25 Andreas Schwab <schwab@suse.de>
12860
12861 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
12862
12863 2002-11-24 Steven Tamm <steventamm@mac.com>
12864
12865 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
12866 determine the size of pointers alloced in unexed space instead
12867 of using possibly invalid emacs_zone pointers. This fixes the
12868 binary incompatibility problems caused by updates to libSystem.B.
12869
12870 2002-11-24 Richard M. Stallman <rms@gnu.org>
12871
12872 * search.c (Fstring_match): Doc fix.
12873
12874 * callint.c (Fcall_interactively): If a command fails because
12875 `*' detects a read-only buffer, but RECORD_FLAG is set,
12876 record it anyway if the args don't actually do tty input.
12877
12878 2002-11-22 Dave Love <fx@gnu.org>
12879
12880 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
12881
12882 * keyboard.c (interrupt_signal): Provide forward declaration.
12883 (kbd_buffer_store_event): Don't declare interrupt_signal.
12884
12885 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
12886
12887 2002-11-21 Richard M. Stallman <rms@gnu.org>
12888
12889 * eval.c (interactive_p): Skip any number of bytecode
12890 and special form frames, in any order.
12891
12892 2002-11-20 Jason Rumney <jasonr@gnu.org>
12893
12894 * w32fns.c (convert_mono_to_color_image): New function.
12895 (xbm_load, xbm_load_image): Use it when foreground or background
12896 is explicitly set.
12897
12898 2002-11-19 Dave Love <fx@gnu.org>
12899
12900 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
12901
12902 2002-11-18 Jason Rumney <jasonr@gnu.org>
12903
12904 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
12905 (XPutPixel): Swap blue and red.
12906 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
12907 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
12908 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
12909 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
12910
12911 2002-11-18 Dave Love <fx@gnu.org>
12912
12913 * m/orion105.h (HAVE_ALLOCA): Don't define.
12914
12915 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
12916
12917 * m/intel386.h: Don't include alloca.h or define alloca.
12918
12919 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
12920 malloc, realloc, calloc.
12921
12922 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
12923 (bcmp): Don't define.
12924
12925 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
12926
12927 * m/amdahl.h: Don't define LIB_STANDARD.
12928
12929 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
12930
12931 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
12932
12933 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
12934 Don't include alloca.h.
12935
12936 * s/aix3-2.h (HAVE_FSYNC): Don't define.
12937
12938 * regex.c (_GNU_SOURCE): Don't define.
12939
12940 * process.c (_GNU_SOURCE): Don't define.
12941
12942 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
12943
12944 2002-11-18 Markus Rost <rost@math.ohio-state.edu>
12945
12946 * s/sol2-8.h: Include sol2-6.h.
12947
12948 2002-11-18 Miles Bader <miles@gnu.org>
12949
12950 * dispextern.h (struct face): Add `overstrike' field.
12951 * xterm.c (x_draw_glyph_string_foreground)
12952 (x_draw_composite_glyph_string_foreground): Implement overstriking.
12953 * xfaces.c (load_face_font): Set `face->overstrike' based on
12954 result from choose_face_font.
12955 (best_matching_font, choose_face_font): Add `needs_overstrike'
12956 argument, and use it to return whether overstriking is desirable
12957 for this face/font combo.
12958 (set_font_frame_param: Pass new argument to choose_face_font.
12959
12960 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
12961
12962 This change is my fix for the following entry in etc/PROBLEMS:
12963 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
12964 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
12965
12966 * w32.c: Added wrapper functions around the win32 API functions
12967 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
12968 GetSidIdentifierAuthority. These wrapper functions serve two
12969 purposes:
12970 1. They ensure that the wrapped function can never be called
12971 when Emacs is running on an operating system on which they are
12972 not supported (Microsoft Windows 95 / 98 / ME).
12973 2. They call the wrapped functions via function pointers rather
12974 than calling them directly. This avoids taking advantage of the
12975 undocumented fact that although these functions are not supported
12976 in the 9x branch of Microsoft Windows, the functions do exist in
12977 the version of advapi32.dll that is found in the 9x branch of
12978 Microsoft Windows.
12979
12980 * w32.c (init_user_info): Replace the calls to the win32 API
12981 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
12982 and GetSidIdentifierAuthority with calls to the newly added
12983 wrapper functions.
12984
12985 * w32.h: Added extern declarations for the following functions:
12986 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
12987 syms_of_w32menu, and void syms_of_fontset.
12988
12989 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
12990 function pointer track_mouse_event_fn in the handler for the
12991 WM_SETFOCUS message.
12992
12993 * w32menu.c (initialize_frame_menubar): Add code to
12994 reinitialize the function pointers set_menu_item_info and
12995 get_menu_item_info.
12996
12997 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
12998
12999 * sound.c: Added a partial implementation of play-sound-internal
13000 for Microsoft Windows. Added various #ifdef / #else / #endif
13001 code blocks to separate the code that will compile under
13002 Microsoft Windows from the code that is specific to GNU/Linux.
13003 Moved several blocks of code around to make this separation of code
13004 into Windows compatible and GNU/Linux compatible code blocks easier.
13005
13006 * makefile.w32-in: Include sound.c and link with WinMM.lib.
13007
13008 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
13009 added support for play-sound-internal under Windows would be
13010 included in the build of Emacs.
13011
13012 2002-11-16 Jason Rumney <jasonr@gnu.org>
13013
13014 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
13015
13016 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
13017
13018 2002-11-15 Stefan Monnier <monnier@cs.yale.edu>
13019
13020 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
13021 (adjust_point_for_property): Move out of display and invisible even if
13022 we were already inside before (in case a property was added while
13023 we weren't looking). Be more careful when handling invisible props.
13024 Skip invisible text as if it really wasn't there at all.
13025
13026 2002-11-15 Jason Rumney <jasonr@gnu.org>
13027
13028 * w32term.c (x_draw_image_foreground)
13029 (w32_draw_image_foreground_1): Use standard copy and invert
13030 operations to draw images.
13031
13032 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
13033 depth of 1.
13034 (xbm_read_bitmap_data): Invert bits as xbm is read in.
13035 (XPutPixel): Don't invert bits here.
13036
13037 2002-11-15 Jason Rumney <jasonr@gnu.org>
13038
13039 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
13040 (w32_draw_image_foreground_1): Handle image masks.
13041 (x_draw_image_glyph_string): Don't BitBlt transparently.
13042
13043 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
13044 (x_from_xcolors): Adjust RGB values for W32.
13045 (image_background, image_background_transparent)
13046 (postprocess_image, x_to_xcolors, x_disable_image)
13047 (x_build_heuristic_mask): Adapt for W32 and enable.
13048 (x_create_x_image_and_pixmap): Mark images with palettes as such.
13049 (xbm_load): Remove unused variable.
13050
13051 2002-11-14 Richard M. Stallman <rms@gnu.org>
13052
13053 * buffer.c (syms_of_buffer): Doc fix.
13054
13055 2002-11-14 Dave Love <fx@gnu.org>
13056
13057 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
13058
13059 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
13060 * xmenu.c (unuse_menu_items, digest_single_submenu):
13061 * xfns.c (x_put_x_image):
13062 * xdisp.c (message2_nolog, set_message):
13063 * undo.c (record_point):
13064 * terminfo.c (tparam):
13065 * syntax.c (scan_sexps_forward):
13066 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
13067 * composite.c (update_compositions):
13068 * cm.c (calccost, cmgoto):
13069 * charset.c (c_string_width): Declare all args (per C99).
13070
13071 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
13072
13073 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
13074 Don't declare.
13075
13076 * emacs.c (main) [!VMS]: Avoid third arg.
13077
13078 * fns.c (Fcopy_sequence): Doc fix.
13079 (Fmap_char_table): Cast `call2'.
13080
13081 2002-11-14 Francesco Potorti` <pot@gnu.org>
13082
13083 * s/sol2-8.h: New file.
13084
13085 2002-11-14 Kim F. Storm <storm@cua.dk>
13086
13087 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
13088 dependency on `risky-local-variable' and the :propertize form.
13089
13090 2002-11-12 Stefan Monnier <monnier@cs.yale.edu>
13091
13092 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
13093
13094 * syntax.c (scan_sexps_forward): Undo last patch.
13095 Use a more obvious fix: check eob before updating the syntax table.
13096
13097 2002-11-09 Stefan Monnier <monnier@cs.yale.edu>
13098
13099 * syntax.c (scan_sexps_forward): Update syntax table before reading
13100 a char rather than after so we don't update the table past eob.
13101
13102 2002-11-09 Dave Love <fx@gnu.org>
13103
13104 * buffer.c (Fset_buffer_major_mode): Fix last change.
13105
13106 * regex.c (regexec): Fix pmatch declaration.
13107
13108 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
13109
13110 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
13111 to self-inserting characters.
13112 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
13113
13114 * coding.c (Vtranslation_table_for_input): New.
13115 (syms_of_coding): DEFVAR it.
13116
13117 2002-11-08 Juanma Barranquero <lektu@terra.es>
13118
13119 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
13120 window.
13121
13122 2002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13123
13124 * process.c (Fformat_network_address): Remove unused locals p,
13125 cp, and i.
13126
13127 2002-11-06 Dave Love <fx@gnu.org>
13128
13129 * buffer.c (Qset_buffer_major_mode_hook): New.
13130 (Fset_buffer_major_mode): Use it.
13131
13132 2002-11-06 Richard M. Stallman <rms@gnu.org>
13133
13134 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
13135 and stop_polling.
13136
13137 * process.c (wait_reading_process_input):
13138 Test POLLING_PROBLEM_IN_SELECT, not hpux.
13139 Avoid initialization for auto Lisp_Object var.
13140
13141 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
13142
13143 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
13144
13145 2002-11-05 Richard M. Stallman <rms@gnu.org>
13146
13147 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
13148
13149 * callint.c (Fcall_interactively): New local filter_specs.
13150 (Fcall_interactively): Check for progn as well as let.
13151 Add a gcpro.
13152 (Qprogn): New variable.
13153 (syms_of_callint): Staticpro and init Qprogn.
13154
13155 2002-11-04 John Paul Wallington <jpw@shootybangbang.com>
13156
13157 * lread.c (Feval_buffer): Doc fix.
13158
13159 2002-11-04 Dave Love <fx@gnu.org>
13160
13161 * keyboard.c (read_char): Always translate iff
13162 Vkeyboard_translate_table is a char table and c is valid.
13163
13164 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
13165 and fix C types.
13166
13167 2002-11-03 Stefan Monnier <monnier@cs.yale.edu>
13168
13169 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
13170
13171 * editfns.c (get_pos_property): Don't hardcode Qfield.
13172
13173 * keyboard.c (adjust_point_for_property): Handle `display' prop on
13174 overlays. Also handle `invisible' prop.
13175
13176 2002-11-02 Stefan Monnier <monnier@cs.yale.edu>
13177
13178 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
13179 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
13180
13181 2002-11-01 Andreas Schwab <schwab@suse.de>
13182
13183 * editfns.c (Fmessage): Revert last change to properly handle %%.
13184
13185 2002-11-01 Stefan Monnier <monnier@cs.yale.edu>
13186
13187 * xmenu.c (unuse_menu_items): New fun.
13188 (menu_items_inuse): New var.
13189 (syms_of_xmenu): Initialize it.
13190 (init_menu_items): Use it to detect re-entrance.
13191 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
13192 (Fx_popup_menu): Remove spurious XSETFRAME.
13193
13194 * editfns.c (find_field): Make an exception for nil fields.
13195
13196 2002-11-01 Dave Love <fx@gnu.org>
13197
13198 * m/gec63.h: Deleted.
13199
13200 2002-10-31 Dave Love <fx@gnu.org>
13201
13202 * xterm.c (XTread_socket): Fix last change.
13203 (xaw_scroll_callback): Cast call_data to long to avoid warning.
13204
13205 2002-10-31 Stefan Monnier <monnier@cs.yale.edu>
13206
13207 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
13208
13209 2002-10-30 Stefan Monnier <monnier@cs.yale.edu>
13210
13211 * editfns.c (overlays_around, get_pos_property): New funs.
13212 (find_field): Use them.
13213 Also be careful not to modify POS before its last use.
13214 (Fmessage): Don't Fformat if there's nothing to format.
13215
13216 2002-10-30 Dave Love <fx@gnu.org>
13217
13218 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
13219 [HAVE_PTY_H]; Include pty.h.
13220
13221 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
13222
13223 * xterm.c (Qeql): Declare.
13224 (Vx_keysym_table): New.
13225 (syms_of_xterm): Initialize it.
13226 (XTread_socket): Use it. Deal with ASCII keysyms.
13227 (XSetIMValues) [HAVE_X11R6]: Prototype.
13228
13229 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
13230 (lispy_kana_keys): Comment out.
13231 (make_lispy_event) [XK_kana_A]: Comment out.
13232 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
13233 Fix sprintf call.
13234
13235 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
13236 regexp.h change).
13237 (TERMINFO, LIBS_TERMCAP): Define.
13238
13239 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
13240 (bcmp): Define conditional on HAVE_BCMP.
13241 (NO_SIOCTL_H): Don't define.
13242 (TIOCSIGSEND): Don't make conditional on IRIX6.
13243
13244 * s/sol2-5.h: Don't include strings.h.
13245 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
13246
13247 * s/irix6-0.h (IRIX6): Don't define.
13248 (bcopy, bcmp, bzero): Don't undef.
13249
13250 * s/irix6-5.h: Don't include strings.h.
13251 (IRIX6): Don't define.
13252 (bcopy, bcmp, bzero): Don't undef.
13253
13254 * syntax.c (Fforward_comment): Doc fix.
13255
13256 2002-10-29 Kim F. Storm <storm@cua.dk>
13257
13258 * process.c (Fsignal_process): Allow PROCESS to be specified by
13259 name in addition to pid (as integer or string).
13260
13261 2002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
13262
13263 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
13264 environments.
13265
13266 2002-10-27 Kim F. Storm <storm@cua.dk>
13267
13268 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
13269
13270 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
13271
13272 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
13273
13274 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
13275
13276 2002-10-26 Richard M. Stallman <rms@gnu.org>
13277
13278 * editfns.c (Fformat): Detect invalid format letters for floats.
13279
13280 2002-10-25 Kenichi Handa <handa@m17n.org>
13281
13282 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
13283 (x_set_title): Likewise.
13284
13285 2002-10-25 Juanma Barranquero <lektu@terra.es>
13286
13287 * macgui.h:
13288 * w32gui.h: Remove definition of XColor.
13289
13290 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
13291
13292 2002-10-24 Kim F. Storm <storm@cua.dk>
13293
13294 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
13295 Callers changed (supply dummy arg).
13296
13297 * lisp.h (get_window_cursor_type): Update prototype.
13298
13299 * w32term.c (x_display_and_set_cursor): Get active_cursor from
13300 get_window_cursor_type to track system caret.
13301
13302 2002-10-24 Kim F. Storm <storm@cua.dk>
13303
13304 * process.c (Fformat_network_address): New function.
13305 (syms_of_process): Defsubr it.
13306 (list_processes_1): Use it to format :local/:remote address if
13307 service/host is not set; before Emacs would crash in that case.
13308 (Fmake_network_process): Don't use Ffind_operation_coding_system
13309 to setup coding system if host or service is not set.
13310
13311 2002-10-23 Juanma Barranquero <lektu@terra.es>
13312
13313 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
13314
13315 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
13316 COLORREF.
13317
13318 * macgui.h:
13319 * w32gui.h: Add definition of XColor.
13320
13321 * macfns.c:
13322 * w32fns.c:
13323 * xfaces.c: Remove definition of XColor.
13324
13325 2002-10-22 Stefan Monnier <monnier@cs.yale.edu>
13326
13327 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
13328
13329 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
13330 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
13331 window if it is dedicated.
13332 (Fshrink_window): Add preserve_before as was done for enlarge_window.
13333 (Vspecial_display_function): Update docstring.
13334
13335 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
13336 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
13337 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
13338
13339 2002-10-21 Stefan Monnier <monnier@cs.yale.edu>
13340
13341 * casefiddle.c (casify_region): Don't treat a prefix char as part
13342 of a word when at the beginning.
13343
13344 2002-10-17 Juanma Barranquero <lektu@terra.es>
13345
13346 * lread.c (syms_of_lread): Fix typos.
13347
13348 2002-10-17 Dave Love <fx@gnu.org>
13349
13350 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
13351
13352 2002-10-16 Richard M. Stallman <rms@gnu.org>
13353
13354 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
13355
13356 2002-10-14 Juanma Barranquero <lektu@terra.es>
13357
13358 * w16select.c (syms_of_win16select): Fix docstring for
13359 `selection-coding-system'.
13360
13361 * w32select.c (syms_of_w32select): Likewise.
13362
13363 2002-10-14 Stefan Monnier <monnier@cs.yale.edu>
13364
13365 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
13366 a backslash-quoted char.
13367 (scan_lists, scan_sexps_forward): Pacify the compiler.
13368
13369 2002-10-13 Richard M. Stallman <rms@gnu.org>
13370
13371 * window.c (window_scroll): Set immediate_quit.
13372
13373 * print.c (print): When backquote form is the car of a list,
13374 output in old style. Use old_backquote_output to output all
13375 comma forms inside it in old style too.
13376
13377 * buffer.h (struct buffer): Move `undo_list' down below `name'.
13378
13379 2002-10-11 Markus Rost <rost@math.ohio-state.edu>
13380
13381 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
13382 batch mode).
13383
13384 * lread.c (Fload): Doc fix (load-suffixes).
13385
13386 2002-10-10 Steven Tamm <steventamm@mac.com>
13387
13388 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
13389 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
13390 Also switch the default to Qnil from Qt.
13391
13392 2002-10-08 Kenichi Handa <handa@m17n.org>
13393
13394 * coding.c (code_convert_region): When we need more GAP for
13395 conversion, pay attention to the case that coding->produced is not
13396 greater than coding->consumed.
13397
13398 2002-10-07 Richard M. Stallman <rms@gnu.org>
13399
13400 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
13401
13402 2002-10-06 Andrew Choi <akochoi@shaw.ca>
13403
13404 * macmenu.c (mac_menu_show): Add j to count menu items; match
13405 menu_item_selection to it to find selected item.
13406
13407 2002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13408
13409 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
13410 cases. The correct fix is to pass ReparentNotify to Xt.
13411 The shell widget interprets ConfigureNotify differently depending
13412 on if it has been reparented or not.
13413
13414 2002-10-05 Markus Rost <rost@math.ohio-state.edu>
13415
13416 * editfns.c (Fformat_time_string): Doc fix.
13417
13418 2002-10-05 John Paul Wallington <jpw@shootybangbang.com>
13419
13420 * fns.c (Flength): Doc fix.
13421
13422 2002-10-04 Stefan Monnier <monnier@cs.yale.edu>
13423
13424 * keyboard.c (keyremap): New struct.
13425 (read_key_sequence): Use it: globally replace keytran_foo with
13426 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
13427 keytran_next and fkey_next to just `next'.
13428
13429 2002-10-04 Steven Tamm <steventamm@mac.com>
13430
13431 * macterm.c (keycode_to_xkeysym_table): Change return to be
13432 treated like an X keysym.
13433
13434 2002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13435
13436 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
13437 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
13438 This is to also handle x/y changes that occur because of a resize.
13439
13440 2002-10-02 John Paul Wallington <jpw@shootybangbang.com>
13441
13442 * frame.c (Vdelete_frame_functions): New variable.
13443 (syms_of_frame): Initialize and defvar it.
13444 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
13445 it when frame's `tooltip' parameter is non-nil.
13446
13447 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
13448
13449 * w32fns.c (x_create_tip_frame): Likewise.
13450
13451 * macfns.c (x_create_tip_frame): Likewise.
13452
13453 2002-09-30 Kenichi Handa <handa@m17n.org>
13454
13455 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
13456 -1 before calling ccl_driver.
13457
13458 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
13459 Only when it is non-nil, handle composition sequence.
13460 (setup_coding_system) <0>: Don't force composition handling.
13461
13462 * Makefile.in (lisp, shortlisp): Add utf-16.elc
13463
13464 2002-09-29 Richard M. Stallman <rms@gnu.org>
13465
13466 * search.c (Freplace_match): Adjust match data for the substitution
13467 just made in the buffer.
13468
13469 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
13470 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
13471
13472 2002-09-27 Richard M. Stallman <rms@gnu.org>
13473
13474 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
13475 (read_char): Use them. Do all exits thru the end of the function.
13476
13477 2002-09-27 Kenichi Handa <handa@etl.go.jp>
13478
13479 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
13480 is nil.
13481
13482 2002-09-26 Richard M. Stallman <rms@gnu.org>
13483
13484 * regex.h (__restrict_arr): Don't define if already defined.
13485
13486 * coding.c (run_pre_post_conversion_on_str):
13487 Save and restore Vdeactivate_mark.
13488
13489 2002-09-26 John Paul Wallington <jpw@shootybangbang.com>
13490
13491 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
13492
13493 2002-09-26 Kenichi Handa <handa@etl.go.jp>
13494
13495 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
13496 nonzero, try face's family at first. Otherwise try FAMILY at first.
13497 (choose_face_font): If C is a single byte char or latin-1, call
13498 try_font_list with PREFER_FACE_FAMILY 1.
13499
13500 2002-09-21 Richard M. Stallman <rms@gnu.org>
13501
13502 * window.c (select_window_1): Don't select frame.
13503 Set frame's selected window only when frame itself is selected.
13504 (Fselect_window): Doc fix.
13505
13506 2002-09-18 Kim F. Storm <storm@cua.dk>
13507
13508 * process.c (make-network-process): Doc fix (there is no
13509 network-server-log-function hook).
13510
13511 2002-09-18 Richard M. Stallman <rms@gnu.org>
13512
13513 * print.c (print): Clear out the unused parts of Vprint_number_table.
13514 (syms_of_print): Doc fix for `print-number-table'.
13515
13516 * unexelf.c (unexec): Undo previous change.
13517
13518 2002-09-17 Andreas Schwab <schwab@suse.de>
13519
13520 * m/alpha.h [LINUX]: Don't define DATA_START.
13521
13522 2002-09-16 Dave Love <fx@gnu.org>
13523
13524 * unexelf.c (unexec): Deal with .got, reinstating change from
13525 25-08-1999.
13526
13527 2002-09-13 Richard M. Stallman <rms@gnu.org>
13528
13529 * s/sol2-6.h (UNEXEC): Comment out definition.
13530
13531 * unexsol.c (unexec): Don't downcase first letter of error msg.
13532
13533 * xfaces.c (Fcolor_supported_p): Just one arg is required.
13534
13535 2002-09-12 Markus Rost <rost@math.ohio-state.edu>
13536
13537 * unexsol.c: Include buffer.h, charset.h, coding.h.
13538
13539 2002-09-11 Richard M. Stallman <rms@gnu.org>
13540
13541 * unexsol.c: Don't use report_file_error; do it by hand
13542 using dlerror.
13543
13544 * process.c (wait_reading_process_input, both versions):
13545 Before calling turn_on_atimers, call stop_polling.
13546
13547 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
13548
13549 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
13550 we go to too_near_end, call clear_glyph_matrix.
13551 (redisplay_window): After make_cursor_line_fully_visible,
13552 call clear_glyph_matrix and bypass `goto done'.
13553
13554 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
13555 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
13556
13557 2002-09-10 Richard M. Stallman <rms@gnu.org>
13558
13559 * fileio.c (Fdo_auto_save): Catch error making directory.
13560 Only call push_message if we need to.
13561 At the same time, make an unwind-protect to pop it.
13562 Rename local message_p to old_message_p.
13563 (do_auto_save_make_dir, do_auto_save_eh): New functions.
13564 (do_auto_save_unwind): Don't call pop_message.
13565
13566 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
13567
13568 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
13569
13570 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
13571
13572 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
13573
13574 2002-09-10 Stefan Monnier <monnier@cs.yale.edu>
13575
13576 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
13577 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
13578 (re_match_2_internal): Be more careful with infinite loops.
13579
13580 2002-09-10 Kim F. Storm <storm@cua.dk>
13581
13582 * macros.c (end_kbd_macro): New function.
13583 (Fend_kbd_macro): Use it.
13584
13585 * macros.h (end_kbd_macro): Declare extern.
13586
13587 * keyboard.c (Fdiscard_input): If defining keyboard macro,
13588 end and save it instead of discarding it.
13589
13590 2002-09-09 Markus Rost <rost@math.ohio-state.edu>
13591
13592 * s/sol2-6.h: Fix typo. Add comment.
13593
13594 2002-09-09 Richard M. Stallman <rms@gnu.org>
13595
13596 * regex.c (regnum_t): Use signed int, not unsigned int.
13597
13598 * s/sol2-6.h: New file.
13599
13600 * s/sol2-5.h (UNEXEC): Definition deleted.
13601
13602 2002-09-08 Kim F. Storm <storm@cua.dk>
13603
13604 * macros.c (executing_macro_index): Change type to EMACS_INT.
13605 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
13606
13607 * macros.h (executing_macro_index): Change type to EMACS_INT.
13608
13609 2002-09-06 Richard M. Stallman <rms@gnu.org>
13610
13611 * casetab.c (set_case_table): Make canon table point to eqv table.
13612
13613 2002-09-06 Juanma Barranquero <lektu@terra.es>
13614
13615 * coding.c (syms_of_coding): Fix spacing.
13616
13617 * composite.c (Fcompose_region_internal)
13618 (Fcompose_string_internal): Likewise.
13619
13620 * data.c (Flsh): Likewise.
13621
13622 * fontset.c (Fset_fontset_font): Likewise.
13623
13624 * macfns.c (Fx_server_max_request_size): Likewise.
13625
13626 * w16select.c (syms_of_win16select): Likewise.
13627
13628 * w32select.c (syms_of_w32select): Likewise.
13629
13630 * xselect.c (syms_of_xselect): Likewise.
13631
13632 2002-09-05 Richard M. Stallman <rms@gnu.org>
13633
13634 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
13635 call EXTEND_RANGE_TABLE and return a proper value.
13636 (set_image_of_range): Don't call set_image_of_range_1
13637 if no TRANSLATE or if range includes all of Latin-1.
13638 Only call it for the Latin-1 part of the range.
13639 For other cases, make two separate ranges,
13640 one for the original specified characters and one for
13641 their case-conversions.
13642
13643 2002-09-04 Richard M. Stallman <rms@gnu.org>
13644
13645 * s/sol2-5.h (UNEXEC): Use unexsol.o.
13646
13647 * window.c (displayed_window_lines): Correct for one-off bug
13648 in HEIGHT on non-window displays.
13649
13650 * regex.c (set_image_of_range_1): New function.
13651 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
13652 Return a value to indicate running out of memory.
13653 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
13654 (extend_range_table_work_area): New subroutine.
13655 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
13656 Different calling conventions, and used from set_image_of_range{,_1}.
13657 (IMMEDIATE_QUIT_CHECK): Definitions moved.
13658
13659 2002-09-04 Juanma Barranquero <lektu@terra.es>
13660
13661 * makefile.w32-in: All dependencies updated.
13662
13663 2002-09-01 Richard M. Stallman <rms@gnu.org>
13664
13665 * unexsol.c: New file.
13666
13667 * xfns.c (Qbox): Declare external, don't define.
13668
13669 * xdisp.c (redisplay_window) <force-start case>:
13670 If point is on semi-visible last line, reposition
13671 it at previous line.
13672
13673 * alloc.c (display_malloc_warning): Use display-warning.
13674 (malloc_warning_1): Function deleted.
13675
13676 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
13677
13678 * lread.c (read1): Handle #! by skipping the line.
13679
13680 2002-08-31 Richard M. Stallman <rms@gnu.org>
13681
13682 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
13683 Don't include LDFLAGS.
13684 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
13685
13686 2002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
13687
13688 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
13689 member of x_display_info unless we compile for some window system.
13690
13691 2002-08-31 Kim F. Storm <storm@cua.dk>
13692
13693 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
13694 (get_window_cursor_type): Don't use them.
13695 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
13696
13697 2002-08-30 Kenichi Handa <handa@etl.go.jp>
13698
13699 * xdisp.c (get_next_display_element): Fix previous change.
13700
13701 2002-08-30 Andrew Choi <akochoi@shaw.ca>
13702
13703 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
13704 (expose_window): Use it to fix the display of overlapping
13705 rows (merge code from xterm.c).
13706
13707 * macfns.c (Qbox): Add extern declaration.
13708
13709 2002-08-30 Juanma Barranquero <lektu@terra.es>
13710
13711 * w32fns.c (Qbox): Make extern.
13712 (syms_of_w32fns): Remove initialization of Qbox.
13713
13714 2002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
13715
13716 * xfns.c (Fx_open_connection): Fix error message.
13717
13718 2002-08-30 Kim F. Storm <storm@cua.dk>
13719
13720 The following changes consolidates the handling of the cursor
13721 type in xdisp.c, moving duplicate code and functionality from
13722 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
13723
13724 * frame.h (enum text_cursor_kinds): Consolidated here.
13725 Added DEFAULT_CURSOR value.
13726 (struct frame) <desired_cursor, cursor_width>
13727 <blink_off_cursor, blink_off_cursor_width>: New fields.
13728 Consolidated from output_x, output_w32 and output_mac structs.
13729 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
13730 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
13731
13732 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
13733 Variables consolidated here.
13734 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
13735 (Vcursor_in_non_selected_windows): Renamed from
13736 cursor_in_non_selected_windows and changed to Lisp_Object.
13737 (syms_of_xdisp): Define and staticpro new and moved variables.
13738 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
13739 consolidated here. Recognize Qhollow setting.
13740 (set_frame_cursor_types): New function to set frame cursor types
13741 based on the frame parameters.
13742 (get_window_cursor_type): New function to calculate new cursor
13743 type and width for the specified window. Based on duplicated
13744 code consolidated here.
13745 Enhancements: cursor-in-non-selected-windows may be a cursor type,
13746 check buffer-local alternate-cursor-type and blink-cursor-alist
13747 before using built-in blink off methods.
13748
13749 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
13750
13751 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
13752 (get_specified_cursor_type, get_window_cursor_type)
13753 (set_frame_cursor_types): Added prototypes.
13754
13755 * macfns.c (x_specified_cursor_type): Removed.
13756 (x_set_cursor_type): Use set_frame_cursor_types.
13757 (Qbar, Qbox): Removed.
13758 (syms_of_macfns): Don't intern or staticpro them.
13759
13760 * macterm.c (x_specified_cursor_type): Remove prototype.
13761 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
13762 (x_display_and_set_cursor): Use get_window_cursor_type.
13763 Remove unused local variables cursor_non_selected, active_cursor.
13764 Redraw cursor if hbar cursor width changes.
13765 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
13766
13767 * macterm.h (enum text_cursor_kinds): Removed.
13768 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
13769 <blink_off_cursor, blink_off_cursor_width>: Members removed.
13770 (FRAME_DESIRED_CURSOR): Macro removed.
13771
13772 * w32fns.c (Vblink_cursor_alist): Removed.
13773 (Qbar, Qhbar, Qbox, Qhollow): Removed.
13774 (syms_of_w32fns): Don't intern, staticpro, or define them.
13775 (x_specified_cursor_type): Removed.
13776 (x_set_cursor_type): Use set_frame_cursor_types.
13777
13778 * w32term.c (x_specified_cursor_type): Remove prototype.
13779 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
13780 (x_display_and_set_cursor): Use get_window_cursor_type.
13781 Remove unused local variables cursor_off_state.
13782 Redraw cursor if hbar cursor width changes.
13783 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
13784
13785 * w32term.h (enum text_cursor_kinds): Removed.
13786 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
13787 <blink_off_cursor, blink_off_cursor_width>: Members removed.
13788 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
13789 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
13790 (struct w32_display_info) <x_highlight_frame>: Renamed member from
13791 w32_highlight_frame.
13792
13793 * xfns.c (Vblink_cursor_alist): Removed.
13794 (Qbar, Qhbar, Qbox, Qhollow): Removed.
13795 (syms_of_xfns): Don't intern, staticpro, or define them.
13796 (x_specified_cursor_type): Removed.
13797 (x_set_cursor_type): Use set_frame_cursor_types.
13798
13799 * xterm.c (x_specified_cursor_type): Remove prototype.
13800 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
13801 (x_display_and_set_cursor): Use get_window_cursor_type.
13802 Remove unused local variables cursor_off_state.
13803 Redraw cursor if hbar cursor width changes.
13804
13805 * xterm.h (enum text_cursor_kinds): Removed.
13806 (struct output_x) <current_cursor, desired_cursor, cursor_width>
13807 <blink_off_cursor, blink_off_cursor_width>: Members removed.
13808 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
13809 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
13810 (x_specified_cursor_type): Remove prototype.
13811
13812 2002-08-28 Richard M. Stallman <rms@gnu.org>
13813
13814 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
13815 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
13816 (Vblink_cursor_alist): New variable.
13817 (syms_of_w32fns): Initialize and defvar it.
13818 (x_specified_cursor_type): Recognize Qbox for filled box.
13819 Exceptions are hollow boxes.
13820 (Qbox, Qhollow): New variables.
13821 (syms_of_w32fns): Initialize and staticpro them.
13822
13823 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
13824 New macros.
13825 (struct w32_output): New fields blink_off_cursor,
13826 blink_off_cursor_width.
13827 (FRAME_CURSOR_WIDTH): New macro.
13828
13829 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
13830 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
13831
13832 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
13833 for bar cursor.
13834
13835 * w32term.c (expose_overlaps): New function.
13836 (expose_window): Use it to fix the display of overlapping rows.
13837
13838 2002-08-28 Simon Josefsson <jas@extundo.com>
13839
13840 * xfns.c (Fx_open_connection): Improve help when X connection
13841 fails, xhost is insecure and xauth is better.
13842
13843 2002-08-28 Juanma Barranquero <lektu@terra.es>
13844
13845 * makefile.w32-in: Add missing dependencies on w32term.h and
13846 composite.h.
13847
13848 * emacs.c (USAGE1): Add missing newline.
13849
13850 2002-08-27 Andrew Choi <akochoi@shaw.ca>
13851
13852 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
13853
13854 2002-08-27 Richard M. Stallman <rms@gnu.org>
13855
13856 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
13857 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
13858 (Vblink_cursor_alist): New variable.
13859 (syms_of_xfns): Initialize and defvar it.
13860 (x_specified_cursor_type): Recognize Qbox for filled box.
13861 Exceptions are hollow boxes.
13862 (Qbox, Qhollow): New variables.
13863 (syms_of_xfns): Initialize and staticpro them.
13864
13865 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
13866 New macros.
13867 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
13868
13869 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
13870 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
13871
13872 * emacs.c (main): Handle --script.
13873 (USAGE1): Mention --script.
13874 (standard_args): Define sort order for --script.
13875
13876 2002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
13877
13878 * xdisp.c (redisplay_updating_p): Variable removed.
13879 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
13880 New variables.
13881 (init_iterator): Don't free realized faces if
13882 inhibit_free_realized_faces is set.
13883 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
13884 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
13885 initialize Qinhibit_free_realized_faces.
13886
13887 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
13888 when iterator is adding glyphs to a glyph matrix.
13889
13890 2002-08-27 Kenichi Handa <handa@etl.go.jp>
13891
13892 * xdisp.c (get_next_display_element): In unibyte case, don't use
13893 octal form for such eight-bit characters that can be converted to
13894 multibyte char.
13895
13896 2002-08-26 Kim F. Storm <storm@cua.dk>
13897
13898 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
13899 foreground and background colors. From Joe Buehler.
13900
13901 2002-08-26 Miles Bader <miles@gnu.org>
13902
13903 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
13904
13905 2002-08-25 Andrew Choi <akochoi@shaw.ca>
13906
13907 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
13908 defined instead of MAC_OSX.
13909
13910 * s/darwin.h (select): Define select to sys_select only if
13911 HAVE_CARBON is defined.
13912 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
13913 (DONT_REOPEN_PTY): #def it.
13914
13915 * macterm.c (XTread_socket): Remove code to call
13916 SendEventToEventTarget for keys with command modifiers when
13917 mac_command_key_is_meta is nil.
13918
13919 2002-08-24 Andreas Schwab <schwab@suse.de>
13920
13921 * eval.c (Fdefvar): Fix last change.
13922
13923 2002-08-23 Richard M. Stallman <rms@gnu.org>
13924
13925 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
13926 Record variables in load history as (defvar . VAR).
13927 (Fdefvar): Don't record in load history if no initial value.
13928 (Qdefvar): New variable.
13929 (syms_of_eval): Init and staticpro it.
13930
13931 * lread.c (syms_of_lread): Doc fix.
13932 (build_load_history): Use Fmember to see if a definition
13933 is already in the Vload_history element.
13934
13935 * process.c (Fstart_process): Remove /: from program name.
13936
13937 * emacs.c (decode_env_path): Don't add /: if file name handler
13938 has a `safe-magic' property.
13939
13940 * callproc.c (Fcall_process): Remove /: from program name.
13941
13942 2002-08-23 Stefan Monnier <monnier@cs.yale.edu>
13943
13944 * regex.c (PATFETCH): Remove the translating fetch.
13945 (PATFETCH_RAW): Rename to PATFETCH.
13946 (set_image_of_range): New fun.
13947 (SET_RANGE_TABLE_WORK_AREA): Use it.
13948 (regex_compile): Don't translate the pattern chars so eagerly.
13949 Only do it when inserting an `exactn' bytecode or when handling
13950 a char-range.
13951 (mutually_exclusive_p): Avoid empty statement.
13952
13953 2002-08-22 Kim F. Storm <storm@cua.dk>
13954
13955 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
13956 end up on a partially visible line; this reverts a specific part
13957 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
13958 display error which has been reported several times now.
13959 However it introduces the problem that changes was supposed to fix.
13960 See my comments in the source if you want to debug this further.
13961
13962 2002-08-20 Kenichi Handa <handa@etl.go.jp>
13963
13964 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
13965
13966 2002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
13967
13968 * msdos.c (croak): Add `void' to definition.
13969
13970 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
13971 Don't define them, they are defined in msdos.c.
13972
13973 * mem-limits.h [MSDOS]: Declare etext.
13974
13975 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
13976 `const' since CORRECT_DIR_SEPS modifies its target.
13977
13978 2002-08-19 Kim F. Storm <storm@cua.dk>
13979
13980 * keyboard.c (Fclear_this_command_keys): Add optional arg
13981 KEEP-RECORD to avoid clearing lossage when we just want to clear
13982 the current key sequence (kmacro needs this).
13983
13984 2002-08-19 Kenichi Handa <handa@localhost>
13985
13986 * composite.c (run_composition_function): Call FUNC if it is fboundp.
13987
13988 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
13989 cons, return Qnil.
13990
13991 2002-08-17 Richard M. Stallman <rms@gnu.org>
13992
13993 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
13994
13995 * sysdep.c [!VMS]: Include sys/files.h.
13996
13997 * editfns.c (save_restriction_restore): Defend from unchained marker.
13998
13999 * buffer.c (overlays_at): Handle extending vec uniformly.
14000 (overlays_in): Handle extending vec from length 0 as in overlays_at.
14001
14002 2002-08-15 Andrew Choi <akochoi@shaw.ca>
14003
14004 * mac.c (init_mac_osx_environment): New function.
14005
14006 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
14007
14008 2002-08-14 Kim F. Storm <storm@cua.dk>
14009
14010 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
14011 executing macro before appending to it (when used from Lisp).
14012 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
14013 which is called prior to each iteration of macro (for kmacro.el).
14014 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
14015
14016 * lisp.h (Fexecute_kbd_macro): Update prototype.
14017
14018 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
14019
14020 2002-08-14 Kenichi Handa <handa@etl.go.jp>
14021
14022 * xselect.c (QUTF8_STRING): New variable.
14023 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
14024 (x_atom_to_symbol): Likewise.
14025 (x_get_local_selection): New argument local_request. If it is
14026 nonzero, call handler_fn with the second arg nil.
14027 (x_handle_selection_request): Call x_get_local_selection with
14028 local_request 0.
14029 (lisp_data_to_selection_data): Don't encode the string here.
14030 (Fx_get_selection_internal): Call x_get_local_selection with
14031 local_request 1.
14032 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
14033
14034 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
14035
14036 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
14037
14038 2002-08-13 Richard M. Stallman <rms@gnu.org>
14039
14040 * minibuf.c (Fminibufferp): New function.
14041 (syms_of_minibuf): Defsubr it.
14042 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
14043
14044 2002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
14045
14046 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
14047
14048 2002-08-12 Richard M. Stallman <rms@gnu.org>
14049
14050 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
14051 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
14052 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
14053 already.
14054
14055 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
14056
14057 2002-08-11 Andrew Choi <akochoi@shaw.ca>
14058
14059 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
14060 (Vmac_pass_command_to_system): New variable.
14061 (Vmac_pass_control_to_system): New variable.
14062 (do_mouse_moved): Check wp with is_emacs_window.
14063 (XTread_socket): Check window_ptr with is_emacs_window.
14064 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
14065 events back to Mac Toolbox for processing, depending on values of
14066 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
14067 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
14068 Vmac_pass_control_to_system.
14069
14070 2002-08-10 Kenichi Handa <handa@etl.go.jp>
14071
14072 * coding.c (unencodable_char_position): New function.
14073 (Funencodable_char_position): New function.
14074 (syms_of_coding): Defsubr Funencodable_char_position.
14075
14076 2002-08-10 Andrew Choi <akochoi@shaw.ca>
14077
14078 * mac.c (sys_select) [MAC_OSX]: New function.
14079
14080 * macterm.c (MakeMeTheFrontProcess): New function.
14081 (mac_initialize): Call MakeMeTheFrontProcess.
14082
14083 * s/darwin.h: Define select to sys_select.
14084
14085 2002-08-09 Richard M. Stallman <rms@gnu.org>
14086
14087 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
14088
14089 2002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
14090
14091 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
14092 end of the buffer.
14093
14094 2002-08-08 Ken Raeburn <raeburn@mit.edu>
14095
14096 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
14097
14098 * puresize.h (BASE_PURESIZE): Increase to 910000.
14099
14100 2002-08-08 Kenichi Handa <handa@etl.go.jp>
14101
14102 * coding.c (Ffind_operation_coding_system): For write-region, if
14103 VISIT is a filename, make it the target.
14104
14105 2002-08-07 Richard M. Stallman <rms@gnu.org>
14106
14107 * alloc.c (mark_object): Detect long lists for debugging.
14108 (mark_object_loop_halt): New variable.
14109
14110 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
14111
14112 * data.c (Fmake_variable_frame_local): Doc fix.
14113
14114 2002-08-01 David Ponce <david@dponce.com>
14115
14116 * w32menu.c (local_heap, local_alloc, local_free): New macros.
14117 (malloc_widget_value, free_widget_value)
14118 (w32_free_submenu_strings): Use them.
14119
14120 (push_submenu_start, push_submenu_end, push_left_right_boundary)
14121 (push_menu_pane, push_menu_item, single_keymap_panes)
14122 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
14123 (single_submenu, set_frame_menubar)
14124 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
14125
14126 (Fx_popup_menu): Don't show pop up menu until preceding one is
14127 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
14128
14129 * w32menu.c: Changes adapted from xmenu.c
14130 (set_frame_menubar): First parse all submenus,
14131 then make widget_value trees from them.
14132 Don't allocate any widget_value objects
14133 until we are done with the parsing.
14134 (parse_single_submenu): New function.
14135 (digest_single_submenu): New function.
14136 (single_submenu): Function deleted, replaced by those two.
14137
14138 2002-08-04 Andrew Choi <akochoi@shaw.ca>
14139
14140 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
14141 returns a valid window pointer before proceeding for keyDown and
14142 autoKey events.
14143
14144 2002-08-03 Andrew Choi <akochoi@shaw.ca>
14145
14146 * macterm.c (USE_CARBON_EVENTS): New macro.
14147 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
14148 (x_iconify_frame): Call CollapseWindow.
14149 (Vmac_reverse_ctrl_meta): New variable.
14150 (Vmac_wheel_button_is_mouse_2): New variable.
14151 (init_mac_drag_n_drop): New function.
14152 (mac_do_receive_drag): New function.
14153 (mac_handle_service_event): New function.
14154 (init_service_handler): New function.
14155 (mac_to_emacs_modifiers): New function.
14156 (mac_event_to_emacs_modifiers): New function.
14157 (mac_get_mouse_btn): New function.
14158 (mac_convert_event_ref): New function.
14159 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
14160 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
14161 mac_get_mouse_btn.
14162 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
14163
14164 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
14165 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
14166 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
14167 TOOL_BAR_EVENT for MAC_OS as well.
14168 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
14169 as for WINDOWS_NT.
14170 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
14171
14172 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
14173
14174 2002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
14175
14176 * xdisp.c (forward_to_next_line_start): Fix a condition that
14177 lead to a newline being skipped.
14178
14179 2002-08-02 Andrew Choi <akochoi@shaw.ca>
14180
14181 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
14182
14183 2002-08-01 Richard M. Stallman <rms@gnu.org>
14184
14185 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
14186
14187 2002-07-31 Andrew Choi <akochoi@shaw.ca>
14188
14189 * macfns.c: #undef init_process before #define-ing it.
14190
14191 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
14192 HAVE_CARBON is defined.
14193
14194 2002-07-31 Richard M. Stallman <rms@gnu.org>
14195
14196 * xmenu.c (set_frame_menubar): First parse all submenus,
14197 then make widget_value trees from them.
14198 Don't allocate any widget_value objects
14199 until we are done with the parsing.
14200 (parse_single_submenu): New function.
14201 (digest_single_submenu): New function.
14202 (single_submenu): Function deleted, replaced by those two.
14203
14204 2002-07-30 Juanma Barranquero <lektu@terra.es>
14205
14206 * w32proc.c (syms_of_ntproc): Fix docstring of
14207 `w32-get-true-file-attributes'.
14208
14209 2002-07-28 Richard M. Stallman <rms@gnu.org>
14210
14211 * s/hpux8.h (HPUX8): Define this before including hpux.h.
14212 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
14213
14214 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
14215
14216 * keyboard.c (make_lispy_event):
14217 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
14218 Explicitly clear up_modifier in event->modifiers.
14219
14220 2002-07-27 Richard M. Stallman <rms@gnu.org>
14221
14222 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
14223
14224 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
14225 for bar cursor.
14226
14227 2002-07-26 Kenichi Handa <handa@etl.go.jp>
14228
14229 * coding.c (detect_coding_iso2022): While checking a byte sequence
14230 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
14231 it in the normal loop.
14232
14233 2002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
14234
14235 * xterm.c (expose_overlaps): New function.
14236 (expose_window): Use it to fix the display of overlapping rows.
14237
14238 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
14239
14240 2002-07-23 Ken Raeburn <raeburn@gnu.org>
14241
14242 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
14243 since it only depends on XUINT.
14244
14245 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
14246 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
14247 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
14248 Macros deleted.
14249
14250 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
14251 its value over other approaches.
14252 * sysdep.c (start_of_data): Don't define the function if a macro
14253 form has been defined.
14254
14255 2002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
14256
14257 * xdisp.c (redisplay_updating_p): New variable.
14258 (init_iterator): Don't free realized faces when
14259 redisplay_updating_p is set.
14260 (redisplay_internal): Set redisplay_updating_p while updating
14261 the display.
14262
14263 2002-07-23 Richard M. Stallman <rms@gnu.org>
14264
14265 * editfns.c (Fmessage): Treat "" like nil.
14266
14267 2002-07-23 Kenichi Handa <handa@etl.go.jp>
14268
14269 * xdisp.c (face_before_or_after_it_pos):
14270 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
14271
14272 2002-07-22 Juanma Barranquero <lektu@terra.es>
14273
14274 * callproc.c (init_callproc) [DOS_NT]:
14275 Initialize Vshared_game_score_directory to nil.
14276 (syms_of_callproc) [DOS_NT]: Likewise.
14277
14278 2002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
14279
14280 * xdisp.c (display_line): Replace an abort with xassert.
14281
14282 2002-07-21 Richard M. Stallman <rms@gnu.org>
14283
14284 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
14285 and END_UNCHANGED when setting buffer_unchanged_p.
14286 Use current_matrix_up_to_date_p to decide whether to use
14287 try_cursor_movement.
14288
14289 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
14290
14291 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
14292
14293 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
14294 Set to nil if dir does not exist.
14295 (syms_of_callproc): Init unconditionally and simply.
14296
14297 * buffer.c (Fbuffer_list): Doc fix.
14298
14299 2002-07-21 Ken Raeburn <raeburn@gnu.org>
14300
14301 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
14302
14303 * buffer.c (mmap_realloc): When shrinking, make sure number of
14304 pages to unmap is rounded towards zero.
14305
14306 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
14307 (XSETINT): Deleted.
14308
14309 * m/att3b.h (XINT): Don't define.
14310 (VALBITS, VALMASK, XTYPE): Deleted.
14311 (DATA_SEG_BITS): Define.
14312 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
14313 ARRAY_MARK_FLAG): Deleted.
14314 (DATA_SEG_BITS): Define.
14315 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
14316 (DATA_SEG_BITS): Define.
14317
14318 2002-07-20 Richard M. Stallman <rms@gnu.org>
14319
14320 * print.c (print_error_message): New args CONTEXT and CALLER.
14321 Calls changed.
14322
14323 * lisp.h (print_error_message): Declare new args.
14324
14325 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
14326 and CONTEXT to print_error_message, don't print them here.
14327 For a Quit, don't use Vsignaling_function.
14328 Call message_log_maybe_newline.
14329
14330 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
14331
14332 2002-07-20 Kim F. Storm <storm@cua.dk>
14333
14334 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
14335
14336 2002-07-19 Ken Raeburn <raeburn@gnu.org>
14337
14338 * bytecode.c (struct byte_stack): Pointers into byte string now
14339 point to const.
14340 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
14341 const.
14342 * charset.h (BCOPY_SHORT): Source pointer now points to const.
14343 * coding.c (encode_eol, detect_coding, detect_eol):
14344 (decode_coding, encode_coding, detect_coding_system):
14345 Source strings now treated as const.
14346 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
14347 modify Lisp string contents.
14348 * coding.h (decode_coding, encode_coding, detect_coding,
14349 detect_eol): Declarations updated.
14350 * composite.c (compose_chars_in_text): Treat Lisp string contents
14351 as const.
14352 * dispnew.c (safe_bcopy): Source pointer now points to const.
14353 * lisp.h (STRING_COPYIN): New macro.
14354 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
14355 (internal_with_output_to_temp_buffer): Declarations updated.
14356 * print.c (temp_output_buffer_setup):
14357 (internal_with_output_to_temp_buffer): Buffer name argument is now
14358 pointer to const.
14359 * sound.c (struct sound_device): Function pointer field "write"
14360 buffer argument now points to const.
14361 (vox_write): Buffer argument points to const.
14362 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
14363 contents as const.
14364 * sysdep.c (emacs_write): Buffer pointer now const.
14365 * term.c (encode_terminal_code): Buffer pointer now const.
14366 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
14367 (x_face_list_fonts, x_update_menu_appearance):
14368 (hash_string_case_insensitive): Treat Lisp string contents as const.
14369
14370 2002-07-19 Juanma Barranquero <lektu@terra.es>
14371
14372 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
14373
14374 * fileio.c (syms_of_fileio): Likewise.
14375 (Ffile_name_as_directory): Fix argument name in docstring.
14376 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
14377
14378 2002-07-18 Richard M. Stallman <rms@gnu.org>
14379
14380 * data.c (Fdefalias): Doc fix.
14381
14382 2002-07-17 Dave Love <fx@gnu.org>
14383
14384 * intervals.h (text_property_stickiness): Use P_.
14385
14386 * ccl.c: Remove `emacs' conditionals.
14387 (ccl_backtrace_table): Fix size spec.
14388 (ccl_driver): Fix type errors.
14389
14390 2002-07-16 Ken Raeburn <raeburn@gnu.org>
14391
14392 * alloc.c (xstrdup, make_string, make_unibyte_string)
14393 (make_multibyte_string, build_string): String pointer args now
14394 point to const.
14395 * charset.c (find_charset_in_text, c_string_width):
14396 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
14397 * fileio.c (report_file_error):
14398 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
14399 (count_combining_before, count_combining_after, insert_1_both):
14400 (insert, insert_and_inherit, insert_string):
14401 (insert_before_markers, insert_before_markers_and_inherit):
14402 * lread.c (intern, oblookup, hash_string):
14403 * minibuf.c (temp_echo_area_glyphs):
14404 * search.c (fast_c_string_match_ignore_case):
14405 * sysdep.c (emacs_open, set_file_times):
14406 * xfaces.c (xstricmp):
14407 * xdisp.c (store_frame_title, string_char_and_length):
14408 (message_dolog, message2, message2_nolog, set_message): Likewise.
14409 (set_message_1): Cast message string argument to const pointer.
14410 * editfns.c (general_insert_function): Insertion function now
14411 takes pointer to const for input data.
14412 * charset.h (find_charset_in_text, c_string_width):
14413 (parse_str_as_multibyte): Declarations updated.
14414 * dispextern.h (xstricmp): Declaration updated.
14415 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
14416 (count_size_as_multibyte, count_combining_before):
14417 (count_combining_after, insert_1, insert_1_both, message_dolog):
14418 (insert, insert_and_inherit, insert_before_markers)
14419 (insert_before_markers_and_inherit, set_message, message2):
14420 (message2_dolog, build_string, make_string, make_unibyte_string):
14421 (make_multibyte_string, intern, oblookup, report_file_error):
14422 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
14423 (emacs_open, xstrdup): Declarations updated.
14424 * systime.h (set_file_times): Declaration updated.
14425
14426 * charset.c (find_charset_in_text, lisp_string_width): Use const
14427 for pointer to lisp string data.
14428 * charset.h (FETCH_STRING_CHAR_ADVANCE):
14429 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
14430 * coding.c (Ffind_coding_systems_region_interval):
14431 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
14432 (Fmake_directory_internal, Fdelete_directory):
14433 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
14434 * fontset.c (font_family_registry, fs_query_fontset):
14435 (list_fontsets):
14436 * frame.c (Fframe_parameter):
14437 * keyboard.c (cmd_error_internal):
14438 * keymap.c (Fdescribe_buffer_bindings):
14439 * lread.c (complete_filename_p, openp):
14440 * minibuf.c (Fminibuffer_complete_word):
14441 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
14442 (face_before_or_after_it_pos, next_element_from_string):
14443 (get_overlay_arrow_glyph_row, display_mode_element):
14444 (decode_mode_spec_coding):
14445 * xterm.c (same_x_server): Likewise.
14446
14447 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
14448 settings of non-existent fields.
14449
14450 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
14451 copy a lisp value.
14452
14453 * lread.c (Fintern_soft): Use string macros instead of
14454 Lisp_String fields.
14455 * keyboard.c (echo_char, parse_modifiers_uncached):
14456 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
14457 * textprop.c (validate_interval_range, interval_of): Likewise.
14458
14459 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
14460
14461 * charset.h (FETCH_STRING_CHAR_ADVANCE)
14462 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
14463 XSTRING()->size_byte.
14464
14465 * lisp.h (SDATA, SREF): Produce rvalue.
14466 (SSET): New macro.
14467 * alloc.c (make_event_array): Use SSET for storing into a string.
14468 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
14469 a string.
14470 * casefiddle.c (casify_object): Use SSET.
14471 * charset.h (FETCH_STRING_CHAR_ADVANCE)
14472 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
14473 address of string contents.
14474 * data.c (Faref): Use SDATA.
14475 (Faset): Use SDATA, SSET.
14476 * dired.c (directory_files_internal): Use SSET.
14477 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
14478 (Fread_file_name): Use SREF, SSET.
14479 * fns.c (concat): Use SSET.
14480 (concat, Fdelete): Use SDATA.
14481 * insdel.c (insert_from_string_1): Use SDATA.
14482 * keyboard.c (Fevent_convert_list): Use SREF.
14483 * lread.c (Fload): Use SDATA, SSET.
14484 * macfns.c (validate_x_resource_name): Use SSET.
14485 * process.c (status_message): Use SSET.
14486 * search.c (wordify): Use SDATA.
14487 (Freplace_match): Use SREF.
14488 * w32fns.c (validate_x_resource_name): Use SSET.
14489 * xfns.c (validate_x_resource_name): Use SSET.
14490 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
14491
14492 2002-07-16 Richard M. Stallman <rms@gnu.org>
14493
14494 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
14495
14496 * xdisp.c (reconsider_clip_changes):
14497 Don't test prevent_redisplay_optimizations_p.
14498 (redisplay_internal): Test prevent_redisplay_optimizations_p
14499 along with clip_changed in some cases.
14500 (try_window_id): Likewise.
14501 (redisplay_window): New local var buffer_unchanged_p.
14502
14503 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
14504
14505 * process.c (create_process): Test USG_SUBTTY_WORKS.
14506 (process_send_signal): Clean up handling of GID.
14507 Detect errors in ioctls meant to set GID.
14508
14509 * window.c (temp_output_buffer_show):
14510 Don't set prevent_redisplay_optimizations_p.
14511
14512 2002-07-15 Juanma Barranquero <lektu@terra.es>
14513
14514 * eval.c (Fdefvaralias): Add docstring argument.
14515
14516 2002-07-15 Ken Raeburn <raeburn@gnu.org>
14517
14518 * lisp.h (STRING_INTERVALS): Produce rvalue.
14519 (STRING_SET_INTERVALS): New macro.
14520 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
14521 * fns.c (Fstring_as_multibyte): Likewise.
14522 * intervals.c (balance_possible_root_interval, delete_interval)
14523 (create_root_interval, copy_intervals_to_string): Likewise.
14524 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
14525 instead of 0.
14526
14527 2002-07-14 Ken Raeburn <raeburn@gnu.org>
14528
14529 * lisp.h (STRING_SET_CHARS): New macro.
14530 (SCHARS, SBYTES): Produce rvalues.
14531 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
14532 * fns.c (concat): Likewise.
14533 * lread.c (read_vector): Likewise.
14534
14535 * lisp.h (SMBP): Delete. All uses changed to STRING_MULTIBYTE.
14536 (STRING_SET_UNIBYTE): New macro.
14537 (SET_STRING_BYTES): Delete. Callers (all of which supplied a
14538 length of -1) changed to use STRING_SET_UNIBYTE.
14539 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
14540 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
14541 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
14542 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
14543 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
14544 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
14545 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
14546 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
14547 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
14548 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
14549 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
14550 STRING_BYTES or indirection changed to SCHARS, SBYTES,
14551 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
14552 unchanged for now.
14553
14554 2002-07-13 Kim F. Storm <storm@cua.dk>
14555
14556 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
14557
14558 2002-07-12 Richard M. Stallman <rms@gnu.org>
14559
14560 * fileio.c (Fwrite_region): Doc fix.
14561
14562 * print.c (print_error_message): Don't handle Vsignaling_function here.
14563
14564 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
14565 (command_loop_1): Avoid certain actions after memory-full error.
14566
14567 * eval.c (Fsignal): Don't call cancel_hourglass.
14568 For a memory-full error, don't call Vsignal_hook_function
14569 and don't set Vsignaling_function.
14570
14571 * process.c (process_send_signal): Add abort call.
14572
14573 2002-07-11 Markus Rost <rost@math.ohio-state.edu>
14574
14575 * keymap.c (Fkey_binding): Fix typo.
14576
14577 2002-07-11 Richard M. Stallman <rms@gnu.org>
14578
14579 * alloc.c (Vmemory_full): New variable.
14580 (Vmemory_signal_data): Rename from memory_signal_data.
14581 Uses changed.
14582 (syms_of_alloc): Defvar them.
14583 (memory_full, buffer_memory_full): Set Vmemory_full.
14584
14585 * lisp.h (Vmemory_full): Add declaration.
14586 (current_column, indented_beyond_p): Change declaration.
14587
14588 * indent.c (last_known_column): Declare as double, not float.
14589 (current_column, current_column_1, string_display_width)
14590 (position_indentation): Return `double'.
14591 (indented_beyond_p): Arg `column' is `double'. Callers changed.
14592
14593 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
14594 (back_to_previous_visible_line_start)
14595 (reseat_at_next_visible_line_start, next_element_from_buffer):
14596 Use `double', not `float', when calling indented_beyond_p.
14597
14598 * s/hpux11.h (BROKEN_SA_RESTART): Define.
14599
14600 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
14601
14602 2002-07-11 Juanma Barranquero <lektu@terra.es>
14603
14604 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
14605 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
14606 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
14607 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
14608 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
14609 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
14610
14611 2002-07-10 Juanma Barranquero <lektu@terra.es>
14612
14613 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
14614 All callers changed.
14615
14616 2002-07-09 Stefan Monnier <monnier@cs.yale.edu>
14617
14618 * data.c (Fdefalias): Add an optional `docstring' argument.
14619 (set_internal, Fsetq_default): Use XCAR/XCDR.
14620
14621 * composite.c (HASH_VALUE, HASH_KEY):
14622 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
14623
14624 2002-07-09 Kenichi Handa <handa@etl.go.jp>
14625
14626 * callproc.c (Fcall_process): Fix previous change.
14627
14628 2002-07-07 Stefan Monnier <monnier@cs.yale.edu>
14629
14630 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
14631 Add support for hash-tables.
14632 (Ftry_completion): Return t even if the string appears multiple times.
14633
14634 * fns.c (Fnconc): Use XCDR.
14635 (Fprovide): Use CONSP and XCDR.
14636 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
14637 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
14638 (Fmake_hash_table): Accept `:size nil'.
14639 (Fmakehash): Delete: moved to subr.el.
14640 (syms_of_fns): Don't defsubr makehash.
14641
14642 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
14643 (HASH_TABLE_SIZE): Move from fns.c.
14644
14645 2002-07-07 Richard M. Stallman <rms@gnu.org>
14646
14647 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
14648 Instead just return 0 when there is something to be done.
14649 (try_scrolling): If make_cursor_line_fully_visible returns 0,
14650 retry scrolling as if cursor were off the bottom.
14651 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
14652 return CURSOR_MOVEMENT_MUST_SCROLL.
14653 (redisplay_window): If make_cursor_line_fully_visible returns 0,
14654 go to try_to_scroll.
14655
14656 * buffer.c (Fbuffer_local_value): Store current value into its binding
14657 so we get the up-to-date value for the binding that is loaded.
14658
14659 * eval.c (Fdefmacro): Doc fix.
14660
14661 2002-07-05 Dave Love <fx@gnu.org>
14662
14663 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
14664 correctly.
14665
14666 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
14667 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
14668 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
14669 CCL_LookupCharConstTbl.
14670 (syms_of_ccl): Defvar translation-hash-table-vector.
14671
14672 2002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14673
14674 * xdisp.c: Remove unused variable `face'.
14675
14676 2002-07-04 Juanma Barranquero <lektu@terra.es>
14677
14678 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
14679 obsolescence information.
14680
14681 2002-07-03 Andrew Choi <akochoi@shaw.ca>
14682
14683 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
14684 pattern. Search cache first.
14685 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
14686 for Japanese font.
14687 (XLoadQueryFont): Use it.
14688
14689 2002-07-02 Richard M. Stallman <rms@gnu.org>
14690
14691 * keymap.c (Fdefine_key): Doc fix.
14692
14693 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
14694
14695 2002-07-02 Juanma Barranquero <lektu@terra.es>
14696
14697 * keymap.c (syms_of_keymap): Fix typo.
14698
14699 2002-07-01 Andrew Choi <akochoi@shaw.ca>
14700
14701 * s/darwin.h: Define POSIX_SIGNALS.
14702
14703 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
14704 and FSRefMakePath to convert FSSpec returned with Apple Event to
14705 Posix pathname.
14706 (mac_initialize) [TARGET_API_MAC_CARBON]:
14707 Call init_required_apple_events and disable the `Quit' menu item
14708 provided automatically by the Carbon Toolbox.
14709
14710 2002-07-01 Dave Love <fx@gnu.org>
14711
14712 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
14713 for K&R.
14714
14715 * xterm.c: Fix prototype for K&R.
14716
14717 * term.c (costs_set): Declare static, non-initialized for pcc.
14718
14719 2002-07-01 Richard M. Stallman <rms@gnu.org>
14720
14721 * keyboard.c (timer_last_idleness_start_time): New variable.
14722 (timer_start_idle): Set that.
14723 (read_key_sequence): Use that to reset timer_idleness_start_time
14724 to previous value.
14725
14726 * window.c (Frecenter): With arg, set optional_new_start.
14727
14728 * xdisp.c (redisplay_internal): Make optional_new_start really work.
14729
14730 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
14731 buffer for completion.
14732
14733 2002-06-29 Ken Raeburn <raeburn@gnu.org>
14734
14735 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
14736
14737 2002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14738
14739 * keyboard.c (readable_filtered_events): New function that filters
14740 FOCUS_IN_EVENT depending on parameter.
14741 (readable_events): Calls readable_filtered_events, not filtering
14742 FOCUS_IN_EVENT.
14743 (get_filtered_input_pending): New function, filtering parameter passed
14744 to readable_filtered_events.
14745 (get_input_pending): Calls get_filtered_input_pending, not filtering
14746 FOCUS_IN_EVENT.
14747 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
14748 FOCUS_IN_EVENT.
14749
14750 * xterm.h (struct x_output): Add focus_state.
14751
14752 * xterm.c (x_focus_changed): New function.
14753 (x_detect_focus_change): New function.
14754 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
14755 EnterNotify and LeaveNotify to track X focus changes.
14756
14757 2002-06-28 Andreas Schwab <schwab@suse.de>
14758
14759 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
14760
14761 2002-06-27 Kim F. Storm <storm@cua.dk>
14762
14763 * xdisp.c (mode_line_string_list, mode_line_string_face)
14764 (mode_line_string_face_prop): New variables.
14765 (store_mode_line_string): New function.
14766 (display_mode_element): Use store_mode_line_string to
14767 add mode-line string elements to mode_line_string_list
14768 when mode_line_string_list is non-nil.
14769 (Fformat_mode_line): Now returns propertized string by
14770 default. New arg NO-PROPS to ignore properties.
14771 (decode_mode_spec): Only add two dashes for %- in propertized
14772 mode-line string.
14773 (syms_of_xdisp): Init and staticpro mode_line_string_list.
14774
14775 2002-06-27 Stefan Monnier <monnier@cs.yale.edu>
14776
14777 * minibuf.c (minibuffer_completion_contents): Add return type.
14778
14779 2002-06-27 Juanma Barranquero <lektu@terra.es>
14780
14781 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
14782
14783 2002-06-26 Juanma Barranquero <lektu@terra.es>
14784
14785 * fileio.c (read_file_name_cleanup): Add missing return.
14786
14787 2002-06-26 Richard M. Stallman <rms@gnu.org>
14788
14789 * window.c (Frecenter): Don't set force_start flag.
14790
14791 * minibuf.c (do_completion, Fminibuffer_complete_word)
14792 (Fminibuffer_completion_help): Complete just the text before point.
14793 (minibuffer_completion_contents): New function.
14794
14795 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
14796
14797 * frame.c (frames_bury_buffer): Function deleted.
14798
14799 2002-06-25 Miles Bader <miles@gnu.org>
14800
14801 * callint.c (Fcall_interactively): When checking to see if doprnt hit
14802 the end of callint_message, allow for a terminating '\0'.
14803
14804 2002-06-24 Juanma Barranquero <lektu@terra.es>
14805
14806 * w32select.c: Include composite.h.
14807
14808 * w16select.c: Likewise.
14809
14810 2002-06-24 Kenichi Handa <handa@etl.go.jp>
14811
14812 * callproc.c (Fcall_process): If code detection is necessary,
14813 call detect_coding directly here.
14814
14815 * coding.c (detect_eol): Preserve coding->cmp_data.
14816
14817 * w16select.c (Fw16_get_clipboard_data):
14818 * w32fns.c (w32_to_x_font):
14819 * w32select.c (Fw32_get_clipboard_data):
14820 * xselect.c (selection_data_to_lisp_data):
14821 * xterm.c (XTread_socket): Disable composition handling.
14822
14823 2002-06-24 Stefan Monnier <monnier@cs.yale.edu>
14824
14825 * print.c (temp_output_buffer_setup): Kill all local variables.
14826
14827 2002-06-22 Stefan Monnier <monnier@cs.yale.edu>
14828
14829 * lread.c (Fread): Remove redundant and imprecise declaration.
14830
14831 * xfns.c (check_x_display_info): Use check_x_frame.
14832
14833 * .gdbinit (xprintsym): Use the new `xname' field.
14834 (xsymbol): Use it.
14835
14836 2002-06-22 Jason Rumney <jasonr@gnu.org>
14837
14838 * w32fns.c (file_dialog_callback): New function.
14839 (Fx_file_dialog): Allow selecting directories as well as files.
14840
14841 2002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14842
14843 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
14844 OpenBSD. Add support for mipseb-*-netbsd* machines.
14845
14846 2002-06-17 Andrew Choi <akochoi@shaw.ca>
14847
14848 * macterm.c (mac_scroll_area): Set foreground and backcolor to
14849 black and white before scrolling. Restore frame background and
14850 foreground color after scrolling.
14851 (do_window_update): Call XClearWindow before calling expose_frame.
14852 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
14853 FRAME_FOREGROUND_PIXEL of frame.
14854
14855 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
14856 test Mac command key as <ALT> key.
14857
14858 2002-06-17 Stefan Monnier <monnier@cs.yale.edu>
14859
14860 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
14861
14862 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
14863 Lookup keys in function-key-map immediately so that key-translation-map
14864 can be applied earlier.
14865 Remove function_key_possible and key_translation_possible, replaced
14866 by checking `keytran_start < t'.
14867
14868 * .gdbinit (xsymbol): Use the new `xname' field.
14869
14870 2002-06-17 Andrew Choi <akochoi@shaw.ca>
14871
14872 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
14873 test Mac command key as <ALT> key.
14874
14875 * mac.c (do_applescript): Call initialize_applescript if necessary
14876 when first called. Dispose of result_desc only when there is no error.
14877 (Fdo_applescript): Use %d format specifier instead of %ld.
14878
14879 2002-06-16 Andrew Choi <akochoi@shaw.ca>
14880
14881 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
14882 of FrontWindow for cases keyDown and autoKey.
14883
14884 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
14885 Vdefault_fontset to Monaco with mac-roman coding.
14886
14887 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
14888 init_process before and after inclusion of Carbon/Carbon.h, resp.
14889
14890 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
14891 cursor_gc.
14892 (add_font_name_table_entry): New function.
14893 (init_font_name_table): Use add_font_name_table_entry; add italic,
14894 bold, and bold-italic entries for truetype fonts.
14895
14896 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
14897 for Mac too.
14898 (try_font_list) [MAC_OS]: If no font matches given registry, try
14899 fonts with any registry matching face_family.
14900 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
14901
14902 * s/darwin.h: If autoconf detects the Ncurses library, define
14903 LIBS_TERMCAP to -lncurses to use it.
14904
14905 2002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
14906
14907 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
14908
14909 2002-06-15 Richard M. Stallman <rms@gnu.org>
14910
14911 * window.c (Fset_window_configuration): Explicitly preserve
14912 the point value that new_current_buffer had at the start.
14913
14914 2002-06-14 Juanma Barranquero <lektu@terra.es>
14915
14916 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
14917 Fix typos.
14918
14919 2002-06-14 Kim F. Storm <storm@cua.dk>
14920
14921 * insdel.c (insert_1_both, insert_from_string_1)
14922 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
14923 insert happened in the end_unchanged region. Otherwise, the
14924 redisplay may be confused and duplicate the last line in the
14925 buffer [seen after save-buffer when require-final-newline==t].
14926
14927 2002-06-13 Jason Rumney <jasonr@gnu.org>
14928
14929 * w32.c (init_environment): Remove EMACSLOCKDIR.
14930 (stat): Swap _S_IFDIR and _S_IFREG.
14931
14932 2002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14933
14934 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
14935 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
14936 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
14937 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
14938 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
14939 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
14940 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
14941 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
14942 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
14943 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
14944 SELECTION_REQUEST_EVENT, selection_clear_event to
14945 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
14946 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
14947 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
14948 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
14949 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
14950 no_event to NO_EVENT.
14951
14952 2002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14953
14954 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
14955
14956 2002-06-12 Stefan Monnier <monnier@cs.yale.edu>
14957
14958 * intervals.c (textget): Don't forget to `return'.
14959 (lookup_char_property): Use XCAR/XCDR.
14960
14961 2002-06-12 Juanma Barranquero <lektu@terra.es>
14962
14963 * xdisp.c (Fformat_mode_line): Fix typo.
14964
14965 2002-06-12 Kim F. Storm <storm@cua.dk>
14966
14967 * xdisp.c (Fformat_mode_line): New function.
14968 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
14969 (store_frame_title_char, store_frame_title): Use unconditionally.
14970 (init_xdisp): Defsubr Fformat_mode_line.
14971 Initialize frame_title_buf etc. unconditionally.
14972
14973 2002-06-11 Stefan Monnier <monnier@cs.yale.edu>
14974
14975 * keyboard.c (read_key_sequence):
14976 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
14977 things through those maps after downcasing events.
14978 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
14979 applies after function-key-map.
14980 Make sure that keytran can be done in the middle in the sequence.
14981 Be careful not to throw away events past the one we downcase.
14982
14983 * lread.c (read_integer): Remove unused var `tem'.
14984 (read1): Fix int/Lisp_Object mixup.
14985
14986 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
14987
14988 2002-06-11 Richard M. Stallman <rms@gnu.org>
14989
14990 * keyboard.c (readable_events): Ignore any number of
14991 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
14992
14993 2002-06-09 Miles Bader <miles@gnu.org>
14994
14995 * xfaces.c (Ftty_supports_face_attributes_p): New function.
14996 (parse_rgb_list, tty_lookup_color): New functions.
14997 (tty_defined_color): Use `tty_lookup_color' to do all the work.
14998 (color_distance, Fcolor_distance): New functions.
14999 (TTY_SAME_COLOR_THRESHOLD): New macro.
15000 (Qtty_color_standard_values): New variable.
15001 (syms_of_xfaces): Initialize new vars & functions.
15002
15003 2002-06-08 Colin Walters <walters@verbum.org>
15004
15005 * textprop.c (Vchar_property_alias_alist): New variable.
15006 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
15007
15008 * intervals.c (lookup_char_property): New function for looking up
15009 overlay and text properties, created from textget.
15010 (textget): Use it.
15011
15012 * intervals.h (lookup_char_property): Declare.
15013 (Vchar_property_alias_alist): Declare.
15014
15015 * buffer.c (Foverlay_get): Use lookup_char_property.
15016
15017 2002-06-07 Sam Steingold <sds@gnu.org>
15018
15019 * xselect.c (lisp_data_to_selection_data): Fix last change:
15020 *data_ret is not a Lisp string, while unibyte_string is.
15021
15022 2002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
15023
15024 * xselect.c (lisp_data_to_selection_data): Fix last change:
15025 set size_ret.
15026
15027 2002-06-07 Andreas Schwab <schwab@suse.de>
15028
15029 * m/amdx86-64.h: New file.
15030
15031 2002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
15032
15033 * fns.c (Fstring_make_unibyte): Doc fix.
15034
15035 * xselect.c (lisp_data_to_selection_data): If the requested type
15036 is STRING, call string_make_unibyte to encode the selected text
15037 as a string.
15038
15039 * window.c (Fset_window_hscroll): Doc fix.
15040
15041 2002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15042
15043 * fileio.c (choose_write_coding_system):
15044 Call select-safe-coding-system properly.
15045
15046 2002-06-03 Richard M. Stallman <rms@gnu.org>
15047
15048 * xdisp.c (message_with_string): Error if STRING is not a string.
15049
15050 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
15051
15052 * fileio.c (choose_write_coding_system): Pass FILE arg to
15053 Vselect_safe_coding_system_function.
15054
15055 2002-06-03 Ken Raeburn <raeburn@gnu.org>
15056
15057 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
15058
15059 2002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
15060
15061 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
15062 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
15063 * keymap.c (describe_command): Likewise.
15064 * minibuf.c (read_minibuf): Likewise.
15065
15066 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
15067 Cast `current_column' return value to int.
15068 (back_to_previous_visible_line_start)
15069 (reseat_at_next_visible_line_start, next_element_from_buffer):
15070 Cast `indented_beyond_p' 3rd arg to float.
15071
15072 * indent.c (last_known_column): Now a float.
15073 (current_column_1, position_indentation, current_column)
15074 (string_display_width): Return float.
15075 (Fcurrent_column): Cast `current_column' return value to int.
15076 (Fcurrent_indentation): Cast `position_indentation' retval to int.
15077 (indented_beyond_p): Third arg now a float.
15078 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
15079
15080 * lisp.h (current_column): Now returns float.
15081 (indented_beyond_p): 3rd arg now a float.
15082
15083 2002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
15084
15085 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
15086 is Qcompound_text_with_extensions.
15087
15088 * xselect.c (lisp_data_to_selection_data): Always set selection
15089 type as string if x_encode_text returns streingp non-NULL.
15090
15091 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
15092
15093 2002-05-30 Richard M. Stallman <rms@gnu.org>
15094
15095 * window.c (Fset_window_configuration): Correct the handling
15096 of point in current buffer, to work with multiple windows.
15097
15098 2002-05-29 Colin Walters <walters@verbum.org>
15099
15100 * lread.c (Fread_from_string): Don't depend on order of evaluation
15101 for C function parameters.
15102
15103 2002-05-28 Richard M. Stallman <rms@gnu.org>
15104
15105 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
15106 way for blinked-off state and for a nonselected window.
15107
15108 * window.c (window_scroll_pixel_based): Don't call Fbolp;
15109 instead, see if the new start pos is at beginning of line.
15110
15111 * fileio.c (Fwrite_region): If START is a string, don't
15112 make any annotations.
15113
15114 * eval.c (syms_of_eval): Doc fix.
15115
15116 2002-05-28 Colin Walters <walters@debian.org>
15117
15118 * emacs.c (USAGE1): Add --no-splash.
15119 (standard_args): Ditto.
15120
15121 2002-05-28 Colin Walters <walters@gnu.org>
15122
15123 * lread.c (readchar_count): New variable.
15124 (readchar): Increment it.
15125 (unreadchar): Decrement it.
15126 (read_multibyte): Decrement it.
15127 (Vread_with_symbol_positions): New variable.
15128 (Vread_symbol_positions_list): New variable.
15129 (read_internal_start): New function, created from Fread and
15130 Fread_from_string. Handle Vread_symbol_positions_list and
15131 Vread_with_symbol_positions.
15132 (readevalloop, Fread, Fread_from_string): Use it.
15133 (read1): Use readchar_count to add symbol positions to
15134 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
15135 (syms_of_lread): DEFVAR_LISP and initialize them.
15136
15137 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
15138 (substitute_object_recurse, substitute_object_in_subtree)
15139 (substitute_in_interval): Prototype.
15140 (read_multibyte): Return c if it's less than zero.
15141
15142 2002-05-28 Kim F. Storm <storm@cua.dk>
15143
15144 * fileio.c (Fread_file_name_internal): Added brute-force
15145 speed up for using predicate file-directory-p.
15146
15147 2002-05-28 Kim F. Storm <storm@cua.dk>
15148
15149 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
15150 New variables.
15151 (syms_of_fileio): DEFVAR_LISP them.
15152 (read_file_name_cleanup): New unwind function.
15153 (Fread_file_name_internal): Only return completions satifying
15154 Vread_file_name_predicate. Temporarily unwind protect and rebind
15155 default-directory while checking completions against the predicate.
15156 (Fread_file_name): Added PREDICATE argument. Specbind it to
15157 Vread_file_name_predicate during completion.
15158 Call Vread_file_name_function to read the file name if non-nil.
15159
15160 * lisp.h (Fread_file_name): Now has 6 args.
15161
15162 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
15163 predicate for Fread_file_name when reading directory name.
15164 Supply Qnil for predicate in other calls to Fread_file_name.
15165
15166 2002-05-26 Miles Bader <miles@gnu.org>
15167
15168 * term.c (tty_capable_p): New function.
15169 * dispextern.h (tty_capable_p): New function declaration.
15170 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
15171 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
15172
15173 2002-05-23 Stefan Monnier <monnier@cs.yale.edu>
15174
15175 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
15176 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
15177 (Vwrite_region_annotate_functions): Docstring fix.
15178
15179 2002-05-23 Kim F. Storm <storm@cua.dk>
15180
15181 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
15182 phys_cursor's hpos is overwritten. This is still not completely
15183 correct, as it doesn't really make sense to use hpos at all to
15184 get the cursor glyph (as that is relative to the width of the
15185 characters on the line, which may have changed during the update).
15186
15187 2002-05-22 Jason Rumney <jasonr@gnu.org>
15188
15189 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
15190 Lisp_Object.
15191 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
15192 Use modified enumfont_t struct.
15193
15194 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
15195
15196 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
15197 Handle the `hbar' cursor type.
15198 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
15199
15200 * w32fns.c (Qhbar): New variable.
15201 (x_specified_cursor_type): Use it.
15202
15203 2002-05-21 Ken Raeburn <raeburn@gnu.org>
15204
15205 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
15206 now, when the address is needed.
15207
15208 2002-05-21 Colin Walters <walters@gnu.org>
15209
15210 * Makefile.in (shortlisp): Add font-core.el.
15211
15212 2002-05-20 Richard M. Stallman <rms@gnu.org>
15213
15214 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
15215
15216 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
15217 equivalent key bindings here.
15218
15219 2002-05-20 Ken Raeburn <raeburn@gnu.org>
15220
15221 Change symbol structure to contain a lisp object for the symbol
15222 name:
15223 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
15224 object field named "xname".
15225 (SYMBOL_NAME): New macro.
15226 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
15227 name field.
15228 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
15229 (mark_object, gc_sweep): Use symbol xname field and XSTRING
15230 instead of name field.
15231 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
15232 SYMBOL_NAME instead of XSYMBOL and name field.
15233 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
15234 instead of XSYMBOL and name field.
15235 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
15236 and SYMBOL_NAME instead of XSYMBOL and name field.
15237 * coding.c (Fread_coding_system, code_convert_region1)
15238 (code_convert_string1, code_convert_string_norecord)
15239 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
15240 XSYMBOL and name field.
15241 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
15242 (Fmake_variable_buffer_local, Fmake_local_variable)
15243 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
15244 of XSYMBOL and name field.
15245 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
15246 XSYMBOL and name field.
15247 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
15248 instead of XSYMBOL and name field.
15249 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
15250 XSYMBOL and name field.
15251 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
15252 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
15253 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
15254 instead of XSYMBOL and name field.
15255 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
15256 (parse_modifiers, apply_modifiers, Fevent_convert_list)
15257 (parse_solitary_modifier, Fexecute_extended_command):
15258 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
15259 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
15260 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
15261 of XSYMBOL and name field.
15262 (describe_command, describe_translation): Use SYMBOL_NAME and
15263 assignment instead of XSYMBOL and name field and XSETSTRING.
15264 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
15265 instead of XSYMBOL and name field.
15266 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
15267 name field and XSETSTRING.
15268 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
15269 of XSYMBOL and name field.
15270 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
15271 assignment instead of XSYMBOL and name field and XSETSTRING.
15272 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
15273 XSTRING instead of XSYMBOL and name field.
15274 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
15275 and XSTRING instead of XSYMBOL and name field.
15276 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
15277 and XSTRING instead of XSYMBOL and name field.
15278 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
15279 XSTRING instead of XSYMBOL and name field.
15280 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
15281 of XSYMBOL and name field.
15282 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
15283 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
15284
15285 2002-05-19 Ken Raeburn <raeburn@gnu.org>
15286
15287 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
15288 and XCDR real rvalues in most configurations.
15289
15290 * buffer.c (fix_overlays_in_range, fix_overlays_before):
15291 Don't take the address of the cdr part of a cons cell; instead, track
15292 the parent cell and call XSETCDR, or set the variable for the head
15293 of the list if we haven't started down the list yet.
15294
15295 2002-05-19 Richard M. Stallman <rms@gnu.org>
15296
15297 * doc.c (reread_doc_file): Don't ask for confirmation.
15298
15299 2002-05-18 Jason Rumney <jasonr@gnu.org>
15300
15301 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
15302 (xbm_load_image): Use it.
15303 (xbm_load): Ditto.
15304 (xbm_read_bitmap_data): Reverted to xfns.c version.
15305 From David Ponce <david@dponce.com>.
15306
15307 2002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
15308
15309 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
15310 2.02 and later.
15311
15312 2002-05-16 Juanma Barranquero <lektu@terra.es>
15313
15314 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
15315
15316 2002-05-15 Stefan Monnier <monnier@cs.yale.edu>
15317
15318 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
15319 meaningful test.
15320 (read_char_minibuf_menu_prompt): Fix typo.
15321
15322 2002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
15323
15324 * eval.c (Fcommandp): Doc fix.
15325
15326 2002-05-13 Stefan Monnier <monnier@cs.yale.edu>
15327
15328 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
15329 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
15330 (Fset_keymap_parent): Gcpro a bit more.
15331 (access_keymap): Gcpro around meta_map call and around the main loop.
15332 (get_keyelt): Gcpro when following indirect references.
15333 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
15334 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
15335 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
15336 Remove useless ad-hoc remap code.
15337
15338 2002-05-13 Richard M. Stallman <rms@gnu.org>
15339
15340 * search.c (search_buffer): Give up boyer moore search if inverse
15341 translation change charset_base.
15342
15343 2002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
15344
15345 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
15346 characters is carried over from the previous block of text, adjust
15347 coding->produced to account for the extra character.
15348
15349 2002-05-11 Andreas Schwab <schwab@suse.de>
15350
15351 * coding.c (intersection): Keep the elements of the returned list
15352 in the same order as in the first list.
15353
15354 2002-05-11 Kim F. Storm <storm@cua.dk>
15355
15356 * keymap.c (current_minor_maps): Fix resizing of cmm_maps;
15357 only update cmm_size if realloc actually succeeds.
15358 Testing with initial size of 2 elements revealed that using
15359 realloc on GNU/Linux would cause a random trap in xmalloc
15360 later on, so I rewrote the code to use malloc/bcopy/free instead
15361 of realloc.
15362
15363 2002-05-10 Jason Rumney <jasonr@gnu.org>
15364
15365 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
15366
15367 2002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
15368
15369 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
15370 parens, to ensure correct evaluation order.
15371
15372 2002-05-10 Kim F. Storm <storm@cua.dk>
15373
15374 * keymap.c (Vemulation_mode_map_alists): New variable.
15375 (syms_of_keymap): DEFVAR_LISP it.
15376 (current_minor_maps): Process keymap alists in that list before
15377 minor-mode-overriding-map-alist and minor-mode-map-alist.
15378
15379 2002-05-09 Richard M. Stallman <rms@gnu.org>
15380
15381 * search.c (Freplace_match): Doc fix.
15382
15383 2002-05-09 Kim F. Storm <storm@cua.dk>
15384
15385 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
15386 Enlarge cursor rectangle drawn around image with non-zero relief.
15387
15388 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
15389 Enlarge cursor rectangle drawn around image with non-zero relief.
15390
15391 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
15392 Enlarge cursor rectangle drawn around image with non-zero relief.
15393
15394 2002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
15395
15396 * xselect.c (lisp_data_to_selection_data): Don't set selection
15397 type if comes from the Lisp object's car. If the selection
15398 contains a pure ASCII text, always return QSTRING as its type.
15399
15400 2002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15401
15402 * mac.c (mac-cut-function): Doc fix.
15403
15404 2002-05-05 Richard M. Stallman <rms@gnu.org>
15405
15406 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
15407
15408 2002-05-04 Jason Rumney <jasonr@gnu.org>
15409
15410 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
15411 for event-click-count.
15412
15413 * process.c (init_process): Only add server subfeature if we can
15414 use non-blocking I/O.
15415
15416 2002-05-04 Andrew Choi <akochoi@shaw.ca>
15417
15418 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
15419 repeatedly.
15420
15421 2002-05-03 Jason Rumney <jasonr@gnu.org>
15422
15423 * process.c (Fmake_network_process): Only support server sockets
15424 when we can make them non-blocking.
15425
15426 * s/ms-w32.h (HAVE_SELECT): Define.
15427
15428 * w32.h (FILE_NDELAY): New flag.
15429
15430 * w32.c (sys_getpeername, fcntl): New functions.
15431 (_sys_read_ahead): Temporarily block on non-blocking sockets.
15432
15433 * w32proc.c: include sys/file.h.
15434
15435 2002-05-03 Colin Walters <walters@verbum.org>
15436
15437 * callproc.c (Vgame_score_directory): Renamed to
15438 Vshared_game_score_directory.
15439
15440 2002-04-30 Richard M. Stallman <rms@gnu.org>
15441
15442 * s/gnu.h [emacs]: Include stdio.h.
15443 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
15444
15445 * eval.c (do_autoload): Error if called while preparing to dump.
15446
15447 * fns.c (Frequire): Error if need to load while preparing to dump.
15448
15449 2002-04-28 Colin Walters <walters@verbum.org>
15450
15451 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
15452 Default to "~/.emacs.d/games".
15453
15454 2002-04-29 Stefan Monnier <monnier@cs.yale.edu>
15455
15456 * lread.c (openp): Change arg exec_only to predicate.
15457 (build_load_history): Use XCAR/XCDR.
15458 (Flocate_file_internal): New fun.
15459 (syms_of_lread): Defsubr it.
15460 (Fload): Update call to openp.
15461
15462 * lisp.h (openp): Update prototype.
15463
15464 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
15465 * w32proc.c (sys_spawnve):
15466 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
15467 * w32.c (check_windows_init_file):
15468 * sound.c (Fplay_sound_internal):
15469 * process.c (Fstart_process):
15470 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
15471 * mac.c (run_mac_command):
15472 * emacs.c (init_cmdargs):
15473 * callproc.c (Fcall_process): Update call to openp.
15474
15475 * textprop.c (remove_properties): Don't use XCAR without CONSP.
15476
15477 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
15478
15479 2002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15480
15481 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
15482 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
15483
15484 2002-04-28 Richard M. Stallman <rms@gnu.org>
15485
15486 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
15487
15488 * eval.c (Fcommandp): New arg for_call_interactively.
15489 * lisp.h (Fcommandp): Declare new arg.
15490
15491 2002-04-28 Jason Rumney <jasonr@gnu.org>
15492
15493 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
15494
15495 * w32.c (stat, fstat): Use file index information to generate
15496 inodes for directories where available.
15497
15498 2002-04-26 Andrew Choi <akochoi@shaw.ca>
15499
15500 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
15501 [HAVE_CARBON]: Include Mac object files.
15502
15503 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
15504 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
15505 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
15506 MAC_OSX, and MAC_OS instead of macintosh.
15507
15508 * editfns.c [MAC_OS8]: Include stdio.h.
15509
15510 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
15511
15512 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
15513 Apple Monaco.
15514
15515 * process.c (QCfamily, QCfilte): Declare extern.
15516 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
15517 calling select.
15518
15519 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
15520
15521 * tparam.c [MAC_OSX]: Don't define BC and UP.
15522
15523 * config.in [HAVE_CARBON]: Add.
15524
15525 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
15526 Move here from mac/src and mac/inc.
15527
15528 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
15529
15530 2002-04-26 Gerd Moellmann <gerd@gnu.org>
15531
15532 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
15533 Compute phys_cursor_width from the x position returned
15534 by x_draw_glyhs, which is cheaper.
15535 (x_display_and_set_cursor): Compute the buffer-local value
15536 of `cursor-in-non-selected-windows' only when needed.
15537
15538 2002-04-25 Gerd Moellmann <gerd@gnu.org>
15539
15540 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
15541 cursor on a stretch glyph has a width that depends on
15542 x_stretch_cursor_p.
15543
15544 2002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15545
15546 * abbrev.c (abbrev-start-location): Doc fix.
15547
15548 * indent.c (Fvertical_motion): Fix last change.
15549
15550 2002-04-25 Gerd Moellmann <gerd@gnu.org>
15551
15552 * indent.c (Fvertical_motion): Move to the start of the line
15553 containing PT before moving up or down.
15554
15555 2002-04-24 Gerd Moellmann <gerd@gnu.org>
15556
15557 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
15558 case of writing a whole row, more or less analogous to the case of
15559 writing only parts of a row.
15560
15561 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
15562 0 for NO_CURSOR.
15563
15564 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
15565
15566 2002-04-23 Colin Walters <walters@verbum.org>
15567
15568 * buffer.c (syms_of_buffer): Doc fix.
15569
15570 2002-04-23 Gerd Moellmann <gerd@gnu.org>
15571
15572 * xterm.c (notice_overwritten_cursor): Handle the special case
15573 of the cursor being in the first blank non-text line at the
15574 end of a window.
15575
15576 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
15577 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
15578 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
15579 bar cursors only, to make phys_cursor_width contain what its name
15580 suggests.
15581 (notice_overwritten_cursor): Consider the cursor image erased if
15582 the output area intersects the cursor image in y-direction.
15583
15584 2002-04-23 Simon Marshall <simon@gnu.org>
15585
15586 * xfns.c (x_set_mouse_color): Change default for cross_cursor
15587 to XC_hand2.
15588
15589 2002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15590
15591 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
15592
15593 2002-04-22 Kim F. Storm <storm@cua.dk>
15594
15595 * textprop.c (remove_properties): Fixed trap for malformed plist.
15596
15597 2002-04-22 Richard M. Stallman <rms@gnu.org>
15598
15599 * cmds.c (Fend_of_line): Handle intangible text in mid line.
15600
15601 * window.c (make_window): Initialize height_fixed_p,
15602 last_cursor_off_p, and p->cursor_off_p slots.
15603
15604 2002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15605
15606 * fns.c (use-dialog-box): Doc fix.
15607
15608 2002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15609
15610 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
15611 variables `row', `i' and `area'.
15612 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
15613 toolkit library.
15614
15615 2002-04-19 Stefan Monnier <monnier@cs.yale.edu>
15616
15617 * xfaces.c (clear_font_table): Don't free the default font of
15618 a frame even if it's on another display.
15619 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
15620 that could be Qt.
15621
15622 2002-04-19 Juanma Barranquero <lektu@terra.es>
15623
15624 * indent.c (Fmove_to_column): Remove unused local variable
15625 `next_boundary_byte'.
15626 (current_column_1): Likewise.
15627
15628 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
15629
15630 * msdos.c (Qhbar): New variable.
15631 (syms_of_msdos): Intern and staticpro it.
15632 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
15633 cursor type.
15634
15635 2002-04-19 Dave Lambert <dlambert@acm.org>
15636
15637 Theses change implement an underscore-like (`hbar') cursor.
15638
15639 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
15640
15641 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
15642 Handle the `hbar' cursor type.
15643 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
15644
15645 * xfns.c (Qhbar): New variable.
15646 (syms_of_xfns): Intern and staticpro it.
15647 (x_specified_cursor_type): Handle `hbar' cursor.
15648
15649 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
15650 not defined.
15651
15652 2002-04-18 Richard M. Stallman <rms@gnu.org>
15653
15654 * textprop.c (remove_properties): New arg LIST allows scanning
15655 either a list or a plist.
15656 (interval_has_some_properties_list): New function, like
15657 interval_has_some_properties using list instead of plist.
15658 All callers changed.
15659 (Fremove_list_of_text_properties): New function.
15660 (syms_of_textprop): Defsubr it.
15661
15662 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
15663
15664 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
15665
15666 2002-04-17 Juanma Barranquero <lektu@terra.es>
15667
15668 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
15669
15670 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
15671
15672 * window.c (coordinates_in_window): Don't report on margin area
15673 if its width is zero.
15674
15675 2002-04-16 Jason Rumney <jasonr@gnu.org>
15676
15677 * w32fns.c (Fx_file_dialog): Decode file name before using.
15678
15679 * w32term.c (construct_drag_n_drop): Likewise.
15680
15681 2002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
15682
15683 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
15684 store load-history in pure space.
15685
15686 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
15687
15688 2002-04-16 Stefan Monnier <monnier@cs.yale.edu>
15689
15690 * xterm.c (Qlatin_1, Qutf_8): New vars.
15691 (syms_of_xterm): Initialize them.
15692 (XTread_socket): Eliminate incorrect optimization that tried to avoid
15693 decoding the output of X*LookupString.
15694 Always use latin-1 to decode the output of XLookupString.
15695 Try Xutf8LookupString if XmbLookupString failed.
15696
15697 * region-cache.c (new_region_cache): Use BEG.
15698
15699 2002-04-16 Gerd Moellmann <gerd@gnu.org>
15700
15701 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
15702 configuration files.
15703 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
15704 returns 0.
15705
15706 2002-04-15 Andreas Schwab <schwab@suse.de>
15707
15708 * config.in: Regenerated using autoheader.
15709
15710 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
15711 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
15712 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
15713 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
15714 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
15715 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
15716 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
15717 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
15718 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
15719 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
15720 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
15721 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
15722 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
15723 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
15724 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
15725 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
15726 STACK_DIRECTION, now set by autoconf.
15727
15728 2002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15729
15730 * dispnew.c (marginal_area_string): Sort arguments.
15731
15732 * dispextern.h (marginal_area_string): Add prototype.
15733
15734 2002-04-13 Richard M. Stallman <rms@gnu.org>
15735
15736 * fileio.c (Finsert_file_contents):
15737 Don't call temp_output_buffer_setup--do just part, by hand.
15738
15739 * coding.c (run_pre_post_conversion_on_str):
15740 Don't call temp_output_buffer_setup--do just part, by hand.
15741
15742 * keyboard.c (command_loop_1): Don't call start_hourglass
15743 or cancel_hourglass when executing a macro.
15744
15745 * marker.c (count_markers): New function.
15746
15747 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
15748 grow without limit. Move recently used elements to the front.
15749
15750 2002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
15751
15752 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
15753
15754 2002-04-12 Gerd Moellmann <gerd@gnu.org>
15755
15756 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
15757 rows marginal areas.
15758 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
15759 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
15760
15761 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
15762
15763 2002-04-12 Dave Love <fx@gnu.org>
15764
15765 * dispnew.c (marginal_area_string): New.
15766
15767 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
15768 (Qleft_margin, Qright_margin): Declare.
15769 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
15770
15771 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
15772 note_mode_line_highlight and extended.
15773
15774 * keyboard.c (Qleft_margin, Qright_margin): Declare.
15775 (make_lispy_event): Deal with mouse events in margins.
15776
15777 2002-04-12 Stefan Monnier <monnier@cs.yale.edu>
15778
15779 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
15780
15781 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
15782 than deactivating the mark if tmm is set to `lambda'.
15783 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
15784 Use a single event for HELP_EVENT.
15785 (Fexecute_extended_command): Save last_point_position.
15786
15787 2002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15788
15789 * lisp.h (Fpropertize): Add prototype.
15790
15791 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
15792
15793 2002-04-10 Colin Walters <walters@verbum.org>
15794
15795 * config.in: Add HAVE_SHARED_GAME_DIR.
15796
15797 * callproc.c (Vgame_score_directory): New variable.
15798 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
15799
15800 2002-04-10 Richard M. Stallman <rms@gnu.org>
15801
15802 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
15803
15804 2002-04-09 Stefan Monnier <monnier@cs.yale.edu>
15805
15806 * minibuf.c (read_minibuf): Use empty_string.
15807 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
15808 Short-circuit the search as soon as it "failed".
15809 (Fall_completions): Allow lambda forms and lists of strings for alist.
15810 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
15811 when require_match is nil.
15812 (Ftest_completion): Rename from `test_completion' and export to elisp.
15813 Call the predicate also when alist is a list.
15814 Obey Vcompletion_regexp_list.
15815 (do_completion, Fminibuffer_complete_and_exit): Use it.
15816 (Fassoc_string): Rename from `assoc_for_completion'.
15817 Allow list of strings as well and export to elisp.
15818
15819 2002-04-08 Stefan Monnier <monnier@cs.yale.edu>
15820
15821 * puresize.h (BASE_PURESIZE): Increase to 900KB.
15822
15823 2002-04-08 Juanma Barranquero <lektu@terra.es>
15824
15825 * w32.c (sys_accept): Don't hide variable `s'.
15826
15827 2002-04-05 Gerd Moellmann <gerd@gnu.org>
15828
15829 * callint.c (Fcall_interactively): Use INTEGERP instead of
15830 NUMBERP for checking Vhistory_length.
15831
15832 2002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15833
15834 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
15835 Doc fix to reflect it.
15836
15837 2002-04-04 Richard M. Stallman <rms@gnu.org>
15838
15839 * xdisp.c (display_mode_element): New arg RISKY.
15840 Disregard text props found or specified within a variable
15841 that isn't marked risky-local-variable.
15842 (Qrisky_local_variable): New variable.
15843 (syms_of_xdisp): Init and staticpro it.
15844
15845 2002-04-04 Stefan Monnier <monnier@cs.yale.edu>
15846
15847 * undo.c (record_point): New fun.
15848 (record_delete, record_insert): Use it.
15849
15850 2002-04-03 Juanma Barranquero <lektu@terra.es>
15851
15852 * doc.c (Fdocumentation): Add missing parentheses.
15853 (Fdocumentation_property): Likewise.
15854
15855 2002-04-03 Stefan Monnier <monnier@cs.yale.edu>
15856
15857 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
15858 data is 0, just return nil.
15859
15860 2002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
15861
15862 * msdos.c (syms_of_msdos): Fix last change with
15863 mouse_autoselect_window.
15864
15865 2002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15866
15867 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
15868 mouse_autoselect_window.
15869
15870 2002-04-02 Stefan Monnier <monnier@cs.yale.edu>
15871
15872 * keyboard.c (make_lispy_event): Handle unknown keysyms together
15873 with system-specific keysyms. Use it also for unknown function keys.
15874
15875 * doc.c (reread_doc_file): Return whether reload was attempted.
15876 (Fdocumentation, Fdocumentation_property): Don't try to reload
15877 if the doc is 0 and only ask once.
15878
15879 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
15880
15881 2002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
15882
15883 * keyboard.c (read_char): If the event was Qselect_window,
15884 restore timer_idleness_start_time to its previous value.
15885
15886 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
15887
15888 2002-04-01 Stefan Monnier <monnier@cs.yale.edu>
15889
15890 * region-cache.c (new_region_cache): Use BEG.
15891
15892 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
15893 Use BEG and BEG_BYTE.
15894
15895 * doc.c (get_doc_string): Return nil if the location is wrong.
15896 (reread_doc_file): New fun.
15897 (Fdocumentation, Fdocumentation_property):
15898 Call it if get_doc_string fails.
15899 (Fsnarf_documentation): Make it work for a dumped Emacs.
15900
15901 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
15902 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
15903
15904 * charset.c (Fstring): Allow 0 arguments.
15905
15906 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
15907
15908 * process.c (DATAGRAM_CONN_P, list_processes_1)
15909 (Fprocess_datagram_address, Fset_process_datagram_address)
15910 (Fset_network_process_options, server_accept_connection):
15911 Fix some int/Lisp_Object confusions (thank you union types).
15912
15913 2002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15914
15915 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
15916
15917 * w32term.c: Likewise.
15918 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
15919
15920 * keyboard.c (Qselect_window): New symbol.
15921 (head_table): Use it.
15922 (keys_of_keyboard): Bound select-window event to handle-select-window.
15923 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
15924
15925 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
15926 (last_window): New variable.
15927 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
15928 (note_mouse_movement): Remove reimplemented code in #if 0.
15929 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
15930 Emacs windows.
15931
15932 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
15933
15934 2002-03-31 Gerd Moellmann <gerd@gnu.org>
15935
15936 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
15937 Callers changed.
15938
15939 2002-03-30 Richard M. Stallman <rms@gnu.org>
15940
15941 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
15942 loop whenever it stops making progress.
15943
15944 * widget.c (set_frame_size): Don't call change_frame_size.
15945
15946 2002-03-30 Gerd Moellmann <gerd@gnu.org>
15947
15948 * dispnew.c (direct_output_for_insert):
15949 Call mark_window_display_accurate.
15950
15951 2002-03-29 Jason Rumney <jasonr@gnu.org>
15952
15953 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
15954
15955 2002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
15956
15957 * Makefile.in (lread.o): Depend on coding.h.
15958
15959 * lread.c (openp, Fload): Encode the file name before passing it
15960 to `stat', `access', and `emacs_open'.
15961 (openp): GCPRO the encoded file name. Don't recompute Lisp
15962 strings unnecessarily.
15963
15964 2002-03-29 Kim F. Storm <storm@cua.dk>
15965
15966 * fns.c (Flax_plist_put): Doc fix.
15967
15968 2002-03-28 Miles Bader <miles@gnu.org>
15969
15970 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
15971
15972 2002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15973
15974 * process.c (set-network-process-options): Add usage.
15975 (make-network-process): Doc fix.
15976
15977 2002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
15978
15979 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
15980
15981 2002-03-26 Richard M. Stallman <rms@gnu.org>
15982
15983 * fns.c (Fsubstring_no_properties): New function.
15984 (Flax_plist_get, Flax_plist_put): New functions.
15985 (syms_of_fns): defsubr them.
15986
15987 * xdisp.c (update_menu_bar): Test only update_mode_lines;
15988 don't test or alter w->update_mode_line.
15989
15990 * window.c (Fdisplay_buffer): Doc fix.
15991
15992 2002-03-24 Richard M. Stallman <rms@gnu.org>
15993
15994 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
15995
15996 2002-03-24 Gerd Moellmann <gerd@gnu.org>
15997
15998 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
15999 (Fdefmacro): Handle `(declare ...)'.
16000 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
16001 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
16002
16003 2002-03-24 Jason Rumney <jasonr@gnu.org>
16004
16005 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
16006 (xbm_file_p): Add prototypes.
16007 (xbm_format, xbm_image_p): Sync with xfns.c.
16008 (reflect_byte): New function.
16009 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
16010 (xbm_load_image): Create bitmaps with a depth of 1.
16011 (init_xfns): Enable XBM images.
16012
16013 2002-03-23 Jason Rumney <jasonr@gnu.org>
16014
16015 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
16016 correctly. Do not pass up_modifier to keyboard buffer.
16017
16018 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
16019
16020 2002-03-22 Stefan Monnier <monnier@cs.yale.edu>
16021
16022 * Makefile.in (bootstrapclean): New target.
16023 (bootstrap-temacs, bootstrap-doc): Remove.
16024 (bootstrap-emacs): Use a bog-standard `temacs'.
16025 Don't bother to build a DOC file.
16026
16027 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
16028
16029 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
16030 in temacs even if !CANNOT_DUMP.
16031 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
16032
16033 * alloc.c (check_pure_size): Only output a warning.
16034
16035 2002-03-22 Jason Rumney <jasonr@gnu.org>
16036
16037 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
16038 supported.
16039
16040 * w32term.c (zv_bits): Declare as short, for word alignment.
16041 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
16042 (syms_of_w32term): Define x-use-underline-position-properties.
16043
16044 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
16045 (clear_image_cache): Block input, fix logic, clear matrices in
16046 all frames that share this cache.
16047
16048 2002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
16049
16050 * emacs.c (main): Update the Copyright year in the blurb printed
16051 by "emacs --version".
16052
16053 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
16054
16055 * xterm.c (XTread_socket): If XK_ISO_Lock and
16056 XK_ISO_Last_Group_Lock are defined, handle keysyms between
16057 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
16058
16059 2002-03-21 Kim F. Storm <storm@cua.dk>
16060
16061 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
16062 menu-bar bindings in keymap and local-map properties _are_ used.
16063 But try keymap property first in accordance with 2002-01-03 patch.
16064 Added comment describing why this is not always reliable.
16065 (tool_bar_items): Ditto for tool-bar.
16066
16067 2002-03-21 Jason Rumney <jasonr@gnu.org>
16068
16069 * w32fns.c (x_clear_image_1): Disable color table code.
16070
16071 2002-03-21 Kim F. Storm <storm@cua.dk>
16072
16073 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
16074 removed the wrong version of the DEFUN macro; fixed it.
16075
16076 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
16077 Fmember rather than Fmemq).
16078 (Fprovide): Check that subfeatures is a list.
16079
16080 * process.c (QCfeature, QCdatagram): Removed variables.
16081 (QCtype, Qdatagram): New variables.
16082 (network_process_featurep): Removed function.
16083 (Fmake_network_process): Removed :feature check.
16084 Use :type 'datagram instead of :datagram t to create a datagram
16085 socket. This allows us to add other connection types (e.g. raw
16086 sockets) later in a consistent manner.
16087 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
16088 supported subfeatures for feature make-network-process.
16089 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
16090 Intern and staticpro QCtype and Qdatagram.
16091 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
16092
16093 * xfns.c: (QCtype): Remove duplicate declaration and
16094 initialization (is now declared in process.c).
16095
16096 * w32fns.c: (QCtype): Remove duplicate declaration and
16097 initialization (is now declared in process.c).
16098
16099 2002-03-21 Richard M. Stallman <rms@gnu.org>
16100
16101 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
16102 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
16103 when jumping to `fail' to avoid undoing reg changes in the
16104 last iteration of the loop.
16105 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
16106
16107 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
16108 Depend on process.h.
16109
16110 2002-03-20 Jason Rumney <jasonr@gnu.org>
16111
16112 Most of the following changes are still conditional on HAVE_IMAGES
16113 which is not set by default on Windows.
16114
16115 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
16116
16117 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
16118 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
16119 (four_corners_best, x_clear_image_1, x_clear_image)
16120 (x_alloc_image_color, postprocess_image)
16121 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
16122 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
16123 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
16124
16125 * w32gui.h (struct XImage): Define.
16126
16127 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
16128 extract mouse co-ordinates.
16129
16130 2002-03-20 Jason Rumney <jasonr@gnu.org>
16131
16132 * w32.c (init_winsock): Dynamically load new server and UDP
16133 socket functions.
16134 (socket_to_fd): New function.
16135 (sys_socket): Use it.
16136 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
16137 (sys_recvfrom, sys_sendto): New wrapper functions.
16138
16139 * process.c (QCfamily, QCfilter): Remove duplicate declaration
16140 and initialization.
16141
16142 * makefile.w32-in (LIBS): Remove $(WSOCK32).
16143
16144 2002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
16145
16146 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
16147 Don't use "sun" as a variable, it's a predefined constant on Sun
16148 machines.
16149
16150 2002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16151
16152 * bytecode.c (Fbyte_code): Revert last change.
16153
16154 2002-03-19 Kim F. Storm <storm@cua.dk>
16155
16156 * makefile.w32-in (LIBS): Add $(WSOCK32).
16157 From David Ponce <dponce@voila.fr>.
16158
16159 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16160
16161 * process.c (wait_reading_process_input): Move variables `pname'
16162 and `pnamelen' down where they are used.
16163
16164 * bytecode.c (Fbyte_code): Discard unused computed value to
16165 prevent gcc warning.
16166
16167 * lisp.h (Fplist_member): Add prototype.
16168
16169 2002-03-18 Kim F. Storm <storm@cua.dk>
16170
16171 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
16172 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
16173
16174 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
16175 Remove explicit GNU_LINUX settings for datagram support.
16176
16177 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16178
16179 * process.c (Fmake_network_process): Remove unused variable `sa'.
16180 Doc fix. Add usage:.
16181 (set_socket_options): Remove unused variables `optnum' and `opttype'.
16182
16183 2002-03-17 Richard M. Stallman <rms@gnu.org>
16184
16185 * xdisp.c (cursor_type_changed): New variable.
16186 (redisplay_internal): Redisplay all windows if cursor_type_changed.
16187 Clear it when clearing windows_or_buffers_changed.
16188 (try_cursor_movement, redisplay_window, try_window_id)
16189 (try_window_reusing_current_matrix): Test cursor_type_changed
16190 along with windows_or_buffers_changed.
16191
16192 * window.h (cursor_type_changed): New variable.
16193
16194 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
16195 not update_mode_lines, and always set it to 1.
16196
16197 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
16198 if no frames needed redrawing.
16199
16200 2002-03-17 Kim F. Storm <storm@cua.dk>
16201
16202 The following changes add support for network server processes,
16203 datagram connections, and local (unix) sockets.
16204
16205 * process.h (struct Lisp_Process): New member log.
16206 Doc fix: Member command used to indicate stopped network process.
16207 Doc fix: Member childp contains plist for network process.
16208 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
16209
16210 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
16211 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
16212 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
16213 New variables.
16214 (NETCONN1_P): New macro.
16215 (DATAGRAM_SOCKETS): New conditional symbol.
16216 (datagram_address): New array.
16217 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
16218 (status_message): Use concat3.
16219 (Fprocess_status): Add `listen' status to doc string. Return `stop'
16220 for a stopped network process.
16221 (Fset_process_buffer): Update contact plist for network process.
16222 (Fset_process_filter): Ditto. Don't enable input for stopped
16223 network processes. Server must listen, even if filter is t.
16224 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
16225 New functions.
16226 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
16227 (Fprocess_contact): Added KEY argument. Handle datagrams.
16228 (list_processes_1): Optionally show only processes with the query
16229 on exit flag set. Dynamically adjust column widths. Omit tty
16230 column if not needed. Report stopped network processes.
16231 Identify server and datagram network processes.
16232 (Flist_processes): New optional arg `query-only'.
16233 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
16234 (conv_lisp_to_sockaddr, set_socket_options)
16235 (network_process_featurep, unwind_request_sigio): New helper functions.
16236 (Fprocess_datagram_address, Fset_process_datagram_address):
16237 (Fset_network_process_options): New lisp functions.
16238 (Fopen_network_stream): Removed. Now defined in simple.el.
16239 (Fmake_network_process): New lisp function. Code is based on previous
16240 Fopen_network_stream, but heavily reworked with new property list based
16241 argument list, support for datagrams, server processes, and local
16242 sockets in addition to old client-only functionality.
16243 (server_accept_connection): New function.
16244 (wait_reading_process_input): Use it to handle incoming connects.
16245 Do not enable input on a new connection if process is stopped.
16246 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
16247 (send_process): Handle datagram sockets.
16248 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
16249 network process is indicated by setting command field to t .
16250 (Fprocess_send_eof): No-op if datagram connection.
16251 (Fstatus_notify): Don't read input for a stream server socket or a
16252 stopped network process.
16253 (init_process): Initialize datagram_address array.
16254 (syms_of_process): Intern and staticpro new variables, defsubr new
16255 functions.
16256
16257 2002-03-16 Jason Rumney <jasonr@gnu.org>
16258
16259 * w32fns.c (w32_to_all_x_charsets): Return correct type in
16260 startup case.
16261
16262 2002-03-16 Richard M. Stallman <rms@gnu.org>
16263
16264 * xdisp.c (redisplay_internal, redisplay_windows):
16265 Use list_of_error to call internal_condition_case_1.
16266 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
16267 so as to catch all errors with no possibility of debugger redisplay.
16268 (list_of_error): New variable.
16269 (syms_of_xdisp): Init and staticpro it.
16270
16271 * print.c (print_object): Delete `\ ' from printed rep of frame.
16272
16273 2002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
16274
16275 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
16276 until its implementation is fixed.
16277
16278 2002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16279
16280 * xfns.c (png_load): Remove unused variable `gamma_str'.
16281
16282 2002-03-14 Richard M. Stallman <rms@gnu.org>
16283
16284 * xfns.c (x_real_positions): Handle failure in XQueryTree.
16285
16286 2002-03-14 Miles Bader <miles@gnu.org>
16287
16288 * intervals.c (adjust_for_invis_intang): New function.
16289 (set_point_both): Use `adjust_for_invis_intang' to do most of the
16290 work for dealing with invisible+intangible regions. Do so before
16291 and after both forward and backward movements, to handle both
16292 front-sticky and rear-sticky cases.
16293 * textprop.c (text_property_stickiness): Function moved here from
16294 `editfns.c'.
16295 * intervals.h (text_property_stickiness): New declaration.
16296 * editfns.c (char_property_eq): Function removed.
16297 (text_property_stickiness): Function moved to `textprop.c'.
16298
16299 2002-03-13 Jason Rumney <jasonr@gnu.org>
16300
16301 * config.in: Add STRFTIME_NO_POSIX2.
16302
16303 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
16304 and %OX when underlying strftime does not.
16305
16306 2002-03-13 Stefan Monnier <monnier@cs.yale.edu>
16307
16308 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
16309 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
16310 line) to avoid annoying flicker.
16311 (xm_scroll_callback): Get rid of the now unnecessary kludge.
16312 (XTread_socket): Mark it static.
16313
16314 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
16315
16316 2002-03-13 Kim F. Storm <storm@cua.dk>
16317
16318 * puresize.h (BASE_PURESIZE): Increase to 775000.
16319
16320 2002-03-12 Juanma Barranquero <lektu@terra.es>
16321
16322 * editfns.c (syms_of_editfns): Fix typo.
16323
16324 2002-03-12 Gerd Moellmann <gerd@gnu.org>
16325
16326 * xsmfns.c: Include stdio.h because termhooks.h needs it.
16327 Include termopt.h for interrupt_input.
16328
16329 2002-03-11 Andreas Schwab <schwab@suse.de>
16330
16331 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
16332
16333 2002-03-11 Gerd Moellmann <gerd@gnu.org>
16334
16335 * xterm.c (note_mouse_movement): Put code for
16336 x_autoselect_window_p in #if 0.
16337
16338 * lread.c (Fload): Don't assume that message_with_string uses the
16339 string it is given like a C string.
16340
16341 2002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16342
16343 * xterm.h (x_session_check_input, x_session_initialize): Declare.
16344
16345 * xterm.c (XTread_socket): Add call to x_session_check_input and
16346 x_session_have_connection.
16347 (x_initialize): Add call to x_session_initialize.
16348
16349 * termhooks.h (enum event_kind): Add save_session_event.
16350
16351 * keyboard.c: Add Emacs event save_session_event.
16352
16353 * emacs.c (main): Add call to syms_of_xsmfns.
16354
16355 * lisp.h (syms_of_xsmfns): Declare extern.
16356
16357 * config.in: Add HAVE_X_SM.
16358
16359 * Makefile.in (LIBXT): Add -lSM -lICE
16360 if HAVE_X_SM and not USE_X_TOOLKIT.
16361 (XOBJ): New file xsmfns.c added.
16362
16363 * xsmfns.c: New file for X session management.
16364
16365 2002-03-09 Jason Rumney <jasonr@gnu.org>
16366
16367 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
16368 read-only when setting modified time.
16369
16370 2002-03-08 Gerd Moellmann <gerd@gnu.org>
16371
16372 * xdisp.c (move_it_vertically_backward): At the end of the function,
16373 when moving forward by lines, treat terminal frames specially.
16374
16375 * keyboard.c (echo_char): Make sure to add a separator between
16376 keys even if echo_dash hasn't been called.
16377
16378 * xdisp.c: Use new string macros.
16379 (update_echo_area): Pass number of bytes to message3 instead of
16380 number of chars.
16381 (set_message_1): Don't access a string's size_byte directly.
16382 (decode_mode_spec_coding): Use number of bytes of eoltype string
16383 instead number of chars.
16384
16385 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
16386
16387 2002-03-08 Juanma Barranquero <lektu@terra.es>
16388
16389 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
16390 24-bit.
16391
16392 2002-03-06 Jason Rumney <jasonr@gnu.org>
16393
16394 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
16395
16396 2002-03-06 Gerd Moellmann <gerd@gnu.org>
16397
16398 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
16399 (cancel_echoing, echo_length, echo_truncate): Changed to
16400 work with new kboard definition.
16401 (echo_now): Use message3_nolog instead of message2_nolog.
16402
16403 * alloc.c (mark_kboards): Mark echo_string.
16404
16405 * keyboard.h (ECHOBUFSIZE): Removed.
16406 (struct kboard): Member echoptr removed, member echobuf renamed
16407 to echo_string.
16408
16409 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
16410 message3 instead of message2 to display the message using STRING's
16411 text properties.
16412
16413 2002-03-05 Andreas Schwab <schwab@suse.de>
16414
16415 * xdisp.c (hscroll_margin): Change to EMACS_INT.
16416
16417 2002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
16418
16419 * frame.c (default-frame-alist): Explain that setting it doesn't
16420 affect existing frames.
16421
16422 2002-03-05 Stefan Monnier <monnier@cs.yale.edu>
16423
16424 * indent.c (skip_invisible): Fix my brain fart.
16425
16426 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
16427
16428 2002-03-04 Stefan Monnier <monnier@cs.yale.edu>
16429
16430 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
16431 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
16432 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
16433 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
16434 and variables to use EMACS_INT instead of just int.
16435
16436 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
16437
16438 2002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
16439
16440 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
16441 environment, pass it down with corrected value.
16442
16443 2002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16444
16445 * lread.c (read_filtered_event): Do not call start_hourglass
16446 before returning.
16447
16448 2002-03-04 Juanma Barranquero <lektu@terra.es>
16449
16450 * w32term.c (x_display_and_set_cursor): Fix typo.
16451
16452 2002-03-03 Richard M. Stallman <rms@gnu.org>
16453
16454 * fileio.c (Fmake_temp_name): Doc fix.
16455
16456 2002-03-03 Gary Wong <gtw@gnu.org>
16457
16458 * termcap.c [!emacs]: Replace ospeed for building standalone
16459 libtermcap, for binary compatibility.
16460
16461 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
16462
16463 2002-03-03 Richard M. Stallman <rms@gnu.org>
16464
16465 * xrdb.c (file_p): Rename arg `path' to `filename'.
16466
16467 * abbrev.c (Fexpand_abbrev): Increment plist as use count
16468 only if it is an integer.
16469
16470 * xfns.c (png_load): Set screen_gamma based on f->gamma.
16471 If png_get_sRGB gives an answer, call png_set_gamma
16472 using the default image gamma value.
16473
16474 * lread.c (read1): When reading from a file, default string to
16475 multibyte only if it has some multibyte characters.
16476
16477 * print.c (print_object): Output multibyte chars 128...255
16478 using \x even if ! print_escape_multibyte.
16479
16480 * xdisp.c (display_mode_element): Move the places where
16481 bytepos, charpos, this, and lisp_string are set.
16482 Use lisp_string to set bytepos.
16483
16484 * xdisp.c (redisplay_internal):
16485 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
16486
16487 * xdisp.c (display_mode_element): Merge properties specified with
16488 :propertize onto those that come with the string.
16489
16490 2002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
16491
16492 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
16493 automatic-hscrolling. Users changed.
16494 <hscroll-margin>: Renamed from automatic-hscroll-margin.
16495 Users changed.
16496 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
16497
16498 2002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
16499
16500 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
16501
16502 2002-03-02 Kim F. Storm <storm@cua.dk>
16503
16504 * window.c (Fminibuffer_selected_window): New function.
16505 (syms_of_window): Defsubr it.
16506
16507 2002-03-01 Kim F. Storm <storm@cua.dk>
16508
16509 * window.h (struct window): New member phys_cursor_width.
16510
16511 * window.c (make_window, replace_window): Init phys_cursor_width.
16512
16513 * xterm.c (x_display_and_set_cursor): Blink box cursor using
16514 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
16515
16516 * w32term.c (x_display_and_set_cursor): Blink box cursor using
16517 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
16518
16519 * lisp.h (GCPRO6): New macro.
16520
16521 * process.c (Fopen_network_stream): Use GCPRO6.
16522
16523 2002-03-01 Kim F. Storm <storm@cua.dk>
16524
16525 * process.c (Qconnect, Qfailed): New variables.
16526 (syms_of_process): Intern and staticpro them.
16527 (Fprocess_status): Document connect and failed return values.
16528 [NON_BLOCKING_CONNECT]: New conditional.
16529 (connect_wait_mask, num_pending_connects): New variables.
16530 (status_message): Convert Qfailed status.
16531 (Fopen_network_stream): Added support for non-blocking connect.
16532 New optional args: filter, sentinel, non_blocking. Doc updated.
16533 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
16534 (deactivate_process): Handle pending non-blocking connect.
16535 (wait_reading_process_input): Poll for status of non-blocking
16536 connects. Exec sentinel directly when connect succeeds.
16537 (status_notify): Don't read process output if not yet connected.
16538
16539 2002-02-28 Kim F. Storm <storm@cua.dk>
16540
16541 * window.c: (minibuf_selected_window): Renamed from
16542 Vminibuf_selected_window. Users changed.
16543 (syms_of_window): Staticpro it.
16544
16545 2002-02-26 Kim F. Storm <storm@cua.dk>
16546
16547 The following changes add a new Vminibuf_selected_window variable
16548 which is similar to Vminibuf_scroll_window, but which is only set
16549 on entry to the minibuffer (from a non-minibuffer window):
16550
16551 * window.c: (Vminibuf_selected_window): New variable.
16552 (struct save_window_data): New member minibuf_selected_window.
16553 (Fset_window_configuration): Restore Vminibuf_selected_window.
16554 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
16555 Set minibuf_scroll_window member to nil if minibuf_level is 0.
16556 (compare_window_configurations): Compare minibuf_selected_window.
16557
16558 * window.h: (Vminibuf_selected_window): Declare extern.
16559
16560 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
16561 entry to minibuffer or on entry from a non-minibuffer window.
16562
16563 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
16564 Vminibuf_selected_window instead of Vminibuf_scroll_window.
16565
16566 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
16567 instead of Vminibuf_scroll_window when deciding in which window
16568 the region should be highlighted. Consequently, the region remains
16569 highlighteded even when a completion buffer is also displayed.
16570
16571 2002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
16572
16573 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
16574
16575 * xselect.c (Qcompound_text_with_extensions): Renamed from
16576 Qcompound_text_no_extensions.
16577 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
16578
16579 2002-02-26 Juanma Barranquero <lektu@terra.es>
16580
16581 * w32proc.c (syms_of_ntproc): Doc fix.
16582
16583 2002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16584
16585 * intervals.h: Include "dispextern.h" unconditionally.
16586
16587 2002-02-24 Jason Rumney <jasonr@gnu.org>
16588
16589 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
16590 and disp-table.elc.
16591 (lisp): Add emacs-lisp/backquote.elc.
16592
16593 2002-02-24 Kim F. Storm <storm@cua.dk>
16594
16595 * keymap.c (Flookup_key): Fix problem in 2001-12-28 patch:
16596 The validation of the event type was too strict as it didn't
16597 allow string events; buffer names are used in bindings for
16598 menu-bar-select-buffer (see `menu-bar-update-buffers').
16599
16600 2002-02-23 Kim F. Storm <storm@cua.dk>
16601
16602 The following changes rework my patch of 2002-02-06 which
16603 added command remapping by entering the commands directly into
16604 the keymaps. Now, command remapping uses an explicit `remap'
16605 prefix in the keymaps, i.e. [remap COMMAND].
16606
16607 * keymap.c (Qremap, remap_command_vector): New variables.
16608 (is_command_symbol): Remove function.
16609 (Fdefine_key): No longer accept a symbol for KEY.
16610 Added validation of [remap COMMAND] argument for KEY.
16611 The DEF is no longer required to be a symbol when remapping a command.
16612 (Fremap_command): New function to remap command through keymaps.
16613 (Flookup_key): Perform command remapping initiated by
16614 Fremap_command directly for speed.
16615 (Fkey_binding): Use Fremap_command for command remapping.
16616 (where_is_internal): Handle new command remapping representation.
16617 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
16618 staticpro them. Defsubr Fremap_command.
16619
16620 * keymap.h (Fremap_command): Declare extern.
16621 (is_command_symbol): Remove extern.
16622
16623 * keyboard.c (command_loop_1): Use Fremap_command for command
16624 remapping; now try command remapping for all symbols.
16625
16626 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
16627
16628 * coding.h (run_pre_post_conversion_on_str): Add prototype.
16629
16630 2002-02-23 Jason Rumney <jasonr@gnu.org>
16631
16632 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
16633 on the string before encoding it.
16634 (Fw32_get_clipboard_data): Run post-read-conversion on the string
16635 after decoding it.
16636
16637 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
16638
16639 2002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16640
16641 * w32term.c (enter_timestamp): Remove unused static variable to
16642 prevent warning.
16643
16644 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
16645
16646 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
16647
16648 * w16select.c (Fw16_get_clipboard_data): Fix last change.
16649
16650 * xselect.c (selection_data_to_lisp_data): Fix last change.
16651
16652 2002-02-22 Jason Rumney <jasonr@gnu.org>
16653
16654 * w32term.h (struct w32_output): New member menu_command_in_progress.
16655
16656 * w32menu.c (menubar_selection_callback): Free the menu and
16657 clear the menu_command_in_progress flag.
16658
16659 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
16660 (menu_free_timer): New variable.
16661 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
16662 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
16663 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
16664 menu command is in progress.
16665 <WM_COMMAND>: Set the menu_command_in_progress flag.
16666 Kill any menu_free_timer that is running.
16667
16668 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
16669 Call ExtTextOutA rather than ExtTextOut.
16670
16671 2002-02-22 Eli Zaretskii <eliz@gnu.org>
16672
16673 * puresize.h (BASE_PURESIZE): Increase to 755000.
16674
16675 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
16676
16677 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
16678 on the string before encoding it.
16679 (Fw16_get_clipboard_data): Run post-read-conversion on the string
16680 after decoding it.
16681
16682 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
16683
16684 Support for ICCCM Extended Segments in X selections:
16685
16686 * xselect.c <Qcompound_text_no_extensions>: New variable.
16687 (syms_of_xselect): Intern and staticpro it.
16688 (selection_data_to_lisp_data): Run post-read-conversion on decoded
16689 selection text.
16690 (lisp_data_to_selection_data): If next-selection-coding-system is
16691 compound-text-no-extensions, set the type of selection to be
16692 compound-text.
16693
16694 * xterm.h (x_encode_text): Update prototype.
16695
16696 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
16697 callers changed. If SELECTIONP is non-zero, run the
16698 pre-write-conversion function before encoding the selection text.
16699
16700 2002-02-21 Kim F. Storm <storm@cua.dk>
16701
16702 * frame.c (syms_of_frame): Change mouse-highlight default to t.
16703
16704 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
16705 Correct composing of language-change event.
16706
16707 2002-02-20 Kim F. Storm <storm@cua.dk>
16708
16709 * keyboard.c (menu_bar_items): Don't include keymap or local-map
16710 bindings at PT when building menu (the menu is not updated often
16711 enough for this to work reliable).
16712 (tool_bar_items): Likewise.
16713 (current_active_maps): Removed unused (and buggy) function.
16714
16715 2002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16716
16717 * xfns.c (gif_load): Use correct width and height for GIF images.
16718
16719 2002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
16720
16721 * floatfns.c (Fatan): Accept an optional second arg and call
16722 atan2 if passed 2 args.
16723
16724 2002-02-18 Jason Rumney <jasonr@gnu.org>
16725
16726 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
16727
16728 2002-02-17 Jason Rumney <jasonr@gnu.org>
16729
16730 * w32term.c (x_autoselect_window_p): New variable.
16731 (syms_of_w32term): DEFVAR_BOOL and initialize it.
16732 (note_mouse_movement): Use it.
16733
16734 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
16735
16736 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
16737
16738 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
16739 New variables.
16740 (syms_of_w32fns): Intern and staticpro them.
16741 (x_frame_parms) <"fullscreen">: New parameter.
16742 (x_fullscreen_move, x_set_fullscreen): New functions.
16743 (x_set_frame_parameters): Support Qfullscreen.
16744 (x_real_positions): Save x/y_pixels_diff frame params.
16745 (x_figure_window_size): Support full-screen frames.
16746 (Fx_create_frame): Default the fullscreen parameter.
16747
16748 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
16749 (x_fullscreen_adjust): New functions.
16750 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
16751 fullscreen. Call x_check_fullscreen_move, and set the
16752 want_fullscreen member of output_data.w32
16753 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
16754
16755 * w32term.h: New enum for FULLSCREEN_* constants.
16756 (struct w32_output): New members want_fullscreen, x_pixels_diff,
16757 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
16758 (x-fullscreen-adjust): New prototype.
16759
16760 2002-02-17 Kim F. Storm <storm@cua.dk>
16761
16762 * frame.c (Vmouse_highlight): New variable.
16763 (syms_of_frame): DEFVAR_LISP it.
16764
16765 * frame.h (Vmouse_highlight): Declare extern.
16766
16767 * xterm.h (struct x_display_info): Add mouse_face_hidden.
16768
16769 * xterm.c (disable_mouse_highlight): Removed variable.
16770 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
16771 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
16772 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
16773 and on after keyboard input.
16774 (x_term_init): Initialize mouse_face_hidden.
16775
16776 * msdos.h (struct display_info): Add mouse_face_hidden.
16777
16778 * msdos.c (disable_mouse_highlight): Removed variable.
16779 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
16780 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
16781 (internal_terminal_init): Initialize mouse_face_hidden.
16782 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
16783 and on after keyboard input.
16784
16785 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
16786
16787 * w32term.c (disable_mouse_highlight): Removed variable.
16788 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
16789 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
16790 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
16791 and on after keyboard input.
16792 (w32_initialize_display_info): Initialize mouse_face_hidden.
16793
16794 2002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
16795
16796 * msdos.c (last_mouse_window): New variable.
16797 (dos_rawgetc): Fix last change--if the mouse is in the same window
16798 as recorded in last_mouse_window, don't select this window.
16799
16800 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
16801
16802 * msdos.c (x_autoselect_window_p): New variable.
16803 (syms_of_msdos): Defvar it.
16804 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
16805 which the last mouse movement occured, unless it is already selected.
16806
16807 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
16808 New variables.
16809 (syms_of_xdisp): DEVFAR them.
16810 (hscroll_window_tree): Use automatic_hscroll_margin and
16811 Vautomatic_hscroll_step to compute the amount of window scrolling.
16812
16813 2002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16814
16815 * xterm.c (x-autoselect-window): New variable.
16816 (note_mouse_movement): Use it.
16817
16818 * keyboard.c: Do not include "systime.h" twice.
16819
16820 2002-02-15 Andreas Schwab <schwab@suse.de>
16821
16822 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
16823
16824 * alloc.c (NSTATICS): Increase to 1280.
16825
16826 2002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
16827
16828 * alloc.c (NSTATICS): Bump to 1026.
16829
16830 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
16831 (Vx_super_keysym): New variables.
16832 (syms_of_xterm): DEFVAR_LISP them.
16833 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
16834 variables to determine which keys to use for the various modifiers.
16835
16836 2002-02-13 Kim F. Storm <storm@cua.dk>
16837
16838 * window.c: (Vmode_line_in_non_selected_windows): Removed.
16839 (mode_line_in_non_selected_windows): New variable.
16840 (syms_of_window): DEFVAR_BOOL it.
16841
16842 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
16843 Use mode_line_in_non_selected_windows.
16844 (mode_line_in_non_selected_windows): Declare extern.
16845 (Vmode_line_in_non_selected_windows): Removed extern.
16846
16847 2002-02-13 Richard M. Stallman <rms@gnu.org>
16848
16849 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
16850 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
16851 (Fclear_this_command_keys): Doc fixes.
16852
16853 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
16854 (update_face_from_frame_parameter): Increment face_change_count
16855 and windows_or_buffers_changed to force redisplay using changed faces.
16856
16857 * xdisp.c (QCpropertize): New variable.
16858 (mode_line_proptrans_alist): New variable.
16859 (display_mode_element): New arg PROPS; all calls changed.
16860 Implement this, for strings.
16861 Handle literal output of strings by sharing the
16862 main-line code for strings, using local var `literal'.
16863 Handle :propertize feature.
16864 (syms_of_xdisp): Initialze and staticpro QCpropertize and
16865 mode_line_proptrans_alist.
16866
16867 2002-02-11 Kim F. Storm <storm@cua.dk>
16868
16869 * window.c: (Vmode_line_in_non_selected_windows): New variable.
16870 (syms_of_window): DEFVAR_LISP it.
16871
16872 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
16873 (CURRENT_MODE_LINE_FACE_ID): Use it.
16874 (Vmode_line_in_non_selected_windows): Declare extern.
16875
16876 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
16877 to get mode line face.
16878
16879 2002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
16880
16881 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
16882 variables; cus-start.el doesn't need them anymore.
16883
16884 2002-02-09 Kim F. Storm <storm@cua.dk>
16885
16886 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
16887 reduction. This fixes a display problem where stray newlines were
16888 inserted in the window (corrected by C-l). Clarified code (IMHO).
16889
16890 2002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
16891
16892 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
16893
16894 * xdisp.c (display_mode_lines): Fix last change.
16895
16896 2002-02-09 Jason Rumney <jasonr@gnu.org>
16897
16898 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
16899 match each other.
16900 (w32_load_system_font): Prevent Cleartype fonts from loading.
16901 (Fx_show_tip): Ensure tip frames are above other topmost windows.
16902
16903 2002-02-09 Kim F. Storm <storm@cua.dk>
16904
16905 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
16906 (CURRENT_MODE_LINE_HEIGHT): Use it.
16907 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
16908
16909 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
16910 (pos_visible_p, handle_face_prop): Likewise.
16911 (display_mode_lines): Likewise, but for the real selected window.
16912 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
16913
16914 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
16915 in non-selected windows.
16916 (realize_basic_faces): Realize it.
16917 (syms_of_term): Intern and staticpro it.
16918
16919 2002-02-08 Kim F. Storm <storm@cua.dk>
16920
16921 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
16922 Changed mail addresses to emacs-devel@gnu.org.
16923
16924 2002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
16925
16926 * fileio.c (Fsubstitute_in_file_name): If the file name includes
16927 ~user, and there's no such user, don't discard everything before ~user.
16928
16929 * floatfns.c (Fround): Doc fix.
16930
16931 2002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16932
16933 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
16934
16935 2002-02-07 Stefan Monnier <monnier@cs.yale.edu>
16936
16937 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
16938
16939 2002-02-07 Kim F. Storm <storm@cua.dk>
16940
16941 * keymap.c (where_is_internal): Only check whether definition is
16942 remapped if it fulfills is_command_symbol.
16943
16944 2002-02-07 Andreas Schwab <schwab@suse.de>
16945
16946 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
16947
16948 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
16949
16950 2002-02-06 Kim F. Storm <storm@cua.dk>
16951
16952 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
16953 defining command remapping. Doc updated.
16954 (Flookup_key): Remap command through keymap if KEY is a symbol.
16955 (is_command_symbol): New function.
16956 (Fkey_binding): Use it. New optional argument NO-REMAP.
16957 Doc updated. Callers changed. Perform command remapping via
16958 recursive call unless that arg is non-nil.
16959 (where_is_internal): New argument no_remap. Callers changed.
16960 Call recursively to find original key bindings for a remapped
16961 comand unless that arg is non-nil.
16962 (Fwhere_is_internal): New optional argument NO-REMAP.
16963 Doc updated. Callers changed. Pass arg to where_is_internal.
16964
16965 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
16966 (is_command_symbol): Add prototype.
16967
16968 * keyboard.c (Vthis_original_command): New variable.
16969 (syms_of_keyboard): DEFVAR_LISP it.
16970 (command_loop_1): Set it, and perform command remapping.
16971
16972 2002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16973
16974 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
16975
16976 2002-02-06 Jason Rumney <jasonr@gnu.org>
16977
16978 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
16979
16980 2002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
16981
16982 * charset.c (get_charset_id): Use if-else instead of ?:.
16983
16984 2002-02-06 Richard M. Stallman <rms@gnu.org>
16985
16986 * filelock.c (S_ISLNK): Define if not defined.
16987
16988 2002-02-03 Richard M. Stallman <rms@gnu.org>
16989
16990 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
16991
16992 * lread.c (read1): Redesign strategy for force_multibyte and
16993 force_singlebyte. Now is_multibyte records whether read_buffer
16994 is multibyte. Encountering any multibyte character makes it so.
16995
16996 2002-02-02 Stefan Monnier <monnier@cs.yale.edu>
16997
16998 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
16999 with the same sequence, map that sequence to f10 rather than f0.
17000
17001 2002-02-03 Andreas Schwab <schwab@suse.de>
17002
17003 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
17004 latter never being defined on GNU/Linux.
17005
17006 2002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
17007
17008 * xfaces.c (realize_default_face): Don't set the weight and slant of
17009 the default face to Qnormal, unless these attributes are unspecified.
17010
17011 2002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17012
17013 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
17014 Call cancel_hourglass unconditionally.
17015
17016 * eval.c (Fsignal): Remove duplicated declaration of
17017 the variable `display_hourglass_p'.
17018
17019 2002-01-31 Richard M. Stallman <rms@gnu.org>
17020
17021 * editfns.c (region_limit): Nicer error message.
17022
17023 * coding.c (decode_composition_emacs_mule):
17024 Give up if NCOMPONENT gets too large to index `component'.
17025
17026 * callint.c (check_mark): New arg to specify clearer error message.
17027 Callers changed.
17028
17029 2002-01-27 Richard M. Stallman <rms@gnu.org>
17030
17031 * minibuf.c (Fcompleting_read): Doc fix.
17032
17033 2002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17034
17035 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
17036 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
17037 Fix doc-strings.
17038
17039 2002-01-26 Richard M. Stallman <rms@gnu.org>
17040
17041 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
17042
17043 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
17044 and scroll_up_aggressively.
17045
17046 2002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17047
17048 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
17049
17050 2002-01-25 Stefan Monnier <monnier@cs.yale.edu>
17051
17052 * textprop.c (Fnext_property_change, Fnext_single_property_change)
17053 (Fprevious_property_change, Fprevious_single_property_change):
17054 Stay within the narrowed-buffer boundaries.
17055
17056 2002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
17057
17058 * term.c (Ftty_display_color_cells): New function.
17059 (syms_of_term): Defsubr it.
17060 (Ftty_display_color_cells, Ftty_display_color_p): Change the
17061 argument name to DISPLAY. Doc fix.
17062
17063 * dispextern.h: Add prototype for set_tty_color_mode and
17064 tty_setup_colors.
17065
17066 2002-01-24 Jason Rumney <jasonr@gnu.org>
17067
17068 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
17069 If region left to draw is not what was expected, mark the frame as
17070 garbaged.
17071
17072 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
17073 Combine the regions returned by BeginPaint and GetUpdateRect.
17074
17075 2002-01-23 Jason Rumney <jasonr@gnu.org>
17076
17077 * w32term.c (x_update_window_begin): Only hide caret if
17078 w32_use_visible_system_caret is set.
17079 (x_update_window_end): Only show caret if
17080 w32_use_visible_system_caret is set.
17081 (syms_of_w32term): Handle SystemParametersInfo call failing.
17082
17083 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
17084
17085 2002-01-22 Richard M. Stallman <rms@gnu.org>
17086
17087 * unexelf.c (unexec): Define n so as to cause compilation error
17088 for the code where people have often written n instead of nn.
17089
17090 * .gdbinit (hookpost-run): Defined.
17091
17092 2002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17093
17094 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
17095
17096 2002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17097
17098 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
17099 if fullscreen is being set.
17100
17101 2002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17102
17103 * minibuf.c (Fminibuffer_contents)
17104 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
17105 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
17106
17107 2002-01-21 Richard M. Stallman <rms@gnu.org>
17108
17109 * window.c (check_frame_size): Fix minimum height calculation.
17110
17111 2002-01-20 Ken Raeburn <raeburn@gnu.org>
17112
17113 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
17114 height before comparison.
17115 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
17116
17117 2002-01-20 Jason Rumney <jasonr@gnu.org>
17118
17119 * w32term.c (w32_system_caret_width): Remove.
17120 (w32_use_visible_system_caret): New user flag.
17121 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
17122 Windows reports a screen reader running.
17123 (x_update_window_begin): Hide the system caret.
17124 (x_update_window_end): Show the system caret.
17125 (x_display_and_set_cursor): Don't draw a cursor when
17126 w32_use_visible_system_caret is set. Do not adjust width.
17127
17128 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
17129 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
17130 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
17131 the user requests it. Use system default width when creating.
17132 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
17133
17134 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
17135 New window messages.
17136
17137 2002-01-20 Richard M. Stallman <rms@gnu.org>
17138
17139 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
17140
17141 2002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17142
17143 * doprnt.c (doprnt1): Fix typos in error call.
17144
17145 2002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
17146
17147 * unexelf.c (unexec) [__sgi]: Support the .got sections.
17148
17149 2002-01-20 Jason Rumney <jasonr@gnu.org>
17150
17151 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
17152 that Windows returns. If a double check fails, try to guess how
17153 ExtTextOut is going to act.
17154
17155 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
17156 in place of stricmp.
17157 (w32_list_synthesized_fonts): Removed.
17158 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
17159 (struct enumfont_t): New element; list.
17160 (enum_font_cb2): List all style and charset variations of a font.
17161 (Fw32_select_font): New optional argument; include_proportional.
17162 Exclude vertical fonts. Exclude proportional fonts unless
17163 include_proportional is non-nil.
17164 (w32_enable_synthesized_fonts): Change to a boolean.
17165 (Fw32_send_sys_command): Doc fix.
17166
17167 2002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17168
17169 * dispnew.c (update_frame): Move the variable `tem' to the block
17170 where it is used.
17171
17172 2002-01-19 Jason Rumney <jasonr@gnu.org>
17173
17174 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
17175 call to face-set-after-frame-default.
17176
17177 2002-01-18 Richard M. Stallman <rms@gnu.org>
17178
17179 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
17180 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
17181
17182 2002-01-17 Richard M. Stallman <rms@gnu.org>
17183
17184 * window.c (enlarge_window): When exceeding size of parent,
17185 directly delete all the siblings instead of trying to resize it.
17186
17187 2002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17188
17189 * term.c (set_tty_color_mode): Remove unused variable `tem'.
17190
17191 2002-01-16 Henrik Enberg <henrik@enberg.org>
17192
17193 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
17194
17195 2002-01-16 Kim F. Storm <storm@cua.dk>
17196
17197 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
17198 is invisible. This can happen if cursor is on top line of a
17199 window, and we switch to a buffer with a header line.
17200
17201 * w32term.c (x_erase_phys_cursor): Ditto.
17202
17203 2002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17204
17205 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
17206 `dont_resize' only when used.
17207
17208 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
17209
17210 2002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
17211
17212 * xdisp.c (display_mode_element): When computing charpos, depend
17213 on multibyteness of elt, not the text in field.
17214
17215 2002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17216
17217 * buffer.c (Fkill_all_local_variables):
17218 Increment `update_mode_lines' only once.
17219
17220 2002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17221
17222 * lisp.h (adjust_after_replace_noundo)
17223 (Fupdate_coding_systems_internal): Add prototypes.
17224
17225 * sound.c (Fplay_sound): Initialize header_size also for :data case.
17226
17227 2002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
17228
17229 Support for the --color command-line argument and tty-color-mode
17230 frame parameter:
17231
17232 * term.c (tty_default_color_capabilities, tty_setup_colors)
17233 (set_tty_color_mode): New functions.
17234 (term_init): Call tty_default_color_capabilities.
17235 (Qtty_color_mode_alist): New variable.
17236 (syms_of_term): Intern and staticpro it.
17237
17238 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
17239 frames.
17240 (do_switch_frame): For termcap frames, switch the tty
17241 color mode as specified by the frame's parameters.
17242 (Qtty_color_mode): New variable.
17243 (syms_of_frame): Intern and staticpro it.
17244
17245 * emacs.c (USAGE2): Add the --color option.
17246 (standard_args): Ditto.
17247
17248 2002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17249
17250 * xterm.h (struct x_output): New members want_fullscreen,
17251 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
17252 y_pixels_outer_diff.
17253 New enum for FULLSCREEN_* constants.
17254 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
17255 is NULL.
17256 (x_fullscreen_adjust): Add prototype.
17257
17258 * emacs.c (USAGE2): Add the new full-screen arguments.
17259 (standard_args): Ditto.
17260
17261 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
17262 New variables.
17263 (syms_of_xfns): Intern and staticpro them.
17264 (x_frame_parms) <"fullscreen">: New parameter.
17265 (x_fullscreen_move, x_set_fullscreen): New functions.
17266 (x_set_frame_parameters): Support for Qfullscreen.
17267 (x_real_positions): More accurate computation of the frame position.
17268 (x_figure_window_size): Support full-screen frames.
17269 (Fx_create_frame): Default the fullscreen parameter.
17270
17271 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
17272 (XTread_socket) <Expose>: Call x_check_fullscreen.
17273 <ConfigureNotify>: Don't resize to fullscreen.
17274 Call x_check_fullscreen_move, and set the want_fullscreen member of
17275 output_data.x.
17276
17277 2002-01-13 Jason Rumney <jasonr@gnu.org>
17278
17279 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
17280 for mice with more than 3 buttons.
17281
17282 * w32term.c (parse_button): New parameter xbutton. Callers changed.
17283 (w32_read_socket): Handle new "XBUTTON" messages.
17284
17285 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
17286 (syms_of_w32fns): DEFVAR_BOOL it.
17287 (w32_wnd_proc): Handle new "XBUTTON" messages.
17288
17289 2002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17290
17291 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
17292
17293 2002-01-13 Andreas Schwab <schwab@suse.de>
17294
17295 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
17296
17297 2002-01-12 Andreas Schwab <schwab@suse.de>
17298
17299 * .gdbinit (xbuffer): Remove address operator since data is now a
17300 pointer.
17301
17302 2002-01-11 Richard M. Stallman <rms@gnu.org>
17303
17304 * insdel.c (adjust_after_replace_noundo): New function.
17305
17306 * coding.c (code_convert_region): Don't copy old text if undo disabled.
17307
17308 2002-01-09 Jason Rumney <jasonr@gnu.org>
17309
17310 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
17311 when checking for multiple frames.
17312
17313 2002-01-08 Richard M. Stallman <rms@gnu.org>
17314
17315 * window.c (delete_window): Rewrite the code for changing the
17316 selected window to handle the case where WINDOW is not a leaf.
17317
17318 2002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
17319
17320 * process.c (send_process): Set src_multibyte to 1 after the call
17321 top setup_coding_system, not before the call.
17322
17323 2002-01-07 Jason Rumney <jasonr@gnu.org>
17324
17325 * xmenu.c (set_frame_menubar, xmenu_show):
17326 (xdialog_show): Initialize wv->help to Qnil.
17327
17328 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
17329 (w32_dialog_show): Initialize wv->help to Qnil.
17330
17331 2002-01-06 Jason Rumney <jasonr@gnu.org>
17332
17333 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
17334
17335 * w32menu.c (w32_menu_display_help): Revert last change.
17336
17337 * xmenu.c (menu_highlight_callback): Revert last change.
17338
17339 2002-01-06 Andreas Schwab <schwab@suse.de>
17340
17341 * insdel.c (make_gap_larger): Make sure buffer size does not
17342 overflow range of int.
17343
17344 2002-01-05 Jason Rumney <jasonr@gnu.org>
17345
17346 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
17347 OVERLAPS_P.
17348
17349 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
17350
17351 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
17352 to the left or to the right of the pointer, put it against
17353 the left screen edge.
17354 (x_frame_parms): Add missing braces around initializer.
17355
17356 * w32term.c (x_setup_relief_colors): Don't compute an image's
17357 background color if it doesn't have a Pixmap.
17358 (notice_overwritten_cursor): Don't depend on
17359 output_cursor and updated_area. Compare pixel coordinates with
17360 window's cursor pixel coordinates.
17361 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
17362 Call notice_overwritten_cursor with new arg list.
17363 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
17364 unconditionally.
17365 (x_draw_image_relief): Use predefined macro instead of
17366 constant when the value of `tool_bar_button_relief' is negative.
17367
17368 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
17369
17370 2002-01-04 Richard M. Stallman <rms@gnu.org>
17371
17372 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
17373
17374 2002-01-03 Richard M. Stallman <rms@gnu.org>
17375
17376 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
17377 (Fkey_binding): Try the `keymap' property map first.
17378 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
17379 minor mode bindings.
17380
17381 2002-01-03 Kim F. Storm <storm@cua.dk>
17382
17383 * keyboard.c (read_key_sequence): Fix cast of submaps arg to bcopy.
17384
17385 2002-01-02 Richard M. Stallman <rms@gnu.org>
17386
17387 * keyboard.c (read_key_sequence): Handle the keymap property
17388 before minor mode maps.
17389
17390 * editfns.c (Fformat): Update thissize from field_width
17391 based on the actual width, in the string case.
17392
17393 2002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17394
17395 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
17396 when used as truth value to prevent gcc warnings.
17397
17398 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
17399 * w32proc.c: Include <config.h>.
17400
17401 2002-01-01 Andreas Schwab <schwab@suse.de>
17402
17403 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
17404 not EMACS_INT, to make them compatible with DEFVAR_INT.
17405 * lisp.h (max_specpdl_size): Adjust declaration.
17406
17407 2002-01-01 Richard M. Stallman <rms@gnu.org>
17408
17409 * print.c (print_object): Test print_escape_nonascii only for
17410 unibyte strings.
17411 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
17412 when outputting to a multibyte buffer.
17413
17414 2001-12-29 Richard M. Stallman <rms@gnu.org>
17415
17416 * print.c (print_object): In multibyte string, use hex escapes.
17417 Use octal only for unibyte strings.
17418 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
17419
17420 * lread.c (read_escape): New arg BYTEREP for reporting whether
17421 escape forces unibyte or multibyte.
17422 (read1): When reading a string, take note of that info.
17423
17424 2001-12-29 Ken Raeburn <raeburn@gnu.org>
17425
17426 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
17427 comparison to test lisp value returned by Fget.
17428
17429 2001-12-29 Richard M. Stallman <rms@gnu.org>
17430
17431 * lisp.h (max_specpdl_size): Add declaration.
17432
17433 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
17434
17435 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
17436 Handle modifier bits. Correct typo in error message.
17437
17438 2001-12-28 Richard M. Stallman <rms@gnu.org>
17439
17440 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
17441 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
17442 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
17443 Update calls to Fdefine_abbrev.
17444 (write_abbrev): Update for changed data format.
17445 Don't list "system" abbrevs.
17446 (Fexpand_abbrev): Update use count with new data format.
17447 (describe_abbrev): Update for changed data format.
17448 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
17449
17450 * config.in (HAVE_MBSINIT): Add #undef.
17451
17452 * strftime.c (mbsinit): Define as no-op if not available.
17453
17454 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
17455 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
17456
17457 * keymap.c (Flookup_key): Error message if key has wrong data type.
17458 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
17459 (exclude_key): New variable.
17460
17461 2001-12-28 Gerd Moellmann <gerd@gnu.org>
17462
17463 * xterm.c (x_setup_relief_colors): Don't compute an image's
17464 background color if it doesn't have a Pixmap.
17465
17466 * xterm.c (notice_overwritten_cursor): Don't depend on
17467 output_cursor and updated_area. Compare pixel coordinates with
17468 window's cursor pixel coordinates.
17469 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
17470 Call notice_overwritten_cursor with new arg list.
17471 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
17472 unconditionally.
17473
17474 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
17475 height of the cursor line to the amount to scroll.
17476
17477 2001-12-27 Richard M. Stallman <rms@gnu.org>
17478
17479 * intervals.c (set_point_both): The position after an invisible,
17480 intangible character is not an acceptable stopping point.
17481
17482 2001-12-27 Ken Raeburn <raeburn@gnu.org>
17483
17484 * window.c (enlarge_window): In new preserve_before code, convert
17485 CURBEG from lisp object to integer before doing arithmetic.
17486
17487 2001-12-27 Richard M. Stallman <rms@gnu.org>
17488
17489 * bytecode.c (Fbyte_code): Undo previous change.
17490
17491 2001-12-26 Kim F. Storm <storm@cua.dk>
17492
17493 * keyboard.c (record_char): Ignore duplicate help-echo events only
17494 separated by mouse-movement. When tracking mouse, only record
17495 first and last mouse-movement event in same window.
17496 Don't record mouse-movement events in keyboard macros.
17497
17498 2001-12-25 Richard M. Stallman <rms@gnu.org>
17499
17500 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
17501 (Fenlarge_window): New arg PRESERVE_BEFORE.
17502
17503 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
17504 instead of Fstring_as_unibyte.
17505
17506 2001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17507
17508 The following changes remove mocklisp support:
17509
17510 * mocklisp.h, mocklisp.c: Files removed.
17511
17512 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
17513 `Qmocklisp' and `Qmocklisp_arguments'.
17514 Remove prototype of syms_of_mocklisp.
17515
17516 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
17517
17518 * callint.c: Do not include mocklisp.h.
17519 (Fcall_interactively): Do not test for mocklisp case.
17520
17521 * eval.c: Remove variables `Qmocklisp_arguments',
17522 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
17523 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
17524 Do not test for mocklisp case.
17525 (Fwhile): Remove unused variable `tem'.
17526 (syms_of_eval): Remove variable `moclisp-arguments'.
17527
17528 * data.c (wrong_type_argument): Remove mocklisp case.
17529
17530 * doc.c (Fdocumentation): Remove mocklisp case.
17531
17532 * emacs.c (main): Do not call syms_of_mocklisp.
17533
17534 2001-12-21 Richard M. Stallman <rms@gnu.org>
17535
17536 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
17537 to the left or to the right of the pointer, put it against
17538 the left screen edge.
17539
17540 2001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
17541
17542 * Makefile.in (distclean): Remove .gdbinit if we are building
17543 outside the source tree.
17544
17545 2001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
17546
17547 * w32.c (emacs_root_dir): New function.
17548
17549 * msdos.c (emacs_root_dir): New function.
17550
17551 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
17552 of the current drive as the fallback for default_directory.
17553
17554 * dired.c (file_name_completion): Run the elements of
17555 completion-ignored-extensions through ENCODE_FILE.
17556
17557 * lisp.h (scmp): Remove prototype, since it's now a static
17558 function private to dired.c.
17559
17560 2001-12-18 Richard M. Stallman <rms@gnu.org>
17561
17562 * dired.c (scmp): Function moved from minibuf.c.
17563 Delete multibyte handling--used only on encoded strings.
17564
17565 * minibuf.c (scmp): Function moved to dired.c.
17566
17567 * fns.c (merge): Add QUIT call.
17568
17569 2001-12-18 Dave Love <fx@gnu.org>
17570
17571 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
17572 language/georgian.el.
17573
17574 2001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
17575
17576 * Makefile.in (lisp, shortlisp): Synchronize with changes to
17577 lisp/Makefile.in:DONTCOMPILE.
17578
17579 2001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17580
17581 * xdisp.c (window_box_height): Do not return negative values.
17582 From Gerd Moellmann <gerd@gnu.org>.
17583
17584 * keyboard.c (head_table): Add missing braces around initializer.
17585
17586 * term.c (keys): Likewise.
17587
17588 * xfns.c (x_frame_parms, visual_classes): Likewise.
17589
17590 2001-12-17 Sam Steingold <sds@gnu.org>
17591
17592 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
17593 patch (COMPOSING_P, not COMPOSING).
17594
17595 2001-12-17 Richard M. Stallman <rms@gnu.org>
17596
17597 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
17598
17599 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
17600 before calling decode_coding.
17601
17602 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
17603
17604 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
17605 instead of only for COMPOSITION_DISABLED.
17606
17607 2001-12-16 Richard M. Stallman <rms@gnu.org>
17608
17609 * alloc.c (pure_alloc): After overflow, allocate just a small block.
17610
17611 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
17612
17613 * buffer.h (struct buffer): New field `display_error_modiff'.
17614 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
17615
17616 * window.c (Frecenter): Clear display_error_modiff field.
17617
17618 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
17619 Call redisplay_window, but not if display_error_modiff field says no.
17620 (redisplay_window_error): New function.
17621 (displayed_buffer): New variable.
17622 (redisplay_internal, redisplay_windows): Call the new functions
17623 instead of redisplay_window directly.
17624
17625 2001-12-15 Richard M. Stallman <rms@gnu.org>
17626
17627 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
17628
17629 2001-12-14 Andrew Innes <andrewi@gnu.org>
17630
17631 * makefile.w32-in (EMACSLOADPATH): Define.
17632 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
17633 (bootstrap-temacs): Remove dependency on bootstrap-clean.
17634
17635 2001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
17636
17637 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
17638 parameter have a numeric value all the time.
17639
17640 * w32fns.c (x_report_frame_params): Likewise.
17641
17642 2001-12-12 Richard M. Stallman <rms@gnu.org>
17643
17644 * fileio.c (Fwrite_region): Doc fix.
17645
17646 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
17647 (redisplay_internal): Call clear_image_cache only for window terminals.
17648
17649 2001-12-12 Gerd Moellmann <gerd@gnu.org>
17650
17651 * xdisp.c (move_it_vertically_backward): Change heuristic
17652 for the case that we didn't move far enough initially.
17653
17654 * window.c (Frecenter): Simplify computation in the case of window
17655 system frames and ARG < 0; use window_box_height.
17656
17657 2001-12-11 Richard M. Stallman <rms@gnu.org>
17658
17659 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
17660 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
17661
17662 2001-12-11 Andrew Innes <andrewi@gnu.org>
17663
17664 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
17665 arg is negative.
17666
17667 2001-12-11 Richard M. Stallman <rms@gnu.org>
17668
17669 * m/hp800.h: Split the __hpux conditional into the parts
17670 that are right for GNU/Linux too and the parts that are not.
17671 Use the former if GNU_LINUX.
17672 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
17673
17674 * s/gnu-linux.h (GNU_LINUX): Defined.
17675
17676 2001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17677
17678 * macros.c, msdos.c, w16select.c: Change doc-string comments to
17679 `new style' [w/`doc:' keyword].
17680
17681 2001-12-10 Jason Rumney <jasonr@gnu.org>
17682
17683 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
17684 before using.
17685
17686 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17687
17688 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
17689 keyword].
17690
17691 2001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
17692
17693 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
17694
17695 * s/hpux10.h (srand48): Don't undefine.
17696
17697 2001-12-09 Jason Rumney <jasonr@gnu.org>
17698
17699 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
17700 Add comment to explain where the struct came from.
17701 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
17702 (add_menu_item): Process pop-up menus first to avoid memory leak.
17703 (add_menu_item, w32_menu_display_help): Use `help' field as
17704 Lisp_Object.
17705 (w32_free_submenu_strings): Only free owner-drawn strings.
17706
17707 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17708
17709 * COPYING: Moved back.
17710
17711 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
17712 Add parentheses around && within ||.
17713
17714 * indent.c (compute_motion): Likewise.
17715
17716 * intervals.c (merge_properties_sticky): Likewise.
17717
17718 * coding.c (setup_coding_system, shrink_encoding_region)
17719 (Fdecode_sjis_char): Likewise.
17720
17721 2001-12-07 Andreas Schwab <schwab@suse.de>
17722
17723 * xdisp.c (display_mode_element): Don't read past end of string if
17724 it ends with '%'.
17725
17726 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
17727 can hold.
17728
17729 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
17730 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
17731 type changed to Lisp_Object.
17732 (syms_of_data): DEFVAR_LISP them.
17733
17734 2001-12-07 Richard M. Stallman <rms@gnu.org>
17735
17736 * callproc.c (init_callproc): Set Vdata_directory based on the source
17737 location whenever Emacs was run uninstalled.
17738
17739 2001-12-06 Paul Eggert <eggert@twinsun.com>
17740
17741 * config.in (HAVE_WORKING_VFORK): New #undefs.
17742 * process.c (create_process):
17743 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
17744 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
17745 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
17746 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
17747 * m/intel386.h (HAVE_VFORK): Likewise.
17748 * m/mips-siemens.h (HAVE_VFORK): Likewise.
17749 * m/mips.h (HAVE_VFORK): Likewise.
17750 * s/freebsd.h (vfork): Remove #define.
17751 * s/lynxos.h (HAVE_VFORK): Remove #undef.
17752 * s/usg5-4-2.h: Fix comment about vfork.
17753
17754 2001-12-06 Richard M. Stallman <rms@gnu.org>
17755
17756 * s/hpux10.h (random): Add undef.
17757 (HAVE_RANDOM): Define it just once.
17758
17759 2001-12-06 Stefan Monnier <monnier@cs.yale.edu>
17760
17761 * eval.c: Undo last change: the standard syntax is not wanted.
17762
17763 2001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
17764
17765 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
17766 scroll bars of the frame before deleting the frame itself. If the
17767 frame has a widget, delete the frame with XtDestroyWidget, and do
17768 not call XDestroyWindow before that.
17769
17770 2001-12-06 Kim F. Storm <storm@cua.dk>
17771
17772 * xfns.c (x_report_frame_params): Return actual fringe widths.
17773
17774 * w32fns.c (x_report_frame_params): Return actual fringe widths.
17775
17776 2001-12-05 Andrew Innes <andrewi@gnu.org>
17777
17778 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
17779 excessively large.
17780
17781 * insdel.c (make_gap_larger): New function.
17782 (make_gap_smaller): New function.
17783 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
17784 Call make_gap_smaller if arg is negative.
17785
17786 2001-12-04 Stefan Monnier <monnier@cs.yale.edu>
17787
17788 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
17789 Pass a dummy argument when calling interrupt_signal.
17790 (parse_menu_item): Mark disabled items before checking for empty def.
17791 (read_char_minibuf_menu_prompt): Make safety more visible.
17792 (read_key_sequence): Add a `first_unbound' variable.
17793 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
17794 unbound prefix as soon as we can detect it.
17795
17796 * doc.c (Fsnarf_documentation): Add prototype.
17797 (get_doc_string): Handle negative arguments.
17798 (Fdocumentation): Use AREF and ASIZE.
17799 Move the calls to get_doc_string to a single place.
17800 Don't confuse an interactive-spec for a docstring reference.
17801 (Fdocumentation_property): Take advantage of the fact that
17802 get_doc_string now ignores the sign of the docstring position.
17803
17804 * eval.c: Use standard syntax for usage in docstrings.
17805
17806 2001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17807
17808 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
17809
17810 2001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17811
17812 * xterm.c (x_draw_image_relief): Use predefined macro instead of
17813 constant when the value of `tool_bar_button_relief' is negative.
17814
17815 2001-12-02 Richard M. Stallman <rms@gnu.org>
17816
17817 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
17818 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
17819
17820 * fileio.c (read_non_regular): Delete Fsignal call.
17821
17822 2001-12-01 Stefan Monnier <monnier@cs.yale.edu>
17823
17824 * lisp.h (run_hook_list_with_args): Undo last change.
17825
17826 2001-12-01 Gerd Moellmann <gerd@gnu.org>
17827
17828 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
17829
17830 2001-12-01 Jason Rumney <jasonr@gnu.org>
17831
17832 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
17833
17834 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
17835 [!WM_MOUSELEAVE]: Define.
17836
17837 * w32menu.c (current_popup_menu, get_menu_item_info):
17838 (set_menu_item_info): New vars.
17839 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
17840 (w32_menu_show): Set current_popup_menu.
17841 (add_menu_item): Allocate new strings for owner-drawn menu items
17842 and help strings.
17843 Use owner-draw for disabled menu items again.
17844 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
17845 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
17846
17847 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
17848 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
17849 <WM_EXITMENULOOP>: Free menu strings.
17850 <WM_MOUSELEAVE>: Stop tracking mouse.
17851 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
17852
17853 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
17854 and mouse face.
17855
17856 2001-12-01 Kim F. Storm <storm@cua.dk>
17857
17858 The following changes add left-fringe and right-fringe
17859 frame parameters to adjust fringe widths, or remove one or
17860 both fringes.
17861
17862 * frame.h (struct frame): Remove trunc_area_pixel_width and
17863 trunc_area_cols fields.
17864 (Qleft_fringe, Qright_fringe): Declare.
17865 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
17866
17867 * frame.c (Qleft_fringe, Qright_fringe): New vars.
17868 (syms_of_frame): Initialize them.
17869
17870 * window.c (coordinates_in_window): Handle separate left and right
17871 fringe widths.
17872
17873 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
17874 and fringe_cols fields.
17875 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
17876 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
17877 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
17878 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
17879 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
17880 (x_compute_fringe_widths): Add prototype.
17881
17882 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
17883 fill fringe evenly with small dashes.
17884 (x_draw_fringe_bitmap): Clear background if necessary. Align and
17885 clip the new ZV bitmap to avoid jitter between rows.
17886 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
17887 background. Don't draw fringe bitmaps if fringe width is zero.
17888 (x_compute_fringe_widths): New function.
17889 (x_new_font, x_set_window_size_1): Use it.
17890
17891 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
17892 (x_set_frame_parameters): Process `font' parameter before other
17893 parameters as fringe widths depend on it.
17894 (x_set_fringe_width): New function.
17895 (x_figure_window_size): Use x_compute_fringe_widths.
17896 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
17897 parameters.
17898
17899 * widget.c (set_frame_size): Use x_compute_fringe_widths.
17900 (EmacsFrameSetCharSize): Ditto.
17901
17902 * w32term.h: Merged changes from xterm.h.
17903 * w32term.c: Merged changes from xterm.c.
17904 * w32fns.c: Merged changes from xfns.c.
17905
17906 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17907
17908 * COPYING: Removed.
17909
17910 2001-11-29 Dave Love <fx@gnu.org>
17911
17912 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
17913 extra extra slot.
17914 (detect_coding_mask): Fix call of detect_coding_iso2022.
17915
17916 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17917
17918 * fileio.c (file-name-coding-system)
17919 (default-file-name-coding-system): Doc fix (links to referenced
17920 variables added).
17921
17922 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
17923
17924 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
17925 Add dummy uses of gcproN variables.
17926
17927 * category.c (describe_category, describe_category_1)
17928 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
17929 (syms_of_category): Don't defsubr Sdescribe_categories.
17930
17931 2001-11-28 Richard M. Stallman <rms@gnu.org>
17932
17933 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
17934
17935 * Makefile.in (lispdir): New variable, referring to build dir.
17936 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
17937
17938 2001-11-28 Andrew Innes <andrewi@gnu.org>
17939
17940 * w32menu.c (w32_menu_display_help): Actually add the new argument
17941 OWNER.
17942
17943 2001-11-28 Jason Rumney <jasonr@gnu.org>
17944
17945 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
17946 menu items. From David Ponce <dponce@wanadoo.fr>.
17947 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
17948 conditionally.
17949 (w32_menu_display_help): New argument OWNER. Rewritten to store a
17950 help event in the owner frame's keyboard buffer.
17951
17952 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
17953 (Fx_show_tip): Don't subtract last width from row width.
17954
17955 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
17956 (w32_read_socket): Use EQ to compare frames.
17957
17958 2001-11-28 Gerd Moellmann <gerd@gnu.org>
17959
17960 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
17961 OVERLAPS_P.
17962
17963 2001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17964
17965 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
17966 `gcpro3' and `gcpro4'.
17967
17968 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
17969
17970 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
17971
17972 * ccl.c: Use AREF and ASIZE.
17973
17974 2001-11-27 Stefan Monnier <monnier@cs.yale.edu>
17975
17976 * lisp.h (run_hook_list_with_args): Remove.
17977 (LIST_END_P): Fix call to wrong_type_argument.
17978 (make_fixnum_or_float): Use EMACS_INT rather than int.
17979
17980 2001-11-26 Stefan Monnier <monnier@cs.yale.edu>
17981
17982 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
17983 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
17984
17985 * eval.c: Use AREF and ASIZE.
17986 (Ffetch_bytecode): Add the file name to the error message.
17987
17988 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
17989 which match the end of the file-name.
17990 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
17991 is not a valid env var, but leave it as is instead.
17992
17993 * keymap.c (access_keymap): Handle t bindings like nil bindings.
17994 Make nil bindings in char-tables transparent.
17995 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
17996
17997 2001-11-26 Richard M. Stallman <rms@gnu.org>
17998
17999 * textprop.c (set_text_properties_1): Allow START, END in either order.
18000 Do nothing if range is empty.
18001
18002 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
18003
18004 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
18005 (clean): Not here.
18006
18007 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
18008
18009 * textprop.c (set_text_properties_1): Clearly mark that the
18010 interval should not be empty.
18011
18012 * intervals.c (graft_intervals_into_buffer):
18013 Don't call set_text_properties_1 on an empty interval.
18014
18015 2001-11-25 Richard M. Stallman <rms@gnu.org>
18016
18017 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
18018
18019 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
18020 don't lose the data in it.
18021
18022 2001-11-25 Juanma Barranquero <lektu@terra.es>
18023
18024 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
18025
18026 * buffer.c (Fkill_buffer): Likewise.
18027
18028 * print.c (temp_output_buffer_setup): Likewise.
18029
18030 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
18031
18032 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
18033
18034 2001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
18035
18036 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
18037 Niemitalo <kon@iki.fi>.
18038
18039 2001-11-25 Jason Rumney <jasonr@gnu.org>
18040
18041 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
18042
18043 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
18044 (Fx_show_tip): Block input during frame creation.
18045 (Fx_show_tip, Fx_hide_tip): Enable.
18046
18047 2001-11-24 Richard M. Stallman <rms@gnu.org>
18048
18049 * lread.c (Fload): Detect recursive load error for more than 3
18050 nestings of the same file.
18051 (Vrecursive_load_depth_limit): Variable deleted.
18052 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
18053
18054 2001-11-24 Jason Rumney <jasonr@gnu.org>
18055
18056 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
18057 mouse position if either left or top is not specified.
18058
18059 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
18060 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
18061 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
18062 (my_create_tip_window): Assign tip_window.
18063 (x_create_tip_frame): Use same defaults as X.
18064 (compute_tip_xy): Remove unused variable. Use full screen width.
18065 (Fx_show_tip): Do not double height. Call ShowWindow directly.
18066
18067 * w32term.c (x_after_update_window_line): Doc fix.
18068 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
18069 frames.
18070 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
18071
18072 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
18073 for all Windowed systems.
18074
18075 2001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
18076
18077 * msdos.c (IT_clear_screen): If the frame's faces are not yet
18078 realized, use the initial screen colors to clear the screen.
18079
18080 2001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18081
18082 * textprop.c (Fset_text_properties): Remove unused variables
18083 `unchanged', `prev_changed', `s' and `len'.
18084
18085 * search.c (Freplace_match): Remove unused variable `inslen'.
18086
18087 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
18088
18089 2001-11-22 Jason Rumney <jasonr@gnu.org>
18090
18091 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
18092 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
18093 (my_create_tip_window): New function.
18094 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
18095 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
18096
18097 2001-11-20 Jason Rumney <jasonr@gnu.org>
18098
18099 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
18100 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
18101
18102 * w32fns.c (Vw32_system_coding_system): Remove.
18103 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
18104
18105 2001-11-19 Stefan Monnier <monnier@cs.yale.edu>
18106
18107 * fileio.c (Fwrite_region): Move choose_write_coding_system to
18108 after build_annotations.
18109
18110 * syntax.c (describe_syntax): Add dummy arg.
18111 (describe_syntax_1): Update call to describe_vector.
18112
18113 * category.c (describe_category): Add dummy arg.
18114 (describe_category_1): Update call to describe_vector.
18115
18116 * keymap.c (Fdescribe_vector): Add `describer' parameter.
18117 (describe_command, describe_translation): Add dummy second param.
18118 (describe_map): Call elt_describer with two arguments.
18119 (describe_vector_princ): Add `fun' parameter.
18120 Call it instead of the hardcoded `princ'.
18121 (describe_vector): Add arg `args'.
18122 Pass it as a new second argument to elt_describer.
18123
18124 * keymap.h (describe_vector): Update prototype.
18125
18126 * frame.c: Don't include keymap.h any more.
18127 (keys_of_frame): Remove.
18128
18129 * lisp.h (keys_of_frame): Remove declaration.
18130
18131 * emacs.c (main): Don't call `keys_of_frame' any more.
18132
18133 2001-11-14 Andreas Schwab <schwab@suse.de>
18134
18135 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
18136 if defined, 0 otherwise.
18137 (MAP_FAILED): Define if not defined and use it to test mmap failure.
18138 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
18139
18140 2001-11-19 Richard M. Stallman <rms@gnu.org>
18141
18142 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
18143
18144 2001-11-18 Jason Rumney <jasonr@gnu.org>
18145
18146 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
18147 (x_draw_bar_cursor): If the background color of the glyph under
18148 the cursor equals the frame's cursor color, use the glyph's
18149 foreground color for drawing the bar cursor.
18150 (x_after_update_window_line): Clear internal border in different
18151 circumstances.
18152 (w32_set_vertical_scroll_bar): Check for width and height > 0.
18153 (w32_draw_relief_rect): Correct relief by 1 pixel.
18154 (x_set_glyph_string_background_width):
18155 Set extends_to_end_of_line_p if the row's fill_line_p is set and
18156 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
18157 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
18158 if cursor_in_non_selected_windows is false.
18159 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
18160 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
18161 Notice if cursor gets overwritten.
18162 (notice_overwritten_cursor): Renamed from
18163 note_overwritten_text_cursor. Rewritten to take glyph widths
18164 into account, and to take X positions as parameters.
18165 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
18166 around call to x_draw_glyphs.
18167 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
18168 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
18169 color to use for image glyph reliefs.
18170 (x_draw_image_relief): Accept zero tool_bar_button_relief.
18171 (glyph_rect): Remove unused variable `area'.
18172
18173 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
18174 some items.
18175 (x_set_internal_border_width): Set frame garbaged when window
18176 doesn't exist yet.
18177 (Fx_create_frame): Accept zero tool_bar_button_relief.
18178 (x_clear_image_1, four_corners_best, image_background)
18179 (image_background_transparent): New functions.
18180 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
18181 (gs_format): Add `:background' entry.
18182 (lookup_image): Set IMG's background color if specified.
18183 (pbm_load, xbm_load_image, png_load): Set IMG's background field
18184 when appropriate.
18185 (x_clear_image_1): Reset `background_valid' and
18186 `background_transparent_valid' fields.
18187 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
18188 calculating it here. Set IMG's background_transparent field.
18189 (enum xpm_keyword_index): Add XPM_BACKGROUND.
18190 (enum png_keyword_index): Add PNG_BACKGROUND.
18191 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
18192 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
18193 (enum gif_keyword_index): Add GIF_BACKGROUND.
18194 (enum gs_keyword_index): Add GS_BACKGROUND.
18195 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
18196 Pre-calculate image background color where necessary.
18197 (x_create_x_image_and_pixmap, xbm_load, gs_load):
18198 Use display info's n_cbits entry for screen depth.
18199 (Fx_show_tip): Remove unused variables `buffer', `top',
18200 `left', `max_width' and `max_height'.
18201
18202 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
18203
18204 2001-11-18 Gerd Moellmann <gerd@gnu.org>
18205
18206 * puresize.h (BASE_PURESIZE): Increase to 750000.
18207
18208 2001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18209
18210 * frame.c (Fframe_live_p): Doc fix.
18211
18212 2001-11-18 Richard M. Stallman <rms@gnu.org>
18213
18214 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
18215 (message_dolog_marker3): New static variables hold three markers.
18216 (syms_of_xdisp): Initialize and staticpro them.
18217 (message_dolog): Use message_dolog_marker1..3 instead of
18218 allocating markers each time. Unchain them when done.
18219
18220 2001-11-17 Richard M. Stallman <rms@gnu.org>
18221
18222 * doc.c (Fsnarf_documentation): Doc fix.
18223
18224 2001-11-17 Andreas Schwab <schwab@suse.de>
18225
18226 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
18227
18228 2001-11-17 Richard M. Stallman <rms@gnu.org>
18229
18230 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
18231
18232 2001-11-17 Jason Rumney <jasonr@gnu.org>
18233
18234 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
18235
18236 2001-11-17 Gerd Moellmann <gerd@gnu.org>
18237
18238 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
18239 with invalid position.
18240
18241 2001-11-16 Richard M. Stallman <rms@gnu.org>
18242
18243 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
18244
18245 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
18246 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
18247 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
18248
18249 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
18250
18251 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
18252
18253 * fileio.c (build_annotations): Split off the tail.
18254 (build_annotations_2): New fun. Extracted from build_annotations.
18255 (Fwrite_region): Split the call to build_annotations into two
18256 calls to build_annotations and build_annotations_2.
18257
18258 2001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18259
18260 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
18261 clear_waiting_for_input with argument.
18262
18263 * xterm.h (x_update_cursor): Remove duplicated prototype.
18264
18265 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
18266
18267 * xterm.c (waiting_for_input): Remove unnecessary declaration.
18268
18269 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
18270
18271 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
18272
18273 * fileio.c (choose_write_coding_system): New fun, extracted
18274 from Fwrite_region.
18275 (Fwrite_region): Use it.
18276
18277 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
18278 (funcall_lambda, run_hook_with_args): Make static and add prototype.
18279 (ml_apply, find_handler_clause): Add prototype.
18280
18281 2001-11-16 Eli Zaretskii <eliz@gnu.org>
18282
18283 * config.in: Add #undef HAVE_COFF_H.
18284
18285 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
18286 Required for ISC 4.1.
18287
18288 2001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
18289
18290 * syswait.h (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
18291 Andrew Wiseman <a.wiseman@btclick.com>.
18292
18293 2001-11-16 Kim F. Storm <storm@cua.dk>
18294
18295 The following changes are made to clean up the various internal
18296 references to the fringes to actually use the term `fringe' for
18297 them. Previously, they were called `flags areas', `bitmap areas',
18298 `left/right side of windows', or implicitly as `flags' or
18299 `bitmaps':
18300
18301 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
18302 Comments fixed. Use renamed symbols.
18303
18304 * dispnew.c: Comment fix. Use renamed symbols.
18305
18306 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
18307 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
18308 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
18309
18310 * msdos.c: Comment fix.
18311
18312 * w32fns.c: Use renamed symbols.
18313
18314 * w32term.c: Comment fixes. Use renamed symbols.
18315 (fringe_bitmap_type): Renamed from bitmap_type.
18316 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
18317 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
18318 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
18319
18320 * w32term.h: Comment fixes. Use renamed symbols.
18321 (fringes_extra): Renamed from flags_areas_extra.
18322 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
18323 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
18324 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
18325 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
18326 (FRAME_X_LEFT_FRINGE_WIDTH):
18327 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
18328 (FRAME_X_RIGHT_FRINGE_WIDTH):
18329 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
18330
18331 * widget.c: Use renamed symbols.
18332
18333 * window.c: Comment fixes. Use renamed symbols.
18334 (coordinates-in-window-p): Doc fix.
18335
18336 * xdisp.c: Comment fixes. Use renamed symbols.
18337
18338 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
18339
18340 * xfns.c: Use renamed symbols.
18341
18342 * xterm.c: Comment fixes. Use renamed symbols.
18343 (fringe_bitmap_type): Renamed from bitmap_type.
18344 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
18345 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
18346 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
18347
18348 * xterm.h: Comment fixes. Use renamed symbols.
18349 (fringes_extra): Renamed from flags_areas_extra.
18350 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
18351 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
18352 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
18353 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
18354 (FRAME_X_LEFT_FRINGE_WIDTH):
18355 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
18356 (FRAME_X_RIGHT_FRINGE_WIDTH):
18357 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
18358
18359 2001-11-15 Jason Rumney <jasonr@gnu.org>
18360
18361 * w32menu.c (add-menu-item): Make help_echo and radio buttons
18362 work for most menu items. From David Ponce
18363 <david.ponce@wanadoo.fr>.
18364
18365 2001-11-15 Gerd Moellmann <gerd@gnu.org>
18366
18367 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
18368 Some x_set_* function expect to be called even if old and new
18369 value are equal.
18370
18371 * xdisp.c (build_desired_tool_bar_string): Accept zero
18372 tool_bar_button_relief.
18373
18374 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
18375
18376 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
18377
18378 * xterm.c (x_draw_bar_cursor): If the background color of the
18379 glyph under the cursor equals the frame's cursor color, use
18380 the glyph's foreground color for drawing the bar cursor.
18381
18382 * dispnew.c (direct_output_forward_char): Fix character/byte
18383 position comparison.
18384
18385 2001-11-15 Miles Bader <miles@gnu.org>
18386
18387 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
18388 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
18389 Update arguments to find_field.
18390 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
18391 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
18392 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
18393 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
18394
18395 2001-11-14 Richard M. Stallman <rms@gnu.org>
18396
18397 * editfns.c (Fpropertize): Allow call with 1 arg.
18398
18399 * dispextern.h (image_background, image_background_transparent):
18400 Conditionalize on HAVE_X_WINDOWS.
18401
18402 2001-11-13 Richard M. Stallman <rms@gnu.org>
18403
18404 * print.c (Fprin1_to_string): Doc fix.
18405
18406 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
18407
18408 * floatfns.c (Fceiling, Ffloor): Doc fixes.
18409
18410 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
18411
18412 * fileio.c (Ffile_accessible_directory_p): Doc fix.
18413
18414 * eval.c (syms_of_eval): Doc fix.
18415
18416 * coding.c (syms_of_coding): Doc fix.
18417
18418 * doc.c (Fsnarf_documentation): Doc fix.
18419
18420 * dispnew.c (syms_of_display): Doc fix.
18421
18422 * category.c (Fget_unused_category): Doc fix.
18423
18424 * buffer.c (syms_of_buffer): Doc fixes.
18425
18426 2001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
18427
18428 * print.c (prin1, print): Doc fix.
18429
18430 2001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18431
18432 * fontset.h: Remove declarations of variables
18433 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
18434
18435 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
18436 `Vclip_large_size_font'.
18437
18438 2001-11-13 Jason Rumney <jasonr@gnu.org>
18439
18440 * w32fns.c: Doc fix.
18441
18442 2001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18443
18444 * xfaces.c (Fface_attributes_as_vector): Doc fix.
18445
18446 * fns.c: Doc fix.
18447
18448 * emacs.c: Doc fix.
18449
18450 * coding.c: Doc fix.
18451
18452 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
18453 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
18454 `new style' [w/`doc:' keyword].
18455
18456 2001-11-12 Richard M. Stallman <rms@gnu.org>
18457
18458 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
18459 LeaveNotify events. Only FocusIn and FocusOut do that now.
18460 (x_display_and_set_cursor): Do display hollow cursors in active
18461 minibuffer windows when they are not selected.
18462
18463 2001-11-12 Jason Rumney <jasonr@gnu.org>
18464
18465 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
18466 * w32term.c: Change doc-string comments to `new style'
18467 [w/`doc:' keyword]. Doc fixes.
18468
18469 * w32fns.c: Don't define max.
18470 (Fx_open_connection): Only execute once.
18471
18472 2001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18473
18474 * ccl.c: Change macros to use do-while block instead of if-else.
18475 Use braces to follow GNU Coding Standards.
18476
18477 2001-11-11 Richard M. Stallman <rms@gnu.org>
18478
18479 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
18480
18481 * lread.c (read_escape): Use end_of_file_error for reporting eof.
18482
18483 * insdel.c (replace_range): Use adjust_markers_for_replace
18484 instead of adjust_markers_for_delete and adjust_markers_for_insert.
18485
18486 * intervals.h (set_text_properties, set_text_properties_1): Declare.
18487
18488 * textprop.c (set_text_properties_1): New subroutine
18489 broken out of set_text_properties.
18490 (set_text_properties): Use set_text_properties_1.
18491
18492 * intervals.c (graft_intervals_into_buffer):
18493 Use set_text_properties_1 to clear out properties.
18494
18495 * search.c (Freplace_match): Use replace_range to insert
18496 and delete. Don't request property inheritance from
18497 surrounding text.
18498
18499 2001-11-10 Jason Rumney <jasonr@gnu.org>
18500
18501 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
18502 vertical fonts. Allow them if face name is explicitly specified.
18503 Do not give up if we find a font that cannot be converted to an xlfd.
18504
18505 2001-11-10 Gerd Moellmann <gerd@gnu.org>
18506
18507 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
18508 instead of malloc/free.
18509
18510 2001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18511
18512 * xfaces.c (merge_face_vectors): Use braces to follow GNU
18513 Coding Standards.
18514 (Finternal_set_lisp_face_attribute): Likewise.
18515
18516 * buffer.c (Fbury_buffer): Likewise.
18517
18518 * indent.c (current_column_1): Remove unused variable `prev_col'.
18519
18520 * coding.c (encode_coding): Use precomputed value of `src'.
18521 (encode_coding): Remove unused variable `src_end'.
18522 (code_convert_region): Remove unused variables `count'.
18523
18524 2001-11-07 Jason Rumney <jasonr@gnu.org>
18525
18526 * w32term.c (x_display_and_set_cursor): Do not move system caret
18527 if cursor_glyph is NULL.
18528
18529 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18530
18531 * keymap.c (access_keymap): Fix compilation error.
18532
18533 2001-11-07 Miles Bader <miles@gnu.org>
18534
18535 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
18536
18537 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18538
18539 * intervals.c (graft_intervals_into_buffer):
18540 Remove #ifdef'd-out code.
18541 (graft_intervals_into_buffer): Remove unused variable `middle'.
18542
18543 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
18544 code (eval-current-buffer).
18545 Change doc-string comments to `new style' [w/`doc:' keyword].
18546
18547 2001-11-06 Richard M. Stallman <rms@gnu.org>
18548
18549 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
18550
18551 2001-11-06 Stefan Monnier <monnier@cs.yale.edu>
18552
18553 * lread.c (read1): Fix behavior with nested backquoting.
18554
18555 * keyboard.c (make_lispy_event): Check integerness and fix
18556 Lisp_Object/int mixup.
18557
18558 2001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18559
18560 * fns.c (copy_hash_table): Remove unused variable `v'.
18561
18562 * fontset.c (fontset_font_pattern): Remove unused variable
18563 `family_registry'.
18564
18565 * indent.c (current_column_1): Remove unused variable `prev_col'.
18566
18567 2001-11-05 Richard M. Stallman <rms@gnu.org>
18568
18569 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
18570
18571 * buffer.c (Fkill_buffer): Don't delete auto save file
18572 if buffer is modified.
18573
18574 2001-11-05 Andrew Innes <andrewi@gnu.org>
18575
18576 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
18577 CHECK_NUMBER_CDR.
18578
18579 2001-11-05 Richard M. Stallman <rms@gnu.org>
18580
18581 * unexelf.c (unexec): Minor changes; clean up comments.
18582
18583 2001-11-05 Sam Steingold <sds@gnu.org>
18584
18585 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
18586
18587 2001-11-05 Andreas Schwab <schwab@suse.de>
18588
18589 * sound.c (sound_perror): Save errno from being clobbered.
18590
18591 2001-11-05 Dale Hagglund <rdh@yottayotta.com>
18592
18593 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
18594 the program image directly.
18595
18596 2001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18597
18598 * buffer.h (Fbuffer_local_value): Add prototype.
18599
18600 2001-11-04 Richard M. Stallman <rms@gnu.org>
18601
18602 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
18603 and CHECK_BUFFER.
18604
18605 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
18606 (record_char): Likewise.
18607
18608 * keyboard.c (make_lispy_event): Don't insist a drag event must
18609 move to a different buffer position. Instead, check for moving at
18610 least double_click_fuzz.
18611
18612 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
18613
18614 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
18615
18616 * indent.c (current_column_1, Fmove_to_column): Separate the code
18617 for display-table glyphs from the code for buffer text, to fix
18618 bugs in the former.
18619
18620 2001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
18621
18622 * buffer.c (Fbuffer_local_value): New function.
18623 (syms_of_buffer): Defsubr it.
18624
18625 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
18626 value of `cursor-in-non-selected-windows'.
18627
18628 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
18629 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
18630 (syms_of_xdisp): Initialize it.
18631
18632 2001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18633
18634 * xfns.c (Fx_create_frame): Doc fix.
18635
18636 * coding.c: Change doc-string comments to `new style' [w/`doc:'
18637 keyword].
18638
18639 * eval.c (top_level_value, top_level_set): Remove commented and
18640 #ifdef'd-out code.
18641 (Fdefvar): Fix usage in doc-string.
18642
18643 2001-11-03 Richard M. Stallman <rms@gnu.org>
18644
18645 * xfns.c: Include unistd.h, if it exists.
18646
18647 * editfns.c: Move the include of ctype.h after unistd.h.
18648
18649 * gmalloc.c: Test BROKEN_PROTOTYPES.
18650
18651 2001-11-03 Ken Raeburn <raeburn@gnu.org>
18652
18653 * lisp.h (CHECK_STRING_CAR): New macro.
18654 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
18655 treating XCAR and XCDR as lvalues.
18656 (openp): Use CHECK_STRING_CAR.
18657 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
18658
18659 2001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
18660
18661 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
18662 (SIGMASKTYPE): Define.
18663
18664 * syssignal.h (sigunblock): Don't define if already defined.
18665
18666 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18667
18668 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
18669 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
18670 Fix typos in comments.
18671
18672 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
18673 and #ifdef'd-out code.
18674 Fix and reindent comments.
18675
18676 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
18677
18678 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
18679 argument `i' in macros.
18680
18681 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
18682 `i' in macros.
18683
18684 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
18685 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
18686 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
18687 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
18688 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
18689 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
18690 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
18691 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
18692 in macros.
18693
18694 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
18695 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
18696 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
18697 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
18698 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
18699 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
18700 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
18701 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
18702 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
18703 (remove unused second argument).
18704
18705 2001-11-02 Stefan Monnier <monnier@cs.yale.edu>
18706
18707 * syntax.c (describe_syntax): New wrapper.
18708 (Finternal_describe_syntax_value): Rename from describe_syntax.
18709 Don't insert space at front and \n at the end.
18710 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
18711
18712 * regex.c (re_wctype): Try to fix some warnings.
18713 (regcomp, regexec): Don't forget the __restrict.
18714
18715 2001-11-02 Richard M. Stallman <rms@gnu.org>
18716
18717 * textprop.c (Fget_char_property): Doc fix.
18718
18719 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18720
18721 * process.c (Fstart_process): Add usage to doc-string.
18722
18723 * data.c (Fsetq_default): Ditto.
18724
18725 * callint.c (Finteractive): Ditto.
18726
18727 2001-11-01 Stefan Monnier <monnier@cs.yale.edu>
18728
18729 * macros.c: Don't include keymap.h any more.
18730
18731 2001-11-01 Richard M. Stallman <rms@gnu.org>
18732
18733 * data.c (Fmake_local_variable): Doc fix.
18734
18735 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
18736 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
18737
18738 * keymap.c (Fdescribe_buffer_bindings): Print character property
18739 bindings along with or instead of the buffer local map.
18740 Make the overriding maps override what they should.
18741
18742 2001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18743
18744 * window.c (grow_mini_window): Fix typo in comment.
18745
18746 2001-11-01 Gerd Moellmann <gerd@gnu.org>
18747
18748 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
18749 (XTset_vertical_scroll_bar): Likewise.
18750
18751 * xfns.c (x_build_heuristic_mask): Use four_corners_best
18752 instead of IMAGE_BACKGROUND.
18753
18754 * xfns.c (four_corners_best): Reindent.
18755
18756 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
18757 Handle :box so that it is possible to specify sexprs.
18758
18759 2001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
18760
18761 * s/hpux11.h: New file.
18762
18763 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18764
18765 * emacs.c (USAGE1): Show command line option --no-window-system
18766 instead of --no-windows in usage.
18767 (standard_args): Rename --no-windows to --no-window-system.
18768 (bug_reporting_address): Follow Emacs coding conventions.
18769
18770 * eval.c (Fcommandp): Doc fix.
18771 Change doc-string comments to `new style' [w/`doc:' keyword].
18772
18773 * frame.c (Fframe_live_p): Doc fix.
18774
18775 * buffer.c (selective-display-ellipses): Doc fix.
18776
18777 2001-10-31 Gerd Moellmann <gerd@gnu.org>
18778
18779 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
18780
18781 * xfaces.c (realize_x_face): If C is not a single-byte character,
18782 set the face's colors_copied_bitwise_p instead of the defaulted_p
18783 members which have a different meaning.
18784 (free_face_colors): Do nothing for a face whose colors have been
18785 copied bitwise.
18786
18787 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
18788
18789 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18790
18791 * marker.c, mocklisp.c: Change doc-string comments to `new style'
18792 [w/`doc:' keyword].
18793
18794 2001-10-31 Gerd Moellmann <gerd@gnu.org>
18795
18796 * fns.c (require_unwind): Return Lisp_Object.
18797
18798 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18799
18800 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
18801 (last-input-char): Revert doc-string to be the same as the
18802 doc-string of `last-input-event'.
18803
18804 * xdisp.c: Fix typos in comments.
18805
18806 2001-10-31 Gerd Moellmann <gerd@gnu.org>
18807
18808 * window.c (grow_mini_window): Handle case that the root
18809 window is already smaller than the nominal mininum height.
18810
18811 2001-10-30 Stefan Monnier <monnier@cs.yale.edu>
18812
18813 * emacs.c (main): Don't call keys_of_macros any more.
18814
18815 * lisp.h (keys_of_macros): Remove.
18816
18817 * macros.c (keys_of_macros): Remove.
18818
18819 * xfaces.c (Fface_attribute_relative_p): Declare args.
18820
18821 2001-10-30 Jason Rumney <jasonr@gnu.org>
18822
18823 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
18824 (enum_font_cb2): Ignore fonts with vertical orientation.
18825
18826 2001-10-30 Richard M. Stallman <rms@gnu.org>
18827
18828 * keyboard.c (Finput_pending_p): Doc fix.
18829
18830 2001-10-30 Gerd Moellmann <gerd@gnu.org>
18831
18832 * xterm.c (x_after_update_window_line): Don't run the code
18833 clearing in borders for rows whose visible height is 0.
18834
18835 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
18836 resized_p flag is set. If not set, use the much less flickering
18837 method previously used.
18838
18839 * dispnew.c (change_frame_size_1): Set frame's resized_p.
18840
18841 * frame.h (struct frame) <resized_p>: New member.
18842
18843 * lread.c (to_multibyte): Ensure read_buffer is at least twice
18844 as large as the number of bytes to convert.
18845
18846 * lread.c (to_multibyte): New function.
18847 (read1): Use it.
18848
18849 2001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
18850
18851 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
18852
18853 2001-10-30 Gerd Moellmann <gerd@gnu.org>
18854
18855 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
18856 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
18857 if the row's fill_line_p is set and drawing the last glyph with
18858 DRAW_IMAGE_{RAISED,SUNKEN}.
18859
18860 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
18861
18862 2001-10-29 Stefan Monnier <monnier@cs.yale.edu>
18863
18864 * xmenu.c: Include coding.h and charset.h.
18865 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
18866 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
18867 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
18868 Explicitly set wv->help. Use `TRUE' rather than `True'.
18869 (menu_help_callback): Use empty_string.
18870
18871 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
18872 (Fx_popup_dialog): Explicitly init f.
18873 (w32_menu_display_help): Use empty_string.
18874
18875 2001-10-29 Richard M. Stallman <rms@gnu.org>
18876
18877 * fns.c (Frequire): Detect recursive try to require the same
18878 feature 3 or more levels deep, and get error.
18879 (require_unwind): New subroutine.
18880 (require_nesting_list): New variable.
18881 (syms_of_fns): Init and staticpro it.
18882
18883 * print.c (print_object): Clarify indication of insertion type.
18884
18885 2001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
18886
18887 * coding.c (syms_of_coding): Document that locale-coding-system is
18888 used for decoding input on X.
18889
18890 * window.c (Fscroll_left, Fscroll_right): Doc fix.
18891
18892 2001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18893
18894 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
18895 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
18896
18897 2001-10-29 Gerd Moellmann <gerd@gnu.org>
18898
18899 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
18900 use NO_CURSOR if cursor_in_non_selected_windows is false.
18901
18902 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
18903 the slant attribute if FRAME is t.
18904
18905 * xfns.c (x_set_internal_border_width): Set frame garbaged
18906 when X window doesn't exist yet.
18907
18908 * xterm.c (x_after_update_window_line): Clear internal border
18909 in different circumstances.
18910
18911 * xterm.c (XTread_socket) <KeyPress>: Don't use
18912 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
18913 <handa@etl.go.jp>.
18914
18915 2001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
18916
18917 * m/ibms390.h: New file. From Adam Thornton
18918 <athornton@sinenomine.net>.
18919
18920 2001-10-28 Gerd Moellmann <gerd@gnu.org>
18921
18922 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
18923
18924 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
18925 a loop counter.
18926
18927 2001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18928
18929 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
18930
18931 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
18932 keyword].
18933 Fix typos in comments.
18934
18935 * emacs.c (bug_reporting_address): New function.
18936 Use it when displaying usage message.
18937
18938 * minibuf.c (read_minibuf): Remove unused external declaration of
18939 variable `Qread_only'.
18940
18941 * keymap.c (access_keymap): Remove unused variable `charset'.
18942
18943 2001-10-28 Miles Bader <miles@gnu.org>
18944
18945 * xfaces.c (merge_face_heights): Handle TO being relative as well.
18946 Remove #ifdef'd-out code.
18947 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
18948 (syms_of_xfaces): Initialize them.
18949
18950 2001-10-27 Jason Rumney <jasonr@gnu.org>
18951
18952 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
18953 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
18954 position using the system caret.
18955
18956 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
18957 (w32_system_caret_height, w32_system_caret_x)
18958 (w32_system_caret_y): New variables for tracking system caret.
18959 (w32_initialize): Initialize them.
18960 (x_display_and_set_cursor): Make system caret follow the active cursor.
18961
18962 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
18963 New messages types.
18964
18965 * w32term.c (note_mouse_highlight): Clear old help_echo.
18966
18967 2001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18968
18969 * xterm.c: Fix typo in a comment.
18970
18971 * emacs.c: Fix typos in comments.
18972 Remove unnecessary spaces.
18973 Change doc-string comments to `new style' [w/`doc:' keyword].
18974 (USAGE2): Fix typos in usage string.
18975
18976 * xterm.c: Fix typo in a comment.
18977
18978 * lisp.h (gdb_lisp_params): Remove code in #if 0 which is now in
18979 emacs.c.
18980
18981 2001-10-27 Gerd Moellmann <gerd@gnu.org>
18982
18983 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
18984 instead of 1/2 line_height in the heuristic for skipping
18985 farther backward when target_y was not reached.
18986
18987 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
18988 Display errno only if non-zero.
18989 (sound_warning): New function.
18990 (vox_configure): Don't treat failing to set sample rate as error.
18991 (various places): Improve error messages.
18992
18993 2001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
18994
18995 * fileio.c (Faccess_file): Run the argument filename through
18996 Fexpand_file_name, before using it.
18997
18998 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
18999 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
19000
19001 2001-10-26 Gerd Moellmann <gerd@gnu.org>
19002
19003 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
19004
19005 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
19006 Fix clearing in the case of scroll bars on the right.
19007
19008 2001-10-26 Juanma Barranquero <lektu@terra.es>
19009
19010 * w32gui.h (XImage): Add a dummy typedef.
19011
19012 2001-10-26 Gerd Moellmann <gerd@gnu.org>
19013
19014 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
19015
19016 2001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
19017
19018 * frame.c (Fframe_parameter): Fix last change.
19019
19020 * fileio.c: Revert last change (which removed old commented-out
19021 version of expand-file-name). Add a comment that explains why
19022 this old version should not be removed.
19023
19024 2001-10-25 Gerd Moellmann <gerd@gnu.org>
19025
19026 * frame.c (Fframe_parameter): Fix a bug whereby some
19027 ``artificial'' frame parameters, like `minibuffer' were not
19028 obtained by calling Fframe_parameters.
19029
19030 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
19031 cursor differently.
19032
19033 * xdisp.c (move_it_vertically_backward): Compute line height
19034 differently. Add heuristic to try to be more compatible to 20.x.
19035
19036 2001-10-25 Stefan Monnier <monnier@cs.yale.edu>
19037
19038 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
19039
19040 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
19041 boolean.
19042
19043 2001-10-25 Miles Bader <miles@gnu.org>
19044
19045 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
19046 BG is a pointer to a structure, not a structure.
19047 (gif_format, png_format): Add missing commas.
19048
19049 2001-10-24 Richard M. Stallman <rms@gnu.org>
19050
19051 * xfaces.c (Fface_attributes_as_vector): New function.
19052 (syms_of_xfaces): Defsubr it.
19053
19054 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19055
19056 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
19057 variable `area'.
19058
19059 2001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19060
19061 * search.c (scan_newline): Remove unused variable `selective_display'.
19062
19063 2001-10-25 Miles Bader <miles@gnu.org>
19064
19065 * dispextern.h (struct image): Add `background',
19066 `background_valid', and `background_transparent' fields.
19067 (image_background, image_background_transparent): New declarations.
19068 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
19069 * xfns.c (image_background, image_background_transparent)
19070 (four_corners_best): New functions.
19071 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
19072 (gs_format): Add `:background' entry.
19073 (lookup_image): Set IMG's background color if specified.
19074 (pbm_load, xbm_load_image, png_load): Set IMG's background field
19075 when appropriate.
19076 (x_clear_image_1): Reset `background_valid' and
19077 `background_transparent_valid' fields.
19078 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
19079 calculating it here. Set IMG's background_transparent field.
19080 (enum xpm_keyword_index): Add XPM_BACKGROUND.
19081 (enum png_keyword_index): Add PNG_BACKGROUND.
19082 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
19083 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
19084 (enum gif_keyword_index): Add GIF_BACKGROUND.
19085 (enum gs_keyword_index): Add GS_BACKGROUND.
19086 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
19087 Pre-calculate image background color where necessary.
19088 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
19089 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
19090 color to use for image glyph reliefs.
19091
19092 2001-10-24 Gerd Moellmann <gerd@gnu.org>
19093
19094 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
19095 in full-width rows.
19096
19097 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
19098 Fix clearing of area not covered by scroll bar.
19099
19100 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19101
19102 * xterm.c (x_insert_glyphs): Remove unused variables `real_end'
19103 and `real_start'.
19104 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
19105 (glyph_rect): Remove unused variable `area'.
19106
19107 2001-10-24 Gerd Moellmann <gerd@gnu.org>
19108
19109 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
19110
19111 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
19112 (row_containing_pos): Take additional argument DY.
19113 Treat rows ending in middle of char differently.
19114 (display_line): Handle tabs on window systems differently.
19115
19116 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
19117 with additional argument.
19118
19119 * dispextern.h (row_containing_pos): Adjust prototype.
19120
19121 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
19122 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
19123 (try_window_id, try_window_reusing_current_matrix)
19124 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
19125 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
19126
19127 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19128
19129 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
19130 gnuemacs).
19131 (HAVE_BOXES): Fix typo in comment.
19132 (push_menu_pane): Fix typo in comment.
19133
19134 * xdisp.c (display_prop_string_p): Remove unused local declaration
19135 of `Qwhen'.
19136 (single_display_prop_string_p): Remove unused local declarations
19137 of `Qwhen' and `Qmargin'.
19138 (string_buffer_position): Remove unused variable `around'.
19139 (store_frame_title): Remove unused variable `width'.
19140
19141 * window.c: Don't define max.
19142 (coordinates_in_window): Remove unused variable `uy'.
19143
19144 * widget.c: Don't define max.
19145
19146 * process.c: Don't define max.
19147 (create_process): Remove unused variable `buffer'.
19148
19149 2001-10-23 Gerd Moellmann <gerd@gnu.org>
19150
19151 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
19152
19153 2001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
19154
19155 * xfaces.c (Finternal_set_lisp_face_attribute)
19156 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
19157 frame is on a windowed display.
19158
19159 2001-10-23 Gerd Moellmann <gerd@gnu.org>
19160
19161 * dispnew.c (sync_window_with_frame_matrix_rows):
19162 Fix handling of windows which aren't full-width, fix handling
19163 of marginal areas.
19164
19165 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
19166
19167 2001-10-23 Andreas Schwab <schwab@suse.de>
19168
19169 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
19170 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
19171
19172 2001-10-23 Gerd Moellmann <gerd@gnu.org>
19173
19174 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
19175 REAL_END. Notice if cursor gets overwritten.
19176 (notice_overwritten_cursor): Take X positions as parameters.
19177 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
19178 around call to x_draw_glyphs.
19179
19180 2001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19181
19182 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
19183 instead of C) and usage.
19184
19185 * editfns.c (char-to-string): Fix argument names (use CHAR instead
19186 of C) and usage.
19187
19188 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
19189 `left', `max_width' and `max_height'.
19190
19191 2001-10-23 Gerd Moellmann <gerd@gnu.org>
19192
19193 * xdisp.c (display_line): For a tab continued to the next line,
19194 set row's ends_in_middle_of_char_p.
19195
19196 2001-10-22 Gerd Moellmann <gerd@gnu.org>
19197
19198 * xdisp.c (display_line): Fix computation of continuation lines
19199 width for TABs.
19200
19201 2001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19202
19203 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
19204 `Qlaplace'.
19205
19206 * fileio.c: Remove unused code.
19207
19208 2001-10-22 Miles Bader <miles@gnu.org>
19209
19210 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
19211 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
19212 Remove `DOC_STRINGS_IN_COMMENTS' cases.
19213
19214 2001-10-21 Jason Rumney <jasonr@gnu.org>
19215
19216 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
19217
19218 2001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
19219
19220 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
19221 (Finsert_string): Avoid the multi-line string literals warning.
19222
19223 2001-10-22 Miles Bader <miles@gnu.org>
19224
19225 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
19226 (Fdocumentation): Don't use it.
19227 (syms_of_doc): Don't initialize it.
19228
19229 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
19230 * print.c (Fwith_output_to_temp_buffer): Likewise.
19231 * window.c (Fsave_window_excursion): Likewise.
19232 * editfns.c (Fsave_excursion, Fsave_current_buffer)
19233 (Fsave_restriction): Likewise.
19234 * eval.c (Frun_hooks, Frun_hook_with_args)
19235 (Frun_hook_with_args_until_failure)
19236 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
19237 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
19238 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
19239 (Funwind_protect, Fcondition_case): Likewise.
19240 * coding.c (Ffind_operation_coding_system): Likewise.
19241 * keyboard.c (Ftrack_mouse): Likewise.
19242
19243 2001-10-21 Miles Bader <miles@gnu.org>
19244
19245 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
19246 (Fmake_hash_table): Add usage: string to doc string.
19247 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
19248 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
19249 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
19250 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
19251 (Fml_prefix_argument_loop): Likewise.
19252
19253 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19254
19255 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
19256
19257 * sysdep.c (init_sys_modes): Change doc-string comments to `new
19258 style' [w/`doc:' keyword].
19259
19260 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
19261 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
19262 comments to `new style' [w/`doc:' keyword].
19263
19264 2001-10-21 Jason Rumney <jasonr@gnu.org>
19265
19266 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
19267
19268 * w32term.c (remember_mouse_glyph): New function.
19269 (w32_mouse_position): Use it.
19270 (note_mouse_movement): If the mouse moved off the glyph, remember
19271 its new position.
19272
19273 * w32term.h (struct w32_output): Correct spelling of x_compatible.
19274 (w32_display_info): Add mouse_face_overlay.
19275
19276 * w32term.c (notice_overwritten_cursor): Renamed from
19277 note_overwritten_text_cursor. Rewritten to take glyph widths into
19278 account.
19279 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
19280 (fast_find_string_pos): New function.
19281 (fast_find_position): Return the correct vpos. Add parameter
19282 STOP. In the final row, stop before glyphs having STOP as object.
19283 Don't consider glyphs that are not from a buffer.
19284 (fast_find_position) [0]: Add a presumably more correct version
19285 for after 21.1.
19286 (expose_window_tree, expose_frame): Don't compute intersections here.
19287 (expose_window): Do it here instead.
19288 (expose_window_tree, expose_window, expose_line): Return 1 when
19289 overwriting mouse-face.
19290 (expose_window): If W is the window currently being updated, mark
19291 the frame garbaged.
19292 (expose_frame): If mouse-face was overwritten, redo it.
19293 (x_use_underline_position_properties): New variable.
19294 (syms_of_xterm): DEFVAR_BOOL it.
19295 (x_draw_glyph_string): Add comment to use it in future.
19296 (x_draw_glyph_string): Restore clipping after drawing box.
19297 Fix a computation of the underline position.
19298 (w32_get_glyph_string_clip_rect): Minor cleanup.
19299 (x_fill_stretch_glyph_string): Remove an assertion.
19300 (x_produce_glyphs): Don't convert multibyte characters
19301 to unibyte characters in unibyte buffers.
19302 (cursor_in_mouse_face_p): New function.
19303 (x_draw_stretch_glyph_string): Use it to choose a different GC
19304 when drawing a cursor within highlighted text. Don't draw
19305 background again if it has already been drawn.
19306 (x_draw_glyph_string_box): Don't draw a full-width
19307 box just because the glyph row's full_width_p flag is set.
19308 (x_draw_glyphs): Fix computation of rightmost x for
19309 full-width rows.
19310 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
19311 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
19312 change bottom shadow accordingly. Some cleanup.
19313 (x_update_window_end): Handle overwritten mouse face
19314 also for tool bar windows.
19315 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
19316 DRAW is DRAW_IMAGE_RAISED.
19317 (clear_mouse_face): Return 1 if text with mouse face was
19318 actually redrawn. Make the function static.
19319 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
19320 optimize away highlighting if we pass over that same overlay again.
19321 (note_mouse_highlight): Call mouse_face_overlay_overlaps
19322 to detect a case where we have to highlight a different region
19323 despite not having left the currently highlighted region.
19324 Set mouse_face_overlay in the x_display_info. Avoid changing the
19325 mouse pointer shape when show_mouse_face has already done it, or
19326 there is no need. Handle mouse-face and help-echo in strings.
19327 (glyph_rect): New function.
19328 (w32_mouse_position): Use it to raise the threshold for mouse
19329 movement event generation.
19330 (w32_initialize_display_info): Initialize the x_display_info's
19331 mouse_face_overlay.
19332 (w32_set_vertical_scroll_bar): Don't clear a zero height
19333 or width area.
19334 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
19335 a widget to zero height.
19336
19337 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
19338 Protect unibyte strings created by replacing their multibyte
19339 equivalents in menu_items.
19340 (w32_menu_show): Don't overwrite an item's name with its key
19341 description in case the description is a multibyte string.
19342 (single_submenu): Some cleanup.
19343
19344 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
19345 (postprocess_image): New function.
19346 (lookup_image): Call it for all image types except PostScript.
19347 (x_kill_gs_process): Call postprocess_image.
19348 (tiff_error_handler, tiff_warning_handler): New functions.
19349 (tiff_load): Install them as handlers.
19350 (x_kill_gs_process): Recognize if someone has cleared the image
19351 cache under us.
19352 (valid_image_p): Protect better against invalid image
19353 specifications. Previous code could signal an error.
19354 (Fx_hide_tip, Fshow_tip): Doc fix.
19355 (Fv_max_tooltip_size): New variable.
19356 (syns_of_xfns): DEFVAR_LISP it.
19357 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
19358 window buffer to *tip* right after creating the frame. Set frame's
19359 window_width. Use a maximum tooltip size specified by
19360 Vx_max_tooltip_size, if that has valid contents.
19361 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
19362 Make sure the tooltip is completely visible.
19363 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
19364 (Fx_create_frame): Adjust the frame's height for presence
19365 of the tool bar before calling x_figure_window_size.
19366 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
19367 when the window gets smaller.
19368 (x_set_foreground_color): Set frame's cursor_pixel.
19369 (x_set_foreground_color, x_set_background_color): Cleaned up.
19370 (x_set_font): Handle case of x_new_fontset returning the same name
19371 as before, although there was a change in fontsets.
19372
19373 2001-10-21 Miles Bader <miles@gnu.org>
19374
19375 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
19376 (Flogxor): Add usage: string to doc string.
19377 * charset.c (Fstring): Likewise.
19378 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
19379 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
19380
19381 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19382
19383 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
19384
19385 * alloc.c: Reindent DEFUNs with doc: keywords.
19386
19387 * abbrev.c (Finsert_abbrev_table_description): Reindent.
19388
19389 * frame.c: Change doc-string comments to `new style' [w/`doc:'
19390 keyword].
19391
19392 See ChangeLog.9 for earlier changes.
19393
19394 ;; Local Variables:
19395 ;; coding: iso-2022-7bit
19396 ;; End:
19397
19398 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
19399 Copying and distribution of this file, with or without modification,
19400 are permitted provided the copyright notice and this notice are preserved.
19401
19402 ;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4