* doc.c: New variable Vbuild_files.
[bpt/emacs.git] / src / ChangeLog
1 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2
3 * doc.c: New variable Vbuild_files.
4 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
5 file names from buildobh.lst. Only attach docstrings from files
6 that are in Vbuild_files.
7 (syms_of_doc): Defvar Vbuild_files.
8
9 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
10 and w32*.o.
11 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
12 (mostlyclean): rm buildobj.lst
13
14 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
15 is linked.
16
17 2004-11-09 Kim F. Storm <storm@cua.dk>
18
19 * fringe.c (update_window_fringes): Update fringe bitmaps if
20 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
21 also update previous row to get rid of misc. artifacts.
22
23 2004-11-08 Kim F. Storm <storm@cua.dk>
24
25 * xdisp.c (fast_find_position): Fix start pos if header line present.
26 (note_mouse_highlight): Clear mouse face if we move out of text area.
27
28 2004-11-08 Eli Zaretskii <eliz@gnu.org>
29
30 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
31 Don't include <sys/time.h> explicitly.
32 Include <stdio.h> unconditionally, not just on MacOS.
33
34 2004-11-08 Kenichi Handa <handa@m17n.org>
35
36 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
37 don't pay attention to '\' before '*'.
38 (fontset_pattern_regexp): Change the meaning of the second arg.
39 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
40 (check_fontset_name): Try NAME as literal at first, and if it
41 failes, try NAME as pattern.
42
43 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
44
45 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
46
47 2004-11-07 Andreas Schwab <schwab@suse.de>
48
49 * lisp.h: Declare Fmsdos_downcase_filename.
50 * dired.c: Don't declare Fmsdos_downcase_filename.
51 * fileio.c: Likewise.
52
53 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
54
55 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
56 comparisons with integers instead of Lisp_Object address.
57 (Fmsdos_set_keyboard): Declare argument allkeys.
58
59 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
60
61 * dired.c: extern declare Fmsdos_downcase_filename on MSDOS to avoid
62 int/Lisp_Object mixup.
63
64 * fileio.c: Ditto.
65
66 2004-11-06 Steven Tamm <steventamm@mac.com>
67
68 * editfns.c: Need to include sys/time.h before resource.h on darwin.
69
70 2004-11-06 Richard M. Stallman <rms@gnu.org>
71
72 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
73
74 * xfaces.c (merge_named_face): GCPRO the face_name in the
75 named_merge_point struct that we make.
76 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
77
78 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
79 before deciding whether to inactivate mark.
80
81 2004-11-06 Lars Brinkhoff <lars@nocrew.org>
82
83 * config.in: Regenerate (add HAVE_GETRUSAGE).
84 * editfns.c (Fget_internal_run_time): New function.
85 (syms_of_data): Defsubr it.
86 * fns.c (sxhash): As far as possible, merge calculation of
87 hash code for symbols and strings.
88
89 2004-11-06 Eli Zaretskii <eliz@gnu.org>
90
91 * frame.c (syms_of_frame): Fix the example in the doc string.
92
93 2004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
94
95 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
96
97 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
98 (create_and_show_dialog): Revert change from 2004-10-31.
99
100 2004-11-05 Luc Teirlinck <teirllm@auburn.edu>
101
102 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
103
104 2004-11-05 Kim F. Storm <storm@cua.dk>
105
106 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
107
108 * fileio.c (Ffile_modes): Doc fix.
109 (auto_save_1): Check for Ffile_modes nil value.
110
111 2004-11-05 Kim F. Storm <storm@cua.dk>
112
113 * xselect.c (struct selection_event_queue, selection_queue)
114 (x_queue_selection_requests, x_queue_event)
115 (x_start_queuing_selection_requests)
116 (x_stop_queuing_selection_requests): Add new queue for selection
117 input events to replace previous XEvent queue in xterm.c.
118 (queue_selection_requests_unwind): Adapt to new queue.
119 (x_reply_selection_request): Adapt to new queue. Unexpect
120 wait_object in case of x errors (memory leak).
121 (x_handle_selection_request, x_handle_selection_clear): Make static.
122 (x_handle_selection_event): New function. May queue selection events.
123 (wait_for_property_change_unwind): Use save_value instead of cons.
124 Clear property_change_reply_object.
125 (wait_for_property_change): Abort if already waiting.
126 Use save_value instead of cons for unwind data.
127 (x_handle_property_notify): Skip events already arrived, but don't
128 free them, as "arrived" field is checked by wait_for_property_change,
129 and it will be freed by unwind or explicit unexpect_property_change.
130 (x_get_foreign_selection): Add to new queue.
131 (receive_incremental_selection): Don't unexpect wait_object when done
132 as it has already been freed by previous wait_for_property_change.
133
134 * xterm.h (x_start_queuing_selection_requests)
135 (x_stop_queuing_selection_requests, x_handle_selection_request)
136 (x_handle_selection_clear): Remove prototypes.
137 (x_handle_selection_event): Add prototype.
138
139 * xterm.c (handle_one_xevent): Don't queue X selection events
140 here, it may be too late if we start queuing after we have already
141 stored some selection events into the kbd buffer.
142 (struct selection_event_queue, queue, x_queue_selection_requests)
143 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
144 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
145 (x_catch_errors_unwind): Block input around final XSync.
146
147 * keyboard.h (kbd_buffer_unget_event): Add prototype.
148
149 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
150 (kbd_buffer_unget_event): New function.
151 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
152 and use x_handle_selection_event.
153 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
154
155 2004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
156
157 * xselect.c (TRACE3): New debug macro.
158 (x_reply_selection_request): Use it.
159 (receive_incremental_selection): In call to TRACE0, the name of
160 a symbol is in xname.
161
162 2004-11-05 Kim F. Storm <storm@cua.dk>
163
164 * fontset.c (fontset_pattern_regexp): Use unsigned char.
165
166 2004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
167
168 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
169
170 * gtkutil.h: Declare use_old_gtk_file_dialog.
171
172 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
173 (xg_initialize): Moved DEFVAR_BOOL for use_old_gtk_file_dialog ...
174 * xfns.c (syms_of_xfns): ... to here.
175
176 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
177 it doesn't start with /.
178
179 2004-11-04 Kenichi Handa <handa@m17n.org>
180
181 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
182 treat it as a literal character.
183
184 2004-11-03 Kim F. Storm <storm@cua.dk>
185
186 * .gdbinit (ppt): New function.
187
188 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
189
190 * xterm.c (x_window_to_scroll_bar): Only call
191 xg_get_scroll_id_for_window if toolkit scroll bars are used.
192
193 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
194 of save.
195
196 2004-11-02 Andreas Schwab <schwab@suse.de>
197
198 * window.c (Fscroll_right): Fix last change.
199
200 2004-11-02 Kim F. Storm <storm@cua.dk>
201
202 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
203
204 2004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
205
206 * callproc.c (Fcall_process): Block input around vfork.
207
208 2004-11-02 Kim F. Storm <storm@cua.dk>
209
210 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
211 (syms_of_eval): Defsubr it.
212
213 2004-11-02 Richard M. Stallman <rms@gnu.org>
214
215 * insdel.c (replace_range_2): New function.
216
217 * casefiddle.c (casify_region): Handle changes in byte-length
218 using replace_range_2.
219
220 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
221
222 * xdisp.c (back_to_previous_visible_line_start):
223 Subtract 1 from pos when checking previous newline for invisibility.
224
225 * window.c (window_scroll_pixel_based): Update preserve_y
226 for header line if any.
227 (Fscroll_left, Fscroll_right): Don't call interactive_p;
228 use a new second argument instead.
229
230 * eval.c (Fcall_interactive_p): New function.
231 (interactive_p): Don't test INTERACTIVE here.
232 (Finteractive_p): Doc fix.
233
234 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
235
236 2004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
237
238 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
239 comparing font names.
240
241 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
242
243 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
244 Fx_file_dialog if only directories should be read.
245
246 * lisp.h: Fx_file_dialog takes 5 parameters.
247
248 * xfns.c (Fx_file_dialog): Both Motif and GTK version: Add
249 parameter only_dir_p.
250 In Motif version, don't put DEFAULT_FILENAME in filter part of the
251 dialog, just text field part. Do not add DEFAULT_FILENAME
252 to list of files if it isn't there.
253 In GTK version, pass only_dir_p parameter to xg_get_file_name.
254
255 * macfns.c (Fx_file_dialog): Add parameter only_dir_p. Check
256 only_dir_p instead of comparing prompt to "Dired". When using
257 a save dialog, add option kNavDontConfirmReplacement, change title
258 to "Enter name", change text for save button to "Ok".
259
260 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p. Check
261 only_dir_p instead of comparing prompt to "Dired".
262
263 * gtkutil.c (xg_get_file_with_chooser)
264 (xg_get_file_with_selection): New functions, only defined ifdef
265 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
266 respectively.
267 (xg_get_file_name): Add parameter only_dir_p.
268 Call xg_get_file_with_chooser or xg_get_file_with_selection
269 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
270 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
271
272 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
273
274 * config.in: Rebuild (added HAVE_GTK_FILE_*).
275
276 2004-11-01 Kim F. Storm <storm@cua.dk>
277
278 * process.c (connect_wait_mask, num_pending_connects): Only
279 declare and use them if NON_BLOCKING_CONNECT is defined.
280 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
281 (IF_NON_BLOCKING_CONNECT): New helper macro.
282 (wait_reading_process_output): Only declare and use local vars
283 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
284
285 2004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
286
287 * w32term.c (x_scroll_run): Delete region objects after use.
288
289 2004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
290
291 * xmenu.c: Add prototypes for forward function declarations.
292 (popup_get_selection): Remove parameter do_timers, remove call to
293 timer_check.
294 (create_and_show_popup_menu, create_and_show_dialog): Remove
295 parameter do_timers from call to popup_get_selection.
296
297 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
298 tool_bar_items and assign the result to f->tool_bar_items if
299 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
300 tool_bar_items to assignment of result.
301
302 * atimer.c (alarm_signal_handler): Do not call set_alarm if
303 pending_atmers is non-zero.
304
305 2004-10-31 Kim F. Storm <storm@cua.dk>
306
307 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
308
309 2004-10-28 Will <will@glozer.net>
310
311 * macterm.c: allow user to assign key modifiers to the Mac Option
312 key via a 'mac-option-modifier' variable.
313
314 2004-10-28 Stefan <monnier@iro.umontreal.ca>
315
316 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
317 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
318 (x_handle_selection_request, x_handle_selection_clear)
319 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
320
321 2004-10-28 Richard M. Stallman <rms@gnu.org>
322
323 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
324
325 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
326
327 2004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
328
329 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
330 comment-starter over a 1-char one.
331
332 2004-10-27 Richard M. Stallman <rms@gnu.org>
333
334 * xdisp.c (get_next_display_element): In mode lines,
335 treat newline and tab like other control characters.
336
337 * editfns.c (Fmessage): Doc fix.
338
339 * indent.c (vmotion): When moving up, check the newline before.
340 Make prevline an int, not a Lisp_Object.
341
342 2004-10-27 Kim F. Storm <storm@cua.dk>
343
344 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
345 Only allocate info and discarded tables once.
346
347 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
348 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
349 (SAFE_FREE): Test it to determine if we need to unwind to free.
350 Remove size arg. All users changed.
351 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
352
353 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
354
355 * gtkutil.c: Put empty line between comment and function body.
356 (xg_destroy_widgets): Rename from remove_from_container.
357 Just destroy all widgets in list. Argument wcont removed.
358 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
359 instead of remove_from_container.
360 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
361 (free_frame_tool_bar): Add comment.
362
363 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
364 is not NULL before strcmp.
365
366 2004-10-26 Kim F. Storm <storm@cua.dk>
367
368 * callint.c (Fcall_interactively): Add 'U' code to get the
369 up-event discarded by a previous 'k' or 'K' argument.
370
371 2004-10-26 David Kastrup <dak@gnu.org>
372
373 * buffer.c (syms_of_buffer): Fix a few typos.
374
375 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
376
377 * xsmfns.c: Put empty line between comment and function body.
378 Use two spaces before comment end.
379
380 2004-10-25 Kenichi Handa <handa@m17n.org>
381
382 * fontset.c (fontset_pattern_regexp): Optimize for the case that
383 PATTERN is full XLFD.
384
385 2004-10-24 Kenichi Handa <handa@m17n.org>
386
387 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
388
389 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
390 (regex_compile): Return REG_ERANGEX if appropriate.
391
392 2004-10-22 Kenichi Handa <handa@m17n.org>
393
394 * editfns.c (Ftranslate_region_internal): New function.
395 (syms_of_editfns): Defsubr it.
396
397 2004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
398
399 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
400
401 2004-10-21 K\e,Aa\e(Broly L\e$,1 q\e(Brentey <lorentey@elte.hu>
402
403 * xterm.h (x_output): New member `xic_base_fontname'.
404 (FRAME_XIC_BASE_FONTNAME): New macro.
405 (xic_free_xfontset): Declare.
406
407 * xfns.c (xic_create_xfontset): Share fontsets between frames
408 based on base_fontname.
409 (xic_free_xfontset): New function.
410 (free_frame_xic): Use it.
411 (xic_set_xfontset): Ditto.
412
413 * xterm.c (xim_destroy_callback): Ditto.
414
415
416 2004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
417
418 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
419
420 2004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
421
422 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
423 XSync.
424
425 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
426 New variables and constant.
427 (main): Calculate heap_bss_diff. If we are dumping and the
428 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
429 and exec ourself again.
430 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
431 print a warning.
432
433 * lastfile.c: Make my_endbss and my_endbss_static available on all
434 platforms.
435
436 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
437 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
438
439 2004-10-19 Luc Teirlinck <teirllm@auburn.edu>
440
441 * data.c (Flocal_variable_if_set_p): Doc fix.
442
443 2004-10-19 Jason Rumney <jasonr@gnu.org>
444
445 * w32.c (init_environment): Set emacs_dir correctly when running
446 emacs from the build directory.
447
448 2004-10-19 Richard M. Stallman <rms@gnu.org>
449
450 * editfns.c (Fdelete_and_extract_region):
451 If region is empty, return null string.
452
453 2004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
454
455 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
456 and canon_width.
457 (xg_frame_cleared): Remove.
458
459 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
460 (xg_find_top_left_in_fixed): Remove.
461 (xg_create_scroll_bar): Put an event box widget between
462 the scroll bar widget and the edit widget.
463 (xg_show_scroll_bar): Show the parent widget (the event box).
464 (xg_remove_scroll_bar): Destroy parent (the event box) also.
465 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
466 Move the parent (the event box) widget inside the fixed widget.
467 Move window clear to xterm.c.
468
469 * gtkutil.h (xg_frame_cleared): Remove.
470
471 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
472 (x_scroll_bar_create, XTset_vertical_scroll_bar):
473 Remove arguments left and width to xg_update_scrollbar_pos.
474 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
475
476 2004-10-19 Kenichi Handa <handa@m17n.org>
477
478 * xdisp.c (display_mode_element): Fix display of wide chars.
479
480 2004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
481
482 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
483 gdk_window_clear and move gdk_window_process_all_updates after
484 clear so events are sent to the X server in correct order.
485
486 2004-10-18 Kenichi Handa <handa@m17n.org>
487
488 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
489 comparing font names.
490 (fs_query_fontset): Use fast_string_match for comparing fontset names.
491 (list_fontsets): Likewise.
492
493 * search.c (fast_string_match_ignore_case): New function.
494
495 * lisp.h (fast_string_match_ignore_case): Extern it.
496
497 2004-10-17 Kim F. Storm <storm@cua.dk>
498
499 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
500 than bitmap if there is not left fringe.
501 (get_overlay_arrow_glyph_row): Also used on windows system.
502 (display_line): Display overlay string if no left fringe.
503
504 2004-10-16 Jason Rumney <jasonr@gnu.org>
505
506 * w32fns.c (w32_font_match): Encode font name being matched.
507
508 2004-10-16 Richard M. Stallman <rms@gnu.org>
509
510 * window.c (Fspecial_display_p): Doc fix.
511
512 2004-10-15 Stefan <monnier@iro.umontreal.ca>
513
514 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
515 Don't ignore menus, because where-is-internal already does it for us.
516
517 2004-10-15 Kim F. Storm <storm@cua.dk>
518
519 * xdisp.c (redisplay_window): Only update fringes and vertical
520 border on window frames.
521
522 2004-10-14 Andreas Schwab <schwab@suse.de>
523
524 * m/ia64.h (DATA_SEG_BITS): Don't define.
525
526 2004-10-14 Kim F. Storm <storm@cua.dk>
527
528 * xterm.h: Include Xutil.h after keysym.h to work around bug
529 in some X versions.
530
531 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
532
533 * fns.c (map_char_table): Add missing gcpros.
534
535 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
536
537 * keymap.c (get_keymap): An autoload form is not a keymap.
538
539 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
540
541 2004-10-13 Kim F. Storm <storm@cua.dk>
542
543 * callproc.c (Fcall_process): Simplify handling of display arg.
544 Resume `display_on_the_fly' once a coding system is determined.
545
546 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
547
548 2004-10-12 Kim F. Storm <storm@cua.dk>
549
550 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
551 caller, such as call-process, is not going to poll for input.
552 (calc_line_height_property): Handle case where it->object is nil.
553
554 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
555
556 2004-10-12 Kenichi Handa <handa@m17n.org>
557
558 * xdisp.c (get_next_display_element):
559 If unibyte_display_via_language_environment is zero, display 8-bit
560 chars in octal in unibyte buffer.
561
562 2004-10-12 Kim F. Storm <storm@cua.dk>
563
564 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
565 are no ordinary bindings.
566
567 2004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
568
569 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
570
571 2004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
572
573 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
574 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
575 (make_mac_frame): Add BLOCK_INPUT around the making of a
576 terminal frame.
577 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
578 * macgui.h (mktime): Use emacs_mktime.
579 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
580 Make a cancel file-open dialog be like C-g.
581 * mac.c (mktime): Use emacs_mktime.
582 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
583 (Fmac_paste_function): Add better error handling for carbon cut/paste.
584
585 2004-10-10 Kim F. Storm <storm@cua.dk>
586
587 * keyboard.c (timer_resume_idle): New function to resume idle
588 timer without resetting timers on the idle list.
589 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
590 (timer_start_idle, timer_stop_idle): Declare static.
591 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
592
593 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
594
595 2004-10-08 Steven Tamm <steventamm@mac.com>
596
597 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
598 * macterm.c (mac_check_for_quit_char): Remove warning for using
599 NULL where 0 should be used.
600 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
601 objc/malloc.h
602 * mac.c: Include time.h for Tiger compatibility.
603
604 2004-10-07 Kim F. Storm <storm@cua.dk>
605
606 * xdisp.c (redisplay_window): Fix flicker on vertical line between
607 windows. Update vertical line after drawing window fringes, but
608 only if actually drawing any bitmaps--or there is no fringe.
609
610 * xterm.c (x_update_window_end): Likewise.
611 * macterm.c (x_update_window_end): Likewise.
612 * w32term.c (x_update_window_end): Likewise.
613
614 * fringe.c (draw_window_fringes): Return value now indicates if
615 any fringe bitmaps were redrawn (or there are no fringes).
616
617 * dispextern.h (draw_window_fringes): Update prototype.
618
619 2004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
620
621 * macfns.c (mac_get_window_bounds): Add extern.
622 (x_real_positions): Use mac_get_window_bounds.
623
624 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
625 xmenu.c (YAILOM).
626
627 * macterm.c [!MAC_OSX]: Include Windows.h.
628 (front_emacs_window): Rename from mac_front_window. All uses
629 changed. Return the frontmost non-tooltip emacs window.
630 (mac_get_window_bounds): New function.
631 (x_calc_absolute_position): Use the difference of width and height
632 between the inner and outer window.
633 (x_set_offset): Specify window position by the coordinae of the
634 outer window. Adjust the position if the title bar is completely
635 outside the screen.
636 (app_is_suspended, app_sleep_time): Remove unused variables.
637 (do_app_resume, do_app_suspend): Remove their contents because
638 window-activate/deactivate events will do the job.
639 (do_zoom_window): Remove unused variables. Make compliant to the
640 standard way of zooming. Set f->left_pos and f->top_pos.
641 (XTread_socket): Don't use argument `expected'. Don't use
642 FrontWindow to determine the clicked window. Exclude unprocessed
643 mouseUp cases in the early stage. Add parentheses to fix operator
644 precedence.
645 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
646
647
648 2004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
649
650 * config.in: Regenerate.
651
652 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
653 HAVE_EXECSHIELD.
654
655 2004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
656
657 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
658 a row if Alt or Meta has been found for that row. Also stop scanning
659 for Keysyms for that row.
660
661 2004-10-04 Kim F. Storm <storm@cua.dk>
662
663 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
664 to list. Include overlay arrow bitmap in return value.
665
666 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
667 bars with fractional column width. If scroll bar separates two
668 windows, move it towards the window it belongs to. Only update
669 the padding area below the scroll bar widget when necessary,
670 i.e. when scroll bar widget is created, moved, or resized.
671
672 * xdisp.c (define_frame_cursor1): Do not change frame cursor
673 while tracking/dragging mouse.
674 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
675
676 * window.c (coordinates_in_window): Relax check for cursor
677 on vertial border between mode lines.
678 (Fset_window_fringes): Do not allow negative widths.
679 (Fset_window_scroll_bars): Likewise.
680
681 * .gdbinit (pp): Shorthand for p ARG + pr.
682 (ff): New command: flush frame updates (X only).
683
684 2004-10-03 Michael Albinus <michael.albinus@gmx.de>
685
686 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
687
688 2004-09-30 Kenichi Handa <handa@m17n.org>
689
690 * process.c (send_process): Free composition data.
691
692 * fileio.c (Finsert_file_contents): Free composition data.
693
694 * coding.c (code_convert_region): Don't skip ASCIIs if there are
695 compositions to encode.
696 (encode_coding_string): Likewise. Free composition data.
697
698 2004-09-30 Florian Weimer <fw@deneb.enyo.de>
699
700 * coding.c (code_convert_region): Free composition data.
701
702 2004-09-29 Kim F. Storm <storm@cua.dk>
703
704 * fringe.c: Remove limit on number of bitmaps.
705 (fringe_bitmaps, fringe_faces): Change to pointers.
706 (max_fringe_bitmaps): New var.
707 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
708 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
709
710 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
711 (struct glyph_row): Reorder fringe_bitmap related fields.
712 (struct it): Likewise.
713
714 * w32term.c (fringe_bmp): Change to pointer.
715 (max_fringe_bmp): New var.
716 (w32_define_fringe_bitmap): Expand fringe_bmp.
717 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
718 (w32_destroy_fringe_bitmap): Likewise.
719
720 2004-09-29 Kim F. Storm <storm@cua.dk>
721
722 * fringe.c: Simplify last change.
723 (lookup_fringe_bitmap): New function.
724 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
725 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
726 Keep standard bitmaps in Vfringe_bitmaps.
727 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
728 (Fset_fringe_bitmap_face): Likewise.
729
730 * dispextern.h (lookup_fringe_bitmap): Add prototype.
731 (valid_fringe_bitmap_p): Remove prototype.
732
733 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
734
735 2004-09-29 Kim F. Storm <storm@cua.dk>
736
737 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
738 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
739
740 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
741
742 * fringe.c (Vfringe_bitmaps): New variable.
743 (syms_of_fringe): DEFVAR_LISP it.
744 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
745 Change arg to Lisp_Object and fail if not an integer.
746 (get_fringe_bitmap_name, resolve_fringe_bitmap)
747 (destroy_fringe_bitmap): New functions.
748 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
749 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
750 clear its fringe property.
751 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
752 Fdestroy_fringe_bitmap.
753 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
754 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
755 and set fringe property. Signal error if no free slots.
756 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
757 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
758
759 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
760 symbols with a fringe property.
761
762 2004-09-27 Kim F. Storm <storm@cua.dk>
763
764 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
765 Doc fix. Format may now be a symbol or alist, not a cons.
766
767 * fringe.c (update_window_fringes): Handle new formats of
768 indicate-buffer-boundaries (symbol or alist). No longer
769 allow a simple cons.
770 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
771
772 2004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
773
774 * config.in: Rebuild.
775
776 2004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
777
778 * config.in: Rebuild.
779
780 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
781
782 2004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
783
784 * xterm.c (x_term_init): Work around a bug in some X servers.
785
786 2004-09-18 Richard M. Stallman <rms@gnu.org>
787
788 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
789
790 * xdisp.c (try_window_reusing_current_matrix):
791 Handle the case where we reach the old displayed text,
792 out of sync with the old line boundary.
793
794 2004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
795
796 * fileio.c (Finsert_file_contents): Fix case of replacement in a
797 narrowed buffer.
798
799 2004-09-14 Kim F. Storm <storm@cua.dk>
800
801 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
802
803 * xfaces.c (Qface_no_inherit): New var.
804 (syms_of_xfaces): Intern and staticpro it.
805 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
806 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
807 Don't increment face_change_count when face has non-nil
808 face-no-inherit property.
809
810 2004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
811
812 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
813 (Fbyte_code): Remove dead code after `wrong_type_argument'.
814
815 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
816 before doing the mark_stack_check_gcpros since they're not on the stack.
817
818 2004-09-12 Kim F. Storm <storm@cua.dk>
819
820 * editfns.c (Fformat): Handle format strings with multiple text
821 properties. Reverse text property list from the format string,
822 so the positions are in increasing order.
823
824 2004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
825
826 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
827 x_uncatch_errors so that possible protocol errors are delivered.
828
829 2004-09-10 Eli Zaretskii <eliz@gnu.org>
830
831 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
832 blockinput.h.
833 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
834 charset.h, and coding.h
835 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
836 (term.o): Depend on window.h and keymap.h.
837 (abbrev.o): Depend on syntax.h.
838 (callint.o): Depend on keymap.h.
839 (casefiddle.o): Depend on charset.h and keymap.h.
840 (category.o): Depend on keymap.h.
841 (coding.o): Depend on dispextern.h.
842 (cmds.o): Depend on keyboard.h and keymap.h.
843 (dispnew.o): Depend on indent.h and intervals.h.
844 (doc.o): Depend on keymap.h.
845 (editfns.o): Depend on frame.h.
846 (emacs.o): Depend on dispextern.h.
847 (fileio.o): Don't depend on ccl.h.
848 (filelock.o): Depend on charset.h and coding.h.
849 (frame.o): Depend on w32term.h and macterm.h.
850 (insdel.o): Depend on region-cache.h.
851 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
852 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
853 (search.o): Depend on $(INTERVALS_SRC).
854 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
855 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
856 xterm.h, w32term.h, and macterm.h.
857 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
858 w32term.h, and macterm.h.
859 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
860 region-cache.h, xterm.h, w32term.h, and macterm.h.
861 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
862 (data.o): Depend on frame.h.
863 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
864 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
865 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
866 (intervals.o): Depend on keymap.h.
867
868 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
869 Add debugging print-out to termscript.
870
871 2004-09-09 Richard M. Stallman <rms@gnu.org>
872
873 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
874
875 2004-09-08 Richard M. Stallman <rms@gnu.org>
876
877 * window.c (Fset_window_buffer): Doc fix.
878
879 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
880
881 2004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
882
883 * minibuf.c (history_delete_duplicates): New variable.
884 (read_minibuf): Use it.
885 (syms_of_minibuf): Create the corresponding lisp variable.
886
887 2004-09-08 Kim F. Storm <storm@cua.dk>
888
889 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
890 overlay just before point.
891
892 2004-09-07 Luc Teirlinck <teirllm@auburn.edu>
893
894 * buffer.h (struct buffer): Add auto_save_file_format field.
895 * buffer.c (reset_buffer, init_buffer_once):
896 Handle auto_save_file_format field.
897 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
898 `buffer-auto-save-file-format'.
899 * fileio.c: Delete declaration for removed Vauto_save_file_format.
900 (build_annotations): Adapt to replacement of
901 `auto-save-file-format' with the new buffer-local variable
902 `buffer-auto-save-file-format'.
903 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
904
905 2004-09-07 Jason Rumney <jasonr@gnu.org>
906
907 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
908
909 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
910 Handle Unicode menu titles.
911
912 2004-09-07 Kim F. Storm <storm@cua.dk>
913
914 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
915 property from text property or overlay strings at point.
916
917 2004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
918
919 * xmenu.c (update_submenu_strings): YAILOM.
920 (set_frame_menubar): Make sure last_i is initialized.
921
922 2004-09-03 Jason Rumney <jasonr@gnu.org>
923
924 * w32menu.c (_widget_value): Add lname and lkey.
925 (digest_single_submenu): Set lname and lkey in widget_value
926 instead of name and key.
927 (update_submenu_strings): New function.
928 (set_frame_menubar): Remove call to inhibit_garbage_collection,
929 call update_submenu_strings.
930
931 * w32menu.c (globals_of_w32menu): Check for Unicode API.
932 (digest_single_submenu, w32_menu_show): Encode menu strings as
933 UTF-8 if Unicode API is available.
934 (utf8to16): New function.
935 (add_menu_item): Use it when calling Unicode API.
936
937 2004-09-03 Kim F. Storm <storm@cua.dk>
938
939 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
940 in overlay or text-property strings; set cursor on corresponding
941 glyph rather than at end of the string.
942
943 2004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
944
945 * macfns.c (x_real_positions): Save the current window port and
946 set a new one before obtaining the global coordinate.
947 Use FRAME_MAC_WINDOW.
948 (x_set_name, x_set_title): Encode title to UTF8.
949 Use SetWindowTitleWithCFString.
950 (Fx_server_version): Get correct OS version.
951
952 * macmenu.c (add_menu_item): Remove unused variable `i'.
953 Don't let separator items destroy refence constants of other menu items.
954
955 * macterm.c (x_update_end): Move SetPortWindowPort to inside
956 BLOCK_INPUT.
957 (x_set_offset): Use FRAME_MAC_WINDOW.
958
959 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
960 nontext_cursor if it is on a scroll bar.
961
962 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
963 Carbon support.
964 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
965 Use LIBS_CARBON.
966
967 2004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
968
969 * xfns.c (x_set_name_internal): New function. Check if we shall call
970 xfree before ENCODE_UTF_8.
971 (x_set_name, x_set_title): Call x_set_name_internal.
972
973 2004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
974
975 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
976 reload it.
977
978 2004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
979
980 * macmenu.c (_widget_value): Add lname and lkey.
981 (single_submenu): Set lname and lkey in widget_value
982 instead of name and key.
983 (update_submenu_strings): New function.
984 (set_frame_menubar): Remove call to inhibit_garbage_collection,
985 call update_submenu_strings.
986
987 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
988 instead of name and key.
989 (update_submenu_strings): New function.
990 (set_frame_menubar): Remove call to inhibit_garbage_collection,
991 call update_submenu_strings.
992
993 * gtkutil.h (_widget_value): Added lname and lkey.
994
995 2004-08-30 Steven Tamm <steventamm@mac.com>
996
997 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
998 by using different names for inner loop variables.
999
1000 2004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1001
1002 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
1003 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
1004
1005 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
1006 tool bar items is 0.
1007
1008 2004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1009
1010 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
1011 strings in menu items.
1012 (single_submenu): Use ENCODE_MENU_STRING
1013 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
1014 button release isn't passed to event loop
1015 (add_menu_item): Use SetMenuItemWithCFString
1016
1017 2004-08-26 Steven Tamm <steventamm@mac.com>
1018
1019 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
1020 tool-bar/menu click
1021 * macfns.c (Fx_file_dialog): Implemented using NavServices
1022
1023 2004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1024
1025 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
1026
1027 * xfns.c (x_window_to_frame, x_any_window_to_frame)
1028 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
1029 (x_top_window_to_frame): Return 0 if wdesc is None.
1030
1031 2004-08-22 Richard M. Stallman <rms@gnu.org>
1032
1033 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
1034 HAVE_TERMIOS]: If there's no char for this signal, drop through
1035 and use system calls.
1036
1037 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
1038
1039 2004-08-20 Kim F. Storm <storm@cua.dk>
1040
1041 * process.c (wait_reading_process_output): Rename from
1042 wait_reading_process_input. All uses changed.
1043 (wait_reading_process_output_1): Rename from
1044 wait_reading_process_input_1. All uses changed.
1045
1046 * dispnew.c (Fsleep_for): Remove obsolete code.
1047
1048 2004-08-20 Kenichi Handa <handa@m17n.org>
1049
1050 * syntax.c (skip_chars): Fix for unibyte case.
1051
1052 2004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
1053
1054 * syntax.c (char_quoted): Mixup byte/char pos.
1055 (back_comment): Fixup globals in all cases.
1056
1057 2004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1058
1059 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
1060 passing it to gtk_window_set_title.
1061
1062 2004-08-19 Kim F. Storm <storm@cua.dk>
1063
1064 * process.c (wait_reading_process_input): Clean up.
1065 Add wait_for_cell, wait_proc, and just_wait_proc args
1066 to avoid overloading `read_kbd' and `do_display' args.
1067 Change read_kbd arg to int. All callers changed.
1068
1069 * process.c (process_send_signal): Use CDISABLE.
1070
1071 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
1072
1073 2004-08-18 Kim F. Storm <storm@cua.dk>
1074
1075 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
1076 forward to wait_reading_process_input via DO_DISPLAY arg.
1077 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
1078 object, only process output from that process; also inhibit
1079 running timers if DO_DISPLAY==-2.
1080
1081 2004-08-17 Kim F. Storm <storm@cua.dk>
1082
1083 * process.c (process_send_signal): Fix last change--use
1084 _POSIX_VDISABLE instead of CVDISABLE when available.
1085
1086 2004-08-16 Richard M. Stallman <rms@gnu.org>
1087
1088 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
1089 Set VQUIT and VINTR chars to the standard ones if they are unset.
1090 [AIX]: Don't do that here. And don't force VINTR to standard
1091 when SIGNALS_VIA_CHARACTERS.
1092
1093 * process.c (process_send_signal)
1094 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
1095 Do nothing if the character is CVDISABLE.
1096
1097 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
1098
1099 * intervals.c (move_if_not_intangible):
1100 Force POSITION to be between BEGV and ZV.
1101
1102 2004-08-14 John Paul Wallington <jpw@gnu.org>
1103
1104 * buffer.c (Frestore_buffer_modified_p): Doc fix.
1105
1106 * fileio.c (Fread_file_name): Doc fix.
1107
1108 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
1109
1110 2004-08-09 Luc Teirlinck <teirllm@auburn.edu>
1111
1112 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
1113
1114 2004-08-08 Luc Teirlinck <teirllm@auburn.edu>
1115
1116 * keyboard.c: Declare Qdisabled_command_function instead of
1117 Qdisabled_command_hook.
1118 (Fcommand_execute): Use Qdisabled_command_function instead of
1119 Qdisabled_command_hook.
1120 (syms_of_keyboard): Ditto.
1121
1122 2004-08-07 Luc Teirlinck <teirllm@auburn.edu>
1123
1124 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
1125 (syms_of_keymap) <key-translation-map>: Doc fixes.
1126
1127 2004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
1128
1129 * window.c (window_list_1): YAILOM.
1130
1131 * fileio.c (make_temp_name): Handle multibyte prefixes.
1132
1133 2004-08-06 Luc Teirlinck <teirllm@auburn.edu>
1134
1135 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
1136 Doc fix.
1137
1138 2004-08-03 Kenichi Handa <handa@m17n.org>
1139
1140 * coding.c (decode_coding_string): Adjust coding->consumed, and
1141 etc. with shrinked_bytes.
1142
1143 2004-08-03 Kim F. Storm <storm@cua.dk>
1144
1145 * indent.c (compute_motion): Fix check for full width window
1146 in non-window case. Do not count left truncation glyph on
1147 window systems.
1148
1149 2004-08-02 Luc Teirlinck <teirllm@auburn.edu>
1150
1151 * data.c (Finteractive_form): Doc fix.
1152
1153 2004-08-02 Kim F. Storm <storm@cua.dk>
1154
1155 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
1156 properly accounting for continuation glyph on non-window systems.
1157 (Fcompute_motion): Use actual window width if WIDTH is nil, and
1158 actual window width/height if TOPOS is nil, properly accounting for
1159 continuation glyphs on non-window systems, and optional header lines.
1160 (vmotion): Let compute_motion calculate actual window width.
1161
1162 * window.c (window_scroll_line_based): Let compute_motion
1163 calculate actual window width.
1164
1165 2004-08-02 Kim F. Storm <storm@cua.dk>
1166
1167 * process.c (read_process_output): Use whole read buffer.
1168 Don't trigger adaptive read buffering on errors.
1169
1170 2004-07-31 Luc Teirlinck <teirllm@auburn.edu>
1171
1172 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
1173
1174 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
1175
1176 * callint.c (Fcall_interactively): Doc fix.
1177
1178 2004-07-30 Richard M. Stallman <rms@gnu.org>
1179
1180 * abbrev.c (Fexpand_abbrev): Undo previous change.
1181
1182 2004-07-30 Kim F. Storm <storm@cua.dk>
1183
1184 * editfns.c (Fformat): Allocate extra (dummy) element in info.
1185
1186 2004-07-28 Luc Teirlinck <teirllm@auburn.edu>
1187
1188 * eval.c (Fdefvar, Fdefconst): Doc fixes.
1189
1190 2004-07-27 Kim F. Storm <storm@cua.dk>
1191
1192 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
1193 we have ensured that the glyph fits on the current line (or returned
1194 MOVE_LINE_CONTINUED otherwise).
1195
1196 2004-07-26 Kim F. Storm <storm@cua.dk>
1197
1198 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
1199 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
1200 if target position is at end of display line but char is not a newline.
1201
1202 2004-07-25 Richard M. Stallman <rms@gnu.org>
1203
1204 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
1205 instead of ON_VERTICAL_BORDER, when on scroll bar.
1206 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
1207
1208 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
1209
1210 * window.c (Fcoordinates_in_window_p):
1211 Take account of FRAME_INTERNAL_BORDER_WIDTH.
1212
1213 * alloc.c (check_cons_list): New function (contents commented out).
1214
1215 2004-07-24 Luc Teirlinck <teirllm@auburn.edu>
1216
1217 * xfaces.c (Fcolor_supported_p): Doc fix.
1218
1219 * frame.c (Fselect_frame, Fset_frame_selected_window)
1220 (Fframe_visible_p, Fraise_frame): Doc fixes.
1221
1222 2004-07-24 Richard M. Stallman <rms@gnu.org>
1223
1224 * keyboard.h (not_single_kboard_state): Declared.
1225
1226 * fileio.c (Fwrite_region): Doc fix.
1227
1228 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
1229
1230 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
1231 only when a real abbrev is present.
1232
1233 * xfns.c (x_icon_verify): New function.
1234 (Fx_create_frame): Use it.
1235
1236 2004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
1237
1238 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
1239
1240 2004-07-21 Kim F. Storm <storm@cua.dk>
1241
1242 * window.h (struct glyph_matrix): New members nrows_scale_factor
1243 and ncols_scale_factor.
1244
1245 * window.c (make_window): Initialize nrows_scale_factor and
1246 ncols_scale_factor members.
1247
1248 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
1249 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
1250 (required_matrix_height): Apply nrows_scale_factor.
1251 (required_matrix_width): Apply ncols_scale_factor.
1252
1253 * xdisp.c (display_line): Increment nrows_scale_factor and set
1254 fonts_changed_p if past last allocated row.
1255 (append_glyph, append_composite_glyph, produce_image_glyph)
1256 (append_stretch_glyph): Increment ncols_scale_factor and set
1257 fonts_changed_p if current area is full.
1258
1259 2004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1260
1261 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
1262
1263 2004-07-19 Luc Teirlinck <teirllm@auburn.edu>
1264
1265 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
1266 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
1267 (Fset_window_start, Fscroll_up, Fscroll_down)
1268 (Fother_window_for_scrolling, Fscroll_other_window)
1269 (Fsave_window_excursion, Fset_window_vscroll)
1270 (syms_of_window) <window-size-fixed>: Doc fixes.
1271
1272 2004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
1273
1274 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
1275 ENCODE_SYSTEM for filenames.
1276
1277 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1278
1279 * mac.c (sys_select): Block input around call to
1280 ReceiveNextEvent to prevent breakage. Correctly handle
1281 blocking on event queue only by calling ReceiveNextEvent
1282 instead of select (since GUI events aren't on an fd).
1283 (sys_read): Remove function
1284 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
1285
1286 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1287
1288 * mac.c (sys_select): Redo sys_select to use alarm-based
1289 polling instead of 1 sec timeouts (like solaris).
1290
1291 * macterm.c (x_make_frame_visible): Comment in polling on
1292 frame creation.
1293
1294 * keyboard.c: Undef SIGIO on Carbon
1295
1296 * atimer.c (alarm_signal_handler): Call alarm handlers after
1297 scheduling.
1298
1299 * eval.c (Feval): Remove quit_char test
1300
1301 * process.c (wait_reading_process_input): Remove clearing
1302 stdin for select call on process input.
1303
1304 2004-07-18 Luc Teirlinck <teirllm@auburn.edu>
1305
1306 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
1307 capitalization error in docstring.
1308
1309 2004-07-17 Juanma Barranquero <lektu@terra.es>
1310
1311 * keyboard.c (not_single_kboard_state): Do nothing unless
1312 MULTI_KBOARD is defined.
1313
1314 2004-07-17 Richard M. Stallman <rms@gnu.org>
1315
1316 * window.c (coordinates_in_window): Inside the window but outside
1317 its box to the L or R, return ON_VERTICAL_BORDER.
1318 (window_list_1): Rotate the list to start with WINDOW.
1319
1320 * print.c (print_preprocess): Test for print_depth at limit
1321 before entering in being_printed.
1322
1323 * keyboard.c (not_single_kboard_state): New function.
1324 (stuff_buffered_input): Now no-op only if no SIGTSTP.
1325
1326 * frame.c (Fdelete_frame): If we're in single_bboard_state on
1327 this kboard, and we delete its last frame, go to any_kboard_state.
1328
1329 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
1330
1331 2004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
1332
1333 * w32fns.c (Fx_file_dialog): Encode strings in system coding
1334 system before passing them to OS functions for display.
1335
1336 2004-07-15 David Kastrup <dak@gnu.org>
1337
1338 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
1339 Apparently fixes an abort condition.
1340
1341 2004-07-14 Luc Teirlinck <teirllm@auburn.edu>
1342
1343 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
1344 instead of a cons.
1345
1346 2004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
1347
1348 * keyboard.c (echo_dash): Do nothing if there already is a dash
1349 at the end of the echo string.
1350
1351 2004-07-12 Kim F. Storm <storm@cua.dk>
1352
1353 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
1354 if GC_MARK_STACK.
1355
1356 2004-07-10 Luc Teirlinck <teirllm@auburn.edu>
1357
1358 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
1359
1360 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
1361 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
1362 (Freplace_buffer_in_windows, Fset_window_buffer)
1363 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
1364 (syms_of_window): Expand docstring of `display-buffer-function'.
1365
1366 2004-07-09 Luc Teirlinck <teirllm@auburn.edu>
1367
1368 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
1369 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
1370 that time values of the type (HIGH . LOW) are considered obsolete.
1371
1372 2004-07-06 Luc Teirlinck <teirllm@auburn.edu>
1373
1374 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
1375 docstring.
1376
1377 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
1378
1379 2004-07-06 John Paul Wallington <jpw@gnu.org>
1380
1381 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
1382
1383 * fns.c (Fclear_string): Signal an error if STRING is not a string.
1384
1385 2004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1386
1387 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
1388 instead of CGMainDisplayID (only in OSX 10.2 and later).
1389
1390 2004-07-04 John Paul Wallington <jpw@gnu.org>
1391
1392 * fileio.c (read_file_name_completion_ignore_case): New variable.
1393 (syms_of_fileio): Declare and initialise it.
1394 (Fread_file_name): Bind `completion-ignore-case' to respect it.
1395
1396 2004-07-03 Eli Zaretskii <eliz@gnu.org>
1397
1398 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
1399 for event.x and event.y.
1400
1401 2004-07-01 Kenichi Handa <handa@m17n.org>
1402
1403 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
1404 after getting a new string by pre-write-conversion.
1405
1406 2004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
1407
1408 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
1409 (x_calc_absolute_position): Remove unused var `child'.
1410
1411 * xfaces.c (x_supports_face_attributes_p)
1412 (Fdisplay_supports_face_attributes_p): YAILOM.
1413 (tty_supports_face_attributes_p): Remove unused var `i'.
1414
1415 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
1416 back_unibyte_ok.
1417
1418 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
1419
1420 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
1421
1422 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
1423
1424 2004-06-30 Andreas Schwab <schwab@suse.de>
1425
1426 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
1427 (Finit_image_library): Pass LIBRARIES through to
1428 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
1429 (lookup_image_type): Pass Qnil as second argument to
1430 Finit_image_library.
1431
1432 * lisp.h: Declare Finit_image_library.
1433
1434 2004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1435
1436 * macterm.c (do_window_activate, do_window_deactivate): Remove.
1437 (XTread_socket): Send mouse button events to the toolbox
1438 dispatcher even when the mouse is grabbed. Don't process window
1439 activate events for non-Emacs windows. Replace function calls to
1440 do_window_activate and do_window_deactivate with their contents.
1441 Reset mouse grabbing status when a window is deactivated.
1442
1443 2004-06-29 Steven Tamm <steventamm@mac.com>
1444
1445 * macterm.c (mac_get_emulated_btn)
1446 (mac_event_to_emacs_modifiers): Fix emulated mouse button
1447 support to correctly mask out modifiers.
1448
1449 2004-06-29 David Kastrup <dak@gnu.org>
1450
1451 * search.c (Fset_match_data): Allow buffer before end of list
1452 which can happen if set-match-data is using a pre-consed list.
1453
1454 2004-06-28 Steven Tamm <steventamm@mac.com>
1455
1456 * macterm.c (XTread_socket): Correctly set the frame position
1457 after the window is moved.
1458
1459 2004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1460
1461 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
1462 gpix and gmask just before return to avoid memory leak.
1463 (xg_get_image_for_pixmap): Add workaround for monochrome displays
1464 so insensitive and activated icons look ok.
1465
1466 2004-06-27 Jason Rumney <jasonr@gnu.org>
1467
1468 * w32fns.c (file_dialog_callback): Disable edit control if set
1469 to directories only on CDN_INITDONE message.
1470 (Fx_file_dialog): Default to directories only when prompt starts
1471 with "Dired".
1472
1473 2004-06-25 Kim F. Storm <storm@cua.dk>
1474
1475 * alloc.c (allocate_misc): Update total_free_markers.
1476 (free_misc): New function.
1477 (safe_alloca_unwind, free_marker): Use it.
1478
1479 * lisp.h (free_misc): Add prototype.
1480
1481 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
1482
1483 2004-06-24 Richard M. Stallman <rms@gnu.org>
1484
1485 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
1486 (syms_of_emacs): Lisp variables deleted.
1487
1488 2004-06-23 David Kastrup <dak@gnu.org>
1489
1490 * search.c (Freplace_match): Adjust the match-data more thoroughly
1491 when replacing strings in the buffer.
1492 (Fmatch_data): When INTEGERS is non-nil and the last match was in
1493 a buffer, add the buffer as last element to the match data.
1494 (Fset_match_data): If an additional element of the match-data is a
1495 buffer, restore it to last_thing_searched.
1496 (save_search_regs): Save last_thing_searched as part of the match data.
1497 (restore_match_data): Restore it again.
1498
1499 2004-06-23 Luc Teirlinck <teirllm@auburn.edu>
1500
1501 * keymap.c (Ftext_char_description): Doc fix.
1502 * doc.c (Fsnarf_documentation): Doc fix.
1503
1504 2004-06-22 Kim F. Storm <storm@cua.dk>
1505
1506 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
1507
1508 * lisp.h (struct Lisp_Save_Value): New member dogc.
1509 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
1510 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
1511 (SAFE_FREE_LISP): New macro.
1512
1513 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
1514 (make_save_value): Init new dogc member.
1515 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
1516
1517 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
1518 SAFE_FREE_LISP macros.
1519
1520 2004-06-22 Kim F. Storm <storm@cua.dk>
1521
1522 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
1523 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
1524 in that memory area are unknown to GC. Add comments.
1525
1526 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
1527
1528 2004-06-21 Kim F. Storm <storm@cua.dk>
1529
1530 * lisp.h (MAX_ALLOCA): Define here.
1531 (safe_alloca_unwind): Add prototype.
1532 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
1533
1534 * alloc.c (safe_alloca_unwind): New function.
1535
1536 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
1537
1538 * charset.c (Fstring): Use SAFE_ALLOCA.
1539
1540 * coding.c (MAX_ALLOCA): Remove define.
1541
1542 * data.c (MAX_ALLOCA): Remove define.
1543 (Faset): Use SAFE_ALLOCA.
1544
1545 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
1546
1547 * fns.c (string_make_multibyte, string_to_multibyte)
1548 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
1549 (MAX_ALLOCA): Remove define.
1550 (Fbase64_encode_region, Fbase64_encode_string)
1551 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
1552 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
1553 memory leak if encoding fails.
1554
1555 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
1556
1557 2004-06-21 Eli Zaretskii <eliz@gnu.org>
1558
1559 * print.c (Fwith_output_to_temp_buffer): Doc fix.
1560
1561 2004-06-20 Richard M. Stallman <rms@gnu.org>
1562
1563 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
1564
1565 * search.c (match_limit): Cleaner err msg when no match data available.
1566
1567 * window.c (syms_of_window): Doc fix.
1568
1569 * keyboard.c (command_loop_1): Handle values `only' and `identity'
1570 for Vtransient_mark_mode.
1571
1572 * buffer.c (syms_of_buffer): Doc fix.
1573
1574 2004-06-21 David Kastrup <dak@gnu.org>
1575
1576 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
1577 and unbinding of `case-fold-search' according to
1578 `completion-ignore-case' around calls of string-match and
1579 predicates, respectively. Should give satisfactory performance
1580 in all relevant cases.
1581
1582 2004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1583
1584 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
1585 clip_x/y_origin.
1586
1587 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
1588
1589 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
1590
1591 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
1592 on Mac OSX.
1593
1594 2004-06-16 Luc Teirlinck <teirllm@auburn.edu>
1595
1596 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
1597
1598 2004-06-16 Kim F. Storm <storm@cua.dk>
1599
1600 * dispextern.h (Vimage_types): Remove extern.
1601
1602 2004-06-16 Miles Bader <miles@gnu.org>
1603
1604 * image.c (lookup_image_type): Initialize image type if necessary.
1605
1606 2004-06-15 Kim F. Storm <storm@cua.dk>
1607
1608 * xdisp.c (try_cursor_movement): Exclude header line from scroll
1609 margin at top of window.
1610 (try_window_reusing_current_matrix): Calculate proper cursor position
1611 after scrolling up with non-zero scroll margin, as the old cursor
1612 position corresponds to value of PT before executing this command.
1613 (try_window_id): Consider scroll margin at bottom of window too;
1614 otherwise we fail to scroll when hl-line-mode is enabled.
1615
1616 * syntax.c (skip_chars): Only recognize [:class:] when it has the
1617 proper format and class is a lower-case word.
1618
1619 2004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1620
1621 * gtkutil.c (xg_get_image_for_pixmap): New function.
1622 (xg_get_gdk_pixmap_and_mask): Remove.
1623 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
1624 xg_get_gdk_pixmap_and_mask.
1625
1626 * xterm.h (struct x_display_info): Typo in comment fixed.
1627
1628 2004-06-14 Juanma Barranquero <lektu@terra.es>
1629
1630 * dispextern.h (Vimage_types): Make it conditional on
1631 HAVE_WINDOW_SYSTEM.
1632
1633 * image.c (Vimage_types): Move from xdisp.c.
1634 (Vimage_type_cache): New variable.
1635 (define_image_type): New argument indicating whether an image
1636 library was loaded; cache loaded status and return t on success,
1637 nil otherwise.
1638 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
1639 (w32_delayed_load): New function to load an image library from a
1640 list of possible filenames.
1641 (init_xpm_functions, init_png_functions, init_jpeg_functions)
1642 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
1643 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
1644 (Finit_image_library): New function, extracted from `init_image'.
1645 Try to initialize an image library on demand and cache whether we
1646 were successful or not.
1647 (syms_of_image): Initialize `Vimage_types' and
1648 `Vimage_type_cache'. Add recognized image types to Vimage_types.
1649 Export `init-image-library'.
1650 (init_image): Remove initialization of all image types, except xbm
1651 and pbm.
1652
1653 * xdisp.c (Vimage_types): Delete (moved to image.c).
1654
1655 2004-06-14 Andreas Schwab <schwab@suse.de>
1656
1657 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
1658 Avoid calling specbind when completion-regexp-list is empty.
1659
1660 2004-06-13 Richard M. Stallman <rms@gnu.org>
1661
1662 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
1663 (re_wctype, re_iswctype, re_wctype_to_bit):
1664 Non-function definitions moved here from regex.c.
1665
1666 * regex.c (re_wctype, re_iswctype): Function defs longer static.
1667 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
1668 (re_wctype, re_iswctype, re_wctype_to_bit):
1669 Non-function definitions moved to regex.h.
1670
1671 * window.c (Fselect_window): Doc fix.
1672
1673 * syntax.c: Include regex.h.
1674 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
1675 If requested, make a list of classes, then check the scanned
1676 chars for membership in them.
1677 (in_classes): New function.
1678 Doc fix.
1679
1680 * keyboard.c (cmd_error): Don't call any_kboard_state
1681 if inside a recursive edit level.
1682
1683 2004-06-13 Lorentey K\e,Aa\e(Broly <lorentey@elte.hu>
1684
1685 * keyboard.c (command_loop): Call any_kboard_state before
1686 command_loop_2 when at top level.
1687
1688 2004-06-13 Andreas Schwab <schwab@suse.de>
1689
1690 * print.c (print_object): Always use %ld for printing EMACS_INT.
1691
1692 * keyboard.c (cancel_hourglass_unwind): Return a value.
1693 (modify_event_symbol): Always use %ld for printing EMACS_INT.
1694 (Fexecute_extended_command): Likewise.
1695
1696 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
1697 avoid clashes.
1698 (SYNTAX): Likewise.
1699 (SYNTAX_WITH_FLAGS): Likewise.
1700 (SYNTAX_MATCH): Likewise.
1701
1702 * syntax.c (char_quoted): Avoid warning about undefined operation.
1703 (find_defun_start): Likewise.
1704 (scan_lists): Likewise.
1705 (INC_FROM): Likewise.
1706 (scan_sexps_forward): Likewise.
1707
1708 * image.c: Include <ctype.h>.
1709
1710 * xfaces.c (face_attr_equal_p): Declare parameters.
1711
1712 2004-06-13 Kenichi Handa <handa@m17n.org>
1713
1714 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
1715
1716 2004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
1717
1718 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
1719
1720 2004-06-12 Kenichi Handa <handa@m17n.org>
1721
1722 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
1723 ccl_prog_stack_struct and update it.
1724 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
1725 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
1726 ccl->eof_ic on EOF.
1727 (ccl_debug_hook): New function.
1728 (struct ccl_prog_stack): New member eof_ic.
1729 (ccl_driver): Handle EOF in subrountine call correctly.
1730
1731 2004-06-11 Kenichi Handa <handa@m17n.org>
1732
1733 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
1734
1735 2004-06-11 Kim F. Storm <storm@cua.dk>
1736
1737 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
1738
1739 2004-06-11 Juanma Barranquero <lektu@terra.es>
1740
1741 * keyboard.c (Fposn_at_point): Doc fix.
1742
1743 2004-06-11 David Kastrup <dak@gnu.org>
1744
1745 * search.c (match_limit): Don't flag an error if match-data
1746 exceeding the allocated search_regs.num_regs gets requested, just
1747 return Qnil.
1748
1749 2004-06-08 Miles Bader <miles@gnu.org>
1750
1751 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
1752
1753 2004-06-07 Juanma Barranquero <lektu@terra.es>
1754
1755 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
1756 (Fcurrent_time_string, Fcurrent_time_zone)
1757 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
1758
1759 2004-06-07 Miles Bader <miles@gnu.org>
1760
1761 * xfaces.c (struct named_merge_point): New type.
1762 (push_named_merge_point): New function.
1763 (merge_named_face): New function.
1764 (merge_face_ref, face_at_buffer_position, face_at_string_position):
1765 Use `merge_named_face'.
1766 (merge_face_inheritance): Function removed.
1767 (merge_face_ref): Rename from `merge_face_vector_with_property'.
1768 Add new `err_msgs' and `named_merge_points' args. Return error
1769 status. Only print error messages if ERR_MSGS is true. Don't try to
1770 do :inherit attribute validation.
1771 (merge_face_heights): Handle `unspecified' in both directions.
1772 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
1773 Call `merge_face_ref' instead of `merge_face_inheritance'.
1774 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
1775 (compute_char_face, face_at_buffer_position)
1776 (face_at_string_position): Call `merge_face_ref' instead of
1777 `merge_face_vector_with_property'.
1778
1779 2004-06-07 Kenichi Handa <handa@m17n.org>
1780
1781 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
1782 the necessary places.
1783
1784 2004-06-07 Kim F. Storm <storm@cua.dk>
1785
1786 * process.c (Fdelete_process): Undo 2004-05-28 change.
1787 Instead, call status_notify also for network process.
1788 (status_message): Use process instead of status as arg.
1789 Give messages "deleted" or "connection broken by remote peer" for
1790 an exited network process.
1791 (status_notify): Change call to status_message.
1792 (read_process_output): Increase readmax to 4096. Do not increase
1793 buffer size for datagram channels (default is now large enough).
1794
1795 2004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
1796
1797 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
1798 problem due to newly defined variable.
1799
1800 2004-06-06 Miles Bader <miles@gnu.org>
1801
1802 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
1803 immediately if non-interactive or not initialized.
1804
1805 2004-06-05 Richard M. Stallman <rms@gnu.org>
1806
1807 * minibuf.c (Fcompleting_read): Doc fix.
1808
1809 2004-06-05 Andreas Schwab <schwab@suse.de>
1810
1811 * macfns.c (x_create_tip_frame): Fix declaration after statement.
1812
1813 2004-06-05 Juanma Barranquero <lektu@terra.es>
1814
1815 * keymap.c (Fdescribe_vector): Fix docstring.
1816 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
1817
1818 2004-06-05 Miles Bader <miles@gnu.org>
1819
1820 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
1821 attributes have different values than the default face.
1822
1823 2004-06-04 Eli Zaretskii <eliz@gnu.org>
1824
1825 * xfaces.c (x_supports_face_attributes_p): Make this function
1826 conditional on HAVE_WINDOW_SYSTEM.
1827 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
1828 Don't call x_supports_face_attributes_p if it was not compiled in.
1829
1830 2004-06-04 Miles Bader <miles@gnu.org>
1831
1832 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
1833 from Ftty_supports_face_attributes_p.
1834 (x_supports_face_attributes_p): New function.
1835 (Ftty_supports_face_attributes_p): Function deleted.
1836 (Fdisplay_supports_face_attributes_p): New function.
1837 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
1838 (face_attr_equal_p): New function.
1839 (lface_equal_p): Use it.
1840
1841 2004-06-03 Juanma Barranquero <lektu@terra.es>
1842
1843 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
1844 (Vw32_color_map): Fix typo in docstring.
1845 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
1846 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
1847 Make argument names match their use in docstring.
1848
1849 2004-06-02 Juanma Barranquero <lektu@terra.es>
1850
1851 Work around bugs/problems with MinGW builds of graphics libraries
1852 called from MSVC builds of Emacs.
1853
1854 * image.c (lookup_image): Make pointer to img static.
1855 (png_read_from_memory): Disable "global" optimization.
1856
1857 2004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
1858
1859 * eval.c (Fcondition_case): Fix usage. Simplify.
1860
1861 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
1862
1863 2004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1864
1865 * macfns.c: Don't include ccl.h.
1866 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
1867 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
1868 TextUtils.h.
1869 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
1870 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
1871 display height/width.
1872 (compute_tip_xy, Vx_max_tooltip_size): Declare.
1873 (unwind_create_tip_frame, compute_tip_xy): New functions.
1874 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
1875 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
1876 and last_show_tip_args.
1877
1878 * macgui.h [!MAC_OSX]: Include Gestalt.h.
1879 (Cursor, No_Cursor): New defines.
1880 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
1881 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
1882
1883 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
1884
1885 * macterm.c: Don't include Gestalt.h.
1886 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
1887 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
1888 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
1889 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
1890 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
1891 (construct_mouse_click, XTmouse_position)
1892 (x_scroll_bar_report_motion, x_calc_absolute_position)
1893 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
1894 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
1895 (note_mouse_movement): Clear the mouse face and reset the pointer
1896 shape when the pointer goes outside the frame without grabbing.
1897 (mac_front_window): New function.
1898 (mac_window_to_frame): New macro.
1899 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
1900 (do_window_activate, do_window_deactivate, do_app_resume)
1901 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
1902 (do_zoom_window, mac_do_receive_drag, XTread_socket)
1903 (mac_check_for_quit_char): Use mac_front_window and/or
1904 mac_window_to_frame.
1905 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
1906 scroll-bar click event.
1907 (mac_define_frame_cursor): Change the pointer shape.
1908 (x_free_frame_resources): Reset tip_window to NULL when it is disposed.
1909 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
1910 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
1911 (do_window_update): Don't do anything if the updated window is the
1912 tooltip window.
1913 (do_mouse_moved): Handle mouse movement events here (previously in
1914 XTread_socket). Clear the mouse face if
1915 dpyinfo->mouse_face_hidden is set.
1916 (do_os_event, do_events): Remove (now in XTread_socket).
1917 (XTread_socket): Immediately return if interrupt_input_blocked.
1918 Loop until all the events in the queue are processed.
1919 Rearrange codes for mouse grabbing. Add tooltip support. Include the
1920 contents of do_os_event and do_events. Remove mouse movement
1921 handling (now in do_mouse_moved). Add the case where
1922 Vmouse_highlight has an integer value.
1923 (NewMacWindow): Remove.
1924 (make_mac_frame): Do what NewMacWindow previously did. Don't do
1925 excess initializations.
1926 (make_mac_terminal_frame): Previous initializations in
1927 make_mac_frame are moved here.
1928 (mac_initialize_display_info):
1929 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
1930
1931 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
1932 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
1933
1934 2004-05-29 Richard M. Stallman <rms@gnu.org>
1935
1936 * lisp.h (truncate_undo_list): Update decl.
1937
1938 * alloc.c (undo_outer_limit): New variable.
1939 (syms_of_alloc): Defvar it.
1940 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
1941
1942 * undo.c (truncate_undo_list): New arg LIMITSIZE.
1943
1944 * alloc.c (lisp_align_malloc): Check for base == 0
1945 regardless of HAVE_POSIX_MEMALIGN.
1946 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
1947
1948 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
1949
1950 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
1951 (marker_blocks_pending_free): Remove.
1952 (Fgarbage_collect): Sweep after cleaning up undo-lists.
1953 Mark the undo lists after claning them up.
1954 Don't free block in marker_blocks_pending_free.
1955 (mark_buffer): Don't mark undo_list.
1956 (gc_sweep): Sweep hash-tables and strings first.
1957 Do free marker blocks that are empty.
1958
1959 2004-05-28 Jim Blandy <jimb@redhat.com>
1960
1961 * regex.c (print_partial_compiled_pattern): Add missing 'break'
1962 after 'case wordend'. For symbeg and symend, print to stderr,
1963 like the other cases.
1964
1965 2004-05-28 Noah Friedman <friedman@splode.com>
1966
1967 * process.c (Fdelete_process): Do not call remove_process.
1968
1969 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
1970
1971 * alloc.c (struct backtrace): Remove.
1972 (Fgarbage_collect): Use the new mark_backtrace.
1973
1974 * eval.c (mark_backtrace): New function.
1975
1976 * minibuf.c (run_exit_minibuf_hook): New function.
1977 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
1978 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
1979
1980 2004-05-27 Kim F. Storm <storm@cua.dk>
1981
1982 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
1983 over display properties, e.g. images, that replace buffer text.
1984
1985 2004-05-25 Kim F. Storm <storm@cua.dk>
1986
1987 * alloc.c (marker_blocks_pending_free): New var.
1988 (gc_sweep): Store free marker blocks on that list.
1989 (Fgarbage_collect): Free them after undo-list cleanup.
1990
1991 * process.c (wait_reading_process_input): Check connect_wait_mask
1992 before actually accepting connection in case it has already been
1993 accepted due to recursion.
1994
1995 2004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
1996
1997 * coding.c (Fset_safe_terminal_coding_system_internal):
1998 Set suppress_error in safe_terminal_coding, not terminal_coding.
1999
2000 2004-05-22 Richard M. Stallman <rms@gnu.org>
2001
2002 * alloc.c (Fmake_string): Doc fix.
2003
2004 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
2005 and the alist pairs too.
2006
2007 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
2008
2009 * emacs.c (main): Update copyright year.
2010
2011 * fileio.c (Fread_file_name): Expand DIR if not absolute.
2012
2013 * insdel.c (del_range_2, replace_range): Don't write an anchor
2014 if the gap is empty.
2015
2016 * xdisp.c (try_scrolling): If scroll-up-aggressively or
2017 scroll-down-aggressively is small but positive, put point
2018 near the screen edge.
2019
2020 2004-05-22 Juanma Barranquero <lektu@terra.es>
2021
2022 * keymap.c (Fdefine_key): Doc fix.
2023
2024 2004-05-22 Kim F. Storm <storm@cua.dk>
2025
2026 * alloc.c (struct backtrace): Add debug_on_exit member.
2027 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
2028 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
2029 the removed cons cells.
2030 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
2031 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
2032 any cons cells pointing to unallocated stings.
2033 Do not lisp_free any marker blocks, as there may still be pointers
2034 to them from buffer undo lists at this stage of GC.
2035
2036 * keyboard.c (struct backtrace): Add debug_on_exit member.
2037 (Fcommand_execute): Clear it.
2038
2039 2004-05-20 Luc Teirlinck <teirllm@auburn.edu>
2040
2041 * intervals.c (lookup_char_property): Do not prematurely return nil.
2042
2043 2004-05-19 Jim Blandy <jimb@redhat.com>
2044
2045 Add support for new '\_<' and '\_>' regexp operators, matching the
2046 beginning and end of symbols.
2047
2048 * regex.c (enum syntaxcode): Add Ssymbol.
2049 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
2050 (re_opcode_t): New opcodes `symbeg' and `symend'.
2051 (print_partial_compiled_pattern): Print the new opcodes properly.
2052 (regex_compile): Parse the new operators.
2053 (analyse_first): Skip sym(beg|end) (they match only the empty string).
2054 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
2055 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
2056 (re_match_2_internal): Match symbeg and symend.
2057
2058 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
2059
2060 2004-05-19 Kim F. Storm <storm@cua.dk>
2061
2062 * .gdbinit (xsymbol): Fix last change.
2063
2064 2004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
2065
2066 * .gdbinit (xprintstr): New fun.
2067 (xstring, xprintsym): Use it.
2068
2069 * w32proc.c (create_child): Use INTMASK.
2070
2071 * alloc.c (Fgarbage_collect): Do all the marking before flushing
2072 unmarked elements of the undo list.
2073
2074 2004-05-18 David Ponce <david@dponce.com>
2075
2076 * print.c (print): Reset print_depth before to call print_object.
2077
2078 2004-05-18 Jason Rumney <jasonr@gnu.org>
2079
2080 * w32console.c: Prefix RIF functions with w32con_ to avoid
2081 namespace clash with functions in term.c and w32term.c.
2082
2083 * w32menu.c (add_menu_item, w32_menu_display_help)
2084 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
2085
2086 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
2087
2088 2004-05-18 Eli Zaretskii <eliz@gnu.org>
2089
2090 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
2091
2092 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
2093 with make_number.
2094 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
2095 with XINT.
2096
2097 2004-05-18 Kim F. Storm <storm@cua.dk>
2098
2099 * blockinput.h (INPUT_BLOCKED_P): New macros.
2100
2101 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
2102 (Ftop_level): Unblock input if blocked.
2103
2104 * buffer.h (GET_OVERLAYS_AT): New macro.
2105 * msdos.c (IT_note_mouse_highlight): Use it.
2106 * textprop.c (get_char_property_and_overlay): Use it.
2107 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
2108 * xfaces.c (face_at_buffer_position): Use it.
2109
2110 * print.c (print_object): Increase buf size.
2111
2112 2004-05-17 Jason Rumney <jasonr@gnu.org>
2113
2114 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
2115 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
2116 Lisp_Object using i member.
2117 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
2118 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
2119 consistently.
2120
2121 * w32proc.c (create_child): Use make_number instead of masking pid.
2122
2123 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
2124 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
2125 Use EQ to compare Lisp_Objects.
2126 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
2127
2128 * w32term.c (w32_num_mouse_buttons): Rename from
2129 Vw32_num_mouse_buttons and make it an int.
2130
2131 * w32.c (init_environment): Use it.
2132
2133 * w32fns.c (w32_wnd_proc): Likewise.
2134
2135 * w32proc.c (w32_pipe_read_delay): Rename from
2136 Vw32_pipe_read_delay and make it an int.
2137
2138 * w32.c (_sys_read_ahead): Use it.
2139
2140 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
2141
2142 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
2143
2144 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
2145 (key_event): Don't mix Lisp_Object and int.
2146
2147 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
2148
2149 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
2150 modifiers in language change event.
2151
2152 2004-05-17 Kim F. Storm <storm@cua.dk>
2153
2154 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
2155 Such objects may be freed markers which still exist on an undo list.
2156
2157 2004-05-16 Juanma Barranquero <lektu@terra.es>
2158
2159 * data.c (Fset_default): Make argument names match their use in
2160 docstring.
2161
2162 2004-05-15 Andreas Schwab <schwab@suse.de>
2163
2164 * emacs.c (gdb_array_mark_flag): Define.
2165 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
2166
2167 2004-05-15 Eli Zaretskii <eliz@gnu.org>
2168
2169 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
2170 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
2171 defined for the MS-DOS build.
2172
2173 2004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
2174
2175 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
2176
2177 2004-05-14 Kenichi Handa <handa@m17n.org>
2178
2179 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
2180
2181 2004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2182
2183 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
2184 section to frame.c section.
2185 (Fxw_display_color_p, Fx_file_dialog): Declare if
2186 HAVE_WINDOW_SYSTEM defined.
2187
2188 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
2189
2190 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
2191
2192 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
2193 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
2194 (XTread_socket): Fix int/Lisp_Object mixup.
2195 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
2196
2197 * macterm.h (struct frame, struct face, struct image)
2198 (display_x_get_resource, Fx_display_color_p)
2199 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
2200 Add prototypes.
2201
2202 2004-05-14 Kim F. Storm <storm@cua.dk>
2203
2204 * process.c (wait_reading_process_input): Make reentrant.
2205 Make Available and Connecting non-static. Save and restore value
2206 of waiting_for_user_input_p.
2207
2208 2004-05-13 Kim F. Storm <storm@cua.dk>
2209
2210 * keyboard.c (mark_kboards): Don't mark x and y members
2211 that are overloaded in selection request events.
2212
2213 2004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
2214
2215 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
2216
2217 2004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
2218
2219 * window.c (Fdisplay_buffer, Fsplit_window)
2220 (split-height-threshold): Doc fix.
2221
2222 2004-05-13 Juanma Barranquero <lektu@terra.es>
2223
2224 * xfaces.c (Ftty_supports_face_attributes_p)
2225 (Finternal_copy_lisp_face): Fix typo in docstring.
2226 (Finternal_get_lisp_face_attribute): Fix docstring.
2227
2228 2004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2229
2230 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
2231
2232 2004-05-11 Steven Tamm <steventamm@mac.com>
2233
2234 * macfns.c (Fx_create_frame): Default to using tool-bar by
2235 setting tool-bar-lines to 1 in default-frame-alist.
2236
2237 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2238
2239 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
2240 (xpm_get_color_table_v, xpm_make_color_table_h)
2241 (xpm_put_color_table_h, xpm_get_color_table_h)
2242 (xpm_str_to_color_key, xpm_load_image, xpm_load)
2243 (syms_of_image): Support XPM on Carbon Emacs. Does not
2244 depend on libXpm, but only supports XPM version 3 without extensions.
2245
2246 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2247
2248 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
2249 instead of FRAME_X_P
2250
2251 2004-05-11 Kim F. Storm <storm@cua.dk>
2252
2253 * process.c (read_process_output): Grow decoding_buf when needed;
2254 this could cause a crash in allocate_string and compact_small_strings.
2255
2256 2004-04-29 Jim Blandy <jimb@redhat.com>
2257
2258 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
2259 against proper opcode.
2260
2261 2004-05-10 Juanma Barranquero <lektu@terra.es>
2262
2263 * process.c (Fstart_process): Fix docstring.
2264
2265 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
2266 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
2267 (Fsplit_char, Fchar_charset): Make argument names match their use
2268 in docstring.
2269
2270 2004-05-10 Richard M. Stallman <rms@gnu.org>
2271
2272 * print.c (print_preprocess): Use being_printed, loop_count and
2273 halftail to detect overdeep nesting and cyclic cdr chains.
2274
2275 2004-05-10 Andreas Schwab <schwab@suse.de>
2276
2277 * lisp.h: Declare Fmake_symbolic_link.
2278
2279 * fileio.c (Frename_file): Remove extra argument in call to
2280 Fmake_symbolic_link.
2281
2282 2004-05-10 Kim F. Storm <storm@cua.dk>
2283
2284 * xdisp.c (calc_line_height_property): Use string position when
2285 object is a string.
2286
2287 2004-05-10 Kenichi Handa <handa@m17n.org>
2288
2289 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
2290 inhibit-modification-hooks to t temporarily before calling
2291 Ferase_buffer.
2292
2293 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
2294 inhibit-modification-hooks to t temporarily before calling
2295 Ferase_buffer.
2296
2297 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
2298 inhibit-modification-hooks to t temporarily before calling
2299 Ferase_buffer.
2300
2301 * fns.c (count_combining): Delete it.
2302 (concat): Don't check combining bytes.
2303
2304 2004-05-09 Jason Rumney <jasonr@gnu.org>
2305
2306 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
2307 (globals_of_w32fns): Set it.
2308
2309 2004-05-09 Piet van Oostrum <piet@cs.uu.nl>
2310
2311 * data.c (Fquo): Simplify.
2312
2313 2004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
2314
2315 * data.c (Fquo): If any argument is float, do the computation in
2316 floating point.
2317
2318 2004-05-08 Juanma Barranquero <lektu@terra.es>
2319
2320 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
2321 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
2322 Fix spelling of Emacs on docstring.
2323 (Fset_process_coding_system, Fprocess_coding_system)
2324 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
2325 Make argument names match their use in docstring.
2326 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
2327 Fix docstring.
2328
2329 * editfns.c (Finsert_buffer_substring): Make argument names match their
2330 use in docstring.
2331
2332 * syntax.c (Fmodify_syntax_entry): Fix docstring.
2333
2334 2004-05-07 Steven Tamm <steventamm@mac.com>
2335
2336 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
2337 around call to ReceiveEvent to avoid certain crashes.
2338
2339 2004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2340
2341 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
2342 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
2343 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
2344 Save/restore the current graphics port and device handle when
2345 drawing into an offscreen graphics world.
2346
2347 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
2348 (gif_load): Likewise.
2349
2350 2004-05-07 Juanma Barranquero <lektu@terra.es>
2351
2352 * window.c (Fset_window_buffer): Fix docstring.
2353
2354 2004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
2355
2356 * emacs.c (main) [VMS]: Fix var ref.
2357
2358 2004-05-06 Romain Francoise <romain@orebokech.com>
2359
2360 * data.c (Fsetq_default): Fix docstring.
2361
2362 2004-05-06 Jason Rumney <jasonr@gnu.org>
2363
2364 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
2365 to avoid name clash.
2366
2367 2004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2368
2369 * fileio.c (barf_or_query_if_file_exists): Use lstat.
2370 (Frename_file): Handle renaming of symlinks across file systems.
2371 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
2372
2373 2004-05-04 Kim F. Storm <storm@cua.dk>
2374
2375 * xdisp.c (Qtotal): New var.
2376 (syms_of_xdisp): Intern and staticpro it.
2377 (calc_line_height_property): New arg total. Set it if
2378 line-spacing property has format (total . VALUE).
2379 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
2380 Handle total line-spacing property.
2381
2382 2004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2383
2384 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
2385 "under" scroll bar when size/position changes.
2386
2387 2004-05-03 Jason Rumney <jasonr@gnu.org>
2388
2389 * makefile.nt: Remove.
2390
2391 2004-05-02 Eli Zaretskii <eliz@gnu.org>
2392
2393 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
2394 Avoid compiler warnings.
2395
2396 * Makefile.in (region-cache.o): Depend on config.h.
2397
2398 2004-05-02 Romain Francoise <romain@orebokech.com>
2399
2400 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
2401 with continuation lines, too.
2402
2403 2004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
2404
2405 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
2406
2407 2004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
2408
2409 * xdisp.c (calc_line_height_property): YAILOM (yet another
2410 int/Lisp_Object mixup).
2411
2412 2004-05-01 Eli Zaretskii <eliz@gnu.org>
2413
2414 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
2415 undo bad effect of pack(4) in some versions of system headers.
2416
2417 2004-05-01 Jason Rumney <jasonr@gnu.org>
2418
2419 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
2420
2421 2004-04-30 Kim F. Storm <storm@cua.dk>
2422
2423 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
2424 (syms_of_buffer) <cursor-type>: Doc fix.
2425
2426 * dispextern.h (struct it): Remove member use_default_face.
2427 Add members override_ascent, override_descent, override_boff.
2428
2429 * xdisp.c (init_iterator): Handle line-spacing float value.
2430 Initialize override_ascent member.
2431 (append_space_for_newline): Reset override_ascent.
2432 Remove use_default_face.
2433 (calc_line_height_property): New function to calculate value of
2434 line-height and line-spacing properties. Look at overlays, too.
2435 Set override_ascent, override_descent, override_boff members when
2436 using another face than the current face. Float values are now
2437 relative to the frame default font, by default; accept a cons
2438 of ratio and face name to specify value relative to a specific face.
2439 (x_produce_glyphs): Use calc_line_height_property.
2440 Use override_ascent etc. when set to handle different face heights.
2441 A negative line-spacing property value is interpreted as a total
2442 line height, rather than inter-line spacing.
2443 (note_mouse_highlight): Allocate room for 40 overlays initially.
2444
2445 2004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
2446
2447 * data.c (Fsubr_name): New fun.
2448 (syms_of_data): Defsubr it.
2449
2450 2004-04-29 Kim F. Storm <storm@cua.dk>
2451
2452 * xdisp.c (null_glyph_slice): New var.
2453 (append_glyph, append_composite_glyph, append_stretch_glyph):
2454 Use it to initialize glyph slice.
2455
2456 2004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
2457
2458 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
2459 (on_hot_spot_p): Make sure we always return a value.
2460 (Flookup_image_map): Remove unused var ix and iy.
2461 (note_mode_line_or_margin_highlight): Remove unused var `image'.
2462
2463 2004-04-27 Eli Zaretskii <eliz@gnu.org>
2464
2465 * msdos.c (init_environment): If one of the TMP... environment
2466 variables is set to a drive letter without a trailing slash,
2467 append a slash.
2468
2469 2004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
2470
2471 * editfns.c (lisp_time_argument): Provide externally.
2472
2473 * fileio.c (Fset_file_times): New function.
2474 (syms_of_fileio): Intern and staticpro it.
2475
2476 2004-04-27 Kim F. Storm <storm@cua.dk>
2477
2478 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
2479 header line strings.
2480
2481 * dispextern.h (struct it): New member use_default_face.
2482
2483 * xdisp.c (Qline_height): New variable.
2484 (syms_of_xdisp): Intern and staticpro it.
2485 (append_space_for_newline): Partially undo 2004-04-25 change;
2486 add default_face_p arg, and restore callers.
2487 Clear it->use_default_face after use.
2488 (x_produce_glyphs): Set default font for ascii char if
2489 it->use_default_font is set. Change line-spacing property to set
2490 just extra line spacing. Handle new line-height property.
2491
2492 2004-04-26 Andreas Schwab <schwab@suse.de>
2493
2494 * print.c (print_object): Print non-ascii characters in bool
2495 vector representation as octal escapes.
2496
2497 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
2498 * print.c (print_object): Use it instead of BITS_PER_CHAR for
2499 bool vectors.
2500 * lread.c (read1): Likewise.
2501 * alloc.c (Fmake_bool_vector): Likewise.
2502 * data.c (Faref, Faset): Likewise.
2503 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
2504 (mapcar1): Likewise.
2505
2506 2004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
2507
2508 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
2509
2510 2004-04-26 Miles Bader <miles@gnu.org>
2511
2512 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
2513
2514 2004-04-26 Juanma Barranquero <lektu@terra.es>
2515
2516 * buffer.c (Fpop_to_buffer): Fix docstring.
2517
2518 2004-04-26 Steven Tamm <steventamm@mac.com>
2519
2520 * lread.c (init_lread): Don't display missing lisp directory
2521 warnings with Carbon Emacs because self-contained bundled Emacs
2522 may be built without correct installation path.
2523
2524 2004-04-25 Kim F. Storm <storm@cua.dk>
2525
2526 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
2527
2528 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
2529
2530 * xdisp.c (append_space_for_newline): Rename from append_space.
2531 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
2532 (x_produce_glyphs): Handle line-spacing property on newline char.
2533 If value is t, adjust ascent and descent to fit current row height.
2534 If value is an integer or float, set extra_line_spacing to integer
2535 value, or to float value x current line height.
2536
2537 2004-04-23 Kenichi Handa <handa@m17n.org>
2538
2539 * fontset.c (Finternal_char_font): If POSITION is nil, return
2540 font for displaying CH with the default face.
2541
2542 2004-04-23 Juanma Barranquero <lektu@terra.es>
2543
2544 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
2545
2546 2004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
2547
2548 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
2549 Don't make assumptions about the relative place of i and val.
2550 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
2551
2552 2004-04-21 Kim F. Storm <storm@cua.dk>
2553
2554 * dispextern.h (struct glyph_slice): New struct.
2555 (struct glyph): New member slice.
2556 (GLYPH_SLICE_EQUAL_P): New macro.
2557 (GLYPH_EQUAL_P): Use it.
2558 (struct glyph_string): New member slice.
2559 (struct it_slice): New struct.
2560 (struct it): New member slice, add member to stack too.
2561 New member constrain_row_ascent_descent_p.
2562 (image_ascent): Add prototype.
2563
2564 * dispnew.c (buffer_posn_from_coords): Return full image width
2565 and height even for image slices (posn is relative to full image).
2566 (marginal_area_string): Adjust x0,y0 for image slice.
2567
2568 * image.c (image_ascent): Add slice arg; calculate ascent for
2569 image slice (or full image).
2570
2571 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
2572 (syms_of_keyboard): Defsubr them.
2573
2574 * lisp.h (pos_visible_p): Fix prototype.
2575
2576 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
2577 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2578 (x_draw_image_foreground, x_draw_image_relief)
2579 (x_draw_image_foreground_1, x_draw_image_glyph_string):
2580 Draw sliced images.
2581
2582 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
2583 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2584 (x_draw_image_foreground, x_draw_image_relief)
2585 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
2586 Draw sliced images.
2587
2588 * w32term.h (image_ascent): Remove prototype.
2589
2590 * window.c (Fpos_visible_in_window_p): Return pixel position if
2591 PARTIALLY arg is non-nil. Simplify. Doc fix.
2592 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
2593 to return/set vscroll in pixels.
2594
2595 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
2596
2597 * xdisp.c (Qslice): New variable.
2598 (syms_of_xdisp): Intern and staticpro it.
2599 (pos_visible_p): Return pixel position in new x and y args.
2600 (init_iterator): Reset it->slice info.
2601 (handle_display_prop): Parse (slice ...) property.
2602 (push_it, pop_it): Save/restore slice info.
2603 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
2604 force repositioning of tall row if window is vscrolled, as that
2605 would reset vscroll.
2606 (append_space): Set it->constrain_row_ascent_descent_p to avoid
2607 increasing row height if row is non-empty.
2608 (fill_image_glyph_string): Copy slice info.
2609 (take_vertical_position_into_account): Simplify.
2610 (produce_image_glyph): Handle iterator slice info, setup glyph
2611 slice info. Do not force minimum line height.
2612 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
2613 do not increase height (ascent/descent) of non-empty row when
2614 adding normal character glyph; instead reduce glyph ascent/descent
2615 appropriately; if row is higher than current glyph, adjust glyph
2616 descent/ascent to reposition glyph within the existing row.
2617 Likewise, when char is newline, only set ascent/descent if row is
2618 currently empty.
2619 (note_mouse_highlight): Handle hotspots with sliced image.
2620
2621 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
2622 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2623 (x_draw_image_foreground, x_draw_image_relief)
2624 (x_draw_image_foreground_1, x_draw_image_glyph_string):
2625 Draw sliced images.
2626
2627 * xterm.h (image_ascent): Remove prototype.
2628
2629 2004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
2630
2631 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
2632
2633 2004-04-20 John Paul Wallington <jpw@gnu.org>
2634
2635 * fns.c (Fassoc, Feql): Fix indentation.
2636
2637 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
2638
2639 2004-04-19 John Paul Wallington <jpw@gnu.org>
2640
2641 * fns.c (Feql): New function.
2642 (syms_of_fns): Defsubr it.
2643
2644 2004-04-18 Jason Rumney <jasonr@gnu.org>
2645
2646 * w32select.c (Fw32_set_clipboard_data): Get sequence number
2647 after closing the clipboard.
2648
2649 2004-04-16 Luc Teirlinck <teirllm@auburn.edu>
2650
2651 * buffer.c (Fbuffer_base_buffer): Doc fix.
2652
2653 2004-04-17 Kim F. Storm <storm@cua.dk>
2654
2655 * keymap.c (Fkey_description): Add optional PREFIX arg.
2656 Combine prefix with KEYS to make up the full key sequence to describe.
2657 Correlate meta_prefix_char and following (simple) key to describe
2658 as meta modifier. All callers changed.
2659 (describe_map): Rename arg `keys' to `prefix'. Remove local
2660 `elt_prefix' var. Use Fkey_description with prefix instead of
2661 elt_prefix combined with Fsingle_key_description.
2662 (describe_vector): Declare static. Replace arg `elt_prefix' with
2663 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
2664 if !KEYMAP_P. Use Fkey_description with prefix instead of
2665 Fsingle_key_description.
2666
2667 * keymap.h (Fkey_description): Fix prototype.
2668 (describe_vector): Remove prototype.
2669
2670 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
2671
2672 * image.c (PNG_BG_COLOR_SHIFT): Remove.
2673 (png_load): Fix calculation of transparent background color on X
2674 and W32 platforms.
2675
2676 2004-04-16 Juanma Barranquero <lektu@terra.es>
2677
2678 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
2679 not too large before computing how much to scroll.
2680
2681 2004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
2682
2683 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
2684
2685 2004-04-14 Luc Teirlinck <teirllm@auburn.edu>
2686
2687 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
2688 Add hyperlink to Elisp manual to the docstring.
2689
2690 2004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
2691
2692 * callint.c (fix_command): Use XDCR.
2693
2694 2004-04-14 Nick Roberts <nick@nick.uklinux.net>
2695
2696 * window.c (Fget_lru_window): Doc fix.
2697
2698 2004-04-14 Kim F. Storm <storm@cua.dk>
2699
2700 * editfns.c (Fformat): Fix allocation size of precision array.
2701
2702 * dispnew.c (update_window): Only set changed_p if
2703 scrolling_window actually did scroll.
2704 (scrolling_window): Only return 1 if we actually did scroll.
2705
2706 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
2707 height to glyph height when cursor row is not fully visible.
2708 (make_cursor_line_fully_visible): Add FORCE_P arg to return
2709 failure in case row is higher than window. Callers changed.
2710 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
2711 Try to scroll partially visible, higher-than-window cursor row.
2712 (redisplay_window): Always try to scroll partially visible,
2713 higher-than-window cursor row - both initially and again with
2714 centering_position = 0.
2715 Clear desired matrix before retrying with centering_position = 0.
2716
2717 2004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
2718
2719 * syntax.c (scan_lists): Simplify backward string scan.
2720 Fix off-by-one boundary check for string and comment fences.
2721
2722 2004-04-13 Joe Buehler <jbuehler@hekimian.com>
2723
2724 * sheap.c, unexcw.c: New files.
2725
2726 2004-04-12 Luc Teirlinck <teirllm@auburn.edu>
2727
2728 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
2729 base buffer has been killed. Correct the error message if the
2730 base buffer does not exist.
2731
2732 2004-04-12 Joe Buehler <jbuehler@hekimian.com>
2733
2734 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
2735 Cygwin itself. Add support for Xaw3d scrollbars.
2736
2737 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
2738
2739 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
2740
2741 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
2742 before Cygwin unexec.
2743
2744 * Makefile.in: Link changes for Cygwin unexec() support.
2745
2746 2004-04-12 Andreas Schwab <schwab@suse.de>
2747
2748 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
2749
2750 2004-04-11 Luc Teirlinck <teirllm@auburn.edu>
2751
2752 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
2753 IGNORE argument equals NAME. Doc fix.
2754
2755 2004-04-11 Masatake YAMATO <jet@gyve.org>
2756
2757 * buffer.c (fix_start_end_in_overlays): Make overlays
2758 empty if they are backwards.
2759
2760 2004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
2761
2762 * xfaces.c (face_color_supported_p): Fix compilation without X11.
2763
2764 2004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
2765
2766 * doc.c (Fsnarf_documentation): Ignore new file name entries.
2767
2768 2004-04-06 Kim F. Storm <storm@cua.dk>
2769
2770 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
2771 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
2772
2773 * w32term.c (w32_read_socket): Set mouse_face_hidden after
2774 clearing highlight.
2775
2776 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
2777
2778 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
2779 clearing highlight.
2780
2781 * indent.c (vmotion): Do not reserve one column for continuation
2782 marks on window frames.
2783
2784 2004-04-04 Eli Zaretskii <eliz@gnu.org>
2785
2786 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
2787 from GCC.
2788
2789 2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
2790
2791 * .gdbinit-union: Remove.
2792
2793 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
2794 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
2795 ($nonvalbits): Remove.
2796 ($valmask): Set it by calling xreload to avoid redundancy.
2797
2798 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
2799 (gdb_emacs_intbits): Remove.
2800
2801 2004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2802
2803 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
2804
2805 2004-03-30 Kenichi Handa <handa@m17n.org>
2806
2807 * editfns.c (Fformat): Fix initialization of the array info.
2808
2809 2004-03-30 Kim F. Storm <storm@cua.dk>
2810
2811 * xterm.c (x_mouse_click_focus_ignore_position): New var.
2812 (syms_of_xterm): DEFVAR_BOOL it.
2813 (ignore_next_mouse_click_timeout): New var.
2814 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
2815 Use it to filter mouse clicks following focus event.
2816
2817 2004-03-29 David Ponce <david@dponce.com>
2818
2819 * callint.c (Fcall_interactively): Fix last change.
2820
2821 2004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
2822
2823 * eval.c (Fcommandp): Simplify.
2824
2825 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
2826 Extend to handle all kinds of functions.
2827
2828 * lisp.h (Finteractive_form): Declare.
2829
2830 * callint.c (Fcall_interactively): Use it.
2831
2832 2004-03-26 Kim F. Storm <storm@cua.dk>
2833
2834 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
2835 to catch errors in calc_pixel_width_or_height during redisplay.
2836
2837 2004-03-26 Masatake YAMATO <jet@gyve.org>
2838
2839 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
2840
2841 * lisp.h (fix_start_end_in_overlays): Likewise.
2842
2843 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
2844
2845 * editfns.c (Ftranspose_regions): Likewise.
2846
2847 2004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2848
2849 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
2850
2851 2004-03-19 Richard M. Stallman <rms@gnu.org>
2852
2853 * s/sol2-6.h: Delete previous change.
2854
2855 2004-03-19 Kim F. Storm <storm@cua.dk>
2856
2857 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
2858 to_charpos corresponds to newline in right fringe. Use local
2859 BUFFER_POS_REACHED_P macro.
2860
2861 2004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2862
2863 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
2864 to compile on non-window system.
2865
2866 2004-03-19 Kim F. Storm <storm@cua.dk>
2867
2868 * dispextern.h (calc_pixel_width_or_height): Add prototype.
2869
2870 * image.c (Qcenter): Move to xdisp.c.
2871
2872 * xdisp.c (Qcenter): Declare here.
2873 (syms_of_xdisp): Intern and staticpro it.
2874 (handle_single_display_prop): Allow space display property on all
2875 platforms.
2876 (display_mode_line): Set mode_line_p before displaying line.
2877 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
2878 handling. Remove complex cases for fringes and scroll-bars.
2879 Add left, right, and center alignment positions. Add text (area)
2880 width/height. Return width or height for image specs.
2881 (produce_stretch_glyph): Improve handling of :align-to. Is now
2882 relative to left of text area by default, but other base offsets
2883 can be specified -- also for text lines.
2884
2885 * term.c (produce_glyphs): Handle IT_STRETCH.
2886 (produce_stretch_glyph): New function to handle space width and
2887 align-to display properties on non-window systems.
2888
2889 2004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
2890
2891 * fileio.c (Fread_file_name): Set completion-ignore-case for
2892 case-insensitive systems.
2893
2894 2004-03-14 Masatake YAMATO <jet@gyve.org>
2895
2896 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
2897 when keymap and cursor are setup.
2898
2899 2004-03-14 Steven Tamm <steventamm@mac.com>
2900
2901 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
2902
2903 2004-03-14 Kim F. Storm <storm@cua.dk>
2904
2905 * dispextern.h (x_find_image_file): Add prototype.
2906
2907 * image.c (x_find_image_file): Make extern.
2908
2909 * xfns.c (x_find_image_file): Remove prototype.
2910
2911 2004-03-13 Eli Zaretskii <eliz@gnu.org>
2912
2913 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
2914
2915 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
2916
2917 2004-03-12 Richard M. Stallman <rms@gnu.org>
2918
2919 * fns.c (internal_equal): New arg PROPS controls comparing
2920 text properties. All callers changed.
2921 (Fequal_including_properties): New function.
2922 (syms_of_fns): defsubr it.
2923
2924 2004-03-12 Kim F. Storm <storm@cua.dk>
2925
2926 Fix image support on MAC. From YAMAMOTO Mitsuharu.
2927
2928 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
2929 (image_background, image_background_transparent): Fix prototypes.
2930
2931 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
2932
2933 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
2934 (x_query_font, x_find_ccl_program, x_set_window_size)
2935 (x_make_frame_visible, mac_initialize, XCreatePixmap)
2936 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
2937 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
2938
2939 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
2940 (x_query_font, x_find_ccl_program, x_set_window_size)
2941 (x_make_frame_visible, mac_initialize, XCreatePixmap)
2942 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
2943 (mac_draw_line_to_pixmap): Add prototypes.
2944
2945 2004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2946
2947 * macterm.c (XTread_socket): Fix mouse click on tool bar.
2948
2949 2004-03-11 Kim F. Storm <storm@cua.dk>
2950
2951 * dispextern.h: Move image related prototypes from xfns.c section
2952 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
2953 HAVE_X_WINDOWS.
2954
2955 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
2956 Move gtkutil.o to new GTK_OBJ list.
2957 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
2958 (GTK_OBJ) [USE_GTK]: New declaration.
2959 (obj): Add $(GTK_OBJ) to list.
2960
2961 2004-03-11 Steven Tamm <steventamm@mac.com>
2962
2963 * image.c [MAC_OSX]: Include sys/stat.h
2964
2965 * macfns.c (syms_of_macfns): Remove definitions of things now
2966 defined in image.c
2967
2968 2004-03-11 Kim F. Storm <storm@cua.dk>
2969
2970 The following changes consolidates the identical/similar image
2971 support code previously found in xfns.c, w32fns.c, and macfns.c
2972 into a new file image.c.
2973
2974 * makefile.w32-in (OBJ1): Add image.o.
2975 ($(BLD)/image.$(O)): Add dependencies.
2976
2977 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
2978 (image.o): Add dependencies.
2979
2980 * image.c: New file with consolidated image support code.
2981 (COLOR_TABLE_SUPPORT): New define to control whether
2982 color table support is available (X only).
2983 (Bitmap_Record): Common name for x_bitmap_record,
2984 w32_bitmap_record, and mac_bitmap_record.
2985 (XImagePtr): Common name for pointer to XImage or equivalent.
2986 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
2987 to XImagePtr on X+MAC, and to HDC on W32.
2988 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
2989 (NO_PIXMAP): Common name for "None" or equivalent.
2990 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
2991 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
2992 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
2993 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
2994 Define with suitable equivalents on W32 and MAC for code sharing.
2995 (XDrawLine): Define on MAC for code sharing.
2996 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
2997 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
2998 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2999 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3000 (x_reference_bitmap, x_create_bitmap_from_data)
3001 (x_create_bitmap_from_file, x_destroy_bitmap)
3002 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3003 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
3004 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3005 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3006 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3007 (define_image_type, lookup_image_type, valid_image_p)
3008 (image_error, enum image_value_type, struct image_keyword)
3009 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3010 (make_image, free_image, prepare_image_for_display, image_ascent)
3011 (four_corners_best, image_background, image_background_transparent)
3012 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3013 (make_image_cache, free_image_cache, clear_image_cache)
3014 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3015 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3016 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3017 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
3018 (init_image_func_pointer, image_load_quartz2d)
3019 (struct ct_color, init_color_table, free_color_table)
3020 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3021 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3022 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3023 (x_disable_image, x_build_heuristic_mask)
3024 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3025 (TIFF support, GIF support, Ghostscript support): Consolidate image
3026 code from xfns.c, w32fns.c, and macfns.c.
3027 (syms_of_image): Consolidate image related symbol setup here.
3028 (init_image): Consolidate image related initializations here.
3029
3030 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
3031 and init_image. Remove call to init_xfns.
3032
3033 * macterm.h (struct mac_bitmap_record): Add file member.
3034 Not currently used, but simplifies code sharing.
3035
3036 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
3037 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3038 (x_reference_bitmap, x_create_bitmap_from_data)
3039 (x_create_bitmap_from_file, x_destroy_bitmap)
3040 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3041 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
3042 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3043 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3044 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3045 (define_image_type, lookup_image_type, valid_image_p)
3046 (image_error, enum image_value_type, struct image_keyword)
3047 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3048 (make_image, free_image, prepare_image_for_display, image_ascent)
3049 (four_corners_best, image_background, image_background_transparent)
3050 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3051 (make_image_cache, free_image_cache, clear_image_cache)
3052 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3053 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3054 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3055 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
3056 (init_image_func_pointer, image_load_quartz2d)
3057 (struct ct_color, init_color_table, free_color_table)
3058 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3059 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3060 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3061 (x_disable_image, x_build_heuristic_mask)
3062 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3063 (TIFF support, GIF support, Ghostscript support): Merge with image
3064 code from xfns.c and macfns.c into image.c.
3065 (syms_of_xfns): Move image related symbols to image.c.
3066 (init_external_image_libraries, init_xfns): Remove; initialization
3067 moved to init_image in image.c.
3068
3069 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
3070 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3071 (x_reference_bitmap, x_create_bitmap_from_data)
3072 (x_create_bitmap_from_file, x_destroy_bitmap)
3073 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3074 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3075 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3076 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3077 (define_image_type, lookup_image_type, valid_image_p)
3078 (image_error, enum image_value_type, struct image_keyword)
3079 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3080 (make_image, free_image, prepare_image_for_display, image_ascent)
3081 (four_corners_best, image_background, image_background_transparent)
3082 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3083 (make_image_cache, free_image_cache, clear_image_cache)
3084 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3085 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3086 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3087 (struct ct_color, init_color_table, free_color_table)
3088 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3089 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3090 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3091 (x_disable_image, x_build_heuristic_mask)
3092 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3093 (TIFF support, GIF support, Ghostscript support): Merge with image
3094 code from xfns.c and macfns.c into image.c.
3095 (syms_of_xfns): Move image related symbols to image.c.
3096 (init_external_image_libraries, init_xfns): Remove; initialization
3097 moved to init_image in image.c.
3098
3099 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
3100 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3101 (x_reference_bitmap, x_create_bitmap_from_data)
3102 (x_create_bitmap_from_file, x_destroy_bitmap)
3103 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3104 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3105 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3106 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3107 (define_image_type, lookup_image_type, valid_image_p)
3108 (image_error, enum image_value_type, struct image_keyword)
3109 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3110 (make_image, free_image, prepare_image_for_display, image_ascent)
3111 (four_corners_best, image_background, image_background_transparent)
3112 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3113 (make_image_cache, free_image_cache, clear_image_cache)
3114 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3115 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3116 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3117 (struct ct_color, init_color_table, free_color_table)
3118 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3119 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3120 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3121 (x_disable_image, x_build_heuristic_mask)
3122 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3123 (TIFF support, GIF support, Ghostscript support): Merge with
3124 w32fns.c and macfns.c image code into image.c.
3125 (syms_of_xfns): Move image related symbols to image.c.
3126 (init_xfns): Remove; initialization moved to init_image in image.c.
3127
3128 * lisp.h (syms_of_image, init_image): Add protoypes.
3129 (init_xfns): Remove prototype.
3130
3131 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3132 (x_reference_bitmap, x_create_bitmap_from_data)
3133 (x_create_bitmap_from_file, x_destroy_bitmap)
3134 (x_create_bitmap_mask): Move prototypes from dispextern.h.
3135 (gamma_correct) [MAC_OS]: Add prototype.
3136
3137 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3138 (x_reference_bitmap, x_create_bitmap_from_data)
3139 (x_create_bitmap_from_file, x_destroy_bitmap)
3140 (x_create_bitmap_mask): Move prototypes to dispextern.h.
3141
3142 2004-03-09 Kenichi Handa <handa@etlken2>
3143
3144 * coding.c (decode_coding_emacs_mule): Handle insufficent source
3145 correctly.
3146
3147 2004-03-04 Richard M. Stallman <rms@gnu.org>
3148
3149 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
3150
3151 * window.c (Fdisplay_buffer): Doc fix.
3152
3153 * buffer.c (Fpop_to_buffer): Doc fix.
3154
3155 2004-03-03 Kim F. Storm <storm@cua.dk>
3156
3157 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
3158
3159 2004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
3160
3161 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
3162
3163 2004-03-02 Richard M. Stallman <rms@gnu.org>
3164
3165 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
3166
3167 2004-03-02 Kenichi Handa <handa@m17n.org>
3168
3169 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
3170
3171 2004-03-02 Kim F. Storm <storm@cua.dk>
3172
3173 * window.h (struct window): New member overlay_arrow_bitmap.
3174
3175 * window.c (make_window): Initialize overlay_arrow_bitmap.
3176
3177 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
3178 implement and integrate multiple overlay arrows with redisplay.
3179 (syms_of_xdisp): DEFVAR_LISP and initialize it.
3180 (last_arrow_position, last_arrow_string): Replace by properties.
3181 (Qlast_arrow_position, Qlast_arrow_string)
3182 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
3183 (syms_of_xdisp): Intern and staticpro them.
3184 (overlay_arrow_string_or_property, update_overlay_arrows)
3185 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
3186 (overlay_arrow_at_row): New functions for multiple overlay arrows.
3187 (redisplay_internal): Use them instead of directly accessing
3188 Voverlay_arrow_position etc. for multiple overlay arrows.
3189 (mark_window_display_accurate): Use update_overlay_arrows.
3190 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
3191 (try_window_id): Use overlay_arrows_changed_p.
3192 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
3193 (display_line): Use overlay_arrow_at_row to check multiple
3194 overlay arrows, and get relevant overlay-arrow-string and
3195 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
3196 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
3197 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
3198
3199 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
3200 (update_window_fringes): Remove unused code.
3201
3202 2004-03-01 Jason Rumney <jasonr@gnu.org>
3203
3204 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
3205
3206 2004-03-01 Juanma Barranquero <lektu@terra.es>
3207
3208 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
3209
3210 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
3211
3212 2004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3213
3214 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
3215 how many colors can be displayed.
3216
3217 2004-03-01 Kenichi Handa <handa@m17n.org>
3218
3219 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
3220 correctly.
3221
3222 2004-02-28 Kim F. Storm <storm@cua.dk>
3223
3224 * dispnew.c (update_window): Update header line also if there are
3225 no other changes in window (move code after set_cursor label).
3226
3227 * lisp.h (mark_window_display_accurate): Remove prototype.
3228
3229 * window.c (window_loop, Fforce_window_update): Force mode line
3230 updates by setting prevent_redisplay_optimizations_p and
3231 update_mode_lines.
3232
3233 2004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3234
3235 * xfns.c (x_window): Fix indentation.
3236
3237 * xterm.c (x_calc_absolute_position): Call x_real_positions
3238 to get WM window sizes and use those to calculate position.
3239 (x_set_offset): Remove code commented out.
3240
3241 2004-02-28 Miles Bader <miles@gnu.org>
3242
3243 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
3244
3245 2004-02-28 Kim F. Storm <storm@cua.dk>
3246
3247 * keyboard.c (kbd_buffer_store_event_hold): New function to store
3248 an event into kbd fifo, but with special handling of quit event;
3249 a quit event is saved for later, and further events are discarded
3250 until the saved quit event has been processed.
3251 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
3252 (gen_help_event): Store help event in kbd fifo.
3253 (NREAD_INPUT_EVENTS): Remove.
3254 (read_avail_input): Adapt to new read_socket_hook interface.
3255 Remove allocation and initialization of local input_event buffer,
3256 as read_socket_hook stores events directly in fifo. Allocate and
3257 initialize local hold_quit event to handle postponed quit event
3258 (and store it if set by kbd_buffer_store_event_hold).
3259
3260 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
3261 (gen_help_event): Fix prototype.
3262
3263 * macterm.c (XTread_socket): Remove bufp_r and
3264 numcharsp args. Add hold_quit arg.
3265 Rework to use just one, local, inev input_event. Store inev
3266 directly in fifo using kbd_buffer_store_event_hold.
3267
3268 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
3269 (read_input_waiting): Adapt to new read_socket_hook interface.
3270 Remove allocation and initialization of local input_event buffer,
3271 as read_socket_hook stores events directly in fifo. Allocate and
3272 initialize local hold_quit event to handle postponed quit event
3273 (and store it if set by kbd_buffer_store_event_hold).
3274
3275 * term.c (read_socket_hook): Fix arg list.
3276
3277 * termhooks.h (read_socket_hook): Fix prototype.
3278
3279 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
3280 numcharsp args. Add hold_quit arg.
3281 Rework to use just one, local, inev input_event. Store inev
3282 directly in fifo using kbd_buffer_store_event_hold.
3283
3284 * w32inevt.h (w32_console_mouse_position): Fix prototype.
3285
3286 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
3287 Add hold_quit arg. Rework to use just one, local, inev
3288 input_event. Store inev directly in fifo using
3289 kbd_buffer_store_event_hold. Update count in one place.
3290 Postpone call to gen_help_event until inev is stored; use new
3291 local do_help for this.
3292 Remove local emacs_event in handing of ButtonPress event; just use
3293 inev instead (so no reason to copy it later).
3294
3295 * xsmfns.c (x_session_check_input): Remove numchars arg.
3296
3297 * xterm.c (x_focus_changed, x_detect_focus_change):
3298 Remove numchars arg. Always store event into bufp arg.
3299 Return nothing. Callers changed accordingly.
3300 (glyph_rect): Simplify.
3301 (STORE_KEYSYM_FOR_DEBUG): New macro.
3302 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
3303 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
3304 (current_hold_quit) [USE_GTK]: Add.
3305 (event_handler_gdk): Adapt to new handle_one_xevent.
3306 (handle_one_xevent): Remove bufp_r and numcharsp args.
3307 Add hold_quit arg. Rework to use just one, local, inev
3308 input_event. Store inev directly in fifo using
3309 kbd_buffer_store_event_hold. Update count in one place.
3310 Postpone call to gen_help_event until inev is stored; use new
3311 local do_help for this.
3312 Simplify handling of keysyms (consolidate common code). Fix bug
3313 where count was updated with nchars instead of nbytes.
3314 Remove local emacs_event in handing of ButtonPress event; just use
3315 inev instead (so no reason to copy it later).
3316 Remove `out' label. Rename label `ret' to `done'; add various
3317 `goto done' to clarify code flow in deeply nested blocks.
3318 (x_dispatch_event): Simplify as handle_one_xevent now calls
3319 kbd_buffer_store_event itself.
3320 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
3321 arg. Call handle_one_xevent with new arglist. Store event from
3322 x_session_check_input in fifo.
3323 [USE_GTK]: Setup current_hold_quit.
3324 Decrement handling_signal before unblocking input.
3325 (x_initialize) [USE_GTK]: Initialize current_count.
3326
3327 * xterm.h (x_session_check_input): Fix prototype.
3328
3329 2004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3330
3331 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
3332
3333 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
3334 macgui.h).
3335
3336 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
3337
3338 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
3339 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
3340 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
3341 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
3342 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
3343 (Bitmap): Remove typedef.
3344 (Pixmap): Change int to GWorldPtr.
3345
3346 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
3347
3348 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
3349 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
3350 New #define to extract 16-bit depth color components from unsigned
3351 long representation.
3352 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
3353 colors used for masks.
3354 (struct mac_display_info): Add color_p. Remove n_cbits.
3355
3356 * macfns.c: Include sys/types.h and sys/stat.h.
3357 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
3358 Include QuickTime/QuickTime.h.
3359 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
3360 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
3361 functions defined in macterm.c.
3362 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
3363 (ZPixmap): New #define for compatibility with xfns.c.
3364 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
3365 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
3366 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
3367 New functions.
3368 (four_corners_best, x_create_x_image_and_pixmap)
3369 (x_destroy_x_image, unwind_create_frame, x_disable_image)
3370 (x_edge_detection, init_color_table, colors_in_color_table)
3371 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
3372 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
3373 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
3374 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
3375 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
3376 long mixup.
3377 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
3378 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
3379 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
3380 (x_set_cursor_type, Fxw_color_values, valid_image_p)
3381 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
3382 (x_alloc_image_color, clear_image_cache, lookup_image)
3383 (x_find_image_file, xbm_read_bitmap_file_data)
3384 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
3385 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
3386 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
3387 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
3388 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
3389 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
3390 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
3391 #if 0.
3392 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
3393 #if 0. Free white_relief.gc and black_relief.gc.
3394 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
3395 New functions (from xfns.c).
3396 (Fx_create_frame): Record unwind_create_frame.
3397 (Fxw_display_color_p): Use dpyinfo->color_p.
3398 (Fx_display_grayscale_p, Fx_display_planes): Don't use
3399 dpyinfo->n_cbits.
3400 (Fx_display_color_cells): Use dpyinfo->n_planes;
3401 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
3402 (Qheuristic, cross_disabled_images, emboss_matrix)
3403 (laplace_matrix): New variables (from xfns.c).
3404 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
3405 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
3406 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
3407 (image_background_transparent): New function (from xfns.c).
3408 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
3409 (image_load_quicktime): Add declaration.
3410 [MAC_OSX] (image_load_quartz2d): Likewise.
3411 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
3412 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
3413 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
3414 (xbm_load_image_from_file, x_laplace_read_row)
3415 (x_laplace_write_row, pbm_read_file): Remove functions.
3416 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
3417 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
3418 (colors_in_color_table): Sync with xfns.c (although not used).
3419 (lookup_rgb_color): Don't lookup color table. Just do gamma
3420 correction.
3421 (COLOR_INTENSITY): New #define (from xfns.c).
3422 (x_disable_image): New function (from xfns.c).
3423 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
3424 (x_build_heuristic_mask): Sync with xfns.c.
3425 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
3426 (HAVE_PBM): Remove #ifdef.
3427 (pbm_load): Sync with xfns.c. Set img->width and img->height
3428 before IMAGE_BACKGROUND.
3429 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
3430 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
3431 Don't enclose with #if HAVE_PNG.
3432 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
3433 symbol _CGImageCreateWithPNGDataProvider is defined.
3434 Otherwise use image_load_quicktime.
3435 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
3436 [HAVE_PNG] (png_load): Sync with xfns.c.
3437 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
3438 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
3439 HAVE_JPEG.
3440 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
3441 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
3442 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
3443 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
3444 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
3445 (tiff_image_p, tiff_load): Don't enclose declarations with #if
3446 HAVE_TIFF.
3447 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
3448 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
3449 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
3450 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
3451 New functions (from xfns.c).
3452 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
3453 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
3454 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
3455 Don't enclose with #if HAVE_GIF.
3456 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
3457 animated gif. Otherwise use image_load_quicktime.
3458 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
3459 gif_DrawText to avoid conflict with QuickdrawText.h.
3460 [HAVE_GIF] (gif_load): Sync with xfns.c.
3461 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
3462 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
3463 Ghostscript is not supported yet).
3464 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
3465 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
3466 cross_disabled_images (from xfns.c). Remove #if 0 for supported
3467 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
3468 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
3469 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
3470 HAVE_PNG. Call EnterMovies to support animated gifs.
3471 Call init_image_func_pointer to bind a symbol
3472 _CGImageCreateWithPNGDataProvider if it is defined.
3473
3474 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
3475 (x_draw_bar_cursor): Sync declaration with xterm.c.
3476 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
3477 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
3478 graphics).
3479 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
3480 (mac_draw_line_to_pixmap, XCreatePixmap)
3481 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
3482 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
3483 New functions.
3484 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
3485 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
3486 Cast bits to char *.
3487 (reflect_byte): New function (from w32fns.c).
3488 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
3489 due to byte alignment.
3490 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
3491 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
3492 (XSetForeground): Remove static (now used in macfns.c).
3493 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
3494 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
3495 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
3496 (x_draw_glyph_string_box, x_draw_image_foreground)
3497 (x_draw_image_foreground_1, x_draw_image_glyph_string)
3498 (x_draw_stretch_glyph_string, x_draw_glyph_string)
3499 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
3500 Sync with xterm.c.
3501 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
3502 than the xterm.c version when a strictly horizontal or vertical
3503 line is drawn.
3504 (XTset_terminal_window): Add static.
3505 (x_make_frame_visible): Add UNBLOCK_INPUT.
3506 (x_free_frame_resources): New funcion (from xterm.c).
3507 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
3508 occurs in tool bar area.
3509 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
3510 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
3511 Initialize image cache.
3512 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
3513 Enclose unused functions with #if 0.
3514 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
3515 (decode_mac_font_name): New function to apply code conversions
3516 from a mac font name to an XLFD font name according to its script code.
3517 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
3518 font name to a mac font name according to REGISTRY and ENCODING fields.
3519 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
3520 whose name starts with `.'.
3521 (init_font_name_table): Use decode_mac_font_name. Add both
3522 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
3523 of a font is smJapanese.
3524 (mac_do_list_fonts): New function to list fonts that match a given
3525 pattern.
3526 (x_list_fonts, XLoadQueryFont): Use it.
3527 (XLoadQueryFont): Set rbearing field for each variable width
3528 character to avoid needless redraw.
3529 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
3530
3531 2004-02-26 Kim F. Storm <storm@cua.dk>
3532
3533 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
3534 as read_socket_hook handler on X aborts if buffer is too small
3535 and W32 handler doesn't always check buffer limit.
3536
3537 * xdisp.c (handle_single_display_prop): Handle left-fringe and
3538 right-fringe similar to a display margin image. Specifically,
3539 the characters having the fringe prop are no longer shown, and
3540 we use IT_IMAGE/next_element_from_image with image_id = -1 to
3541 do this. Set fringe bitmap face_id in it->face_id.
3542 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
3543 still realize it->face (i.e. the fringe bitmap face).
3544
3545 2004-02-25 Miles Bader <miles@gnu.org>
3546
3547 * xdisp.c (check_it): Check string/string_pos consistency.
3548 (init_iterator): Initialize string-related fields properly.
3549
3550 2004-02-11 Miles Bader <miles@gnu.org>
3551
3552 * xdisp.c (produce_image_glyph): Force negative descents to zero.
3553
3554 2004-02-10 Miles Bader <miles@gnu.org>
3555
3556 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
3557 BLOCK_INPUT can be nested, so it doesn't make much sense.
3558
3559 2004-02-24 Michael Mauger <mmaug@yahoo.com>
3560
3561 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
3562 (xbm_read_bitmap_data): Use unsigned char for image data.
3563
3564 2004-02-23 Luc Teirlinck <teirllm@auburn.edu>
3565
3566 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
3567
3568 2004-02-22 Jason Rumney <jasonr@gnu.org>
3569
3570 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
3571 correctly over other bitmaps.
3572
3573 2004-02-21 Eli Zaretskii <eliz@gnu.org>
3574
3575 * emacs.c (USAGE1): Split into two halves.
3576 (USAGE2): Second half of the old USAGE1.
3577 (USAGE3): Rename from USAGE2.
3578 (USAGE4): Rename from USAGE3.
3579
3580 2004-02-21 Juri Linkov <juri@jurta.org>
3581
3582 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
3583 Fix --multibyte. Move --help, --version to USAGE2. Add alias
3584 --file. Fix -f, -l. Sort options. Untabify.
3585 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
3586
3587 2004-02-19 Luc Teirlinck <teirllm@auburn.edu>
3588
3589 * category.c (Fdefine_category, Fcategory_docstring)
3590 (Fget_unused_category, Fset_category_table)
3591 (Fcategory_set_mnemonics): Doc fixes.
3592
3593 2004-02-20 Kim F. Storm <storm@cua.dk>
3594
3595 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
3596 The following changes are relative to the 2004-01-21 revision.
3597 (NREAD_INPUT_EVENTS): Define as max number of input events to read
3598 in one call to read_socket_hook. Value is 8.
3599 (read_avail_input): Separate and rework handling of read_socket_hook
3600 and non-read_socket_hook cases. Use smaller input_event buffer
3601 in read_socket_hook case, and repeat if full buffer is read.
3602 Use new local variable 'discard' to skip input after C-g.
3603 In non-read_socket_hook case, just use a single input_event, and
3604 call kbd_buffer_store_event on the fly for each character.
3605
3606 2004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
3607
3608 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
3609 Remove unused `gu' alternative.
3610
3611 2004-02-19 Andreas Schwab <schwab@suse.de>
3612
3613 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
3614 warning.
3615
3616 2004-02-18 Kim F. Storm <storm@cua.dk>
3617
3618 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
3619 Fix last change.
3620
3621 2004-02-17 Kim F. Storm <storm@cua.dk>
3622
3623 * xdisp.c (fast_find_position): Fix return value of new version;
3624 it was inverted compared to the 21.1 version.
3625 (get_window_cursor_type): Don't look at glyph if NULL.
3626 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
3627
3628 * keyboard.c: Rework previous change; it didn't consider that the
3629 buf array was allocated on the stack.
3630 (prev_read): Remove variable.
3631 (read_avail_input_buf): New static event buffer array.
3632 (in_read_avail_input): New static variable to handle re-entrancy.
3633 (read_avail_input): Change buf to pinter to read_avail_input_buf.
3634 Use in_read_avail_input to handle re-entrance; when re-entered,
3635 fully initialize and use tmp_buf array instead of read_avail_input_buf.
3636 Do not initialize read_avail_input_buf in full here; instead assume it
3637 is always cleared on entry. To ensure that, we clear (just) the
3638 entries that were used before we return.
3639 (init_keyboard): Initialize read_avail_input_buf here.
3640
3641 2004-02-16 Jesper Harder <harder@ifa.au.dk>
3642
3643 * cmds.c (Fend_of_line): Doc fix.
3644
3645 2004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
3646
3647 * keyboard.c (prev_read): New static variable.
3648 (read_avail_input): Use it to zero out only those slots in buf[]
3649 that were used last time we were called.
3650
3651 2004-02-16 Eli Zaretskii <eliz@gnu.org>
3652
3653 * Makefile.in (obj): Move fringe.o from here...
3654 (XOBJ, MAC_OBJ): ...to here.
3655
3656 2004-02-16 Stephen Eglen <stephen@gnu.org>
3657
3658 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
3659
3660 2004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
3661
3662 * data.c (Fbyteorder):
3663 * fringe.c (Fdefine_fringe_bitmap):
3664 * xdisp.c (handle_single_display_prop):
3665 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
3666
3667 2004-02-16 Jason Rumney <jasonr@gnu.org>
3668
3669 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
3670
3671 2004-02-15 Steven Tamm <steventamm@mac.com>
3672
3673 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
3674 controlling emulation of a three button mouse with option and
3675 command keys.
3676 (Qreverse, mac_get_enumlated_btn): Handle the emulation
3677 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
3678
3679 2004-02-15 Kim F. Storm <storm@cua.dk>
3680
3681 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
3682
3683 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
3684 Perform byte-swapping.
3685
3686 2004-02-14 Kim F. Storm <storm@cua.dk>
3687
3688 * dispextern.h (struct draw_fringe_bitmap_params): Change member
3689 bits from char to short to facilitate wider bitmaps.
3690 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
3691 member.
3692
3693 * fringe.c (struct fringe_bitmap): Change member bits from char to
3694 short to facilitate 16 bits wide bitmaps. Modify all standard
3695 bitmaps accordingly.
3696 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
3697 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
3698 (draw_fringe_bitmap): Ditto.
3699 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
3700 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
3701 handle up to 16 bits wide bitmaps.
3702 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
3703 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
3704
3705 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
3706 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
3707 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
3708
3709 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
3710 so it is no longer necessary to expand them here.
3711
3712 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
3713
3714 2004-02-12 Kim F. Storm <storm@cua.dk>
3715
3716 * window.c (Fwindow_fringes): Doc fix.
3717
3718 2004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3719
3720 * xselect.c (x_get_foreign_selection): Add new optional parameter
3721 time_stamp.
3722 (Fx_get_selection_internal): Ditto, pass time_stamp to
3723 x_get_foreign_selection.
3724
3725 * data.c (Fbyteorder): New function.
3726
3727 2004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3728
3729 * atimer.c: Move include stdio.h to same place as in other files.
3730
3731 * region-cache.c: Ditto.
3732
3733 * sysdep.c: Ditto.
3734
3735 * xfaces.c: Ditto.
3736
3737 2004-02-09 Sam Steingold <sds@gnu.org>
3738
3739 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
3740
3741 2004-02-09 Kim F. Storm <storm@cua.dk>
3742
3743 * fringe.c: New file. Move original fringe related declarations
3744 and code from dispextern.h and xdisp.c here.
3745 Rework code to support user defined fringe bitmaps, redefining
3746 standard bitmaps, ability to overlay user defined bitmap with
3747 overlay arrow bitmap, and add faces to bitmaps.
3748 (Voverflow_newline_into_fringe): Declare here.
3749 (enum fringe_bitmap_align): New enum.
3750 (..._bits): All bitmaps are now defined without bitswapping; that
3751 is now done in init_fringe_once (if necessary).
3752 (standard_bitmaps): New array with specifications for the
3753 standard fringe bitmaps.
3754 (fringe_faces): New array.
3755 (valid_fringe_bitmap_id_p): New function.
3756 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
3757 (draw_fringe_bitmap): New function which draws fringe bitmap,
3758 possibly overlaying bitmap with cursor in right fringe or the
3759 overlay arrow in the left fringe.
3760 (update_window_fringes): Do not handle overlay arrow here.
3761 Compare and copy fringe bitmap faces.
3762 (init_fringe_bitmap): New function.
3763 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
3764 define and destroy user defined fringe bitmaps.
3765 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
3766 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
3767 (syms_of_fringe): New function. Defsubr new DEFUNs.
3768 DEFVAR_LISP Voverflow_newline_into_fringe.
3769 (init_fringe_once, init_fringe): New functions.
3770 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
3771
3772 * Makefile.in (obj): Add fringe.o.
3773 (fringe.o): New dependencies.
3774
3775 * dispextern.h (FRINGE_ID_BITS): New definition for number of
3776 bits allocated to hold a fringe number. Increase number of bits
3777 from 4 to 8 to allow user defined fringe bitmaps.
3778 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
3779 left_user_fringe_face_id, right_user_fringe_bitmap,
3780 right_user_fringe_face_id.
3781 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
3782 Move to new file fringe.c.
3783 (MAX_FRINGE_BITMAPS): Define here.
3784 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
3785 and overlay_p. Change member which to int.
3786 (struct redisplay_interface): New members define_fringe_bitmap
3787 and destroy_fringe_bitmap.
3788 (valid_fringe_bitmap_id_p): Add prototype.
3789 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
3790
3791 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
3792 arrows.
3793 (update_frame): Do flush_display if force_flush_display_p to
3794 ensure display (specifically fringes) are updated in a timely
3795 manner when resizing the frame by dragging the mouse.
3796 (update_window_line): Update row if overlay arrow changed.
3797 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
3798 or overlay arrow changed.
3799
3800 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
3801 syms_of_fringe, and init_fringe.
3802
3803 * frame.h (struct frame): New member force_flush_display_p.
3804
3805 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
3806 Add prototypes.
3807
3808 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
3809 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
3810 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
3811 Use cursor color for displaying cursor in fringe.
3812 (x_redisplay_interface): Add null handlers for
3813 define_fringe_bitmap and destroy_fringe_bitmap functions.
3814
3815 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
3816 xterm.c to handle overlayed fringe bitmaps and to use cursor color
3817 for displaying cursor in fringe.
3818 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
3819 specific functions to define and destroy fringe bitmaps in fringe_bmp.
3820 (w32_redisplay_interface): Add them to redisplay_interface.
3821 (w32_term_init): Call w32_init_fringe instead of explicitly
3822 defining fringe bitmaps in fringe_bmp array.
3823 (x_delete_display): Call w32_reset_fringes instead of explicitly
3824 destroying fringe bitmaps in fringe_bmp array.
3825
3826 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
3827 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
3828 (continued_bits, continuation_bits, ov_bits, first_line_bits)
3829 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
3830 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
3831 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
3832 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
3833 Move fringe handling vars and code to new file fringe.c.
3834 (handle_display_prop): Handle left-fringe and right-fringe
3835 display properties; store user fringe bitmaps in iterator.
3836 (move_it_in_display_line_to): Handle cursor in fringe at eob.
3837 (clear_garbaged_frames): Set force_flush_display_p if resized.
3838 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
3839 (display_line): Handle cursor in fringe at eob.
3840 (display_line): Set row user fringe bitmaps from iterator.
3841
3842 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
3843 Use cursor color for displaying cursor in fringe.
3844 (x_redisplay_interface): Add null handlers for
3845 define_fringe_bitmap and destroy_fringe_bitmap functions.
3846
3847 2004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3848
3849 * macfns.c (Fx_change_window_property): Make doc string and
3850 parameters same as for X version.
3851
3852 * w32fns.c (Fx_change_window_property): Ditto.
3853
3854 2004-02-07 Kim F. Storm <storm@cua.dk>
3855
3856 * xdisp.c (hscroll_window_tree): Position cursor near to right
3857 margin in hscrolled window when jumping to end of line (rather
3858 than centering cursor).
3859
3860 * process.c (wait_reading_process_input): Don't do adaptive read
3861 buffering if waiting for a specific process.
3862
3863 2004-02-05 Luc Teirlinck <teirllm@auburn.edu>
3864
3865 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
3866 (Fread_minibuffer, Feval_minibuffer)
3867 (Fread_string, Fread_no_blanks_input)
3868 (Fcompleting_read): Doc fixes.
3869 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
3870 completion-regexp-list. Define Qcase_fold_search and staticpro it.
3871 (read_minibuf): Fix initial comment.
3872 (Ftry_completion, Fall_completions, Ftest_completion): Bind
3873 case-fold-search to the value of completion-ignore-case when
3874 checking completion-regexp-list.
3875 (Fdisplay_completion_list): Make it handle arguments that are
3876 symbols. Doc fix.
3877
3878 2004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3879
3880 * xterm.h: Add declaration of free_frame_menubar.
3881
3882 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
3883 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
3884 (Fx_change_window_property): Add declaration of parameters type and
3885 format. Remove unused variable cons.
3886
3887 * xselect.c: Include stdio,h.
3888
3889 2004-02-05 Kenichi Handa <handa@m17n.org>
3890
3891 * fns.c (Fset_char_table_range): Fix previous change.
3892
3893 * buffer.c (Fset_buffer_multibyte): Fix docstring.
3894
3895 2004-02-04 Luc Teirlinck <teirllm@auburn.edu>
3896
3897 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
3898
3899 2004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
3900
3901 * keymap.c (Vmouse_events): Rename from Vmenu_events.
3902 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
3903
3904 2004-02-04 Kenichi Handa <handa@m17n.org>
3905
3906 * fns.c (Fset_char_table_range): Handle charsets ascii,
3907 eight-bit-control, and eight-bit-graphic correctly.
3908
3909 2004-02-03 Jason Rumney <jasonr@gnu.org>
3910
3911 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
3912
3913 * w32fns.c (x_to_w32_font): Likewise.
3914
3915 2004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3916
3917 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
3918 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
3919
3920 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
3921 ClientMessages.
3922
3923 * xselect.c: Include termhooks.h and X11/Xproto.h
3924 (x_check_property_data, x_fill_property_data)
3925 (x_property_data_to_lisp, mouse_position_for_drop)
3926 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
3927 (Fx_send_client_event): Move here from xfns.c.
3928 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
3929
3930 * xfns.c (x-send-client-message): Move to xselect.c
3931 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
3932 OUTER_P.
3933 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
3934 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
3935 if vector_ret_p is true.
3936 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
3937
3938 2004-02-02 Eli Zaretskii <eliz@gnu.org>
3939
3940 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
3941 basename of FILE relative to it, not FILE itself.
3942
3943 2004-02-02 Kenichi Handa <handa@m17n.org>
3944
3945 * coding.c (coding_restore_composition): Check invalid
3946 composition data more rigidly.
3947
3948 2004-01-30 Luc Teirlinck <teirllm@auburn.edu>
3949
3950 * fileio.c (Fread_file_name_internal): Correctly handle the case
3951 where insert-default-directory is nil.
3952 (Fread_file_name): Always return an empty string if the user exits
3953 with an empty minibuffer. Adapt the docstring accordingly.
3954 (syms_of_fileio): Adapt the docstring of insert-default-directory
3955 to the change in Fread_file_name.
3956
3957 2004-01-29 Eli Zaretskii <eliz@gnu.org>
3958
3959 * alloca.c [!alloca]: Fix the prototype for xfree.
3960
3961 2004-01-29 Kenichi Handa <handa@m17n.org>
3962
3963 * fns.c (string_char_to_byte): Optimize for ASCII only string.
3964 (string_byte_to_char): Likewise.
3965
3966 2004-01-28 Peter Runestig <peter@runestig.com>
3967
3968 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
3969
3970 2004-01-27 Steven Tamm <steventamm@mac.com>
3971
3972 * unexmacosx.c (unexec_copy): Do not copy more than was
3973 requested to prevent overwriting during unexec.
3974
3975 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3976
3977 * process.c (sigchld_handler): Add comment about not calling malloc.
3978
3979 * process.h: Add extern to synch_process_termsig.
3980
3981 2004-01-27 Steven Tamm <steventamm@mac.com>
3982
3983 * macterm.c (make_mac_frame, make_mac_terminal_frame):
3984 Move setting of scroll bars from make_mac_frame to
3985 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
3986
3987 2004-01-26 Richard M. Stallman <rms@gnu.org>
3988
3989 * search.c (Freplace_match): Handle nonexistent
3990 back-references properly.
3991
3992 2004-01-03 Richard M. Stallman <rms@gnu.org>
3993
3994 * window.c (decode_any_window): New function.
3995 (Fwindow_height, Fwindow_width, Fwindow_edges)
3996 (Fwindow_pixel_edges, Fwindow_inside_edges)
3997 (Fwindow_inside_pixel_edges): Use decode_any_window.
3998
3999 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4000
4001 * process.h: synch_process_termsig new variable.
4002
4003 * callproc.c: Define synch_process_termsig.
4004 (Fcall_process): Initiate synch_process_termsig to zero and
4005 check if non-zero and get signal name after subprocess has ended.
4006
4007 * process.c (sigchld_handler): Set synch_process_termsig
4008 if terminated by a signal. synch_process_death setting removed.
4009
4010 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
4011
4012 2004-01-26 Andreas Schwab <schwab@suse.de>
4013
4014 * print.c (print_preprocess): Declare size as EMACS_INT to not
4015 lose bits.
4016 (print_object): Likewise.
4017 * alloc.c (Fpurecopy): Likewise.
4018
4019 2004-01-25 Luc Teirlinck <teirllm@auburn.edu>
4020
4021 * window.c (Fwindow_minibuffer_p): Doc fix.
4022
4023 2004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
4024
4025 * editfns.c (Fformat): Make both passes accept the same set of flags.
4026
4027 2004-01-23 Kenichi Handa <handa@m17n.org>
4028
4029 * fns.c (Fmd5): If OBJECT is a buffer different from the current
4030 one, set buffer to OBJECT temporarily.
4031
4032 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
4033
4034 * keyboard.c (kbd_buffer_gcpro): Remove.
4035 (kbd_buffer_store_event, clear_event, Fdiscard_input)
4036 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
4037 Don't initialize and/or maintain the variable any more. It was made
4038 redundant by my commit of 2003-06-15.
4039
4040 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
4041
4042 2004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4043
4044 * lisp.h: Add undef DECL_ALIGN.
4045
4046 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
4047
4048 * process.c (wait_reading_process_input) [SYNC_INPUT]:
4049 Check interrupt_input_pending explicitly.
4050
4051 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
4052
4053 * keyboard.c (handle_async_input): New fun,
4054 extracted from input_available_signal.
4055 (input_available_signal, reinvoke_input_signal): Use it.
4056
4057 2004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
4058
4059 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
4060
4061 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
4062 manipulation macros for when tags are in the lower bits.
4063 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
4064 (DECL_ALIGN): New macro.
4065 (DEFUN): Use it.
4066
4067 * lisp.h [ENABLE_CHECKING]: Don't force union type.
4068
4069 * s/darwin.h (__attribute__): Remove outdated workaround.
4070
4071 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
4072
4073 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
4074 Don't check range of malloc address.
4075 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
4076
4077 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
4078
4079 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
4080
4081 2004-01-19 Kenichi Handa <handa@m17n.org>
4082
4083 * fontset.c (fontset_font_pattern): Fix previous change.
4084
4085 2004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
4086
4087 * xdisp.c (Voverflow_newline_into_fringe)
4088 (move_it_in_display_line_to, redisplay_internal)
4089 (update_window_fringes, redisplay_window, display_line, window):
4090 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
4091 that it compiles without a window-system.
4092 * dispnew.c (direct_output_for_insert, update_window): Likewise.
4093
4094 2004-01-16 Kim F. Storm <storm@cua.dk>
4095
4096 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
4097
4098 * buffer.c (init_buffer_once): Set buffer_defaults and
4099 buffer_local_flags for indicate_buffer_boundaries.
4100 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
4101 default- variable for it.
4102
4103 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
4104 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
4105 New members exact_window_width_line_p and cursor_in_fringe_p for
4106 overflowing newlines into right fringe.
4107 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
4108 and indicate_bottom_line_p for buffer boundaries and scrolling.
4109 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
4110 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
4111 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
4112 and HOLLOW_SQUARE_BITMAP.
4113 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
4114 Add prototypes.
4115
4116 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
4117 instead of related indicator fields.
4118 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
4119 (direct_output_for_insert): Handle exact width lines like
4120 contined lines. Call update_window_fringes.
4121 (update_window): Call update_window_fringes.
4122 (scrolling_window): Don't skip desired rows with changed bitmaps.
4123 Check if fringe bitmaps changes when assigning scrolled rows.
4124
4125 * xdisp.c (Voverflow_newline_into_fringe): New variable.
4126 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
4127 (move_it_in_display_line_to): Overflow newline into fringe for
4128 rows that are exactly as wide as the window.
4129 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
4130 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
4131 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
4132 (fringe_bitmaps): Add new bitmaps.
4133 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
4134 Select proper bitmap for cursor in fringe when appropriate.
4135 Handle alignment of bitmap to top or bottom of row.
4136 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
4137 done by update_window_fringes.
4138 (update_window_fringes, draw_window_fringes): New functions.
4139 (redisplay_internal): Call update_window_fringes in case only
4140 cursor row is updated.
4141 (redisplay_window): Call update_window_fringes.
4142 Explicitly call draw_window_fringes if redisplay was done using
4143 the current matrix or the overlay arrow is in the window.
4144 (try_window_reusing_current_matrix): Mark scrolled rows for
4145 fringe update (to update buffer-boundaries / scrolling icons).
4146 (find_last_unchanged_at_beg_row): Handle exact width lines line
4147 continued lines.
4148 (display_line): Overflow newline into fringe for rows that are
4149 exactly as wide as the window. Don't append space for newline
4150 in this case.
4151 (notice_overwritten_cursor): Explicitly clear cursor bitmap
4152 in fringe as if it had been overwritten.
4153 (erase_phys_cursor): Erase cursor bitmap in fringe.
4154 (syms_of_xdisp): Mark show-trailing-whitespace and
4155 void-text-area-pointer as user options.
4156 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
4157
4158 * xterm.c (x_update_window_end): Call draw_window_fringes.
4159 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
4160 in row instead of actually drawing fringe bitmaps.
4161 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
4162 (x_draw_window_cursor): Draw cursor in fringe.
4163
4164 * w32term.c (x_update_window_end): Call draw_window_fringes.
4165 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
4166 in row instead of actually drawing fringe bitmaps.
4167 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
4168 (w32_draw_window_cursor): Draw cursor in fringe.
4169
4170 * macterm.c (x_update_window_end): Call draw_window_fringes.
4171 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
4172 in row instead of actually drawing fringe bitmaps.
4173 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
4174 (mac_draw_window_cursor): Draw cursor in fringe.
4175
4176 2004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4177
4178 * xterm.c (handle_one_xevent): Don't handle characters that are part
4179 of an old style (XLookupString) compose sequence.
4180
4181 2004-01-15 Kenichi Handa <handa@m17n.org>
4182
4183 * search.c (Freplace_match): Use make_multibyte_string or
4184 make_unibyte_string according to the buffer multibyteness.
4185
4186 2004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
4187
4188 * alloc.c (struct interval_block, struct string_block)
4189 (struct symbol_block, struct marker_block, live_string_p)
4190 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
4191 Better preserve alignment for objects in blocks.
4192 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
4193
4194 * lread.c (defvar_per_buffer): Remove dead declaration.
4195
4196 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
4197 space size.
4198
4199 2004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4200
4201 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
4202 if a key press should pop down. Only pop down if a key is pressed
4203 outside the menu/dialog.
4204 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
4205 popup_get_selection.
4206 (create_and_show_dialog): Pass 1 for down_on_keypress to
4207 popup_get_selection.
4208
4209 2004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4210
4211 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
4212 BLOCK/UNBLOCK_INPUT.
4213
4214 2004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4215
4216 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
4217 specified.
4218
4219 2004-01-08 Kenichi Handa <handa@m17n.org>
4220
4221 * editfns.c (Fformat): Fix '&' to '&&'.
4222
4223 2004-01-08 Andreas Schwab <schwab@suse.de>
4224
4225 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
4226 size if PSEUDOVECTOR_FLAG is set.
4227
4228 2004-01-07 Kenichi Handa <handa@m17n.org>
4229
4230 * charset.c (Fdeclare_equiv_charset): Fix docstring.
4231
4232 * fontset.c (fontset_ref_via_base): Fix previous change.
4233
4234 2004-01-07 Kim F. Storm <storm@cua.dk>
4235
4236 * process.c (read_process_output): Only activate adaptive
4237 buffering if we read less than 256 bytes at a time.
4238
4239 2004-01-06 Kim F. Storm <storm@cua.dk>
4240
4241 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
4242 object and image object. Return glyph width and height.
4243 (mode_line_string, marginal_area_string): Ditto.
4244
4245 * dispextern.h (buffer_posn_from_coords, mode_line_string)
4246 (marginal_area_string): Fix prototypes.
4247
4248 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
4249 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
4250 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
4251
4252 * keyboard.c (make_lispy_position): Use modified mode_line_string,
4253 buffer_posn_from_coords, and marginal_area_string functions to
4254 include both string object and image object in the lispy position.
4255 Also add actual glyph width and height to position.
4256 (read_key_sequence): Use real buffer position from mouse
4257 event to find keymap property even when click is in marginal area.
4258
4259 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
4260 mode_line_string and marginal_area_string functions to handle
4261 both string object and image object properties.
4262
4263 2004-01-06 Andreas Schwab <schwab@suse.de>
4264
4265 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
4266 character.
4267
4268 2004-01-02 Andreas Schwab <schwab@suse.de>
4269
4270 * macterm.c (emacs_options, x_initialized, same_x_server):
4271 Remove unused (and duplicated) definitions.
4272
4273 2004-01-02 Kim F. Storm <storm@cua.dk>
4274
4275 * process.h (struct Lisp_Process): New members for adaptive read
4276 buffering: adaptive_read_buffering, read_output_delay, and
4277 read_output_skip.
4278
4279 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
4280 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
4281 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
4282 (process_output_delay_count, process_output_skip): New vars.
4283 (Vprocess_adaptive_read_buffering): New variable.
4284 (make_process): Initialize adaptive read buffering members.
4285 (Fstart_process): Set adaptive_read_buffering member.
4286 (deactivate_process): Cleanup adaptive read buffering.
4287 (wait_reading_process_input): Temporarily omit delayed
4288 subprocesses from the set of file descriptors to read from;
4289 adjust the select timeout if we skipped any subprocesses.
4290 (read_process_output): Increase adaptive read buffering delay if
4291 we read less than a full buffer; reduce delay when we read a
4292 full buffer.
4293 (send_process): Simplify using local Lisp_Process var.
4294 Reset adaptive read buffering delay after write.
4295 (init_process): Initialize process_output_delay_count and
4296 process_output_skip.
4297 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
4298
4299 2004-01-01 Jason Rumney <jasonr@gnu.org>
4300
4301 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
4302
4303 2003-12-30 Luc Teirlinck <teirllm@auburn.edu>
4304
4305 * print.c (Ferror_message_string): Add hyperlink in the docstring
4306 to the definition of `signal' in the Elisp manual.
4307 * eval.c (Fsignal): Ditto.
4308
4309 2003-12-29 James Clark <jjc@jclark.com>
4310
4311 * fns.c (internal_equal): Return t for two NaN arguments.
4312
4313 2003-12-29 Richard M. Stallman <rms@gnu.org>
4314
4315 * data.c (store_symval_forwarding): Handle setting
4316 default-fill-column, etc., by changing the value in
4317 buffers that use the default.
4318
4319 * minibuf.c (Fset_minibuffer_window): Doc fix.
4320
4321 * fileio.c (choose_write_coding_system): Ignore auto_saving
4322 if using the visited file for auto saves.
4323 (Fwrite_region): Don't update SAVE_MODIFF
4324 if auto-saving in visited file.
4325
4326 2003-12-29 Kenichi Handa <handa@m17n.org>
4327
4328 * dispextern.h (face_font_available_p): Extern it.
4329
4330 * fontset.c (Voverriding_fontspec_alist): New variable.
4331 (lookup_overriding_fontspec): New function.
4332 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
4333 (fontset_font_pattern): Likewise.
4334 (regulalize_fontname): New function.
4335 (Fset_fontset_font): Call regulalize_fontname.
4336 (Fset_overriding_fontspec_internal): New function.
4337 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
4338 Defsubr Sset_overriding_fontspec_internal.
4339
4340 * xfaces.c (face_font_available_p): New function.
4341
4342 2003-12-28 Richard M. Stallman <rms@gnu.org>
4343
4344 * buffer.c (Fother_buffer): Don't crash if BUF is nil
4345 or if its name is nil.
4346
4347 * buffer.c (Fkill_buffer): Don't delete auto-save file
4348 if it's the same as the visited file.
4349
4350 2003-12-28 Luc Teirlinck <teirllm@auburn.edu>
4351
4352 * coding.c (Fcheck_coding_system): Doc fix.
4353
4354 2003-12-28 Kim F. Storm <storm@cua.dk>
4355
4356 * Makefile.in (eval.o): Depend on dispextern.h.
4357
4358 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
4359 image glyph using image's ascent.
4360 (mode_line_string): Return image glyph as object clicked on.
4361 Adjust y0 for image glyph using image's ascent.
4362
4363 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
4364 (struct glyph): New members, ascent and descent. Used to save
4365 this glyph's ascent and descent, instead of having.
4366 (struct glyph): Declare member face_id using FACE_ID_BITS.
4367 (find_hot_spot): Add prototype.
4368
4369 * keyboard.c (Qimage): Remove extern (now in lisp.h).
4370 (QCmap): Declare extern.
4371 (make_lispy_position): When position is inside image hot-spot,
4372 use hot-spot element's id as posn element.
4373
4374 * lisp.h (IMAGEP): New macro to test for image object type.
4375 (Qimage): Declare extern.
4376
4377 * macfns.c (Qimage): Remove extern (now in lisp.h).
4378 (valid_image_p, parse_image_spec): Use IMAGEP macro.
4379
4380 * macterm.c (Qface, Qmouse_face): Remove unused externs.
4381
4382 * w32fns.c (Qimage): Remove extern (now in lisp.h).
4383 (valid_image_p, parse_image_spec): Use IMAGEP macro.
4384
4385 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
4386
4387 * w32term.c (Qface, Qmouse_face): Remove unused externs.
4388
4389 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
4390 pointer types.
4391 (Qrelative_width, Qalign_to): Remove unused variables.
4392 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
4393 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
4394 image maps.
4395 (x_y_to_hpos_vpos): Return glyph relative coordinates through
4396 new dx and dy args.
4397 Remove buffer_only_p arg (always 0). Simplify code accordingly.
4398 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
4399 than row's ascent and height, to get sensible height on tall rows.
4400 (build_desired_tool_bar_string): Remove Qimage extern.
4401 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
4402 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
4403 image glyph is alone on the last line.
4404 (append_glyph, append_composite_glyph, produce_image_glyph)
4405 (append_stretch_glyph): Set glyph's ascent and descent.
4406 (on_hot_spot_p): New function to check if position is inside an
4407 rectangular, circular, or polygon-shaped image hot-spot,
4408 (find_hot_spot): New function to search for image hot-spot.
4409 (Flookup_image_map): New defun to search for image hot-spot.
4410 (define_frame_cursor1): New aux function to determine frame pointer.
4411 (note_mode_line_or_margin_highlight, note_mouse_highlight):
4412 Handle `pointer' text property and :pointer image property to
4413 control frame pointer shape. Detect image hot-spots for pointer
4414 and help_echo properties. Use define_frame_cursor1.
4415 (note_mouse_highlight): Use Vvoid_text_area_pointer.
4416 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
4417 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
4418
4419 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
4420
4421 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
4422 (Qimage): Remove extern (now in lisp.h).
4423 (valid_image_p, parse_image_spec): Use IMAGEP macro.
4424
4425 * xmenu.c (show_help_event): Remove unused code.
4426
4427 * xterm.c (Qface, Qmouse_face): Remove unused externs.
4428 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
4429 row's ascent and descent, to get a sensible height on tall rows.
4430
4431 2003-12-25 Luc Teirlinck <teirllm@auburn.edu>
4432
4433 * minibuf.c (Fcompleting_read): Undo previous change.
4434
4435 2003-12-25 Lars Hansen <larsh@math.ku.dk>
4436
4437 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
4438 Arguments GCPRO'ed in call to file name handler.
4439
4440 2003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
4441
4442 * termcap.c (tgetst1): Scan for "%pN"; if all
4443 N are continuous in [1,9], remove all "%pN".
4444
4445 2003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4446
4447 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
4448
4449 * xfaces.c (lface_fully_specified_p): Take into account that
4450 MAC OS always have unspecified stipple.
4451
4452 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
4453
4454 * tparam.c (tparam1): Add handling for `%pN', which
4455 means use param N for the next substitution.
4456
4457 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
4458
4459 * xfaces.c (Fcolor_gray_p): Fix omission bug:
4460 In case `frame' is nil, consult the selected frame.
4461 (Fcolor_supported_p): Likewise.
4462
4463 2003-12-23 Luc Teirlinck <teirllm@auburn.edu>
4464
4465 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
4466 Doc fixes.
4467
4468 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
4469 and an integer. Adapt the introductory comment accordingly.
4470 (Fread_from_minibuffer): Delete code moved into read_minibuf.
4471 Doc fix.
4472 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
4473 read_minibuf.
4474 (Fcompleting_read): Delete code moved into read_minibuf.
4475 (Ftest_completion): Make it handle obarrays and hash tables correctly.
4476
4477 2003-12-03 Kenichi Handa <handa@m17n.org>
4478
4479 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
4480 encoding sequence.
4481
4482 2003-12-01 Kenichi Handa <handa@m17n.org>
4483
4484 * composite.c (syms_of_composite): Don't make the compostion hash
4485 table week.
4486
4487 2003-11-30 Luc Teirlinck <teirllm@auburn.edu>
4488
4489 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
4490 * textprop.c (Fget_char_property_and_overlay): New function.
4491 (syms_of_textprop): Defsubr it.
4492
4493 2003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4494
4495 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
4496 to compile on terminal configuration.
4497
4498 * fileio.c (Fread_file_name): Check use_file_dialog also before
4499 calling Fx_file_dialog.
4500
4501 * fns.c: use_file_dialog: New variable.
4502 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
4503
4504 2003-11-29 Kim F. Storm <storm@cua.dk>
4505
4506 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
4507 (syms_of_msdos): Don't intern and staticpro them.
4508
4509 2003-11-27 Kim F. Storm <storm@cua.dk>
4510
4511 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
4512 coordinates relative to glyph at posn. If glyph is an image,
4513 return that as object at posn. Callers changed.
4514 (mode_line_string, marginal_area_string): Calculate and return
4515 pixel coordinates relative to glyph. Callers changed.
4516
4517 * dispextern.h (buffer_posn_from_coords, mode_line_string)
4518 (marginal_area_string): Fix prototypes.
4519 (window_box_left_offset, window_box_right_offset): Add prototypes.
4520
4521 * frame.h (get_specified_cursor_type, get_window_cursor_type):
4522 Remove prototypes.
4523
4524 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
4525
4526 * keyboard.c (make_lispy_position): Add x and y coordinates
4527 relative to the current glyph as 7th element of position.
4528 If glyph is an image, return it in the object element.
4529 (read_key_sequence): Skip checks for keymap property in cases
4530 where POSN_STRING is not a string (e.g. an image).
4531
4532 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
4533 (Vshow_text_cursor_in_void): New variable.
4534 (glyph_to_pixel_coords): Don't use negative hpos.
4535 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
4536 (append_stretch_glyph): Change ascent arg to be actual value
4537 in pixels rather than ratio to height. Callers changed.
4538 (calc_pixel_width_or_height): New aux function, implementing
4539 pixel based artihmetic for glyph widths and heights.
4540 (produce_stretch_glyph): Use calc_pixel_width_or_height for
4541 :width, :height, :align-to, and :ascent, thus allowing these to
4542 be specified in pixels as well as multiples of characters.
4543 Don't produce stretch glyphs with zero width or height.
4544 (get_specified_cursor_type): Declare static.
4545 (get_window_cursor_type): Declare static. Add glyph arg to be
4546 able to know when cursor is on an image; always substitute
4547 hollow-box cursor for filled-box cursor on images, to avoid
4548 negative images and flicker when blinking the cursor.
4549 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
4550 (note_mode_line_or_margin_highlight): Use non-text cursor rather
4551 than vertical scroll-bar cursor in display margins.
4552 (note_mouse_highlight): Use non-text cursor rather than text
4553 cursor in fringes and over images in the text area.
4554 Use non-text cursor when mouse pointer is outside editable text,
4555 i.e. in the void after end-of-line or end-of-buffer; this was
4556 already done for W32, but is now standard for all systems --
4557 user can toggle show-text-cursor-in-void to get old behaviour.
4558 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
4559 Vdisplay_pixels_per_inch.
4560
4561 2003-11-25 Andreas Schwab <schwab@suse.de>
4562
4563 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
4564 EMACS_INT to not lose bits.
4565 (Ffillarray): Don't set bits beyond the size of a bool vector.
4566
4567 2003-11-25 Kim F. Storm <storm@cua.dk>
4568
4569 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
4570 define this defun on systems that cannot use stderr as lvalue.
4571
4572 2003-11-24 Gerd Moellmann <gerd@gnu.org>
4573
4574 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
4575 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
4576 ld's default is incompatible with unexec.
4577
4578 2003-11-23 Kim F. Storm <storm@cua.dk>
4579
4580 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
4581 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
4582 (Fforce_window_update): New defun.
4583 (syms_of_window): Defsubr it.
4584 (Fset_window_margins, Fset_window_fringes): Doc fix.
4585
4586 * print.c (Fredirect_debugging_output): New defun.
4587 (syms_of_print): Defsubr it.
4588
4589 2003-11-22 Luc Teirlinck <teirllm@auburn.edu>
4590
4591 * fns.c (Fset_char_table_parent): Doc fix.
4592
4593 2003-11-22 Kim F. Storm <storm@cua.dk>
4594
4595 * dispnew.c (buffer_posn_from_coords): Return actual row/column
4596 for glyph clicked on, rather than (unused) pixel positions.
4597 (mode_line_string, marginal_area_string): Change X and Y args to
4598 pointers for returning actual row/column for glyph clicked on.
4599 Simplify and optimize loops.
4600
4601 * dispextern.h (mode_line_string, marginal_area_string):
4602 Update prototypes.
4603
4604 * keyboard.c (make_lispy_position): New function for generating
4605 mouse click positions from frame and pixel coordinates.
4606 Enhanced to return buffer position and actual row/column for
4607 events outside the text area using updated mode_line_string and
4608 marginal_area_string functions.
4609 Return left-fringe and right-fringe clicks as such, rather than
4610 clicks in text area.
4611 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
4612 pixel_to_glyph_coords, as we never use the results.
4613 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
4614 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
4615 Eliminate unused code in WHEEL_EVENT handling.
4616 (make_lispy_movement): Use make_lispy_position.
4617
4618 * window.c (coordinates_in_window): Remove redundant tests.
4619 Fix returned X pixel value for left-margin.
4620
4621 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
4622 mode_line_string and marginal_area_string parameters.
4623
4624 2003-11-22 Lars Hansen <larsh@math.ku.dk>
4625
4626 * w32.c (struct the_group, getgrgid): Add.
4627 * mac.c (struct my_group, getgrgid): Add.
4628
4629 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
4630
4631 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
4632
4633 2003-11-21 Lars Hansen <larsh@math.ku.dk>
4634
4635 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
4636 include in call to file name handler. Optionally translate numeric
4637 UID and GID to strings. Update docstring.
4638 (directory_files_internal): Add parameter ID-FORMAT.
4639 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
4640 include in call to file name handler and call to
4641 directory_files_internal. Update Docstring.
4642 (Fdirectory_files): Add dummy parameter in call to
4643 directory_files_internal.
4644 * lisp.h (Qinteger): Add.
4645 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
4646 (Ffile_attributes): Add parameter.
4647 * data.c (Qinteger): Export.
4648
4649 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
4650
4651 * fns.c (Freverse, Fnreverse): Doc fixes.
4652
4653 2003-11-19 Kim F. Storm <storm@cua.dk>
4654
4655 * xdisp.c (init_iterator): Initialize it->start to position
4656 before reseating (in case start position is invisible).
4657 (init_to_row_start): Set it->start to row-start.
4658 (redisplay_window): Accept optional_new_start if start position
4659 is invisible (in which case IT_CHARPOS overshoots PT).
4660 (display_line): Setup row->start from it->start (rather than
4661 it->current which is wrong if first char on line is invisible).
4662 When done, reseat it->start to it->current (= start of next row).
4663 (expose_area): Fix exposure of text area when first char (e.g. TAB)
4664 is only partially visible.
4665
4666 * dispextern.h (struct it): New member start.
4667
4668 2003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
4669
4670 * alloc.c (make_float, Fcons): Clear the markbit at init time.
4671 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
4672 of block_index outside of the macro call.
4673 (Fgarbage_collect): Remove null code.
4674
4675 * m/amdx86-64.h: Don't redefine XPNTR.
4676
4677 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
4678 of VALMASK.
4679
4680 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
4681 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
4682 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
4683
4684 * lisp.h (VALMASK): Only define for non-union type.
4685 (MARKBIT): Remove.
4686 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
4687 (XTYPE): Define unconditionally.
4688 (XSETTYPE): Remove one more remnant.
4689 (EQ): Define differently for the union and non-union cases.
4690 (INTMASK): New bit mask.
4691 (struct Lisp_Marker): Move down to prepare for upcoming patch.
4692 (GC_EQ): Delegate to EQ.
4693
4694 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
4695
4696 2003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4697
4698 * xterm.c (x_window_to_scroll_bar): Move check of display to
4699 where window_id is compared.
4700
4701 2003-11-17 Kim F. Storm <storm@cua.dk>
4702
4703 * dispextern.h (struct it): New member first_vpos.
4704
4705 * xdisp.c (start_display): Set it->first_vpos.
4706 (try_window_id): Use first_vpos to start display in first _text_
4707 line if no reusable lines at start of window with header line.
4708
4709 2003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4710
4711 * w32fns.c (XPutPixel):
4712 * w32bdf.c (w32_init_bdf_font):
4713 * sunfns.c (sel_read):
4714 * process.c (Fmake_network_process):
4715 * frame.c (store_frame_param):
4716 * fontset.c (Fset_fontset_font):
4717 * emacs.c (shut_down_emacs):
4718 * ccl.c (ccl_driver): Remove period at end of error message.
4719
4720 * config.in: Regenerate.
4721
4722 * xfns.c (x_window_to_frame, x_any_window_to_frame)
4723 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
4724 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
4725 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
4726 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
4727
4728 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
4729
4730 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
4731 (XTmouse_position, handle_one_xevent): Pass Display* to
4732 x_window_to_scroll_bar.
4733 (x_window_to_scroll_bar): Take a Display* argument.
4734 Check that display for frame is equal to Display* argument.
4735 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
4736 x_display_info_for_display instead. Use Display in xev instead
4737 of GDK_DISPLAY.
4738 (x_dispatch_event): Call x_display_info_for_display.
4739 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
4740 (x_connection_closed): Call xg_display_close for GTK.
4741 (x_term_init): Call xg_display_open for additional displays.
4742 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
4743 for GTK.
4744
4745 * xmenu.c (single_menu_item, mouse_position_for_popup)
4746 (x_activate_menubar): Formatting adjustments.
4747
4748 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
4749 adjustments.
4750
4751 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
4752 (xg_display_close, xg_create_default_cursor)
4753 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
4754 handling.
4755 (xg_left_ptr_cursor): Remove.
4756 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
4757 cursor here.
4758 (xg_win_to_widget): Take Display* argument, call
4759 gdk_xid_table_lookup_for_display.
4760 (xg_create_frame_widgets, xg_get_file_name, create_menus)
4761 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
4762 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
4763 in FRAME_X_DISPLAY_INFO.
4764 (xg_get_scroll_id_for_window): Take Display* argument.
4765 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
4766 (xg_initialize): Remove xg_left_ptr_cursor.
4767
4768 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
4769 Display* argument also. Declare xg_display_open,
4770 xg_display_close, xg_create_default_cursor.
4771
4772 2003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4773
4774 * xterm.c (x_detect_focus_change): Do not change focus frame for
4775 Enter/LeaveNotify if the current focus frame has explicit focus.
4776
4777 2003-11-14 Kim F. Storm <storm@cua.dk>
4778
4779 * dispnew.c (update_text_area): Fix redisplay error when hscroll
4780 is active and first glyph is only partially visible.
4781
4782 2003-11-13 Kenichi Handa <handa@m17n.org>
4783
4784 * xdisp.c (select_frame_for_redisplay): New function.
4785 (redisplay_internal): Record also selected_frame for
4786 unwind_redisplay. Call select_frame_for_redisplay before
4787 redrawing each frame.
4788 (unwind_redisplay): Argument changed to a cons.
4789
4790 2003-11-12 Luc Teirlinck <teirllm@auburn.edu>
4791
4792 * fns.c (Fstring_to_multibyte): Doc fix.
4793
4794 2003-11-11 Kenichi Handa <handa@m17n.org>
4795
4796 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
4797
4798 2003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4799
4800 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
4801 program specified positions.
4802
4803 2003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4804
4805 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
4806
4807 2003-11-08 Kenichi Handa <handa@m17n.org>
4808
4809 * Makefile.in (lisp): Add kannada.el.
4810 (shortlisp): Likewise.
4811
4812 2003-11-07 Kenichi Handa <handa@m17n.org>
4813
4814 * coding.c (coding_allocate_composition_data):
4815 Reset coding->composing to COMPOSITION_NO.
4816 (coding_restore_composition): Detect invalid composition data.
4817 Give Fstring and Fvector a Lispy integer, not C int.
4818
4819 2003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
4820
4821 * floatfns.c (Flogb): Don't use VALMASK.
4822
4823 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
4824 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
4825
4826 * lisp.h (XINT): Move the cast to clarify what is going on.
4827 (GCTYPEMASK, XSETTYPE): Remove.
4828 (XGCTYPE): Make it an alias of XTYPE.
4829
4830 2003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4831
4832 * xterm.c (x_term_init): Fix formatting.
4833
4834 2003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4835
4836 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
4837 and xg_did_tearoff.
4838
4839 * gtkutil.c: Remove variable xg_did_tearoff.
4840 (xg_have_tear_offs): New function.
4841 (tearoff_remove): Just decrease xg_detached_menus.
4842 (tearoff_activate): Increase xg_detached_menus and call
4843 tearoff_remove when tearoff is removed.
4844 (xg_keep_popup): Remove function.
4845 (create_menus): Give add_tearoff_p as argument to recursive
4846 call to create_menus.
4847 (xg_create_widget): Use variables instead of multiple
4848 strcmp. Tell create_menus to create tear off only for
4849 menu bar menus.
4850 (xg_update_menubar): Change title for a detached menu also.
4851 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
4852 of deep_p.
4853 (xg_initialize): Initialize xg_detached_menus, remove
4854 initialization of xg_did_tearoff.
4855
4856 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
4857 xg_have_tear_offs returns non-zero.
4858 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
4859 call to xg_keep_popup.
4860
4861 2003-11-01 Andrew Choi <akochoi@shaw.ca>
4862
4863 * macterm.c (XTread_socket): Handle menubar selection and grow
4864 window only for mouseDown events.
4865
4866 2003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4867
4868 * xterm.c (x_term_init): For GTK part, increase x_initialized
4869 to check for more than one display. Use error instead of return 0.
4870
4871 2003-10-31 Andrew Choi <akochoi@shaw.ca>
4872
4873 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
4874 (copy_dysymtab): Call it.
4875
4876 2003-10-31 Luc Teirlinck <teirllm@auburn.edu>
4877
4878 * eval.c (Fdefvaralias): Doc fix.
4879
4880 2003-10-26 Luc Teirlinck <teirllm@auburn.edu>
4881
4882 * data.c (Fsetplist): Doc fix.
4883
4884 2003-10-14 Lute Kamstra <lute@gnu.org>
4885
4886 * window.c (Fset_window_fringes): Clarify docstring.
4887
4888 2003-10-14 Kim F. Storm <storm@cua.dk>
4889
4890 * window.c (Fset_window_margins): Simplify arg checking.
4891
4892 2003-10-13 Richard M. Stallman <rms@gnu.org>
4893
4894 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
4895 (print_partial_compiled_pattern): Replace assert with a printout.
4896 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
4897
4898 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
4899
4900 * window.c (Fset_window_margins): Allow only integers as args.
4901 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
4902 Doc fixes.
4903
4904 2003-10-13 Lute Kamstra <lute@gnu.org>
4905
4906 * window.c (Fset_window_fringes): Elaborate docstring.
4907
4908 2003-10-12 Andrew Choi <akochoi@shaw.ca>
4909
4910 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
4911
4912 * s/darwin.h (GC_MARK_STACK): Define.
4913
4914 2003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4915
4916 * window.c (shrink_windows): New function.
4917 (size_window): Call shrink_windows to calculate window sizes when
4918 shrinking frame with more than one window.
4919
4920 2003-10-12 Kim F. Storm <storm@cua.dk>
4921
4922 * xdisp.c (compute_fringe_widths): Doc fix.
4923
4924 2003-10-08 Kenichi Handa <handa@m17n.org>
4925
4926 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
4927
4928 2003-10-07 Kenichi Handa <handa@m17n.org>
4929
4930 * coding.c (Qcoding_system_define_form): New variable.
4931 (syms_of_coding): Intern and staticpro it.
4932 (Fcheck_coding_system): Try to autoload the definition of
4933 CODING-SYSTEM.
4934
4935 2003-10-05 Luc Teirlinck <teirllm@auburn.edu>
4936
4937 * fns.c (Frequire): Doc fix.
4938
4939 2003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4940
4941 * xfns.c (Fx_send_client_event): New function as a base for
4942 manipulating extended window manager hints.
4943 (Fx_send_client_event): Remove unused variable s.
4944
4945 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
4946 that function is removed.
4947
4948 * xterm.c (x_set_offset): Use move_offset_left/top instead of
4949 x/y_pixels_outer_diff.
4950 (x_check_expected_move): Calculate move_offset_left/top.
4951
4952 * xterm.h (struct x_output): New members: move_offset_top/left.
4953
4954 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
4955 call x_set_offset directly.
4956
4957 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
4958
4959 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
4960
4961 * xterm.c (x_delete_display): Free font names and font_encoder
4962 in dpyinfo->font_table.
4963
4964 * xfns.c (Fx_close_connection): Only call XFreeFont here.
4965 Move xfree of font names to x_delete_display.
4966
4967 * xterm.h (struct x_display_info): New member, wm_type.
4968 (struct x_output): New members, expected_top/left and
4969 check_expected_move.
4970
4971 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
4972 is received.
4973 (handle_one_xevent): Rename x_check_expected_move from
4974 x_check_fullscreen_move.
4975 (x_set_offset): Only add WM decoration sizes to modified_top/left
4976 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
4977 (x_check_expected_move): Rename from x_check_fullscreen_move.
4978 Removed fullscreen specific code. Use check_expected_move,
4979 expected_left/top instead. Also, set wm_type.
4980 (x_term_init): Initialize wm_type to unknown.
4981
4982 * frame.c (x_fullscreen_move): Remove addition of WM decoration
4983 sizes to move_x/y.
4984
4985 2003-10-03 Kenichi Handa <handa@m17n.org>
4986
4987 * macterm.c (x_load_font): Clear all members of FONTP before start
4988 filling them.
4989
4990 2003-10-02 Kenichi Handa <handa@m17n.org>
4991
4992 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
4993 before calling find_ccl_program_func. Call find_ccl_program_func
4994 only when fontp->font_encoder is not NULL.
4995
4996 * xterm.c (x_load_font): Clear all members of FONTP before start
4997 filling them.
4998
4999 2003-10-03 John Paul Wallington <jpw@gnu.org>
5000
5001 * keymap.c (map_keymap): Don't abort when binding is a vector.
5002
5003 2003-10-02 Jason Rumney <jasonr@gnu.org>
5004
5005 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
5006 Sync dependencies with Makefile.in.
5007 (alloca.o): Remove.
5008
5009 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
5010 filling them.
5011
5012 * w32bdf.c (w32_load_bdf_font): Likewise.
5013
5014 2003-09-30 Richard M. Stallman <rms@gnu.org>
5015
5016 * term.c (set_tty_color_mode): Calculate current_mode_spec
5017 regardless of value of VAL.
5018
5019 * intervals.c (graft_intervals_into_buffer):
5020 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
5021 Handle over_used when splitting UNDER.
5022
5023 2003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5024
5025 * regex.c (regex_compile): Free the stack when returning from function.
5026
5027 2003-09-28 Kenichi Handa <handa@m17n.org>
5028
5029 * fontset.c (Finternal_char_font): Change return value to
5030 cons (FONT-NAME . GLYPH-CODE).
5031
5032 2003-09-28 Eli Zaretskii <eliz@gnu.org>
5033
5034 * term.c (tty_setup_colors): Treat any negative argument as -1.
5035
5036 2003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
5037
5038 * process.c (send_process): Delete unused temp_buf.
5039
5040 2003-09-26 Dave Love <fx@gnu.org>
5041
5042 * xterm.c (x_bitmap_mask): Declare.
5043
5044 2003-09-25 Dave Love <fx@gnu.org>
5045
5046 * Makefile.in (fns.o): Depend on md5.h.
5047
5048 2003-09-25 Kim F. Storm <storm@cua.dk>
5049
5050 * window.c (set_window_buffer): Fix redisplay problems when
5051 switching between buffers with different display margin widths.
5052
5053 2003-09-23 Kim F. Storm <storm@cua.dk>
5054
5055 * process.c (set_socket_option): Fix :bindtodevice option.
5056 (Fset_network_process_option): Update process contact list when
5057 setting option succeeds.
5058 (Fmake_network_process): Doc fix.
5059
5060 2003-09-23 Dave Love <fx@gnu.org>
5061
5062 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
5063
5064 2003-09-22 Eli Zaretskii <eliz@gnu.org>
5065
5066 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
5067 color mode is an integer number (it could be -1).
5068
5069 2003-09-22 Richard M. Stallman <rms@gnu.org>
5070
5071 * intervals.c (graft_intervals_into_buffer): Correct the main loop
5072 in the case where OVER is longer than UNDER.
5073
5074 2003-09-22 Masatake YAMATO <jet@gyve.org>
5075
5076 * window.c (Fset_window_scroll_bars): Validate the value of
5077 `vertical_type'.
5078
5079 2003-09-21 Kim F. Storm <storm@cua.dk>
5080
5081 * frame.c (Vdefault_frame_scroll_bars): New variable.
5082 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
5083 (syms_of_frame): DEFVAR_LISP it, and initialize according to
5084 window-system default scroll bar position.
5085
5086 * window.c (Fwindow_scroll_bars): Doc fix.
5087
5088 2003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5089
5090 * xterm.c (x_set_offset): Take window manager decorations into account.
5091
5092 2003-09-19 Richard M. Stallman <rms@gnu.org>
5093
5094 * atimer.h: Don't include lisp.h.
5095 (P_): Define it here (as well as elsewhere).
5096
5097 * print.c (Fprin1_to_string): Move the PRINTPREPARE
5098 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
5099
5100 * data.c (Fvariable_binding_locus): New function.
5101 (syms_of_data): defsubr it.
5102 (Flocal_variable_p): Delete duplicate call to indirect_variable.
5103
5104 2003-09-18 Dave Love <fx@gnu.org>
5105
5106 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
5107
5108 * process.c (Fnetwork_interface_info): Fix type error.
5109 (Fnetwork_interface_list): Doc fix.
5110 (read_process_output, read_process_output): Delete unused var.
5111
5112 2003-09-17 Kim F. Storm <storm@cua.dk>
5113
5114 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
5115 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
5116 (Fnetwork_interface_info): Check that ifreq struct has required
5117 fields before accessing them; this requires that those fields are
5118 defined as macros, which may be too restrictive on some platforms,
5119 but it is better than failing on other platforms.
5120 (syms_of_process): Only defsubr above fns when included.
5121
5122 2003-09-17 Dave Love <fx@gnu.org>
5123
5124 * unexalpha.c: Don't include varargs.h.
5125
5126 2003-09-17 Kim F. Storm <storm@cua.dk>
5127
5128 * process.c (Fset_process_sentinel): Add sentinel to childp plist
5129 for network process.
5130 (socket_options): Add `:' prefix to option names. Add optbit field.
5131 (set_socket_option): Remove no_error arg and special handling of s < 0.
5132 Return 1<<optbit for known option, 0 for unknown.
5133 Do not interpret 0 as false for boolean option (only nil).
5134 Pass failed option and value to report_file_error.
5135 (Fset_network_process_options): Replace by Fset_network_process_option.
5136 (Fset_network_process_option): New function to set just one option.
5137 (Fmake_network_process): Allow :coding arg to be a cons.
5138 Allow :server arg to be an integer specifying backlog size.
5139 Remove :options arg, and allow options to be specified directly
5140 as :KEY, VALUE pairs. Parse these options before binding socket.
5141 As before, :reuseaddr t is default for a server process, but this
5142 can now be disabled by specifying :reuseaddr nil.
5143 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
5144 (init_process): Availability of network options is now checked with
5145 simpler syntax (featurep 'make-network-process :OPTION); use loop to
5146 setup features.
5147 (syms_of_process): Fix defsubr's for the replaced functions.
5148
5149 2003-09-16 Dave Love <fx@gnu.org>
5150
5151 * Makefile.in: Depend on coding.h.
5152
5153 2003-09-14 Kim F. Storm <storm@cua.dk>
5154
5155 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
5156 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
5157 (syms_of_process): Defsubr them.
5158
5159 * config.in: Regenerate.
5160
5161 2003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
5162
5163 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
5164 * m/news-r6.h (XUNMARK): Remove.
5165 * m/mips.h (XUNMARK): Remove.
5166 * m/mips-siemens.h (XUNMARK): Remove.
5167 * m/iris4d.h (XUNMARK): Remove.
5168 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
5169
5170 2003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
5171
5172 * lisp.h (VALBITS): Don't remove 1 for the markbit.
5173 (union Lisp_Object): Use unsigned int for types. Remove markbit.
5174 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
5175 (XTYPE): Use unsigned right-shift.
5176 (XMARKBIT, XMARK, XUNMARK): Remove.
5177
5178 * alloc.c (init_intervals, init_symbol, init_marker):
5179 Don't preallocate anything.
5180 (Fgarbage_collect, mark_object): Ignore the markbit.
5181
5182 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
5183
5184 2003-09-08 Lute Kamstra <lute@gnu.org>
5185
5186 * xdisp.c (pint2hrstr): New function.
5187 (decode_mode_spec): Add `%i' and `%I' specs.
5188 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
5189 for `mode-line-format'.
5190
5191 2003-09-07 Andreas Schwab <schwab@suse.de>
5192
5193 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
5194 avoid warning.
5195
5196 2003-09-07 Eli Zaretskii <eliz@gnu.org>
5197
5198 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
5199
5200 2003-09-03 Kim F. Storm <storm@cua.dk>
5201
5202 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
5203 change (superseded by 2002-08-30 change); the default blink-off
5204 cursor is now again "no cursor".
5205
5206 2003-09-01 Jason Rumney <jasonr@gnu.org>
5207
5208 * makefile.w32-in (alloca.o): Remove.
5209 (coding.o): Depend on intervals.h
5210 (emacs.o, bytecode.o): Depend on window.h
5211
5212 2003-09-01 Dave Love <fx@gnu.org>
5213
5214 * Makefile.in (alloca.o): Remove commands.
5215 (coding.o): Depend on intervals.h composite.h window.h.
5216 (emacs.o): Depend on window.h keyboard.h keymap.h.
5217 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
5218 (bytecode.o): Depend on window.h.
5219
5220 2003-08-31 Jason Rumney <jasonr@gnu.org>
5221
5222 * w32term.c (w32_per_char_metric): Allow cached metrics to be
5223 returned even when font_type is unknown.
5224
5225 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
5226
5227 2003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5228
5229 * xterm.c (x_term_init): Initialize new fields in x_display_info.
5230
5231 * xterm.h (struct x_display_info): Add red/green/blue_bits and
5232 *_offset.
5233
5234 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
5235 calculate pixel value.
5236
5237 2003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
5238
5239 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
5240 Don't tell redisplay display is accurate when it's actually been
5241 paused for pending input.
5242
5243 2003-08-29 Richard M. Stallman <rms@gnu.org>
5244
5245 * dispnew.c (adjust_glyph_matrix): Call window_box
5246 whenever W is nonzero.
5247
5248 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
5249 (Fkill_local_variable, Fmake_variable_frame_local)
5250 (Flocal_variable_p, Flocal_variable_if_set_p):
5251 Use indirect_variable to trace thru variable aliases.
5252
5253 * config.in: Updated.
5254
5255 * callint.c (Fcall_interactively): Save and restore
5256 Vthis_command, Vthis_original_command, real_this_command,
5257 and current_kboard->Vlast_command.
5258
5259 * abbrev.c (Fexpand_abbrev): Insert before deleting.
5260
5261 2003-08-29 Gerd Moellmann <gerd@gnu.org>
5262
5263 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
5264
5265 2003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
5266
5267 * coding.c (decode_coding_iso2022): Initialize local variable c2.
5268 (decode_coding_sjis_big5): Likewise.
5269
5270 2003-08-27 Jason Rumney <jasonr@gnu.org>
5271
5272 * w32.c (sys_pipe): Protect against file descriptor overflow.
5273
5274 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
5275
5276 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
5277
5278 2003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
5279
5280 * xfns.c (Vgtk_version_string): New variable.
5281 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
5282
5283 2003-08-24 Eli Zaretskii <eliz@gnu.org>
5284
5285 * term.c (term_init): Remove `const' from buffer_size's declaration.
5286
5287 * Makefile.in (msdos.o): Depend on intervals.h.
5288
5289 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5290
5291 2003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5292
5293 * xterm.h (struct x_display_info): New fields: client_leader_window
5294 and Xatom_wm_client_leader.
5295
5296 * xterm.c (x_initialize): Move call to x_session_initialize to ...
5297 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
5298
5299 * xsmfns.c (create_client_leader_window): New function.
5300 (x_session_initialize): Call create_client_leader_window, take
5301 dpyinfo as argument.
5302
5303 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
5304
5305 * Makefile.in (xsmfns.o): Add more depenedencies.
5306
5307 2003-08-21 Dave Love <fx@gnu.org>
5308
5309 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
5310
5311 2003-08-21 Kenichi Handa <handa@m17n.org>
5312
5313 * term.c (term_init): Fix previous change; don't rely on the
5314 length of `buffer' if TERMINFO is defined.
5315
5316 2003-08-20 Dave Love <fx@gnu.org>
5317
5318 * atimer.h: Include lisp.h.
5319
5320 * lisp.h (EMACS_LISP_H): New.
5321 (popup_activated_flag): Don't declare.
5322
5323 * alloca.c: Some merging with gnulib. Change logic and doc
5324 concerning (x)malloc/(x)free -- no longer Emacs-specific.
5325 [DO_BLOCK_INPUT]: Don't include lisp.h.
5326 (xmalloc, xfree): Declare.
5327 (malloc): Don't declare.
5328
5329 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
5330 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
5331 atimer.h, blockinput.h.
5332
5333 * alloc.c (lisp_align_malloc): Change type of `aligned'.
5334
5335 * alloca.s: Removed.
5336
5337 2003-08-19 Gerd Moellmann <gerd@gnu.org>
5338
5339 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
5340 use -lncurses.
5341
5342 * term.c (term_init): Use a buffer of size 4096 for tgetent since
5343 FreeBSD returns something longer than 2044. Abort if the end of
5344 the buffer is overwritten.
5345
5346 2003-08-19 Miles Bader <miles@gnu.org>
5347
5348 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
5349
5350 2003-08-19 Gerd Moellmann <gerd@gnu.org>
5351
5352 * alloc.c (lisp_align_malloc): Check for memory full when
5353 allocating ablocks, which also avoids freeing a pointer into an
5354 ablocks structure.
5355
5356 * puresize.h (BASE_PURESIZE): Increase to 1100000.
5357
5358 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
5359
5360 2003-08-16 Richard M. Stallman <rms@gnu.org>
5361
5362 * editfns.c (Fencode_time): Doc fix.
5363
5364 2003-08-16 David Ponce <david@dponce.com>
5365
5366 * fileio.c (Fwrite_region): Fix conditional expression to issue
5367 the right message.
5368
5369 2003-08-16 Juri Linkov <juri@jurta.org>
5370
5371 * syntax.c (Fforward_word): Argument changed to optional.
5372 Set default value to 1.
5373
5374 2003-08-15 Kenichi Handa <handa@m17n.org>
5375
5376 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
5377 what autoscaled.
5378 (best_matching_font): Once we find a better scalable font, set
5379 non_scalable_has_exact_height_p to 1.
5380 (try_font_list): Call try_alternative_families to try any family
5381 with the given registry.
5382
5383 2003-08-09 Andreas Schwab <schwab@suse.de>
5384
5385 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
5386
5387 * print.c (print_string): Fix printing of multibyte string with
5388 nontrivial printcharfun.
5389
5390 2003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5391
5392 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
5393
5394 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
5395
5396 2003-07-31 Kenichi Handa <handa@m17n.org>
5397
5398 * process.c (read_process_output): Return the actually read bytes
5399 instead of the result of decoding.
5400
5401 2003-07-31 Kenichi Handa <handa@m17n.org>
5402
5403 * xterm.h (struct x_bitmap_record): New member have_mask.
5404
5405 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
5406 to 0.
5407 (x_create_bitmap_from_file): Likewise.
5408 (x_destroy_bitmap): Check have_mask member before freeing a mask.
5409 (x_destroy_all_bitmaps): Likewise.
5410 (x_create_bitmap_mask): Set have_mask member to 1.
5411
5412 2003-07-30 Richard M. Stallman <rms@gnu.org>
5413
5414 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
5415
5416 2003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5417
5418 * gtkutil.c (xg_mark_data): Update calls to mark_object.
5419
5420 2003-07-29 Richard M. Stallman <rms@gnu.org>
5421
5422 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
5423 Conditionalize XIM code on HAVE_XIM.
5424
5425 * fns.c (Fclear_string): New function.
5426 (syms_of_fns): defsubr it.
5427
5428 2003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
5429
5430 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
5431
5432 2003-07-22 Stefan Monnier <monnier@cs.yale.edu>
5433
5434 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
5435
5436 * buffer.c (delete_all_overlays): New function.
5437 * buffer.h (delete_all_overlays): Declare.
5438 * coding.c (run_pre_post_conversion_on_str):
5439 * print.c (temp_output_buffer_setup):
5440 * fileio.c (Finsert_file_contents):
5441 * minibuf.c (get_minibuffer): Use it.
5442
5443 2003-07-22 Andrew Choi <akochoi@shaw.ca>
5444
5445 * unexmacosx.c (unexec_regions_sort_compare):
5446 (unexec_regions_merge): New functions. Sort and merge unexec
5447 regions before dumping them.
5448
5449 2003-07-22 Dave Love <fx@gnu.org>
5450
5451 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
5452
5453 2003-07-21 Stefan Monnier <monnier@cs.yale.edu>
5454
5455 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
5456 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
5457 MARKBIT as the gcmarkbit for strings.
5458
5459 2003-07-21 Richard M. Stallman <rms@gnu.org>
5460
5461 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
5462
5463 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
5464 (syms_of_fns): Corresponding change.
5465
5466 * alloc.c (syms_of_alloc): Doc fixes.
5467
5468 2003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
5469
5470 * s/netbsd.h: Use -Wl syntax.
5471
5472 2003-07-17 Richard M. Stallman <rms@gnu.org>
5473
5474 * xterm.c (xim_initialize): Redo 6/24 change.
5475
5476 2003-07-15 Stefan Monnier <monnier@cs.yale.edu>
5477
5478 * buffer.c (copy_overlays): Use EMACS_INT for positions.
5479 (Fswitch_to_buffer): Don't signal an error when switching to the same
5480 buffer in a dedicated window.
5481
5482 * alloc.c: Use bitmaps for cons, as was done for floats.
5483 (init_float, init_cons): Let the normal code allocate the first block.
5484 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
5485 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
5486 New macros.
5487 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
5488 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
5489 (live_cons_p): Check the pointer is not past the `conses' array.
5490 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
5491 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
5492 (survives_gc_p): Use CONS_MARKED_P and simplify.
5493 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
5494
5495 2003-07-13 Paul Eggert <eggert@twinsun.com>
5496
5497 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
5498 puts it into BSS instead, at least on Solaris 8 and 9.
5499 This is a valid optimization, and it may occur on other platforms,
5500 so Emacs should not assume that initializing a static variable to
5501 zero puts it into data.
5502 * alloc.c (pure, staticvec):
5503 Initialize these arrays to nonzero, so that they're not
5504 put into BSS by that optimization.
5505
5506 2003-07-13 Stefan Monnier <monnier@cs.yale.edu>
5507
5508 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
5509 (lisp_align_malloc): Use posix_memalign is available.
5510 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
5511 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
5512 for consistency. Update users.
5513
5514 2003-07-13 Richard M. Stallman <rms@gnu.org>
5515
5516 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
5517
5518 2003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
5519
5520 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
5521 and use the Gtk+ function gtk_window_icon_from_file if available.
5522
5523 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
5524 handle mask of bitmaps.
5525 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
5526 mask property.
5527 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
5528
5529 * xterm.h (xg_set_icon): New function.
5530
5531 2003-07-12 Paul Eggert <eggert@twinsun.com>
5532
5533 * unexelf.c (unexec): Consider a section to precede the .bss
5534 section if its addresses overlap that of .bss.
5535
5536 2003-07-12 Richard M. Stallman <rms@gnu.org>
5537
5538 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
5539
5540 * config.in (HAVE_CRTIN): Add #undef.
5541 (INLINE): Really inline only if OPTIMIZE is defined.
5542
5543 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
5544 END_FILES_1.
5545 (START_FILES_1, END_FILES_1): New macros (conditional).
5546 (LD_SWITCH_SYSTEM_TEMACS): Define.
5547
5548 * s/openbsd.h: Don't include bsd4-3.h.
5549 (TERMINFO): Define.
5550 (LIBS_TERMCAP): Define.
5551 (LD_SWITCH_SYSTEM): Define (two definitions).
5552
5553 * xfns.c: Include libpng/png.h instead of png.h.
5554
5555 2003-07-11 Andreas Schwab <schwab@suse.de>
5556
5557 * buffer.c (modify_overlay): Update prototype.
5558 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
5559 Likewise.
5560
5561 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5562
5563 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
5564 (struct interval): Move to intervals.h.
5565 (struct Lisp_Marker): Use EMACS_INT for position info.
5566 (forward_point): Remove prototype of defunct function.
5567 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
5568 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
5569 (syms_of_textprop, set_text_properties): Remove prototypes that are
5570 already in intervals.h.
5571
5572 * intervals.h (struct interval): Move from lisp.h.
5573 Use EMACS_INT for position and size info.
5574
5575 * coding.c: Include intervals.h for Fset_text_properties.
5576
5577 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
5578 position and length information.
5579
5580 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5581
5582 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
5583 position and length information.
5584
5585 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5586
5587 Change overlays_after and overlays_before so the overlays themselves
5588 are linked into lists, rather than using cons cells. After all each
5589 Lisp_Misc already occupies 5 words, so we can add a `next' field to
5590 Lisp_Overlay for free and save up one cons cell per overlay (not
5591 to mention one indirection when traversing the list of overlay).
5592
5593 * lisp.h (struct Lisp_Overlay): New field `next'.
5594
5595 * buffer.h (struct buffer): Change overlays_before and overlays_after
5596 from Lisp lists of overlays to pointers to overlays.
5597
5598 * buffer.c (overlay_strings, recenter_overlay_lists):
5599 Fix typo in eassert in last commit.
5600 (unchain_overlay): New function.
5601 (add_overlay_mod_hooklist): Use AREF.
5602 (copy_overlays, reset_buffer, overlays_at, overlays_in)
5603 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
5604 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
5605 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
5606 (report_overlay_modification, evaporate_overlays, init_buffer_once):
5607 Adjust to new type of overlays_(before|after).
5608
5609 * alloc.c (mark_object): Mark the new `next' field of overlays.
5610 (mark_buffer): Manually mark the overlays_(after|before) fields.
5611
5612 * coding.c (run_pre_post_conversion_on_str):
5613 * editfns.c (overlays_around):
5614 * xdisp.c (load_overlay_strings):
5615 * fileio.c (Finsert_file_contents):
5616 * indent.c (current_column):
5617 * insdel.c (signal_before_change, signal_after_change):
5618 * intervals.c (set_point_both):
5619 * print.c (temp_output_buffer_setup): Use new type for
5620 overlays_(before|after).
5621
5622 2003-07-08 Stefan Monnier <monnier@cs.yale.edu>
5623
5624 * buffer.c (report_overlay_modification): Don't run hooks while
5625 traversing the list of overlays.
5626
5627 * buffer.h (struct buffer): Use an int for overlay_center.
5628 (overlays_at, evaporate_overlays, recenter_overlay_lists)
5629 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
5630
5631 * buffer.c (reset_buffer, recenter_overlay_lists)
5632 (adjust_overlays_for_insert, adjust_overlays_for_delete)
5633 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
5634 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
5635 (overlays_at, evaporate_overlays, recenter_overlay_lists)
5636 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
5637
5638 * xdisp.c (fast_find_position): Remove unused var.
5639
5640 * cmds.c (Qexpand_abbrev): New sym.
5641 (syms_of_cmds): Initialize it.
5642 (internal_self_insert): Use it to call expand-abbrev.
5643
5644 2003-07-09 Kim F. Storm <storm@cua.dk>
5645
5646 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
5647 was configured with --without-xim.
5648 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
5649
5650 2003-07-07 Richard M. Stallman <rms@gnu.org>
5651
5652 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
5653
5654 * alloc.c (Fgarbage_collect): Doc fix.
5655
5656 2003-07-07 Nozomu Ando <nand@mac.com>
5657
5658 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
5659
5660 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
5661
5662 * minibuf.c (read_minibuf): UNGCPRO before returning.
5663 (Ftry_completion, Fall_completions): Doc fix.
5664
5665 * alloc.c (live_float_p): Check that p is not past the `floats' array,
5666 now that `floats' is not the last element of the struct any more.
5667
5668 2003-07-06 Jason Rumney <jasonr@gnu.org>
5669
5670 * w32term.h (ClipboardSequence_Proc): New type.
5671
5672 * w32fns.c (clipboard_sequence_fn): New variable.
5673 (globals_of_w32fns): Initialize it.
5674
5675 * w32select.c (last_clipboard_sequence_number): New variable.
5676 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
5677 number if possible.
5678
5679 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
5680
5681 * m/amdx86-64.h (MARKBIT):
5682 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
5683 MARKBIT and ARRAY_MARK_FLAG any more.
5684
5685 * m/hp800.h (XSETMARKBIT):
5686 * m/sr2k.h (XSETMARKBIT):
5687 * lisp.h (XSETMARKBIT): Remove unused macro.
5688
5689 * lisp.h (mark_object): Change prototype.
5690
5691 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
5692 (last_marked): Change accordingly.
5693 (mark_interval, mark_maybe_object, mark_maybe_pointer)
5694 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
5695 (mark_buffer): Update calls to mark_object.
5696
5697 * bytecode.c (mark_byte_stack):
5698 * fns.c (sweep_weak_table):
5699 * keyboard.c (mark_kboards): Update calls to mark_object.
5700
5701 2003-07-06 Jason Rumney <jasonr@gnu.org>
5702
5703 * alloc.c (struct ablock): Only include padding when there is some.
5704
5705 2003-07-04 Stefan Monnier <monnier@cs.yale.edu>
5706
5707 * alloc.c (ALIGN): Add casts to simplify usage.
5708 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
5709 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
5710 (struct ablock, struct ablocks): New types.
5711 (free_ablock): New global var.
5712 (lisp_align_malloc, lisp_align_free): New functions.
5713 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
5714 (struct float_block): Reorder and add gcmarkbits.
5715 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
5716 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
5717 (init_float, make_float): Use lisp_align_malloc.
5718 (free_float, live_float_p): Don't use `type' any more.
5719 (make_float): Use FLOAT_UNMARK to access to mark bit.
5720 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
5721 Use FLOAT_MARKED_P to access the mark bit.
5722 (pure_alloc): Simplify use of ALIGN.
5723 (mark_object): Use FLOAT_MARK to access the mark bit.
5724 (gc_sweep): Use new macros to access the float's mark bit.
5725 (init_alloc_once): Init free_ablock.
5726
5727 * lisp.h (struct Lisp_Float): Remove unused field `type'.
5728
5729 2003-06-27 Stefan Monnier <monnier@cs.yale.edu>
5730
5731 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
5732 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
5733 (allocate_buffer): Move.
5734 (string_bytes): Don't mask markbit of `size_byte'.
5735 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
5736 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
5737 Use the `size' field of buffers (rather than the `name' field) for
5738 the mark bit, as is done for all other vectorlike objects.
5739 Use the new macros to access the mark bit of vectorlike objects.
5740
5741 2003-06-26 Richard M. Stallman <rms@gnu.org>
5742
5743 * puresize.h (BASE_PURESIZE): Increment base size.
5744
5745 * xdisp.c (fast_find_position): Enable Gerd's new definition.
5746
5747 * xterm.c (xim_initialize): Undo previous change.
5748
5749 2003-06-26 Stefan Monnier <monnier@cs.yale.edu>
5750
5751 * alloc.c (survives_gc_p): Simplify.
5752
5753 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
5754
5755 * window.c (Fset_window_dedicated_p): Simplify.
5756 (display_buffer_1): Don't raise the win from which minibuf was entered.
5757 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
5758 (Fminibuffer_selected_window): Simplify.
5759
5760 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
5761
5762 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
5763 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
5764
5765 * insdel.c (check_markers, adjust_markers_for_delete)
5766 (adjust_markers_for_insert, adjust_markers_for_replace)
5767 (prepare_to_modify_buffer, RESTORE_VALUE):
5768 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
5769 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
5770 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
5771 * alloc.c (Fmake_marker, free_marker, gc_sweep):
5772 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
5773 * editfns.c (save_excursion_restore, transpose_markers):
5774 * window.c (delete_window):
5775 * xdisp.c (message_dolog): Update for new types.
5776
5777 2003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5778
5779 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
5780 (realize_default_face): Use default_face_done_p for the force_p
5781 argument to set_lface_from_font_name. Set default_face_done_p to one.
5782
5783 * frame.c (make_frame): Initialize default_face_done_p.
5784
5785 * frame.h (struct frame): Add default_face_done_p.
5786
5787 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
5788 will be defined.
5789
5790 2003-06-25 Stefan Monnier <monnier@cs.yale.edu>
5791
5792 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
5793 Initialize the new field `gcmarkbit'.
5794 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
5795 (mark_interval_tree): Don't mark the tree separately from the nodes.
5796 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
5797 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
5798 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
5799
5800 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
5801 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
5802 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
5803 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
5804 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
5805
5806 2003-06-24 Dave Love <fx@gnu.org>
5807
5808 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
5809
5810 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
5811 from gnulib.
5812
5813 2003-06-21 Richard M. Stallman <rms@gnu.org>
5814
5815 * fileio.c (Fwrite_region): Alternate messages
5816 for append and partial write.
5817
5818 * keyboard.c (read_key_sequence): When converting upcase fn key to
5819 downcase, update fkey and keytran so `backspace' gets translated.
5820
5821 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
5822
5823 * process.c (wait_reading_process_input): Don't signal SIGIO
5824 in batch mode.
5825
5826 2003-06-17 Kenichi Handa <handa@m17n.org>
5827
5828 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
5829 composite.h.
5830
5831 * xselect.c: Don't include charset.h, coding.h, composite.h.
5832 (Qforeign_selection): New variable.
5833 (syms_of_xselect): Intern and static it.
5834 (selection_data_to_lisp_data): Return a unibyte string made from
5835 data with `foreign-selection' text property.
5836
5837 2003-06-15 Stefan Monnier <monnier@cs.yale.edu>
5838
5839 * termhooks.h (EVENT_INIT): New macro.
5840
5841 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
5842
5843 * alloc.c (mark_kboards): Move to keyboard.c.
5844
5845 * keyboard.c (record_asynch_buffer_change, read_avail_input):
5846 * xterm.c (x_dispatch_event):
5847 * xmenu.c (find_and_call_menu_selection):
5848 * xdisp.c (handle_tool_bar_click):
5849 * w32menu.c (menubar_selection_callback):
5850 * sysdep.c (kbd_input_ast, read_input_waiting):
5851 * msdos.c (dos_rawgetc):
5852 * macterm.c (mac_check_for_quit_char):
5853 * macmenu.c (menubar_selection_callback):
5854 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
5855 data to kbd_buffer_store_event.
5856
5857 2003-06-15 Kim F. Storm <storm@cua.dk>
5858
5859 * xdisp.c (x_fix_overlapping_area): Always use area relative X
5860 to fix redisplay problem with tall characters (such as \e,AC\e(B).
5861
5862 2003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
5863
5864 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
5865
5866 2003-06-12 Kenichi Handa <handa@m17n.org>
5867
5868 * fileio.c (Fwrite_region): Save and restore restriction.
5869
5870 2003-06-12 Dave Love <fx@gnu.org>
5871
5872 * alloca.c (alloca): Declare arg as size_t.
5873
5874 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
5875 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
5876
5877 2003-06-11 Dave Love <fx@gnu.org>
5878
5879 * search.c (shrink_regexp_cache): Use xrealloc.
5880 (syms_of_search): Use xmalloc.
5881
5882 2003-06-10 Kim F. Storm <storm@cua.dk>
5883
5884 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
5885 Adjust phys_cursor.x to be relative to window box, rather than
5886 text area before checking -- to ensure cursor is redrawn when
5887 exposing window.
5888 Note: This also fixes a similar (older) bug if display margins
5889 are present.
5890
5891 2003-06-06 Kenichi Handa <handa@m17n.org>
5892
5893 * coding.c (encoding_buffer_size): If coding->type is
5894 coding_type_ccl, double magnification on CRLF encoding.
5895
5896 2003-06-06 Jason Rumney <jasonr@gnu.org>
5897
5898 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
5899 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
5900
5901 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
5902 Mac too.
5903
5904 2003-06-05 Dave Love <fx@gnu.org>
5905
5906 * strftime.c: Merge changes from gnulib.
5907
5908 * mktime.c (__mktime_internal): Merge changes from gnulib
5909 involving year 69 and dst2.
5910
5911 Changes to merge with gnulib version and be consistent with the
5912 autoconf test:
5913
5914 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
5915 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
5916 [HAVE_LOCALE_H]: Include locale.h.
5917 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
5918
5919 2003-06-05 Kim F. Storm <storm@cua.dk>
5920
5921 * window.c (coordinates_in_window): Convert X and Y to window
5922 relative coordinates inside mode-line and header-line parts.
5923 Convert X and Y to margin area relative coordinates inside left
5924 and right display margin parts.
5925
5926 2003-06-05 Jason Rumney <jasonr@gnu.org>
5927
5928 * w32fns.c (add_system_logical_colors_to_map): New function.
5929 (Fx_open_connection): Use it.
5930
5931 2003-06-04 Stefan Monnier <monnier@cs.yale.edu>
5932
5933 * process.c (allocate_pty): Revert part of the previous patch.
5934 (Faccept_process_output): Simplify.
5935
5936 2003-06-04 Jason Rumney <jasonr@gnu.org>
5937
5938 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
5939
5940 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
5941 (lispy_mouse_wheel_names): Remove.
5942 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
5943 Always define drag_and_drop_syms.
5944
5945 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
5946 WHEEL_EVENT events.
5947
5948 2003-06-03 Stefan Monnier <monnier@cs.yale.edu>
5949
5950 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
5951
5952 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
5953
5954 2003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5955
5956 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
5957 menu item label.
5958
5959 2003-06-03 Richard M. Stallman <rms@gnu.org>
5960
5961 * window.c (Fwindow_edges): Doc fix.
5962 (Fwindow_pixel_edges, Fwindow_inside_edges)
5963 (Fwindow_inside_pixel_edges): New functions.
5964 (syms_of_window): defsubr them.
5965
5966 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
5967 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
5968
5969 2003-06-02 Stefan Monnier <monnier@cs.yale.edu>
5970
5971 * dispnew.c (Fsit_for): Don't lie about the number of args.
5972
5973 2003-06-02 Dave Love <fx@gnu.org>
5974
5975 * callproc.c: Use HAVE_FCNTL_H, not USG5.
5976 (syms_of_callproc) <process-environment>: Doc fix.
5977
5978 * doc.c: Use HAVE_FCNTL_H, not USG5.
5979
5980 * xfaces.c (font_rescale_ratio): Fix for K&R.
5981
5982 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
5983
5984 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
5985
5986 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
5987
5988 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
5989 (xg_create_frame_widgets): Use ENCODE_UTF_8.
5990
5991 * xterm.c (Qutf_8): Move to coding.c
5992
5993 * xmenu.c (ENCODE_MENU_STRING): New.
5994 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
5995 Use it.
5996
5997 * coding.h (ENCODE_UTF_8): New.
5998 (Qutf_8): Declare.
5999
6000 * coding.c (Qutf_8): New.
6001 (syms_of_coding): Intern it.
6002
6003 * fns.c: Doc fixes.
6004
6005 2003-06-02 Kenichi Handa <handa@m17n.org>
6006
6007 * buffer.c (Fset_buffer_multibyte): Fix previous change.
6008
6009 2003-06-01 Stefan Monnier <monnier@cs.yale.edu>
6010
6011 * lread.c (openp): Make sure STR is a string.
6012
6013 2003-06-01 David Ponce <david@dponce.com>
6014
6015 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
6016 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
6017
6018 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
6019 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
6020 (discard_mouse_events): Discard WHEEL_EVENT events too.
6021 (lispy_wheel_names, wheel_syms): New.
6022 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
6023 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
6024 defined.
6025 (make_lispy_event): Add WHEEL_EVENT handler.
6026
6027 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
6028 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
6029 WHEEL_EVENT events.
6030
6031 2003-05-31 John Paul Wallington <jpw@gnu.org>
6032
6033 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
6034 timer are in lisp/emacs-lisp.
6035
6036 2003-05-31 Kenichi Handa <handa@m17n.org>
6037
6038 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
6039 region when a buffer is changed to unibyte.
6040
6041 * charset.h (VALID_LEADING_CODE_P): New macro.
6042 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
6043
6044 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
6045 is nonzero, accept multibyte form of eight-bit-control chars.
6046 (decode_composition_emacs_mule): Likewise.
6047 (decode_coding_emacs_mule): Likewise.
6048 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
6049 multibyte form of eight-bit-control chars.
6050
6051 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
6052 (Finsert_file_contents): If coding-system-for-read is bound to
6053 Qauto_save_coding, use the coding system emacs-mule with special
6054 setting for recovering a file.
6055 (choose_write_coding_system): On auto saving, use the coding
6056 system emacs-mule with special setting for auto saving.
6057 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
6058
6059 2003-05-30 Kenichi Handa <handa@m17n.org>
6060
6061 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
6062 properly before calling ccl_driver.
6063
6064 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
6065
6066 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
6067 nonzero.
6068 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
6069 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
6070
6071 2003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
6072
6073 * xfaces.c (realize_default_face): Do not abort if lface is
6074 non-existent - reverts change from 2003-05-19.
6075
6076 2003-05-29 Kenichi Handa <handa@m17n.org>
6077
6078 * coding.c (decode_coding_iso2022): Pay attention to the byte
6079 sequence of CTEXT extended segment, and retain those bytes as is.
6080
6081 2003-05-28 Kenichi Handa <handa@m17n.org>
6082
6083 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
6084 of CODING_REPLACEMENT_CHARACTER.
6085 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
6086 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
6087 check this flag on encoding.
6088 (encode_coding_sjis_big5): Check
6089 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
6090 (Fset_terminal_coding_system_internal): Set
6091 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
6092 instead of setting CODING_FLAG_ISO_SAFE flag in
6093 terminal_coding.flags.
6094
6095 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
6096 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
6097 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
6098
6099 2003-05-28 Richard M. Stallman <rms@gnu.org>
6100
6101 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
6102
6103 * eval.c (unbind_to): Move init of this_binding to separate statement.
6104
6105 2003-05-28 Kim F. Storm <storm@cua.dk>
6106
6107 * xdisp.c (expose_window): Fix error in calculation of
6108 window relative coordinates of area to redisplay.
6109
6110 2003-05-27 Jason Rumney <jasonr@gnu.org>
6111
6112 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
6113
6114 2003-05-27 David Ponce <david@dponce.com>
6115
6116 Handle W32 mouse wheel events as mouse click events, like in X.
6117
6118 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
6119 MOUSE_WHEEL_EVENT anymore.
6120
6121 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
6122 Scrolling down/up the mouse wheel is respectively mapped to mouse
6123 button 4 and 5.
6124 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
6125 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
6126 WM_MOUSEWHEEL events.
6127
6128 2003-05-27 Andreas Schwab <schwab@suse.de>
6129
6130 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
6131
6132 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
6133 partially visible line.
6134
6135 * alloc.c (Fgarbage_collect): Fix last change.
6136
6137 2003-05-26 John Paul Wallington <jpw@gnu.org>
6138
6139 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
6140
6141 2003-05-25 Stefan Monnier <monnier@cs.yale.edu>
6142
6143 * window.c (Fset_window_buffer): Add type of `keep_margins'.
6144 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
6145
6146 * window.h (window_box_text_cols): Declare.
6147
6148 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
6149 (x_draw_vertical_border): Remove unused var `f'.
6150
6151 * xfaces.c (build_scalable_font_name): Remove `unused var
6152 pixel_size' warning.
6153
6154 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
6155
6156 * unexelf.c (unexec): Remove `unused var n' warning.
6157
6158 * strftime.c (my_strftime_localtime_r): Remove `defined but
6159 unused' warning.
6160
6161 * process.c (allocate_pty): Remove `unused var stb' and
6162 `cp might be used uninitialized' warnings.
6163
6164 * dispnew.c (mode_line_string): Remove unused var `f'.
6165
6166 * coding.c (find_safe_codings): Remove unused var `i'.
6167
6168 * bytecode.c (Fbyte_code): Remove `unused val' warning.
6169
6170 * buffer.c (Fkill_buffer): Remove unused var `list'.
6171
6172 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
6173
6174 2003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6175
6176 * frame.c (make_frame): Condition want_fullscreen with
6177 HAVE_WINDOW_SYSTEM.
6178
6179 2003-05-25 Juanma Barranquero <lektu@terra.es>
6180
6181 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
6182 (Fwindow_scroll_bars): Fix typo in docstring.
6183
6184 2003-05-24 Kim F. Storm <storm@cua.dk>
6185
6186 The following changes serve several purposes:
6187
6188 1) Swap the position of fringes and display margins in windows, i.e.
6189 the fringes are now displayed between the margins and the text area
6190 (by default).
6191
6192 2) Allow fringe and scroll bar parameters to be set per-buffer and
6193 per-window (like display margins). Such settings are now stored
6194 in window configurations, preserved when frames are resized, and
6195 copied when windows are split vertically or horizontally.
6196 Several bugs related to display margins have been fixed.
6197
6198 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
6199
6200 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
6201 rather than FRAME_WIDTH (FRAME_FONT (f)).
6202
6203 5) Introduce a consistent naming of variables, members and macros
6204 depending on whether their value is measured in pixels or in
6205 canonical columns/lines. Pixel dimensions are named *_width and
6206 *_height, while canonical columns/lines are named *_cols and
6207 *_lines. Pixel positions are named *_x and *_y, while column/line
6208 positions are named *_col and *_line.
6209
6210 6) Consolidate more of the X, W32, and MAC gui code by moving
6211 common data into struct frame, and generalize it for the non-gui
6212 case by using suitable defaults.
6213
6214 7) Cleanup and consolidate the macros controlling frame and window
6215 layout into frame.h and window.h, and generalize the use of the
6216 various window_box_* functions (enhanced to handle the new fringe
6217 position and the per-window fringe and scroll bar settings).
6218
6219 * frame.h (struct frame): Rename members height to text_lines,
6220 width to text_cols, window_height to total_lines, window_width to
6221 total_cols, new_height to new_text_lines, new_width to
6222 new_text_cols. All uses changed.
6223 (struct frame): New members which consolidate common members of
6224 x_output, w32_output, and mac_output structures: left_pos,
6225 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
6226 win_gravity, size_hint_flags, border_width, internal_border_width,
6227 line_height, fringe_cols, left_fringe_width, right_fringe_width,
6228 want_fullscreen. All uses changed.
6229 (struct frame): New member column_width contaning the canonical
6230 column width, analogue to line_height. All uses changed.
6231 (struct frame): Rename members scroll_bar_pixel_width to
6232 config_scroll_bar_width, and scroll_bar_cols to
6233 config_scroll_bar_cols. All uses changed.
6234 (struct frame): New member scroll_bar_actual_width which
6235 consolidates and renames the vertical_scroll_bar_extra member of
6236 x_output, w32_output, and mac_output structures. All uses changed.
6237 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
6238 from x/w32/macterm.h files. All uses changed. Also change code
6239 which referred to f->output_data...->pixel_height.
6240 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
6241 from x/w32/macterm.h files. All uses changed. Also change code
6242 which referred to f->output_data...->pixel_width.
6243 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
6244 Also change code which referred to f->height.
6245 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
6246 Also change code which referred to f->width.
6247 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
6248 to update new_text_lines and new_text_cols members directly.
6249 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
6250 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
6251 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
6252 FRAME_SCROLL_BAR_COLS. All uses changed.
6253 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
6254 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
6255 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
6256 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
6257 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
6258 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
6259 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
6260 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
6261 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
6262 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
6263 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
6264 return line_height member (it now has proper value also for
6265 non-window frames).
6266 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
6267 return new column_width member (rather than the default font width).
6268 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
6269 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
6270 from x/w32/macterm.h files. Unconditionally return corresponding
6271 member of frame structure (they now have proper values also for
6272 non-window frames).
6273 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
6274 Calculate return value from left and right widths.
6275 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
6276 internal_border_width member (has proper value for non-window frame).
6277 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
6278 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
6279 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
6280 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
6281 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
6282 consolidated from xterm.h, macterm.h, and w32term.h.
6283 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
6284 consolidated from xterm.h, macterm.h, and w32term.h.
6285 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
6286 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
6287 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
6288 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
6289 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
6290 consolidated from x/mac/w32term.h.
6291 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
6292 consolidated from x/mac/w32term.h.
6293 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
6294 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
6295 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
6296 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
6297
6298 * window.h (struct window): Rename members left to left_col,
6299 top to top_line, height to total_lines, width to total_cols,
6300 left_margin_width to left_margin_cols, right_margin_width to
6301 right_margin_cols, orig_height to orig_total_lines, orig_top to
6302 orig_top_line. All uses changed.
6303 (struct window): New members left_fringe_width, right_fringe_width,
6304 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
6305 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
6306 New macros primarily used to simplify other macros.
6307 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
6308 referred to XINT (w->width).
6309 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
6310 referred to XINT (w->height).
6311 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
6312 referred to XINT (w->width) * canon_x_unit.
6313 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
6314 referred to XINT (w->height) * canon_y_unit.
6315 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
6316 referred to XINT (w->left).
6317 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
6318 all uses and code that referred to XINT (w->left) + XINT (w->width).
6319 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
6320 referred to XINT (w->top).
6321 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
6322 referred to XINT (w->top) + XINT (w->height).
6323 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
6324 referred to XINT (w->left) * canon_x_unit.
6325 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
6326 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
6327 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
6328 referred to XINT (w->top) * canon_y_unit.
6329 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
6330 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
6331 (WINDOW_LEFTMOST_P): New macro.
6332 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
6333 All uses changed.
6334 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
6335 All uses changed.
6336 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
6337 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
6338 Do not exclude left fringe width.
6339 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
6340 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
6341 Do not exclude fringe widths.
6342 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
6343 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
6344 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
6345 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
6346 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
6347 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
6348 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
6349 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
6350 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
6351 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
6352 New macros. Change code which referenced corresponding
6353 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
6354 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
6355 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
6356 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
6357 allow per-window scroll-bar settings.
6358 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
6359 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
6360 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
6361 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
6362 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
6363 FRAME_SCROLL_BAR_WIDTH.
6364 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
6365 (WINDOW_SCROLL_BAR_AREA_X): New macros.
6366 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
6367 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
6368 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
6369 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
6370 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
6371 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
6372 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
6373 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
6374 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
6375 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
6376 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
6377 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
6378 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
6379 (window_from_coordinates): Update prototype.
6380 (Fset_window_buffer): Update EXFUN.
6381 (set_window_buffer): Update prototype.
6382
6383 * dispextern.h (struct glyph_matrix): Rename members window_left_x
6384 to window_left_col, window_top_y to window_top_line. All uses
6385 changed.
6386 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
6387 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
6388 internal_border_width is now set to 0 for non-window frames.
6389 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
6390 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
6391 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
6392 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
6393 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
6394 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
6395 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
6396 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
6397 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
6398 Move to window.h and renamed [see window.h changes].
6399 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
6400 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
6401 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
6402 Use WINDOW_TOTAL_LINES.
6403 (frame_update_line_height): Remove prototype.
6404
6405 * buffer.h (struct buffer): Rename members measured in columns:
6406 left_margin_width to left_margin_cols, right_margin_width to
6407 right_margin_cols. All uses changed.
6408 New members left_fringe_width, right_fringe_width,
6409 fringes_outside_margins for per-buffer fringe settings.
6410 New members scroll_bar_width and vertical_scroll_bar_type for
6411 per-buffer scroll bar settings.
6412
6413 * buffer.c (init_buffer_once): Set buffer_defaults and
6414 buffer_local_flags for new buffer-local variables
6415 left_fringe_width, right_fringe_width, fringes_outside_margins,
6416 scroll_bar_width, and vertical_scroll_bar_type.
6417 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
6418 default-* variables for them.
6419
6420 * dispnew.c: Make (many) trivial substitutions for renamed and
6421 new macros in dispextern.h, frame.h and window.h.
6422 (mode_line_string): No need to adjust width for mode lines, as it
6423 is already adjusted by the caller.
6424 (marginal_area_string): Handle fringes inside/outside margins.
6425
6426 * frame.c: Make (many) trivial substitutions for renamed and
6427 new macros in dispextern.h, frame.h and window.h.
6428 (make_frame): Initialize left_fringe_width, right_fringe_width,
6429 fringe_cols, scroll_bar_actual_width, border_width,
6430 internal_border_width, column_width, line_height, x_pixels_diff,
6431 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
6432 members with values suitable for a non-window frames.
6433
6434 * gtkutil.c: Make (many) trivial substitutions for renamed and
6435 new macros in dispextern.h, frame.h and window.h.
6436
6437 * indent.c: Make (few) trivial substitutions for renamed and
6438 new macros in dispextern.h, frame.h and window.h.
6439
6440 * keyboard.c: Make (many) trivial substitutions for renamed and
6441 new macros in dispextern.h, frame.h and window.h.
6442 (make_lispy_event): Use window positions returned from
6443 window_from_coordinates when constructing the lisp event for
6444 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
6445 (incorrect) values locally.
6446 (make_lispy_movement): Use window positions returned from
6447 window_from_coordinates when constructing the lisp event, rather
6448 than calculating (incorrect) values locally.
6449
6450 * scroll.c: Make (some) trivial substitutions for renamed and
6451 new macros in dispextern.h, frame.h and window.h.
6452
6453 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
6454 scroll-bars.
6455
6456 * sysdep.c: Make (few) trivial substitutions for renamed and
6457 new macros in dispextern.h, frame.h and window.h.
6458
6459 * term.c: Make (some) trivial substitutions for renamed and
6460 new macros in dispextern.h, frame.h and window.h.
6461
6462 * widget.c: Make (few) trivial substitutions for renamed and
6463 new macros in dispextern.h, frame.h and window.h.
6464
6465 * window.c: Make (many) trivial substitutions for renamed and
6466 new macros in dispextern.h, frame.h and window.h.
6467 (make_window): Initialize new members
6468 left_margin_cols, right_margin_cols, left_fringe_width,
6469 right_fringe_width, fringes_outside_margins, scroll_bar_width,
6470 and vertical_scroll_bar_type.
6471 (coordinates_in_window): Adapted to new fringe/margin positions
6472 and per-window fringes and scroll-bars.
6473 Fix bug related to incorrectly adjusting coordinates by
6474 frame's internal_border_width (the effect normally negible since
6475 the internal_border_width is typically 0 or 1 pixel, but very
6476 noticeable for an internal_border_width of e.g. 25 pixels).
6477 Upon successful return (other than ON_NOTHING), the coordinates
6478 are now always properly converted to window relative for the
6479 given display element.
6480 (window_from_coordinates): Add new parameters wx and wy to
6481 return the window relative x and y position in the returned
6482 window and part. A null arg means, don't return the position.
6483 All callers changed.
6484 (adjust_window_margins): New function which may reduce the width
6485 of the display margins if a window's text area is too small after
6486 resizing or splitting windows.
6487 (size_window): Fix bug that did not account for display margin
6488 widths when checking the minimum width of a window; use
6489 adjust_window_margins.
6490 (set_window_buffer): Call Fset_window_fringes and
6491 Fset_window_scroll_bars to setup per-window elements.
6492 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
6493 existing display margin, fringe widths, and scroll bar settings
6494 (e.g. after splitting a window or resizing the frame).
6495 All callers changed.
6496 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
6497 (Fsplit_window): Duplicate original window's display margin,
6498 fringe, and scroll-bar settings; then call Fset_window_buffer with
6499 KEEP_MARGINS non-nil. This fixes a bug which caused a split
6500 window to only preserve the display margins in one of the windows.
6501 When splitting horizontally, call adjust_window_margins on both
6502 windows to ensure that the text area of the new windows is non too
6503 narrow. This fixes a bug which could cause Emacs to trap if the
6504 width of the split window was less than the width of the display
6505 margins.
6506 (window_box_text_cols): Renamed from window_internal_width.
6507 All uses changed. Adapt to per-window fringes and scroll bars.
6508 Fix bug that caused vertical separator to be subtracted also on
6509 window frames. Fix another bug that did not reduce the returned
6510 value by the columns used for display margins.
6511 (window_scroll_line_based): Fix bug related to scrolling too much
6512 when display margins are present (implicitly fixed by the fix to
6513 window_box_text_cols).
6514 (scroll_left, scroll_right): Fix bug related to scrolling too far
6515 by default when display margins are present (implicitly fixed by
6516 the fix to window_box_text_cols).
6517 (struct saved_window): Rename members left to left_col, top to
6518 top_line, width to total_cols, height to total_lines, orig_top to
6519 orig_top_line, orig_height to orig_total_lines. All uses changed.
6520 New members left_margin_cols, right_margin_cols,
6521 left_fringe_width, right_fringe_width, fringes_outside_margins,
6522 scroll_bar_width, and vertical_scroll_bar_type for saving
6523 per-window display elements.
6524 (Fset_window_configuration): Restore display margins, fringes,
6525 and scroll bar settings. This fixes a bug which caused display
6526 margins to be discarded when saving and restoring a window
6527 configuration.
6528 (save_window_save): Save display margins, fringes, and scroll bar
6529 settings. This fixes a bug which caused display margins to be
6530 discarded when saving and restoring a window configuration.
6531 (Fset_window_margins): Do nothing if display margins are not
6532 really changed. Otherwise, call adjust_window_margins to ensure
6533 the text area doesn't get too narrow. This fixes a bug which
6534 could cause Emacs to trap if setting display margins wider than
6535 the width of the window.
6536 (Fset_window_fringes): New defun to allow user to specifically set
6537 this window's fringe widths and position vs. display margins.
6538 (Fwindow_fringes): New defun to return window's actual fringe
6539 settings.
6540 (Fset_window_scroll_bars): New defun to allow user to specifically
6541 set this window's scroll bar width and position.
6542 (Fwindow_scroll_bars): New defun to return window's actual scroll
6543 bar settings.
6544 (compare_window_configurations): Also compare display margins,
6545 fringes, and scroll bar settings.
6546 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
6547
6548 * xdisp.c: Make (many) trivial substitutions for renamed and
6549 new macros in dispextern.h, frame.h and window.h.
6550 (window_box_width): Adapt to per-window fringes and scroll bars,
6551 and new fringe vs. display margin position. Note that returned
6552 value is no longer guaranteed to be a whole multiple of the frame
6553 column width, since per-window fringes may now be any width.
6554 (window_box_left_offset): New function like window_box_left, but
6555 value is relative to left border of window (rather than frame).
6556 (window_box_right_offset): New function like window_box_right,
6557 but value is relative to left border of window.
6558 (window_box_left): Adapt to per-window fringes and scroll bars,
6559 and new fringe vs. display margin position. Simplify by using
6560 WINDOW_LEFT_EDGE_X and window_box_left_offset.
6561 (window_box): Allow null args for unnecessary return values;
6562 change/simplify relevant callers.
6563 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
6564 and new fringe vs. display margin position.
6565 Use window_box_left_offset and window_box_right_offset
6566 (get_glyph_string_clip_rect): Adapt to per-window fringes and
6567 scroll bars, and new fringe vs. display margin position.
6568 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
6569 (draw_fringe_bitmap): Rework to handle per-window fringes and new
6570 fringe vs. display margin position.
6571 (hscroll_window_tree): Use window_box_width instead of window_box.
6572 (redisplay_window): Adapt to per-window scroll bars.
6573 (draw_glyphs): Rework to handle per-window fringes and scroll
6574 bars, and new fringe vs. display margin position.
6575 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
6576 (x_clear_end_of_line): Adapt to per-window fringes and scroll
6577 bars, and new fringe vs. display margin position. Fix bug which
6578 increased total width of full_width rows by width of scroll bars
6579 although window's total width already includes that.
6580 (x_fix_overlapping_area): Simplify using window_box_left_offset.
6581 (expose_area): Simplify using window_box_left_offset.
6582 (x_draw_vertical_border): Handle per-window scroll bar settings,
6583 mixing windows with left, right and no scroll bars.
6584
6585 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
6586 where it's used in x_list_fonts (for clarity).
6587 (frame_update_line_height): Remove unused function; functionality
6588 is now done directly when setting the default font in x_set_font.
6589
6590 * xfns.c: Make (many) trivial substitutions for renamed and
6591 new macros in dispextern.h, frame.h and window.h.
6592
6593 * xmenu.c: Make (some) trivial substitutions for renamed and
6594 new macros in dispextern.h, frame.h and window.h.
6595
6596 * xterm.h (struct x_output): Move members left_pos, top_pos,
6597 border_width, pixel_height, pixel_width, line_height,
6598 internal_border_width, vertical_scroll_bar_extra,
6599 left_fringe_width, right_fringe_width, fringe_cols,
6600 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6601 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
6602 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6603 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6604 (PIXEL_WIDTH, PIXEL_HEIGHT)
6605 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6606 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6607 frame.h and renamed [see frame.h changes].
6608 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6609 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6610 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6611 and renamed [see frame.h changes].
6612
6613 * xterm.c: Make (several) trivial substitutions for renamed and
6614 new macros in dispextern.h, frame.h and window.h.
6615 (x_draw_glyph_string_box): Adapt to per-window fringes and
6616 scroll-bars.
6617 (scroll_run): Adapt to new fringe position.
6618 (glyph_rect): Use window coordinates returned from
6619 window_from_coordinates rather than frame_to_window_pixel_xy.
6620 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6621 scroll-bars.
6622 (handle_one_xevent): Simplify a USE_GTK conditional.
6623 (x_clip_to_row): Remove superfluous whole_line_p arg and code
6624 (fringes are now inside margins, i.e. always in the clipping area).
6625 All callers changed.
6626 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6627 directly, then call compute_fringe_widths. Don't call
6628 frame_update_line_height.
6629
6630 * w32term.h (struct w32_output): Move members left_pos, top_pos,
6631 border_width, pixel_height, pixel_width, line_height,
6632 internal_border_width, vertical_scroll_bar_extra,
6633 left_fringe_width, right_fringe_width, fringe_cols,
6634 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6635 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
6636 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6637 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6638 (PIXEL_WIDTH, PIXEL_HEIGHT)
6639 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6640 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6641 frame.h and renamed [see frame.h changes].
6642 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6643 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6644 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6645 and renamed [see frame.h changes].
6646
6647 * w32term.c: Make (several) trivial substitutions for renamed and
6648 new macros in dispextern.h, frame.h and window.h.
6649 (x_draw_glyph_string_box): Adapt to per-window fringes and
6650 scroll-bars.
6651 (glyph_rect): Use window coordinates returned from
6652 window_from_coordinates rather than frame_to_window_pixel_xy.
6653 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6654 scroll-bars.
6655 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
6656 (fringes are now inside margins, i.e. always in the clipping area).
6657 All callers changed.
6658 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6659 directly, then call compute_fringe_widths. Don't call
6660 frame_update_line_height.
6661
6662 * w32console.c: Make (few) trivial substitutions for renamed and
6663 new macros in dispextern.h, frame.h and window.h.
6664
6665 * w32fns.c: Make (many) trivial substitutions for renamed and
6666 new macros in dispextern.h, frame.h and window.h.
6667
6668 * w32menu.c: Make (few) trivial substitutions for renamed and
6669 new macros in dispextern.h, frame.h and window.h.
6670
6671 * macterm.h (struct mac_output): Move members left_pos, top_pos,
6672 border_width, pixel_height, pixel_width, line_height,
6673 internal_border_width, vertical_scroll_bar_extra,
6674 left_fringe_width, right_fringe_width, fringe_cols,
6675 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6676 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
6677 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6678 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6679 (PIXEL_WIDTH, PIXEL_HEIGHT)
6680 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6681 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6682 frame.h and renamed [see frame.h changes].
6683 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6684 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6685 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6686 and renamed [see frame.h changes].
6687
6688 * macterm.c: Make (several) trivial substitutions for renamed and
6689 new macros in dispextern.h, frame.h and window.h.
6690 (x_draw_glyph_string_box): Adapt to per-window fringes and
6691 scroll-bars.
6692 (glyph_rect): Use window coordinates returned from
6693 window_from_coordinates rather than frame_to_window_pixel_xy.
6694 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6695 scroll-bars.
6696 (x_clip_to_row): Remove superfluous whole_line_p arg and code
6697 (fringes are now inside margins, i.e. always in the clipping area).
6698 All callers changed.
6699 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6700 directly, then call compute_fringe_widths. Don't call
6701 frame_update_line_height.
6702
6703 * macfns.c: Make (several) trivial substitutions for renamed and
6704 new macros in dispextern.h, frame.h and window.h.
6705 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
6706
6707 * macmenu.c: Make (few) trivial substitutions for renamed and
6708 new macros in dispextern.h, frame.h and window.h.
6709
6710 * msdos.h (struct x_output): Remove members left_pos, top_pos,
6711 and line_height, and use corresponding new members in struct
6712 frame. All uses changed.
6713 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
6714 superseeded by corresponding macros in frame.h.
6715
6716 * msdos.c: Make (several) trivial substitutions for renamed and
6717 new macros in dispextern.h, frame.h and window.h.
6718 (IT_note_mouse_highlight): Use updated window coordinates returned
6719 by window_from_coordinates, rather than adjusting them locally.
6720 (internal_terminal_init): No need to initialize line_height here;
6721 it now defaults to 1.
6722
6723 2003-05-24 Stefan Monnier <monnier@cs.yale.edu>
6724
6725 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
6726 dropping `down' events.
6727
6728 2003-05-24 Andreas Schwab <schwab@suse.de>
6729
6730 * coding.c (find_safe_codings): Fix last change.
6731
6732 2003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
6733
6734 * xfns.c (x_window): Fix typo from 2003-05-21 change.
6735
6736 2003-05-23 Stefan Monnier <monnier@cs.yale.edu>
6737
6738 * xdisp.c (display_mode_element): Increase max depth.
6739 Simplify the error handling code. Use a different error string
6740 for the case where we hit the depth limit.
6741
6742 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
6743
6744 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
6745
6746 2003-05-21 Stefan Monnier <monnier@cs.yale.edu>
6747
6748 * intervals.c (get_local_map): Don't get char-property of previous
6749 point any more: get_pos_property already does it and better.
6750
6751 2003-05-21 Dave Love <fx@gnu.org>
6752
6753 [Merged from unicode branch.]
6754
6755 * xfns.c (x_window, x_window): Use use_xim.
6756
6757 * xterm.c (use_xim): Initialize.
6758 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
6759 (x_term_init): Maybe set use_xim.
6760
6761 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
6762
6763 2003-05-21 Jason Rumney <jasonr@gnu.org>
6764
6765 * unexw32.c (_start): Remove _fmode initialization.
6766
6767 * emacs.c (main) [WINDOWSNT]: Move it here.
6768
6769 2003-05-20 Dave Love <fx@gnu.org>
6770
6771 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
6772
6773 2003-05-19 Richard M. Stallman <rms@gnu.org>
6774
6775 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
6776 as value for QCfont attribute.
6777 (realize_default_face): lface should already exist; crash if not.
6778 Specify 0 for FORCE_P when calling set_lface_from_font_name.
6779
6780 * frame.c (Fignore_event): Doc fix.
6781
6782 2003-05-19 Kenichi Handa <handa@m17n.org>
6783
6784 * coding.c (decode_coding_string): Handle post-read-conversion
6785 even if the coding doesn't require decoding.
6786
6787 2003-05-18 Richard M. Stallman <rms@gnu.org>
6788
6789 * callproc.c (Fcall_process_region): Doc fix.
6790
6791 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
6792
6793 * lread.c (Fload): Print a message if package is obsolete.
6794
6795 * window.c (Fselect_window): Add optional `norecord' arg.
6796 (select_window_1): Fold into Fselect_window.
6797 (select_window_norecord): New function.
6798 (temp_output_buffer_show): Use it. Preserve current buffer.
6799
6800 * window.h (Fselect_window): Update declaration.
6801
6802 * window.c (delete_window, Fother_window, Fset_window_configuration):
6803 * minibuf.c (read_minibuf):
6804 * macterm.c (x_new_focus_frame):
6805 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
6806 * callint.c (Fcall_interactively):
6807 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
6808
6809 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
6810
6811 2003-05-17 David Kastrup <dak@gnu.org>
6812
6813 * process.c (read_process_output): Back out change from 2003-03-09.
6814
6815 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
6816
6817 * editfns.c (get_pos_property): Don't assume that `object' = nil.
6818
6819 * textprop.c (text_property_stickiness): New arg `buffer'.
6820
6821 * intervals.h (text_property_stickiness): New arg `buffer'.
6822 (get_pos_property): Declare.
6823
6824 * intervals.c (get_local_map): Use get_pos_property, to obey
6825 stickiness and empty overlays.
6826 (create_root_interval, graft_intervals_into_buffer): Use BEG.
6827 (merge_properties, intervals_equal, merge_properties_sticky):
6828 Use XCAR, XCDR.
6829 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
6830
6831 2003-05-17 Richard M. Stallman <rms@gnu.org>
6832
6833 * minibuf.c (read_minibuf): If buffer is empty, record the default
6834 in the history.
6835 (Fminibuffer_complete_word): When deleting the overlap, take account
6836 of its real position.
6837
6838 * fns.c (map_char_table): Fix previous change.
6839
6840 * syntax.c (find_defun_start):
6841 When open_paren_in_column_0_is_defun_start,
6842 return beginning of buffer.
6843
6844 * lisp.h (map_char_table): Declare added arg.
6845
6846 * fns.c (map_char_table): New arg TABLE gets the master table.
6847 All calls changed.
6848 Process default and inheritance, resorting to Faref if necessary.
6849
6850 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
6851 (Faccessible_keymaps): Pass new arg to map_char_table.
6852
6853 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
6854
6855 * casetab.c (set_case_table): Pass new arg to map_char_table.
6856
6857 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
6858
6859 * lisp.h (specbinding_func): New typedef.
6860 (struct specbinding): Use specbinding_func, to put the `volatile'
6861 in the right place.
6862
6863 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
6864 to avoid GCC warning.
6865
6866 2003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
6867
6868 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
6869
6870 2003-05-15 Stefan Monnier <monnier@cs.yale.edu>
6871
6872 * keyboard.c (apply_modifiers): Don't fill the other cache.
6873
6874 2003-05-14 Stefan Monnier <monnier@cs.yale.edu>
6875
6876 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
6877
6878 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
6879 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
6880 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
6881 (Fset_window_configuration, Fcurrent_window_configuration)
6882 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
6883 (Fpos_visible_in_window_p, mark_window_cursors_off)
6884 (window_internal_height, window_internal_width, Frecenter)
6885 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
6886 (replace_buffer_in_all_windows, init_window_once, init_window)
6887 (syms_of_window, keys_of_window): Move from lisp.h.
6888 * lisp.h: Move window.c declarations to window.h.
6889
6890 * bytecode.c: Include window.h.
6891 * emacs.c: Include window.h.
6892
6893 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
6894 (keyremap): Add `parent' field.
6895 (keyremap_step): Use it. Remove `parent' argument.
6896 (read_key_sequence): Setup and use the new `parent' field.
6897
6898 2003-05-11 Stefan Monnier <monnier@cs.yale.edu>
6899
6900 * keyboard.c (adjust_point_for_property): Ensure termination.
6901
6902 2003-05-10 Stefan Monnier <monnier@cs.yale.edu>
6903
6904 * keyboard.c (follow_key): Remove dead variable `did_meta'.
6905 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
6906 duplicated handling of function-key-map and key-translation-map
6907 in read_key_sequence.
6908 (read_key_sequence): Use them.
6909
6910 * keyboard.c (adjust_point_for_property): Try harder to move point
6911 to the non-sticky end of an invisible property.
6912
6913 * xdisp.c (single_display_prop_intangible_p): Make `space' display
6914 property intangible as well.
6915
6916 2003-05-10 Andreas Schwab <schwab@suse.de>
6917
6918 * xmenu.c (single_menu_item): Change last parameter to void* to
6919 avoid warning.
6920
6921 2003-05-09 Richard M. Stallman <rms@gnu.org>
6922
6923 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
6924 Bind Qinhibit_modification_hooks to t so there will be no GC.
6925 Rename local `tem' to `save_deactivate_mark'.
6926
6927 * eval.c (specpdl_ptr): Declare volatile.
6928 (unbind_to): Copy the whole binding and decrement specpdl_ptr
6929 before doing the work of unbinding it.
6930
6931 * lisp.h (struct specbinding): Declare elements volatile.
6932 (specpdl_ptr): Declare volatile.
6933
6934 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
6935
6936 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
6937 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
6938
6939 2003-05-08 Dave Love <fx@gnu.org>
6940
6941 * coding.c (Vlast_coding_system_used): Doc fix.
6942
6943 2003-05-07 Jason Rumney <jasonr@gnu.org>
6944
6945 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
6946 when system does not support them.
6947
6948 2003-05-05 Stefan Monnier <monnier@cs.yale.edu>
6949
6950 * fileio.c (Qwrite_region_annotate_functions): New var.
6951 (build_annotations): Use it to process the global part of the hook.
6952 (syms_of_fileio): Init and staticpro it.
6953
6954 * keyboard.c (safe_run_hooks_error): Display a message instead of
6955 silently ignoring the error.
6956
6957 2003-05-03 Stefan Monnier <monnier@cs.yale.edu>
6958
6959 * keyboard.c (input_available_signal): Mark static.
6960 (menu_bar_items): Use map_keymap.
6961 (menu_bar_one_keymap): Remove.
6962 (menu_bar_item): Adjust arglist (for use in map_keymap).
6963 Properly hide a second binding when not both are keymaps.
6964
6965 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
6966 (single_keymap_panes): Use it and map_keymap.
6967 (single_menu_item): Use skp as well.
6968
6969 * keymap.h (map_keymap_function_t): New type.
6970 (map_keymap): Declare.
6971
6972 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
6973 (map_keymap_call, Fmap_keymap): New functions.
6974 (syms_of_keymap): Defsubr map-keymap.
6975
6976 2003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6977
6978 * gtkutil.c (create_dialog, make_widget_for_menu_item)
6979 (make_menu_item, create_menus, xg_update_menu_item): Don't call
6980 ..._with_mnemonic functions for menu items.
6981
6982 2003-05-01 Kenichi Handa <handa@m17n.org>
6983
6984 * coding.c (coding_system_accept_latin_extra_p): Delete this
6985 function.
6986 (find_safe_codings): Pay attention to
6987 the property tranlsation-table-for-encode of each codings.
6988 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
6989
6990 2003-05-01 Stefan Monnier <monnier@cs.yale.edu>
6991
6992 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
6993
6994 2003-04-30 Stefan Monnier <monnier@cs.yale.edu>
6995
6996 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
6997
6998 * lisp.h (CHECK): Wrap args in parenthesis.
6999 (specbind): Fix doc: symbol = Qnil is not supported any more.
7000
7001 * bytecode.c (Fbyte_code) <unwind-protect>:
7002 Use Fprogn rather than 0 and Qnil.
7003
7004 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
7005 `double', and `triple' modifiers as well.
7006
7007 2003-04-30 Richard M. Stallman <rms@gnu.org>
7008
7009 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
7010
7011 * alloc.c (abort_on_gc): New variable.
7012 (Fgarbage_collect): Abort if abort_on_gc is set.
7013
7014 * lisp.h (abort_on_gc): Add decl.
7015
7016 * eval.c (Fsignal): Clear abort_on_gc.
7017
7018 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
7019 Reinit FORMAT_START and END before second scan.
7020
7021 * xdisp.c (move_it_vertically_backward): Do the final big else
7022 even if nlines is 0.
7023
7024 * xdisp.c (redisplay_internal): Finish the per-frame loop
7025 even if redisplay is suspended by input.
7026
7027 2003-04-24 Andrew Choi <akochoi@shaw.ca>
7028
7029 * macterm.c (x_list_fonts): Return all fonts that match if
7030 maxnames = -1.
7031
7032 2003-04-25 Kenichi Handa <handa@m17n.org>
7033
7034 * syntax.c (skip_chars): Fix previous change.
7035
7036 2003-04-24 Kenichi Handa <handa@m17n.org>
7037
7038 * syntax.c (skip_chars): Make the code faster by using the common
7039 technique of *p, *stop, and *endp.
7040
7041 2003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7042
7043 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
7044 tool_bar_items so GTK tool bar expose callback does not access items
7045 being updated.
7046
7047 2003-04-19 Stefan Monnier <monnier@cs.yale.edu>
7048
7049 * eval.c (Fapply): Undo last change and add a comment about why.
7050
7051 2003-04-18 Miles Bader <miles@gnu.org>
7052
7053 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
7054 pickier PARSE_MULTIBYTE_SEQ.
7055
7056 2003-04-17 Stefan Monnier <monnier@cs.yale.edu>
7057
7058 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
7059 Use XCDR, XCAR, CONSP.
7060 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
7061 (Fapply): Remove unnecessary GCPRO.
7062
7063 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
7064
7065 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
7066
7067 * buffer.h: Don't hardcode BEG==1.
7068
7069 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
7070
7071 2003-04-16 Richard M. Stallman <rms@gnu.org>
7072
7073 * xdisp.c (try_window, try_window_reusing_current_matrix):
7074 When at end of window, set window_end_pos to Z-ZV.
7075
7076 * buffer.c (Foverlay_recenter): Doc fix.
7077
7078 2003-04-14 Stefan Monnier <monnier@cs.yale.edu>
7079
7080 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
7081
7082 2003-04-14 Andrew Choi <akochoi@shaw.ca>
7083
7084 * macterm.c (mac_check_for_quit_char): Don't check more often than
7085 once a second.
7086
7087 2003-04-11 Stefan Monnier <monnier@cs.yale.edu>
7088
7089 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
7090 specially, so that they can't hide an implicit switch-frame event.
7091 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
7092 (head_table): Use switch-frame as event_kind for select-window.
7093 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
7094
7095 * editfns.c (Fformat): Lisp_Object/int mixup.
7096 (format2): Remove unused var numargs.
7097
7098 2003-04-11 Kenichi Handa <handa@m17n.org>
7099
7100 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
7101 (Qafter_insert_file_set_coding): New variable.
7102 (syms_of_fileio): Initialize and staticpro it. Delete declaration
7103 for after-insert-file-adjust-coding-function.
7104 (Finsert_file_contents): Call Qafter_insert_file_set_coding
7105 instead of Vafter_insert_file_adjust_coding_function.
7106
7107 2003-04-11 Kenichi Handa <handa@m17n.org>
7108
7109 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
7110
7111 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
7112 string. Callers changed.
7113
7114 2003-04-10 Kenichi Handa <handa@m17n.org>
7115
7116 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
7117 (syms_of_fileio): Declare it as a lisp variable.
7118 (Finsert_file_contents):
7119 Call Vafter_insert_file_adjust_coding_function before calling
7120 decode-format.
7121
7122 2003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7123
7124 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
7125 get GtkAdjustment as widget now is a GtkRange.
7126
7127 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
7128 GtkRange to avoid memory leak.
7129
7130 2003-04-09 Kenichi Handa <handa@m17n.org>
7131
7132 * xfaces.c (Vface_font_rescale_alist): New variable.
7133 (struct font_name): New member rescale_ratio.
7134 (font_rescale_ratio): New function.
7135 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
7136 (better_font_p): On comparing point sized, pay attention to
7137 recale_ratio member of fonts.
7138 (build_scalable_font_name): Reflect font->rescale_ratio in the
7139 font name.
7140 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
7141
7142 * lread.c (read1): Before calling index, check if the 2nd
7143 arguemnt is in ASCII range.
7144
7145 2003-04-08 Richard M. Stallman <rms@gnu.org>
7146
7147 * fileio.c (Ffile_symlink_p): Doc fix.
7148
7149 * editfns.c (Fformat): Translate positions of text properties
7150 in the format string to apply them to the result.
7151
7152 * fileio.c (Finsert_file_contents): Doc fix.
7153 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
7154
7155 2003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
7156
7157 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
7158
7159 2003-04-08 Steven Tamm <steventamm@mac.com>
7160
7161 * mac.c (init_mac_osx_environment): Switch libexec and bin so
7162 that self-contained application finds libexec files.
7163
7164 2003-04-08 Kenichi Handa <handa@m17n.org>
7165
7166 * coding.c (code_convert_region_unwind):
7167 Set Vlast_coding_system_used to the argument.
7168 (code_convert_region): If post-read-conversion function changed
7169 the value of last-coding-sytem, keep the new value in
7170 coding->symbol so that it won't be overridden.
7171 (run_pre_post_conversion_on_str): Likewise.
7172 (coding_system_accept_latin_extra_p): New function.
7173 (find_safe_codings): Pay attention to characters registered in
7174 latin-extra-code-table.
7175
7176 2003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
7177
7178 * Makefile.in (md5.o): Add missing dependency info.
7179
7180 2003-04-06 Richard M. Stallman <rms@gnu.org>
7181
7182 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
7183
7184 * marker.c (verify_bytepos): New function.
7185
7186 * intervals.c (set_intervals_multibyte_1): When becoming
7187 multibyte, adjust right and left child sizes to a whole set of
7188 characters. If an interval gets zero total-length, delete it.
7189 If an interval consists of just its children, delete one of them.
7190
7191 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
7192 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
7193
7194 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
7195 All calls deleted.
7196 (lisp_malloc): Do the work here directly.
7197
7198 2003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
7199
7200 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
7201 char tables.
7202
7203 2003-04-04 Kenichi Handa <handa@m17n.org>
7204
7205 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
7206 destructively change "%S" to "%s".
7207
7208 2003-04-03 Miles Bader <miles@gnu.org>
7209
7210 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
7211 always set.
7212
7213 2003-04-01 Dave Love <fx@gnu.org>
7214
7215 * xfns.c (xpm_lookup_color): Grok "opaque".
7216
7217 2003-03-31 Andrew Choi <akochoi@shaw.ca>
7218
7219 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
7220 parent window ID.
7221
7222 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
7223
7224 * macterm.h (struct mac_output): Define x_pixels_diff and
7225 y_pixels_diff.
7226
7227 2003-03-31 Juanma Barranquero <lektu@terra.es>
7228
7229 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
7230 blockinput.h and files included from it.
7231
7232 2003-03-31 Kim F. Storm <storm@cua.dk>
7233
7234 The following changes consolidates the common code related to
7235 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
7236 files into frame.c.
7237
7238 * frame.c: Include blockinput.h.
7239 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
7240 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
7241 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
7242 related vars here.
7243 (struct frame_parm_table, frame_parms): New table for describing
7244 frame parameters and their associated Q-variable.
7245 The order of the parameters corresponds to the sequence of the
7246 frame_parm_handlers table in redisplay_interface.
7247 (x_fullscreen_move, x_set_frame_parameters)
7248 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
7249 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
7250 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7251 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
7252 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
7253 Generic functions for processing of frame parameters.
7254 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
7255 (display_x_get_resource, x_get_resource_string): Functions for
7256 generic access to X resources.
7257 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
7258 (x_default_parameter, Fx_parse_geometry): Functions for generic
7259 access to frame parameters.
7260 (x_figure_window_size): Generic calculation of frame size.
7261 Fixed to add space needed for tool bar. Also setup size_hint_flags.
7262 (syms_of_frame): Intern and staticpro frame parameter variables.
7263 Defvar_lisp Vx_resource_class and Vx_resource_name here.
7264 Defsubr Sx_get_resource and Sx_parse_geometry.
7265
7266 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
7267 parameter related vars defined in frame.c.
7268 (EMACS_CLASS): Define here.
7269 (enum FULLSCREEN_*): Define here.
7270 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
7271 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
7272 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
7273 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
7274 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
7275 (x_set_visibility, x_set_autoraise, x_set_autolower)
7276 (x_set_unsplittable, x_set_vertical_scroll_bars)
7277 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
7278 (x_figure_window_size): Add prototypes.
7279
7280 * dispextern.h (frame_parm_handler): New typedef.
7281 (struct redisplay_interface): New member frame_parm_handlers.
7282 (enum resource_types): Move declaration here.
7283 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
7284 (x_default_parameter): Add prototypes.
7285
7286 * window.c: Remove extern decl for frame parameter vars.
7287 (change_window_heights): New generic function;
7288 replaces x_change_window_heights. All users changed.
7289
7290 * window.h (change_window_heights): Add prototype.
7291
7292 * xfaces.c: Remove extern decl for frame parameter vars.
7293
7294 * xterm.h (EMACS_CLASS): Remove. Use generic define.
7295 (struct w32_display_info): Fix type of xrdb member.
7296 (enum FULLSCREEN_*): Remove.
7297 Remove prototypes for generic functions (in frame.h).
7298
7299 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
7300 parameters now defined in frame.h and frame.c.
7301 (Vx_resource_name): Remove. Use generic var.
7302 (enum x_frame_parms): Remove (bogus, unused enum).
7303 (check_x_display_info): Make non-static (for frame.c).
7304 (struct x_frame_parm_table, x_frame_parms): Remove.
7305 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
7306 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
7307 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7308 (x_change_window_heights, x_set_autoraise, x_set_autolower)
7309 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
7310 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
7311 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
7312 Remove. Use generic functions instead.
7313 (enum resource_types): Remove.
7314 (x_set_scroll_bar_default_width): New global function (for frame.c).
7315 (Fx_create_frame): Depend on x_figure_window_size to add space for
7316 toolbar and setup size_hint_flags.
7317 (x_frame_parm_handlers): New table for redisplay_interface.
7318 (syms_of_xfns): Don't intern/staticpro removed vars.
7319
7320 * xterm.c: Remove unnecessary extern declarations.
7321 (x_fullscreen_adjust): Remove. Use generic instead.
7322 (x_redisplay_interface): Add x_frame_parm_handlers member.
7323
7324 * w32gui.h (XrmDatabase): New (dummy) typedef.
7325
7326 * w32term.h (EMACS_CLASS): Remove. Use generic define.
7327 (struct w32_display_info): Fix type of xrdb member.
7328 (enum FULLSCREEN_*): Remove.
7329 (x_fullscreen_adjust): Remove prototype.
7330
7331 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
7332 parameters now defined in frame.h and frame.c.
7333 (Vx_resource_name): Remove. Use generic var.
7334 (enum x_frame_parms): Remove (bogus, unused enum).
7335 (check_x_display_info): Make non-static (for frame.c).
7336 (struct x_frame_parm_table, x_frame_parms): Remove.
7337 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
7338 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
7339 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7340 (x_change_window_heights, x_set_autoraise, x_set_autolower)
7341 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
7342 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
7343 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
7344 Remove. Use generic functions instead.
7345 (enum resource_types): Remove.
7346 (x_set_scroll_bar_default_width): New global function (for frame.c).
7347 (Fx_create_frame): Depend on x_figure_window_size to add space for
7348 toolbar and setup size_hint_flags.
7349 (w32_frame_parm_handlers): New table for redisplay_interface.
7350 (syms_of_w32fns): Don't intern/staticpro removed vars.
7351
7352 * w32term.c: Remove unnecessary extern declarations.
7353 (x_fullscreen_adjust): Remove. Use generic instead.
7354 (x_redisplay_interface): Add w32_frame_parm_handlers member.
7355
7356 * w32reg.c (x_get_string_resource): Use XrmDatabase.
7357
7358 * macgui.h (XrmDatabase): New (dummy) typedef.
7359
7360 * macterm.h (EMACS_CLASS): Remove.
7361 (struct mac_display_info): Add xrdb member.
7362 (struct mac_output): Add want_fullscreen member.
7363
7364 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
7365 parameters now defined in frame.h and frame.c.
7366 (Vx_resource_name): Remove. Use generic var.
7367 (check_x_display_info): Make non-static (for frame.c).
7368 (struct x_frame_parm_table, x_frame_parms): Remove.
7369 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
7370 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
7371 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7372 (x_change_window_heights, x_set_autoraise, x_set_autolower)
7373 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
7374 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
7375 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
7376 Remove. Use generic functions instead.
7377 (enum resource_types): Remove.
7378 (x_set_scroll_bar_default_width): New global function (for frame.c).
7379 (mac_frame_parm_handlers): New table for redisplay_interface.
7380 (syms_of_macfns): Don't intern/staticpro removed vars.
7381
7382 * macterm.c: Remove unnecessary extern declarations.
7383 (x_redisplay_interface): Add mac_frame_parm_handlers member.
7384
7385 * Makefile.in (frame.o): Add dependency on blockinput.h and files
7386 included from it (atimer.h and systime.h).
7387
7388 2003-03-30 Andreas Schwab <schwab@suse.de>
7389
7390 * xdisp.c (x_insert_glyphs): Fix swapped width and height
7391 parameters for shift_glyphs_for_insert.
7392
7393 * macterm.c (x_redisplay_interface): Add missing entry for
7394 draw_vertical_window_border.
7395
7396 2003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
7397
7398 * fileio.c (Fexpand_file_name): In the no-handler case, after
7399 expanding, look again for a handler and invoke it. This is needed
7400 for filenames like "/foo/../user@host:/bar/../baz" -- the first
7401 expansion produces "/user@host:/bar/../baz" which needs to be
7402 expanded again for the finame result "/user@host:/baz".
7403
7404 2003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7405
7406 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
7407 of area to be redrawn for better performance.
7408
7409 2003-03-28 Stefan Monnier <monnier@cs.yale.edu>
7410
7411 * xterm.c (take_vertical_position_into_account): Remove.
7412 (xt_action_hook): Call set_vertical_scroll_bar if needed.
7413 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
7414 (xm_scroll_callback, x_create_toolkit_scroll_bar)
7415 (x_set_toolkit_scroll_bar_thumb): Simplify.
7416 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
7417 (XTread_socket): Remove unused var.
7418 (x_make_frame_invisible): Replace goto with else.
7419
7420 * xdisp.c (set_vertical_scroll_bar): New fun.
7421 (redisplay_window): Use it.
7422
7423 2003-03-26 Richard M. Stallman <rms@gnu.org>
7424
7425 * xdisp.c (update_tool_bar): Recompute tool bar if
7426 update_mode_lines is set. Set w->update_mode_line
7427 only if the tool bar contents actually change.
7428 (update_menu_bar): Undo previous change.
7429
7430 2003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7431
7432 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
7433 (xg_frame_set_char_size): Calculate scroll bar width before frame
7434 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
7435 (xg_separator_p): Check for all documented separator types.
7436 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
7437 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
7438
7439 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
7440 so tool bar gets updated.
7441
7442 2003-03-26 Stefan Monnier <monnier@cs.yale.edu>
7443
7444 * data.c (store_symval_forwarding): Re-instate part of the code
7445 that was deleted with too much enthusiasm.
7446
7447 2003-03-25 Stefan Monnier <monnier@cs.yale.edu>
7448
7449 * data.c (store_symval_forwarding): Delete special read-only
7450 hack for type == -1, since we now use ->constant instead.
7451 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
7452
7453 * buffer.c (overlays_in): Declare static.
7454 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
7455 `constant' field rather than the variable's `type' field.
7456
7457 2003-03-24 Andrew Choi <akochoi@shaw.ca>
7458
7459 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
7460
7461 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
7462
7463 * fns.c [MAC_OSX]: Do not redefine vector.
7464
7465 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
7466
7467 * macgui.h: Remove definition of No_Cursor.
7468
7469 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
7470
7471 * xdisp.c: Define No_Cursor.
7472 (x_write_glyphs, notice_overwritten_cursor)
7473 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
7474 (note_mouse_highlight): Remove Mac-specific code.
7475 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
7476
7477 2003-03-24 John Paul Wallington <jpw@gnu.org>
7478
7479 * xdisp.c (redisplay_window): If mini window's buffer is not
7480 empty, then redisplay it like other windows.
7481
7482 2003-03-23 Kim F. Storm <storm@cua.dk>
7483
7484 * w32term.c (w32_draw_window_cursor): Fix last change.
7485
7486 2003-03-23 Kenichi Handa <handa@m17n.org>
7487
7488 * alloc.c (make_string_from_bytes, make_specified_string):
7489 Add `const' for the arg CONTENTS.
7490
7491 * lisp.h (make_string_from_bytes, make_specified_string):
7492 Prototypes adjusted.
7493
7494 2003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7495
7496 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
7497
7498 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
7499 (XG_SB_RANGE): New define.
7500
7501 * gtkutil.c (xg_fixed_handle_expose): New function.
7502 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
7503 expose events.
7504 (xg_update_scrollbar_pos): Take two more arguments, left and width
7505 of scroll bar including borders.
7506 Clear left and right part outside scroll bar separately as some
7507 themes have bars that are not an even number of pixels.
7508 Don't set reallocate_redraws, don't call
7509 gdk_window_process_all_updates.
7510 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
7511 so no need to change it. Calculate size and value with XG_SB_RANGE.
7512
7513 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
7514 Pass left and width of scroll bar including borders to
7515 xg_update_scrollbar_pos.
7516
7517 2003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
7518
7519 * Makefile.in: Make sure space precedes end-of-line backslashes.
7520
7521 2003-03-22 Kim F. Storm <storm@cua.dk>
7522
7523 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
7524 Add generic versions here. Remove system specific versions
7525 defined elsewhere.
7526
7527 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
7528 Add prototypes.
7529
7530 * xterm.h (STORE_NATIVE_RECT): New macro.
7531
7532 2003-03-21 Kim F. Storm <storm@cua.dk>
7533
7534 * xdisp.c (get_glyph_string_clip_rect):
7535 Use FRAME_INTERNAL_BORDER_WIDTH.
7536
7537 * dispextern.h (struct redisplay_interface): Add active_p
7538 argument to draw_window_cursor member. All uses changed.
7539
7540 2003-03-21 Kim F. Storm <storm@cua.dk>
7541
7542 The following changes consolidate code related to writing and
7543 inserting glyphs, exposing frame, the tool bar, the mouse face,
7544 the output cursor, and help echo from xterm.c, w32term.c and
7545 macterm.c into xdisp.c. It also generalizes the use of the
7546 window_part enum instead of using numeric values throughout.
7547
7548 * xdisp.c: Consolidate gui-independent code here.
7549 Include keymap.h.
7550 (Qhelp_echo): Import.
7551 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
7552 (help_echo_string, help_echo_window, help_echo_object)
7553 (previous_help_echo_string, help_echo_pos): Declare here.
7554 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
7555 (estimate_mode_line_height): Define here. Handle windowing
7556 systems directly (without using estimate_mode_line_height_hook).
7557 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
7558 (update_window_cursor, update_cursor_in_window_tree)
7559 (fast_find_position, fast_find_string_pos)
7560 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
7561 (expose_area, expose_line, expose_overlaps, expose_window)
7562 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
7563 declared static as they are only used locally in xdisp.c.
7564 (draw_glyphs): Rename from x_draw_glyphs and make static.
7565 (tool_bar_item_info, notice_overwritten_cursor): Make static.
7566 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
7567 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
7568 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
7569 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
7570 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
7571 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
7572 (note_mouse_highlight, x_clear_window_mouse_face)
7573 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
7574 (x_intersect_rectangles): New generic functions for use by xdisp.c
7575 and GUI front-ends.
7576 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
7577 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
7578
7579 * dispextern.h (Display_Info): Generic typedef for *_display_info.
7580 (NativeRectangle): Generic typedef for rectangle type.
7581 (enum window_part): Move here from window.c.
7582 (struct redisplay_interface): New members flush_display_optional,
7583 define_frame_cursor, clear_frame_area, draw_window_cursor,
7584 draw_vertical_window_border, shift_glyphs_for_insert.
7585 Rename member clear_mouse_face to clear_window_mouse_face.
7586 (estimate_mode_line_height_hook): Remove hook.
7587 (auto_raise_tool_bar_buttons_p): Don't declare extern.
7588 (tool_bar_item_info): Remove prototype.
7589 (help_echo_string, help_echo_window, help_echo_object)
7590 (previous_help_echo_string, help_echo_pos)
7591 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
7592 (x_stretch_cursor_p, output_cursor): Declare extern.
7593 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
7594 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
7595 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
7596 (display_and_set_cursor, set_output_cursor, x_cursor_to)
7597 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
7598 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
7599 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
7600 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
7601 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
7602 Add prototypes.
7603 (mode_line_string, marginal_area_string): Fix prototypes.
7604
7605 * window.c (enum window_part): Move to dispextern.h.
7606 (coordinates_in_window): Use enum window_part member names
7607 instead of numbers to describe return value.
7608 (struct check_window_data): Change part member to window_part.
7609 (check_window_containing): Return window_part unaltered.
7610 (window_from_coordinates): Change part arg from int to enum
7611 window_part. Allow part arg to be null. All users changed.
7612
7613 * window.h (window_from_coordinates): Fix prototype.
7614
7615 * term.c (estimate_mode_line_height): Move to xdisp.c.
7616
7617 * keyboard.c (make_lispy_event): Use enum window_part.
7618
7619 * dispnew.c (mode_line_string, marginal_area_string): Use enum
7620 window_part instead of int in arg list. Users changed.
7621
7622 * xterm.h (No_Cursor): Declare as None for X.
7623 (struct mac_output): Replace member cross_cursor by hand_cursor.
7624
7625 * xterm.c: Remove consolidated defines and code.
7626 (BETWEEN): Remove unused macro.
7627 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
7628 (x_define_frame_cursor, x_clear_frame_area)
7629 (x_draw_window_cursor): New X-specific functions for RIF.
7630 (x_redisplay_interface): Add new members.
7631
7632 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
7633
7634 * w32term.h (struct w32_output): Remove cross_cursor member.
7635
7636 * w32term.c: Remove consolidated defines and code.
7637 (BETWEEN): Remove unused macro.
7638 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
7639 (w32_define_frame_cursor, w32_clear_frame_area)
7640 (w32_draw_window_cursor): New W32-specific functions for RIF.
7641 (w32_redisplay_interface): Add new members.
7642
7643 * w32gui.h (No_Cursor): Define as 0 for W32.
7644 (XRectangle): Add X compatible rectangle type.
7645 (NativeRectangle): Declare as RECT for W32.
7646 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
7647
7648 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
7649
7650 * w32console.c: Remove consolidated defines and code.
7651
7652 * msdos.h (Display_Info): Add generic typedef.
7653
7654 * msdos.c: Remove consolidated defines and code.
7655 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
7656
7657 * macterm.h (struct mac_output): Replace member cross_cursor by
7658 hand_cursor.
7659 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
7660
7661 * macterm.c: Remove consolidated defines and code.
7662 (BETWEEN): Remove unused macro.
7663 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
7664 (mac_define_frame_cursor, mac_clear_frame_area)
7665 (mac_draw_window_cursor): New Mac-specific functions for RIF.
7666 (x_redisplay_interface): Add new members.
7667
7668 * macgui.h (No_Cursor): Define as 0 for Mac.
7669 (XRectangle): Add X compatible rectangle type.
7670 (NativeRectangle): Declare as Rect for Mac.
7671 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
7672
7673 * macfns.c (x_set_mouse_color): Setup hand_cursor.
7674 (x_set_cursor_color): Use x_display_and_set_cursor.
7675
7676 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
7677 included from it. Add dependency on keymap.h.
7678
7679 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
7680
7681 2003-03-21 Kenichi Handa <handa@m17n.org>
7682
7683 * fileio.c (Fexpand_file_name): Fix previous change.
7684
7685 2003-03-19 Kenichi Handa <handa@m17n.org>
7686
7687 * fileio.c (Ffile_name_directory): Reconstruct file name by
7688 make_specified_string.
7689 (Ffile_name_nondirectory, Ffile_name_as_directory)
7690 (Fdirectory_file_name, Fexpand_file_name)
7691 (Fsubstitute_in_file_name): Likewise.
7692 (Fread_file_name): Compare decoded homedir with DIR and
7693 DEFAULT_FILENAME.
7694
7695 * alloc.c (make_specified_string): If NCHARS is negative, count
7696 the number of characters.
7697
7698 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7699
7700 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
7701 all widgets.
7702
7703 * gtkutil.h: Removed xg_ignore_next_thumb.
7704
7705 2003-03-18 Kenichi Handa <handa@m17n.org>
7706
7707 * coding.c (Vchar_coding_system_table): Remove this variable.
7708 (Vcoding_system_safe_chars): New variable.
7709 (intersection): Remove this function.
7710 (find_safe_codings): Don't use Vchar_coding_system_table, but try
7711 all codings in SAFE_CODINGS.
7712 (Ffind_coding_systems_region_internal): Adjust for the change of
7713 find_safe_codings. Get generic coding systems from
7714 Vcoding_system_safe_chars.
7715 (Fdefine_coding_system_internal): New function.
7716 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
7717 Initialize and staticpro Vcoding_system_safe_chars.
7718
7719 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7720
7721 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
7722 equal old values before updating.
7723
7724 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
7725
7726 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
7727
7728 2003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7729
7730 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
7731 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
7732 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
7733 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
7734 (xg_create_scroll_bar): Pass bar to button event callback.
7735 (xg_find_top_left_in_fixed): New function.
7736 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
7737 whole scroll bar area. Get old position with
7738 xg_find_top_left_in_fixed, calculate and only clear needed areas.
7739 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
7740 dragging is in progress. Calculate whole as for Motif.
7741 Remove code that saved last values. Call gtk_range functions to
7742 set scroll bar sizes.
7743
7744 * gtkutil.h: Removed xg_ignore_next_thumb.
7745
7746 2003-03-17 Juanma Barranquero <lektu@terra.es>
7747
7748 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
7749 and files included from it.
7750
7751 2003-03-18 Stefan Monnier <monnier@cs.yale.edu>
7752
7753 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
7754 multiple occurrences of the same keymap under different prefixes.
7755 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
7756
7757 2003-03-16 Jason Rumney <jasonr@gnu.org>
7758
7759 * w32gui.h: Use HDC for Display.
7760
7761 * w32term.c (w32_encode_char): Prevent double-byte chars from
7762 crashing Emacs.
7763
7764 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
7765 as binary.
7766
7767 2003-03-16 Juanma Barranquero <lektu@terra.es>
7768
7769 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
7770
7771 2003-03-16 Kim F. Storm <storm@cua.dk>
7772
7773 The following changes consolidate some of the gui-independent
7774 parts of the processing and drawing of "glyph strings" from
7775 xterm.c, w32term.c, and macterm.c into xdisp.c.
7776
7777 * dispextern.h (struct glyph): Reduce face_id member from 22 to
7778 21 bits (this reduces number of faces from 4M to 2M).
7779 Replace W32 specific w32_font_type member (2 bits) by generic
7780 font_type member (3 bits) for portability.
7781 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
7782 (enum draw_glyphs_face): Define here.
7783 (struct glyph_string): Define here. Merge W32 and X versions.
7784 (struct redisplay_interface): New members per_char_metric,
7785 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
7786 (VCENTER_BASELINE_OFFSET): Define here.
7787 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
7788 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
7789
7790 * xdisp.c: Consolidate gui-independent "glyph string" code here.
7791 (dump_glyph_string): Moved here.
7792 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
7793 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
7794 (fill_composite_glyph_string, fill_glyph_string)
7795 (fill_image_glyph_string, fill_stretch_glyph_string)
7796 (left_overwritten, left_overwriting, right_overwritten)
7797 (right_overwriting, get_char_face_and_encoding)
7798 (set_glyph_string_background_width, compute_overhangs_and_x)
7799 (append_glyph, append_composite_glyph, produce_image_glyph)
7800 (take_vertical_position_into_account, append_stretch_glyph)
7801 (produce_stretch_glyph): New generic functions (based on X version).
7802 Call platform specific functions through rif.
7803 (INIT_GLYPH_STRING): New macro, hides W32 details.
7804 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
7805 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
7806 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
7807 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
7808 (notice_overwritten_cursor):
7809 Generic functions exported to platform modules. Users changed.
7810
7811 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
7812 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
7813 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
7814 New macros for consolidated code.
7815
7816 * xterm.c: Remove consolidated defines and code.
7817 (x_per_char_metric, x_encode_char)
7818 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
7819 (x_redisplay_interface): Add new members.
7820
7821 * w32gui.h (Display): Add dummy typedef for consolidation.
7822 (XChar2b): Define alias for wchar_t for consolidation.
7823 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
7824
7825 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
7826 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
7827 New macros for consolidation.
7828
7829 * w32term.c: Remove consolidated defines and code.
7830 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
7831 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
7832 (w32_per_char_metric): Change font_type arg to int for RIF.
7833 (w32_encode_char): Return int according to RIF requirements.
7834 (w32_compute_glyph_string_overhangs): Adapt to RIF.
7835 (w32_get_glyph_overhangs): New function for RIF. Uses generic
7836 x_get_glyph_overhangs.
7837 (w32_redisplay_interface): Add new members.
7838
7839 * macgui.h (XChar2b): Move typedef here for consolidation.
7840 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
7841
7842 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
7843 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
7844 consolidation.
7845
7846 * macterm.c: Remove consolidated defines and code.
7847 (mac_per_char_metric): New function for RIF.
7848 (mac_encode_char): Adapt to new RIF requirements.
7849 (mac_compute_glyph_string_overhangs): Adapt for RIF.
7850 (x_redisplay_interface): Add new members.
7851
7852 2003-03-15 Stefan Monnier <monnier@cs.yale.edu>
7853
7854 * keymap.c (Vmenu_events): New var.
7855 (syms_of_keymap): Initialize it.
7856 (where_is_internal): Check more carefully what is a menu event.
7857
7858 2003-03-14 Richard M. Stallman <rms@gnu.org>
7859
7860 * lread.c (read1): After #!, exit loop on eof.
7861
7862 2003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7863
7864 * gtkutil.h: Add declaration for xg_frame_cleared.
7865
7866 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
7867
7868 * gtkutil.c (struct xg_last_sb_pos): New structure.
7869 (handle_fixed_child): New function.
7870 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
7871 and force a redraw on them.
7872 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
7873 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
7874 so we can avoid unneeded redraws.
7875 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
7876 and force a redraw on the scroll bar.
7877 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
7878 if xg_last_sb_pos shows the positions are up to date.
7879 (xg_frame_cleared): New function.
7880
7881 2003-03-13 Kenichi Handa <handa@m17n.org>
7882
7883 * coding.c (Fdetect_coding_region): Fix docstring.
7884 (Fdetect_coding_string): Fix docstring.
7885
7886 2003-03-13 Andreas Schwab <schwab@suse.de>
7887
7888 * gtkutil.c: Add prototype for create_menus.
7889
7890 * data.c (long_to_cons): Fix type of top.
7891
7892 * xselect.c (selection_data_to_lisp_data): Use int instead of
7893 long for an integer of size 4.
7894
7895 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
7896 (xg_tool_bar_help_callback): Likewise.
7897
7898 2003-03-12 Andreas Schwab <schwab@suse.de>
7899
7900 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
7901
7902 2003-03-12 Kim F. Storm <storm@cua.dk>
7903
7904 The following changes consolidate the fringe handling from
7905 xterm.c, w32term.c, and macterm.c into xdisp.c.
7906
7907 * xdisp.c: Consolidate fringe handling code here.
7908 (left_bits, right_bits, continued_bits, continuation_bits)
7909 (ov_bits, zv_bits): Define fringe bitmaps.
7910 (fringe_bitmaps): New array holding fringe bitmaps.
7911 (draw_fringe_bitmap): Draw a specific bitmap; call display
7912 specific drawing routine via rif->draw_fringe_bitmap.
7913 (draw_row_fringe_bitmaps): Generic replacement for
7914 x_draw_row_fringe_bitmaps; all callers changed.
7915 (compute_fringe_widths): Generic replacement for
7916 x_compute_fringe_widths; all callers changed.
7917
7918 * dispextern.h (enum fringe_bitmap_type): Define here.
7919 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
7920 (fringe_bitmaps): Declare extern.
7921 (struct redisplay_interface): New member draw_fringe_bitmap.
7922 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
7923
7924 * xterm.c: Remove generic fringe code.
7925 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
7926 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
7927
7928 * w32term.c: Remove generic fringe code.
7929 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
7930 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
7931
7932 * macterm.c: Remove generic fringe code.
7933 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
7934 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
7935
7936 2003-03-11 Stefan Monnier <monnier@cs.yale.edu>
7937
7938 * print.c (Fprin1_to_string): Return unibyte string if possible.
7939
7940 2003-03-09 David Kastrup <dak@gnu.org>
7941
7942 * process.c (read_process_output): We have allocated enough space
7943 for readmax and carryover, so actually use the alloted space.
7944
7945 2003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7946
7947 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
7948 toolkit scrollbar click.
7949
7950 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
7951 for USE_GTK.
7952 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
7953 also.
7954 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
7955 scrollbar and control is pressed, call x_scroll_bar_handle_click.
7956
7957 * gtkutil.h: Declare xg_get_scroll_id_for_window.
7958
7959 * gtkutil.c (xg_get_scroll_id_for_window): New function.
7960 (xg_tool_bar_item_expose_callback): New function.
7961 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
7962 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
7963 on the tool bar widget.
7964 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
7965 to expose on the tool bar item widgets.
7966
7967 2003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7968
7969 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
7970 struct image* when deciding to update (struct image* may have been
7971 deleted from the image cache).
7972
7973 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
7974 the event isn't for a frame (i.e. for dialogs).
7975
7976 2003-03-07 Kenichi Handa <handa@m17n.org>
7977
7978 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
7979 composition components reaches the limit, terminate composing.
7980 (COMPOSITION_OK): New macro.
7981 (detect_coding_iso2022): Use it if an escape sequence for
7982 composition is found.
7983 (coding_restore_composition): Adjust the number of composition
7984 components if it is not sane.
7985
7986 2003-03-06 Juanma Barranquero <lektu@terra.es>
7987
7988 * w32term.h (struct w32_display_info): Add xrdb member to support
7989 passing resources via -xrm on Windows.
7990
7991 * w32term.c (w32_make_rdb): New function.
7992 (w32_term_init): Use it to initialize xrdb member of w32_display_info
7993 struct. Delete leftover code.
7994
7995 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
7996 for resources passed on the command line.
7997
7998 * w32reg.c (w32_get_rdb_resource): New function.
7999 (x_get_string_resource): Use it, so resources passed with -xrm
8000 supercede the ones in the registry.
8001
8002 2003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8003
8004 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
8005 instead of x_top_window_to_frame.
8006
8007 2003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8008
8009 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
8010 when restarting Emacs.
8011
8012 2003-03-03 Richard M. Stallman <rms@gnu.org>
8013
8014 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
8015 to run kill-buffer-query-functions.
8016 (Qkill_buffer_query_functions): New var.
8017 (syms_of_buffer): Init and staticpro it.
8018
8019 2003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8020
8021 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
8022
8023 2003-02-25 Kim F. Storm <storm@cua.dk>
8024
8025 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
8026 If centering point failed to make whole line visible and vscroll
8027 is non-zero, disable vscroll and try centering point again.
8028
8029 * lread.c (read1): Accept `single space' syntax like (? x).
8030
8031 2003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8032
8033 * keyboard.c (cancel_hourglass_unwind): Surround with
8034 #ifdef HAVE_X_WINDOWS
8035
8036 2003-02-25 Kenichi Handa <handa@m17n.org>
8037
8038 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
8039 process only when "subprocesses" is defined.
8040
8041 2003-02-24 Stefan Monnier <monnier@cs.yale.edu>
8042
8043 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
8044
8045 2003-02-24 Juanma Barranquero <lektu@terra.es>
8046
8047 * callint.c (fix_command): Declare as static void and move before
8048 Fcall_interactively.
8049
8050 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
8051 (syms_of_xdisp): Don't initialize Qwhen.
8052
8053 2003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8054
8055 * keyboard.c (cancel_hourglass_unwind): New function.
8056 (command_loop_1): Cancel hourglass with unwind-protect.
8057
8058 2003-02-23 Richard M. Stallman <rms@gnu.org>
8059
8060 * callint.c (fix_command): New subroutine, from Fcall_interactively.
8061 Detect (when ... (region-beginning)) etc.
8062 (Fcall_interactively): Call fix_command.
8063 (Qif, Qwhen): New variables.
8064 (syms_of_callint): Init and staticpro them.
8065
8066 * regex.c (print_partial_compiled_pattern): Output to stderr.
8067
8068 2003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
8069
8070 * dired.c (directory_files_internal): Don't expand directory.
8071 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
8072 instead. From Lars Hansen <larsh@math.ku.dk>.
8073
8074 2003-02-22 Stefan Monnier <monnier@cs.yale.edu>
8075
8076 * fns.c (string_to_multibyte): Remove unused var i.
8077 (Flanginfo): Fix int/Lisp_Object mixup.
8078 (void_call2): New fun.
8079 (Fmap_char_table): Use it in place of call2.
8080
8081 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
8082
8083 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
8084
8085 * keymap.c (copy_keymap_1): Make it static.
8086
8087 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
8088
8089 2003-02-22 David Ponce <david@dponce.com>
8090
8091 * lread.c (Fload): Don't check STRING_MULTIBYTE.
8092
8093 2003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8094
8095 * process.h: Removed subtty field from struct Lisp_Process.
8096
8097 * process.c (create_process): Remove setting of subtty.
8098 (emacs_get_tty_pgrp): New function.
8099 (Fprocess_running_child_p, process_send_signal):
8100 Call emacs_get_tty_pgrp instead of ioctl.
8101 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
8102
8103 2003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
8104
8105 * keymap.c (Fdefine_key): Doc fix.
8106
8107 2003-02-21 Juanma Barranquero <lektu@terra.es>
8108
8109 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
8110
8111 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
8112 POLLING_PROBLEM_IN_SELECT.
8113
8114 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
8115 Delete #undef of POLLING_PROBLEM_IN_SELECT.
8116
8117 * s/hpux10-20.h: New file.
8118
8119 * process.c (wait_reading_process_input):
8120 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
8121
8122 2003-02-20 Kenichi Handa <handa@m17n.org>
8123
8124 * fontset.c (check_fontset_name): If NAME is nil, return the
8125 default fontset.
8126 (override_font_info): New function.
8127 (Fset_fontset_font): Document that NAME nil means the default fontset.
8128 (Ffontset_info): If FONTSET is not the default fontset, merge
8129 FONTSET onto the copy of the default fontset, and work on that
8130 copy. Document that NAME nil means the default fontset.
8131 (Ffontset_font): Document that NAME nil means the default fontset.
8132
8133 * process.c (setup_process_coding_systems): If the process's
8134 in/out descriptor is -1, do nothing.
8135
8136 2003-02-19 Andreas Schwab <schwab@suse.de>
8137
8138 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
8139 Add prototypes.
8140
8141 2003-02-19 Kenichi Handa <handa@m17n.org>
8142
8143 * xfaces.c (try_alternative_families): Try all scalable fonts if
8144 Vscalable_fonts_allowed is not Qt.
8145
8146 2003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8147
8148 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
8149
8150 2003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8151
8152 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
8153 names.
8154
8155 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
8156 (sorted_font_list): Move allocation of struct font_name to
8157 x_face_list_fonts.
8158 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
8159 (Fx_list_fonts): Set maxnames to -1 to get all font names.
8160
8161 2003-02-18 Kim F. Storm <storm@cua.dk>
8162
8163 * lread.c (read1): Fix last change.
8164 "`" is not always special. Allow "?" after a character constant.
8165
8166 2003-02-18 Andrew Choi <akochoi@shaw.ca>
8167
8168 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
8169
8170 2003-02-18 Andreas Schwab <schwab@suse.de>
8171
8172 * window.c (window_scroll_pixel_based): Move outside a
8173 multi-glyph character before setting new window start.
8174
8175 * xdisp.c (in_display_vector_p): New function.
8176 * dispextern.h (in_display_vector_p): Declare.
8177
8178 2003-02-18 Kim F. Storm <storm@cua.dk>
8179
8180 * lread.c (read1): Fix and relax read syntax.
8181 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
8182 Only recognize "," after dotted-pair dot if inside backquote.
8183 Never include "`" or "," (inside backquote) in a symbol.
8184 Allow dotted-pair dot after a character constant.
8185 Allow "`" and "," (inside backquote) after a character constant.
8186
8187 2003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8188
8189 * gtkutil.c (xg_tool_bar_expose_callback): New function.
8190 (xg_create_tool_bar): Force style of tool bar to be horizontal with
8191 icons. Set name of tool bar to emacs-toolbar.
8192 (update_frame_tool_bar): Connect expose event to
8193 xg_tool_bar_expose_callback.
8194
8195 2003-02-17 Richard M. Stallman <rms@gnu.org>
8196
8197 * keyboard.c (this_command_key_count_reset): New variable.
8198 Initiatize to 0 where this_command_key_count is set.
8199 (read_char): Save and restore this_command_key_count_reset
8200 around input method code.
8201 (read_char): If this_command_key_count_reset, echo reread commands.
8202 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
8203
8204 2003-02-17 Kenichi Handa <handa@m17n.org>
8205
8206 * fns.c (string_to_multibyte): Always return a multibyte string.
8207
8208 2003-02-16 Jason Rumney <jasonr@gnu.org>
8209
8210 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
8211 Negative max_fonts parameter means list all.
8212
8213 2003-02-14 Dave Love <fx@gnu.org>
8214
8215 * fns.c (Flanginfo): Doc fix.
8216
8217 2003-02-13 Kim F. Storm <storm@cua.dk>
8218
8219 * lread.c (read_escape): Interpret \s as a SPACE character, except
8220 for \s-X in a character constant which still is the super modifier.
8221 (read1): Signal an `invalid read syntax' error if a character
8222 constant is immediately followed by a digit or symbol character.
8223
8224 * search.c (Fmatch_data): Doc fix. Explicitly state that
8225 match-data is undefined if last search failed.
8226
8227 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
8228 All uses changed.
8229
8230 2003-02-12 Juanma Barranquero <lektu@terra.es>
8231
8232 * eval.c (Fdefmacro): Fix typo.
8233
8234 2003-02-12 Kim F. Storm <storm@cua.dk>
8235
8236 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
8237 macro is a string, convert meta modifiers in string when copying
8238 the string into a vector.
8239
8240 2003-02-11 Kim F. Storm <storm@cua.dk>
8241
8242 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
8243
8244 2003-02-11 Kenichi Handa <handa@m17n.org>
8245
8246 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
8247
8248 2003-02-10 Kim F. Storm <storm@cua.dk>
8249
8250 * process.c: Doc fixes.
8251 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
8252
8253 2003-02-10 Kenichi Handa <handa@m17n.org>
8254
8255 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
8256
8257 * process.c (QCfilter_multibyte): New variable.
8258 (setup_process_coding_systems): New function.
8259 (Fset_process_buffer, Fset_process_filter):
8260 Call setup_process_coding_systems.
8261 (Fstart_process): Initialize the member `filter_multibyte' of
8262 struct Lisp_Process.
8263 (create_process): Call setup_process_coding_systems.
8264 (Fmake_network_process): New keyward `:filter-multibyte'.
8265 Initialize the member `filter_multibyte' of struct Lisp_Process.
8266 Call setup_process_coding_systems.
8267 (server_accept_connection): Call setup_process_coding_systems.
8268 (read_process_output): If the process has a filter, decide the
8269 multibyteness of a string to given to the filter by
8270 `filter_multibyte' member of the process. If the process doesn't
8271 have a filter and the result of conversion is unibyte, use
8272 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
8273 multibyte form.
8274 (Fset_process_coding_system): Call setup_process_coding_systems.
8275 (Fset_process_filter_multibyte): New function.
8276 (Fprocess_filter_multibyte_p): New function.
8277 (syms_of_process): Intern and staticpro QCfilter_multibyte.
8278 Defsubr Sset_process_filter_multibyte and
8279 Sprocess_filter_multibyte_p.
8280
8281 * process.h (struct Lisp_Process): New member filter_multibyte.
8282
8283 * lisp.h (setup_process_coding_systems): Add prototype.
8284
8285 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
8286 process, update coding systems for the process.
8287
8288 2003-02-09 Kenichi Handa <handa@m17n.org>
8289
8290 * fns.c (string_to_multibyte): New function.
8291 (Fstring_to_multibyte): New function.
8292 (syms_of_fns): Defsubr it.
8293
8294 2003-02-08 Andreas Schwab <schwab@suse.de>
8295
8296 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
8297 instead of the substitution.
8298
8299 2003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8300
8301 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
8302
8303 * xmenu.c (menu_position_func): Adjust menu popup position so that
8304 the menu is fully visible.
8305
8306 2003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8307
8308 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
8309 (x_make_frame_invisible, x_wm_set_icon_position):
8310 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
8311
8312 * xfns.c (x_set_name, x_set_title): Ditto.
8313
8314 2003-02-04 Richard M. Stallman <rms@gnu.org>
8315
8316 * keyboard.c (echo_now): Update before_command_echo_length.
8317 (Freset_this_command_lengths): Reset this_command_key_count etc.
8318 immediately rather than arranging to do it later.
8319 (before_command_key_count_1, before_command_echo_length_1)
8320 (before_command_restore_flag): Vars deleted.
8321 (add_command_key): Don't handle before_command_restore_flag.
8322 (read_char, record_menu_key): Don't update before_command_key_count or
8323 before_command_echo_length.
8324 (read_char): Don't handle before_command_restore_flag.
8325
8326 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
8327 in direct-output clauses if it wouldn't be called in the ordinary case.
8328
8329 2003-02-04 Kim F. Storm <storm@cua.dk>
8330
8331 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
8332
8333 2003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8334
8335 * gtkutil.c (remove_from_container): Copying list is not needed.
8336 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
8337 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
8338 on list returned from gtk_container_get_children to avoid memory leak.
8339
8340 2003-02-01 Jason Rumney <jasonr@gnu.org>
8341
8342 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
8343 local malloc.
8344 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
8345 definitions in xpm.h.
8346 (init_xpm_functions): New function.
8347 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
8348 (init_external_image_libraries): Try to load libXpm.dll.
8349
8350 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
8351 timestamp.
8352
8353 2003-01-31 Dave Love <fx@gnu.org>
8354
8355 * syntax.c (Fskip_chars_forward)
8356 (open-paren-in-column-0-is-defun-start): Doc fix.
8357
8358 2003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
8359
8360 * fileio.c: Support // at start of name for Cygwin (just added proper
8361 preprocessor tests).
8362
8363 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
8364
8365 * Makefile.in: Use @EXEEXT@ for Cygwin.
8366
8367 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
8368
8369 * s/cygwin.h: Added for Cygwin port.
8370
8371 2003-01-31 Juanma Barranquero <lektu@terra.es>
8372
8373 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
8374 when including gif_lib.h.
8375 (init_gif_functions, init_tiff_functions): New functions.
8376 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
8377 Windows. Disable color table lookups. Call library functions
8378 through pointers determined at runtime.
8379 (init_external_image_libraries): Try to load libungif.dll and
8380 libtiff.dll.
8381
8382 2003-01-31 Kenichi Handa <handa@m17n.org>
8383
8384 * xdisp.c (SKIP_GLYPHS): New macro.
8385 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
8386
8387 2003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8388
8389 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
8390
8391 2003-01-30 Dave Love <fx@gnu.org>
8392
8393 * alloc.c (Vgc_elapsed, gcs_done): New variables.
8394 (Fgarbage_collect): Use them.
8395 (init_alloc, syms_of_alloc): Set them up.
8396
8397 2003-01-30 Juanma Barranquero <lektu@terra.es>
8398
8399 * w32fns.c (init_external_image_libraries): Add missing operator.
8400
8401 2003-01-29 Jason Rumney <jasonr@gnu.org>
8402
8403 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
8404 an alternative name for jpeg.dll.
8405
8406 2003-01-29 Kenichi Handa <handa@m17n.org>
8407
8408 * xdisp.c (set_cursor_from_row): Pay attention to string display
8409 properties.
8410
8411 2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
8412
8413 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
8414 <escape>.
8415 (keycode_to_xkeysym_table): Reformat and add more comments.
8416 (XTread_socket): Drop special case for backspace.
8417
8418 2003-01-28 Andrew Choi <akochoi@shaw.ca>
8419
8420 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
8421 values in old-style RGB specs.
8422
8423 2003-01-27 Juanma Barranquero <lektu@terra.es>
8424
8425 * w32fns.c (init_external_image_libraries): Try alternate names for the
8426 jpeg dll.
8427
8428 2003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8429
8430 * gtkutil.c (create_dialog, xg_separator_p)
8431 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
8432 before calling strcmp or strlen.
8433
8434 2003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8435
8436 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
8437 and handle image load failure.
8438
8439 2003-01-26 Jason Rumney <jasonr@gnu.org>
8440
8441 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
8442 New functions.
8443 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
8444 Disable color table lookups. Call jpeg library functions
8445 through pointers determined at runtime.
8446 (init_external_image_libraries): Try to load jpeg.dll.
8447
8448 2003-01-25 Richard M. Stallman <rms@gnu.org>
8449
8450 * lisp.h: Declare format2 instead of format1.
8451
8452 * fileio.c (barf_or_query_if_file_exists):
8453 Call format2 instead of format1.
8454
8455 * editfns.c (format2): New function, replaces format1
8456 but takes exactly two Lisp Objects as format args.
8457
8458 * buffer.c (Fkill_buffer): Call format2 instead of format1.
8459
8460 2003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8461
8462 * xterm.h: Change to return value of x_dispatch_event to int.
8463
8464 * xterm.c (x_filter_event): New function.
8465 (event_handler_gdk, XTread_socket): Call x_filter_event.
8466 (x_dispatch_event): Change to return value of finish.
8467 (event_handler_gdk): Use return value from x_dispatch_event.
8468
8469 * xfns.c (x_window): Call create_frame_xic for GTK version to
8470 initialize input methods.
8471
8472 * gtkutil.h: Add (void) prototypes.
8473
8474 * gtkutil.c (create_menus): Remove code that puts the help menu to
8475 the right.
8476
8477 2003-01-25 Jason Rumney <jasonr@gnu.org>
8478
8479 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
8480 [HAVE_PNG]: Sync with xfns.c version.
8481 (png_load): Adjust colors for Windows. Use Windows
8482 bitmaps. Disable color table lookups.
8483 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
8484 (init_png_functions): New function.
8485 (png_read_from_memory, png_load): Call png library functions
8486 through pointers determined at runtime.
8487 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
8488 (init_external_image_libraries): New function.
8489 (init_xfns): Call it.
8490
8491 2003-01-24 Andreas Schwab <schwab@suse.de>
8492
8493 * minibuf.c (Fminibuffer_message): Verify type of parameter.
8494
8495 2003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8496
8497 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
8498 of static initializer.
8499
8500 2003-01-24 Dave Love <fx@gnu.org>
8501
8502 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
8503 architectures.
8504
8505 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
8506 Use __alignof__.
8507
8508 2003-01-24 Kenichi Handa <handa@m17n.org>
8509
8510 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
8511 It it is nonzero, don't pretend that an invisible area doesn't exist.
8512 (command_loop_1): Call adjust_point_for_property with proper
8513 second arg.
8514
8515 2003-01-22 Jason Rumney <jasonr@gnu.org>
8516
8517 Sync changes with xterm.c and xfns.c.
8518
8519 * w32term.c (x_draw_glyph_string_foreground)
8520 (x_draw_composite_glyph_string_foreground): Implement overstriking.
8521
8522 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
8523 phys_cursor's hpos is overwritten. This is still not completely
8524 correct, as it doesn't really make sense to use hpos at all to
8525 get the cursor glyph (as that is relative to the width of the
8526 characters on the line, which may have changed during the update).
8527
8528 * w32term.c (notice_overwritten_cursor): Handle the special case
8529 of the cursor being in the first blank non-text line at the
8530 end of a window.
8531
8532 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
8533 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
8534 Compute from the x position returned by x_draw_glyphs.
8535
8536 (x_display_and_set_cursor): Don't set phys_cursor_width here,
8537 except for NO_CURSOR and system caret, to make phys_cursor_width
8538 contain what its name suggests.
8539 (notice_overwritten_cursor): Consider the cursor image erased if
8540 the output area intersects the cursor image in y-direction.
8541
8542 * w32term.c (note_mode_line_or_margin_highlight): Rename from
8543 note_mode_line_highlight and extend.
8544
8545 * w32term.c (last_window): New variable.
8546 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
8547 (note_mouse_movement): Remove reimplemented code in #if 0.
8548
8549 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
8550 not update_mode_lines, and always set it to 1.
8551
8552 2003-01-21 Jason Rumney <jasonr@gnu.org>
8553
8554 * w32fns.c (IDC_HAND): Define it if system headers don't.
8555
8556 2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
8557
8558 * w32term.h (struct w32_output): New member hand_cursor.
8559 (WM_EMACS_SETCURSOR): New message definition.
8560
8561 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
8562 function w32_define_cursor.
8563 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
8564 position, change member name output_data.x to output_data.w32 and
8565 add function w32_define_cursor.
8566 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
8567 and change member name output_data.x to output_data.w32.
8568 (w32_initialize_display_info):
8569 Setup dpyinfo->vertical_scroll_bar_cursor.
8570
8571 * w32fns.c (Vx_hand_shape): New variable.
8572 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
8573 WM_EMACS_SETCURSOR.
8574 (x-create-frame): Setup Cursor types.
8575
8576 2003-01-21 David Ponce <david@dponce.com>
8577
8578 * w32term.c (w32_encode_char): For DIM=1 charset, set
8579 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
8580 x_encode_char change by Kenichi Handa <handa@m17n.org> on
8581 2002-09-30.)
8582 (w32_draw_relief_rect): Declare all args.
8583 (w32_define_cursor): New.
8584
8585 * w32fns.c (w32_load_cursor): New function.
8586 (w32_init_class): Use it.
8587 (x_put_x_image): Declare all args.
8588
8589 2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
8590
8591 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
8592
8593 2003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8594
8595 * gtkutil.c: Must include stdio.h before termhooks.h
8596
8597 2003-01-21 Dave Love <fx@gnu.org>
8598
8599 * alloc.c (Fgc_status): Print zombie list.
8600 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
8601 Fix assignment of zombies.
8602 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
8603 Don't take car of non-cons.
8604
8605 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
8606
8607 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
8608
8609 2003-01-20 David Ponce <david@dponce.com>
8610
8611 * w32menu.c (digest_single_submenu): Declare all args.
8612
8613 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
8614 changes in xmenu.c:
8615
8616 (parse_single_submenu): Use individual keymap's prompt
8617 string as pane name, if there is one.
8618 (set_frame_menubar): Save menu_items_n_panes from each call to
8619 parse_single_submenu and use it when calling digest_single_submenu.
8620
8621 2003-01-20 Steven Tamm <steventamm@mac.com>
8622
8623 * macterm.c (XTread_socket): Checks for valid, visible window
8624 before sending a scroll-wheel event.
8625
8626 2003-01-20 Richard M. Stallman <rms@gnu.org>
8627
8628 * xdisp.c (redisplay_window): If mini window's buffer is not
8629 a minibuffer, then redisplay it like other windows.
8630
8631 2003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8632
8633 * gtkutil.c (xg_create_frame_widgets): Check if there is an
8634 external tool bar before setting tool bar height.
8635
8636 2003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8637
8638 * xterm.c (handle_one_xevent): Surround popup_activated
8639 with #ifdef:s for non-toolkit version.
8640
8641 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
8642 (gtkutil.o): New file.
8643 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
8644 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
8645
8646 * gtkutil.c: New file for GTK version.
8647
8648 * gtkutil.h: New file for GTK version.
8649
8650 * xterm.h: Add xt_or_gtk_widget.
8651 Include gtk files for USE_GTK.
8652 (struct x_output): Add toolbar_height.
8653 (struct x_output): Add GTK widgets and Gdk size_hints.
8654 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
8655 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
8656 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
8657
8658 * xterm.c: Include gtkutil.h for USE_GTK.
8659 Declare extern void free_frame_menubar for USE_GTK.
8660 (note_mouse_highlight): Check popup_activated for USE_GTK.
8661 (xt_action_hook): Don't compile if USE_GTK.
8662 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
8663 (xg_scroll_callback): New function.
8664 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
8665 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
8666 for USE_GTK.
8667 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
8668 xg_show_scroll_bar for USE_GTK.
8669 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
8670 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
8671 (event_handler_gdk): New function for USE_GTK.
8672 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
8673 (handle_one_xevent): Make sure widget is mapped before
8674 calling x_real_positions for USE_GTK.
8675 (XTread_socket): Add GTK event loop for USE_GTK.
8676 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
8677 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
8678 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
8679 (x_iconify_frame): Add code for USE_GTK.
8680 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
8681 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
8682 is in gtkutil.c.
8683 (x_term_init): Add initialization for GTK.
8684 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
8685
8686 * xmenu.c: Include gtkutil.h for USE_GTK.
8687 (Fx_popup_menu): Use current position if x and y is NIL.
8688 (single_menu_item, single_menu_item, Fx_popup_dialog):
8689 Check for USE_GTK.
8690 (popup_widget_loop): New function for USE_GTK.
8691 (x_activate_menubar): Add code for USE_GTK.
8692 (popup_activate_callback, popup_deactivate_callback)
8693 (menu_highlight_callback, menubar_selection_callback):
8694 Add USE_GTK versions.
8695 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
8696 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
8697 (free_frame_menubar): Only compile if not USE_GTK. GTK version
8698 is in gtkutil.c.
8699 (popup_selection_callback): New version for USE_GTK.
8700 (create_and_show_popup_menu): New fuction, one USE_GTK version and
8701 one USE_X_TOOLKIT version.
8702 (xmenu_show): Call create_and_show_popup_menu.
8703 (dialog_selection_callback): New version for USE_GTK.
8704 (create_and_show_dialog): New fuction, one USE_GTK version and
8705 one USE_X_TOOLKIT version.
8706 (xdialog_show): Call create_and_show_dialog.
8707
8708 * xfns.c: Include gtkutil for USE_GTK.
8709 (x_window_to_frame, x_any_window_to_frame)
8710 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
8711 (x_top_window_to_frame): Add code for USE_GTK.
8712 (x_set_background_color): Call xg_set_background_color for GTK.
8713 (x_set_menu_bar_lines): Check for USE_GTK.
8714 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
8715 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
8716 (x_window): Call xg_create_frame_widgets for USE_GTK.
8717 (Fx_create_frame): Check for USE_GTK
8718 (Fx_file_dialog): New implementation for USE_GTK.
8719
8720 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
8721 (update_menu_bar): Add check for USE_GTK.
8722 (update_tool_bar): Add check for USE_GTK and external tool bar.
8723 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
8724 (redisplay_internal): Add check for USE_GTK and popup_activated.
8725 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
8726 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
8727 (display_menu_bar): Add check for USE_GTK
8728
8729 * lisp.h: Declare Vx_resource_name extern.
8730
8731 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
8732 for USE_GTK.
8733 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
8734
8735 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
8736 (FRAME_EXTERNAL_TOOL_BAR): New macro.
8737 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
8738
8739 * fileio.c (Fread_file_name): Add check for USE_GTK.
8740
8741 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
8742 Add check for USE_GTK.
8743
8744 * config.in: Added HAVE_GTK
8745
8746 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
8747
8748 2003-01-18 Stefan Monnier <monnier@cs.yale.edu>
8749
8750 * charset.h (Funibyte_char_to_multibyte): Export.
8751
8752 2003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8753
8754 * xmenu.c (mouse_position_for_popup): New function.
8755 (Fx_popup_menu): Call mouse_position_for_popup for X and
8756 mouse_position_hook for others.
8757
8758 2003-01-17 Kim F. Storm <storm@cua.dk>
8759
8760 * editfns.c (Finsert): Mention `string-make-multibyte' and
8761 `string-as-multibyte' in doc string.
8762
8763 2003-01-17 Kenichi Handa <handa@m17n.org>
8764
8765 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
8766
8767 * editfns.c (Fformat): Convert an unibyte char argument that is
8768 formatted by "%c" to multibyte if the total result must be a
8769 multibyte string.
8770
8771 2003-01-16 Kim F. Storm <storm@cua.dk>
8772
8773 * process.c (set-process-filter): Document unibyte/multibyte-ness
8774 of string argument.
8775
8776 2003-01-16 Kenichi Handa <handa@m17n.org>
8777
8778 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
8779
8780 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
8781 (re_search_2): Likewise.
8782
8783 2003-01-15 Kenichi Handa <handa@m17n.org>
8784
8785 * xdisp.c (message_dolog): Fix bug of the case that *Message*
8786 buffer is unibyte.
8787
8788 2003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
8789
8790 * fns.c (Fsubstring): Clarify doc string.
8791
8792 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
8793 (Fprevious_char_property_change)
8794 (Fnext_single_char_property_change)
8795 (Fprevious_single_char_property_change, Fnext_property_change)
8796 (Fnext_single_property_change, Fprevious_property_change)
8797 (Fprevious_single_property_change, Fadd_text_properties)
8798 (Fput_text_property, Fset_text_properties)
8799 (Fremove_text_properties, Fremove_list_of_text_properties)
8800 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
8801
8802 2003-01-14 Kim F. Storm <storm@cua.dk>
8803
8804 * process.h (struct Lisp_Process): New member plist replaces old
8805 member private_vars. All uses changed.
8806
8807 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
8808 (QCplist): Rename from QCvars. Change all uses.
8809 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
8810 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
8811 (syms_of_process): Intern, staticpro, defsubr these.
8812 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
8813
8814 2003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
8815
8816 * m/delta.h: Remove (obsolete).
8817
8818 2003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
8819
8820 * fileio.c (Fdelete_directory, Fdelete_file): Document the
8821 behaviour in front of symlinks.
8822 (Fdelete_file): Raise an error on directories.
8823
8824 2003-01-13 Dave Love <fx@gnu.org>
8825
8826 * fns.c (Freverse): Use QUIT.
8827
8828 2003-01-13 Richard M. Stallman <rms@gnu.org>
8829
8830 * minibuf.c (minibuffer_completion_contents):
8831 Error if point is inside prompt.
8832
8833 * keyboard.c (command_loop_1): Don't redisplay directly
8834 if there's a post-command-hook.
8835
8836 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
8837 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
8838
8839 2003-01-12 Kim F. Storm <storm@cua.dk>
8840
8841 * process.h (struct Lisp_Process): New member private_vars.
8842
8843 * process.c (QCvars): New variable.
8844 (syms_of_process): Intern and staticpro it.
8845 (Fset_process_contact): Removed function.
8846 (Fprocess_variable, Fset_process_variable): New functions.
8847 (syms_of_process): Defsubr them.
8848 (Fstart_process): Initialize private_vars plist to nil.
8849 (Fmake_network_process): New arg :vars to setup the private
8850 variables for new network process.
8851 (server_accept_connection): Copy server's private variables to
8852 client process.
8853
8854 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
8855 crashes). Code rewritten and simplified. Now directly aligns the
8856 pointer and recalculates pure_bytes_used, rather than aligning the
8857 size and adjusting the pointer.
8858
8859 2003-01-11 Kim F. Storm <storm@cua.dk>
8860
8861 * process.c (Fset_process_contact): New function.
8862 (syms_of_process): defsubr it.
8863 (make-network-process): Update doc.
8864
8865 2003-01-10 Andreas Schwab <schwab@suse.de>
8866
8867 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
8868 Reported by Berthold Gunreben <b.gunreben@web.de>.
8869
8870 2003-01-10 Dave Love <fx@gnu.org>
8871
8872 * composite.c (syms_of_composite): Make composition_hash_table weak.
8873
8874 2003-01-09 Kim F. Storm <storm@cua.dk>
8875
8876 * process.c (Fmake_network_process): Convert new port number
8877 to host byte order for `:service t' case. From Mario Lang.
8878
8879 2003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8880
8881 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
8882 instead of XtAppProcessEvent.
8883
8884 * xterm.c (handle_one_xevent): New function.
8885 (x_dispatch_event): New function.
8886 (XTread_socket): Call handle_one_xevent.
8887
8888 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
8889
8890 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
8891 call XQueryPointer to get coordinates.
8892 (popup_get_selection): Do not set popup_activated_flag to zero,
8893 let popup_deactivate_callback do that. Needed for Motif.
8894 Call x_dispatch_event instead of XtDispatchEvent.
8895 (xmenu_show): Calculate root coordinate from frame top/left position.
8896
8897 2003-01-08 Kim F. Storm <storm@cua.dk>
8898
8899 * process.c (server_accept_connection): Fix recording of new
8900 connection's local address in :local property of contact info.
8901 (Fmake_network_process): Record local network address for new
8902 client processes in :local property of contact info.
8903 (format-network-address): Add arg OMIT-PORT. Change callers.
8904
8905 2003-01-07 Dave Love <fx@gnu.org>
8906
8907 * Makefile.in (fns.o): Depend on coding.h.
8908
8909 2003-01-07 Markus Rost <rost@math.ohio-state.edu>
8910
8911 * minibuf.c (Fread_variable): Doc fix.
8912
8913 * eval.c (Fuser_variable_p): Doc change. For custom variables,
8914 use the same test as for custom-variable-p.
8915
8916 2003-01-05 Richard M. Stallman <rms@gnu.org>
8917
8918 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
8919 Count LAST_LINE_MISFIT in scroll margin for end of window.
8920 Move label too_near_end before setting SCROLL_MARGIN_POS.
8921 Set LAST_LINE_MISFIT before jumping there.
8922
8923 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
8924 scroll_conservatively case. If scrolling that much doesn't change
8925 STARTP, move it down one line.
8926
8927 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
8928 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8929
8930 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
8931 selected frame.
8932
8933 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
8934 (syms_of_keymap): staticpro them.
8935 (Fapropos_internal): Initialize them and clear them out.
8936 Don't GCPRO them.
8937
8938 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
8939 Doc fixes.
8940
8941 * lisp.h: New misc type Lisp_Save_Value.
8942 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
8943 (XSAVE_VALUE): New macro.
8944 (struct Lisp_Save_Value): New data type.
8945 (union Lisp_Misc): Add u_save_value alternative.
8946 (make_save_value): Declared.
8947
8948 * alloc.c (make_save_value): New function.
8949
8950 * xterm.c (x_catch_errors): Save dpy using make_save_value.
8951 (x_catch_errors_unwind): Call XSync.
8952
8953 2003-01-01 Richard M. Stallman <rms@gnu.org>
8954
8955 * window.c (window_scroll_pixel_based): Partially undo last change.
8956
8957 * keyboard.c (command_loop_1): Call adjust_point_for_property
8958 in direct action cases for Qforward_char and Qbackward_char.
8959 Set already_adjusted so it won't be done twice.
8960
8961 2002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
8962
8963 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
8964 type definition of size_t.
8965
8966 2003-01-02 Steven Tamm <steventamm@mac.com>
8967
8968 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
8969 distinguish Carbon GUI builds from X11 builds on darwin.
8970
8971 2002-12-30 Steven Tamm <steventamm@mac.com>
8972
8973 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
8974 to default to t.
8975
8976 2002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
8977
8978 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
8979
8980 2002-12-28 Steven Tamm <steventamm@mac.com>
8981
8982 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
8983 allow building in a different directory than source. Uses some
8984 GNU Make extensions, but there is no other make on Mac OS X.
8985
8986 2002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
8987
8988 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
8989 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
8990 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
8991 (Fstring_to_number): Mention the returned value in the doc strings.
8992
8993 2002-12-23 Richard M. Stallman <rms@gnu.org>
8994
8995 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
8996 <scroll-down-aggressively>: Doc fix.
8997
8998 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
8999 string as pane name, if there is one.
9000 (set_frame_menubar): Save menu_items_n_panes from each call to
9001 parse_single_submenu and use it when calling digest_single_submenu.
9002
9003 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
9004 Don't try to make last line fully visible if it is past end of window.
9005
9006 2002-12-22 Steven Tamm <steventamm@mac.com>
9007
9008 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
9009 (mac_menu_show): Add support for hierarchical popup menus.
9010 (add_menu_item): Remove indentation support.
9011 (fill_submenu, fill_menu): Create hierarchical menus
9012 instead of using indentation.
9013
9014 2002-12-22 Richard M. Stallman <rms@gnu.org>
9015
9016 * xdisp.c (try_cursor_movement): Don't call try_window here.
9017 (redisplay_window): Never redisplay minibuffer when inactive.
9018
9019 * window.c (select_window_1): Undo 9/21 change.
9020
9021 2002-12-22 Steven Tamm <steventamm@mac.com>
9022
9023 * macterm.c (XTread_socket): Call KeyTranslate for control and
9024 meta to deal correctly shifted non-alpha characters, like C-S-5
9025 being treated like C-%. Does not look for shift key to deal
9026 with masking off control-key with mac-reverse-ctrl-meta.
9027
9028 2002-12-21 Richard M. Stallman <rms@gnu.org>
9029
9030 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
9031 If it is non-nil, run timers. Use an unwind-protect to requeue
9032 the events that were read ahead.
9033 (popup_get_selection_unwind): New subroutine.
9034 (popup_get_selection_queue): File-scope variable now holds that queue.
9035 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
9036 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
9037 Use an unwind-protect to pop down the dialog box.
9038 (xdialog_show_unwind): New subroutine implements that.
9039
9040 * xdisp.c (row_containing_pos): Change exit test using last_y.
9041 (try_window_id): Abort if row_containing_pos returns null.
9042
9043 * lread.c (load_error_handler): New function.
9044 (Fload): Handle errors in Fsubstitute_in_file_name.
9045 Don't expect Fsignal to return.
9046
9047 * eval.c: Errors and throws work right with interrupt blocking.
9048 (struct catchtag): New elt interrupt_input_blocked.
9049 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
9050 (internal_catch, Fcondition_case, internal_condition_case)
9051 (internal_condition_case_1, internal_condition_case_2): Save it.
9052 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
9053
9054 * editfns.c (Fformat): Add parens.
9055
9056 * dired.c (file_name_completion): Fix that change.
9057 Delete special quit-handling code; just use QUIT.
9058
9059 2002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
9060
9061 * dired.c (file_name_completion): Close directory on error
9062 just as in directory_files_internal.
9063
9064 2002-12-19 David Kastrup <David.Kastrup@t-online.de>
9065
9066 * window.c (Fset_window_configuration): Set old_point to correct
9067 value when new_current_buffer == current_buffer.
9068
9069 2002-12-17 Ben Key <bkey1@tampabay.rr.com>
9070
9071 Revisited my earlier fix for the following entry in etc/PROBLEMS:
9072 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
9073 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9074
9075 These changes were in part based upon suggestions made by Peter
9076 'Luna' Runestig [peter@runestig.com].
9077
9078 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
9079 g_b_init_get_token_information, g_b_init_lookup_account_sid,
9080 g_b_init_get_sid_identifier_authority ): Add several static
9081 global variables.
9082
9083 * w32.c (globals_of_w32): New function. Used to initialize those
9084 global variables that must always be initialized on startup even
9085 when the global variable initialized is non zero. Its primary
9086 purpose at this time is to set the global variables
9087 g_b_init_is_windows_9x, g_b_init_open_process_token,
9088 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
9089 g_b_init_get_sid_identifier_authority to 0 on startup.
9090 Called from main.
9091
9092 * w32.c (is_windows_9x): Perform initialization only if
9093 g_b_init_is_windows_9x is equal to 0. On initialization set
9094 g_b_init_is_windows_9x equal to 1.
9095
9096 * w32.c (open_process_token): Perform initialization only if
9097 g_b_init_open_process_token is equal to 0. On initialization set
9098 g_b_init_open_process_token equal to 1.
9099
9100 * w32.c (get_token_information): Perform initialization only if
9101 g_b_init_get_token_information is equal to 0. On initialization
9102 set g_b_init_get_token_information equal to 1.
9103
9104 * w32.c (lookup_account_sid): Perform initialization only if
9105 g_b_init_lookup_account_sid is equal to 0. On initialization
9106 set g_b_init_lookup_account_sid equal to 1.
9107
9108 * w32.c (get_sid_identifier_authority): Perform initialization
9109 only if g_b_init_get_sid_identifier_authority is equal to 0.
9110 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9111
9112 * w32fns.c (globals_of_w32fns): New function. Used to initialize
9113 those global variables that must always be initialized on startup
9114 even when the global variable initialized is non zero.
9115 Its primary purpose at this time is to initialize the global variable
9116 track_mouse_event_fn.
9117
9118 * w32fns.c (w32_wnd_proc): Remove initialization of
9119 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9120
9121 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9122
9123 * w32menu.c (globals_of_w32menu): New function. Used to
9124 initialize those global variables that must always be initialized
9125 on startup even when the global variable initialized is non zero.
9126 Its primary purpose at this time is to initialize the global
9127 variables get_menu_item_info and set_menu_item_info.
9128
9129 * w32menu.c (initialize_frame_menubar): Remove initialization of
9130 get_menu_item_info and set_menu_item_info.
9131
9132 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9133
9134 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
9135 Declare them.
9136
9137 * emacs.c (main): Call globals_of_w32 prior to calling
9138 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
9139 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
9140 is defined.
9141
9142 * w32term.c (x_update_window_begin): Fix Windows API error
9143 detected by BoundsChecker. Test to determine if
9144 w32_system_caret_hwnd is NULL prior to attempting to use
9145 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
9146
9147 * w32term.c (x_update_window_end): Fix Windows API error
9148 detected by BoundsChecker. Test to determine if
9149 w32_system_caret_hwnd is NULL prior to attempting to use
9150 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
9151
9152 2002-12-17 Kenichi Handa <handa@m17n.org>
9153
9154 * coding.c (coding_system_require_warning): New variable.
9155 (syms_of_coding): DEFVAR it.
9156
9157 * coding.h (coding_system_require_warning): Extern it.
9158
9159 * fileio.c (choose_write_coding_system): Even if
9160 Vcoding_system_for_write is non-nil, if
9161 coding_system_require_warning is nonzero, call
9162 Vselect_safe_coding_system_function.
9163
9164 2002-12-17 Markus Rost <rost@math.ohio-state.edu>
9165
9166 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
9167 (lisp): Add font-core.
9168
9169 2002-12-13 Stefan Monnier <monnier@cs.yale.edu>
9170
9171 * textprop.c (text_read_only): New arg `propval'.
9172 (get_char_property_and_overlay): Remove unused var `next_overlay'.
9173 (verify_interval_modification): Use text_read_only's new arg.
9174
9175 2002-12-13 Kenichi Handa <handa@m17n.org>
9176
9177 * coding.c (Funencodable_char_position): Set pend correctly.
9178
9179 2002-12-12 Jason Rumney <jasonr@gnu.org>
9180
9181 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
9182 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
9183 Be more careful about when help_events are generated.
9184
9185 2002-12-12 Steven Tamm <steventamm@mac.com>
9186
9187 * macterm.c (mac_check_for_quit_char): Correctly set the
9188 modifiers of the event to 0.
9189 * mac.c (sys_select): Duplicate rfds before calling select to
9190 ensure that rfds survive the while loop.
9191
9192 2002-12-11 Kim F. Storm <storm@cua.dk>
9193
9194 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
9195 row_containing_pos returned NULL.
9196
9197 2002-12-10 Steven Tamm <steventamm@mac.com>
9198
9199 * mac.c (sys_read): Fix sys_read to not call select if IO is
9200 non-blocking.
9201 (sys_select): Fix sys_select to not use a timeout larger than
9202 the one given.
9203
9204 2002-12-10 Juanma Barranquero <lektu@terra.es>
9205
9206 * editfns.c (Fformat): Use alloca, not _alloca.
9207
9208 2002-12-09 Richard M. Stallman <rms@gnu.org>
9209
9210 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
9211 as the last thing.
9212
9213 2002-12-09 Dave Love <fx@gnu.org>
9214
9215 * s/sol2-8.h: Removed. (Not necessary.)
9216
9217 2002-12-09 Matthew Swift <swift@alum.mit.edu>
9218
9219 * editfns.c (Fformat): Handle precision in string conversion
9220 specifiers like libc functions do (ie, print at most that many
9221 characters).
9222
9223 2002-12-08 Richard M. Stallman <rms@gnu.org>
9224
9225 * xdisp.c (row_containing_pos): Check more carefully
9226 whether charpos is really in the row before returning it.
9227
9228 2002-12-07 Steven Tamm <steventamm@mac.com>
9229
9230 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
9231
9232 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
9233 each stack frame. This may change as it could be time consuming.
9234
9235 * macterm.c (mac_check_for_quit_char, quit_char_comp)
9236 (init_quit_char_handler, mac_determine_quit_char_modifiers)
9237 (mac_initialize): Add code to check for pressing of quit_char
9238 in the OS event queue.
9239
9240 * mac.c (sys_select): Call mac_check_for_quit_char every second
9241 while blocking on select.
9242
9243 * mac.c (sys_read): Use sys_select to test for input first
9244 before calling read, to allow C-g to break.
9245
9246 2002-12-07 Richard M. Stallman <rms@gnu.org>
9247
9248 * minibuf.c (Fcompleting_read): Doc fix.
9249
9250 * lread.c (syms_of_lread) <load-history>: Doc fix.
9251
9252 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9253
9254 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
9255 autoload.
9256
9257 * data.c (Fdefalias): Record in load-history redefining an autoload.
9258
9259 * alloca.c: Undo ifdef change accidentally made on 12-04.
9260
9261 2002-12-06 Francesco Potorti` <pot@gnu.org>
9262
9263 * xfns.c (png_load): Avoid double gamma correction for PNG images.
9264
9265 2002-12-04 Richard M. Stallman <rms@gnu.org>
9266
9267 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
9268
9269 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
9270
9271 * alloca.c: Don't use #error.
9272
9273 2002-12-03 Dave Love <fx@gnu.org>
9274
9275 * buffer.c (Qucs_set_table_for_input): New.
9276 (Fget_buffer_create): Use it.
9277 (Qset_buffer_major_mode_hook): Deleted.
9278 (Fset_buffer_major_mode): Revert previous change.
9279 (init_buffer_once): Intern ucs-set-table-for-input.
9280 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
9281 Add &Qucs_set_table_for_input.
9282
9283 2002-12-03 Andreas Schwab <schwab@suse.de>
9284
9285 * callint.c (Fcall_interactively): Use next_event only if less
9286 than key_count.
9287
9288 2002-12-02 Andrew Choi <akochoi@shaw.ca>
9289
9290 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
9291 names to 255 characters.
9292
9293 * macterm.c (XTread_socket): If all frames have been collapsed,
9294 expand the first one before handling drag-and-drop events.
9295
9296 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
9297 which is detected by autoconf.
9298
9299 2002-12-01 Steven Tamm <steventamm@mac.com>
9300
9301 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
9302 offset in two hints table to allow prebinding to be redone and
9303 allow the executable to be stripped.
9304
9305 2002-11-29 Dave Love <fx@gnu.org>
9306
9307 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
9308 already provided.
9309
9310 2002-11-29 Richard M. Stallman <rms@gnu.org>
9311
9312 * xdisp.c (start_display): Check more intelligently for
9313 whether the line is continued.
9314 (move_it_vertically_backward): Clear it->continuation_lines_width.
9315
9316 2002-11-28 Dave Love <fx@gnu.org>
9317
9318 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
9319 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
9320
9321 2002-11-27 Steven Tamm <steventamm@mac.com>
9322
9323 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
9324 more descriptive error output from lread.c:Fload upon most require
9325 cycles during boostrapping.
9326
9327 2002-11-27 Jason Rumney <jasonr@gnu.org>
9328
9329 * fileio.c (Finsert_file_contents): Give a more appropriate error
9330 for files bigger than 2Gb when off_t is 32 bit.
9331
9332 * dired.c (Ffile_attributes): Don't return negative file sizes for
9333 files bigger than 2Gb when off_t is 32 bit.
9334
9335 2002-11-27 Dave Love <fx@gnu.org>
9336
9337 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
9338
9339 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
9340 Test GETPGRP_VOID instead.
9341 [BSD_TERMIOS]: Remove definitions (never used).
9342
9343 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
9344 Don't define.
9345 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
9346
9347 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
9348
9349 2002-11-25 Jason Rumney <jasonr@gnu.org>
9350
9351 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
9352 supported.
9353
9354 2002-11-25 Dave Love <fx@gnu.org>
9355
9356 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
9357
9358 * Makefile.in (TEMACS_LDFLAGS): Update last change.
9359
9360 2002-11-25 Andreas Schwab <schwab@suse.de>
9361
9362 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
9363
9364 2002-11-24 Steven Tamm <steventamm@mac.com>
9365
9366 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
9367 determine the size of pointers alloced in unexed space instead
9368 of using possibly invalid emacs_zone pointers. This fixes the
9369 binary incompatibility problems caused by updates to libSystem.B.
9370
9371 2002-11-24 Richard M. Stallman <rms@gnu.org>
9372
9373 * search.c (Fstring_match): Doc fix.
9374
9375 * callint.c (Fcall_interactively): If a command fails because
9376 `*' detects a read-only buffer, but RECORD_FLAG is set,
9377 record it anyway if the args don't actually do tty input.
9378
9379 2002-11-22 Dave Love <fx@gnu.org>
9380
9381 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
9382
9383 * keyboard.c (interrupt_signal): Provide forward declaration.
9384 (kbd_buffer_store_event): Don't declare interrupt_signal.
9385
9386 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
9387
9388 2002-11-21 Richard M. Stallman <rms@gnu.org>
9389
9390 * eval.c (interactive_p): Skip any number of bytecode
9391 and special form frames, in any order.
9392
9393 2002-11-20 Jason Rumney <jasonr@gnu.org>
9394
9395 * w32fns.c (convert_mono_to_color_image): New function.
9396 (xbm_load, xbm_load_image): Use it when foreground or background
9397 is explicitly set.
9398
9399 2002-11-19 Dave Love <fx@gnu.org>
9400
9401 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
9402
9403 2002-11-18 Jason Rumney <jasonr@gnu.org>
9404
9405 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
9406 (XPutPixel): Swap blue and red.
9407 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
9408 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
9409 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
9410 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
9411
9412 2002-11-18 Dave Love <fx@gnu.org>
9413
9414 * m/orion105.h (HAVE_ALLOCA): Don't define.
9415
9416 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
9417
9418 * m/intel386.h: Don't include alloca.h or define alloca.
9419
9420 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
9421 malloc, realloc, calloc.
9422
9423 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
9424 (bcmp): Don't define.
9425
9426 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
9427
9428 * m/amdahl.h: Don't define LIB_STANDARD.
9429
9430 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
9431
9432 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
9433
9434 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
9435 Don't include alloca.h.
9436
9437 * s/aix3-2.h (HAVE_FSYNC): Don't define.
9438
9439 * regex.c (_GNU_SOURCE): Don't define.
9440
9441 * process.c (_GNU_SOURCE): Don't define.
9442
9443 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
9444
9445 2002-11-18 Markus Rost <rost@math.ohio-state.edu>
9446
9447 * s/sol2-8.h: Include sol2-6.h.
9448
9449 2002-11-18 Miles Bader <miles@gnu.org>
9450
9451 * dispextern.h (struct face): Add `overstrike' field.
9452 * xterm.c (x_draw_glyph_string_foreground)
9453 (x_draw_composite_glyph_string_foreground): Implement overstriking.
9454 * xfaces.c (load_face_font): Set `face->overstrike' based on
9455 result from choose_face_font.
9456 (best_matching_font, choose_face_font): Add `needs_overstrike'
9457 argument, and use it to return whether overstriking is desirable
9458 for this face/font combo.
9459 (set_font_frame_param: Pass new argument to choose_face_font.
9460
9461 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
9462
9463 This change is my fix for the following entry in etc/PROBLEMS:
9464 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
9465 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9466
9467 * w32.c: Added wrapper functions around the win32 API functions
9468 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
9469 GetSidIdentifierAuthority. These wrapper functions serve two
9470 purposes:
9471 1. They ensure that the wrapped function can never be called
9472 when Emacs is running on an operating system on which they are
9473 not supported (Microsoft Windows 95 / 98 / ME).
9474 2. They call the wrapped functions via function pointers rather
9475 than calling them directly. This avoids taking advantage of the
9476 undocumented fact that although these functions are not supported
9477 in the 9x branch of Microsoft Windows, the functions do exist in
9478 the version of advapi32.dll that is found in the 9x branch of
9479 Microsoft Windows.
9480
9481 * w32.c (init_user_info): Replace the calls to the win32 API
9482 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
9483 and GetSidIdentifierAuthority with calls to the newly added
9484 wrapper functions.
9485
9486 * w32.h: Added extern declarations for the following functions:
9487 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
9488 syms_of_w32menu, and void syms_of_fontset.
9489
9490 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
9491 function pointer track_mouse_event_fn in the handler for the
9492 WM_SETFOCUS message.
9493
9494 * w32menu.c (initialize_frame_menubar): Add code to
9495 reinitialize the function pointers set_menu_item_info and
9496 get_menu_item_info.
9497
9498 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
9499
9500 * sound.c: Added a partial implementation of play-sound-internal
9501 for Microsoft Windows. Added various #ifdef / #else / #endif
9502 code blocks to separate the code that will compile under
9503 Microsoft Windows from the code that is specific to Gnu/Linux.
9504 Moved several blocks of code around to make this separation of code
9505 into Windows compatible and Gnu/Linux compatible code blocks easier.
9506
9507 * makefile.w32-in: Include sound.c and link with WinMM.lib.
9508
9509 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
9510 added support for play-sound-internal under Windows would be
9511 included in the build of Emacs.
9512
9513 2002-11-16 Jason Rumney <jasonr@gnu.org>
9514
9515 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
9516
9517 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
9518
9519 2002-11-15 Stefan Monnier <monnier@cs.yale.edu>
9520
9521 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
9522 (adjust_point_for_property): Move out of display and invisible even if
9523 we were already inside before (in case a property was added while
9524 we weren't looking). Be more careful when handling invisible props.
9525 Skip invisible text as if it really wasn't there at all.
9526
9527 2002-11-15 Jason Rumney <jasonr@gnu.org>
9528
9529 * w32term.c (x_draw_image_foreground)
9530 (w32_draw_image_foreground_1): Use standard copy and invert
9531 operations to draw images.
9532
9533 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
9534 depth of 1.
9535 (xbm_read_bitmap_data): Invert bits as xbm is read in.
9536 (XPutPixel): Don't invert bits here.
9537
9538 2002-11-15 Jason Rumney <jasonr@gnu.org>
9539
9540 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
9541 (w32_draw_image_foreground_1): Handle image masks.
9542 (x_draw_image_glyph_string): Don't BitBlt transparently.
9543
9544 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
9545 (x_from_xcolors): Adjust RGB values for W32.
9546 (image_background, image_background_transparent)
9547 (postprocess_image, x_to_xcolors, x_disable_image)
9548 (x_build_heuristic_mask): Adapt for W32 and enable.
9549 (x_create_x_image_and_pixmap): Mark images with palettes as such.
9550 (xbm_load): Remove unused variable.
9551
9552 2002-11-14 Richard M. Stallman <rms@gnu.org>
9553
9554 * buffer.c (syms_of_buffer): Doc fix.
9555
9556 2002-11-14 Dave Love <fx@gnu.org>
9557
9558 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
9559
9560 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
9561 * xmenu.c (unuse_menu_items, digest_single_submenu):
9562 * xfns.c (x_put_x_image):
9563 * xdisp.c (message2_nolog, set_message):
9564 * undo.c (record_point):
9565 * terminfo.c (tparam):
9566 * syntax.c (scan_sexps_forward):
9567 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
9568 * composite.c (update_compositions):
9569 * cm.c (calccost, cmgoto):
9570 * charset.c (c_string_width): Declare all args (per C99).
9571
9572 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
9573
9574 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
9575 Don't declare.
9576
9577 * emacs.c (main) [!VMS]: Avoid third arg.
9578
9579 * fns.c (Fcopy_sequence): Doc fix.
9580 (Fmap_char_table): Cast `call2'.
9581
9582 2002-11-14 Francesco Potorti` <pot@gnu.org>
9583
9584 * s/sol2-8.h: New file.
9585
9586 2002-11-14 Kim F. Storm <storm@cua.dk>
9587
9588 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
9589 dependency on `risky-local-variable' and the :propertize form.
9590
9591 2002-11-12 Stefan Monnier <monnier@cs.yale.edu>
9592
9593 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
9594
9595 * syntax.c (scan_sexps_forward): Undo last patch.
9596 Use a more obvious fix: check eob before updating the syntax table.
9597
9598 2002-11-09 Stefan Monnier <monnier@cs.yale.edu>
9599
9600 * syntax.c (scan_sexps_forward): Update syntax table before reading
9601 a char rather than after so we don't update the table past eob.
9602
9603 2002-11-09 Dave Love <fx@gnu.org>
9604
9605 * buffer.c (Fset_buffer_major_mode): Fix last change.
9606
9607 * regex.c (regexec): Fix pmatch declaration.
9608
9609 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
9610
9611 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
9612 to self-inserting characters.
9613 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
9614
9615 * coding.c (Vtranslation_table_for_input): New.
9616 (syms_of_coding): DEFVAR it.
9617
9618 2002-11-08 Juanma Barranquero <lektu@terra.es>
9619
9620 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
9621 window.
9622
9623 2002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9624
9625 * process.c (Fformat_network_address): Remove unused locals p,
9626 cp, and i.
9627
9628 2002-11-06 Dave Love <fx@gnu.org>
9629
9630 * buffer.c (Qset_buffer_major_mode_hook): New.
9631 (Fset_buffer_major_mode): Use it.
9632
9633 2002-11-06 Richard M. Stallman <rms@gnu.org>
9634
9635 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
9636 and stop_polling.
9637
9638 * process.c (wait_reading_process_input):
9639 Test POLLING_PROBLEM_IN_SELECT, not hpux.
9640 Avoid initialization for auto Lisp_Object var.
9641
9642 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
9643
9644 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
9645
9646 2002-11-05 Richard M. Stallman <rms@gnu.org>
9647
9648 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
9649
9650 * callint.c (Fcall_interactively): New local filter_specs.
9651 (Fcall_interactively): Check for progn as well as let.
9652 Add a gcpro.
9653 (Qprogn): New variable.
9654 (syms_of_callint): Staticpro and init Qprogn.
9655
9656 2002-11-04 John Paul Wallington <jpw@shootybangbang.com>
9657
9658 * lread.c (Feval_buffer): Doc fix.
9659
9660 2002-11-04 Dave Love <fx@gnu.org>
9661
9662 * keyboard.c (read_char): Always translate iff
9663 Vkeyboard_translate_table is a char table and c is valid.
9664
9665 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
9666 and fix C types.
9667
9668 2002-11-03 Stefan Monnier <monnier@cs.yale.edu>
9669
9670 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
9671
9672 * editfns.c (get_pos_property): Don't hardcode Qfield.
9673
9674 * keyboard.c (adjust_point_for_property): Handle `display' prop on
9675 overlays. Also handle `invisible' prop.
9676
9677 2002-11-02 Stefan Monnier <monnier@cs.yale.edu>
9678
9679 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
9680 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
9681
9682 2002-11-01 Andreas Schwab <schwab@suse.de>
9683
9684 * editfns.c (Fmessage): Revert last change to properly handle %%.
9685
9686 2002-11-01 Stefan Monnier <monnier@cs.yale.edu>
9687
9688 * xmenu.c (unuse_menu_items): New fun.
9689 (menu_items_inuse): New var.
9690 (syms_of_xmenu): Initialize it.
9691 (init_menu_items): Use it to detect re-entrance.
9692 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
9693 (Fx_popup_menu): Remove spurious XSETFRAME.
9694
9695 * editfns.c (find_field): Make an exception for nil fields.
9696
9697 2002-11-01 Dave Love <fx@gnu.org>
9698
9699 * m/gec63.h: Deleted.
9700
9701 2002-10-31 Dave Love <fx@gnu.org>
9702
9703 * xterm.c (XTread_socket): Fix last change.
9704 (xaw_scroll_callback): Cast call_data to long to avoid warning.
9705
9706 2002-10-31 Stefan Monnier <monnier@cs.yale.edu>
9707
9708 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
9709
9710 2002-10-30 Stefan Monnier <monnier@cs.yale.edu>
9711
9712 * editfns.c (overlays_around, get_pos_property): New funs.
9713 (find_field): Use them.
9714 Also be careful not to modify POS before its last use.
9715 (Fmessage): Don't Fformat if there's nothing to format.
9716
9717 2002-10-30 Dave Love <fx@gnu.org>
9718
9719 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
9720 [HAVE_PTY_H]; Include pty.h.
9721
9722 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
9723
9724 * xterm.c (Qeql): Declare.
9725 (Vx_keysym_table): New.
9726 (syms_of_xterm): Initialize it.
9727 (XTread_socket): Use it. Deal with ASCII keysyms.
9728 (XSetIMValues) [HAVE_X11R6]: Prototype.
9729
9730 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
9731 (lispy_kana_keys): Comment out.
9732 (make_lispy_event) [XK_kana_A]: Comment out.
9733 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
9734 Fix sprintf call.
9735
9736 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
9737 regexp.h change).
9738 (TERMINFO, LIBS_TERMCAP): Define.
9739
9740 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
9741 (bcmp): Define conditional on HAVE_BCMP.
9742 (NO_SIOCTL_H): Don't define.
9743 (TIOCSIGSEND): Don't make conditional on IRIX6.
9744
9745 * s/sol2-5.h: Don't include strings.h.
9746 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
9747
9748 * s/irix6-0.h (IRIX6): Don't define.
9749 (bcopy, bcmp, bzero): Don't undef.
9750
9751 * s/irix6-5.h: Don't include strings.h.
9752 (IRIX6): Don't define.
9753 (bcopy, bcmp, bzero): Don't undef.
9754
9755 * syntax.c (Fforward_comment): Doc fix.
9756
9757 2002-10-29 Kim F. Storm <storm@cua.dk>
9758
9759 * process.c (Fsignal_process): Allow PROCESS to be specified by
9760 name in addition to pid (as integer or string).
9761
9762 2002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
9763
9764 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
9765 environments.
9766
9767 2002-10-27 Kim F. Storm <storm@cua.dk>
9768
9769 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
9770
9771 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
9772
9773 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
9774
9775 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
9776
9777 2002-10-26 Richard M. Stallman <rms@gnu.org>
9778
9779 * editfns.c (Fformat): Detect invalid format letters for floats.
9780
9781 2002-10-25 Kenichi Handa <handa@m17n.org>
9782
9783 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
9784 (x_set_title): Likewise.
9785
9786 2002-10-25 Juanma Barranquero <lektu@terra.es>
9787
9788 * macgui.h:
9789 * w32gui.h: Remove definition of XColor.
9790
9791 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
9792
9793 2002-10-24 Kim F. Storm <storm@cua.dk>
9794
9795 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
9796 Callers changed (supply dummy arg).
9797
9798 * lisp.h (get_window_cursor_type): Update prototype.
9799
9800 * w32term.c (x_display_and_set_cursor): Get active_cursor from
9801 get_window_cursor_type to track system caret.
9802
9803 2002-10-24 Kim F. Storm <storm@cua.dk>
9804
9805 * process.c (Fformat_network_address): New function.
9806 (syms_of_process): Defsubr it.
9807 (list_processes_1): Use it to format :local/:remote address if
9808 service/host is not set; before Emacs would crash in that case.
9809 (Fmake_network_process): Don't use Ffind_operation_coding_system
9810 to setup coding system if host or service is not set.
9811
9812 2002-10-23 Juanma Barranquero <lektu@terra.es>
9813
9814 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
9815
9816 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
9817 COLORREF.
9818
9819 * macgui.h:
9820 * w32gui.h: Add definition of XColor.
9821
9822 * macfns.c:
9823 * w32fns.c:
9824 * xfaces.c: Remove definition of XColor.
9825
9826 2002-10-22 Stefan Monnier <monnier@cs.yale.edu>
9827
9828 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
9829
9830 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
9831 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
9832 window if it is dedicated.
9833 (Fshrink_window): Add preserve_before as was done for enlarge_window.
9834 (Vspecial_display_function): Update docstring.
9835
9836 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
9837 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
9838 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
9839
9840 2002-10-21 Stefan Monnier <monnier@cs.yale.edu>
9841
9842 * casefiddle.c (casify_region): Don't treat a prefix char as part
9843 of a word when at the beginning.
9844
9845 2002-10-17 Juanma Barranquero <lektu@terra.es>
9846
9847 * lread.c (syms_of_lread): Fix typos.
9848
9849 2002-10-17 Dave Love <fx@gnu.org>
9850
9851 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
9852
9853 2002-10-16 Richard M. Stallman <rms@gnu.org>
9854
9855 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
9856
9857 2002-10-14 Juanma Barranquero <lektu@terra.es>
9858
9859 * w16select.c (syms_of_win16select): Fix docstring for
9860 `selection-coding-system'.
9861
9862 * w32select.c (syms_of_w32select): Likewise.
9863
9864 2002-10-14 Stefan Monnier <monnier@cs.yale.edu>
9865
9866 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
9867 a backslash-quoted char.
9868 (scan_lists, scan_sexps_forward): Pacify the compiler.
9869
9870 2002-10-13 Richard M. Stallman <rms@gnu.org>
9871
9872 * window.c (window_scroll): Set immediate_quit.
9873
9874 * print.c (print): When backquote form is the car of a list,
9875 output in old style. Use old_backquote_output to output all
9876 comma forms inside it in old style too.
9877
9878 * buffer.h (struct buffer): Move `undo_list' down below `name'.
9879
9880 2002-10-11 Markus Rost <rost@math.ohio-state.edu>
9881
9882 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
9883 batch mode).
9884
9885 * lread.c (Fload): Doc fix (load-suffixes).
9886
9887 2002-10-10 Steven Tamm <steventamm@mac.com>
9888
9889 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
9890 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
9891 Also switch the default to Qnil from Qt.
9892
9893 2002-10-08 Kenichi Handa <handa@m17n.org>
9894
9895 * coding.c (code_convert_region): When we need more GAP for
9896 conversion, pay attention to the case that coding->produced is not
9897 greater than coding->consumed.
9898
9899 2002-10-07 Richard M. Stallman <rms@gnu.org>
9900
9901 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
9902
9903 2002-10-06 Andrew Choi <akochoi@shaw.ca>
9904
9905 * macmenu.c (mac_menu_show): Add j to count menu items; match
9906 menu_item_selection to it to find selected item.
9907
9908 2002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9909
9910 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
9911 cases. The correct fix is to pass ReparentNotify to Xt.
9912 The shell widget interprets ConfigureNotify differently depending
9913 on if it has been reparented or not.
9914
9915 2002-10-05 Markus Rost <rost@math.ohio-state.edu>
9916
9917 * editfns.c (Fformat_time_string): Doc fix.
9918
9919 2002-10-05 John Paul Wallington <jpw@shootybangbang.com>
9920
9921 * fns.c (Flength): Doc fix.
9922
9923 2002-10-04 Stefan Monnier <monnier@cs.yale.edu>
9924
9925 * keyboard.c (keyremap): New struct.
9926 (read_key_sequence): Use it: globally replace keytran_foo with
9927 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
9928 keytran_next and fkey_next to just `next'.
9929
9930 2002-10-04 Steven Tamm <steventamm@mac.com>
9931
9932 * macterm.c (keycode_to_xkeysym_table): Change return to be
9933 treated like an X keysym.
9934
9935 2002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9936
9937 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
9938 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
9939 This is to also handle x/y changes that occur because of a resize.
9940
9941 2002-10-02 John Paul Wallington <jpw@shootybangbang.com>
9942
9943 * frame.c (Vdelete_frame_functions): New variable.
9944 (syms_of_frame): Initialize and defvar it.
9945 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
9946 it when frame's `tooltip' parameter is non-nil.
9947
9948 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
9949
9950 * w32fns.c (x_create_tip_frame): Likewise.
9951
9952 * macfns.c (x_create_tip_frame): Likewise.
9953
9954 2002-09-30 Kenichi Handa <handa@m17n.org>
9955
9956 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
9957 -1 before calling ccl_driver.
9958
9959 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
9960 Only when it is non-nil, handle composition sequence.
9961 (setup_coding_system) <0>: Don't force composition handling.
9962
9963 * Makefile.in (lisp, shortlisp): Add utf-16.elc
9964
9965 2002-09-29 Richard M. Stallman <rms@gnu.org>
9966
9967 * search.c (Freplace_match): Adjust match data for the substitution
9968 just made in the buffer.
9969
9970 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
9971 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
9972
9973 2002-09-27 Richard M. Stallman <rms@gnu.org>
9974
9975 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
9976 (read_char): Use them. Do all exits thru the end of the function.
9977
9978 2002-09-27 Kenichi Handa <handa@etl.go.jp>
9979
9980 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
9981 is nil.
9982
9983 2002-09-26 Richard M. Stallman <rms@gnu.org>
9984
9985 * regex.h (__restrict_arr): Don't define if already defined.
9986
9987 * coding.c (run_pre_post_conversion_on_str):
9988 Save and restore Vdeactivate_mark.
9989
9990 2002-09-26 John Paul Wallington <jpw@shootybangbang.com>
9991
9992 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
9993
9994 2002-09-26 Kenichi Handa <handa@etl.go.jp>
9995
9996 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
9997 nonzero, try face's family at first. Otherwise try FAMILY at first.
9998 (choose_face_font): If C is a single byte char or latin-1, call
9999 try_font_list with PREFER_FACE_FAMILY 1.
10000
10001 2002-09-21 Richard M. Stallman <rms@gnu.org>
10002
10003 * window.c (select_window_1): Don't select frame.
10004 Set frame's selected window only when frame itself is selected.
10005 (Fselect_window): Doc fix.
10006
10007 2002-09-18 Kim F. Storm <storm@cua.dk>
10008
10009 * process.c (make-network-process): Doc fix (there is no
10010 network-server-log-function hook).
10011
10012 2002-09-18 Richard M. Stallman <rms@gnu.org>
10013
10014 * print.c (print): Clear out the unused parts of Vprint_number_table.
10015 (syms_of_print): Doc fix for `print-number-table'.
10016
10017 * unexelf.c (unexec): Undo previous change.
10018
10019 2002-09-17 Andreas Schwab <schwab@suse.de>
10020
10021 * m/alpha.h [LINUX]: Don't define DATA_START.
10022
10023 2002-09-16 Dave Love <fx@gnu.org>
10024
10025 * unexelf.c (unexec): Deal with .got, reinstating change from
10026 25-08-1999.
10027
10028 2002-09-13 Richard M. Stallman <rms@gnu.org>
10029
10030 * s/sol2-6.h (UNEXEC): Comment out definition.
10031
10032 * unexsol.c (unexec): Don't downcase first letter of error msg.
10033
10034 * xfaces.c (Fcolor_supported_p): Just one arg is required.
10035
10036 2002-09-12 Markus Rost <rost@math.ohio-state.edu>
10037
10038 * unexsol.c: Include buffer.h, charset.h, coding.h.
10039
10040 2002-09-11 Richard M. Stallman <rms@gnu.org>
10041
10042 * unexsol.c: Don't use report_file_error; do it by hand
10043 using dlerror.
10044
10045 * process.c (wait_reading_process_input, both versions):
10046 Before calling turn_on_atimers, call stop_polling.
10047
10048 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
10049
10050 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
10051 we go to too_near_end, call clear_glyph_matrix.
10052 (redisplay_window): After make_cursor_line_fully_visible,
10053 call clear_glyph_matrix and bypass `goto done'.
10054
10055 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
10056 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
10057
10058 2002-09-10 Richard M. Stallman <rms@gnu.org>
10059
10060 * fileio.c (Fdo_auto_save): Catch error making directory.
10061 Only call push_message if we need to.
10062 At the same time, make an unwind-protect to pop it.
10063 Rename local message_p to old_message_p.
10064 (do_auto_save_make_dir, do_auto_save_eh): New functions.
10065 (do_auto_save_unwind): Don't call pop_message.
10066
10067 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
10068
10069 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
10070
10071 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
10072
10073 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
10074
10075 2002-09-10 Stefan Monnier <monnier@cs.yale.edu>
10076
10077 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
10078 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
10079 (re_match_2_internal): Be more careful with infinite loops.
10080
10081 2002-09-10 Kim F. Storm <storm@cua.dk>
10082
10083 * macros.c (end_kbd_macro): New function.
10084 (Fend_kbd_macro): Use it.
10085
10086 * macros.h (end_kbd_macro): Declare extern.
10087
10088 * keyboard.c (Fdiscard_input): If defining keyboard macro,
10089 end and save it instead of discarding it.
10090
10091 2002-09-09 Markus Rost <rost@math.ohio-state.edu>
10092
10093 * s/sol2-6.h: Fix typo. Add comment.
10094
10095 2002-09-09 Richard M. Stallman <rms@gnu.org>
10096
10097 * regex.c (regnum_t): Use signed int, not unsigned int.
10098
10099 * s/sol2-6.h: New file.
10100
10101 * s/sol2-5.h (UNEXEC): Definition deleted.
10102
10103 2002-09-08 Kim F. Storm <storm@cua.dk>
10104
10105 * macros.c (executing_macro_index): Change type to EMACS_INT.
10106 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
10107
10108 * macros.h (executing_macro_index): Change type to EMACS_INT.
10109
10110 2002-09-06 Richard M. Stallman <rms@gnu.org>
10111
10112 * casetab.c (set_case_table): Make canon table point to eqv table.
10113
10114 2002-09-06 Juanma Barranquero <lektu@terra.es>
10115
10116 * coding.c (syms_of_coding): Fix spacing.
10117
10118 * composite.c (Fcompose_region_internal)
10119 (Fcompose_string_internal): Likewise.
10120
10121 * data.c (Flsh): Likewise.
10122
10123 * fontset.c (Fset_fontset_font): Likewise.
10124
10125 * macfns.c (Fx_server_max_request_size): Likewise.
10126
10127 * w16select.c (syms_of_win16select): Likewise.
10128
10129 * w32select.c (syms_of_w32select): Likewise.
10130
10131 * xselect.c (syms_of_xselect): Likewise.
10132
10133 2002-09-05 Richard M. Stallman <rms@gnu.org>
10134
10135 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
10136 call EXTEND_RANGE_TABLE and return a proper value.
10137 (set_image_of_range): Don't call set_image_of_range_1
10138 if no TRANSLATE or if range includes all of Latin-1.
10139 Only call it for the Latin-1 part of the range.
10140 For other cases, make two separate ranges,
10141 one for the original specified characters and one for
10142 their case-conversions.
10143
10144 2002-09-04 Richard M. Stallman <rms@gnu.org>
10145
10146 * s/sol2-5.h (UNEXEC): Use unexsol.o.
10147
10148 * window.c (displayed_window_lines): Correct for one-off bug
10149 in HEIGHT on non-window displays.
10150
10151 * regex.c (set_image_of_range_1): New function.
10152 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
10153 Return a value to indicate running out of memory.
10154 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
10155 (extend_range_table_work_area): New subroutine.
10156 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
10157 Different calling conventions, and used from set_image_of_range{,_1}.
10158 (IMMEDIATE_QUIT_CHECK): Definitions moved.
10159
10160 2002-09-04 Juanma Barranquero <lektu@terra.es>
10161
10162 * makefile.w32-in: All dependencies updated.
10163
10164 2002-09-01 Richard M. Stallman <rms@gnu.org>
10165
10166 * unexsol.c: New file.
10167
10168 * xfns.c (Qbox): Declare external, don't define.
10169
10170 * xdisp.c (redisplay_window) <force-start case>:
10171 If point is on semi-visible last line, reposition
10172 it at previous line.
10173
10174 * alloc.c (display_malloc_warning): Use display-warning.
10175 (malloc_warning_1): Function deleted.
10176
10177 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
10178
10179 * lread.c (read1): Handle #! by skipping the line.
10180
10181 2002-08-31 Richard M. Stallman <rms@gnu.org>
10182
10183 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
10184 Don't include LDFLAGS.
10185 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
10186
10187 2002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
10188
10189 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
10190 member of x_display_info unless we compile for some window system.
10191
10192 2002-08-31 Kim F. Storm <storm@cua.dk>
10193
10194 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
10195 (get_window_cursor_type): Don't use them.
10196 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
10197
10198 2002-08-30 Kenichi Handa <handa@etl.go.jp>
10199
10200 * xdisp.c (get_next_display_element): Fix previous change.
10201
10202 2002-08-30 Andrew Choi <akochoi@shaw.ca>
10203
10204 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
10205 (expose_window): Use it to fix the display of overlapping
10206 rows (merge code from xterm.c).
10207
10208 * macfns.c (Qbox): Add extern declaration.
10209
10210 2002-08-30 Juanma Barranquero <lektu@terra.es>
10211
10212 * w32fns.c (Qbox): Make extern.
10213 (syms_of_w32fns): Remove initialization of Qbox.
10214
10215 2002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
10216
10217 * xfns.c (Fx_open_connection): Fix error message.
10218
10219 2002-08-30 Kim F. Storm <storm@cua.dk>
10220
10221 The following changes consolidates the handling of the cursor
10222 type in xdisp.c, moving duplicate code and functionality from
10223 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
10224
10225 * frame.h (enum text_cursor_kinds): Consolidated here.
10226 Added DEFAULT_CURSOR value.
10227 (struct frame) <desired_cursor, cursor_width>
10228 <blink_off_cursor, blink_off_cursor_width>: New fields.
10229 Consolidated from output_x, output_w32 and output_mac structs.
10230 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
10231 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
10232
10233 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
10234 Variables consolidated here.
10235 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
10236 (Vcursor_in_non_selected_windows): Renamed from
10237 cursor_in_non_selected_windows and changed to Lisp_Object.
10238 (syms_of_xdisp): Define and staticpro new and moved variables.
10239 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
10240 consolidated here. Recognize Qhollow setting.
10241 (set_frame_cursor_types): New function to set frame cursor types
10242 based on the frame parameters.
10243 (get_window_cursor_type): New function to calculate new cursor
10244 type and width for the specified window. Based on duplicated
10245 code consolidated here.
10246 Enhancements: cursor-in-non-selected-windows may be a cursor type,
10247 check buffer-local alternate-cursor-type and blink-cursor-alist
10248 before using built-in blink off methods.
10249
10250 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
10251
10252 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
10253 (get_specified_cursor_type, get_window_cursor_type)
10254 (set_frame_cursor_types): Added prototypes.
10255
10256 * macfns.c (x_specified_cursor_type): Removed.
10257 (x_set_cursor_type): Use set_frame_cursor_types.
10258 (Qbar, Qbox): Removed.
10259 (syms_of_macfns): Don't intern or staticpro them.
10260
10261 * macterm.c (x_specified_cursor_type): Remove prototype.
10262 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
10263 (x_display_and_set_cursor): Use get_window_cursor_type.
10264 Remove unused local variables cursor_non_selected, active_cursor.
10265 Redraw cursor if hbar cursor width changes.
10266 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
10267
10268 * macterm.h (enum text_cursor_kinds): Removed.
10269 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
10270 <blink_off_cursor, blink_off_cursor_width>: Members removed.
10271 (FRAME_DESIRED_CURSOR): Macro removed.
10272
10273 * w32fns.c (Vblink_cursor_alist): Removed.
10274 (Qbar, Qhbar, Qbox, Qhollow): Removed.
10275 (syms_of_w32fns): Don't intern, staticpro, or define them.
10276 (x_specified_cursor_type): Removed.
10277 (x_set_cursor_type): Use set_frame_cursor_types.
10278
10279 * w32term.c (x_specified_cursor_type): Remove prototype.
10280 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
10281 (x_display_and_set_cursor): Use get_window_cursor_type.
10282 Remove unused local variables cursor_off_state.
10283 Redraw cursor if hbar cursor width changes.
10284 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
10285
10286 * w32term.h (enum text_cursor_kinds): Removed.
10287 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
10288 <blink_off_cursor, blink_off_cursor_width>: Members removed.
10289 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
10290 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
10291 (struct w32_display_info) <x_highlight_frame>: Renamed member from
10292 w32_highlight_frame.
10293
10294 * xfns.c (Vblink_cursor_alist): Removed.
10295 (Qbar, Qhbar, Qbox, Qhollow): Removed.
10296 (syms_of_xfns): Don't intern, staticpro, or define them.
10297 (x_specified_cursor_type): Removed.
10298 (x_set_cursor_type): Use set_frame_cursor_types.
10299
10300 * xterm.c (x_specified_cursor_type): Remove prototype.
10301 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
10302 (x_display_and_set_cursor): Use get_window_cursor_type.
10303 Remove unused local variables cursor_off_state.
10304 Redraw cursor if hbar cursor width changes.
10305
10306 * xterm.h (enum text_cursor_kinds): Removed.
10307 (struct output_x) <current_cursor, desired_cursor, cursor_width>
10308 <blink_off_cursor, blink_off_cursor_width>: Members removed.
10309 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
10310 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
10311 (x_specified_cursor_type): Remove prototype.
10312
10313 2002-08-28 Richard M. Stallman <rms@gnu.org>
10314
10315 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
10316 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
10317 (Vblink_cursor_alist): New variable.
10318 (syms_of_w32fns): Initialize and defvar it.
10319 (x_specified_cursor_type): Recognize Qbox for filled box.
10320 Exceptions are hollow boxes.
10321 (Qbox, Qhollow): New variables.
10322 (syms_of_w32fns): Initialize and staticpro them.
10323
10324 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
10325 New macros.
10326 (struct w32_output): New fields blink_off_cursor,
10327 blink_off_cursor_width.
10328 (FRAME_CURSOR_WIDTH): New macro.
10329
10330 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
10331 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
10332
10333 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
10334 for bar cursor.
10335
10336 * w32term.c (expose_overlaps): New function.
10337 (expose_window): Use it to fix the display of overlapping rows.
10338
10339 2002-08-28 Simon Josefsson <jas@extundo.com>
10340
10341 * xfns.c (Fx_open_connection): Improve help when X connection
10342 fails, xhost is insecure and xauth is better.
10343
10344 2002-08-28 Juanma Barranquero <lektu@terra.es>
10345
10346 * makefile.w32-in: Add missing dependencies on w32term.h and
10347 composite.h.
10348
10349 * emacs.c (USAGE1): Add missing newline.
10350
10351 2002-08-27 Andrew Choi <akochoi@shaw.ca>
10352
10353 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
10354
10355 2002-08-27 Richard M. Stallman <rms@gnu.org>
10356
10357 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
10358 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
10359 (Vblink_cursor_alist): New variable.
10360 (syms_of_xfns): Initialize and defvar it.
10361 (x_specified_cursor_type): Recognize Qbox for filled box.
10362 Exceptions are hollow boxes.
10363 (Qbox, Qhollow): New variables.
10364 (syms_of_xfns): Initialize and staticpro them.
10365
10366 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
10367 New macros.
10368 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
10369
10370 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
10371 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
10372
10373 * emacs.c (main): Handle --script.
10374 (USAGE1): Mention --script.
10375 (standard_args): Define sort order for --script.
10376
10377 2002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
10378
10379 * xdisp.c (redisplay_updating_p): Variable removed.
10380 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
10381 New variables.
10382 (init_iterator): Don't free realized faces if
10383 inhibit_free_realized_faces is set.
10384 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
10385 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
10386 initialize Qinhibit_free_realized_faces.
10387
10388 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
10389 when iterator is adding glyphs to a glyph matrix.
10390
10391 2002-08-27 Kenichi Handa <handa@etl.go.jp>
10392
10393 * xdisp.c (get_next_display_element): In unibyte case, don't use
10394 octal form for such eight-bit characters that can be converted to
10395 multibyte char.
10396
10397 2002-08-26 Kim F. Storm <storm@cua.dk>
10398
10399 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
10400 foreground and background colors. From Joe Buehler.
10401
10402 2002-08-26 Miles Bader <miles@gnu.org>
10403
10404 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
10405
10406 2002-08-25 Andrew Choi <akochoi@shaw.ca>
10407
10408 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
10409 defined instead of MAC_OSX.
10410
10411 * s/darwin.h (select): Define select to sys_select only if
10412 HAVE_CARBON is defined.
10413 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
10414 (DONT_REOPEN_PTY): #def it.
10415
10416 * macterm.c (XTread_socket): Remove code to call
10417 SendEventToEventTarget for keys with command modifiers when
10418 mac_command_key_is_meta is nil.
10419
10420 2002-08-24 Andreas Schwab <schwab@suse.de>
10421
10422 * eval.c (Fdefvar): Fix last change.
10423
10424 2002-08-23 Richard M. Stallman <rms@gnu.org>
10425
10426 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
10427 Record variables in load history as (defvar . VAR).
10428 (Fdefvar): Don't record in load history if no initial value.
10429 (Qdefvar): New variable.
10430 (syms_of_eval): Init and staticpro it.
10431
10432 * lread.c (syms_of_lread): Doc fix.
10433 (build_load_history): Use Fmember to see if a definition
10434 is already in the Vload_history element.
10435
10436 * process.c (Fstart_process): Remove /: from program name.
10437
10438 * emacs.c (decode_env_path): Don't add /: if file name handler
10439 has a `safe-magic' property.
10440
10441 * callproc.c (Fcall_process): Remove /: from program name.
10442
10443 2002-08-23 Stefan Monnier <monnier@cs.yale.edu>
10444
10445 * regex.c (PATFETCH): Remove the translating fetch.
10446 (PATFETCH_RAW): Rename to PATFETCH.
10447 (set_image_of_range): New fun.
10448 (SET_RANGE_TABLE_WORK_AREA): Use it.
10449 (regex_compile): Don't translate the pattern chars so eagerly.
10450 Only do it when inserting an `exactn' bytecode or when handling
10451 a char-range.
10452 (mutually_exclusive_p): Avoid empty statement.
10453
10454 2002-08-22 Kim F. Storm <storm@cua.dk>
10455
10456 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
10457 end up on a partially visible line; this reverts a specific part
10458 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
10459 display error which has been reported several times now.
10460 However it introduces the problem that changes was supposed to fix.
10461 See my comments in the source if you want to debug this further.
10462
10463 2002-08-20 Kenichi Handa <handa@etl.go.jp>
10464
10465 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
10466
10467 2002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
10468
10469 * msdos.c (croak): Add `void' to definition.
10470
10471 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
10472 Don't define them, they are defined in msdos.c.
10473
10474 * mem-limits.h [MSDOS]: Declare etext.
10475
10476 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
10477 `const' since CORRECT_DIR_SEPS modifies its target.
10478
10479 2002-08-19 Kim F. Storm <storm@cua.dk>
10480
10481 * keyboard.c (Fclear_this_command_keys): Add optional arg
10482 KEEP-RECORD to avoid clearing lossage when we just want to clear
10483 the current key sequence (kmacro needs this).
10484
10485 2002-08-19 Kenichi Handa <handa@localhost>
10486
10487 * composite.c (run_composition_function): Call FUNC if it is fboundp.
10488
10489 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
10490 cons, return Qnil.
10491
10492 2002-08-17 Richard M. Stallman <rms@gnu.org>
10493
10494 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
10495
10496 * sysdep.c [!VMS]: Include sys/files.h.
10497
10498 * editfns.c (save_restriction_restore): Defend from unchained marker.
10499
10500 * buffer.c (overlays_at): Handle extending vec uniformly.
10501 (overlays_in): Handle extending vec from length 0 as in overlays_at.
10502
10503 2002-08-15 Andrew Choi <akochoi@shaw.ca>
10504
10505 * mac.c (init_mac_osx_environment): New function.
10506
10507 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
10508
10509 2002-08-14 Kim F. Storm <storm@cua.dk>
10510
10511 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
10512 executing macro before appending to it (when used from Lisp).
10513 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
10514 which is called prior to each iteration of macro (for kmacro.el).
10515 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
10516
10517 * lisp.h (Fexecute_kbd_macro): Update prototype.
10518
10519 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
10520
10521 2002-08-14 Kenichi Handa <handa@etl.go.jp>
10522
10523 * xselect.c (QUTF8_STRING): New variable.
10524 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
10525 (x_atom_to_symbol): Likewise.
10526 (x_get_local_selection): New argument local_request. If it is
10527 nonzero, call handler_fn with the second arg nil.
10528 (x_handle_selection_request): Call x_get_local_selection with
10529 local_request 0.
10530 (lisp_data_to_selection_data): Don't encode the string here.
10531 (Fx_get_selection_internal): Call x_get_local_selection with
10532 local_request 1.
10533 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
10534
10535 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
10536
10537 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
10538
10539 2002-08-13 Richard M. Stallman <rms@gnu.org>
10540
10541 * minibuf.c (Fminibufferp): New function.
10542 (syms_of_minibuf): Defsubr it.
10543 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
10544
10545 2002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
10546
10547 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
10548
10549 2002-08-12 Richard M. Stallman <rms@gnu.org>
10550
10551 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
10552 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
10553 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
10554 already.
10555
10556 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
10557
10558 2002-08-11 Andrew Choi <akochoi@shaw.ca>
10559
10560 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
10561 (Vmac_pass_command_to_system): New variable.
10562 (Vmac_pass_control_to_system): New variable.
10563 (do_mouse_moved): Check wp with is_emacs_window.
10564 (XTread_socket): Check window_ptr with is_emacs_window.
10565 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
10566 events back to Mac Toolbox for processing, depending on values of
10567 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
10568 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
10569 Vmac_pass_control_to_system.
10570
10571 2002-08-10 Kenichi Handa <handa@etl.go.jp>
10572
10573 * coding.c (unencodable_char_position): New function.
10574 (Funencodable_char_position): New function.
10575 (syms_of_coding): Defsubr Funencodable_char_position.
10576
10577 2002-08-10 Andrew Choi <akochoi@shaw.ca>
10578
10579 * mac.c (sys_select) [MAC_OSX]: New function.
10580
10581 * macterm.c (MakeMeTheFrontProcess): New function.
10582 (mac_initialize): Call MakeMeTheFrontProcess.
10583
10584 * s/darwin.h: Define select to sys_select.
10585
10586 2002-08-09 Richard M. Stallman <rms@gnu.org>
10587
10588 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
10589
10590 2002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
10591
10592 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
10593 end of the buffer.
10594
10595 2002-08-08 Ken Raeburn <raeburn@mit.edu>
10596
10597 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
10598
10599 * puresize.h (BASE_PURESIZE): Increase to 910000.
10600
10601 2002-08-08 Kenichi Handa <handa@etl.go.jp>
10602
10603 * coding.c (Ffind_operation_coding_system): For write-region, if
10604 VISIT is a filename, make it the target.
10605
10606 2002-08-07 Richard M. Stallman <rms@gnu.org>
10607
10608 * alloc.c (mark_object): Detect long lists for debugging.
10609 (mark_object_loop_halt): New variable.
10610
10611 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
10612
10613 * data.c (Fmake_variable_frame_local): Doc fix.
10614
10615 2002-08-01 David Ponce <david@dponce.com>
10616
10617 * w32menu.c (local_heap, local_alloc, local_free): New macros.
10618 (malloc_widget_value, free_widget_value)
10619 (w32_free_submenu_strings): Use them.
10620
10621 (push_submenu_start, push_submenu_end, push_left_right_boundary)
10622 (push_menu_pane, push_menu_item, single_keymap_panes)
10623 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
10624 (single_submenu, set_frame_menubar)
10625 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
10626
10627 (Fx_popup_menu): Don't show pop up menu until preceding one is
10628 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
10629
10630 * w32menu.c: Changes adapted from xmenu.c
10631 (set_frame_menubar): First parse all submenus,
10632 then make widget_value trees from them.
10633 Don't allocate any widget_value objects
10634 until we are done with the parsing.
10635 (parse_single_submenu): New function.
10636 (digest_single_submenu): New function.
10637 (single_submenu): Function deleted, replaced by those two.
10638
10639 2002-08-04 Andrew Choi <akochoi@shaw.ca>
10640
10641 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
10642 returns a valid window pointer before proceeding for keyDown and
10643 autoKey events.
10644
10645 2002-08-03 Andrew Choi <akochoi@shaw.ca>
10646
10647 * macterm.c (USE_CARBON_EVENTS): New macro.
10648 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
10649 (x_iconify_frame): Call CollapseWindow.
10650 (Vmac_reverse_ctrl_meta): New variable.
10651 (Vmac_wheel_button_is_mouse_2): New variable.
10652 (init_mac_drag_n_drop): New function.
10653 (mac_do_receive_drag): New function.
10654 (mac_handle_service_event): New function.
10655 (init_service_handler): New function.
10656 (mac_to_emacs_modifiers): New function.
10657 (mac_event_to_emacs_modifiers): New function.
10658 (mac_get_mouse_btn): New function.
10659 (mac_convert_event_ref): New function.
10660 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
10661 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
10662 mac_get_mouse_btn.
10663 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
10664
10665 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
10666 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
10667 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
10668 TOOL_BAR_EVENT for MAC_OS as well.
10669 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
10670 as for WINDOWS_NT.
10671 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
10672
10673 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
10674
10675 2002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
10676
10677 * xdisp.c (forward_to_next_line_start): Fix a condition that
10678 lead to a newline being skipped.
10679
10680 2002-08-02 Andrew Choi <akochoi@shaw.ca>
10681
10682 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
10683
10684 2002-08-01 Richard M. Stallman <rms@gnu.org>
10685
10686 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
10687
10688 2002-07-31 Andrew Choi <akochoi@shaw.ca>
10689
10690 * macfns.c: #undef init_process before #define-ing it.
10691
10692 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
10693 HAVE_CARBON is defined.
10694
10695 2002-07-31 Richard M. Stallman <rms@gnu.org>
10696
10697 * xmenu.c (set_frame_menubar): First parse all submenus,
10698 then make widget_value trees from them.
10699 Don't allocate any widget_value objects
10700 until we are done with the parsing.
10701 (parse_single_submenu): New function.
10702 (digest_single_submenu): New function.
10703 (single_submenu): Function deleted, replaced by those two.
10704
10705 2002-07-30 Juanma Barranquero <lektu@terra.es>
10706
10707 * w32proc.c (syms_of_ntproc): Fix docstring of
10708 `w32-get-true-file-attributes'.
10709
10710 2002-07-28 Richard M. Stallman <rms@gnu.org>
10711
10712 * s/hpux8.h (HPUX8): Define this before including hpux.h.
10713 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
10714
10715 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
10716
10717 * keyboard.c (make_lispy_event):
10718 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
10719 Explicitly clear up_modifier in event->modifiers.
10720
10721 2002-07-27 Richard M. Stallman <rms@gnu.org>
10722
10723 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
10724
10725 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
10726 for bar cursor.
10727
10728 2002-07-26 Kenichi Handa <handa@etl.go.jp>
10729
10730 * coding.c (detect_coding_iso2022): While checking a byte sequence
10731 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
10732 it in the normal loop.
10733
10734 2002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
10735
10736 * xterm.c (expose_overlaps): New function.
10737 (expose_window): Use it to fix the display of overlapping rows.
10738
10739 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
10740
10741 2002-07-23 Ken Raeburn <raeburn@gnu.org>
10742
10743 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
10744 since it only depends on XUINT.
10745
10746 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
10747 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
10748 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
10749 Macros deleted.
10750
10751 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
10752 its value over other approaches.
10753 * sysdep.c (start_of_data): Don't define the function if a macro
10754 form has been defined.
10755
10756 2002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
10757
10758 * xdisp.c (redisplay_updating_p): New variable.
10759 (init_iterator): Don't free realized faces when
10760 redisplay_updating_p is set.
10761 (redisplay_internal): Set redisplay_updating_p while updating
10762 the display.
10763
10764 2002-07-23 Richard M. Stallman <rms@gnu.org>
10765
10766 * editfns.c (Fmessage): Treat "" like nil.
10767
10768 2002-07-23 Kenichi Handa <handa@etl.go.jp>
10769
10770 * xdisp.c (face_before_or_after_it_pos):
10771 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
10772
10773 2002-07-22 Juanma Barranquero <lektu@terra.es>
10774
10775 * callproc.c (init_callproc) [DOS_NT]:
10776 Initialize Vshared_game_score_directory to nil.
10777 (syms_of_callproc) [DOS_NT]: Likewise.
10778
10779 2002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
10780
10781 * xdisp.c (display_line): Replace an abort with xassert.
10782
10783 2002-07-21 Richard M. Stallman <rms@gnu.org>
10784
10785 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
10786 and END_UNCHANGED when setting buffer_unchanged_p.
10787 Use current_matrix_up_to_date_p to decide whether to use
10788 try_cursor_movement.
10789
10790 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
10791
10792 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
10793
10794 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
10795 Set to nil if dir does not exist.
10796 (syms_of_callproc): Init unconditionally and simply.
10797
10798 * buffer.c (Fbuffer_list): Doc fix.
10799
10800 2002-07-21 Ken Raeburn <raeburn@gnu.org>
10801
10802 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
10803
10804 * buffer.c (mmap_realloc): When shrinking, make sure number of
10805 pages to unmap is rounded towards zero.
10806
10807 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
10808 (XSETINT): Deleted.
10809
10810 * m/att3b.h (XINT): Don't define.
10811 (VALBITS, VALMASK, XTYPE): Deleted.
10812 (DATA_SEG_BITS): Define.
10813 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
10814 ARRAY_MARK_FLAG): Deleted.
10815 (DATA_SEG_BITS): Define.
10816 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
10817 (DATA_SEG_BITS): Define.
10818
10819 2002-07-20 Richard M. Stallman <rms@gnu.org>
10820
10821 * print.c (print_error_message): New args CONTEXT and CALLER.
10822 Calls changed.
10823
10824 * lisp.h (print_error_message): Declare new args.
10825
10826 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
10827 and CONTEXT to print_error_message, don't print them here.
10828 For a Quit, don't use Vsignaling_function.
10829 Call message_log_maybe_newline.
10830
10831 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
10832
10833 2002-07-20 Kim F. Storm <storm@cua.dk>
10834
10835 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
10836
10837 2002-07-19 Ken Raeburn <raeburn@gnu.org>
10838
10839 * bytecode.c (struct byte_stack): Pointers into byte string now
10840 point to const.
10841 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
10842 const.
10843 * charset.h (BCOPY_SHORT): Source pointer now points to const.
10844 * coding.c (encode_eol, detect_coding, detect_eol):
10845 (decode_coding, encode_coding, detect_coding_system):
10846 Source strings now treated as const.
10847 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
10848 modify Lisp string contents.
10849 * coding.h (decode_coding, encode_coding, detect_coding,
10850 detect_eol): Declarations updated.
10851 * composite.c (compose_chars_in_text): Treat Lisp string contents
10852 as const.
10853 * dispnew.c (safe_bcopy): Source pointer now points to const.
10854 * lisp.h (STRING_COPYIN): New macro.
10855 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
10856 (internal_with_output_to_temp_buffer): Declarations updated.
10857 * print.c (temp_output_buffer_setup):
10858 (internal_with_output_to_temp_buffer): Buffer name argument is now
10859 pointer to const.
10860 * sound.c (struct sound_device): Function pointer field "write"
10861 buffer argument now points to const.
10862 (vox_write): Buffer argument points to const.
10863 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
10864 contents as const.
10865 * sysdep.c (emacs_write): Buffer pointer now const.
10866 * term.c (encode_terminal_code): Buffer pointer now const.
10867 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
10868 (x_face_list_fonts, x_update_menu_appearance):
10869 (hash_string_case_insensitive): Treat Lisp string contents as const.
10870
10871 2002-07-19 Juanma Barranquero <lektu@terra.es>
10872
10873 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
10874
10875 * fileio.c (syms_of_fileio): Likewise.
10876 (Ffile_name_as_directory): Fix argument name in docstring.
10877 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
10878
10879 2002-07-18 Richard M. Stallman <rms@gnu.org>
10880
10881 * data.c (Fdefalias): Doc fix.
10882
10883 2002-07-17 Dave Love <fx@gnu.org>
10884
10885 * intervals.h (text_property_stickiness): Use P_.
10886
10887 * ccl.c: Remove `emacs' conditionals.
10888 (ccl_backtrace_table): Fix size spec.
10889 (ccl_driver): Fix type errors.
10890
10891 2002-07-16 Ken Raeburn <raeburn@gnu.org>
10892
10893 * alloc.c (xstrdup, make_string, make_unibyte_string)
10894 (make_multibyte_string, build_string): String pointer args now
10895 point to const.
10896 * charset.c (find_charset_in_text, c_string_width):
10897 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
10898 * fileio.c (report_file_error):
10899 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
10900 (count_combining_before, count_combining_after, insert_1_both):
10901 (insert, insert_and_inherit, insert_string):
10902 (insert_before_markers, insert_before_markers_and_inherit):
10903 * lread.c (intern, oblookup, hash_string):
10904 * minibuf.c (temp_echo_area_glyphs):
10905 * search.c (fast_c_string_match_ignore_case):
10906 * sysdep.c (emacs_open, set_file_times):
10907 * xfaces.c (xstricmp):
10908 * xdisp.c (store_frame_title, string_char_and_length):
10909 (message_dolog, message2, message2_nolog, set_message): Likewise.
10910 (set_message_1): Cast message string argument to const pointer.
10911 * editfns.c (general_insert_function): Insertion function now
10912 takes pointer to const for input data.
10913 * charset.h (find_charset_in_text, c_string_width):
10914 (parse_str_as_multibyte): Declarations updated.
10915 * dispextern.h (xstricmp): Declaration updated.
10916 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
10917 (count_size_as_multibyte, count_combining_before):
10918 (count_combining_after, insert_1, insert_1_both, message_dolog):
10919 (insert, insert_and_inherit, insert_before_markers)
10920 (insert_before_markers_and_inherit, set_message, message2):
10921 (message2_dolog, build_string, make_string, make_unibyte_string):
10922 (make_multibyte_string, intern, oblookup, report_file_error):
10923 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
10924 (emacs_open, xstrdup): Declarations updated.
10925 * systime.h (set_file_times): Declaration updated.
10926
10927 * charset.c (find_charset_in_text, lisp_string_width): Use const
10928 for pointer to lisp string data.
10929 * charset.h (FETCH_STRING_CHAR_ADVANCE):
10930 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
10931 * coding.c (Ffind_coding_systems_region_interval):
10932 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
10933 (Fmake_directory_internal, Fdelete_directory):
10934 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
10935 * fontset.c (font_family_registry, fs_query_fontset):
10936 (list_fontsets):
10937 * frame.c (Fframe_parameter):
10938 * keyboard.c (cmd_error_internal):
10939 * keymap.c (Fdescribe_buffer_bindings):
10940 * lread.c (complete_filename_p, openp):
10941 * minibuf.c (Fminibuffer_complete_word):
10942 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
10943 (face_before_or_after_it_pos, next_element_from_string):
10944 (get_overlay_arrow_glyph_row, display_mode_element):
10945 (decode_mode_spec_coding):
10946 * xterm.c (same_x_server): Likewise.
10947
10948 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
10949 settings of non-existent fields.
10950
10951 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
10952 copy a lisp value.
10953
10954 * lread.c (Fintern_soft): Use string macros instead of
10955 Lisp_String fields.
10956 * keyboard.c (echo_char, parse_modifiers_uncached):
10957 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
10958 * textprop.c (validate_interval_range, interval_of): Likewise.
10959
10960 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
10961
10962 * charset.h (FETCH_STRING_CHAR_ADVANCE)
10963 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
10964 XSTRING()->size_byte.
10965
10966 * lisp.h (SDATA, SREF): Produce rvalue.
10967 (SSET): New macro.
10968 * alloc.c (make_event_array): Use SSET for storing into a string.
10969 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
10970 a string.
10971 * casefiddle.c (casify_object): Use SSET.
10972 * charset.h (FETCH_STRING_CHAR_ADVANCE)
10973 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
10974 address of string contents.
10975 * data.c (Faref): Use SDATA.
10976 (Faset): Use SDATA, SSET.
10977 * dired.c (directory_files_internal): Use SSET.
10978 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
10979 (Fread_file_name): Use SREF, SSET.
10980 * fns.c (concat): Use SSET.
10981 (concat, Fdelete): Use SDATA.
10982 * insdel.c (insert_from_string_1): Use SDATA.
10983 * keyboard.c (Fevent_convert_list): Use SREF.
10984 * lread.c (Fload): Use SDATA, SSET.
10985 * macfns.c (validate_x_resource_name): Use SSET.
10986 * process.c (status_message): Use SSET.
10987 * search.c (wordify): Use SDATA.
10988 (Freplace_match): Use SREF.
10989 * w32fns.c (validate_x_resource_name): Use SSET.
10990 * xfns.c (validate_x_resource_name): Use SSET.
10991 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
10992
10993 2002-07-16 Richard M. Stallman <rms@gnu.org>
10994
10995 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
10996
10997 * xdisp.c (reconsider_clip_changes):
10998 Don't test prevent_redisplay_optimizations_p.
10999 (redisplay_internal): Test prevent_redisplay_optimizations_p
11000 along with clip_changed in some cases.
11001 (try_window_id): Likewise.
11002 (redisplay_window): New local var buffer_unchanged_p.
11003
11004 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
11005
11006 * process.c (create_process): Test USG_SUBTTY_WORKS.
11007 (process_send_signal): Clean up handling of GID.
11008 Detect errors in ioctls meant to set GID.
11009
11010 * window.c (temp_output_buffer_show):
11011 Don't set prevent_redisplay_optimizations_p.
11012
11013 2002-07-15 Juanma Barranquero <lektu@terra.es>
11014
11015 * eval.c (Fdefvaralias): Add docstring argument.
11016
11017 2002-07-15 Ken Raeburn <raeburn@gnu.org>
11018
11019 * lisp.h (STRING_INTERVALS): Produce rvalue.
11020 (STRING_SET_INTERVALS): New macro.
11021 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
11022 * fns.c (Fstring_as_multibyte): Likewise.
11023 * intervals.c (balance_possible_root_interval, delete_interval)
11024 (create_root_interval, copy_intervals_to_string): Likewise.
11025 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
11026 instead of 0.
11027
11028 2002-07-14 Ken Raeburn <raeburn@gnu.org>
11029
11030 * lisp.h (STRING_SET_CHARS): New macro.
11031 (SCHARS, SBYTES): Produce rvalues.
11032 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
11033 * fns.c (concat): Likewise.
11034 * lread.c (read_vector): Likewise.
11035
11036 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
11037 (STRING_SET_UNIBYTE): New macro.
11038 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
11039 length of -1) changed to use STRING_SET_UNIBYTE.
11040 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
11041 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
11042 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
11043 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
11044 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
11045 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
11046 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
11047 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
11048 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
11049 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
11050 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
11051 STRING_BYTES or indirection changed to SCHARS, SBYTES,
11052 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
11053 unchanged for now.
11054
11055 2002-07-13 Kim F. Storm <storm@cua.dk>
11056
11057 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
11058
11059 2002-07-12 Richard M. Stallman <rms@gnu.org>
11060
11061 * fileio.c (Fwrite_region): Doc fix.
11062
11063 * print.c (print_error_message): Don't handle Vsignaling_function here.
11064
11065 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
11066 (command_loop_1): Avoid certain actions after memory-full error.
11067
11068 * eval.c (Fsignal): Don't call cancel_hourglass.
11069 For a memory-full error, don't call Vsignal_hook_function
11070 and don't set Vsignaling_function.
11071
11072 * process.c (process_send_signal): Add abort call.
11073
11074 2002-07-11 Markus Rost <rost@math.ohio-state.edu>
11075
11076 * keymap.c (Fkey_binding): Fix typo.
11077
11078 2002-07-11 Richard M. Stallman <rms@gnu.org>
11079
11080 * alloc.c (Vmemory_full): New variable.
11081 (Vmemory_signal_data): Renamed from memory_signal_data.
11082 Uses changed.
11083 (syms_of_alloc): Defvar them.
11084 (memory_full, buffer_memory_full): Set Vmemory_full.
11085
11086 * lisp.h (Vmemory_full): Add declaration.
11087 (current_column, indented_beyond_p): Change declaration.
11088
11089 * indent.c (last_known_column): Declare as double, not float.
11090 (current_column, current_column_1, string_display_width)
11091 (position_indentation): Return `double'.
11092 (indented_beyond_p): Arg `column' is `double'. Callers changed.
11093
11094 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
11095 (back_to_previous_visible_line_start)
11096 (reseat_at_next_visible_line_start, next_element_from_buffer):
11097 Use `double', not `float', when calling indented_beyond_p.
11098
11099 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
11100
11101 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
11102
11103 2002-07-11 Juanma Barranquero <lektu@terra.es>
11104
11105 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
11106 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
11107 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
11108 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
11109 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
11110 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
11111
11112 2002-07-10 Juanma Barranquero <lektu@terra.es>
11113
11114 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
11115 All callers changed.
11116
11117 2002-07-09 Stefan Monnier <monnier@cs.yale.edu>
11118
11119 * data.c (Fdefalias): Add an optional `docstring' argument.
11120 (set_internal, Fsetq_default): Use XCAR/XCDR.
11121
11122 * composite.c (HASH_VALUE, HASH_KEY):
11123 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
11124
11125 2002-07-09 Kenichi Handa <handa@etl.go.jp>
11126
11127 * callproc.c (Fcall_process): Fix previous change.
11128
11129 2002-07-07 Stefan Monnier <monnier@cs.yale.edu>
11130
11131 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
11132 Add support for hash-tables.
11133 (Ftry_completion): Return t even if the string appears multiple times.
11134
11135 * fns.c (Fnconc): Use XCDR.
11136 (Fprovide): Use CONSP and XCDR.
11137 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
11138 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
11139 (Fmake_hash_table): Accept `:size nil'.
11140 (Fmakehash): Delete: moved to subr.el.
11141 (syms_of_fns): Don't defsubr makehash.
11142
11143 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
11144 (HASH_TABLE_SIZE): Move from fns.c.
11145
11146 2002-07-07 Richard M. Stallman <rms@gnu.org>
11147
11148 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
11149 Instead just return 0 when there is something to be done.
11150 (try_scrolling): If make_cursor_line_fully_visible returns 0,
11151 retry scrolling as if cursor were off the bottom.
11152 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
11153 return CURSOR_MOVEMENT_MUST_SCROLL.
11154 (redisplay_window): If make_cursor_line_fully_visible returns 0,
11155 go to try_to_scroll.
11156
11157 * buffer.c (Fbuffer_local_value): Store current value into its binding
11158 so we get the up-to-date value for the binding that is loaded.
11159
11160 * eval.c (Fdefmacro): Doc fix.
11161
11162 2002-07-05 Dave Love <fx@gnu.org>
11163
11164 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
11165 correctly.
11166
11167 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
11168 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
11169 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
11170 CCL_LookupCharConstTbl.
11171 (syms_of_ccl): Defvar translation-hash-table-vector.
11172
11173 2002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11174
11175 * xdisp.c: Remove unused variable `face'.
11176
11177 2002-07-04 Juanma Barranquero <lektu@terra.es>
11178
11179 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
11180 obsolescence information.
11181
11182 2002-07-03 Andrew Choi <akochoi@shaw.ca>
11183
11184 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
11185 pattern. Search cache first.
11186 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
11187 for Japanese font.
11188 (XLoadQueryFont): Use it.
11189
11190 2002-07-02 Richard M. Stallman <rms@gnu.org>
11191
11192 * keymap.c (Fdefine_key): Doc fix.
11193
11194 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
11195
11196 2002-07-02 Juanma Barranquero <lektu@terra.es>
11197
11198 * keymap.c (syms_of_keymap): Fix typo.
11199
11200 2002-07-01 Andrew Choi <akochoi@shaw.ca>
11201
11202 * s/darwin.h: Define POSIX_SIGNALS.
11203
11204 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
11205 and FSRefMakePath to convert FSSpec returned with Apple Event to
11206 Posix pathname.
11207 (mac_initialize) [TARGET_API_MAC_CARBON]:
11208 Call init_required_apple_events and disable the `Quit' menu item
11209 provided automatically by the Carbon Toolbox.
11210
11211 2002-07-01 Dave Love <fx@gnu.org>
11212
11213 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
11214 for K&R.
11215
11216 * xterm.c: Fix prototype for K&R.
11217
11218 * term.c (costs_set): Declare static, non-initialized for pcc.
11219
11220 2002-07-01 Richard M. Stallman <rms@gnu.org>
11221
11222 * keyboard.c (timer_last_idleness_start_time): New variable.
11223 (timer_start_idle): Set that.
11224 (read_key_sequence): Use that to reset timer_idleness_start_time
11225 to previous value.
11226
11227 * window.c (Frecenter): With arg, set optional_new_start.
11228
11229 * xdisp.c (redisplay_internal): Make optional_new_start really work.
11230
11231 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
11232 buffer for completion.
11233
11234 2002-06-29 Ken Raeburn <raeburn@gnu.org>
11235
11236 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
11237
11238 2002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11239
11240 * keyboard.c (readable_filtered_events): New function that filters
11241 FOCUS_IN_EVENT depending on parameter.
11242 (readable_events): Calls readable_filtered_events, not filtering
11243 FOCUS_IN_EVENT.
11244 (get_filtered_input_pending): New function, filtering parameter passed
11245 to readable_filtered_events.
11246 (get_input_pending): Calls get_filtered_input_pending, not filtering
11247 FOCUS_IN_EVENT.
11248 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
11249 FOCUS_IN_EVENT.
11250
11251 * xterm.h (struct x_output): Add focus_state.
11252
11253 * xterm.c (x_focus_changed): New function.
11254 (x_detect_focus_change): New function.
11255 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
11256 EnterNotify and LeaveNotify to track X focus changes.
11257
11258 2002-06-28 Andreas Schwab <schwab@suse.de>
11259
11260 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
11261
11262 2002-06-27 Kim F. Storm <storm@cua.dk>
11263
11264 * xdisp.c: (mode_line_string_list, mode_line_string_face)
11265 (mode_line_string_face_prop): New variables.
11266 (store_mode_line_string): New function.
11267 (display_mode_element): Use store_mode_line_string to
11268 add mode-line string elements to mode_line_string_list
11269 when mode_line_string_list is non-nil.
11270 (Fformat_mode_line): Now returns propertized string by
11271 default. New arg NO-PROPS to ignore properties.
11272 (decode_mode_spec): Only add two dashes for %- in propertized
11273 mode-line string.
11274 (syms_of_xdisp): Init and staticpro mode_line_string_list.
11275
11276 2002-06-27 Stefan Monnier <monnier@cs.yale.edu>
11277
11278 * minibuf.c (minibuffer_completion_contents): Add return type.
11279
11280 2002-06-27 Juanma Barranquero <lektu@terra.es>
11281
11282 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
11283
11284 2002-06-26 Juanma Barranquero <lektu@terra.es>
11285
11286 * fileio.c (read_file_name_cleanup): Add missing return.
11287
11288 2002-06-26 Richard M. Stallman <rms@gnu.org>
11289
11290 * window.c (Frecenter): Don't set force_start flag.
11291
11292 * minibuf.c (do_completion, Fminibuffer_complete_word)
11293 (Fminibuffer_completion_help): Complete just the text before point.
11294 (minibuffer_completion_contents): New function.
11295
11296 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
11297
11298 * frame.c (frames_bury_buffer): Function deleted.
11299
11300 2002-06-25 Miles Bader <miles@gnu.org>
11301
11302 * callint.c (Fcall_interactively): When checking to see if doprnt hit
11303 the end of callint_message, allow for a terminating '\0'.
11304
11305 2002-06-24 Juanma Barranquero <lektu@terra.es>
11306
11307 * w32select.c: Include composite.h
11308
11309 * w16select.c: Likewise.
11310
11311 2002-06-24 Kenichi Handa <handa@etl.go.jp>
11312
11313 * callproc.c (Fcall_process): If code detection is necessary,
11314 call detect_coding directly here.
11315
11316 * coding.c (detect_eol): Preserve coding->cmp_data.
11317
11318 * w16select.c (Fw16_get_clipboard_data):
11319 * w32fns.c (w32_to_x_font):
11320 * w32select.c (Fw32_get_clipboard_data):
11321 * xselect.c (selection_data_to_lisp_data):
11322 * xterm.c (XTread_socket): Disable composition handling.
11323
11324 2002-06-24 Stefan Monnier <monnier@cs.yale.edu>
11325
11326 * print.c (temp_output_buffer_setup): Kill all local variables.
11327
11328 2002-06-22 Stefan Monnier <monnier@cs.yale.edu>
11329
11330 * lread.c (Fread): Remove redundant and imprecise declaration.
11331
11332 * xfns.c (check_x_display_info): Use check_x_frame.
11333
11334 * .gdbinit (xprintsym): Use the new `xname' field.
11335 (xsymbol): Use it.
11336
11337 2002-06-22 Jason Rumney <jasonr@gnu.org>
11338
11339 * w32fns.c (file_dialog_callback): New function.
11340 (Fx_file_dialog): Allow selecting directories as well as files.
11341
11342 2002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11343
11344 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
11345 OpenBSD. Add support for mipseb-*-netbsd* machines.
11346
11347 2002-06-17 Andrew Choi <akochoi@shaw.ca>
11348
11349 * macterm.c (mac_scroll_area): Set foreground and backcolor to
11350 black and white before scrolling. Restore frame background and
11351 foreground color after scrolling.
11352 (do_window_update): Call XClearWindow before calling expose_frame.
11353 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
11354 FRAME_FOREGROUND_PIXEL of frame.
11355
11356 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
11357 test Mac command key as <ALT> key.
11358
11359 2002-06-17 Stefan Monnier <monnier@cs.yale.edu>
11360
11361 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
11362
11363 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
11364 Lookup keys in function-key-map immediately so that key-translation-map
11365 can be applied earlier.
11366 Remove function_key_possible and key_translation_possible, replaced
11367 by checking `keytran_start < t'.
11368
11369 * .gdbinit (xsymbol): Use the new `xname' field.
11370
11371 2002-06-17 Andrew Choi <akochoi@shaw.ca>
11372
11373 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
11374 test Mac command key as <ALT> key.
11375
11376 * mac.c (do_applescript): Call initialize_applescript if necessary
11377 when first called. Dispose of result_desc only when there is no error.
11378 (Fdo_applescript): Use %d format specifier instead of %ld.
11379
11380 2002-06-16 Andrew Choi <akochoi@shaw.ca>
11381
11382 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
11383 of FrontWindow for cases keyDown and autoKey.
11384
11385 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
11386 Vdefault_fontset to Monaco with mac-roman coding.
11387
11388 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
11389 init_process before and after inclusion of Carbon/Carbon.h, resp.
11390
11391 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
11392 cursor_gc.
11393 (add_font_name_table_entry): New function.
11394 (init_font_name_table): Use add_font_name_table_entry; add italic,
11395 bold, and bold-italic entries for truetype fonts.
11396
11397 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
11398 for Mac too.
11399 (try_font_list) [MAC_OS]: If no font matches given registry, try
11400 fonts with any registry matching face_family.
11401 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
11402
11403 * s/darwin.h: If autoconf detects the Ncurses library, define
11404 LIBS_TERMCAP to -lncurses to use it.
11405
11406 2002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
11407
11408 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
11409
11410 2002-06-15 Richard M. Stallman <rms@gnu.org>
11411
11412 * window.c (Fset_window_configuration): Explicitly preserve
11413 the point value that new_current_buffer had at the start.
11414
11415 2002-06-14 Juanma Barranquero <lektu@terra.es>
11416
11417 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
11418 Fix typos.
11419
11420 2002-06-14 Kim F. Storm <storm@cua.dk>
11421
11422 * insdel.c (insert_1_both, insert_from_string_1)
11423 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
11424 insert happened in the end_unchanged region. Otherwise, the
11425 redisplay may be confused and duplicate the last line in the
11426 buffer [seen after save-buffer when require-final-newline==t].
11427
11428 2002-06-13 Jason Rumney <jasonr@gnu.org>
11429
11430 * w32.c (init_environment): Remove EMACSLOCKDIR.
11431 (stat): Swap _S_IFDIR and _S_IFREG.
11432
11433 2002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11434
11435 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
11436 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
11437 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
11438 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
11439 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
11440 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
11441 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
11442 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
11443 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
11444 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
11445 SELECTION_REQUEST_EVENT, selection_clear_event to
11446 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
11447 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
11448 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
11449 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
11450 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
11451 no_event to NO_EVENT.
11452
11453 2002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11454
11455 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
11456
11457 2002-06-12 Stefan Monnier <monnier@cs.yale.edu>
11458
11459 * intervals.c (textget): Don't forget to `return'.
11460 (lookup_char_property): Use XCAR/XCDR.
11461
11462 2002-06-12 Juanma Barranquero <lektu@terra.es>
11463
11464 * xdisp.c (Fformat_mode_line): Fix typo.
11465
11466 2002-06-12 Kim F. Storm <storm@cua.dk>
11467
11468 * xdisp.c (Fformat_mode_line): New function.
11469 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
11470 (store_frame_title_char, store_frame_title): Use unconditionally.
11471 (init_xdisp): Defsubr Fformat_mode_line.
11472 Initialize frame_title_buf etc. unconditionally.
11473
11474 2002-06-11 Stefan Monnier <monnier@cs.yale.edu>
11475
11476 * keyboard.c (read_key_sequence):
11477 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
11478 things through those maps after downcasing events.
11479 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
11480 applies after function-key-map.
11481 Make sure that keytran can be done in the middle in the sequence.
11482 Be careful not to throw away events past the one we downcase.
11483
11484 * lread.c (read_integer): Remove unused var `tem'.
11485 (read1): Fix int/Lisp_Object mixup.
11486
11487 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
11488
11489 2002-06-11 Richard M. Stallman <rms@gnu.org>
11490
11491 * keyboard.c (readable_events): Ignore any number of
11492 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
11493
11494 2002-06-09 Miles Bader <miles@gnu.org>
11495
11496 * xfaces.c (Ftty_supports_face_attributes_p): New function.
11497 (parse_rgb_list, tty_lookup_color): New functions.
11498 (tty_defined_color): Use `tty_lookup_color' to do all the work.
11499 (color_distance, Fcolor_distance): New functions.
11500 (TTY_SAME_COLOR_THRESHOLD): New macro.
11501 (Qtty_color_standard_values): New variable.
11502 (syms_of_xfaces): Initialize new vars & functions.
11503
11504 2002-06-08 Colin Walters <walters@verbum.org>
11505
11506 * textprop.c (Vchar_property_alias_alist): New variable.
11507 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
11508
11509 * intervals.c (lookup_char_property): New function for looking up
11510 overlay and text properties, created from textget.
11511 (textget): Use it.
11512
11513 * intervals.h (lookup_char_property): Declare.
11514 (Vchar_property_alias_alist): Declare.
11515
11516 * buffer.c (Foverlay_get): Use lookup_char_property.
11517
11518 2002-06-07 Sam Steingold <sds@gnu.org>
11519
11520 * xselect.c (lisp_data_to_selection_data): Fix last change:
11521 *data_ret is not a Lisp string, while unibyte_string is.
11522
11523 2002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
11524
11525 * xselect.c (lisp_data_to_selection_data): Fix last change:
11526 set size_ret.
11527
11528 2002-06-07 Andreas Schwab <schwab@suse.de>
11529
11530 * m/amdx86-64.h: New file.
11531
11532 2002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
11533
11534 * fns.c (Fstring_make_unibyte): Doc fix.
11535
11536 * xselect.c (lisp_data_to_selection_data): If the requested type
11537 is STRING, call string_make_unibyte to encode the selected text
11538 as a string.
11539
11540 * window.c (Fset_window_hscroll): Doc fix.
11541
11542 2002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11543
11544 * fileio.c (choose_write_coding_system):
11545 Call select-safe-coding-system properly.
11546
11547 2002-06-03 Richard M. Stallman <rms@gnu.org>
11548
11549 * xdisp.c (message_with_string): Error if STRING is not a string.
11550
11551 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
11552
11553 * fileio.c (choose_write_coding_system): Pass FILE arg to
11554 Vselect_safe_coding_system_function.
11555
11556 2002-06-03 Ken Raeburn <raeburn@gnu.org>
11557
11558 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
11559
11560 2002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
11561
11562 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
11563 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
11564 * keymap.c (describe_command): Likewise.
11565 * minibuf.c (read_minibuf): Likewise.
11566
11567 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
11568 Cast `current_column' return value to int.
11569 (back_to_previous_visible_line_start)
11570 (reseat_at_next_visible_line_start, next_element_from_buffer):
11571 Cast `indented_beyond_p' 3rd arg to float.
11572
11573 * indent.c (last_known_column): Now a float.
11574 (current_column_1, position_indentation, current_column)
11575 (string_display_width): Return float.
11576 (Fcurrent_column): Cast `current_column' return value to int.
11577 (Fcurrent_indentation): Cast `position_indentation' retval to int.
11578 (indented_beyond_p): Third arg now a float.
11579 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
11580
11581 * lisp.h (current_column): Now returns float.
11582 (indented_beyond_p): 3rd arg now a float.
11583
11584 2002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
11585
11586 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
11587 is Qcompound_text_with_extensions.
11588
11589 * xselect.c (lisp_data_to_selection_data): Always set selection
11590 type as string if x_encode_text returns streingp non-NULL.
11591
11592 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
11593
11594 2002-05-30 Richard M. Stallman <rms@gnu.org>
11595
11596 * window.c (Fset_window_configuration): Correct the handling
11597 of point in current buffer, to work with multiple windows.
11598
11599 2002-05-29 Colin Walters <walters@verbum.org>
11600
11601 * lread.c (Fread_from_string): Don't depend on order of evaluation
11602 for C function parameters.
11603
11604 2002-05-28 Richard M. Stallman <rms@gnu.org>
11605
11606 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
11607 way for blinked-off state and for a nonselected window.
11608
11609 * window.c (window_scroll_pixel_based): Don't call Fbolp;
11610 instead, see if the new start pos is at beginning of line.
11611
11612 * fileio.c (Fwrite_region): If START is a string, don't
11613 make any annotations.
11614
11615 * eval.c (syms_of_eval): Doc fix.
11616
11617 2002-05-28 Colin Walters <walters@debian.org>
11618
11619 * emacs.c (USAGE1): Add --no-splash.
11620 (standard_args): Ditto.
11621
11622 2002-05-28 Colin Walters <walters@gnu.org>
11623
11624 * lread.c (readchar_count): New variable.
11625 (readchar): Increment it.
11626 (unreadchar): Decrement it.
11627 (read_multibyte): Decrement it.
11628 (Vread_with_symbol_positions): New variable.
11629 (Vread_symbol_positions_list): New variable.
11630 (read_internal_start): New function, created from Fread and
11631 Fread_from_string. Handle Vread_symbol_positions_list and
11632 Vread_with_symbol_positions.
11633 (readevalloop, Fread, Fread_from_string): Use it.
11634 (read1): Use readchar_count to add symbol positions to
11635 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
11636 (syms_of_lread): DEFVAR_LISP and initialize them.
11637
11638 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
11639 (substitute_object_recurse, substitute_object_in_subtree)
11640 (substitute_in_interval): Prototype.
11641 (read_multibyte): Return c if it's less than zero.
11642
11643 2002-05-28 Kim F. Storm <storm@cua.dk>
11644
11645 * fileio.c (Fread_file_name_internal): Added brute-force
11646 speed up for using predicate file-directory-p.
11647
11648 2002-05-28 Kim F. Storm <storm@cua.dk>
11649
11650 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
11651 New variables.
11652 (syms_of_fileio): DEFVAR_LISP them.
11653 (read_file_name_cleanup): New unwind function.
11654 (Fread_file_name_internal): Only return completions satifying
11655 Vread_file_name_predicate. Temporarily unwind protect and rebind
11656 default-directory while checking completions against the predicate.
11657 (Fread_file_name): Added PREDICATE argument. Specbind it to
11658 Vread_file_name_predicate during completion.
11659 Call Vread_file_name_function to read the file name if non-nil.
11660
11661 * lisp.h (Fread_file_name): Now has 6 args.
11662
11663 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
11664 predicate for Fread_file_name when reading directory name.
11665 Supply Qnil for predicate in other calls to Fread_file_name.
11666
11667 2002-05-26 Miles Bader <miles@gnu.org>
11668
11669 * term.c (tty_capable_p): New function.
11670 * dispextern.h (tty_capable_p): New function declaration.
11671 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
11672 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
11673
11674 2002-05-23 Stefan Monnier <monnier@cs.yale.edu>
11675
11676 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
11677 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
11678 (Vwrite_region_annotate_functions): Docstring fix.
11679
11680 2002-05-23 Kim F. Storm <storm@cua.dk>
11681
11682 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
11683 phys_cursor's hpos is overwritten. This is still not completely
11684 correct, as it doesn't really make sense to use hpos at all to
11685 get the cursor glyph (as that is relative to the width of the
11686 characters on the line, which may have changed during the update).
11687
11688 2002-05-22 Jason Rumney <jasonr@gnu.org>
11689
11690 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
11691 Lisp_Object.
11692 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
11693 Use modified enumfont_t struct.
11694
11695 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
11696
11697 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
11698 Handle the `hbar' cursor type.
11699 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
11700
11701 * w32fns.c (Qhbar): New variable.
11702 (x_specified_cursor_type): Use it.
11703
11704 2002-05-21 Ken Raeburn <raeburn@gnu.org>
11705
11706 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
11707 now, when the address is needed.
11708
11709 2002-05-21 Colin Walters <walters@gnu.org>
11710
11711 * Makefile.in (shortlisp): Add font-core.el.
11712
11713 2002-05-20 Richard M. Stallman <rms@gnu.org>
11714
11715 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
11716
11717 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
11718 equivalent key bindings here.
11719
11720 2002-05-20 Ken Raeburn <raeburn@gnu.org>
11721
11722 Change symbol structure to contain a lisp object for the symbol
11723 name:
11724 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
11725 object field named "xname".
11726 (SYMBOL_NAME): New macro.
11727 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
11728 name field.
11729 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
11730 (mark_object, gc_sweep): Use symbol xname field and XSTRING
11731 instead of name field.
11732 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
11733 SYMBOL_NAME instead of XSYMBOL and name field.
11734 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
11735 instead of XSYMBOL and name field.
11736 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
11737 and SYMBOL_NAME instead of XSYMBOL and name field.
11738 * coding.c (Fread_coding_system, code_convert_region1)
11739 (code_convert_string1, code_convert_string_norecord)
11740 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
11741 XSYMBOL and name field.
11742 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
11743 (Fmake_variable_buffer_local, Fmake_local_variable)
11744 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
11745 of XSYMBOL and name field.
11746 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
11747 XSYMBOL and name field.
11748 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
11749 instead of XSYMBOL and name field.
11750 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
11751 XSYMBOL and name field.
11752 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
11753 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11754 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
11755 instead of XSYMBOL and name field.
11756 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
11757 (parse_modifiers, apply_modifiers, Fevent_convert_list)
11758 (parse_solitary_modifier, Fexecute_extended_command):
11759 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11760 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
11761 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
11762 of XSYMBOL and name field.
11763 (describe_command, describe_translation): Use SYMBOL_NAME and
11764 assignment instead of XSYMBOL and name field and XSETSTRING.
11765 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
11766 instead of XSYMBOL and name field.
11767 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
11768 name field and XSETSTRING.
11769 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
11770 of XSYMBOL and name field.
11771 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
11772 assignment instead of XSYMBOL and name field and XSETSTRING.
11773 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
11774 XSTRING instead of XSYMBOL and name field.
11775 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
11776 and XSTRING instead of XSYMBOL and name field.
11777 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
11778 and XSTRING instead of XSYMBOL and name field.
11779 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
11780 XSTRING instead of XSYMBOL and name field.
11781 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
11782 of XSYMBOL and name field.
11783 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
11784 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11785
11786 2002-05-19 Ken Raeburn <raeburn@gnu.org>
11787
11788 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
11789 and XCDR real rvalues in most configurations.
11790
11791 * buffer.c (fix_overlays_in_range, fix_overlays_before):
11792 Don't take the address of the cdr part of a cons cell; instead, track
11793 the parent cell and call XSETCDR, or set the variable for the head
11794 of the list if we haven't started down the list yet.
11795
11796 2002-05-19 Richard M. Stallman <rms@gnu.org>
11797
11798 * doc.c (reread_doc_file): Don't ask for confirmation.
11799
11800 2002-05-18 Jason Rumney <jasonr@gnu.org>
11801
11802 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
11803 (xbm_load_image): Use it.
11804 (xbm_load): Ditto.
11805 (xbm_read_bitmap_data): Reverted to xfns.c version.
11806 From David Ponce <david@dponce.com>.
11807
11808 2002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
11809
11810 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
11811 2.02 and later.
11812
11813 2002-05-16 Juanma Barranquero <lektu@terra.es>
11814
11815 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
11816
11817 2002-05-15 Stefan Monnier <monnier@cs.yale.edu>
11818
11819 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
11820 meaningful test.
11821 (read_char_minibuf_menu_prompt): Fix typo.
11822
11823 2002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
11824
11825 * eval.c (Fcommandp): Doc fix.
11826
11827 2002-05-13 Stefan Monnier <monnier@cs.yale.edu>
11828
11829 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
11830 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
11831 (Fset_keymap_parent): Gcpro a bit more.
11832 (access_keymap): Gcpro around meta_map call and around the main loop.
11833 (get_keyelt): Gcpro when following indirect references.
11834 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
11835 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
11836 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
11837 Remove useless ad-hoc remap code.
11838
11839 2002-05-13 Richard M. Stallman <rms@gnu.org>
11840
11841 * search.c (search_buffer): Give up boyer moore search if inverse
11842 translation change charset_base.
11843
11844 2002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
11845
11846 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
11847 characters is carried over from the previous block of text, adjust
11848 coding->produced to account for the extra character.
11849
11850 2002-05-11 Andreas Schwab <schwab@suse.de>
11851
11852 * coding.c (intersection): Keep the elements of the returned list
11853 in the same order as in the first list.
11854
11855 2002-05-11 Kim F. Storm <storm@cua.dk>
11856
11857 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
11858 only update cmm_size if realloc actually succeeds.
11859 Testing with initial size of 2 elements revealed that using
11860 realloc on GNU/Linux would cause a random trap in xmalloc
11861 later on, so I rewrote the code to use malloc/bcopy/free instead
11862 of realloc.
11863
11864 2002-05-10 Jason Rumney <jasonr@gnu.org>
11865
11866 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
11867
11868 2002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
11869
11870 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
11871 parens, to ensure correct evaluation order.
11872
11873 2002-05-10 Kim F. Storm <storm@cua.dk>
11874
11875 * keymap.c (Vemulation_mode_map_alists): New variable.
11876 (syms_of_keymap): DEFVAR_LISP it.
11877 (current_minor_maps): Process keymap alists in that list before
11878 minor-mode-overriding-map-alist and minor-mode-map-alist.
11879
11880 2002-05-09 Richard M. Stallman <rms@gnu.org>
11881
11882 * search.c (Freplace_match): Doc fix.
11883
11884 2002-05-09 Kim F. Storm <storm@cua.dk>
11885
11886 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
11887 Enlarge cursor rectangle drawn around image with non-zero relief.
11888
11889 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
11890 Enlarge cursor rectangle drawn around image with non-zero relief.
11891
11892 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
11893 Enlarge cursor rectangle drawn around image with non-zero relief.
11894
11895 2002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
11896
11897 * xselect.c (lisp_data_to_selection_data): Don't set selection
11898 type if comes from the Lisp object's car. If the selection
11899 contains a pure ASCII text, always return QSTRING as its type.
11900
11901 2002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11902
11903 * mac.c (mac-cut-function): Doc fix.
11904
11905 2002-05-05 Richard M. Stallman <rms@gnu.org>
11906
11907 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
11908
11909 2002-05-04 Jason Rumney <jasonr@gnu.org>
11910
11911 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
11912 for event-click-count.
11913
11914 * process.c (init_process): Only add server subfeature if we can
11915 use non-blocking I/O.
11916
11917 2002-05-04 Andrew Choi <akochoi@shaw.ca>
11918
11919 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
11920 repeatedly.
11921
11922 2002-05-03 Jason Rumney <jasonr@gnu.org>
11923
11924 * process.c (Fmake_network_process): Only support server sockets
11925 when we can make them non-blocking.
11926
11927 * s/ms-w32.h (HAVE_SELECT): Define.
11928
11929 * w32.h (FILE_NDELAY): New flag.
11930
11931 * w32.c (sys_getpeername, fcntl): New functions.
11932 (_sys_read_ahead): Temporarily block on non-blocking sockets.
11933
11934 * w32proc.c: include sys/file.h.
11935
11936 2002-05-03 Colin Walters <walters@verbum.org>
11937
11938 * callproc.c (Vgame_score_directory): Renamed to
11939 Vshared_game_score_directory.
11940
11941 2002-04-30 Richard M. Stallman <rms@gnu.org>
11942
11943 * s/gnu.h [emacs]: Include stdio.h.
11944 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
11945
11946 * eval.c (do_autoload): Error if called while preparing to dump.
11947
11948 * fns.c (Frequire): Error if need to load while preparing to dump.
11949
11950 2002-04-28 Colin Walters <walters@verbum.org>
11951
11952 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
11953 Default to "~/.emacs.d/games".
11954
11955 2002-04-29 Stefan Monnier <monnier@cs.yale.edu>
11956
11957 * lread.c (openp): Change arg exec_only to predicate.
11958 (build_load_history): Use XCAR/XCDR.
11959 (Flocate_file_internal): New fun.
11960 (syms_of_lread): Defsubr it.
11961 (Fload): Update call to openp.
11962
11963 * lisp.h (openp): Update prototype.
11964
11965 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
11966 * w32proc.c (sys_spawnve):
11967 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
11968 * w32.c (check_windows_init_file):
11969 * sound.c (Fplay_sound_internal):
11970 * process.c (Fstart_process):
11971 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
11972 * mac.c (run_mac_command):
11973 * emacs.c (init_cmdargs):
11974 * callproc.c (Fcall_process): Update call to openp.
11975
11976 * textprop.c (remove_properties): Don't use XCAR without CONSP.
11977
11978 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
11979
11980 2002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11981
11982 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
11983 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
11984
11985 2002-04-28 Richard M. Stallman <rms@gnu.org>
11986
11987 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
11988
11989 * eval.c (Fcommandp): New arg for_call_interactively.
11990 * lisp.h (Fcommandp): Declare new arg.
11991
11992 2002-04-28 Jason Rumney <jasonr@gnu.org>
11993
11994 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
11995
11996 * w32.c (stat, fstat): Use file index information to generate
11997 inodes for directories where available.
11998
11999 2002-04-26 Andrew Choi <akochoi@shaw.ca>
12000
12001 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
12002 [HAVE_CARBON]: Include Mac object files.
12003
12004 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
12005 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
12006 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
12007 MAC_OSX, and MAC_OS instead of macintosh.
12008
12009 * editfns.c [MAC_OS8]: Include stdio.h.
12010
12011 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
12012
12013 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
12014 Apple Monaco.
12015
12016 * process.c: Declare QCfamily and QCfilter as extern.
12017 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
12018 calling select.
12019
12020 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
12021
12022 * tparam.c [MAC_OSX]: Don't define BC and UP.
12023
12024 * config.in [HAVE_CARBON]: Add.
12025
12026 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
12027 Move here from mac/src and mac/inc.
12028
12029 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
12030
12031 2002-04-26 Gerd Moellmann <gerd@gnu.org>
12032
12033 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
12034 Compute phys_cursor_width from the x position returned
12035 by x_draw_glyhs, which is cheaper.
12036 (x_display_and_set_cursor): Compute the buffer-local value
12037 of `cursor-in-non-selected-windows' only when needed.
12038
12039 2002-04-25 Gerd Moellmann <gerd@gnu.org>
12040
12041 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
12042 cursor on a stretch glyph has a width that depends on
12043 x_stretch_cursor_p.
12044
12045 2002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12046
12047 * abbrev.c (abbrev-start-location): Doc fix.
12048
12049 * indent.c (Fvertical_motion): Fix last change.
12050
12051 2002-04-25 Gerd Moellmann <gerd@gnu.org>
12052
12053 * indent.c (Fvertical_motion): Move to the start of the line
12054 containing PT before moving up or down.
12055
12056 2002-04-24 Gerd Moellmann <gerd@gnu.org>
12057
12058 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
12059 case of writing a whole row, more or less analogous to the case of
12060 writing only parts of a row.
12061
12062 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
12063 0 for NO_CURSOR.
12064
12065 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
12066
12067 2002-04-23 Colin Walters <walters@verbum.org>
12068
12069 * buffer.c (syms_of_buffer): Doc fix.
12070
12071 2002-04-23 Gerd Moellmann <gerd@gnu.org>
12072
12073 * xterm.c (notice_overwritten_cursor): Handle the special case
12074 of the cursor being in the first blank non-text line at the
12075 end of a window.
12076
12077 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
12078 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
12079 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
12080 bar cursors only, to make phys_cursor_width contain what its name
12081 suggests.
12082 (notice_overwritten_cursor): Consider the cursor image erased if
12083 the output area intersects the cursor image in y-direction.
12084
12085 2002-04-23 Simon Marshall <simon@gnu.org>
12086
12087 * xfns.c (x_set_mouse_color): Change default for cross_cursor
12088 to XC_hand2.
12089
12090 2002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12091
12092 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
12093
12094 2002-04-22 Kim F. Storm <storm@cua.dk>
12095
12096 * textprop.c (remove_properties): Fixed trap for malformed plist.
12097
12098 2002-04-22 Richard M. Stallman <rms@gnu.org>
12099
12100 * cmds.c (Fend_of_line): Handle intangible text in mid line.
12101
12102 * window.c (make_window): Initialize height_fixed_p,
12103 last_cursor_off_p, and p->cursor_off_p slots.
12104
12105 2002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12106
12107 * fns.c (use-dialog-box): Doc fix.
12108
12109 2002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12110
12111 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
12112 variables `row', `i' and `area'.
12113 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
12114 toolkit library.
12115
12116 2002-04-19 Stefan Monnier <monnier@cs.yale.edu>
12117
12118 * xfaces.c (clear_font_table): Don't free the default font of
12119 a frame even if it's on another display.
12120 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
12121 that could be Qt.
12122
12123 2002-04-19 Juanma Barranquero <lektu@terra.es>
12124
12125 * indent.c (Fmove_to_column): Remove unused local variable
12126 `next_boundary_byte'.
12127 (current_column_1): Likewise.
12128
12129 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
12130
12131 * msdos.c (Qhbar): New variable.
12132 (syms_of_msdos): Intern and staticpro it.
12133 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
12134 cursor type.
12135
12136 2002-04-19 Dave Lambert <dlambert@acm.org>
12137
12138 Theses change implement an underscore-like (`hbar') cursor.
12139
12140 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
12141
12142 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
12143 Handle the `hbar' cursor type.
12144 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
12145
12146 * xfns.c (Qhbar): New variable.
12147 (syms_of_xfns): Intern and staticpro it.
12148 (x_specified_cursor_type): Handle `hbar' cursor.
12149
12150 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
12151 not defined.
12152
12153 2002-04-18 Richard M. Stallman <rms@gnu.org>
12154
12155 * textprop.c (remove_properties): New arg LIST allows scanning
12156 either a list or a plist.
12157 (interval_has_some_properties_list): New function, like
12158 interval_has_some_properties using list instead of plist.
12159 All callers changed.
12160 (Fremove_list_of_text_properties): New function.
12161 (syms_of_textprop): Defsubr it.
12162
12163 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
12164
12165 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
12166
12167 2002-04-17 Juanma Barranquero <lektu@terra.es>
12168
12169 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
12170
12171 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
12172
12173 * window.c (coordinates_in_window): Don't report on margin area
12174 if its width is zero.
12175
12176 2002-04-16 Jason Rumney <jasonr@gnu.org>
12177
12178 * w32fns.c (Fx_file_dialog): Decode file name before using.
12179
12180 * w32term.c (construct_drag_n_drop): Likewise.
12181
12182 2002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
12183
12184 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
12185 store load-history in pure space.
12186
12187 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
12188
12189 2002-04-16 Stefan Monnier <monnier@cs.yale.edu>
12190
12191 * xterm.c (Qlatin_1, Qutf_8): New vars.
12192 (syms_of_xterm): Initialize them.
12193 (XTread_socket): Eliminate incorrect optimization that tried to avoid
12194 decoding the output of X*LookupString.
12195 Always use latin-1 to decode the output of XLookupString.
12196 Try Xutf8LookupString if XmbLookupString failed.
12197
12198 * region-cache.c (new_region_cache): Use BEG.
12199
12200 2002-04-16 Gerd Moellmann <gerd@gnu.org>
12201
12202 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
12203 configuration files.
12204 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
12205 returns 0.
12206
12207 2002-04-15 Andreas Schwab <schwab@suse.de>
12208
12209 * config.in: Regenerated using autoheader.
12210
12211 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
12212 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
12213 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
12214 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
12215 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
12216 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
12217 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
12218 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
12219 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
12220 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
12221 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
12222 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
12223 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
12224 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
12225 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
12226 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
12227 STACK_DIRECTION, now set by autoconf.
12228
12229 2002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12230
12231 * dispnew.c (marginal_area_string): Sort arguments.
12232
12233 * dispextern.h (marginal_area_string): Add prototype.
12234
12235 2002-04-13 Richard M. Stallman <rms@gnu.org>
12236
12237 * fileio.c (Finsert_file_contents):
12238 Don't call temp_output_buffer_setup--do just part, by hand.
12239
12240 * coding.c (run_pre_post_conversion_on_str):
12241 Don't call temp_output_buffer_setup--do just part, by hand.
12242
12243 * keyboard.c (command_loop_1): Don't call start_hourglass
12244 or cancel_hourglass when executing a macro.
12245
12246 * marker.c (count_markers): New function.
12247
12248 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
12249 grow without limit. Move recently used elements to the front.
12250
12251 2002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
12252
12253 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
12254
12255 2002-04-12 Gerd Moellmann <gerd@gnu.org>
12256
12257 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
12258 rows marginal areas.
12259 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
12260 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
12261
12262 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
12263
12264 2002-04-12 Dave Love <fx@gnu.org>
12265
12266 * dispnew.c (marginal_area_string): New.
12267
12268 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
12269 (Qleft_margin, Qright_margin): Declare.
12270 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
12271
12272 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
12273 note_mode_line_highlight and extended.
12274
12275 * keyboard.c (Qleft_margin, Qright_margin): Declare.
12276 (make_lispy_event): Deal with mouse events in margins.
12277
12278 2002-04-12 Stefan Monnier <monnier@cs.yale.edu>
12279
12280 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
12281
12282 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
12283 than deactivating the mark if tmm is set to `lambda'.
12284 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
12285 Use a single event for HELP_EVENT.
12286 (Fexecute_extended_command): Save last_point_position.
12287
12288 2002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12289
12290 * lisp.h (Fpropertize): Add prototype.
12291
12292 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
12293
12294 2002-04-10 Colin Walters <walters@verbum.org>
12295
12296 * config.in: Add HAVE_SHARED_GAME_DIR.
12297
12298 * callproc.c: (Vgame_score_directory): New variable.
12299 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
12300
12301 2002-04-10 Richard M. Stallman <rms@gnu.org>
12302
12303 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
12304
12305 2002-04-09 Stefan Monnier <monnier@cs.yale.edu>
12306
12307 * minibuf.c (read_minibuf): Use empty_string.
12308 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
12309 Short-circuit the search as soon as it "failed".
12310 (Fall_completions): Allow lambda forms and lists of strings for alist.
12311 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
12312 when require_match is nil.
12313 (Ftest_completion): Rename from `test_completion' and export to elisp.
12314 Call the predicate also when alist is a list.
12315 Obey Vcompletion_regexp_list.
12316 (do_completion, Fminibuffer_complete_and_exit): Use it.
12317 (Fassoc_string): Rename from `assoc_for_completion'.
12318 Allow list of strings as well and export to elisp.
12319
12320 2002-04-08 Stefan Monnier <monnier@cs.yale.edu>
12321
12322 * puresize.h (BASE_PURESIZE): Increase to 900KB.
12323
12324 2002-04-08 Juanma Barranquero <lektu@terra.es>
12325
12326 * w32.c (sys_accept): Don't hide variable `s'.
12327
12328 2002-04-05 Gerd Moellmann <gerd@gnu.org>
12329
12330 * callint.c (Fcall_interactively): Use INTEGERP instead of
12331 NUMBERP for checking Vhistory_length.
12332
12333 2002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12334
12335 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
12336 Doc fix to reflect it.
12337
12338 2002-04-04 Richard M. Stallman <rms@gnu.org>
12339
12340 * xdisp.c (display_mode_element): New arg RISKY.
12341 Disregard text props found or specified within a variable
12342 that isn't marked risky-local-variable.
12343 (Qrisky_local_variable): New variable.
12344 (syms_of_xdisp): Init and staticpro it.
12345
12346 2002-04-04 Stefan Monnier <monnier@cs.yale.edu>
12347
12348 * undo.c (record_point): New fun.
12349 (record_delete, record_insert): Use it.
12350
12351 2002-04-03 Juanma Barranquero <lektu@terra.es>
12352
12353 * doc.c (Fdocumentation): Add missing parentheses.
12354 (Fdocumentation_property): Likewise.
12355
12356 2002-04-03 Stefan Monnier <monnier@cs.yale.edu>
12357
12358 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
12359 data is 0, just return nil.
12360
12361 2002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
12362
12363 * msdos.c (syms_of_msdos): Fix last change with
12364 mouse_autoselect_window.
12365
12366 2002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12367
12368 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
12369 mouse_autoselect_window.
12370
12371 2002-04-02 Stefan Monnier <monnier@cs.yale.edu>
12372
12373 * keyboard.c (make_lispy_event): Handle unknown keysyms together
12374 with system-specific keysyms. Use it also for unknown function keys.
12375
12376 * doc.c (reread_doc_file): Return whether reload was attempted.
12377 (Fdocumentation, Fdocumentation_property): Don't try to reload
12378 if the doc is 0 and only ask once.
12379
12380 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
12381
12382 2002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
12383
12384 * keyboard.c (read_char): If the event was Qselect_window,
12385 restore timer_idleness_start_time to its previous value.
12386
12387 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
12388
12389 2002-04-01 Stefan Monnier <monnier@cs.yale.edu>
12390
12391 * region-cache.c (new_region_cache): Use BEG.
12392
12393 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
12394 Use BEG and BEG_BYTE.
12395
12396 * doc.c (get_doc_string): Return nil if the location is wrong.
12397 (reread_doc_file): New fun.
12398 (Fdocumentation, Fdocumentation_property):
12399 Call it if get_doc_string fails.
12400 (Fsnarf_documentation): Make it work for a dumped Emacs.
12401
12402 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
12403 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
12404
12405 * charset.c (Fstring): Allow 0 arguments.
12406
12407 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
12408
12409 * process.c (DATAGRAM_CONN_P, list_processes_1)
12410 (Fprocess_datagram_address, Fset_process_datagram_address)
12411 (Fset_network_process_options, server_accept_connection):
12412 Fix some int/Lisp_Object confusions (thank you union types).
12413
12414 2002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12415
12416 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
12417
12418 * w32term.c: Likewise.
12419 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
12420
12421 * keyboard.c (Qselect_window): New symbol.
12422 (head_table): Use it.
12423 (keys_of_keyboard): Bound select-window event to handle-select-window.
12424 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
12425
12426 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
12427 (last_window): New variable.
12428 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
12429 (note_mouse_movement): Remove reimplemented code in #if 0.
12430 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
12431 Emacs windows.
12432
12433 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
12434
12435 2002-03-31 Gerd Moellmann <gerd@gnu.org>
12436
12437 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
12438 Callers changed.
12439
12440 2002-03-30 Richard M. Stallman <rms@gnu.org>
12441
12442 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
12443 loop whenever it stops making progress.
12444
12445 * widget.c (set_frame_size): Don't call change_frame_size.
12446
12447 2002-03-30 Gerd Moellmann <gerd@gnu.org>
12448
12449 * dispnew.c (direct_output_for_insert):
12450 Call mark_window_display_accurate.
12451
12452 2002-03-29 Jason Rumney <jasonr@gnu.org>
12453
12454 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
12455
12456 2002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
12457
12458 * Makefile.in (lread.o): Depend on coding.h.
12459
12460 * lread.c (openp, Fload): Encode the file name before passing it
12461 to `stat', `access', and `emacs_open'.
12462 (openp): GCPRO the encoded file name. Don't recompute Lisp
12463 strings unnecessarily.
12464
12465 2002-03-29 Kim F. Storm <storm@cua.dk>
12466
12467 * fns.c (Flax_plist_put): Doc fix.
12468
12469 2002-03-28 Miles Bader <miles@gnu.org>
12470
12471 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
12472
12473 2002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12474
12475 * process.c (set-network-process-options): Add usage.
12476 (make-network-process): Doc fix.
12477
12478 2002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
12479
12480 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
12481
12482 2002-03-26 Richard M. Stallman <rms@gnu.org>
12483
12484 * fns.c (Fsubstring_no_properties): New function.
12485 (Flax_plist_get, Flax_plist_put): New functions.
12486 (syms_of_fns): defsubr them.
12487
12488 * xdisp.c (update_menu_bar): Test only update_mode_lines;
12489 don't test or alter w->update_mode_line.
12490
12491 * window.c (Fdisplay_buffer): Doc fix.
12492
12493 2002-03-24 Richard M. Stallman <rms@gnu.org>
12494
12495 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
12496
12497 2002-03-24 Gerd Moellmann <gerd@gnu.org>
12498
12499 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
12500 (Fdefmacro): Handle `(declare ...)'.
12501 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
12502 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
12503
12504 2002-03-24 Jason Rumney <jasonr@gnu.org>
12505
12506 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
12507 (xbm_file_p): Add prototypes.
12508 (xbm_format, xbm_image_p): Sync with xfns.c.
12509 (reflect_byte): New function.
12510 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
12511 (xbm_load_image): Create bitmaps with a depth of 1.
12512 (init_xfns): Enable XBM images.
12513
12514 2002-03-23 Jason Rumney <jasonr@gnu.org>
12515
12516 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
12517 correctly. Do not pass up_modifier to keyboard buffer.
12518
12519 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
12520
12521 2002-03-22 Stefan Monnier <monnier@cs.yale.edu>
12522
12523 * Makefile.in (bootstrapclean): New target.
12524 (bootstrap-temacs, bootstrap-doc): Remove.
12525 (bootstrap-emacs): Use a bog-standard `temacs'.
12526 Don't bother to build a DOC file.
12527
12528 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
12529
12530 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
12531 in temacs even if !CANNOT_DUMP.
12532 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
12533
12534 * alloc.c (check_pure_size): Only output a warning.
12535
12536 2002-03-22 Jason Rumney <jasonr@gnu.org>
12537
12538 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
12539 supported.
12540
12541 * w32term.c (zv_bits): Declare as short, for word alignment.
12542 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
12543 (syms_of_w32term): Define x-use-underline-position-properties.
12544
12545 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
12546 (clear_image_cache): Block input, fix logic, clear matrices in
12547 all frames that share this cache.
12548
12549 2002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
12550
12551 * emacs.c (main): Update the Copyright year in the blurb printed
12552 by "emacs --version".
12553
12554 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
12555
12556 * xterm.c (XTread_socket): If XK_ISO_Lock and
12557 XK_ISO_Last_Group_Lock are defined, handle keysyms between
12558 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
12559
12560 2002-03-21 Kim F. Storm <storm@cua.dk>
12561
12562 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
12563 menu-bar bindings in keymap and local-map properties _are_ used.
12564 But try keymap property first in accordance with 2002-01-03 patch.
12565 Added comment describing why this is not always reliable.
12566 (tool_bar_items): Ditto for tool-bar.
12567
12568 2002-03-21 Jason Rumney <jasonr@gnu.org>
12569
12570 * w32fns.c (x_clear_image_1): Disable color table code.
12571
12572 2002-03-21 Kim F. Storm <storm@cua.dk>
12573
12574 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
12575 removed the wrong version of the DEFUN macro; fixed it.
12576
12577 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
12578 Fmember rather than Fmemq).
12579 (Fprovide): Check that subfeatures is a list.
12580
12581 * process.c (QCfeature, QCdatagram): Removed variables.
12582 (QCtype, Qdatagram): New variables.
12583 (network_process_featurep): Removed function.
12584 (Fmake_network_process): Removed :feature check.
12585 Use :type 'datagram instead of :datagram t to create a datagram
12586 socket. This allows us to add other connection types (e.g. raw
12587 sockets) later in a consistent manner.
12588 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
12589 supported subfeatures for feature make-network-process.
12590 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
12591 Intern and staticpro QCtype and Qdatagram.
12592 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
12593
12594 * xfns.c: (QCtype): Remove duplicate declaration and
12595 initialization (is now declared in process.c).
12596
12597 * w32fns.c: (QCtype): Remove duplicate declaration and
12598 initialization (is now declared in process.c).
12599
12600 2002-03-21 Richard M. Stallman <rms@gnu.org>
12601
12602 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
12603 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
12604 when jumping to `fail' to avoid undoing reg changes in the
12605 last iteration of the loop.
12606 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
12607
12608 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
12609 Depend on process.h.
12610
12611 2002-03-20 Jason Rumney <jasonr@gnu.org>
12612
12613 Most of the following changes are still conditional on HAVE_IMAGES
12614 which is not set by default on Windows.
12615
12616 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
12617
12618 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
12619 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
12620 (four_corners_best, x_clear_image_1, x_clear_image)
12621 (x_alloc_image_color, postprocess_image)
12622 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
12623 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
12624 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
12625
12626 * w32gui.h (struct XImage): Define.
12627
12628 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
12629 extract mouse co-ordinates.
12630
12631 2002-03-20 Jason Rumney <jasonr@gnu.org>
12632
12633 * w32.c (init_winsock): Dynamically load new server and UDP
12634 socket functions.
12635 (socket_to_fd): New function.
12636 (sys_socket): Use it.
12637 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
12638 (sys_recvfrom, sys_sendto): New wrapper functions.
12639
12640 * process.c (QCfamily, QCfilter): Remove duplicate declaration
12641 and initialization.
12642
12643 * makefile.w32-in (LIBS): Remove $(WSOCK32).
12644
12645 2002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
12646
12647 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
12648 Don't use "sun" as a variable, it's a predefined constant on Sun
12649 machines.
12650
12651 2002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12652
12653 * bytecode.c (Fbyte_code): Revert last change.
12654
12655 2002-03-19 Kim F. Storm <storm@cua.dk>
12656
12657 * makefile.w32-in (LIBS): Add $(WSOCK32).
12658 From David Ponce <dponce@voila.fr>.
12659
12660 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12661
12662 * process.c (wait_reading_process_input): Move variables `pname'
12663 and `pnamelen' down where they are used.
12664
12665 * bytecode.c (Fbyte_code): Discard unused computed value to
12666 prevent gcc warning.
12667
12668 * lisp.h (Fplist_member): Add prototype.
12669
12670 2002-03-18 Kim F. Storm <storm@cua.dk>
12671
12672 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
12673 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
12674
12675 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
12676 Remove explicit GNU_LINUX settings for datagram support.
12677
12678 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12679
12680 * process.c (Fmake_network_process): Remove unused variable `sa'.
12681 Doc fix. Add usage:.
12682 (set_socket_options): Remove unused variables `optnum' and `opttype'.
12683
12684 2002-03-17 Richard M. Stallman <rms@gnu.org>
12685
12686 * xdisp.c (cursor_type_changed): New variable.
12687 (redisplay_internal): Redisplay all windows if cursor_type_changed.
12688 Clear it when clearing windows_or_buffers_changed.
12689 (try_cursor_movement, redisplay_window, try_window_id)
12690 (try_window_reusing_current_matrix): Test cursor_type_changed
12691 along with windows_or_buffers_changed.
12692
12693 * window.h (cursor_type_changed): New variable.
12694
12695 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
12696 not update_mode_lines, and always set it to 1.
12697
12698 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
12699 if no frames needed redrawing.
12700
12701 2002-03-17 Kim F. Storm <storm@cua.dk>
12702
12703 The following changes add support for network server processes,
12704 datagram connections, and local (unix) sockets.
12705
12706 * process.h (struct Lisp_Process): New member log.
12707 Doc fix: Member command used to indicate stopped network process.
12708 Doc fix: Member childp contains plist for network process.
12709 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
12710
12711 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
12712 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
12713 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
12714 New variables.
12715 (NETCONN1_P): New macro.
12716 (DATAGRAM_SOCKETS): New conditional symbol.
12717 (datagram_address): New array.
12718 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
12719 (status_message): Use concat3.
12720 (Fprocess_status): Add `listen' status to doc string. Return `stop'
12721 for a stopped network process.
12722 (Fset_process_buffer): Update contact plist for network process.
12723 (Fset_process_filter): Ditto. Don't enable input for stopped
12724 network processes. Server must listen, even if filter is t.
12725 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
12726 New functions.
12727 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
12728 (Fprocess_contact): Added KEY argument. Handle datagrams.
12729 (list_processes_1): Optionally show only processes with the query
12730 on exit flag set. Dynamically adjust column widths. Omit tty
12731 column if not needed. Report stopped network processes.
12732 Identify server and datagram network processes.
12733 (Flist_processes): New optional arg `query-only'.
12734 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
12735 (conv_lisp_to_sockaddr, set_socket_options)
12736 (network_process_featurep, unwind_request_sigio): New helper functions.
12737 (Fprocess_datagram_address, Fset_process_datagram_address):
12738 (Fset_network_process_options): New lisp functions.
12739 (Fopen_network_stream): Removed. Now defined in simple.el.
12740 (Fmake_network_process): New lisp function. Code is based on previous
12741 Fopen_network_stream, but heavily reworked with new property list based
12742 argument list, support for datagrams, server processes, and local
12743 sockets in addition to old client-only functionality.
12744 (server_accept_connection): New function.
12745 (wait_reading_process_input): Use it to handle incoming connects.
12746 Do not enable input on a new connection if process is stopped.
12747 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
12748 (send_process): Handle datagram sockets.
12749 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
12750 network process is indicated by setting command field to t .
12751 (Fprocess_send_eof): No-op if datagram connection.
12752 (Fstatus_notify): Don't read input for a stream server socket or a
12753 stopped network process.
12754 (init_process): Initialize datagram_address array.
12755 (syms_of_process): Intern and staticpro new variables, defsubr new
12756 functions.
12757
12758 2002-03-16 Jason Rumney <jasonr@gnu.org>
12759
12760 * w32fns.c (w32_to_all_x_charsets): Return correct type in
12761 startup case.
12762
12763 2002-03-16 Richard M. Stallman <rms@gnu.org>
12764
12765 * xdisp.c (redisplay_internal, redisplay_windows):
12766 Use list_of_error to call internal_condition_case_1.
12767 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
12768 so as to catch all errors with no possibility of debugger redisplay.
12769 (list_of_error): New variable.
12770 (syms_of_xdisp): Init and staticpro it.
12771
12772 * print.c (print_object): Delete `\ ' from printed rep of frame.
12773
12774 2002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
12775
12776 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
12777 until its implementation is fixed.
12778
12779 2002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12780
12781 * xfns.c (png_load): Remove unused variable `gamma_str'.
12782
12783 2002-03-14 Richard M. Stallman <rms@gnu.org>
12784
12785 * xfns.c (x_real_positions): Handle failure in XQueryTree.
12786
12787 2002-03-14 Miles Bader <miles@gnu.org>
12788
12789 * intervals.c (adjust_for_invis_intang): New function.
12790 (set_point_both): Use `adjust_for_invis_intang' to do most of the
12791 work for dealing with invisible+intangible regions. Do so before
12792 and after both forward and backward movements, to handle both
12793 front-sticky and rear-sticky cases.
12794 * textprop.c (text_property_stickiness): Function moved here from
12795 `editfns.c'.
12796 * intervals.h (text_property_stickiness): New declaration.
12797 * editfns.c (char_property_eq): Function removed.
12798 (text_property_stickiness): Function moved to `textprop.c'.
12799
12800 2002-03-13 Jason Rumney <jasonr@gnu.org>
12801
12802 * config.in: Add STRFTIME_NO_POSIX2.
12803
12804 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
12805 and %OX when underlying strftime does not.
12806
12807 2002-03-13 Stefan Monnier <monnier@cs.yale.edu>
12808
12809 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
12810 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
12811 line) to avoid annoying flicker.
12812 (xm_scroll_callback): Get rid of the now unnecessary kludge.
12813 (XTread_socket): Mark it static.
12814
12815 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
12816
12817 2002-03-13 Kim F. Storm <storm@cua.dk>
12818
12819 * puresize.h (BASE_PURESIZE): Increase to 775000.
12820
12821 2002-03-12 Juanma Barranquero <lektu@terra.es>
12822
12823 * editfns.c (syms_of_editfns): Fix typo.
12824
12825 2002-03-12 Gerd Moellmann <gerd@gnu.org>
12826
12827 * xsmfns.c: Include stdio.h because termhooks.h needs it.
12828 Include termopt.h for interrupt_input.
12829
12830 2002-03-11 Andreas Schwab <schwab@suse.de>
12831
12832 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
12833
12834 2002-03-11 Gerd Moellmann <gerd@gnu.org>
12835
12836 * xterm.c (note_mouse_movement): Put code for
12837 x_autoselect_window_p in #if 0.
12838
12839 * lread.c (Fload): Don't assume that message_with_string uses the
12840 string it is given like a C string.
12841
12842 2002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12843
12844 * xterm.h (x_session_check_input, x_session_initialize): Declared.
12845
12846 * xterm.c: (XTread_socket): Add call to x_session_check_input and
12847 x_session_have_connection.
12848 (x_initialize): Add call to x_session_initialize.
12849
12850 * termhooks.h (enum event_kind): Add save_session_event.
12851
12852 * keyboard.c: Add Emacs event save_session_event.
12853
12854 * emacs.c (main): Add call to syms_of_xsmfns.
12855
12856 * lisp.h: Declare syms_of_xsmfns as extern.
12857
12858 * config.in: Add HAVE_X_SM.
12859
12860 * Makefile.in (LIBXT): Add -lSM -lICE
12861 if HAVE_X_SM and not USE_X_TOOLKIT.
12862 (XOBJ): New file xsmfns.c added.
12863
12864 * xsmfns.c: New file for X session management.
12865
12866 2002-03-09 Jason Rumney <jasonr@gnu.org>
12867
12868 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
12869 read-only when setting modified time.
12870
12871 2002-03-08 Gerd Moellmann <gerd@gnu.org>
12872
12873 * xdisp.c (move_it_vertically_backward): At the end of the function,
12874 when moving forward by lines, treat terminal frames specially.
12875
12876 * keyboard.c (echo_char): Make sure to add a separator between
12877 keys even if echo_dash hasn't been called.
12878
12879 * xdisp.c: Use new string macros.
12880 (update_echo_area): Pass number of bytes to message3 instead of
12881 number of chars.
12882 (set_message_1): Don't access a string's size_byte directly.
12883 (decode_mode_spec_coding): Use number of bytes of eoltype string
12884 instead number of chars.
12885
12886 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
12887
12888 2002-03-08 Juanma Barranquero <lektu@terra.es>
12889
12890 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
12891 24-bit.
12892
12893 2002-03-06 Jason Rumney <jasonr@gnu.org>
12894
12895 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
12896
12897 2002-03-06 Gerd Moellmann <gerd@gnu.org>
12898
12899 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
12900 (cancel_echoing, echo_length, echo_truncate): Changed to
12901 work with new kboard definition.
12902 (echo_now): Use message3_nolog instead of message2_nolog.
12903
12904 * alloc.c (mark_kboards): Mark echo_string.
12905
12906 * keyboard.h (ECHOBUFSIZE): Removed.
12907 (struct kboard): Member echoptr removed, member echobuf renamed
12908 to echo_string.
12909
12910 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
12911 message3 instead of message2 to display the message using STRING's
12912 text properties.
12913
12914 2002-03-05 Andreas Schwab <schwab@suse.de>
12915
12916 * xdisp.c (hscroll_margin): Change to EMACS_INT.
12917
12918 2002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
12919
12920 * frame.c (default-frame-alist): Explain that setting it doesn't
12921 affect existing frames.
12922
12923 2002-03-05 Stefan Monnier <monnier@cs.yale.edu>
12924
12925 * indent.c (skip_invisible): Fix my brain fart.
12926
12927 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
12928
12929 2002-03-04 Stefan Monnier <monnier@cs.yale.edu>
12930
12931 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
12932 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
12933 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
12934 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
12935 and variables to use EMACS_INT instead of just int.
12936
12937 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
12938
12939 2002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
12940
12941 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
12942 environment, pass it down with corrected value.
12943
12944 2002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12945
12946 * lread.c (read_filtered_event): Do not call start_hourglass
12947 before returning.
12948
12949 2002-03-04 Juanma Barranquero <lektu@terra.es>
12950
12951 * w32term.c (x_display_and_set_cursor): Fix typo.
12952
12953 2002-03-03 Richard M. Stallman <rms@gnu.org>
12954
12955 * fileio.c (Fmake_temp_name): Doc fix.
12956
12957 2002-03-03 Gary Wong <gtw@gnu.org>
12958
12959 * termcap.c [!emacs]: Replace ospeed for building standalone
12960 libtermcap, for binary compatibility.
12961
12962 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
12963
12964 2002-03-03 Richard M. Stallman <rms@gnu.org>
12965
12966 * xrdb.c (file_p): Rename arg `path' to `filename'.
12967
12968 * abbrev.c (Fexpand_abbrev): Increment plist as use count
12969 only if it is an integer.
12970
12971 * xfns.c (png_load): Set screen_gamma based on f->gamma.
12972 If png_get_sRGB gives an answer, call png_set_gamma
12973 using the default image gamma value.
12974
12975 * lread.c (read1): When reading from a file, default string to
12976 multibyte only if it has some multibyte characters.
12977
12978 * print.c (print_object): Output multibyte chars 128...255
12979 using \x even if ! print_escape_multibyte.
12980
12981 * xdisp.c (display_mode_element): Move the places where
12982 bytepos, charpos, this, and lisp_string are set.
12983 Use lisp_string to set bytepos.
12984
12985 * xdisp.c (redisplay_internal):
12986 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
12987
12988 * xdisp.c (display_mode_element): Merge properties specified with
12989 :propertize onto those that come with the string.
12990
12991 2002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
12992
12993 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
12994 automatic-hscrolling. Users changed.
12995 <hscroll-margin>: Renamed from automatic-hscroll-margin.
12996 Users changed.
12997 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
12998
12999 2002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
13000
13001 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
13002
13003 2002-03-02 Kim F. Storm <storm@cua.dk>
13004
13005 * window.c (Fminibuffer_selected_window): New function.
13006 (syms_of_window): Defsubr it.
13007
13008 2002-03-01 Kim F. Storm <storm@cua.dk>
13009
13010 * window.h (struct window): New member phys_cursor_width.
13011
13012 * window.c (make_window, replace_window): Init phys_cursor_width.
13013
13014 * xterm.c (x_display_and_set_cursor): Blink box cursor using
13015 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
13016
13017 * w32term.c (x_display_and_set_cursor): Blink box cursor using
13018 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
13019
13020 * lisp.h (GCPRO6): New macro.
13021
13022 * process.c (Fopen_network_stream): Use GCPRO6.
13023
13024 2002-03-01 Kim F. Storm <storm@cua.dk>
13025
13026 * process.c (Qconnect, Qfailed): New variables.
13027 (syms_of_process): Intern and staticpro them.
13028 (Fprocess_status): Document connect and failed return values.
13029 [NON_BLOCKING_CONNECT]: New conditional.
13030 (connect_wait_mask, num_pending_connects): New variables.
13031 (status_message): Convert Qfailed status.
13032 (Fopen_network_stream): Added support for non-blocking connect.
13033 New optional args: filter, sentinel, non_blocking. Doc updated.
13034 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
13035 (deactivate_process): Handle pending non-blocking connect.
13036 (wait_reading_process_input): Poll for status of non-blocking
13037 connects. Exec sentinel directly when connect succeeds.
13038 (status_notify): Don't read process output if not yet connected.
13039
13040 2002-02-28 Kim F. Storm <storm@cua.dk>
13041
13042 * window.c: (minibuf_selected_window): Renamed from
13043 Vminibuf_selected_window. Users changed.
13044 (syms_of_window): Staticpro it.
13045
13046 2002-02-26 Kim F. Storm <storm@cua.dk>
13047
13048 The following changes add a new Vminibuf_selected_window variable
13049 which is similar to Vminibuf_scroll_window, but which is only set
13050 on entry to the minibuffer (from a non-minibuffer window):
13051
13052 * window.c: (Vminibuf_selected_window): New variable.
13053 (struct save_window_data): New member minibuf_selected_window.
13054 (Fset_window_configuration): Restore Vminibuf_selected_window.
13055 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
13056 Set minibuf_scroll_window member to nil if minibuf_level is 0.
13057 (compare_window_configurations): Compare minibuf_selected_window.
13058
13059 * window.h: (Vminibuf_selected_window): Declare extern.
13060
13061 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
13062 entry to minibuffer or on entry from a non-minibuffer window.
13063
13064 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
13065 Vminibuf_selected_window instead of Vminibuf_scroll_window.
13066
13067 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
13068 instead of Vminibuf_scroll_window when deciding in which window
13069 the region should be highlighted. Consequently, the region remains
13070 highlighteded even when a completion buffer is also displayed.
13071
13072 2002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
13073
13074 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
13075
13076 * xselect.c (Qcompound_text_with_extensions): Renamed from
13077 Qcompound_text_no_extensions.
13078 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
13079
13080 2002-02-26 Juanma Barranquero <lektu@terra.es>
13081
13082 * w32proc.c (syms_of_ntproc): Doc fix.
13083
13084 2002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13085
13086 * intervals.h: Include "dispextern.h" unconditionally.
13087
13088 2002-02-24 Jason Rumney <jasonr@gnu.org>
13089
13090 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
13091 and disp-table.elc.
13092 (lisp): Add emacs-lisp/backquote.elc.
13093
13094 2002-02-24 Kim F. Storm <storm@cua.dk>
13095
13096 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
13097 The validation of the event type was too strict as it didn't
13098 allow string events; buffer names are used in bindings for
13099 menu-bar-select-buffer (see `menu-bar-update-buffers').
13100
13101 2002-02-23 Kim F. Storm <storm@cua.dk>
13102
13103 The following changes rework my patch of 2002-02-06 which
13104 added command remapping by entering the commands directly into
13105 the keymaps. Now, command remapping uses an explicit `remap'
13106 prefix in the keymaps, i.e. [remap COMMAND].
13107
13108 * keymap.c (Qremap, remap_command_vector): New variables.
13109 (is_command_symbol): Removed function.
13110 (Fdefine_key): No longer accept a symbol for KEY.
13111 Added validation of [remap COMMAND] argument for KEY.
13112 The DEF is no longer required to be a symbol when remapping a command.
13113 (Fremap_command): New function to remap command through keymaps.
13114 (Flookup_key): Perform command remapping initiated by
13115 Fremap_command directly for speed.
13116 (Fkey_binding): Use Fremap_command for command remapping.
13117 (where_is_internal): Handle new command remapping representation.
13118 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
13119 staticpro them. Defsubr Fremap_command.
13120
13121 * keymap.h (Fremap_command): Declare extern.
13122 (is_command_symbol): Remove extern.
13123
13124 * keyboard.c (command_loop_1): Use Fremap_command for command
13125 remapping; now try command remapping for all symbols.
13126
13127 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
13128
13129 * coding.h (run_pre_post_conversion_on_str): Add prototype.
13130
13131 2002-02-23 Jason Rumney <jasonr@gnu.org>
13132
13133 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
13134 on the string before encoding it.
13135 (Fw32_get_clipboard_data): Run post-read-conversion on the string
13136 after decoding it.
13137
13138 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
13139
13140 2002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13141
13142 * w32term.c (enter_timestamp): Remove unused static variable to
13143 prevent warning.
13144
13145 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
13146
13147 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
13148
13149 * w16select.c (Fw16_get_clipboard_data): Fix last change.
13150
13151 * xselect.c (selection_data_to_lisp_data): Fix last change.
13152
13153 2002-02-22 Jason Rumney <jasonr@gnu.org>
13154
13155 * w32term.h (struct w32_output): New member menu_command_in_progress.
13156
13157 * w32menu.c (menubar_selection_callback): Free the menu and
13158 clear the menu_command_in_progress flag.
13159
13160 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
13161 (menu_free_timer): New variable.
13162 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
13163 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
13164 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
13165 menu command is in progress.
13166 <WM_COMMAND>: Set the menu_command_in_progress flag.
13167 Kill any menu_free_timer that is running.
13168
13169 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
13170 Call ExtTextOutA rather than ExtTextOut.
13171
13172 2002-02-22 Eli Zaretskii <eliz@gnu.org>
13173
13174 * puresize.h (BASE_PURESIZE): Increase to 755000.
13175
13176 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
13177
13178 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
13179 on the string before encoding it.
13180 (Fw16_get_clipboard_data): Run post-read-conversion on the string
13181 after decoding it.
13182
13183 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
13184
13185 Support for ICCCM Extended Segments in X selections:
13186
13187 * xselect.c <Qcompound_text_no_extensions>: New variable.
13188 (syms_of_xselect): Intern and staticpro it.
13189 (selection_data_to_lisp_data): Run post-read-conversion on decoded
13190 selection text.
13191 (lisp_data_to_selection_data): If next-selection-coding-system is
13192 compound-text-no-extensions, set the type of selection to be
13193 compound-text.
13194
13195 * xterm.h (x_encode_text): Update prototype.
13196
13197 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
13198 callers changed. If SELECTIONP is non-zero, run the
13199 pre-write-conversion function before encoding the selection text.
13200
13201 2002-02-21 Kim F. Storm <storm@cua.dk>
13202
13203 * frame.c (syms_of_frame): Change mouse-highlight default to t.
13204
13205 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
13206 Correct composing of language-change event.
13207
13208 2002-02-20 Kim F. Storm <storm@cua.dk>
13209
13210 * keyboard.c (menu_bar_items): Don't include keymap or local-map
13211 bindings at PT when building menu (the menu is not updated often
13212 enough for this to work reliable).
13213 (tool_bar_items): Likewise.
13214 (current_active_maps): Removed unused (and buggy) function.
13215
13216 2002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13217
13218 * xfns.c (gif_load): Use correct width and height for GIF images.
13219
13220 2002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
13221
13222 * floatfns.c (Fatan): Accept an optional second arg and call
13223 atan2 if passed 2 args.
13224
13225 2002-02-18 Jason Rumney <jasonr@gnu.org>
13226
13227 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
13228
13229 2002-02-17 Jason Rumney <jasonr@gnu.org>
13230
13231 * w32term.c (x_autoselect_window_p): New variable.
13232 (syms_of_w32term): DEFVAR_BOOL and initialize it.
13233 (note_mouse_movement): Use it.
13234
13235 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
13236
13237 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
13238
13239 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
13240 New variables.
13241 (syms_of_w32fns): Intern and staticpro them.
13242 (x_frame_parms) <"fullscreen">: New parameter.
13243 (x_fullscreen_move, x_set_fullscreen): New functions.
13244 (x_set_frame_parameters): Support Qfullscreen.
13245 (x_real_positions): Save x/y_pixels_diff frame params.
13246 (x_figure_window_size): Support full-screen frames.
13247 (Fx_create_frame): Default the fullscreen parameter.
13248
13249 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
13250 (x_fullscreen_adjust): New functions.
13251 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
13252 fullscreen. Call x_check_fullscreen_move, and set the
13253 want_fullscreen member of output_data.w32
13254 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
13255
13256 * w32term.h: New enum for FULLSCREEN_* constants.
13257 (struct w32_output): New members want_fullscreen, x_pixels_diff,
13258 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
13259 (x-fullscreen-adjust): New prototype.
13260
13261 2002-02-17 Kim F. Storm <storm@cua.dk>
13262
13263 * frame.c: (Vmouse_highlight): New variable.
13264 (syms_of_frame): DEFVAR_LISP it.
13265
13266 * frame.h: (Vmouse_highlight): Declare extern.
13267
13268 * xterm.h (struct x_display_info): Add mouse_face_hidden.
13269
13270 * xterm.c (disable_mouse_highlight): Removed variable.
13271 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
13272 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
13273 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
13274 and on after keyboard input.
13275 (x_term_init): Initialize mouse_face_hidden.
13276
13277 * msdos.h (struct display_info): Add mouse_face_hidden.
13278
13279 * msdos.c (disable_mouse_highlight): Removed variable.
13280 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
13281 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
13282 (internal_terminal_init): Initialize mouse_face_hidden.
13283 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
13284 and on after keyboard input.
13285
13286 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
13287
13288 * w32term.c (disable_mouse_highlight): Removed variable.
13289 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
13290 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
13291 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
13292 and on after keyboard input.
13293 (w32_initialize_display_info): Initialize mouse_face_hidden.
13294
13295 2002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
13296
13297 * msdos.c (last_mouse_window): New variable.
13298 (dos_rawgetc): Fix last change--if the mouse is in the same window
13299 as recorded in last_mouse_window, don't select this window.
13300
13301 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
13302
13303 * msdos.c (x_autoselect_window_p): New variable.
13304 (syms_of_msdos): Defvar it.
13305 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
13306 which the last mouse movement occured, unless it is already selected.
13307
13308 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
13309 New variables.
13310 (syms_of_xdisp): DEVFAR them.
13311 (hscroll_window_tree): Use automatic_hscroll_margin and
13312 Vautomatic_hscroll_step to compute the amount of window scrolling.
13313
13314 2002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13315
13316 * xterm.c (x-autoselect-window): New variable.
13317 (note_mouse_movement): Use it.
13318
13319 * keyboard.c: Do not include "systime.h" twice.
13320
13321 2002-02-15 Andreas Schwab <schwab@suse.de>
13322
13323 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
13324
13325 * alloc.c (NSTATICS): Increase to 1280.
13326
13327 2002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
13328
13329 * alloc.c (NSTATICS): Bump to 1026.
13330
13331 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
13332 (Vx_super_keysym): New variables.
13333 (syms_of_xterm): DEFVAR_LISP them.
13334 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
13335 variables to determine which keys to use for the various modifiers.
13336
13337 2002-02-13 Kim F. Storm <storm@cua.dk>
13338
13339 * window.c: (Vmode_line_in_non_selected_windows): Removed.
13340 (mode_line_in_non_selected_windows): New variable.
13341 (syms_of_window): DEFVAR_BOOL it.
13342
13343 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
13344 Use mode_line_in_non_selected_windows.
13345 (mode_line_in_non_selected_windows): Declare extern.
13346 (Vmode_line_in_non_selected_windows): Removed extern.
13347
13348 2002-02-13 Richard M. Stallman <rms@gnu.org>
13349
13350 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
13351 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
13352 (Fclear_this_command_keys): Doc fixes.
13353
13354 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
13355 (update_face_from_frame_parameter): Increment face_change_count
13356 and windows_or_buffers_changed to force redisplay using changed faces.
13357
13358 * xdisp.c (QCpropertize): New variable.
13359 (mode_line_proptrans_alist): New variable.
13360 (display_mode_element): New arg PROPS; all calls changed.
13361 Implement this, for strings.
13362 Handle literal output of strings by sharing the
13363 main-line code for strings, using local var `literal'.
13364 Handle :propertize feature.
13365 (syms_of_xdisp): Initialze and staticpro QCpropertize and
13366 mode_line_proptrans_alist.
13367
13368 2002-02-11 Kim F. Storm <storm@cua.dk>
13369
13370 * window.c: (Vmode_line_in_non_selected_windows): New variable.
13371 (syms_of_window): DEFVAR_LISP it.
13372
13373 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
13374 (CURRENT_MODE_LINE_FACE_ID): Use it.
13375 (Vmode_line_in_non_selected_windows): Declare extern.
13376
13377 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
13378 to get mode line face.
13379
13380 2002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
13381
13382 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
13383 variables; cus-start.el doesn't need them anymore.
13384
13385 2002-02-09 Kim F. Storm <storm@cua.dk>
13386
13387 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
13388 reduction. This fixes a display problem where stray newlines were
13389 inserted in the window (corrected by C-l). Clarified code (IMHO).
13390
13391 2002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
13392
13393 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
13394
13395 * xdisp.c (display_mode_lines): Fix last change.
13396
13397 2002-02-09 Jason Rumney <jasonr@gnu.org>
13398
13399 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
13400 match each other.
13401 (w32_load_system_font): Prevent Cleartype fonts from loading.
13402 (Fx_show_tip): Ensure tip frames are above other topmost windows.
13403
13404 2002-02-09 Kim F. Storm <storm@cua.dk>
13405
13406 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
13407 (CURRENT_MODE_LINE_HEIGHT): Use it.
13408 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
13409
13410 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
13411 (pos_visible_p, handle_face_prop): Likewise.
13412 (display_mode_lines): Likewise, but for the real selected window.
13413 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
13414
13415 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
13416 in non-selected windows.
13417 (realize_basic_faces): Realize it.
13418 (syms_of_term): Intern and staticpro it.
13419
13420 2002-02-08 Kim F. Storm <storm@cua.dk>
13421
13422 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
13423 Changed mail addresses to emacs-devel@gnu.org.
13424
13425 2002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
13426
13427 * fileio.c (Fsubstitute_in_file_name): If the file name includes
13428 ~user, and there's no such user, don't discard everything before ~user.
13429
13430 * floatfns.c (Fround): Doc fix.
13431
13432 2002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13433
13434 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
13435
13436 2002-02-07 Stefan Monnier <monnier@cs.yale.edu>
13437
13438 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
13439
13440 2002-02-07 Kim F. Storm <storm@cua.dk>
13441
13442 * keymap.c (where_is_internal): Only check whether definition is
13443 remapped if it fulfills is_command_symbol.
13444
13445 2002-02-07 Andreas Schwab <schwab@suse.de>
13446
13447 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
13448
13449 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
13450
13451 2002-02-06 Kim F. Storm <storm@cua.dk>
13452
13453 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
13454 defining command remapping. Doc updated.
13455 (Flookup_key): Remap command through keymap if KEY is a symbol.
13456 (is_command_symbol): New function.
13457 (Fkey_binding): Use it. New optional argument NO-REMAP.
13458 Doc updated. Callers changed. Perform command remapping via
13459 recursive call unless that arg is non-nil.
13460 (where_is_internal): New argument no_remap. Callers changed.
13461 Call recursively to find original key bindings for a remapped
13462 comand unless that arg is non-nil.
13463 (Fwhere_is_internal): New optional argument NO-REMAP.
13464 Doc updated. Callers changed. Pass arg to where_is_internal.
13465
13466 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
13467 (is_command_symbol): Added prototype.
13468
13469 * keyboard.c (Vthis_original_command): New variable.
13470 (syms_of_keyboard): DEFVAR_LISP it.
13471 (command_loop_1): Set it, and perform command remapping.
13472
13473 2002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13474
13475 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
13476
13477 2002-02-06 Jason Rumney <jasonr@gnu.org>
13478
13479 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
13480
13481 2002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
13482
13483 * charset.c (get_charset_id): Use if-else instead of ?:.
13484
13485 2002-02-06 Richard M. Stallman <rms@gnu.org>
13486
13487 * filelock.c (S_ISLNK): Define if not defined.
13488
13489 2002-02-03 Richard M. Stallman <rms@gnu.org>
13490
13491 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
13492
13493 * lread.c (read1): Redesign strategy for force_multibyte and
13494 force_singlebyte. Now is_multibyte records whether read_buffer
13495 is multibyte. Encountering any multibyte character makes it so.
13496
13497 2002-02-02 Stefan Monnier <monnier@cs.yale.edu>
13498
13499 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
13500 with the same sequence, map that sequence to f10 rather than f0.
13501
13502 2002-02-03 Andreas Schwab <schwab@suse.de>
13503
13504 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
13505 latter never being defined on GNU/Linux.
13506
13507 2002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
13508
13509 * xfaces.c (realize_default_face): Don't set the weight and slant of
13510 the default face to Qnormal, unless these attributes are unspecified.
13511
13512 2002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13513
13514 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
13515 Call cancel_hourglass unconditionally.
13516
13517 * eval.c (Fsignal): Remove duplicated declaration of
13518 the variable `display_hourglass_p'.
13519
13520 2002-01-31 Richard M. Stallman <rms@gnu.org>
13521
13522 * editfns.c (region_limit): Nicer error message.
13523
13524 * coding.c (decode_composition_emacs_mule):
13525 Give up if NCOMPONENT gets too large to index `component'.
13526
13527 * callint.c (check_mark): New arg to specify clearer error message.
13528 Callers changed.
13529
13530 2002-01-27 Richard M. Stallman <rms@gnu.org>
13531
13532 * minibuf.c (Fcompleting_read): Doc fix.
13533
13534 2002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13535
13536 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
13537 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
13538 Fix doc-strings.
13539
13540 2002-01-26 Richard M. Stallman <rms@gnu.org>
13541
13542 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
13543
13544 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
13545 and scroll_up_aggressively.
13546
13547 2002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13548
13549 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
13550
13551 2002-01-25 Stefan Monnier <monnier@cs.yale.edu>
13552
13553 * textprop.c (Fnext_property_change, Fnext_single_property_change)
13554 (Fprevious_property_change, Fprevious_single_property_change):
13555 Stay within the narrowed-buffer boundaries.
13556
13557 2002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
13558
13559 * term.c (Ftty_display_color_cells): New function.
13560 (syms_of_term): Defsubr it.
13561 (Ftty_display_color_cells, Ftty_display_color_p): Change the
13562 argument name to DISPLAY. Doc fix.
13563
13564 * dispextern.h: Add prototype for set_tty_color_mode and
13565 tty_setup_colors.
13566
13567 2002-01-24 Jason Rumney <jasonr@gnu.org>
13568
13569 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
13570 If region left to draw is not what was expected, mark the frame as
13571 garbaged.
13572
13573 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
13574 Combine the regions returned by BeginPaint and GetUpdateRect.
13575
13576 2002-01-23 Jason Rumney <jasonr@gnu.org>
13577
13578 * w32term.c (x_update_window_begin): Only hide caret if
13579 w32_use_visible_system_caret is set.
13580 (x_update_window_end): Only show caret if
13581 w32_use_visible_system_caret is set.
13582 (syms_of_w32term): Handle SystemParametersInfo call failing.
13583
13584 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
13585
13586 2002-01-22 Richard M. Stallman <rms@gnu.org>
13587
13588 * unexelf.c (unexec): Define n so as to cause compilation error
13589 for the code where people have often written n instead of nn.
13590
13591 * .gdbinit (hookpost-run): Defined.
13592
13593 2002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13594
13595 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
13596
13597 2002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13598
13599 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
13600 if fullscreen is being set.
13601
13602 2002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13603
13604 * minibuf.c (Fminibuffer_contents)
13605 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
13606 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
13607
13608 2002-01-21 Richard M. Stallman <rms@gnu.org>
13609
13610 * window.c (check_frame_size): Fix minimum height calculation.
13611
13612 2002-01-20 Ken Raeburn <raeburn@gnu.org>
13613
13614 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
13615 height before comparison.
13616 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
13617
13618 2002-01-20 Jason Rumney <jasonr@gnu.org>
13619
13620 * w32term.c (w32_system_caret_width): Remove.
13621 (w32_use_visible_system_caret): New user flag.
13622 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
13623 Windows reports a screen reader running.
13624 (x_update_window_begin): Hide the system caret.
13625 (x_update_window_end): Show the system caret.
13626 (x_display_and_set_cursor): Don't draw a cursor when
13627 w32_use_visible_system_caret is set. Do not adjust width.
13628
13629 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
13630 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
13631 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
13632 the user requests it. Use system default width when creating.
13633 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
13634
13635 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
13636 New window messages.
13637
13638 2002-01-20 Richard M. Stallman <rms@gnu.org>
13639
13640 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
13641
13642 2002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13643
13644 * doprnt.c (doprnt1): Fix typos in error call.
13645
13646 2002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
13647
13648 * unexelf.c (unexec) [__sgi]: Support the .got sections.
13649
13650 2002-01-20 Jason Rumney <jasonr@gnu.org>
13651
13652 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
13653 that Windows returns. If a double check fails, try to guess how
13654 ExtTextOut is going to act.
13655
13656 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
13657 in place of stricmp.
13658 (w32_list_synthesized_fonts): Removed.
13659 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
13660 (struct enumfont_t): New element; list.
13661 (enum_font_cb2): List all style and charset variations of a font.
13662 (Fw32_select_font): New optional argument; include_proportional.
13663 Exclude vertical fonts. Exclude proportional fonts unless
13664 include_proportional is non-nil.
13665 (w32_enable_synthesized_fonts): Change to a boolean.
13666 (Fw32_send_sys_command): Doc fix.
13667
13668 2002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13669
13670 * dispnew.c (update_frame): Move the variable `tem' to the block
13671 where it is used.
13672
13673 2002-01-19 Jason Rumney <jasonr@gnu.org>
13674
13675 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
13676 call to face-set-after-frame-default.
13677
13678 2002-01-18 Richard M. Stallman <rms@gnu.org>
13679
13680 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
13681 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
13682
13683 2002-01-17 Richard M. Stallman <rms@gnu.org>
13684
13685 * window.c (enlarge_window): When exceeding size of parent,
13686 directly delete all the siblings instead of trying to resize it.
13687
13688 2002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13689
13690 * term.c (set_tty_color_mode): Remove unused variable `tem'.
13691
13692 2002-01-16 Henrik Enberg <henrik@enberg.org>
13693
13694 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
13695
13696 2002-01-16 Kim F. Storm <storm@cua.dk>
13697
13698 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
13699 is invisible. This can happen if cursor is on top line of a
13700 window, and we switch to a buffer with a header line.
13701
13702 * w32term.c (x_erase_phys_cursor): Ditto.
13703
13704 2002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13705
13706 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
13707 `dont_resize' only when used.
13708
13709 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
13710
13711 2002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
13712
13713 * xdisp.c (display_mode_element): When computing charpos, depend
13714 on multibyteness of elt, not the text in field.
13715
13716 2002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13717
13718 * buffer.c (Fkill_all_local_variables):
13719 Increment `update_mode_lines' only once.
13720
13721 2002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13722
13723 * lisp.h (adjust_after_replace_noundo)
13724 (Fupdate_coding_systems_internal): Add prototypes.
13725
13726 * sound.c (Fplay_sound): Initialize header_size also for :data case.
13727
13728 2002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
13729
13730 Support for the --color command-line argument and tty-color-mode
13731 frame parameter:
13732
13733 * term.c (tty_default_color_capabilities, tty_setup_colors)
13734 (set_tty_color_mode): New functions.
13735 (term_init): Call tty_default_color_capabilities.
13736 (Qtty_color_mode_alist): New variable.
13737 (syms_of_term): Intern and staticpro it.
13738
13739 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
13740 frames.
13741 (do_switch_frame): For termcap frames, switch the tty
13742 color mode as specified by the frame's parameters.
13743 (Qtty_color_mode): New variable.
13744 (syms_of_frame): Intern and staticpro it.
13745
13746 * emacs.c (USAGE2): Add the --color option.
13747 (standard_args): Ditto.
13748
13749 2002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13750
13751 * xterm.h (struct x_output): New members want_fullscreen,
13752 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
13753 y_pixels_outer_diff.
13754 New enum for FULLSCREEN_* constants.
13755 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
13756 is NULL.
13757 (x_fullscreen_adjust): Add prototype.
13758
13759 * emacs.c (USAGE2): Add the new full-screen arguments.
13760 (standard_args): Ditto.
13761
13762 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
13763 New variables.
13764 (syms_of_xfns): Intern and staticpro them.
13765 (x_frame_parms) <"fullscreen">: New parameter.
13766 (x_fullscreen_move, x_set_fullscreen): New functions.
13767 (x_set_frame_parameters): Support for Qfullscreen.
13768 (x_real_positions): More accurate computation of the frame position.
13769 (x_figure_window_size): Support full-screen frames.
13770 (Fx_create_frame): Default the fullscreen parameter.
13771
13772 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
13773 (XTread_socket) <Expose>: Call x_check_fullscreen.
13774 <ConfigureNotify>: Don't resize to fullscreen.
13775 Call x_check_fullscreen_move, and set the want_fullscreen member of
13776 output_data.x.
13777
13778 2002-01-13 Jason Rumney <jasonr@gnu.org>
13779
13780 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
13781 for mice with more than 3 buttons.
13782
13783 * w32term.c (parse_button): New parameter xbutton. Callers changed.
13784 (w32_read_socket): Handle new "XBUTTON" messages.
13785
13786 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
13787 (syms_of_w32fns): DEFVAR_BOOL it.
13788 (w32_wnd_proc): Handle new "XBUTTON" messages.
13789
13790 2002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13791
13792 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
13793
13794 2002-01-13 Andreas Schwab <schwab@suse.de>
13795
13796 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
13797
13798 2002-01-12 Andreas Schwab <schwab@suse.de>
13799
13800 * .gdbinit (xbuffer): Remove address operator since data is now a
13801 pointer.
13802
13803 2002-01-11 Richard M. Stallman <rms@gnu.org>
13804
13805 * insdel.c (adjust_after_replace_noundo): New function.
13806
13807 * coding.c (code_convert_region): Don't copy old text if undo disabled.
13808
13809 2002-01-09 Jason Rumney <jasonr@gnu.org>
13810
13811 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
13812 when checking for multiple frames.
13813
13814 2002-01-08 Richard M. Stallman <rms@gnu.org>
13815
13816 * window.c (delete_window): Rewrite the code for changing the
13817 selected window to handle the case where WINDOW is not a leaf.
13818
13819 2002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
13820
13821 * process.c (send_process): Set src_multibyte to 1 after the call
13822 top setup_coding_system, not before the call.
13823
13824 2002-01-07 Jason Rumney <jasonr@gnu.org>
13825
13826 * xmenu.c (set_frame_menubar, xmenu_show):
13827 (xdialog_show): Initialize wv->help to Qnil.
13828
13829 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
13830 (w32_dialog_show): Initialize wv->help to Qnil.
13831
13832 2002-01-06 Jason Rumney <jasonr@gnu.org>
13833
13834 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
13835
13836 * w32menu.c (w32_menu_display_help): Revert last change.
13837
13838 * xmenu.c (menu_highlight_callback): Revert last change.
13839
13840 2002-01-06 Andreas Schwab <schwab@suse.de>
13841
13842 * insdel.c (make_gap_larger): Make sure buffer size does not
13843 overflow range of int.
13844
13845 2002-01-05 Jason Rumney <jasonr@gnu.org>
13846
13847 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
13848 OVERLAPS_P.
13849
13850 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
13851
13852 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
13853 to the left or to the right of the pointer, put it against
13854 the left screen edge.
13855 (x_frame_parms): Add missing braces around initializer.
13856
13857 * w32term.c (x_setup_relief_colors): Don't compute an image's
13858 background color if it doesn't have a Pixmap.
13859 (notice_overwritten_cursor): Don't depend on
13860 output_cursor and updated_area. Compare pixel coordinates with
13861 window's cursor pixel coordinates.
13862 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
13863 Call notice_overwritten_cursor with new arg list.
13864 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
13865 unconditionally.
13866 (x_draw_image_relief): Use predefined macro instead of
13867 constant when the value of `tool_bar_button_relief' is negative.
13868
13869 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
13870
13871 2002-01-04 Richard M. Stallman <rms@gnu.org>
13872
13873 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
13874
13875 2002-01-03 Richard M. Stallman <rms@gnu.org>
13876
13877 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
13878 (Fkey_binding): Try the `keymap' property map first.
13879 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
13880 minor mode bindings.
13881
13882 2002-01-03 Kim F. Storm <storm@cua.dk>
13883
13884 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
13885
13886 2002-01-02 Richard M. Stallman <rms@gnu.org>
13887
13888 * keyboard.c (read_key_sequence): Handle the keymap property
13889 before minor mode maps.
13890
13891 * editfns.c (Fformat): Update thissize from field_width
13892 based on the actual width, in the string case.
13893
13894 2002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13895
13896 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
13897 when used as truth value to prevent gcc warnings.
13898
13899 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
13900 * w32proc.c: Include <config.h>.
13901
13902 2002-01-01 Andreas Schwab <schwab@suse.de>
13903
13904 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
13905 not EMACS_INT, to make them compatible with DEFVAR_INT.
13906 * lisp.h (max_specpdl_size): Adjust declaration.
13907
13908 2002-01-01 Richard M. Stallman <rms@gnu.org>
13909
13910 * print.c (print_object): Test print_escape_nonascii only for
13911 unibyte strings.
13912 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
13913 when outputting to a multibyte buffer.
13914
13915 2001-12-29 Richard M. Stallman <rms@gnu.org>
13916
13917 * print.c (print_object): In multibyte string, use hex escapes.
13918 Use octal only for unibyte strings.
13919 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
13920
13921 * lread.c (read_escape): New arg BYTEREP for reporting whether
13922 escape forces unibyte or multibyte.
13923 (read1): When reading a string, take note of that info.
13924
13925 2001-12-29 Ken Raeburn <raeburn@gnu.org>
13926
13927 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
13928 comparison to test lisp value returned by Fget.
13929
13930 2001-12-29 Richard M. Stallman <rms@gnu.org>
13931
13932 * lisp.h (max_specpdl_size): Add declaration.
13933
13934 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
13935
13936 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
13937 Handle modifier bits. Correct typo in error message.
13938
13939 2001-12-28 Richard M. Stallman <rms@gnu.org>
13940
13941 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
13942 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
13943 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
13944 Update calls to Fdefine_abbrev.
13945 (write_abbrev): Update for changed data format.
13946 Don't list "system" abbrevs.
13947 (Fexpand_abbrev): Update use count with new data format.
13948 (describe_abbrev): Update for changed data format.
13949 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
13950
13951 * config.in (HAVE_MBSINIT): Add #undef.
13952
13953 * strftime.c (mbsinit): Define as no-op if not available.
13954
13955 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
13956 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
13957
13958 * keymap.c (Flookup_key): Error message if key has wrong data type.
13959 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
13960 (exclude_key): New variable.
13961
13962 2001-12-28 Gerd Moellmann <gerd@gnu.org>
13963
13964 * xterm.c (x_setup_relief_colors): Don't compute an image's
13965 background color if it doesn't have a Pixmap.
13966
13967 * xterm.c (notice_overwritten_cursor): Don't depend on
13968 output_cursor and updated_area. Compare pixel coordinates with
13969 window's cursor pixel coordinates.
13970 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
13971 Call notice_overwritten_cursor with new arg list.
13972 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
13973 unconditionally.
13974
13975 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
13976 height of the cursor line to the amount to scroll.
13977
13978 2001-12-27 Richard M. Stallman <rms@gnu.org>
13979
13980 * intervals.c (set_point_both): The position after an invisible,
13981 intangible character is not an acceptable stopping point.
13982
13983 2001-12-27 Ken Raeburn <raeburn@gnu.org>
13984
13985 * window.c (enlarge_window): In new preserve_before code, convert
13986 CURBEG from lisp object to integer before doing arithmetic.
13987
13988 2001-12-27 Richard M. Stallman <rms@gnu.org>
13989
13990 * bytecode.c (Fbyte_code): Undo previous change.
13991
13992 2001-12-26 Kim F. Storm <storm@cua.dk>
13993
13994 * keyboard.c (record_char): Ignore duplicate help-echo events only
13995 separated by mouse-movement. When tracking mouse, only record
13996 first and last mouse-movement event in same window.
13997 Don't record mouse-movement events in keyboard macros.
13998
13999 2001-12-25 Richard M. Stallman <rms@gnu.org>
14000
14001 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
14002 (Fenlarge_window): New arg PRESERVE_BEFORE.
14003
14004 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
14005 instead of Fstring_as_unibyte.
14006
14007 2001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14008
14009 The following changes remove mocklisp support:
14010
14011 * mocklisp.h, mocklisp.c: Files removed.
14012
14013 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
14014 `Qmocklisp' and `Qmocklisp_arguments'.
14015 Remove prototype of syms_of_mocklisp.
14016
14017 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
14018
14019 * callint.c: Do not include mocklisp.h.
14020 (Fcall_interactively): Do not test for mocklisp case.
14021
14022 * eval.c: Remove variables `Qmocklisp_arguments',
14023 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
14024 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
14025 Do not test for mocklisp case.
14026 (Fwhile): Remove unused variable `tem'.
14027 (syms_of_eval): Remove variable `moclisp-arguments'.
14028
14029 * data.c (wrong_type_argument): Remove mocklisp case.
14030
14031 * doc.c (Fdocumentation): Remove mocklisp case.
14032
14033 * emacs.c (main): Do not call syms_of_mocklisp.
14034
14035 2001-12-21 Richard M. Stallman <rms@gnu.org>
14036
14037 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
14038 to the left or to the right of the pointer, put it against
14039 the left screen edge.
14040
14041 2001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
14042
14043 * Makefile.in (distclean): Remove .gdbinit if we are building
14044 outside the source tree.
14045
14046 2001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
14047
14048 * w32.c (emacs_root_dir): New function.
14049
14050 * msdos.c (emacs_root_dir): New function.
14051
14052 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
14053 of the current drive as the fallback for default_directory.
14054
14055 * dired.c (file_name_completion): Run the elements of
14056 completion-ignored-extensions through ENCODE_FILE.
14057
14058 * lisp.h (scmp): Remove prototype, since it's now a static
14059 function private to dired.c.
14060
14061 2001-12-18 Richard M. Stallman <rms@gnu.org>
14062
14063 * dired.c (scmp): Function moved from minibuf.c.
14064 Delete multibyte handling--used only on encoded strings.
14065
14066 * minibuf.c (scmp): Function moved to dired.c.
14067
14068 * fns.c (merge): Add QUIT call.
14069
14070 2001-12-18 Dave Love <fx@gnu.org>
14071
14072 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
14073 language/georgian.el.
14074
14075 2001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
14076
14077 * Makefile.in (lisp, shortlisp): Synchronize with changes to
14078 lisp/Makefile.in:DONTCOMPILE.
14079
14080 2001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14081
14082 * xdisp.c (window_box_height): Do not return negative values.
14083 From Gerd Moellmann <gerd@gnu.org>.
14084
14085 * keyboard.c (head_table): Add missing braces around initializer.
14086
14087 * term.c (keys): Likewise.
14088
14089 * xfns.c (x_frame_parms, visual_classes): Likewise.
14090
14091 2001-12-17 Sam Steingold <sds@gnu.org>
14092
14093 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
14094 patch (COMPOSING_P, not COMPOSING).
14095
14096 2001-12-17 Richard M. Stallman <rms@gnu.org>
14097
14098 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
14099
14100 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
14101 before calling decode_coding.
14102
14103 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
14104
14105 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
14106 instead of only for COMPOSITION_DISABLED.
14107
14108 2001-12-16 Richard M. Stallman <rms@gnu.org>
14109
14110 * alloc.c (pure_alloc): After overflow, allocate just a small block.
14111
14112 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
14113
14114 * buffer.h (struct buffer): New field `display_error_modiff'.
14115 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
14116
14117 * window.c (Frecenter): Clear display_error_modiff field.
14118
14119 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
14120 Call redisplay_window, but not if display_error_modiff field says no.
14121 (redisplay_window_error): New function.
14122 (displayed_buffer): New variable.
14123 (redisplay_internal, redisplay_windows): Call the new functions
14124 instead of redisplay_window directly.
14125
14126 2001-12-15 Richard M. Stallman <rms@gnu.org>
14127
14128 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
14129
14130 2001-12-14 Andrew Innes <andrewi@gnu.org>
14131
14132 * makefile.w32-in (EMACSLOADPATH): Define.
14133 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
14134 (bootstrap-temacs): Remove dependency on bootstrap-clean.
14135
14136 2001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
14137
14138 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
14139 parameter have a numeric value all the time.
14140
14141 * w32fns.c (x_report_frame_params): Likewise.
14142
14143 2001-12-12 Richard M. Stallman <rms@gnu.org>
14144
14145 * fileio.c (Fwrite_region): Doc fix.
14146
14147 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
14148 (redisplay_internal): Call clear_image_cache only for window terminals.
14149
14150 2001-12-12 Gerd Moellmann <gerd@gnu.org>
14151
14152 * xdisp.c (move_it_vertically_backward): Change heuristic
14153 for the case that we didn't move far enough initially.
14154
14155 * window.c (Frecenter): Simplify computation in the case of window
14156 system frames and ARG < 0; use window_box_height.
14157
14158 2001-12-11 Richard M. Stallman <rms@gnu.org>
14159
14160 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
14161 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
14162
14163 2001-12-11 Andrew Innes <andrewi@gnu.org>
14164
14165 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
14166 arg is negative.
14167
14168 2001-12-11 Richard M. Stallman <rms@gnu.org>
14169
14170 * m/hp800.h: Split the __hpux conditional into the parts
14171 that are right for GNU/Linux too and the parts that are not.
14172 Use the former if GNU_LINUX.
14173 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
14174
14175 * s/gnu-linux.h (GNU_LINUX): Defined.
14176
14177 2001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14178
14179 * macros.c, msdos.c, w16select.c: Change doc-string comments to
14180 `new style' [w/`doc:' keyword].
14181
14182 2001-12-10 Jason Rumney <jasonr@gnu.org>
14183
14184 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
14185 before using.
14186
14187 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14188
14189 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
14190 keyword].
14191
14192 2001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
14193
14194 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
14195
14196 * s/hpux10.h (srand48): Don't undefine.
14197
14198 2001-12-09 Jason Rumney <jasonr@gnu.org>
14199
14200 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
14201 Add comment to explain where the struct came from.
14202 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
14203 (add_menu_item): Process pop-up menus first to avoid memory leak.
14204 (add_menu_item, w32_menu_display_help): Use `help' field as
14205 Lisp_Object.
14206 (w32_free_submenu_strings): Only free owner-drawn strings.
14207
14208 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14209
14210 * COPYING: Moved back.
14211
14212 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
14213 Add parentheses around && within ||.
14214
14215 * indent.c (compute_motion): Likewise.
14216
14217 * intervals.c (merge_properties_sticky): Likewise.
14218
14219 * coding.c (setup_coding_system, shrink_encoding_region)
14220 (Fdecode_sjis_char): Likewise.
14221
14222 2001-12-07 Andreas Schwab <schwab@suse.de>
14223
14224 * xdisp.c (display_mode_element): Don't read past end of string if
14225 it ends with '%'.
14226
14227 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
14228 can hold.
14229
14230 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
14231 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
14232 type changed to Lisp_Object.
14233 (syms_of_data): DEFVAR_LISP them.
14234
14235 2001-12-07 Richard M. Stallman <rms@gnu.org>
14236
14237 * callproc.c (init_callproc): Set Vdata_directory based on the source
14238 location whenever Emacs was run uninstalled.
14239
14240 2001-12-06 Paul Eggert <eggert@twinsun.com>
14241
14242 * config.in (HAVE_WORKING_VFORK): New #undefs.
14243 * process.c (create_process):
14244 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
14245 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
14246 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
14247 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
14248 * m/intel386.h (HAVE_VFORK): Likewise.
14249 * m/mips-siemens.h (HAVE_VFORK): Likewise.
14250 * m/mips.h (HAVE_VFORK): Likewise.
14251 * s/freebsd.h (vfork): Remove #define.
14252 * s/lynxos.h (HAVE_VFORK): Remove #undef.
14253 * s/usg5-4-2.h: Fix comment about vfork.
14254
14255 2001-12-06 Richard M. Stallman <rms@gnu.org>
14256
14257 * s/hpux10.h (random): Add undef.
14258 (HAVE_RANDOM): Define it just once.
14259
14260 2001-12-06 Stefan Monnier <monnier@cs.yale.edu>
14261
14262 * eval.c: Undo last change: the standard syntax is not wanted.
14263
14264 2001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
14265
14266 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
14267 scroll bars of the frame before deleting the frame itself. If the
14268 frame has a widget, delete the frame with XtDestroyWidget, and do
14269 not call XDestroyWindow before that.
14270
14271 2001-12-06 Kim F. Storm <storm@cua.dk>
14272
14273 * xfns.c (x_report_frame_params): Return actual fringe widths.
14274
14275 * w32fns.c (x_report_frame_params): Return actual fringe widths.
14276
14277 2001-12-05 Andrew Innes <andrewi@gnu.org>
14278
14279 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
14280 excessively large.
14281
14282 * insdel.c (make_gap_larger): New function.
14283 (make_gap_smaller): New function.
14284 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
14285 Call make_gap_smaller if arg is negative.
14286
14287 2001-12-04 Stefan Monnier <monnier@cs.yale.edu>
14288
14289 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
14290 Pass a dummy argument when calling interrupt_signal.
14291 (parse_menu_item): Mark disabled items before checking for empty def.
14292 (read_char_minibuf_menu_prompt): Make safety more visible.
14293 (read_key_sequence): Add a `first_unbound' variable.
14294 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
14295 unbound prefix as soon as we can detect it.
14296
14297 * doc.c (Fsnarf_documentation): Add prototype.
14298 (get_doc_string): Handle negative arguments.
14299 (Fdocumentation): Use AREF and ASIZE.
14300 Move the calls to get_doc_string to a single place.
14301 Don't confuse an interactive-spec for a docstring reference.
14302 (Fdocumentation_property): Take advantage of the fact that
14303 get_doc_string now ignores the sign of the docstring position.
14304
14305 * eval.c: Use standard syntax for usage in docstrings.
14306
14307 2001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14308
14309 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
14310
14311 2001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14312
14313 * xterm.c (x_draw_image_relief): Use predefined macro instead of
14314 constant when the value of `tool_bar_button_relief' is negative.
14315
14316 2001-12-02 Richard M. Stallman <rms@gnu.org>
14317
14318 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
14319 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
14320
14321 * fileio.c (read_non_regular): Delete Fsignal call.
14322
14323 2001-12-01 Stefan Monnier <monnier@cs.yale.edu>
14324
14325 * lisp.h (run_hook_list_with_args): Undo last change.
14326
14327 2001-12-01 Gerd Moellmann <gerd@gnu.org>
14328
14329 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
14330
14331 2001-12-01 Jason Rumney <jasonr@gnu.org>
14332
14333 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
14334
14335 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
14336 [!WM_MOUSELEAVE]: Define.
14337
14338 * w32menu.c (current_popup_menu, get_menu_item_info):
14339 (set_menu_item_info): New vars.
14340 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
14341 (w32_menu_show): Set current_popup_menu.
14342 (add_menu_item): Allocate new strings for owner-drawn menu items
14343 and help strings.
14344 Use owner-draw for disabled menu items again.
14345 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
14346 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
14347
14348 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
14349 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
14350 <WM_EXITMENULOOP>: Free menu strings.
14351 <WM_MOUSELEAVE>: Stop tracking mouse.
14352 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
14353
14354 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
14355 and mouse face.
14356
14357 2001-12-01 Kim F. Storm <storm@cua.dk>
14358
14359 The following changes add left-fringe and right-fringe
14360 frame parameters to adjust fringe widths, or remove one or
14361 both fringes.
14362
14363 * frame.h (struct frame): Remove trunc_area_pixel_width and
14364 trunc_area_cols fields.
14365 (Qleft_fringe, Qright_fringe): Declare.
14366 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
14367
14368 * frame.c (Qleft_fringe, Qright_fringe): New vars.
14369 (syms_of_frame): Initialize them.
14370
14371 * window.c (coordinates_in_window): Handle separate left and right
14372 fringe widths.
14373
14374 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
14375 and fringe_cols fields.
14376 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
14377 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
14378 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
14379 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
14380 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
14381 (x_compute_fringe_widths): Add prototype.
14382
14383 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
14384 fill fringe evenly with small dashes.
14385 (x_draw_fringe_bitmap): Clear background if necessary. Align and
14386 clip the new ZV bitmap to avoid jitter between rows.
14387 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
14388 background. Don't draw fringe bitmaps if fringe width is zero.
14389 (x_compute_fringe_widths): New function.
14390 (x_new_font, x_set_window_size_1): Use it.
14391
14392 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
14393 (x_set_frame_parameters): Process `font' parameter before other
14394 parameters as fringe widths depend on it.
14395 (x_set_fringe_width): New function.
14396 (x_figure_window_size): Use x_compute_fringe_widths.
14397 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
14398 parameters.
14399
14400 * widget.c (set_frame_size): Use x_compute_fringe_widths.
14401 (EmacsFrameSetCharSize): Ditto.
14402
14403 * w32term.h: Merged changes from xterm.h.
14404 * w32term.c: Merged changes from xterm.c.
14405 * w32fns.c: Merged changes from xfns.c.
14406
14407 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14408
14409 * COPYING: Removed.
14410
14411 2001-11-29 Dave Love <fx@gnu.org>
14412
14413 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
14414 extra extra slot.
14415 (detect_coding_mask): Fix call of detect_coding_iso2022.
14416
14417 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14418
14419 * fileio.c (file-name-coding-system)
14420 (default-file-name-coding-system): Doc fix (links to referenced
14421 variables added).
14422
14423 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
14424
14425 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
14426 Add dummy uses of gcproN variables.
14427
14428 * category.c (describe_category, describe_category_1)
14429 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
14430 (syms_of_category): Don't defsubr Sdescribe_categories.
14431
14432 2001-11-28 Richard M. Stallman <rms@gnu.org>
14433
14434 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
14435
14436 * Makefile.in (lispdir): New variable, referring to build dir.
14437 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
14438
14439 2001-11-28 Andrew Innes <andrewi@gnu.org>
14440
14441 * w32menu.c (w32_menu_display_help): Actually add the new argument
14442 OWNER.
14443
14444 2001-11-28 Jason Rumney <jasonr@gnu.org>
14445
14446 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
14447 menu items. From David Ponce <dponce@wanadoo.fr>.
14448 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
14449 conditionally.
14450 (w32_menu_display_help): New argument OWNER. Rewritten to store a
14451 help event in the owner frame's keyboard buffer.
14452
14453 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
14454 (Fx_show_tip): Don't subtract last width from row width.
14455
14456 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
14457 (w32_read_socket): Use EQ to compare frames.
14458
14459 2001-11-28 Gerd Moellmann <gerd@gnu.org>
14460
14461 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
14462 OVERLAPS_P.
14463
14464 2001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14465
14466 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
14467 `gcpro3' and `gcpro4'.
14468
14469 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
14470
14471 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
14472
14473 * ccl.c: Use AREF and ASIZE.
14474
14475 2001-11-27 Stefan Monnier <monnier@cs.yale.edu>
14476
14477 * lisp.h (run_hook_list_with_args): Remove.
14478 (LIST_END_P): Fix call to wrong_type_argument.
14479 (make_fixnum_or_float): Use EMACS_INT rather than int.
14480
14481 2001-11-26 Stefan Monnier <monnier@cs.yale.edu>
14482
14483 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
14484 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
14485
14486 * eval.c: Use AREF and ASIZE.
14487 (Ffetch_bytecode): Add the file name to the error message.
14488
14489 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
14490 which match the end of the file-name.
14491 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
14492 is not a valid env var, but leave it as is instead.
14493
14494 * keymap.c (access_keymap): Handle t bindings like nil bindings.
14495 Make nil bindings in char-tables transparent.
14496 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
14497
14498 2001-11-26 Richard M. Stallman <rms@gnu.org>
14499
14500 * textprop.c (set_text_properties_1): Allow START, END in either order.
14501 Do nothing if range is empty.
14502
14503 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
14504
14505 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
14506 (clean): Not here.
14507
14508 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
14509
14510 * textprop.c (set_text_properties_1): Clearly mark that the
14511 interval should not be empty.
14512
14513 * intervals.c (graft_intervals_into_buffer):
14514 Don't call set_text_properties_1 on an empty interval.
14515
14516 2001-11-25 Richard M. Stallman <rms@gnu.org>
14517
14518 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
14519
14520 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
14521 don't lose the data in it.
14522
14523 2001-11-25 Juanma Barranquero <lektu@terra.es>
14524
14525 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
14526
14527 * buffer.c (Fkill_buffer): Likewise.
14528
14529 * print.c (temp_output_buffer_setup): Likewise.
14530
14531 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
14532
14533 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
14534
14535 2001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
14536
14537 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
14538 Niemitalo <kon@iki.fi>.
14539
14540 2001-11-25 Jason Rumney <jasonr@gnu.org>
14541
14542 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
14543
14544 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
14545 (Fx_show_tip): Block input during frame creation.
14546 (Fx_show_tip, Fx_hide_tip): Enable.
14547
14548 2001-11-24 Richard M. Stallman <rms@gnu.org>
14549
14550 * lread.c (Fload): Detect recursive load error for more than 3
14551 nestings of the same file.
14552 (Vrecursive_load_depth_limit): Variable deleted.
14553 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
14554
14555 2001-11-24 Jason Rumney <jasonr@gnu.org>
14556
14557 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
14558 mouse position if either left or top is not specified.
14559
14560 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
14561 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
14562 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
14563 (my_create_tip_window): Assign tip_window.
14564 (x_create_tip_frame): Use same defaults as X.
14565 (compute_tip_xy): Remove unused variable. Use full screen width.
14566 (Fx_show_tip): Do not double height. Call ShowWindow directly.
14567
14568 * w32term.c (x_after_update_window_line): Doc fix.
14569 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
14570 frames.
14571 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
14572
14573 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
14574 for all Windowed systems.
14575
14576 2001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
14577
14578 * msdos.c (IT_clear_screen): If the frame's faces are not yet
14579 realized, use the initial screen colors to clear the screen.
14580
14581 2001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14582
14583 * textprop.c (Fset_text_properties): Remove unused variables
14584 `unchanged', `prev_changed', `s' and `len'.
14585
14586 * search.c (Freplace_match): Remove unused variable `inslen'.
14587
14588 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
14589
14590 2001-11-22 Jason Rumney <jasonr@gnu.org>
14591
14592 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
14593 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
14594 (my_create_tip_window): New function.
14595 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
14596 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
14597
14598 2001-11-20 Jason Rumney <jasonr@gnu.org>
14599
14600 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
14601 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
14602
14603 * w32fns.c (Vw32_system_coding_system): Remove.
14604 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
14605
14606 2001-11-19 Stefan Monnier <monnier@cs.yale.edu>
14607
14608 * fileio.c (Fwrite_region): Move choose_write_coding_system to
14609 after build_annotations.
14610
14611 * syntax.c (describe_syntax): Add dummy arg.
14612 (describe_syntax_1): Update call to describe_vector.
14613
14614 * category.c (describe_category): Add dummy arg.
14615 (describe_category_1): Update call to describe_vector.
14616
14617 * keymap.c (Fdescribe_vector): Add `describer' parameter.
14618 (describe_command, describe_translation): Add dummy second param.
14619 (describe_map): Call elt_describer with two arguments.
14620 (describe_vector_princ): Add `fun' parameter.
14621 Call it instead of the hardcoded `princ'.
14622 (describe_vector): Add arg `args'.
14623 Pass it as a new second argument to elt_describer.
14624
14625 * keymap.h (describe_vector): Update prototype.
14626
14627 * frame.c: Don't include keymap.h any more.
14628 (keys_of_frame): Remove.
14629
14630 * lisp.h (keys_of_frame): Remove declaration.
14631
14632 * emacs.c (main): Don't call `keys_of_frame' any more.
14633
14634 2001-11-14 Andreas Schwab <schwab@suse.de>
14635
14636 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
14637 if defined, 0 otherwise.
14638 (MAP_FAILED): Define if not defined and use it to test mmap failure.
14639 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
14640
14641 2001-11-19 Richard M. Stallman <rms@gnu.org>
14642
14643 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
14644
14645 2001-11-18 Jason Rumney <jasonr@gnu.org>
14646
14647 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
14648 (x_draw_bar_cursor): If the background color of the glyph under
14649 the cursor equals the frame's cursor color, use the glyph's
14650 foreground color for drawing the bar cursor.
14651 (x_after_update_window_line): Clear internal border in different
14652 circumstances.
14653 (w32_set_vertical_scroll_bar): Check for width and height > 0.
14654 (w32_draw_relief_rect): Correct relief by 1 pixel.
14655 (x_set_glyph_string_background_width):
14656 Set extends_to_end_of_line_p if the row's fill_line_p is set and
14657 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
14658 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
14659 if cursor_in_non_selected_windows is false.
14660 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
14661 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
14662 Notice if cursor gets overwritten.
14663 (notice_overwritten_cursor): Renamed from
14664 note_overwritten_text_cursor. Rewritten to take glyph widths
14665 into account, and to take X positions as parameters.
14666 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
14667 around call to x_draw_glyphs.
14668 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
14669 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
14670 color to use for image glyph reliefs.
14671 (x_draw_image_relief): Accept zero tool_bar_button_relief.
14672 (glyph_rect): Remove unused variable `area'.
14673
14674 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
14675 some items.
14676 (x_set_internal_border_width): Set frame garbaged when window
14677 doesn't exist yet.
14678 (Fx_create_frame): Accept zero tool_bar_button_relief.
14679 (x_clear_image_1, four_corners_best, image_background)
14680 (image_background_transparent): New functions.
14681 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
14682 (gs_format): Add `:background' entry.
14683 (lookup_image): Set IMG's background color if specified.
14684 (pbm_load, xbm_load_image, png_load): Set IMG's background field
14685 when appropriate.
14686 (x_clear_image_1): Reset `background_valid' and
14687 `background_transparent_valid' fields.
14688 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
14689 calculating it here. Set IMG's background_transparent field.
14690 (enum xpm_keyword_index): Add XPM_BACKGROUND.
14691 (enum png_keyword_index): Add PNG_BACKGROUND.
14692 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
14693 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
14694 (enum gif_keyword_index): Add GIF_BACKGROUND.
14695 (enum gs_keyword_index): Add GS_BACKGROUND.
14696 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
14697 Pre-calculate image background color where necessary.
14698 (x_create_x_image_and_pixmap, xbm_load, gs_load):
14699 Use display info's n_cbits entry for screen depth.
14700 (Fx_show_tip): Remove unused variables `buffer', `top',
14701 `left', `max_width' and `max_height'.
14702
14703 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
14704
14705 2001-11-18 Gerd Moellmann <gerd@gnu.org>
14706
14707 * puresize.h (BASE_PURESIZE): Increase to 750000.
14708
14709 2001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14710
14711 * frame.c (Fframe_live_p): Doc fix.
14712
14713 2001-11-18 Richard M. Stallman <rms@gnu.org>
14714
14715 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
14716 (message_dolog_marker3): New static variables hold three markers.
14717 (syms_of_xdisp): Initialize and staticpro them.
14718 (message_dolog): Use message_dolog_marker1..3 instead of
14719 allocating markers each time. Unchain them when done.
14720
14721 2001-11-17 Richard M. Stallman <rms@gnu.org>
14722
14723 * doc.c (Fsnarf_documentation): Doc fix.
14724
14725 2001-11-17 Andreas Schwab <schwab@suse.de>
14726
14727 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
14728
14729 2001-11-17 Richard M. Stallman <rms@gnu.org>
14730
14731 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
14732
14733 2001-11-17 Jason Rumney <jasonr@gnu.org>
14734
14735 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
14736
14737 2001-11-17 Gerd Moellmann <gerd@gnu.org>
14738
14739 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
14740 with invalid position.
14741
14742 2001-11-16 Richard M. Stallman <rms@gnu.org>
14743
14744 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
14745
14746 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
14747 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
14748 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
14749
14750 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
14751
14752 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
14753
14754 * fileio.c (build_annotations): Split off the tail.
14755 (build_annotations_2): New fun. Extracted from build_annotations.
14756 (Fwrite_region): Split the call to build_annotations into two
14757 calls to build_annotations and build_annotations_2.
14758
14759 2001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14760
14761 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
14762 clear_waiting_for_input with argument.
14763
14764 * xterm.h (x_update_cursor): Remove duplicated prototype.
14765
14766 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
14767
14768 * xterm.c (waiting_for_input): Remove unnecessary declaration.
14769
14770 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
14771
14772 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
14773
14774 * fileio.c (choose_write_coding_system): New fun, extracted
14775 from Fwrite_region.
14776 (Fwrite_region): Use it.
14777
14778 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
14779 (funcall_lambda, run_hook_with_args): Make static and add prototype.
14780 (ml_apply, find_handler_clause): Add prototype.
14781
14782 2001-11-16 Eli Zaretskii <eliz@gnu.org>
14783
14784 * config.in: Add #undef HAVE_COFF_H.
14785
14786 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
14787 Required for ISC 4.1.
14788
14789 2001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
14790
14791 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
14792 Andrew Wiseman <a.wiseman@btclick.com>.
14793
14794 2001-11-16 Kim F. Storm <storm@cua.dk>
14795
14796 The following changes are made to clean up the various internal
14797 references to the fringes to actually use the term `fringe' for
14798 them. Previously, they were called `flags areas', `bitmap areas',
14799 `left/right side of windows', or implicitly as `flags' or
14800 `bitmaps':
14801
14802 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
14803 Comments fixed. Use renamed symbols.
14804
14805 * dispnew.c: Comment fix. Use renamed symbols.
14806
14807 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
14808 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
14809 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
14810
14811 * msdos.c: Comment fix.
14812
14813 * w32fns.c: Use renamed symbols.
14814
14815 * w32term.c: Comment fixes. Use renamed symbols.
14816 (fringe_bitmap_type): Renamed from bitmap_type.
14817 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
14818 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
14819 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
14820
14821 * w32term.h: Comment fixes. Use renamed symbols.
14822 (fringes_extra): Renamed from flags_areas_extra.
14823 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
14824 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
14825 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
14826 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
14827 (FRAME_X_LEFT_FRINGE_WIDTH):
14828 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
14829 (FRAME_X_RIGHT_FRINGE_WIDTH):
14830 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
14831
14832 * widget.c: Use renamed symbols.
14833
14834 * window.c: Comment fixes. Use renamed symbols.
14835 (coordinates-in-window-p): Doc fix.
14836
14837 * xdisp.c: Comment fixes. Use renamed symbols.
14838
14839 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
14840
14841 * xfns.c: Use renamed symbols.
14842
14843 * xterm.c: Comment fixes. Use renamed symbols.
14844 (fringe_bitmap_type): Renamed from bitmap_type.
14845 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
14846 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
14847 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
14848
14849 * xterm.h: Comment fixes. Use renamed symbols.
14850 (fringes_extra): Renamed from flags_areas_extra.
14851 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
14852 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
14853 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
14854 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
14855 (FRAME_X_LEFT_FRINGE_WIDTH):
14856 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
14857 (FRAME_X_RIGHT_FRINGE_WIDTH):
14858 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
14859
14860 2001-11-15 Jason Rumney <jasonr@gnu.org>
14861
14862 * w32menu.c (add-menu-item): Make help_echo and radio buttons
14863 work for most menu items. From David Ponce
14864 <david.ponce@wanadoo.fr>.
14865
14866 2001-11-15 Gerd Moellmann <gerd@gnu.org>
14867
14868 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
14869 Some x_set_* function expect to be called even if old and new
14870 value are equal.
14871
14872 * xdisp.c (build_desired_tool_bar_string): Accept zero
14873 tool_bar_button_relief.
14874
14875 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
14876
14877 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
14878
14879 * xterm.c (x_draw_bar_cursor): If the background color of the
14880 glyph under the cursor equals the frame's cursor color, use
14881 the glyph's foreground color for drawing the bar cursor.
14882
14883 * dispnew.c (direct_output_forward_char): Fix character/byte
14884 position comparison.
14885
14886 2001-11-15 Miles Bader <miles@gnu.org>
14887
14888 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
14889 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
14890 Update arguments to find_field.
14891 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
14892 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
14893 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
14894 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
14895
14896 2001-11-14 Richard M. Stallman <rms@gnu.org>
14897
14898 * editfns.c (Fpropertize): Allow call with 1 arg.
14899
14900 * dispextern.h (image_background, image_background_transparent):
14901 Conditionalize on HAVE_X_WINDOWS.
14902
14903 2001-11-13 Richard M. Stallman <rms@gnu.org>
14904
14905 * print.c (Fprin1_to_string): Doc fix.
14906
14907 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
14908
14909 * floatfns.c (Fceiling, Ffloor): Doc fixes.
14910
14911 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
14912
14913 * fileio.c (Ffile_accessible_directory_p): Doc fix.
14914
14915 * eval.c (syms_of_eval): Doc fix.
14916
14917 * coding.c (syms_of_coding): Doc fix.
14918
14919 * doc.c (Fsnarf_documentation): Doc fix.
14920
14921 * dispnew.c (syms_of_display): Doc fix.
14922
14923 * category.c (Fget_unused_category): Doc fix.
14924
14925 * buffer.c (syms_of_buffer): Doc fixes.
14926
14927 2001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
14928
14929 * print.c (prin1, print): Doc fix.
14930
14931 2001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14932
14933 * fontset.h: Remove declarations of variables
14934 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
14935
14936 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
14937 `Vclip_large_size_font'.
14938
14939 2001-11-13 Jason Rumney <jasonr@gnu.org>
14940
14941 * w32fns.c: Doc fix.
14942
14943 2001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14944
14945 * xfaces.c (Fface_attributes_as_vector): Doc fix.
14946
14947 * fns.c: Doc fix.
14948
14949 * emacs.c: Doc fix.
14950
14951 * coding.c: Doc fix.
14952
14953 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
14954 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
14955 `new style' [w/`doc:' keyword].
14956
14957 2001-11-12 Richard M. Stallman <rms@gnu.org>
14958
14959 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
14960 LeaveNotify events. Only FocusIn and FocusOut do that now.
14961 (x_display_and_set_cursor): Do display hollow cursors in active
14962 minibuffer windows when they are not selected.
14963
14964 2001-11-12 Jason Rumney <jasonr@gnu.org>
14965
14966 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
14967 * w32term.c: Change doc-string comments to `new style'
14968 [w/`doc:' keyword]. Doc fixes.
14969
14970 * w32fns.c: Don't define max.
14971 (Fx_open_connection): Only execute once.
14972
14973 2001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14974
14975 * ccl.c: Change macros to use do-while block instead of if-else.
14976 Use braces to follow GNU Coding Standards.
14977
14978 2001-11-11 Richard M. Stallman <rms@gnu.org>
14979
14980 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
14981
14982 * lread.c (read_escape): Use end_of_file_error for reporting eof.
14983
14984 * insdel.c (replace_range): Use adjust_markers_for_replace
14985 instead of adjust_markers_for_delete and adjust_markers_for_insert.
14986
14987 * intervals.h: Declare set_text_properties and set_text_properties_1.
14988
14989 * textprop.c (set_text_properties_1): New subroutine
14990 broken out of set_text_properties.
14991 (set_text_properties): Use set_text_properties_1.
14992
14993 * intervals.c (graft_intervals_into_buffer):
14994 Use set_text_properties_1 to clear out properties.
14995
14996 * search.c (Freplace_match): Use replace_range to insert
14997 and delete. Don't request property inheritance from
14998 surrounding text.
14999
15000 2001-11-10 Jason Rumney <jasonr@gnu.org>
15001
15002 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
15003 vertical fonts. Allow them if face name is explicitly specified.
15004 Do not give up if we find a font that cannot be converted to an xlfd.
15005
15006 2001-11-10 Gerd Moellmann <gerd@gnu.org>
15007
15008 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
15009 instead of malloc/free.
15010
15011 2001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15012
15013 * xfaces.c (merge_face_vectors): Use braces to follow GNU
15014 Coding Standards.
15015 (Finternal_set_lisp_face_attribute): Likewise.
15016
15017 * buffer.c (Fbury_buffer): Likewise.
15018
15019 * indent.c (current_column_1): Remove unused variable `prev_col'.
15020
15021 * coding.c (encode_coding): Use precomputed value of `src'.
15022 (encode_coding): Remove unused variable `src_end'.
15023 (code_convert_region): Remove unused variables `count'.
15024
15025 2001-11-07 Jason Rumney <jasonr@gnu.org>
15026
15027 * w32term.c (x_display_and_set_cursor): Do not move system caret
15028 if cursor_glyph is NULL.
15029
15030 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15031
15032 * keymap.c (access_keymap): Fix compilation error.
15033
15034 2001-11-07 Miles Bader <miles@gnu.org>
15035
15036 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
15037
15038 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15039
15040 * intervals.c (graft_intervals_into_buffer):
15041 Remove #ifdef'd-out code.
15042 (graft_intervals_into_buffer): Remove unused variable `middle'.
15043
15044 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
15045 code (eval-current-buffer).
15046 Change doc-string comments to `new style' [w/`doc:' keyword].
15047
15048 2001-11-06 Richard M. Stallman <rms@gnu.org>
15049
15050 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
15051
15052 2001-11-06 Stefan Monnier <monnier@cs.yale.edu>
15053
15054 * lread.c (read1): Fix behavior with nested backquoting.
15055
15056 * keyboard.c (make_lispy_event): Check integerness and fix
15057 Lisp_Object/int mixup.
15058
15059 2001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15060
15061 * fns.c (copy_hash_table): Remove unused variable `v'.
15062
15063 * fontset.c (fontset_font_pattern): Remove unused variable
15064 `family_registry'.
15065
15066 * indent.c (current_column_1): Remove unused variable `prev_col'.
15067
15068 2001-11-05 Richard M. Stallman <rms@gnu.org>
15069
15070 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
15071
15072 * buffer.c (Fkill_buffer): Don't delete auto save file
15073 if buffer is modified.
15074
15075 2001-11-05 Andrew Innes <andrewi@gnu.org>
15076
15077 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
15078 CHECK_NUMBER_CDR.
15079
15080 2001-11-05 Richard M. Stallman <rms@gnu.org>
15081
15082 * unexelf.c (unexec): Minor changes; clean up comments.
15083
15084 2001-11-05 Sam Steingold <sds@gnu.org>
15085
15086 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
15087
15088 2001-11-05 Andreas Schwab <schwab@suse.de>
15089
15090 * sound.c (sound_perror): Save errno from being clobbered.
15091
15092 2001-11-05 Dale Hagglund <rdh@yottayotta.com>
15093
15094 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
15095 the program image directly.
15096
15097 2001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15098
15099 * buffer.h (Fbuffer_local_value): Add prototype.
15100
15101 2001-11-04 Richard M. Stallman <rms@gnu.org>
15102
15103 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
15104 and CHECK_BUFFER.
15105
15106 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
15107 (record_char): Likewise.
15108
15109 * keyboard.c (make_lispy_event): Don't insist a drag event must
15110 move to a different buffer position. Instead, check for moving at
15111 least double_click_fuzz.
15112
15113 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
15114
15115 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
15116
15117 * indent.c (current_column_1, Fmove_to_column): Separate the code
15118 for display-table glyphs from the code for buffer text, to fix
15119 bugs in the former.
15120
15121 2001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
15122
15123 * buffer.c (Fbuffer_local_value): New function.
15124 (syms_of_buffer): Defsubr it.
15125
15126 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
15127 value of `cursor-in-non-selected-windows'.
15128
15129 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
15130 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
15131 (syms_of_xdisp): Initialize it.
15132
15133 2001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15134
15135 * xfns.c (Fx_create_frame): Doc fix.
15136
15137 * coding.c: Change doc-string comments to `new style' [w/`doc:'
15138 keyword].
15139
15140 * eval.c (top_level_value, top_level_set): Remove commented and
15141 #ifdef'd-out code.
15142 (Fdefvar): Fix usage in doc-string.
15143
15144 2001-11-03 Richard M. Stallman <rms@gnu.org>
15145
15146 * xfns.c: Include unistd.h, if it exists.
15147
15148 * editfns.c: Move the include of ctype.h after unistd.h.
15149
15150 * gmalloc.c: Test BROKEN_PROTOTYPES.
15151
15152 2001-11-03 Ken Raeburn <raeburn@gnu.org>
15153
15154 * lisp.h (CHECK_STRING_CAR): New macro.
15155 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
15156 treating XCAR and XCDR as lvalues.
15157 (openp): Use CHECK_STRING_CAR.
15158 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
15159
15160 2001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
15161
15162 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
15163 (SIGMASKTYPE): Define.
15164
15165 * syssignal.h (sigunblock): Don't define if already defined.
15166
15167 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15168
15169 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
15170 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
15171 Fix typos in comments.
15172
15173 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
15174 and #ifdef'd-out code.
15175 Fix and reindent comments.
15176
15177 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
15178
15179 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
15180 argument `i' in macros.
15181
15182 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
15183 `i' in macros.
15184
15185 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
15186 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
15187 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
15188 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
15189 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
15190 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
15191 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
15192 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
15193 in macros.
15194
15195 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
15196 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
15197 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
15198 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
15199 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
15200 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
15201 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
15202 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
15203 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
15204 (remove unused second argument).
15205
15206 2001-11-02 Stefan Monnier <monnier@cs.yale.edu>
15207
15208 * syntax.c (describe_syntax): New wrapper.
15209 (Finternal_describe_syntax_value): Rename from describe_syntax.
15210 Don't insert space at front and \n at the end.
15211 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
15212
15213 * regex.c (re_wctype): Try to fix some warnings.
15214 (regcomp, regexec): Don't forget the __restrict.
15215
15216 2001-11-02 Richard M. Stallman <rms@gnu.org>
15217
15218 * textprop.c (Fget_char_property): Doc fix.
15219
15220 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15221
15222 * process.c (Fstart_process): Add usage to doc-string.
15223
15224 * data.c (Fsetq_default): Ditto.
15225
15226 * callint.c (Finteractive): Ditto.
15227
15228 2001-11-01 Stefan Monnier <monnier@cs.yale.edu>
15229
15230 * macros.c: Don't include keymap.h any more.
15231
15232 2001-11-01 Richard M. Stallman <rms@gnu.org>
15233
15234 * data.c (Fmake_local_variable): Doc fix.
15235
15236 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
15237 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
15238
15239 * keymap.c (Fdescribe_buffer_bindings): Print character property
15240 bindings along with or instead of the buffer local map.
15241 Make the overriding maps override what they should.
15242
15243 2001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15244
15245 * window.c (grow_mini_window): Fix typo in comment.
15246
15247 2001-11-01 Gerd Moellmann <gerd@gnu.org>
15248
15249 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
15250 (XTset_vertical_scroll_bar): Likewise.
15251
15252 * xfns.c (x_build_heuristic_mask): Use four_corners_best
15253 instead of IMAGE_BACKGROUND.
15254
15255 * xfns.c (four_corners_best): Reindent.
15256
15257 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
15258 Handle :box so that it is possible to specify sexprs.
15259
15260 2001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
15261
15262 * s/hpux11.h: New file.
15263
15264 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15265
15266 * emacs.c (USAGE1): Show command line option --no-window-system
15267 instead of --no-windows in usage.
15268 (standard_args): Rename --no-windows to --no-window-system.
15269 (bug_reporting_address): Follow Emacs coding conventions.
15270
15271 * eval.c (Fcommandp): Doc fix.
15272 Change doc-string comments to `new style' [w/`doc:' keyword].
15273
15274 * frame.c (Fframe_live_p): Doc fix.
15275
15276 * buffer.c (selective-display-ellipses): Doc fix.
15277
15278 2001-10-31 Gerd Moellmann <gerd@gnu.org>
15279
15280 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
15281
15282 * xfaces.c (realize_x_face): If C is not a single-byte character,
15283 set the face's colors_copied_bitwise_p instead of the defaulted_p
15284 members which have a different meaning.
15285 (free_face_colors): Do nothing for a face whose colors have been
15286 copied bitwise.
15287
15288 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
15289
15290 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15291
15292 * marker.c, mocklisp.c: Change doc-string comments to `new style'
15293 [w/`doc:' keyword].
15294
15295 2001-10-31 Gerd Moellmann <gerd@gnu.org>
15296
15297 * fns.c (require_unwind): Return Lisp_Object.
15298
15299 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15300
15301 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
15302 (last-input-char): Revert doc-string to be the same as the
15303 doc-string of `last-input-event'.
15304
15305 * xdisp.c: Fix typos in comments.
15306
15307 2001-10-31 Gerd Moellmann <gerd@gnu.org>
15308
15309 * window.c (grow_mini_window): Handle case that the root
15310 window is already smaller than the nominal mininum height.
15311
15312 2001-10-30 Stefan Monnier <monnier@cs.yale.edu>
15313
15314 * emacs.c (main): Don't call keys_of_macros any more.
15315
15316 * lisp.h (keys_of_macros): Remove.
15317
15318 * macros.c (keys_of_macros): Remove.
15319
15320 * xfaces.c (Fface_attribute_relative_p): Declare args.
15321
15322 2001-10-30 Jason Rumney <jasonr@gnu.org>
15323
15324 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
15325 (enum_font_cb2): Ignore fonts with vertical orientation.
15326
15327 2001-10-30 Richard M. Stallman <rms@gnu.org>
15328
15329 * keyboard.c (Finput_pending_p): Doc fix.
15330
15331 2001-10-30 Gerd Moellmann <gerd@gnu.org>
15332
15333 * xterm.c (x_after_update_window_line): Don't run the code
15334 clearing in borders for rows whose visible height is 0.
15335
15336 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
15337 resized_p flag is set. If not set, use the much less flickering
15338 method previously used.
15339
15340 * dispnew.c (change_frame_size_1): Set frame's resized_p.
15341
15342 * frame.h (struct frame) <resized_p>: New member.
15343
15344 * lread.c (to_multibyte): Ensure read_buffer is at least twice
15345 as large as the number of bytes to convert.
15346
15347 * lread.c (to_multibyte): New function.
15348 (read1): Use it.
15349
15350 2001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
15351
15352 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
15353
15354 2001-10-30 Gerd Moellmann <gerd@gnu.org>
15355
15356 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
15357 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
15358 if the row's fill_line_p is set and drawing the last glyph with
15359 DRAW_IMAGE_{RAISED,SUNKEN}.
15360
15361 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
15362
15363 2001-10-29 Stefan Monnier <monnier@cs.yale.edu>
15364
15365 * xmenu.c: Include coding.h and charset.h.
15366 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
15367 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
15368 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
15369 Explicitly set wv->help. Use `TRUE' rather than `True'.
15370 (menu_help_callback): Use empty_string.
15371
15372 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
15373 (Fx_popup_dialog): Explicitly init f.
15374 (w32_menu_display_help): Use empty_string.
15375
15376 2001-10-29 Richard M. Stallman <rms@gnu.org>
15377
15378 * fns.c (Frequire): Detect recursive try to require the same
15379 feature 3 or more levels deep, and get error.
15380 (require_unwind): New subroutine.
15381 (require_nesting_list): New variable.
15382 (syms_of_fns): Init and staticpro it.
15383
15384 * print.c (print_object): Clarify indication of insertion type.
15385
15386 2001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
15387
15388 * coding.c (syms_of_coding): Document that locale-coding-system is
15389 used for decoding input on X.
15390
15391 * window.c (Fscroll_left, Fscroll_right): Doc fix.
15392
15393 2001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15394
15395 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
15396 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
15397
15398 2001-10-29 Gerd Moellmann <gerd@gnu.org>
15399
15400 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
15401 use NO_CURSOR if cursor_in_non_selected_windows is false.
15402
15403 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
15404 the slant attribute if FRAME is t.
15405
15406 * xfns.c (x_set_internal_border_width): Set frame garbaged
15407 when X window doesn't exist yet.
15408
15409 * xterm.c (x_after_update_window_line): Clear internal border
15410 in different circumstances.
15411
15412 * xterm.c (XTread_socket) <KeyPress>: Don't use
15413 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
15414 <handa@etl.go.jp>.
15415
15416 2001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
15417
15418 * m/ibms390.h: New file. From Adam Thornton
15419 <athornton@sinenomine.net>.
15420
15421 2001-10-28 Gerd Moellmann <gerd@gnu.org>
15422
15423 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
15424
15425 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
15426 a loop counter.
15427
15428 2001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15429
15430 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
15431
15432 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
15433 keyword].
15434 Fix typos in comments.
15435
15436 * emacs.c (bug_reporting_address): New function.
15437 Use it when displaying usage message.
15438
15439 * minibuf.c (read_minibuf): Remove unused external declaration of
15440 variable `Qread_only'.
15441
15442 * keymap.c (access_keymap): Remove unused variable `charset'.
15443
15444 2001-10-28 Miles Bader <miles@gnu.org>
15445
15446 * xfaces.c (merge_face_heights): Handle TO being relative as well.
15447 Remove #ifdef'd-out code.
15448 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
15449 (syms_of_xfaces): Initialize them.
15450
15451 2001-10-27 Jason Rumney <jasonr@gnu.org>
15452
15453 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
15454 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
15455 position using the system caret.
15456
15457 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
15458 (w32_system_caret_height, w32_system_caret_x)
15459 (w32_system_caret_y): New variables for tracking system caret.
15460 (w32_initialize): Initialize them.
15461 (x_display_and_set_cursor): Make system caret follow the active cursor.
15462
15463 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
15464 New messages types.
15465
15466 * w32term.c (note_mouse_highlight): Clear old help_echo.
15467
15468 2001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15469
15470 * xterm.c: Fix typo in a comment.
15471
15472 * emacs.c: Fix typos in comments.
15473 Remove unnecessary spaces.
15474 Change doc-string comments to `new style' [w/`doc:' keyword].
15475 (USAGE2): Fix typos in usage string.
15476
15477 * xterm.c: Fix typo in a comment.
15478
15479 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
15480 emacs.c.
15481
15482 2001-10-27 Gerd Moellmann <gerd@gnu.org>
15483
15484 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
15485 instead of 1/2 line_height in the heuristic for skipping
15486 farther backward when target_y was not reached.
15487
15488 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
15489 Display errno only if non-zero.
15490 (sound_warning): New function.
15491 (vox_configure): Don't treat failing to set sample rate as error.
15492 (various places): Improve error messages.
15493
15494 2001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
15495
15496 * fileio.c (Faccess_file): Run the argument filename through
15497 Fexpand_file_name, before using it.
15498
15499 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
15500 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
15501
15502 2001-10-26 Gerd Moellmann <gerd@gnu.org>
15503
15504 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
15505
15506 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
15507 Fix clearing in the case of scroll bars on the right.
15508
15509 2001-10-26 Juanma Barranquero <lektu@terra.es>
15510
15511 * w32gui.h (XImage): Add a dummy typedef.
15512
15513 2001-10-26 Gerd Moellmann <gerd@gnu.org>
15514
15515 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
15516
15517 2001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
15518
15519 * frame.c (Fframe_parameter): Fix last change.
15520
15521 * fileio.c: Revert last change (which removed old commented-out
15522 version of expand-file-name). Add a comment that explains why
15523 this old version should not be removed.
15524
15525 2001-10-25 Gerd Moellmann <gerd@gnu.org>
15526
15527 * frame.c (Fframe_parameter): Fix a bug whereby some
15528 ``artificial'' frame parameters, like `minibuffer' were not
15529 obtained by calling Fframe_parameters.
15530
15531 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
15532 cursor differently.
15533
15534 * xdisp.c (move_it_vertically_backward): Compute line height
15535 differently. Add heuristic to try to be more compatible to 20.x.
15536
15537 2001-10-25 Stefan Monnier <monnier@cs.yale.edu>
15538
15539 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
15540
15541 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
15542 boolean.
15543
15544 2001-10-25 Miles Bader <miles@gnu.org>
15545
15546 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
15547 BG is a pointer to a structure, not a structure.
15548 (gif_format, png_format): Add missing commas.
15549
15550 2001-10-24 Richard M. Stallman <rms@gnu.org>
15551
15552 * xfaces.c (Fface_attributes_as_vector): New function.
15553 (syms_of_xfaces): Defsubr it.
15554
15555 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15556
15557 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
15558 variable `area'.
15559
15560 2001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15561
15562 * search.c (scan_newline): Remove unused variable `selective_display'.
15563
15564 2001-10-25 Miles Bader <miles@gnu.org>
15565
15566 * dispextern.h (struct image): Add `background',
15567 `background_valid', and `background_transparent' fields.
15568 (image_background, image_background_transparent): New declarations.
15569 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
15570 * xfns.c (image_background, image_background_transparent)
15571 (four_corners_best): New functions.
15572 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
15573 (gs_format): Add `:background' entry.
15574 (lookup_image): Set IMG's background color if specified.
15575 (pbm_load, xbm_load_image, png_load): Set IMG's background field
15576 when appropriate.
15577 (x_clear_image_1): Reset `background_valid' and
15578 `background_transparent_valid' fields.
15579 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
15580 calculating it here. Set IMG's background_transparent field.
15581 (enum xpm_keyword_index): Add XPM_BACKGROUND.
15582 (enum png_keyword_index): Add PNG_BACKGROUND.
15583 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
15584 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
15585 (enum gif_keyword_index): Add GIF_BACKGROUND.
15586 (enum gs_keyword_index): Add GS_BACKGROUND.
15587 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
15588 Pre-calculate image background color where necessary.
15589 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
15590 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
15591 color to use for image glyph reliefs.
15592
15593 2001-10-24 Gerd Moellmann <gerd@gnu.org>
15594
15595 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
15596 in full-width rows.
15597
15598 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
15599 Fix clearing of area not covered by scroll bar.
15600
15601 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15602
15603 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
15604 and `real_start'.
15605 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
15606 (glyph_rect): Remove unused variable `area'.
15607
15608 2001-10-24 Gerd Moellmann <gerd@gnu.org>
15609
15610 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
15611
15612 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
15613 (row_containing_pos): Take additional argument DY.
15614 Treat rows ending in middle of char differently.
15615 (display_line): Handle tabs on window systems differently.
15616
15617 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
15618 with additional argument.
15619
15620 * dispextern.h (row_containing_pos): Adjust prototype.
15621
15622 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
15623 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
15624 (try_window_id, try_window_reusing_current_matrix)
15625 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
15626 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
15627
15628 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15629
15630 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
15631 gnuemacs).
15632 (HAVE_BOXES): Fix typo in comment.
15633 (push_menu_pane): Fix typo in comment.
15634
15635 * xdisp.c: (display_prop_string_p): Remove unused local declaration
15636 of `Qwhen'.
15637 (single_display_prop_string_p): Remove unused local declarations
15638 of `Qwhen' and `Qmargin'.
15639 (string_buffer_position): Remove unused variable `around'.
15640 (store_frame_title): Remove unused variable `width'.
15641
15642 * window.c: Don't define max.
15643 (coordinates_in_window): Remove unused variable `uy'.
15644
15645 * widget.c: Don't define max.
15646
15647 * process.c: Don't define max.
15648 (create_process): Remove unused variable `buffer'.
15649
15650 2001-10-23 Gerd Moellmann <gerd@gnu.org>
15651
15652 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
15653
15654 2001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
15655
15656 * xfaces.c (Finternal_set_lisp_face_attribute)
15657 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
15658 frame is on a windowed display.
15659
15660 2001-10-23 Gerd Moellmann <gerd@gnu.org>
15661
15662 * dispnew.c (sync_window_with_frame_matrix_rows):
15663 Fix handling of windows which aren't full-width, fix handling
15664 of marginal areas.
15665
15666 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
15667
15668 2001-10-23 Andreas Schwab <schwab@suse.de>
15669
15670 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
15671 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
15672
15673 2001-10-23 Gerd Moellmann <gerd@gnu.org>
15674
15675 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
15676 REAL_END. Notice if cursor gets overwritten.
15677 (notice_overwritten_cursor): Take X positions as parameters.
15678 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
15679 around call to x_draw_glyphs.
15680
15681 2001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15682
15683 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
15684 instead of C) and usage.
15685
15686 * editfns.c (char-to-string): Fix argument names (use CHAR instead
15687 of C) and usage.
15688
15689 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
15690 `left', `max_width' and `max_height'.
15691
15692 2001-10-23 Gerd Moellmann <gerd@gnu.org>
15693
15694 * xdisp.c (display_line): For a tab continued to the next line,
15695 set row's ends_in_middle_of_char_p.
15696
15697 2001-10-22 Gerd Moellmann <gerd@gnu.org>
15698
15699 * xdisp.c (display_line): Fix computation of continuation lines
15700 width for TABs.
15701
15702 2001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15703
15704 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
15705 `Qlaplace'.
15706
15707 * fileio.c: Remove unused code.
15708
15709 2001-10-22 Miles Bader <miles@gnu.org>
15710
15711 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
15712 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
15713 Remove `DOC_STRINGS_IN_COMMENTS' cases.
15714
15715 2001-10-21 Jason Rumney <jasonr@gnu.org>
15716
15717 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
15718
15719 2001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
15720
15721 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
15722 (Finsert_string): Avoid the multi-line string literals warning.
15723
15724 2001-10-22 Miles Bader <miles@gnu.org>
15725
15726 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
15727 (Fdocumentation): Don't use it.
15728 (syms_of_doc): Don't initialize it.
15729
15730 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
15731 * print.c (Fwith_output_to_temp_buffer): Likewise.
15732 * window.c (Fsave_window_excursion): Likewise.
15733 * editfns.c (Fsave_excursion, Fsave_current_buffer)
15734 (Fsave_restriction): Likewise.
15735 * eval.c (Frun_hooks, Frun_hook_with_args)
15736 (Frun_hook_with_args_until_failure)
15737 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
15738 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
15739 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
15740 (Funwind_protect, Fcondition_case): Likewise.
15741 * coding.c (Ffind_operation_coding_system): Likewise.
15742 * keyboard.c (Ftrack_mouse): Likewise.
15743
15744 2001-10-21 Miles Bader <miles@gnu.org>
15745
15746 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
15747 (Fmake_hash_table): Add usage: string to doc string.
15748 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
15749 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
15750 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
15751 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
15752 (Fml_prefix_argument_loop): Likewise.
15753
15754 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15755
15756 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
15757
15758 * sysdep.c (init_sys_modes): Change doc-string comments to `new
15759 style' [w/`doc:' keyword].
15760
15761 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
15762 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
15763 comments to `new style' [w/`doc:' keyword].
15764
15765 2001-10-21 Jason Rumney <jasonr@gnu.org>
15766
15767 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
15768
15769 * w32term.c (remember_mouse_glyph): New function.
15770 (w32_mouse_position): Use it.
15771 (note_mouse_movement): If the mouse moved off the glyph, remember
15772 its new position.
15773
15774 * w32term.h (struct w32_output): Correct spelling of x_compatible.
15775 (w32_display_info): Add mouse_face_overlay.
15776
15777 * w32term.c (notice_overwritten_cursor): Renamed from
15778 note_overwritten_text_cursor. Rewritten to take glyph widths into
15779 account.
15780 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
15781 (fast_find_string_pos): New function.
15782 (fast_find_position): Return the correct vpos. Add parameter
15783 STOP. In the final row, stop before glyphs having STOP as object.
15784 Don't consider glyphs that are not from a buffer.
15785 (fast_find_position) [0]: Add a presumably more correct version
15786 for after 21.1.
15787 (expose_window_tree, expose_frame): Don't compute intersections here.
15788 (expose_window): Do it here instead.
15789 (expose_window_tree, expose_window, expose_line): Return 1 when
15790 overwriting mouse-face.
15791 (expose_window): If W is the window currently being updated, mark
15792 the frame garbaged.
15793 (expose_frame): If mouse-face was overwritten, redo it.
15794 (x_use_underline_position_properties): New variable.
15795 (syms_of_xterm): DEFVAR_BOOL it.
15796 (x_draw_glyph_string): Add comment to use it in future.
15797 (x_draw_glyph_string): Restore clipping after drawing box.
15798 Fix a computation of the underline position.
15799 (w32_get_glyph_string_clip_rect): Minor cleanup.
15800 (x_fill_stretch_glyph_string): Remove an assertion.
15801 (x_produce_glyphs): Don't convert multibyte characters
15802 to unibyte characters in unibyte buffers.
15803 (cursor_in_mouse_face_p): New function.
15804 (x_draw_stretch_glyph_string): Use it to choose a different GC
15805 when drawing a cursor within highlighted text. Don't draw
15806 background again if it has already been drawn.
15807 (x_draw_glyph_string_box): Don't draw a full-width
15808 box just because the glyph row's full_width_p flag is set.
15809 (x_draw_glyphs): Fix computation of rightmost x for
15810 full-width rows.
15811 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
15812 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
15813 change bottom shadow accordingly. Some cleanup.
15814 (x_update_window_end): Handle overwritten mouse face
15815 also for tool bar windows.
15816 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
15817 DRAW is DRAW_IMAGE_RAISED.
15818 (clear_mouse_face): Return 1 if text with mouse face was
15819 actually redrawn. Make the function static.
15820 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
15821 optimize away highlighting if we pass over that same overlay again.
15822 (note_mouse_highlight): Call mouse_face_overlay_overlaps
15823 to detect a case where we have to highlight a different region
15824 despite not having left the currently highlighted region.
15825 Set mouse_face_overlay in the x_display_info. Avoid changing the
15826 mouse pointer shape when show_mouse_face has already done it, or
15827 there is no need. Handle mouse-face and help-echo in strings.
15828 (glyph_rect): New function.
15829 (w32_mouse_position): Use it to raise the threshold for mouse
15830 movement event generation.
15831 (w32_initialize_display_info): Initialize the x_display_info's
15832 mouse_face_overlay.
15833 (w32_set_vertical_scroll_bar): Don't clear a zero height
15834 or width area.
15835 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
15836 a widget to zero height.
15837
15838 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
15839 Protect unibyte strings created by replacing their multibyte
15840 equivalents in menu_items.
15841 (w32_menu_show): Don't overwrite an item's name with its key
15842 description in case the description is a multibyte string.
15843 (single_submenu): Some cleanup.
15844
15845 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
15846 (postprocess_image): New function.
15847 (lookup_image): Call it for all image types except PostScript.
15848 (x_kill_gs_process): Call postprocess_image.
15849 (tiff_error_handler, tiff_warning_handler): New functions.
15850 (tiff_load): Install them as handlers.
15851 (x_kill_gs_process): Recognize if someone has cleared the image
15852 cache under us.
15853 (valid_image_p): Protect better against invalid image
15854 specifications. Previous code could signal an error.
15855 (Fx_hide_tip, Fshow_tip): Doc fix.
15856 (Fv_max_tooltip_size): New variable.
15857 (syns_of_xfns): DEFVAR_LISP it.
15858 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
15859 window buffer to *tip* right after creating the frame. Set frame's
15860 window_width. Use a maximum tooltip size specified by
15861 Vx_max_tooltip_size, if that has valid contents.
15862 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
15863 Make sure the tooltip is completely visible.
15864 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
15865 (Fx_create_frame): Adjust the frame's height for presence
15866 of the tool bar before calling x_figure_window_size.
15867 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
15868 when the window gets smaller.
15869 (x_set_foreground_color): Set frame's cursor_pixel.
15870 (x_set_foreground_color, x_set_background_color): Cleaned up.
15871 (x_set_font): Handle case of x_new_fontset returning the same name
15872 as before, although there was a change in fontsets.
15873
15874 2001-10-21 Miles Bader <miles@gnu.org>
15875
15876 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
15877 (Flogxor): Add usage: string to doc string.
15878 * charset.c (Fstring): Likewise.
15879 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
15880 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
15881
15882 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15883
15884 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
15885
15886 * alloc.c: Reindent DEFUNs with doc: keywords.
15887
15888 * abbrev.c (Finsert_abbrev_table_description): Reindent.
15889
15890 * frame.c: Change doc-string comments to `new style' [w/`doc:'
15891 keyword].
15892
15893 See ChangeLog.9 for earlier changes.
15894
15895 ;; Local Variables:
15896 ;; coding: iso-2022-7bit
15897 ;; End:
15898
15899 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
15900 Copying and distribution of this file, with or without modification,
15901 are permitted provided the copyright notice and this notice are preserved.
15902
15903 ;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4