(fontset_pattern_regexp): Use unsigned char.
[bpt/emacs.git] / src / ChangeLog
... / ...
CommitLineData
12004-11-05 Kim F. Storm <storm@cua.dk>
2
3 * fontset.c (fontset_pattern_regexp): Use unsigned char.
4
52004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6
7 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
8
9 * gtkutil.h: Declare use_old_gtk_file_dialog.
10
11 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
12 (xg_initialize): Moved DEFVAR_BOOL for use_old_gtk_file_dialog ...
13 * xfns.c (syms_of_xfns): ... to here.
14
15 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
16 it doesn't start with /.
17
182004-11-04 Kenichi Handa <handa@m17n.org>
19
20 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
21 treat it as a literal character.
22
232004-11-03 Kim F. Storm <storm@cua.dk>
24
25 * .gdbinit (ppt): New function.
26
272004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
28
29 * xterm.c (x_window_to_scroll_bar): Only call
30 xg_get_scroll_id_for_window if toolkit scroll bars are used.
31
32 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
33 of save.
34
352004-11-02 Andreas Schwab <schwab@suse.de>
36
37 * window.c (Fscroll_right): Fix last change.
38
392004-11-02 Kim F. Storm <storm@cua.dk>
40
41 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
42
432004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
44
45 * callproc.c (Fcall_process): Block input around vfork.
46
472004-11-02 Kim F. Storm <storm@cua.dk>
48
49 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
50 (syms_of_eval): Defsubr it.
51
522004-11-02 Richard M. Stallman <rms@gnu.org>
53
54 * insdel.c (replace_range_2): New function.
55
56 * casefiddle.c (casify_region): Handle changes in byte-length
57 using replace_range_2.
58
59 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
60
61 * xdisp.c (back_to_previous_visible_line_start):
62 Subtract 1 from pos when checking previous newline for invisibility.
63
64 * window.c (window_scroll_pixel_based): Update preserve_y
65 for header line if any.
66 (Fscroll_left, Fscroll_right): Don't call interactive_p;
67 use a new second argument instead.
68
69 * eval.c (Fcall_interactive_p): New function.
70 (interactive_p): Don't test INTERACTIVE here.
71 (Finteractive_p): Doc fix.
72
73 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
74
752004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
76
77 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
78 comparing font names.
79
802004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81
82 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
83 Fx_file_dialog if only directories should be read.
84
85 * lisp.h: Fx_file_dialog takes 5 parameters.
86
87 * xfns.c (Fx_file_dialog): Both Motif and GTK version: Add
88 parameter only_dir_p.
89 In Motif version, don't put DEFAULT_FILENAME in filter part of the
90 dialog, just text field part. Do not add DEFAULT_FILENAME
91 to list of files if it isn't there.
92 In GTK version, pass only_dir_p parameter to xg_get_file_name.
93
94 * macfns.c (Fx_file_dialog): Add parameter only_dir_p. Check
95 only_dir_p instead of comparing prompt to "Dired". When using
96 a save dialog, add option kNavDontConfirmReplacement, change title
97 to "Enter name", change text for save button to "Ok".
98
99 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p. Check
100 only_dir_p instead of comparing prompt to "Dired".
101
102 * gtkutil.c (xg_get_file_with_chooser)
103 (xg_get_file_with_selection): New functions, only defined ifdef
104 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
105 respectively.
106 (xg_get_file_name): Add parameter only_dir_p.
107 Call xg_get_file_with_chooser or xg_get_file_with_selection
108 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
109 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
110
111 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
112
113 * config.in: Rebuild (added HAVE_GTK_FILE_*).
114
1152004-11-01 Kim F. Storm <storm@cua.dk>
116
117 * process.c (connect_wait_mask, num_pending_connects): Only
118 declare and use them if NON_BLOCKING_CONNECT is defined.
119 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
120 (IF_NON_BLOCKING_CONNECT): New helper macro.
121 (wait_reading_process_output): Only declare and use local vars
122 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
123
1242004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
125
126 * w32term.c (x_scroll_run): Delete region objects after use.
127
1282004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
129
130 * xmenu.c: Add prototypes for forward function declarations.
131 (popup_get_selection): Remove parameter do_timers, remove call to
132 timer_check.
133 (create_and_show_popup_menu, create_and_show_dialog): Remove
134 parameter do_timers from call to popup_get_selection.
135
136 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
137 tool_bar_items and assign the result to f->tool_bar_items if
138 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
139 tool_bar_items to assignment of result.
140
141 * atimer.c (alarm_signal_handler): Do not call set_alarm if
142 pending_atmers is non-zero.
143
1442004-10-31 Kim F. Storm <storm@cua.dk>
145
146 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
147
1482004-10-28 Will <will@glozer.net>
149
150 * macterm.c: allow user to assign key modifiers to the Mac Option
151 key via a 'mac-option-modifier' variable.
152
1532004-10-28 Stefan <monnier@iro.umontreal.ca>
154
155 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
156 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
157 (x_handle_selection_request, x_handle_selection_clear)
158 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
159
1602004-10-28 Richard M. Stallman <rms@gnu.org>
161
162 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
163
164 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
165
1662004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
167
168 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
169 comment-starter over a 1-char one.
170
1712004-10-27 Richard M. Stallman <rms@gnu.org>
172
173 * xdisp.c (get_next_display_element): In mode lines,
174 treat newline and tab like other control characters.
175
176 * editfns.c (Fmessage): Doc fix.
177
178 * indent.c (vmotion): When moving up, check the newline before.
179 Make prevline an int, not a Lisp_Object.
180
1812004-10-27 Kim F. Storm <storm@cua.dk>
182
183 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
184 Only allocate info and discarded tables once.
185
186 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
187 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
188 (SAFE_FREE): Test it to determine if we need to unwind to free.
189 Remove size arg. All users changed.
190 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
191
1922004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
193
194 * gtkutil.c: Put empty line between comment and function body.
195 (xg_destroy_widgets): Rename from remove_from_container.
196 Just destroy all widgets in list. Argument wcont removed.
197 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
198 instead of remove_from_container.
199 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
200 (free_frame_tool_bar): Add comment.
201
202 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
203 is not NULL before strcmp.
204
2052004-10-26 Kim F. Storm <storm@cua.dk>
206
207 * callint.c (Fcall_interactively): Add 'U' code to get the
208 up-event discarded by a previous 'k' or 'K' argument.
209
2102004-10-26 David Kastrup <dak@gnu.org>
211
212 * buffer.c (syms_of_buffer): Fix a few typos.
213
2142004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
215
216 * xsmfns.c: Put empty line between comment and function body.
217 Use two spaces before comment end.
218
2192004-10-25 Kenichi Handa <handa@m17n.org>
220
221 * fontset.c (fontset_pattern_regexp): Optimize for the case that
222 PATTERN is full XLFD.
223
2242004-10-24 Kenichi Handa <handa@m17n.org>
225
226 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
227
228 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
229 (regex_compile): Return REG_ERANGEX if appropriate.
230
2312004-10-22 Kenichi Handa <handa@m17n.org>
232
233 * editfns.c (Ftranslate_region_internal): New function.
234 (syms_of_editfns): Defsubr it.
235
2362004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
237
238 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
239
2402004-10-21 K\e,Aa\e(Broly L\e$,1 q\e(Brentey <lorentey@elte.hu>
241
242 * xterm.h (x_output): New member `xic_base_fontname'.
243 (FRAME_XIC_BASE_FONTNAME): New macro.
244 (xic_free_xfontset): Declare.
245
246 * xfns.c (xic_create_xfontset): Share fontsets between frames
247 based on base_fontname.
248 (xic_free_xfontset): New function.
249 (free_frame_xic): Use it.
250 (xic_set_xfontset): Ditto.
251
252 * xterm.c (xim_destroy_callback): Ditto.
253
254
2552004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
256
257 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
258
2592004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
260
261 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
262 XSync.
263
264 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
265 New variables and constant.
266 (main): Calculate heap_bss_diff. If we are dumping and the
267 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
268 and exec ourself again.
269 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
270 print a warning.
271
272 * lastfile.c: Make my_endbss and my_endbss_static available on all
273 platforms.
274
275 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
276 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
277
2782004-10-19 Luc Teirlinck <teirllm@auburn.edu>
279
280 * data.c (Flocal_variable_if_set_p): Doc fix.
281
2822004-10-19 Jason Rumney <jasonr@gnu.org>
283
284 * w32.c (init_environment): Set emacs_dir correctly when running
285 emacs from the build directory.
286
2872004-10-19 Richard M. Stallman <rms@gnu.org>
288
289 * editfns.c (Fdelete_and_extract_region):
290 If region is empty, return null string.
291
2922004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
293
294 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
295 and canon_width.
296 (xg_frame_cleared): Remove.
297
298 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
299 (xg_find_top_left_in_fixed): Remove.
300 (xg_create_scroll_bar): Put an event box widget between
301 the scroll bar widget and the edit widget.
302 (xg_show_scroll_bar): Show the parent widget (the event box).
303 (xg_remove_scroll_bar): Destroy parent (the event box) also.
304 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
305 Move the parent (the event box) widget inside the fixed widget.
306 Move window clear to xterm.c.
307
308 * gtkutil.h (xg_frame_cleared): Remove.
309
310 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
311 (x_scroll_bar_create, XTset_vertical_scroll_bar):
312 Remove arguments left and width to xg_update_scrollbar_pos.
313 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
314
3152004-10-19 Kenichi Handa <handa@m17n.org>
316
317 * xdisp.c (display_mode_element): Fix display of wide chars.
318
3192004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
320
321 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
322 gdk_window_clear and move gdk_window_process_all_updates after
323 clear so events are sent to the X server in correct order.
324
3252004-10-18 Kenichi Handa <handa@m17n.org>
326
327 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
328 comparing font names.
329 (fs_query_fontset): Use fast_string_match for comparing fontset names.
330 (list_fontsets): Likewise.
331
332 * search.c (fast_string_match_ignore_case): New function.
333
334 * lisp.h (fast_string_match_ignore_case): Extern it.
335
3362004-10-17 Kim F. Storm <storm@cua.dk>
337
338 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
339 than bitmap if there is not left fringe.
340 (get_overlay_arrow_glyph_row): Also used on windows system.
341 (display_line): Display overlay string if no left fringe.
342
3432004-10-16 Jason Rumney <jasonr@gnu.org>
344
345 * w32fns.c (w32_font_match): Encode font name being matched.
346
3472004-10-16 Richard M. Stallman <rms@gnu.org>
348
349 * window.c (Fspecial_display_p): Doc fix.
350
3512004-10-15 Stefan <monnier@iro.umontreal.ca>
352
353 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
354 Don't ignore menus, because where-is-internal already does it for us.
355
3562004-10-15 Kim F. Storm <storm@cua.dk>
357
358 * xdisp.c (redisplay_window): Only update fringes and vertical
359 border on window frames.
360
3612004-10-14 Andreas Schwab <schwab@suse.de>
362
363 * m/ia64.h (DATA_SEG_BITS): Don't define.
364
3652004-10-14 Kim F. Storm <storm@cua.dk>
366
367 * xterm.h: Include Xutil.h after keysym.h to work around bug
368 in some X versions.
369
3702004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
371
372 * fns.c (map_char_table): Add missing gcpros.
373
3742004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
375
376 * keymap.c (get_keymap): An autoload form is not a keymap.
377
378 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
379
3802004-10-13 Kim F. Storm <storm@cua.dk>
381
382 * callproc.c (Fcall_process): Simplify handling of display arg.
383 Resume `display_on_the_fly' once a coding system is determined.
384
385 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
386
3872004-10-12 Kim F. Storm <storm@cua.dk>
388
389 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
390 caller, such as call-process, is not going to poll for input.
391 (calc_line_height_property): Handle case where it->object is nil.
392
393 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
394
3952004-10-12 Kenichi Handa <handa@m17n.org>
396
397 * xdisp.c (get_next_display_element):
398 If unibyte_display_via_language_environment is zero, display 8-bit
399 chars in octal in unibyte buffer.
400
4012004-10-12 Kim F. Storm <storm@cua.dk>
402
403 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
404 are no ordinary bindings.
405
4062004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
407
408 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
409
4102004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
411
412 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
413 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
414 (make_mac_frame): Add BLOCK_INPUT around the making of a
415 terminal frame.
416 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
417 * macgui.h (mktime): Use emacs_mktime.
418 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
419 Make a cancel file-open dialog be like C-g.
420 * mac.c (mktime): Use emacs_mktime.
421 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
422 (Fmac_paste_function): Add better error handling for carbon cut/paste.
423
4242004-10-10 Kim F. Storm <storm@cua.dk>
425
426 * keyboard.c (timer_resume_idle): New function to resume idle
427 timer without resetting timers on the idle list.
428 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
429 (timer_start_idle, timer_stop_idle): Declare static.
430 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
431
432 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
433
4342004-10-08 Steven Tamm <steventamm@mac.com>
435
436 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
437 * macterm.c (mac_check_for_quit_char): Remove warning for using
438 NULL where 0 should be used.
439 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
440 objc/malloc.h
441 * mac.c: Include time.h for Tiger compatibility.
442
4432004-10-07 Kim F. Storm <storm@cua.dk>
444
445 * xdisp.c (redisplay_window): Fix flicker on vertical line between
446 windows. Update vertical line after drawing window fringes, but
447 only if actually drawing any bitmaps--or there is no fringe.
448
449 * xterm.c (x_update_window_end): Likewise.
450 * macterm.c (x_update_window_end): Likewise.
451 * w32term.c (x_update_window_end): Likewise.
452
453 * fringe.c (draw_window_fringes): Return value now indicates if
454 any fringe bitmaps were redrawn (or there are no fringes).
455
456 * dispextern.h (draw_window_fringes): Update prototype.
457
4582004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
459
460 * macfns.c (mac_get_window_bounds): Add extern.
461 (x_real_positions): Use mac_get_window_bounds.
462
463 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
464 xmenu.c (YAILOM).
465
466 * macterm.c [!MAC_OSX]: Include Windows.h.
467 (front_emacs_window): Rename from mac_front_window. All uses
468 changed. Return the frontmost non-tooltip emacs window.
469 (mac_get_window_bounds): New function.
470 (x_calc_absolute_position): Use the difference of width and height
471 between the inner and outer window.
472 (x_set_offset): Specify window position by the coordinae of the
473 outer window. Adjust the position if the title bar is completely
474 outside the screen.
475 (app_is_suspended, app_sleep_time): Remove unused variables.
476 (do_app_resume, do_app_suspend): Remove their contents because
477 window-activate/deactivate events will do the job.
478 (do_zoom_window): Remove unused variables. Make compliant to the
479 standard way of zooming. Set f->left_pos and f->top_pos.
480 (XTread_socket): Don't use argument `expected'. Don't use
481 FrontWindow to determine the clicked window. Exclude unprocessed
482 mouseUp cases in the early stage. Add parentheses to fix operator
483 precedence.
484 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
485
486
4872004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
488
489 * config.in: Regenerate.
490
491 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
492 HAVE_EXECSHIELD.
493
4942004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
495
496 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
497 a row if Alt or Meta has been found for that row. Also stop scanning
498 for Keysyms for that row.
499
5002004-10-04 Kim F. Storm <storm@cua.dk>
501
502 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
503 to list. Include overlay arrow bitmap in return value.
504
505 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
506 bars with fractional column width. If scroll bar separates two
507 windows, move it towards the window it belongs to. Only update
508 the padding area below the scroll bar widget when necessary,
509 i.e. when scroll bar widget is created, moved, or resized.
510
511 * xdisp.c (define_frame_cursor1): Do not change frame cursor
512 while tracking/dragging mouse.
513 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
514
515 * window.c (coordinates_in_window): Relax check for cursor
516 on vertial border between mode lines.
517 (Fset_window_fringes): Do not allow negative widths.
518 (Fset_window_scroll_bars): Likewise.
519
520 * .gdbinit (pp): Shorthand for p ARG + pr.
521 (ff): New command: flush frame updates (X only).
522
5232004-10-03 Michael Albinus <michael.albinus@gmx.de>
524
525 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
526
5272004-09-30 Kenichi Handa <handa@m17n.org>
528
529 * process.c (send_process): Free composition data.
530
531 * fileio.c (Finsert_file_contents): Free composition data.
532
533 * coding.c (code_convert_region): Don't skip ASCIIs if there are
534 compositions to encode.
535 (encode_coding_string): Likewise. Free composition data.
536
5372004-09-30 Florian Weimer <fw@deneb.enyo.de>
538
539 * coding.c (code_convert_region): Free composition data.
540
5412004-09-29 Kim F. Storm <storm@cua.dk>
542
543 * fringe.c: Remove limit on number of bitmaps.
544 (fringe_bitmaps, fringe_faces): Change to pointers.
545 (max_fringe_bitmaps): New var.
546 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
547 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
548
549 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
550 (struct glyph_row): Reorder fringe_bitmap related fields.
551 (struct it): Likewise.
552
553 * w32term.c (fringe_bmp): Change to pointer.
554 (max_fringe_bmp): New var.
555 (w32_define_fringe_bitmap): Expand fringe_bmp.
556 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
557 (w32_destroy_fringe_bitmap): Likewise.
558
5592004-09-29 Kim F. Storm <storm@cua.dk>
560
561 * fringe.c: Simplify last change.
562 (lookup_fringe_bitmap): New function.
563 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
564 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
565 Keep standard bitmaps in Vfringe_bitmaps.
566 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
567 (Fset_fringe_bitmap_face): Likewise.
568
569 * dispextern.h (lookup_fringe_bitmap): Add prototype.
570 (valid_fringe_bitmap_p): Remove prototype.
571
572 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
573
5742004-09-29 Kim F. Storm <storm@cua.dk>
575
576 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
577 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
578
579 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
580
581 * fringe.c (Vfringe_bitmaps): New variable.
582 (syms_of_fringe): DEFVAR_LISP it.
583 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
584 Change arg to Lisp_Object and fail if not an integer.
585 (get_fringe_bitmap_name, resolve_fringe_bitmap)
586 (destroy_fringe_bitmap): New functions.
587 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
588 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
589 clear its fringe property.
590 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
591 Fdestroy_fringe_bitmap.
592 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
593 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
594 and set fringe property. Signal error if no free slots.
595 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
596 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
597
598 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
599 symbols with a fringe property.
600
6012004-09-27 Kim F. Storm <storm@cua.dk>
602
603 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
604 Doc fix. Format may now be a symbol or alist, not a cons.
605
606 * fringe.c (update_window_fringes): Handle new formats of
607 indicate-buffer-boundaries (symbol or alist). No longer
608 allow a simple cons.
609 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
610
6112004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
612
613 * config.in: Rebuild.
614
6152004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
616
617 * config.in: Rebuild.
618
619 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
620
6212004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
622
623 * xterm.c (x_term_init): Work around a bug in some X servers.
624
6252004-09-18 Richard M. Stallman <rms@gnu.org>
626
627 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
628
629 * xdisp.c (try_window_reusing_current_matrix):
630 Handle the case where we reach the old displayed text,
631 out of sync with the old line boundary.
632
6332004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
634
635 * fileio.c (Finsert_file_contents): Fix case of replacement in a
636 narrowed buffer.
637
6382004-09-14 Kim F. Storm <storm@cua.dk>
639
640 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
641
642 * xfaces.c (Qface_no_inherit): New var.
643 (syms_of_xfaces): Intern and staticpro it.
644 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
645 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
646 Don't increment face_change_count when face has non-nil
647 face-no-inherit property.
648
6492004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
650
651 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
652 (Fbyte_code): Remove dead code after `wrong_type_argument'.
653
654 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
655 before doing the mark_stack_check_gcpros since they're not on the stack.
656
6572004-09-12 Kim F. Storm <storm@cua.dk>
658
659 * editfns.c (Fformat): Handle format strings with multiple text
660 properties. Reverse text property list from the format string,
661 so the positions are in increasing order.
662
6632004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
664
665 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
666 x_uncatch_errors so that possible protocol errors are delivered.
667
6682004-09-10 Eli Zaretskii <eliz@gnu.org>
669
670 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
671 blockinput.h.
672 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
673 charset.h, and coding.h
674 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
675 (term.o): Depend on window.h and keymap.h.
676 (abbrev.o): Depend on syntax.h.
677 (callint.o): Depend on keymap.h.
678 (casefiddle.o): Depend on charset.h and keymap.h.
679 (category.o): Depend on keymap.h.
680 (coding.o): Depend on dispextern.h.
681 (cmds.o): Depend on keyboard.h and keymap.h.
682 (dispnew.o): Depend on indent.h and intervals.h.
683 (doc.o): Depend on keymap.h.
684 (editfns.o): Depend on frame.h.
685 (emacs.o): Depend on dispextern.h.
686 (fileio.o): Don't depend on ccl.h.
687 (filelock.o): Depend on charset.h and coding.h.
688 (frame.o): Depend on w32term.h and macterm.h.
689 (insdel.o): Depend on region-cache.h.
690 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
691 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
692 (search.o): Depend on $(INTERVALS_SRC).
693 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
694 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
695 xterm.h, w32term.h, and macterm.h.
696 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
697 w32term.h, and macterm.h.
698 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
699 region-cache.h, xterm.h, w32term.h, and macterm.h.
700 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
701 (data.o): Depend on frame.h.
702 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
703 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
704 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
705 (intervals.o): Depend on keymap.h.
706
707 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
708 Add debugging print-out to termscript.
709
7102004-09-09 Richard M. Stallman <rms@gnu.org>
711
712 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
713
7142004-09-08 Richard M. Stallman <rms@gnu.org>
715
716 * window.c (Fset_window_buffer): Doc fix.
717
718 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
719
7202004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
721
722 * minibuf.c (history_delete_duplicates): New variable.
723 (read_minibuf): Use it.
724 (syms_of_minibuf): Create the corresponding lisp variable.
725
7262004-09-08 Kim F. Storm <storm@cua.dk>
727
728 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
729 overlay just before point.
730
7312004-09-07 Luc Teirlinck <teirllm@auburn.edu>
732
733 * buffer.h (struct buffer): Add auto_save_file_format field.
734 * buffer.c (reset_buffer, init_buffer_once):
735 Handle auto_save_file_format field.
736 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
737 `buffer-auto-save-file-format'.
738 * fileio.c: Delete declaration for removed Vauto_save_file_format.
739 (build_annotations): Adapt to replacement of
740 `auto-save-file-format' with the new buffer-local variable
741 `buffer-auto-save-file-format'.
742 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
743
7442004-09-07 Jason Rumney <jasonr@gnu.org>
745
746 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
747
748 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
749 Handle Unicode menu titles.
750
7512004-09-07 Kim F. Storm <storm@cua.dk>
752
753 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
754 property from text property or overlay strings at point.
755
7562004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
757
758 * xmenu.c (update_submenu_strings): YAILOM.
759 (set_frame_menubar): Make sure last_i is initialized.
760
7612004-09-03 Jason Rumney <jasonr@gnu.org>
762
763 * w32menu.c (_widget_value): Add lname and lkey.
764 (digest_single_submenu): Set lname and lkey in widget_value
765 instead of name and key.
766 (update_submenu_strings): New function.
767 (set_frame_menubar): Remove call to inhibit_garbage_collection,
768 call update_submenu_strings.
769
770 * w32menu.c (globals_of_w32menu): Check for Unicode API.
771 (digest_single_submenu, w32_menu_show): Encode menu strings as
772 UTF-8 if Unicode API is available.
773 (utf8to16): New function.
774 (add_menu_item): Use it when calling Unicode API.
775
7762004-09-03 Kim F. Storm <storm@cua.dk>
777
778 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
779 in overlay or text-property strings; set cursor on corresponding
780 glyph rather than at end of the string.
781
7822004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
783
784 * macfns.c (x_real_positions): Save the current window port and
785 set a new one before obtaining the global coordinate.
786 Use FRAME_MAC_WINDOW.
787 (x_set_name, x_set_title): Encode title to UTF8.
788 Use SetWindowTitleWithCFString.
789 (Fx_server_version): Get correct OS version.
790
791 * macmenu.c (add_menu_item): Remove unused variable `i'.
792 Don't let separator items destroy refence constants of other menu items.
793
794 * macterm.c (x_update_end): Move SetPortWindowPort to inside
795 BLOCK_INPUT.
796 (x_set_offset): Use FRAME_MAC_WINDOW.
797
798 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
799 nontext_cursor if it is on a scroll bar.
800
801 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
802 Carbon support.
803 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
804 Use LIBS_CARBON.
805
8062004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
807
808 * xfns.c (x_set_name_internal): New function. Check if we shall call
809 xfree before ENCODE_UTF_8.
810 (x_set_name, x_set_title): Call x_set_name_internal.
811
8122004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
813
814 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
815 reload it.
816
8172004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
818
819 * macmenu.c (_widget_value): Add lname and lkey.
820 (single_submenu): Set lname and lkey in widget_value
821 instead of name and key.
822 (update_submenu_strings): New function.
823 (set_frame_menubar): Remove call to inhibit_garbage_collection,
824 call update_submenu_strings.
825
826 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
827 instead of name and key.
828 (update_submenu_strings): New function.
829 (set_frame_menubar): Remove call to inhibit_garbage_collection,
830 call update_submenu_strings.
831
832 * gtkutil.h (_widget_value): Added lname and lkey.
833
8342004-08-30 Steven Tamm <steventamm@mac.com>
835
836 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
837 by using different names for inner loop variables.
838
8392004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
840
841 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
842 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
843
844 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
845 tool bar items is 0.
846
8472004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
848
849 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
850 strings in menu items.
851 (single_submenu): Use ENCODE_MENU_STRING
852 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
853 button release isn't passed to event loop
854 (add_menu_item): Use SetMenuItemWithCFString
855
8562004-08-26 Steven Tamm <steventamm@mac.com>
857
858 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
859 tool-bar/menu click
860 * macfns.c (Fx_file_dialog): Implemented using NavServices
861
8622004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
863
864 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
865
866 * xfns.c (x_window_to_frame, x_any_window_to_frame)
867 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
868 (x_top_window_to_frame): Return 0 if wdesc is None.
869
8702004-08-22 Richard M. Stallman <rms@gnu.org>
871
872 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
873 HAVE_TERMIOS]: If there's no char for this signal, drop through
874 and use system calls.
875
876 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
877
8782004-08-20 Kim F. Storm <storm@cua.dk>
879
880 * process.c (wait_reading_process_output): Rename from
881 wait_reading_process_input. All uses changed.
882 (wait_reading_process_output_1): Rename from
883 wait_reading_process_input_1. All uses changed.
884
885 * dispnew.c (Fsleep_for): Remove obsolete code.
886
8872004-08-20 Kenichi Handa <handa@m17n.org>
888
889 * syntax.c (skip_chars): Fix for unibyte case.
890
8912004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
892
893 * syntax.c (char_quoted): Mixup byte/char pos.
894 (back_comment): Fixup globals in all cases.
895
8962004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
897
898 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
899 passing it to gtk_window_set_title.
900
9012004-08-19 Kim F. Storm <storm@cua.dk>
902
903 * process.c (wait_reading_process_input): Clean up.
904 Add wait_for_cell, wait_proc, and just_wait_proc args
905 to avoid overloading `read_kbd' and `do_display' args.
906 Change read_kbd arg to int. All callers changed.
907
908 * process.c (process_send_signal): Use CDISABLE.
909
910 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
911
9122004-08-18 Kim F. Storm <storm@cua.dk>
913
914 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
915 forward to wait_reading_process_input via DO_DISPLAY arg.
916 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
917 object, only process output from that process; also inhibit
918 running timers if DO_DISPLAY==-2.
919
9202004-08-17 Kim F. Storm <storm@cua.dk>
921
922 * process.c (process_send_signal): Fix last change--use
923 _POSIX_VDISABLE instead of CVDISABLE when available.
924
9252004-08-16 Richard M. Stallman <rms@gnu.org>
926
927 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
928 Set VQUIT and VINTR chars to the standard ones if they are unset.
929 [AIX]: Don't do that here. And don't force VINTR to standard
930 when SIGNALS_VIA_CHARACTERS.
931
932 * process.c (process_send_signal)
933 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
934 Do nothing if the character is CVDISABLE.
935
936 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
937
938 * intervals.c (move_if_not_intangible):
939 Force POSITION to be between BEGV and ZV.
940
9412004-08-14 John Paul Wallington <jpw@gnu.org>
942
943 * buffer.c (Frestore_buffer_modified_p): Doc fix.
944
945 * fileio.c (Fread_file_name): Doc fix.
946
947 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
948
9492004-08-09 Luc Teirlinck <teirllm@auburn.edu>
950
951 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
952
9532004-08-08 Luc Teirlinck <teirllm@auburn.edu>
954
955 * keyboard.c: Declare Qdisabled_command_function instead of
956 Qdisabled_command_hook.
957 (Fcommand_execute): Use Qdisabled_command_function instead of
958 Qdisabled_command_hook.
959 (syms_of_keyboard): Ditto.
960
9612004-08-07 Luc Teirlinck <teirllm@auburn.edu>
962
963 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
964 (syms_of_keymap) <key-translation-map>: Doc fixes.
965
9662004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
967
968 * window.c (window_list_1): YAILOM.
969
970 * fileio.c (make_temp_name): Handle multibyte prefixes.
971
9722004-08-06 Luc Teirlinck <teirllm@auburn.edu>
973
974 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
975 Doc fix.
976
9772004-08-03 Kenichi Handa <handa@m17n.org>
978
979 * coding.c (decode_coding_string): Adjust coding->consumed, and
980 etc. with shrinked_bytes.
981
9822004-08-03 Kim F. Storm <storm@cua.dk>
983
984 * indent.c (compute_motion): Fix check for full width window
985 in non-window case. Do not count left truncation glyph on
986 window systems.
987
9882004-08-02 Luc Teirlinck <teirllm@auburn.edu>
989
990 * data.c (Finteractive_form): Doc fix.
991
9922004-08-02 Kim F. Storm <storm@cua.dk>
993
994 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
995 properly accounting for continuation glyph on non-window systems.
996 (Fcompute_motion): Use actual window width if WIDTH is nil, and
997 actual window width/height if TOPOS is nil, properly accounting for
998 continuation glyphs on non-window systems, and optional header lines.
999 (vmotion): Let compute_motion calculate actual window width.
1000
1001 * window.c (window_scroll_line_based): Let compute_motion
1002 calculate actual window width.
1003
10042004-08-02 Kim F. Storm <storm@cua.dk>
1005
1006 * process.c (read_process_output): Use whole read buffer.
1007 Don't trigger adaptive read buffering on errors.
1008
10092004-07-31 Luc Teirlinck <teirllm@auburn.edu>
1010
1011 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
1012
1013 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
1014
1015 * callint.c (Fcall_interactively): Doc fix.
1016
10172004-07-30 Richard M. Stallman <rms@gnu.org>
1018
1019 * abbrev.c (Fexpand_abbrev): Undo previous change.
1020
10212004-07-30 Kim F. Storm <storm@cua.dk>
1022
1023 * editfns.c (Fformat): Allocate extra (dummy) element in info.
1024
10252004-07-28 Luc Teirlinck <teirllm@auburn.edu>
1026
1027 * eval.c (Fdefvar, Fdefconst): Doc fixes.
1028
10292004-07-27 Kim F. Storm <storm@cua.dk>
1030
1031 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
1032 we have ensured that the glyph fits on the current line (or returned
1033 MOVE_LINE_CONTINUED otherwise).
1034
10352004-07-26 Kim F. Storm <storm@cua.dk>
1036
1037 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
1038 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
1039 if target position is at end of display line but char is not a newline.
1040
10412004-07-25 Richard M. Stallman <rms@gnu.org>
1042
1043 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
1044 instead of ON_VERTICAL_BORDER, when on scroll bar.
1045 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
1046
1047 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
1048
1049 * window.c (Fcoordinates_in_window_p):
1050 Take account of FRAME_INTERNAL_BORDER_WIDTH.
1051
1052 * alloc.c (check_cons_list): New function (contents commented out).
1053
10542004-07-24 Luc Teirlinck <teirllm@auburn.edu>
1055
1056 * xfaces.c (Fcolor_supported_p): Doc fix.
1057
1058 * frame.c (Fselect_frame, Fset_frame_selected_window)
1059 (Fframe_visible_p, Fraise_frame): Doc fixes.
1060
10612004-07-24 Richard M. Stallman <rms@gnu.org>
1062
1063 * keyboard.h (not_single_kboard_state): Declared.
1064
1065 * fileio.c (Fwrite_region): Doc fix.
1066
1067 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
1068
1069 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
1070 only when a real abbrev is present.
1071
1072 * xfns.c (x_icon_verify): New function.
1073 (Fx_create_frame): Use it.
1074
10752004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
1076
1077 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
1078
10792004-07-21 Kim F. Storm <storm@cua.dk>
1080
1081 * window.h (struct glyph_matrix): New members nrows_scale_factor
1082 and ncols_scale_factor.
1083
1084 * window.c (make_window): Initialize nrows_scale_factor and
1085 ncols_scale_factor members.
1086
1087 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
1088 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
1089 (required_matrix_height): Apply nrows_scale_factor.
1090 (required_matrix_width): Apply ncols_scale_factor.
1091
1092 * xdisp.c (display_line): Increment nrows_scale_factor and set
1093 fonts_changed_p if past last allocated row.
1094 (append_glyph, append_composite_glyph, produce_image_glyph)
1095 (append_stretch_glyph): Increment ncols_scale_factor and set
1096 fonts_changed_p if current area is full.
1097
10982004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1099
1100 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
1101
11022004-07-19 Luc Teirlinck <teirllm@auburn.edu>
1103
1104 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
1105 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
1106 (Fset_window_start, Fscroll_up, Fscroll_down)
1107 (Fother_window_for_scrolling, Fscroll_other_window)
1108 (Fsave_window_excursion, Fset_window_vscroll)
1109 (syms_of_window) <window-size-fixed>: Doc fixes.
1110
11112004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
1112
1113 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
1114 ENCODE_SYSTEM for filenames.
1115
11162004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1117
1118 * mac.c (sys_select): Block input around call to
1119 ReceiveNextEvent to prevent breakage. Correctly handle
1120 blocking on event queue only by calling ReceiveNextEvent
1121 instead of select (since GUI events aren't on an fd).
1122 (sys_read): Remove function
1123 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
1124
11252004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1126
1127 * mac.c (sys_select): Redo sys_select to use alarm-based
1128 polling instead of 1 sec timeouts (like solaris).
1129
1130 * macterm.c (x_make_frame_visible): Comment in polling on
1131 frame creation.
1132
1133 * keyboard.c: Undef SIGIO on Carbon
1134
1135 * atimer.c (alarm_signal_handler): Call alarm handlers after
1136 scheduling.
1137
1138 * eval.c (Feval): Remove quit_char test
1139
1140 * process.c (wait_reading_process_input): Remove clearing
1141 stdin for select call on process input.
1142
11432004-07-18 Luc Teirlinck <teirllm@auburn.edu>
1144
1145 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
1146 capitalization error in docstring.
1147
11482004-07-17 Juanma Barranquero <lektu@terra.es>
1149
1150 * keyboard.c (not_single_kboard_state): Do nothing unless
1151 MULTI_KBOARD is defined.
1152
11532004-07-17 Richard M. Stallman <rms@gnu.org>
1154
1155 * window.c (coordinates_in_window): Inside the window but outside
1156 its box to the L or R, return ON_VERTICAL_BORDER.
1157 (window_list_1): Rotate the list to start with WINDOW.
1158
1159 * print.c (print_preprocess): Test for print_depth at limit
1160 before entering in being_printed.
1161
1162 * keyboard.c (not_single_kboard_state): New function.
1163 (stuff_buffered_input): Now no-op only if no SIGTSTP.
1164
1165 * frame.c (Fdelete_frame): If we're in single_bboard_state on
1166 this kboard, and we delete its last frame, go to any_kboard_state.
1167
1168 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
1169
11702004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
1171
1172 * w32fns.c (Fx_file_dialog): Encode strings in system coding
1173 system before passing them to OS functions for display.
1174
11752004-07-15 David Kastrup <dak@gnu.org>
1176
1177 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
1178 Apparently fixes an abort condition.
1179
11802004-07-14 Luc Teirlinck <teirllm@auburn.edu>
1181
1182 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
1183 instead of a cons.
1184
11852004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
1186
1187 * keyboard.c (echo_dash): Do nothing if there already is a dash
1188 at the end of the echo string.
1189
11902004-07-12 Kim F. Storm <storm@cua.dk>
1191
1192 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
1193 if GC_MARK_STACK.
1194
11952004-07-10 Luc Teirlinck <teirllm@auburn.edu>
1196
1197 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
1198
1199 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
1200 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
1201 (Freplace_buffer_in_windows, Fset_window_buffer)
1202 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
1203 (syms_of_window): Expand docstring of `display-buffer-function'.
1204
12052004-07-09 Luc Teirlinck <teirllm@auburn.edu>
1206
1207 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
1208 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
1209 that time values of the type (HIGH . LOW) are considered obsolete.
1210
12112004-07-06 Luc Teirlinck <teirllm@auburn.edu>
1212
1213 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
1214 docstring.
1215
1216 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
1217
12182004-07-06 John Paul Wallington <jpw@gnu.org>
1219
1220 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
1221
1222 * fns.c (Fclear_string): Signal an error if STRING is not a string.
1223
12242004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1225
1226 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
1227 instead of CGMainDisplayID (only in OSX 10.2 and later).
1228
12292004-07-04 John Paul Wallington <jpw@gnu.org>
1230
1231 * fileio.c (read_file_name_completion_ignore_case): New variable.
1232 (syms_of_fileio): Declare and initialise it.
1233 (Fread_file_name): Bind `completion-ignore-case' to respect it.
1234
12352004-07-03 Eli Zaretskii <eliz@gnu.org>
1236
1237 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
1238 for event.x and event.y.
1239
12402004-07-01 Kenichi Handa <handa@m17n.org>
1241
1242 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
1243 after getting a new string by pre-write-conversion.
1244
12452004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
1246
1247 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
1248 (x_calc_absolute_position): Remove unused var `child'.
1249
1250 * xfaces.c (x_supports_face_attributes_p)
1251 (Fdisplay_supports_face_attributes_p): YAILOM.
1252 (tty_supports_face_attributes_p): Remove unused var `i'.
1253
1254 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
1255 back_unibyte_ok.
1256
1257 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
1258
1259 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
1260
1261 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
1262
12632004-06-30 Andreas Schwab <schwab@suse.de>
1264
1265 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
1266 (Finit_image_library): Pass LIBRARIES through to
1267 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
1268 (lookup_image_type): Pass Qnil as second argument to
1269 Finit_image_library.
1270
1271 * lisp.h: Declare Finit_image_library.
1272
12732004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1274
1275 * macterm.c (do_window_activate, do_window_deactivate): Remove.
1276 (XTread_socket): Send mouse button events to the toolbox
1277 dispatcher even when the mouse is grabbed. Don't process window
1278 activate events for non-Emacs windows. Replace function calls to
1279 do_window_activate and do_window_deactivate with their contents.
1280 Reset mouse grabbing status when a window is deactivated.
1281
12822004-06-29 Steven Tamm <steventamm@mac.com>
1283
1284 * macterm.c (mac_get_emulated_btn)
1285 (mac_event_to_emacs_modifiers): Fix emulated mouse button
1286 support to correctly mask out modifiers.
1287
12882004-06-29 David Kastrup <dak@gnu.org>
1289
1290 * search.c (Fset_match_data): Allow buffer before end of list
1291 which can happen if set-match-data is using a pre-consed list.
1292
12932004-06-28 Steven Tamm <steventamm@mac.com>
1294
1295 * macterm.c (XTread_socket): Correctly set the frame position
1296 after the window is moved.
1297
12982004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1299
1300 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
1301 gpix and gmask just before return to avoid memory leak.
1302 (xg_get_image_for_pixmap): Add workaround for monochrome displays
1303 so insensitive and activated icons look ok.
1304
13052004-06-27 Jason Rumney <jasonr@gnu.org>
1306
1307 * w32fns.c (file_dialog_callback): Disable edit control if set
1308 to directories only on CDN_INITDONE message.
1309 (Fx_file_dialog): Default to directories only when prompt starts
1310 with "Dired".
1311
13122004-06-25 Kim F. Storm <storm@cua.dk>
1313
1314 * alloc.c (allocate_misc): Update total_free_markers.
1315 (free_misc): New function.
1316 (safe_alloca_unwind, free_marker): Use it.
1317
1318 * lisp.h (free_misc): Add prototype.
1319
1320 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
1321
13222004-06-24 Richard M. Stallman <rms@gnu.org>
1323
1324 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
1325 (syms_of_emacs): Lisp variables deleted.
1326
13272004-06-23 David Kastrup <dak@gnu.org>
1328
1329 * search.c (Freplace_match): Adjust the match-data more thoroughly
1330 when replacing strings in the buffer.
1331 (Fmatch_data): When INTEGERS is non-nil and the last match was in
1332 a buffer, add the buffer as last element to the match data.
1333 (Fset_match_data): If an additional element of the match-data is a
1334 buffer, restore it to last_thing_searched.
1335 (save_search_regs): Save last_thing_searched as part of the match data.
1336 (restore_match_data): Restore it again.
1337
13382004-06-23 Luc Teirlinck <teirllm@auburn.edu>
1339
1340 * keymap.c (Ftext_char_description): Doc fix.
1341 * doc.c (Fsnarf_documentation): Doc fix.
1342
13432004-06-22 Kim F. Storm <storm@cua.dk>
1344
1345 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
1346
1347 * lisp.h (struct Lisp_Save_Value): New member dogc.
1348 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
1349 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
1350 (SAFE_FREE_LISP): New macro.
1351
1352 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
1353 (make_save_value): Init new dogc member.
1354 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
1355
1356 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
1357 SAFE_FREE_LISP macros.
1358
13592004-06-22 Kim F. Storm <storm@cua.dk>
1360
1361 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
1362 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
1363 in that memory area are unknown to GC. Add comments.
1364
1365 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
1366
13672004-06-21 Kim F. Storm <storm@cua.dk>
1368
1369 * lisp.h (MAX_ALLOCA): Define here.
1370 (safe_alloca_unwind): Add prototype.
1371 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
1372
1373 * alloc.c (safe_alloca_unwind): New function.
1374
1375 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
1376
1377 * charset.c (Fstring): Use SAFE_ALLOCA.
1378
1379 * coding.c (MAX_ALLOCA): Remove define.
1380
1381 * data.c (MAX_ALLOCA): Remove define.
1382 (Faset): Use SAFE_ALLOCA.
1383
1384 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
1385
1386 * fns.c (string_make_multibyte, string_to_multibyte)
1387 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
1388 (MAX_ALLOCA): Remove define.
1389 (Fbase64_encode_region, Fbase64_encode_string)
1390 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
1391 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
1392 memory leak if encoding fails.
1393
1394 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
1395
13962004-06-21 Eli Zaretskii <eliz@gnu.org>
1397
1398 * print.c (Fwith_output_to_temp_buffer): Doc fix.
1399
14002004-06-20 Richard M. Stallman <rms@gnu.org>
1401
1402 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
1403
1404 * search.c (match_limit): Cleaner err msg when no match data available.
1405
1406 * window.c (syms_of_window): Doc fix.
1407
1408 * keyboard.c (command_loop_1): Handle values `only' and `identity'
1409 for Vtransient_mark_mode.
1410
1411 * buffer.c (syms_of_buffer): Doc fix.
1412
14132004-06-21 David Kastrup <dak@gnu.org>
1414
1415 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
1416 and unbinding of `case-fold-search' according to
1417 `completion-ignore-case' around calls of string-match and
1418 predicates, respectively. Should give satisfactory performance
1419 in all relevant cases.
1420
14212004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1422
1423 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
1424 clip_x/y_origin.
1425
1426 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
1427
1428 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
1429
1430 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
1431 on Mac OSX.
1432
14332004-06-16 Luc Teirlinck <teirllm@auburn.edu>
1434
1435 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
1436
14372004-06-16 Kim F. Storm <storm@cua.dk>
1438
1439 * dispextern.h (Vimage_types): Remove extern.
1440
14412004-06-16 Miles Bader <miles@gnu.org>
1442
1443 * image.c (lookup_image_type): Initialize image type if necessary.
1444
14452004-06-15 Kim F. Storm <storm@cua.dk>
1446
1447 * xdisp.c (try_cursor_movement): Exclude header line from scroll
1448 margin at top of window.
1449 (try_window_reusing_current_matrix): Calculate proper cursor position
1450 after scrolling up with non-zero scroll margin, as the old cursor
1451 position corresponds to value of PT before executing this command.
1452 (try_window_id): Consider scroll margin at bottom of window too;
1453 otherwise we fail to scroll when hl-line-mode is enabled.
1454
1455 * syntax.c (skip_chars): Only recognize [:class:] when it has the
1456 proper format and class is a lower-case word.
1457
14582004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1459
1460 * gtkutil.c (xg_get_image_for_pixmap): New function.
1461 (xg_get_gdk_pixmap_and_mask): Remove.
1462 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
1463 xg_get_gdk_pixmap_and_mask.
1464
1465 * xterm.h (struct x_display_info): Typo in comment fixed.
1466
14672004-06-14 Juanma Barranquero <lektu@terra.es>
1468
1469 * dispextern.h (Vimage_types): Make it conditional on
1470 HAVE_WINDOW_SYSTEM.
1471
1472 * image.c (Vimage_types): Move from xdisp.c.
1473 (Vimage_type_cache): New variable.
1474 (define_image_type): New argument indicating whether an image
1475 library was loaded; cache loaded status and return t on success,
1476 nil otherwise.
1477 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
1478 (w32_delayed_load): New function to load an image library from a
1479 list of possible filenames.
1480 (init_xpm_functions, init_png_functions, init_jpeg_functions)
1481 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
1482 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
1483 (Finit_image_library): New function, extracted from `init_image'.
1484 Try to initialize an image library on demand and cache whether we
1485 were successful or not.
1486 (syms_of_image): Initialize `Vimage_types' and
1487 `Vimage_type_cache'. Add recognized image types to Vimage_types.
1488 Export `init-image-library'.
1489 (init_image): Remove initialization of all image types, except xbm
1490 and pbm.
1491
1492 * xdisp.c (Vimage_types): Delete (moved to image.c).
1493
14942004-06-14 Andreas Schwab <schwab@suse.de>
1495
1496 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
1497 Avoid calling specbind when completion-regexp-list is empty.
1498
14992004-06-13 Richard M. Stallman <rms@gnu.org>
1500
1501 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
1502 (re_wctype, re_iswctype, re_wctype_to_bit):
1503 Non-function definitions moved here from regex.c.
1504
1505 * regex.c (re_wctype, re_iswctype): Function defs longer static.
1506 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
1507 (re_wctype, re_iswctype, re_wctype_to_bit):
1508 Non-function definitions moved to regex.h.
1509
1510 * window.c (Fselect_window): Doc fix.
1511
1512 * syntax.c: Include regex.h.
1513 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
1514 If requested, make a list of classes, then check the scanned
1515 chars for membership in them.
1516 (in_classes): New function.
1517 Doc fix.
1518
1519 * keyboard.c (cmd_error): Don't call any_kboard_state
1520 if inside a recursive edit level.
1521
15222004-06-13 Lorentey K\e,Aa\e(Broly <lorentey@elte.hu>
1523
1524 * keyboard.c (command_loop): Call any_kboard_state before
1525 command_loop_2 when at top level.
1526
15272004-06-13 Andreas Schwab <schwab@suse.de>
1528
1529 * print.c (print_object): Always use %ld for printing EMACS_INT.
1530
1531 * keyboard.c (cancel_hourglass_unwind): Return a value.
1532 (modify_event_symbol): Always use %ld for printing EMACS_INT.
1533 (Fexecute_extended_command): Likewise.
1534
1535 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
1536 avoid clashes.
1537 (SYNTAX): Likewise.
1538 (SYNTAX_WITH_FLAGS): Likewise.
1539 (SYNTAX_MATCH): Likewise.
1540
1541 * syntax.c (char_quoted): Avoid warning about undefined operation.
1542 (find_defun_start): Likewise.
1543 (scan_lists): Likewise.
1544 (INC_FROM): Likewise.
1545 (scan_sexps_forward): Likewise.
1546
1547 * image.c: Include <ctype.h>.
1548
1549 * xfaces.c (face_attr_equal_p): Declare parameters.
1550
15512004-06-13 Kenichi Handa <handa@m17n.org>
1552
1553 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
1554
15552004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
1556
1557 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
1558
15592004-06-12 Kenichi Handa <handa@m17n.org>
1560
1561 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
1562 ccl_prog_stack_struct and update it.
1563 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
1564 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
1565 ccl->eof_ic on EOF.
1566 (ccl_debug_hook): New function.
1567 (struct ccl_prog_stack): New member eof_ic.
1568 (ccl_driver): Handle EOF in subrountine call correctly.
1569
15702004-06-11 Kenichi Handa <handa@m17n.org>
1571
1572 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
1573
15742004-06-11 Kim F. Storm <storm@cua.dk>
1575
1576 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
1577
15782004-06-11 Juanma Barranquero <lektu@terra.es>
1579
1580 * keyboard.c (Fposn_at_point): Doc fix.
1581
15822004-06-11 David Kastrup <dak@gnu.org>
1583
1584 * search.c (match_limit): Don't flag an error if match-data
1585 exceeding the allocated search_regs.num_regs gets requested, just
1586 return Qnil.
1587
15882004-06-08 Miles Bader <miles@gnu.org>
1589
1590 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
1591
15922004-06-07 Juanma Barranquero <lektu@terra.es>
1593
1594 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
1595 (Fcurrent_time_string, Fcurrent_time_zone)
1596 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
1597
15982004-06-07 Miles Bader <miles@gnu.org>
1599
1600 * xfaces.c (struct named_merge_point): New type.
1601 (push_named_merge_point): New function.
1602 (merge_named_face): New function.
1603 (merge_face_ref, face_at_buffer_position, face_at_string_position):
1604 Use `merge_named_face'.
1605 (merge_face_inheritance): Function removed.
1606 (merge_face_ref): Rename from `merge_face_vector_with_property'.
1607 Add new `err_msgs' and `named_merge_points' args. Return error
1608 status. Only print error messages if ERR_MSGS is true. Don't try to
1609 do :inherit attribute validation.
1610 (merge_face_heights): Handle `unspecified' in both directions.
1611 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
1612 Call `merge_face_ref' instead of `merge_face_inheritance'.
1613 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
1614 (compute_char_face, face_at_buffer_position)
1615 (face_at_string_position): Call `merge_face_ref' instead of
1616 `merge_face_vector_with_property'.
1617
16182004-06-07 Kenichi Handa <handa@m17n.org>
1619
1620 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
1621 the necessary places.
1622
16232004-06-07 Kim F. Storm <storm@cua.dk>
1624
1625 * process.c (Fdelete_process): Undo 2004-05-28 change.
1626 Instead, call status_notify also for network process.
1627 (status_message): Use process instead of status as arg.
1628 Give messages "deleted" or "connection broken by remote peer" for
1629 an exited network process.
1630 (status_notify): Change call to status_message.
1631 (read_process_output): Increase readmax to 4096. Do not increase
1632 buffer size for datagram channels (default is now large enough).
1633
16342004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
1635
1636 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
1637 problem due to newly defined variable.
1638
16392004-06-06 Miles Bader <miles@gnu.org>
1640
1641 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
1642 immediately if non-interactive or not initialized.
1643
16442004-06-05 Richard M. Stallman <rms@gnu.org>
1645
1646 * minibuf.c (Fcompleting_read): Doc fix.
1647
16482004-06-05 Andreas Schwab <schwab@suse.de>
1649
1650 * macfns.c (x_create_tip_frame): Fix declaration after statement.
1651
16522004-06-05 Juanma Barranquero <lektu@terra.es>
1653
1654 * keymap.c (Fdescribe_vector): Fix docstring.
1655 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
1656
16572004-06-05 Miles Bader <miles@gnu.org>
1658
1659 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
1660 attributes have different values than the default face.
1661
16622004-06-04 Eli Zaretskii <eliz@gnu.org>
1663
1664 * xfaces.c (x_supports_face_attributes_p): Make this function
1665 conditional on HAVE_WINDOW_SYSTEM.
1666 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
1667 Don't call x_supports_face_attributes_p if it was not compiled in.
1668
16692004-06-04 Miles Bader <miles@gnu.org>
1670
1671 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
1672 from Ftty_supports_face_attributes_p.
1673 (x_supports_face_attributes_p): New function.
1674 (Ftty_supports_face_attributes_p): Function deleted.
1675 (Fdisplay_supports_face_attributes_p): New function.
1676 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
1677 (face_attr_equal_p): New function.
1678 (lface_equal_p): Use it.
1679
16802004-06-03 Juanma Barranquero <lektu@terra.es>
1681
1682 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
1683 (Vw32_color_map): Fix typo in docstring.
1684 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
1685 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
1686 Make argument names match their use in docstring.
1687
16882004-06-02 Juanma Barranquero <lektu@terra.es>
1689
1690 Work around bugs/problems with MinGW builds of graphics libraries
1691 called from MSVC builds of Emacs.
1692
1693 * image.c (lookup_image): Make pointer to img static.
1694 (png_read_from_memory): Disable "global" optimization.
1695
16962004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
1697
1698 * eval.c (Fcondition_case): Fix usage. Simplify.
1699
1700 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
1701
17022004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1703
1704 * macfns.c: Don't include ccl.h.
1705 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
1706 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
1707 TextUtils.h.
1708 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
1709 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
1710 display height/width.
1711 (compute_tip_xy, Vx_max_tooltip_size): Declare.
1712 (unwind_create_tip_frame, compute_tip_xy): New functions.
1713 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
1714 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
1715 and last_show_tip_args.
1716
1717 * macgui.h [!MAC_OSX]: Include Gestalt.h.
1718 (Cursor, No_Cursor): New defines.
1719 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
1720 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
1721
1722 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
1723
1724 * macterm.c: Don't include Gestalt.h.
1725 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
1726 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
1727 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
1728 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
1729 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
1730 (construct_mouse_click, XTmouse_position)
1731 (x_scroll_bar_report_motion, x_calc_absolute_position)
1732 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
1733 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
1734 (note_mouse_movement): Clear the mouse face and reset the pointer
1735 shape when the pointer goes outside the frame without grabbing.
1736 (mac_front_window): New function.
1737 (mac_window_to_frame): New macro.
1738 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
1739 (do_window_activate, do_window_deactivate, do_app_resume)
1740 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
1741 (do_zoom_window, mac_do_receive_drag, XTread_socket)
1742 (mac_check_for_quit_char): Use mac_front_window and/or
1743 mac_window_to_frame.
1744 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
1745 scroll-bar click event.
1746 (mac_define_frame_cursor): Change the pointer shape.
1747 (x_free_frame_resources): Reset tip_window to NULL when it is disposed.
1748 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
1749 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
1750 (do_window_update): Don't do anything if the updated window is the
1751 tooltip window.
1752 (do_mouse_moved): Handle mouse movement events here (previously in
1753 XTread_socket). Clear the mouse face if
1754 dpyinfo->mouse_face_hidden is set.
1755 (do_os_event, do_events): Remove (now in XTread_socket).
1756 (XTread_socket): Immediately return if interrupt_input_blocked.
1757 Loop until all the events in the queue are processed.
1758 Rearrange codes for mouse grabbing. Add tooltip support. Include the
1759 contents of do_os_event and do_events. Remove mouse movement
1760 handling (now in do_mouse_moved). Add the case where
1761 Vmouse_highlight has an integer value.
1762 (NewMacWindow): Remove.
1763 (make_mac_frame): Do what NewMacWindow previously did. Don't do
1764 excess initializations.
1765 (make_mac_terminal_frame): Previous initializations in
1766 make_mac_frame are moved here.
1767 (mac_initialize_display_info):
1768 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
1769
1770 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
1771 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
1772
17732004-05-29 Richard M. Stallman <rms@gnu.org>
1774
1775 * lisp.h (truncate_undo_list): Update decl.
1776
1777 * alloc.c (undo_outer_limit): New variable.
1778 (syms_of_alloc): Defvar it.
1779 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
1780
1781 * undo.c (truncate_undo_list): New arg LIMITSIZE.
1782
1783 * alloc.c (lisp_align_malloc): Check for base == 0
1784 regardless of HAVE_POSIX_MEMALIGN.
1785 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
1786
17872004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
1788
1789 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
1790 (marker_blocks_pending_free): Remove.
1791 (Fgarbage_collect): Sweep after cleaning up undo-lists.
1792 Mark the undo lists after claning them up.
1793 Don't free block in marker_blocks_pending_free.
1794 (mark_buffer): Don't mark undo_list.
1795 (gc_sweep): Sweep hash-tables and strings first.
1796 Do free marker blocks that are empty.
1797
17982004-05-28 Jim Blandy <jimb@redhat.com>
1799
1800 * regex.c (print_partial_compiled_pattern): Add missing 'break'
1801 after 'case wordend'. For symbeg and symend, print to stderr,
1802 like the other cases.
1803
18042004-05-28 Noah Friedman <friedman@splode.com>
1805
1806 * process.c (Fdelete_process): Do not call remove_process.
1807
18082004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
1809
1810 * alloc.c (struct backtrace): Remove.
1811 (Fgarbage_collect): Use the new mark_backtrace.
1812
1813 * eval.c (mark_backtrace): New function.
1814
1815 * minibuf.c (run_exit_minibuf_hook): New function.
1816 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
1817 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
1818
18192004-05-27 Kim F. Storm <storm@cua.dk>
1820
1821 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
1822 over display properties, e.g. images, that replace buffer text.
1823
18242004-05-25 Kim F. Storm <storm@cua.dk>
1825
1826 * alloc.c (marker_blocks_pending_free): New var.
1827 (gc_sweep): Store free marker blocks on that list.
1828 (Fgarbage_collect): Free them after undo-list cleanup.
1829
1830 * process.c (wait_reading_process_input): Check connect_wait_mask
1831 before actually accepting connection in case it has already been
1832 accepted due to recursion.
1833
18342004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
1835
1836 * coding.c (Fset_safe_terminal_coding_system_internal):
1837 Set suppress_error in safe_terminal_coding, not terminal_coding.
1838
18392004-05-22 Richard M. Stallman <rms@gnu.org>
1840
1841 * alloc.c (Fmake_string): Doc fix.
1842
1843 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
1844 and the alist pairs too.
1845
1846 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
1847
1848 * emacs.c (main): Update copyright year.
1849
1850 * fileio.c (Fread_file_name): Expand DIR if not absolute.
1851
1852 * insdel.c (del_range_2, replace_range): Don't write an anchor
1853 if the gap is empty.
1854
1855 * xdisp.c (try_scrolling): If scroll-up-aggressively or
1856 scroll-down-aggressively is small but positive, put point
1857 near the screen edge.
1858
18592004-05-22 Juanma Barranquero <lektu@terra.es>
1860
1861 * keymap.c (Fdefine_key): Doc fix.
1862
18632004-05-22 Kim F. Storm <storm@cua.dk>
1864
1865 * alloc.c (struct backtrace): Add debug_on_exit member.
1866 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
1867 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
1868 the removed cons cells.
1869 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
1870 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
1871 any cons cells pointing to unallocated stings.
1872 Do not lisp_free any marker blocks, as there may still be pointers
1873 to them from buffer undo lists at this stage of GC.
1874
1875 * keyboard.c (struct backtrace): Add debug_on_exit member.
1876 (Fcommand_execute): Clear it.
1877
18782004-05-20 Luc Teirlinck <teirllm@auburn.edu>
1879
1880 * intervals.c (lookup_char_property): Do not prematurely return nil.
1881
18822004-05-19 Jim Blandy <jimb@redhat.com>
1883
1884 Add support for new '\_<' and '\_>' regexp operators, matching the
1885 beginning and end of symbols.
1886
1887 * regex.c (enum syntaxcode): Add Ssymbol.
1888 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
1889 (re_opcode_t): New opcodes `symbeg' and `symend'.
1890 (print_partial_compiled_pattern): Print the new opcodes properly.
1891 (regex_compile): Parse the new operators.
1892 (analyse_first): Skip sym(beg|end) (they match only the empty string).
1893 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
1894 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
1895 (re_match_2_internal): Match symbeg and symend.
1896
1897 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
1898
18992004-05-19 Kim F. Storm <storm@cua.dk>
1900
1901 * .gdbinit (xsymbol): Fix last change.
1902
19032004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
1904
1905 * .gdbinit (xprintstr): New fun.
1906 (xstring, xprintsym): Use it.
1907
1908 * w32proc.c (create_child): Use INTMASK.
1909
1910 * alloc.c (Fgarbage_collect): Do all the marking before flushing
1911 unmarked elements of the undo list.
1912
19132004-05-18 David Ponce <david@dponce.com>
1914
1915 * print.c (print): Reset print_depth before to call print_object.
1916
19172004-05-18 Jason Rumney <jasonr@gnu.org>
1918
1919 * w32console.c: Prefix RIF functions with w32con_ to avoid
1920 namespace clash with functions in term.c and w32term.c.
1921
1922 * w32menu.c (add_menu_item, w32_menu_display_help)
1923 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
1924
1925 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
1926
19272004-05-18 Eli Zaretskii <eliz@gnu.org>
1928
1929 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
1930
1931 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
1932 with make_number.
1933 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
1934 with XINT.
1935
19362004-05-18 Kim F. Storm <storm@cua.dk>
1937
1938 * blockinput.h (INPUT_BLOCKED_P): New macros.
1939
1940 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
1941 (Ftop_level): Unblock input if blocked.
1942
1943 * buffer.h (GET_OVERLAYS_AT): New macro.
1944 * msdos.c (IT_note_mouse_highlight): Use it.
1945 * textprop.c (get_char_property_and_overlay): Use it.
1946 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
1947 * xfaces.c (face_at_buffer_position): Use it.
1948
1949 * print.c (print_object): Increase buf size.
1950
19512004-05-17 Jason Rumney <jasonr@gnu.org>
1952
1953 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
1954 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
1955 Lisp_Object using i member.
1956 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
1957 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
1958 consistently.
1959
1960 * w32proc.c (create_child): Use make_number instead of masking pid.
1961
1962 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
1963 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
1964 Use EQ to compare Lisp_Objects.
1965 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
1966
1967 * w32term.c (w32_num_mouse_buttons): Rename from
1968 Vw32_num_mouse_buttons and make it an int.
1969
1970 * w32.c (init_environment): Use it.
1971
1972 * w32fns.c (w32_wnd_proc): Likewise.
1973
1974 * w32proc.c (w32_pipe_read_delay): Rename from
1975 Vw32_pipe_read_delay and make it an int.
1976
1977 * w32.c (_sys_read_ahead): Use it.
1978
1979 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
1980
1981 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
1982
1983 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
1984 (key_event): Don't mix Lisp_Object and int.
1985
1986 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
1987
1988 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
1989 modifiers in language change event.
1990
19912004-05-17 Kim F. Storm <storm@cua.dk>
1992
1993 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
1994 Such objects may be freed markers which still exist on an undo list.
1995
19962004-05-16 Juanma Barranquero <lektu@terra.es>
1997
1998 * data.c (Fset_default): Make argument names match their use in
1999 docstring.
2000
20012004-05-15 Andreas Schwab <schwab@suse.de>
2002
2003 * emacs.c (gdb_array_mark_flag): Define.
2004 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
2005
20062004-05-15 Eli Zaretskii <eliz@gnu.org>
2007
2008 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
2009 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
2010 defined for the MS-DOS build.
2011
20122004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
2013
2014 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
2015
20162004-05-14 Kenichi Handa <handa@m17n.org>
2017
2018 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
2019
20202004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2021
2022 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
2023 section to frame.c section.
2024 (Fxw_display_color_p, Fx_file_dialog): Declare if
2025 HAVE_WINDOW_SYSTEM defined.
2026
2027 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
2028
2029 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
2030
2031 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
2032 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
2033 (XTread_socket): Fix int/Lisp_Object mixup.
2034 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
2035
2036 * macterm.h (struct frame, struct face, struct image)
2037 (display_x_get_resource, Fx_display_color_p)
2038 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
2039 Add prototypes.
2040
20412004-05-14 Kim F. Storm <storm@cua.dk>
2042
2043 * process.c (wait_reading_process_input): Make reentrant.
2044 Make Available and Connecting non-static. Save and restore value
2045 of waiting_for_user_input_p.
2046
20472004-05-13 Kim F. Storm <storm@cua.dk>
2048
2049 * keyboard.c (mark_kboards): Don't mark x and y members
2050 that are overloaded in selection request events.
2051
20522004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
2053
2054 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
2055
20562004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
2057
2058 * window.c (Fdisplay_buffer, Fsplit_window)
2059 (split-height-threshold): Doc fix.
2060
20612004-05-13 Juanma Barranquero <lektu@terra.es>
2062
2063 * xfaces.c (Ftty_supports_face_attributes_p)
2064 (Finternal_copy_lisp_face): Fix typo in docstring.
2065 (Finternal_get_lisp_face_attribute): Fix docstring.
2066
20672004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2068
2069 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
2070
20712004-05-11 Steven Tamm <steventamm@mac.com>
2072
2073 * macfns.c (Fx_create_frame): Default to using tool-bar by
2074 setting tool-bar-lines to 1 in default-frame-alist.
2075
20762004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2077
2078 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
2079 (xpm_get_color_table_v, xpm_make_color_table_h)
2080 (xpm_put_color_table_h, xpm_get_color_table_h)
2081 (xpm_str_to_color_key, xpm_load_image, xpm_load)
2082 (syms_of_image): Support XPM on Carbon Emacs. Does not
2083 depend on libXpm, but only supports XPM version 3 without extensions.
2084
20852004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2086
2087 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
2088 instead of FRAME_X_P
2089
20902004-05-11 Kim F. Storm <storm@cua.dk>
2091
2092 * process.c (read_process_output): Grow decoding_buf when needed;
2093 this could cause a crash in allocate_string and compact_small_strings.
2094
20952004-04-29 Jim Blandy <jimb@redhat.com>
2096
2097 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
2098 against proper opcode.
2099
21002004-05-10 Juanma Barranquero <lektu@terra.es>
2101
2102 * process.c (Fstart_process): Fix docstring.
2103
2104 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
2105 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
2106 (Fsplit_char, Fchar_charset): Make argument names match their use
2107 in docstring.
2108
21092004-05-10 Richard M. Stallman <rms@gnu.org>
2110
2111 * print.c (print_preprocess): Use being_printed, loop_count and
2112 halftail to detect overdeep nesting and cyclic cdr chains.
2113
21142004-05-10 Andreas Schwab <schwab@suse.de>
2115
2116 * lisp.h: Declare Fmake_symbolic_link.
2117
2118 * fileio.c (Frename_file): Remove extra argument in call to
2119 Fmake_symbolic_link.
2120
21212004-05-10 Kim F. Storm <storm@cua.dk>
2122
2123 * xdisp.c (calc_line_height_property): Use string position when
2124 object is a string.
2125
21262004-05-10 Kenichi Handa <handa@m17n.org>
2127
2128 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
2129 inhibit-modification-hooks to t temporarily before calling
2130 Ferase_buffer.
2131
2132 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
2133 inhibit-modification-hooks to t temporarily before calling
2134 Ferase_buffer.
2135
2136 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
2137 inhibit-modification-hooks to t temporarily before calling
2138 Ferase_buffer.
2139
2140 * fns.c (count_combining): Delete it.
2141 (concat): Don't check combining bytes.
2142
21432004-05-09 Jason Rumney <jasonr@gnu.org>
2144
2145 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
2146 (globals_of_w32fns): Set it.
2147
21482004-05-09 Piet van Oostrum <piet@cs.uu.nl>
2149
2150 * data.c (Fquo): Simplify.
2151
21522004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
2153
2154 * data.c (Fquo): If any argument is float, do the computation in
2155 floating point.
2156
21572004-05-08 Juanma Barranquero <lektu@terra.es>
2158
2159 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
2160 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
2161 Fix spelling of Emacs on docstring.
2162 (Fset_process_coding_system, Fprocess_coding_system)
2163 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
2164 Make argument names match their use in docstring.
2165 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
2166 Fix docstring.
2167
2168 * editfns.c (Finsert_buffer_substring): Make argument names match their
2169 use in docstring.
2170
2171 * syntax.c (Fmodify_syntax_entry): Fix docstring.
2172
21732004-05-07 Steven Tamm <steventamm@mac.com>
2174
2175 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
2176 around call to ReceiveEvent to avoid certain crashes.
2177
21782004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2179
2180 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
2181 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
2182 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
2183 Save/restore the current graphics port and device handle when
2184 drawing into an offscreen graphics world.
2185
2186 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
2187 (gif_load): Likewise.
2188
21892004-05-07 Juanma Barranquero <lektu@terra.es>
2190
2191 * window.c (Fset_window_buffer): Fix docstring.
2192
21932004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
2194
2195 * emacs.c (main) [VMS]: Fix var ref.
2196
21972004-05-06 Romain Francoise <romain@orebokech.com>
2198
2199 * data.c (Fsetq_default): Fix docstring.
2200
22012004-05-06 Jason Rumney <jasonr@gnu.org>
2202
2203 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
2204 to avoid name clash.
2205
22062004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2207
2208 * fileio.c (barf_or_query_if_file_exists): Use lstat.
2209 (Frename_file): Handle renaming of symlinks across file systems.
2210 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
2211
22122004-05-04 Kim F. Storm <storm@cua.dk>
2213
2214 * xdisp.c (Qtotal): New var.
2215 (syms_of_xdisp): Intern and staticpro it.
2216 (calc_line_height_property): New arg total. Set it if
2217 line-spacing property has format (total . VALUE).
2218 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
2219 Handle total line-spacing property.
2220
22212004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2222
2223 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
2224 "under" scroll bar when size/position changes.
2225
22262004-05-03 Jason Rumney <jasonr@gnu.org>
2227
2228 * makefile.nt: Remove.
2229
22302004-05-02 Eli Zaretskii <eliz@gnu.org>
2231
2232 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
2233 Avoid compiler warnings.
2234
2235 * Makefile.in (region-cache.o): Depend on config.h.
2236
22372004-05-02 Romain Francoise <romain@orebokech.com>
2238
2239 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
2240 with continuation lines, too.
2241
22422004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
2243
2244 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
2245
22462004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
2247
2248 * xdisp.c (calc_line_height_property): YAILOM (yet another
2249 int/Lisp_Object mixup).
2250
22512004-05-01 Eli Zaretskii <eliz@gnu.org>
2252
2253 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
2254 undo bad effect of pack(4) in some versions of system headers.
2255
22562004-05-01 Jason Rumney <jasonr@gnu.org>
2257
2258 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
2259
22602004-04-30 Kim F. Storm <storm@cua.dk>
2261
2262 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
2263 (syms_of_buffer) <cursor-type>: Doc fix.
2264
2265 * dispextern.h (struct it): Remove member use_default_face.
2266 Add members override_ascent, override_descent, override_boff.
2267
2268 * xdisp.c (init_iterator): Handle line-spacing float value.
2269 Initialize override_ascent member.
2270 (append_space_for_newline): Reset override_ascent.
2271 Remove use_default_face.
2272 (calc_line_height_property): New function to calculate value of
2273 line-height and line-spacing properties. Look at overlays, too.
2274 Set override_ascent, override_descent, override_boff members when
2275 using another face than the current face. Float values are now
2276 relative to the frame default font, by default; accept a cons
2277 of ratio and face name to specify value relative to a specific face.
2278 (x_produce_glyphs): Use calc_line_height_property.
2279 Use override_ascent etc. when set to handle different face heights.
2280 A negative line-spacing property value is interpreted as a total
2281 line height, rather than inter-line spacing.
2282 (note_mouse_highlight): Allocate room for 40 overlays initially.
2283
22842004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
2285
2286 * data.c (Fsubr_name): New fun.
2287 (syms_of_data): Defsubr it.
2288
22892004-04-29 Kim F. Storm <storm@cua.dk>
2290
2291 * xdisp.c (null_glyph_slice): New var.
2292 (append_glyph, append_composite_glyph, append_stretch_glyph):
2293 Use it to initialize glyph slice.
2294
22952004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
2296
2297 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
2298 (on_hot_spot_p): Make sure we always return a value.
2299 (Flookup_image_map): Remove unused var ix and iy.
2300 (note_mode_line_or_margin_highlight): Remove unused var `image'.
2301
23022004-04-27 Eli Zaretskii <eliz@gnu.org>
2303
2304 * msdos.c (init_environment): If one of the TMP... environment
2305 variables is set to a drive letter without a trailing slash,
2306 append a slash.
2307
23082004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
2309
2310 * editfns.c (lisp_time_argument): Provide externally.
2311
2312 * fileio.c (Fset_file_times): New function.
2313 (syms_of_fileio): Intern and staticpro it.
2314
23152004-04-27 Kim F. Storm <storm@cua.dk>
2316
2317 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
2318 header line strings.
2319
2320 * dispextern.h (struct it): New member use_default_face.
2321
2322 * xdisp.c (Qline_height): New variable.
2323 (syms_of_xdisp): Intern and staticpro it.
2324 (append_space_for_newline): Partially undo 2004-04-25 change;
2325 add default_face_p arg, and restore callers.
2326 Clear it->use_default_face after use.
2327 (x_produce_glyphs): Set default font for ascii char if
2328 it->use_default_font is set. Change line-spacing property to set
2329 just extra line spacing. Handle new line-height property.
2330
23312004-04-26 Andreas Schwab <schwab@suse.de>
2332
2333 * print.c (print_object): Print non-ascii characters in bool
2334 vector representation as octal escapes.
2335
2336 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
2337 * print.c (print_object): Use it instead of BITS_PER_CHAR for
2338 bool vectors.
2339 * lread.c (read1): Likewise.
2340 * alloc.c (Fmake_bool_vector): Likewise.
2341 * data.c (Faref, Faset): Likewise.
2342 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
2343 (mapcar1): Likewise.
2344
23452004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
2346
2347 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
2348
23492004-04-26 Miles Bader <miles@gnu.org>
2350
2351 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
2352
23532004-04-26 Juanma Barranquero <lektu@terra.es>
2354
2355 * buffer.c (Fpop_to_buffer): Fix docstring.
2356
23572004-04-26 Steven Tamm <steventamm@mac.com>
2358
2359 * lread.c (init_lread): Don't display missing lisp directory
2360 warnings with Carbon Emacs because self-contained bundled Emacs
2361 may be built without correct installation path.
2362
23632004-04-25 Kim F. Storm <storm@cua.dk>
2364
2365 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
2366
2367 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
2368
2369 * xdisp.c (append_space_for_newline): Rename from append_space.
2370 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
2371 (x_produce_glyphs): Handle line-spacing property on newline char.
2372 If value is t, adjust ascent and descent to fit current row height.
2373 If value is an integer or float, set extra_line_spacing to integer
2374 value, or to float value x current line height.
2375
23762004-04-23 Kenichi Handa <handa@m17n.org>
2377
2378 * fontset.c (Finternal_char_font): If POSITION is nil, return
2379 font for displaying CH with the default face.
2380
23812004-04-23 Juanma Barranquero <lektu@terra.es>
2382
2383 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
2384
23852004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
2386
2387 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
2388 Don't make assumptions about the relative place of i and val.
2389 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
2390
23912004-04-21 Kim F. Storm <storm@cua.dk>
2392
2393 * dispextern.h (struct glyph_slice): New struct.
2394 (struct glyph): New member slice.
2395 (GLYPH_SLICE_EQUAL_P): New macro.
2396 (GLYPH_EQUAL_P): Use it.
2397 (struct glyph_string): New member slice.
2398 (struct it_slice): New struct.
2399 (struct it): New member slice, add member to stack too.
2400 New member constrain_row_ascent_descent_p.
2401 (image_ascent): Add prototype.
2402
2403 * dispnew.c (buffer_posn_from_coords): Return full image width
2404 and height even for image slices (posn is relative to full image).
2405 (marginal_area_string): Adjust x0,y0 for image slice.
2406
2407 * image.c (image_ascent): Add slice arg; calculate ascent for
2408 image slice (or full image).
2409
2410 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
2411 (syms_of_keyboard): Defsubr them.
2412
2413 * lisp.h (pos_visible_p): Fix prototype.
2414
2415 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
2416 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2417 (x_draw_image_foreground, x_draw_image_relief)
2418 (x_draw_image_foreground_1, x_draw_image_glyph_string):
2419 Draw sliced images.
2420
2421 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
2422 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2423 (x_draw_image_foreground, x_draw_image_relief)
2424 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
2425 Draw sliced images.
2426
2427 * w32term.h (image_ascent): Remove prototype.
2428
2429 * window.c (Fpos_visible_in_window_p): Return pixel position if
2430 PARTIALLY arg is non-nil. Simplify. Doc fix.
2431 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
2432 to return/set vscroll in pixels.
2433
2434 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
2435
2436 * xdisp.c (Qslice): New variable.
2437 (syms_of_xdisp): Intern and staticpro it.
2438 (pos_visible_p): Return pixel position in new x and y args.
2439 (init_iterator): Reset it->slice info.
2440 (handle_display_prop): Parse (slice ...) property.
2441 (push_it, pop_it): Save/restore slice info.
2442 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
2443 force repositioning of tall row if window is vscrolled, as that
2444 would reset vscroll.
2445 (append_space): Set it->constrain_row_ascent_descent_p to avoid
2446 increasing row height if row is non-empty.
2447 (fill_image_glyph_string): Copy slice info.
2448 (take_vertical_position_into_account): Simplify.
2449 (produce_image_glyph): Handle iterator slice info, setup glyph
2450 slice info. Do not force minimum line height.
2451 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
2452 do not increase height (ascent/descent) of non-empty row when
2453 adding normal character glyph; instead reduce glyph ascent/descent
2454 appropriately; if row is higher than current glyph, adjust glyph
2455 descent/ascent to reposition glyph within the existing row.
2456 Likewise, when char is newline, only set ascent/descent if row is
2457 currently empty.
2458 (note_mouse_highlight): Handle hotspots with sliced image.
2459
2460 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
2461 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2462 (x_draw_image_foreground, x_draw_image_relief)
2463 (x_draw_image_foreground_1, x_draw_image_glyph_string):
2464 Draw sliced images.
2465
2466 * xterm.h (image_ascent): Remove prototype.
2467
24682004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
2469
2470 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
2471
24722004-04-20 John Paul Wallington <jpw@gnu.org>
2473
2474 * fns.c (Fassoc, Feql): Fix indentation.
2475
2476 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
2477
24782004-04-19 John Paul Wallington <jpw@gnu.org>
2479
2480 * fns.c (Feql): New function.
2481 (syms_of_fns): Defsubr it.
2482
24832004-04-18 Jason Rumney <jasonr@gnu.org>
2484
2485 * w32select.c (Fw32_set_clipboard_data): Get sequence number
2486 after closing the clipboard.
2487
24882004-04-16 Luc Teirlinck <teirllm@auburn.edu>
2489
2490 * buffer.c (Fbuffer_base_buffer): Doc fix.
2491
24922004-04-17 Kim F. Storm <storm@cua.dk>
2493
2494 * keymap.c (Fkey_description): Add optional PREFIX arg.
2495 Combine prefix with KEYS to make up the full key sequence to describe.
2496 Correlate meta_prefix_char and following (simple) key to describe
2497 as meta modifier. All callers changed.
2498 (describe_map): Rename arg `keys' to `prefix'. Remove local
2499 `elt_prefix' var. Use Fkey_description with prefix instead of
2500 elt_prefix combined with Fsingle_key_description.
2501 (describe_vector): Declare static. Replace arg `elt_prefix' with
2502 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
2503 if !KEYMAP_P. Use Fkey_description with prefix instead of
2504 Fsingle_key_description.
2505
2506 * keymap.h (Fkey_description): Fix prototype.
2507 (describe_vector): Remove prototype.
2508
2509 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
2510
2511 * image.c (PNG_BG_COLOR_SHIFT): Remove.
2512 (png_load): Fix calculation of transparent background color on X
2513 and W32 platforms.
2514
25152004-04-16 Juanma Barranquero <lektu@terra.es>
2516
2517 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
2518 not too large before computing how much to scroll.
2519
25202004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
2521
2522 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
2523
25242004-04-14 Luc Teirlinck <teirllm@auburn.edu>
2525
2526 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
2527 Add hyperlink to Elisp manual to the docstring.
2528
25292004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
2530
2531 * callint.c (fix_command): Use XDCR.
2532
25332004-04-14 Nick Roberts <nick@nick.uklinux.net>
2534
2535 * window.c (Fget_lru_window): Doc fix.
2536
25372004-04-14 Kim F. Storm <storm@cua.dk>
2538
2539 * editfns.c (Fformat): Fix allocation size of precision array.
2540
2541 * dispnew.c (update_window): Only set changed_p if
2542 scrolling_window actually did scroll.
2543 (scrolling_window): Only return 1 if we actually did scroll.
2544
2545 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
2546 height to glyph height when cursor row is not fully visible.
2547 (make_cursor_line_fully_visible): Add FORCE_P arg to return
2548 failure in case row is higher than window. Callers changed.
2549 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
2550 Try to scroll partially visible, higher-than-window cursor row.
2551 (redisplay_window): Always try to scroll partially visible,
2552 higher-than-window cursor row - both initially and again with
2553 centering_position = 0.
2554 Clear desired matrix before retrying with centering_position = 0.
2555
25562004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
2557
2558 * syntax.c (scan_lists): Simplify backward string scan.
2559 Fix off-by-one boundary check for string and comment fences.
2560
25612004-04-13 Joe Buehler <jbuehler@hekimian.com>
2562
2563 * sheap.c, unexcw.c: New files.
2564
25652004-04-12 Luc Teirlinck <teirllm@auburn.edu>
2566
2567 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
2568 base buffer has been killed. Correct the error message if the
2569 base buffer does not exist.
2570
25712004-04-12 Joe Buehler <jbuehler@hekimian.com>
2572
2573 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
2574 Cygwin itself. Add support for Xaw3d scrollbars.
2575
2576 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
2577
2578 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
2579
2580 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
2581 before Cygwin unexec.
2582
2583 * Makefile.in: Link changes for Cygwin unexec() support.
2584
25852004-04-12 Andreas Schwab <schwab@suse.de>
2586
2587 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
2588
25892004-04-11 Luc Teirlinck <teirllm@auburn.edu>
2590
2591 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
2592 IGNORE argument equals NAME. Doc fix.
2593
25942004-04-11 Masatake YAMATO <jet@gyve.org>
2595
2596 * buffer.c (fix_start_end_in_overlays): Make overlays
2597 empty if they are backwards.
2598
25992004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
2600
2601 * xfaces.c (face_color_supported_p): Fix compilation without X11.
2602
26032004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
2604
2605 * doc.c (Fsnarf_documentation): Ignore new file name entries.
2606
26072004-04-06 Kim F. Storm <storm@cua.dk>
2608
2609 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
2610 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
2611
2612 * w32term.c (w32_read_socket): Set mouse_face_hidden after
2613 clearing highlight.
2614
2615 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
2616
2617 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
2618 clearing highlight.
2619
2620 * indent.c (vmotion): Do not reserve one column for continuation
2621 marks on window frames.
2622
26232004-04-04 Eli Zaretskii <eliz@gnu.org>
2624
2625 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
2626 from GCC.
2627
26282004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
2629
2630 * .gdbinit-union: Remove.
2631
2632 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
2633 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
2634 ($nonvalbits): Remove.
2635 ($valmask): Set it by calling xreload to avoid redundancy.
2636
2637 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
2638 (gdb_emacs_intbits): Remove.
2639
26402004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2641
2642 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
2643
26442004-03-30 Kenichi Handa <handa@m17n.org>
2645
2646 * editfns.c (Fformat): Fix initialization of the array info.
2647
26482004-03-30 Kim F. Storm <storm@cua.dk>
2649
2650 * xterm.c (x_mouse_click_focus_ignore_position): New var.
2651 (syms_of_xterm): DEFVAR_BOOL it.
2652 (ignore_next_mouse_click_timeout): New var.
2653 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
2654 Use it to filter mouse clicks following focus event.
2655
26562004-03-29 David Ponce <david@dponce.com>
2657
2658 * callint.c (Fcall_interactively): Fix last change.
2659
26602004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
2661
2662 * eval.c (Fcommandp): Simplify.
2663
2664 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
2665 Extend to handle all kinds of functions.
2666
2667 * lisp.h (Finteractive_form): Declare.
2668
2669 * callint.c (Fcall_interactively): Use it.
2670
26712004-03-26 Kim F. Storm <storm@cua.dk>
2672
2673 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
2674 to catch errors in calc_pixel_width_or_height during redisplay.
2675
26762004-03-26 Masatake YAMATO <jet@gyve.org>
2677
2678 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
2679
2680 * lisp.h (fix_start_end_in_overlays): Likewise.
2681
2682 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
2683
2684 * editfns.c (Ftranspose_regions): Likewise.
2685
26862004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2687
2688 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
2689
26902004-03-19 Richard M. Stallman <rms@gnu.org>
2691
2692 * s/sol2-6.h: Delete previous change.
2693
26942004-03-19 Kim F. Storm <storm@cua.dk>
2695
2696 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
2697 to_charpos corresponds to newline in right fringe. Use local
2698 BUFFER_POS_REACHED_P macro.
2699
27002004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2701
2702 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
2703 to compile on non-window system.
2704
27052004-03-19 Kim F. Storm <storm@cua.dk>
2706
2707 * dispextern.h (calc_pixel_width_or_height): Add prototype.
2708
2709 * image.c (Qcenter): Move to xdisp.c.
2710
2711 * xdisp.c (Qcenter): Declare here.
2712 (syms_of_xdisp): Intern and staticpro it.
2713 (handle_single_display_prop): Allow space display property on all
2714 platforms.
2715 (display_mode_line): Set mode_line_p before displaying line.
2716 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
2717 handling. Remove complex cases for fringes and scroll-bars.
2718 Add left, right, and center alignment positions. Add text (area)
2719 width/height. Return width or height for image specs.
2720 (produce_stretch_glyph): Improve handling of :align-to. Is now
2721 relative to left of text area by default, but other base offsets
2722 can be specified -- also for text lines.
2723
2724 * term.c (produce_glyphs): Handle IT_STRETCH.
2725 (produce_stretch_glyph): New function to handle space width and
2726 align-to display properties on non-window systems.
2727
27282004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
2729
2730 * fileio.c (Fread_file_name): Set completion-ignore-case for
2731 case-insensitive systems.
2732
27332004-03-14 Masatake YAMATO <jet@gyve.org>
2734
2735 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
2736 when keymap and cursor are setup.
2737
27382004-03-14 Steven Tamm <steventamm@mac.com>
2739
2740 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
2741
27422004-03-14 Kim F. Storm <storm@cua.dk>
2743
2744 * dispextern.h (x_find_image_file): Add prototype.
2745
2746 * image.c (x_find_image_file): Make extern.
2747
2748 * xfns.c (x_find_image_file): Remove prototype.
2749
27502004-03-13 Eli Zaretskii <eliz@gnu.org>
2751
2752 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
2753
2754 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
2755
27562004-03-12 Richard M. Stallman <rms@gnu.org>
2757
2758 * fns.c (internal_equal): New arg PROPS controls comparing
2759 text properties. All callers changed.
2760 (Fequal_including_properties): New function.
2761 (syms_of_fns): defsubr it.
2762
27632004-03-12 Kim F. Storm <storm@cua.dk>
2764
2765 Fix image support on MAC. From YAMAMOTO Mitsuharu.
2766
2767 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
2768 (image_background, image_background_transparent): Fix prototypes.
2769
2770 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
2771
2772 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
2773 (x_query_font, x_find_ccl_program, x_set_window_size)
2774 (x_make_frame_visible, mac_initialize, XCreatePixmap)
2775 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
2776 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
2777
2778 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
2779 (x_query_font, x_find_ccl_program, x_set_window_size)
2780 (x_make_frame_visible, mac_initialize, XCreatePixmap)
2781 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
2782 (mac_draw_line_to_pixmap): Add prototypes.
2783
27842004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2785
2786 * macterm.c (XTread_socket): Fix mouse click on tool bar.
2787
27882004-03-11 Kim F. Storm <storm@cua.dk>
2789
2790 * dispextern.h: Move image related prototypes from xfns.c section
2791 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
2792 HAVE_X_WINDOWS.
2793
2794 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
2795 Move gtkutil.o to new GTK_OBJ list.
2796 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
2797 (GTK_OBJ) [USE_GTK]: New declaration.
2798 (obj): Add $(GTK_OBJ) to list.
2799
28002004-03-11 Steven Tamm <steventamm@mac.com>
2801
2802 * image.c [MAC_OSX]: Include sys/stat.h
2803
2804 * macfns.c (syms_of_macfns): Remove definitions of things now
2805 defined in image.c
2806
28072004-03-11 Kim F. Storm <storm@cua.dk>
2808
2809 The following changes consolidates the identical/similar image
2810 support code previously found in xfns.c, w32fns.c, and macfns.c
2811 into a new file image.c.
2812
2813 * makefile.w32-in (OBJ1): Add image.o.
2814 ($(BLD)/image.$(O)): Add dependencies.
2815
2816 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
2817 (image.o): Add dependencies.
2818
2819 * image.c: New file with consolidated image support code.
2820 (COLOR_TABLE_SUPPORT): New define to control whether
2821 color table support is available (X only).
2822 (Bitmap_Record): Common name for x_bitmap_record,
2823 w32_bitmap_record, and mac_bitmap_record.
2824 (XImagePtr): Common name for pointer to XImage or equivalent.
2825 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
2826 to XImagePtr on X+MAC, and to HDC on W32.
2827 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
2828 (NO_PIXMAP): Common name for "None" or equivalent.
2829 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
2830 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
2831 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
2832 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
2833 Define with suitable equivalents on W32 and MAC for code sharing.
2834 (XDrawLine): Define on MAC for code sharing.
2835 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
2836 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
2837 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2838 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2839 (x_reference_bitmap, x_create_bitmap_from_data)
2840 (x_create_bitmap_from_file, x_destroy_bitmap)
2841 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2842 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
2843 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2844 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2845 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2846 (define_image_type, lookup_image_type, valid_image_p)
2847 (image_error, enum image_value_type, struct image_keyword)
2848 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2849 (make_image, free_image, prepare_image_for_display, image_ascent)
2850 (four_corners_best, image_background, image_background_transparent)
2851 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2852 (make_image_cache, free_image_cache, clear_image_cache)
2853 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2854 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2855 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2856 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
2857 (init_image_func_pointer, image_load_quartz2d)
2858 (struct ct_color, init_color_table, free_color_table)
2859 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2860 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2861 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2862 (x_disable_image, x_build_heuristic_mask)
2863 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2864 (TIFF support, GIF support, Ghostscript support): Consolidate image
2865 code from xfns.c, w32fns.c, and macfns.c.
2866 (syms_of_image): Consolidate image related symbol setup here.
2867 (init_image): Consolidate image related initializations here.
2868
2869 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
2870 and init_image. Remove call to init_xfns.
2871
2872 * macterm.h (struct mac_bitmap_record): Add file member.
2873 Not currently used, but simplifies code sharing.
2874
2875 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2876 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2877 (x_reference_bitmap, x_create_bitmap_from_data)
2878 (x_create_bitmap_from_file, x_destroy_bitmap)
2879 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2880 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
2881 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2882 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2883 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2884 (define_image_type, lookup_image_type, valid_image_p)
2885 (image_error, enum image_value_type, struct image_keyword)
2886 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2887 (make_image, free_image, prepare_image_for_display, image_ascent)
2888 (four_corners_best, image_background, image_background_transparent)
2889 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2890 (make_image_cache, free_image_cache, clear_image_cache)
2891 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2892 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2893 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2894 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
2895 (init_image_func_pointer, image_load_quartz2d)
2896 (struct ct_color, init_color_table, free_color_table)
2897 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2898 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2899 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2900 (x_disable_image, x_build_heuristic_mask)
2901 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2902 (TIFF support, GIF support, Ghostscript support): Merge with image
2903 code from xfns.c and macfns.c into image.c.
2904 (syms_of_xfns): Move image related symbols to image.c.
2905 (init_external_image_libraries, init_xfns): Remove; initialization
2906 moved to init_image in image.c.
2907
2908 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2909 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2910 (x_reference_bitmap, x_create_bitmap_from_data)
2911 (x_create_bitmap_from_file, x_destroy_bitmap)
2912 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2913 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2914 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2915 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2916 (define_image_type, lookup_image_type, valid_image_p)
2917 (image_error, enum image_value_type, struct image_keyword)
2918 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2919 (make_image, free_image, prepare_image_for_display, image_ascent)
2920 (four_corners_best, image_background, image_background_transparent)
2921 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2922 (make_image_cache, free_image_cache, clear_image_cache)
2923 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2924 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2925 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2926 (struct ct_color, init_color_table, free_color_table)
2927 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2928 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2929 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2930 (x_disable_image, x_build_heuristic_mask)
2931 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2932 (TIFF support, GIF support, Ghostscript support): Merge with image
2933 code from xfns.c and macfns.c into image.c.
2934 (syms_of_xfns): Move image related symbols to image.c.
2935 (init_external_image_libraries, init_xfns): Remove; initialization
2936 moved to init_image in image.c.
2937
2938 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2939 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2940 (x_reference_bitmap, x_create_bitmap_from_data)
2941 (x_create_bitmap_from_file, x_destroy_bitmap)
2942 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2943 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2944 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2945 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2946 (define_image_type, lookup_image_type, valid_image_p)
2947 (image_error, enum image_value_type, struct image_keyword)
2948 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2949 (make_image, free_image, prepare_image_for_display, image_ascent)
2950 (four_corners_best, image_background, image_background_transparent)
2951 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2952 (make_image_cache, free_image_cache, clear_image_cache)
2953 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2954 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2955 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2956 (struct ct_color, init_color_table, free_color_table)
2957 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2958 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2959 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2960 (x_disable_image, x_build_heuristic_mask)
2961 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2962 (TIFF support, GIF support, Ghostscript support): Merge with
2963 w32fns.c and macfns.c image code into image.c.
2964 (syms_of_xfns): Move image related symbols to image.c.
2965 (init_xfns): Remove; initialization moved to init_image in image.c.
2966
2967 * lisp.h (syms_of_image, init_image): Add protoypes.
2968 (init_xfns): Remove prototype.
2969
2970 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2971 (x_reference_bitmap, x_create_bitmap_from_data)
2972 (x_create_bitmap_from_file, x_destroy_bitmap)
2973 (x_create_bitmap_mask): Move prototypes from dispextern.h.
2974 (gamma_correct) [MAC_OS]: Add prototype.
2975
2976 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2977 (x_reference_bitmap, x_create_bitmap_from_data)
2978 (x_create_bitmap_from_file, x_destroy_bitmap)
2979 (x_create_bitmap_mask): Move prototypes to dispextern.h.
2980
29812004-03-09 Kenichi Handa <handa@etlken2>
2982
2983 * coding.c (decode_coding_emacs_mule): Handle insufficent source
2984 correctly.
2985
29862004-03-04 Richard M. Stallman <rms@gnu.org>
2987
2988 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
2989
2990 * window.c (Fdisplay_buffer): Doc fix.
2991
2992 * buffer.c (Fpop_to_buffer): Doc fix.
2993
29942004-03-03 Kim F. Storm <storm@cua.dk>
2995
2996 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
2997
29982004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
2999
3000 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
3001
30022004-03-02 Richard M. Stallman <rms@gnu.org>
3003
3004 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
3005
30062004-03-02 Kenichi Handa <handa@m17n.org>
3007
3008 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
3009
30102004-03-02 Kim F. Storm <storm@cua.dk>
3011
3012 * window.h (struct window): New member overlay_arrow_bitmap.
3013
3014 * window.c (make_window): Initialize overlay_arrow_bitmap.
3015
3016 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
3017 implement and integrate multiple overlay arrows with redisplay.
3018 (syms_of_xdisp): DEFVAR_LISP and initialize it.
3019 (last_arrow_position, last_arrow_string): Replace by properties.
3020 (Qlast_arrow_position, Qlast_arrow_string)
3021 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
3022 (syms_of_xdisp): Intern and staticpro them.
3023 (overlay_arrow_string_or_property, update_overlay_arrows)
3024 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
3025 (overlay_arrow_at_row): New functions for multiple overlay arrows.
3026 (redisplay_internal): Use them instead of directly accessing
3027 Voverlay_arrow_position etc. for multiple overlay arrows.
3028 (mark_window_display_accurate): Use update_overlay_arrows.
3029 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
3030 (try_window_id): Use overlay_arrows_changed_p.
3031 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
3032 (display_line): Use overlay_arrow_at_row to check multiple
3033 overlay arrows, and get relevant overlay-arrow-string and
3034 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
3035 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
3036 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
3037
3038 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
3039 (update_window_fringes): Remove unused code.
3040
30412004-03-01 Jason Rumney <jasonr@gnu.org>
3042
3043 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
3044
30452004-03-01 Juanma Barranquero <lektu@terra.es>
3046
3047 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
3048
3049 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
3050
30512004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3052
3053 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
3054 how many colors can be displayed.
3055
30562004-03-01 Kenichi Handa <handa@m17n.org>
3057
3058 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
3059 correctly.
3060
30612004-02-28 Kim F. Storm <storm@cua.dk>
3062
3063 * dispnew.c (update_window): Update header line also if there are
3064 no other changes in window (move code after set_cursor label).
3065
3066 * lisp.h (mark_window_display_accurate): Remove prototype.
3067
3068 * window.c (window_loop, Fforce_window_update): Force mode line
3069 updates by setting prevent_redisplay_optimizations_p and
3070 update_mode_lines.
3071
30722004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3073
3074 * xfns.c (x_window): Fix indentation.
3075
3076 * xterm.c (x_calc_absolute_position): Call x_real_positions
3077 to get WM window sizes and use those to calculate position.
3078 (x_set_offset): Remove code commented out.
3079
30802004-02-28 Miles Bader <miles@gnu.org>
3081
3082 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
3083
30842004-02-28 Kim F. Storm <storm@cua.dk>
3085
3086 * keyboard.c (kbd_buffer_store_event_hold): New function to store
3087 an event into kbd fifo, but with special handling of quit event;
3088 a quit event is saved for later, and further events are discarded
3089 until the saved quit event has been processed.
3090 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
3091 (gen_help_event): Store help event in kbd fifo.
3092 (NREAD_INPUT_EVENTS): Remove.
3093 (read_avail_input): Adapt to new read_socket_hook interface.
3094 Remove allocation and initialization of local input_event buffer,
3095 as read_socket_hook stores events directly in fifo. Allocate and
3096 initialize local hold_quit event to handle postponed quit event
3097 (and store it if set by kbd_buffer_store_event_hold).
3098
3099 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
3100 (gen_help_event): Fix prototype.
3101
3102 * macterm.c (XTread_socket): Remove bufp_r and
3103 numcharsp args. Add hold_quit arg.
3104 Rework to use just one, local, inev input_event. Store inev
3105 directly in fifo using kbd_buffer_store_event_hold.
3106
3107 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
3108 (read_input_waiting): Adapt to new read_socket_hook interface.
3109 Remove allocation and initialization of local input_event buffer,
3110 as read_socket_hook stores events directly in fifo. Allocate and
3111 initialize local hold_quit event to handle postponed quit event
3112 (and store it if set by kbd_buffer_store_event_hold).
3113
3114 * term.c (read_socket_hook): Fix arg list.
3115
3116 * termhooks.h (read_socket_hook): Fix prototype.
3117
3118 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
3119 numcharsp args. Add hold_quit arg.
3120 Rework to use just one, local, inev input_event. Store inev
3121 directly in fifo using kbd_buffer_store_event_hold.
3122
3123 * w32inevt.h (w32_console_mouse_position): Fix prototype.
3124
3125 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
3126 Add hold_quit arg. Rework to use just one, local, inev
3127 input_event. Store inev directly in fifo using
3128 kbd_buffer_store_event_hold. Update count in one place.
3129 Postpone call to gen_help_event until inev is stored; use new
3130 local do_help for this.
3131 Remove local emacs_event in handing of ButtonPress event; just use
3132 inev instead (so no reason to copy it later).
3133
3134 * xsmfns.c (x_session_check_input): Remove numchars arg.
3135
3136 * xterm.c (x_focus_changed, x_detect_focus_change):
3137 Remove numchars arg. Always store event into bufp arg.
3138 Return nothing. Callers changed accordingly.
3139 (glyph_rect): Simplify.
3140 (STORE_KEYSYM_FOR_DEBUG): New macro.
3141 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
3142 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
3143 (current_hold_quit) [USE_GTK]: Add.
3144 (event_handler_gdk): Adapt to new handle_one_xevent.
3145 (handle_one_xevent): Remove bufp_r and numcharsp args.
3146 Add hold_quit arg. Rework to use just one, local, inev
3147 input_event. Store inev directly in fifo using
3148 kbd_buffer_store_event_hold. Update count in one place.
3149 Postpone call to gen_help_event until inev is stored; use new
3150 local do_help for this.
3151 Simplify handling of keysyms (consolidate common code). Fix bug
3152 where count was updated with nchars instead of nbytes.
3153 Remove local emacs_event in handing of ButtonPress event; just use
3154 inev instead (so no reason to copy it later).
3155 Remove `out' label. Rename label `ret' to `done'; add various
3156 `goto done' to clarify code flow in deeply nested blocks.
3157 (x_dispatch_event): Simplify as handle_one_xevent now calls
3158 kbd_buffer_store_event itself.
3159 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
3160 arg. Call handle_one_xevent with new arglist. Store event from
3161 x_session_check_input in fifo.
3162 [USE_GTK]: Setup current_hold_quit.
3163 Decrement handling_signal before unblocking input.
3164 (x_initialize) [USE_GTK]: Initialize current_count.
3165
3166 * xterm.h (x_session_check_input): Fix prototype.
3167
31682004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3169
3170 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
3171
3172 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
3173 macgui.h).
3174
3175 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
3176
3177 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
3178 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
3179 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
3180 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
3181 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
3182 (Bitmap): Remove typedef.
3183 (Pixmap): Change int to GWorldPtr.
3184
3185 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
3186
3187 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
3188 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
3189 New #define to extract 16-bit depth color components from unsigned
3190 long representation.
3191 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
3192 colors used for masks.
3193 (struct mac_display_info): Add color_p. Remove n_cbits.
3194
3195 * macfns.c: Include sys/types.h and sys/stat.h.
3196 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
3197 Include QuickTime/QuickTime.h.
3198 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
3199 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
3200 functions defined in macterm.c.
3201 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
3202 (ZPixmap): New #define for compatibility with xfns.c.
3203 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
3204 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
3205 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
3206 New functions.
3207 (four_corners_best, x_create_x_image_and_pixmap)
3208 (x_destroy_x_image, unwind_create_frame, x_disable_image)
3209 (x_edge_detection, init_color_table, colors_in_color_table)
3210 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
3211 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
3212 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
3213 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
3214 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
3215 long mixup.
3216 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
3217 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
3218 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
3219 (x_set_cursor_type, Fxw_color_values, valid_image_p)
3220 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
3221 (x_alloc_image_color, clear_image_cache, lookup_image)
3222 (x_find_image_file, xbm_read_bitmap_file_data)
3223 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
3224 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
3225 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
3226 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
3227 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
3228 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
3229 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
3230 #if 0.
3231 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
3232 #if 0. Free white_relief.gc and black_relief.gc.
3233 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
3234 New functions (from xfns.c).
3235 (Fx_create_frame): Record unwind_create_frame.
3236 (Fxw_display_color_p): Use dpyinfo->color_p.
3237 (Fx_display_grayscale_p, Fx_display_planes): Don't use
3238 dpyinfo->n_cbits.
3239 (Fx_display_color_cells): Use dpyinfo->n_planes;
3240 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
3241 (Qheuristic, cross_disabled_images, emboss_matrix)
3242 (laplace_matrix): New variables (from xfns.c).
3243 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
3244 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
3245 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
3246 (image_background_transparent): New function (from xfns.c).
3247 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
3248 (image_load_quicktime): Add declaration.
3249 [MAC_OSX] (image_load_quartz2d): Likewise.
3250 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
3251 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
3252 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
3253 (xbm_load_image_from_file, x_laplace_read_row)
3254 (x_laplace_write_row, pbm_read_file): Remove functions.
3255 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
3256 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
3257 (colors_in_color_table): Sync with xfns.c (although not used).
3258 (lookup_rgb_color): Don't lookup color table. Just do gamma
3259 correction.
3260 (COLOR_INTENSITY): New #define (from xfns.c).
3261 (x_disable_image): New function (from xfns.c).
3262 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
3263 (x_build_heuristic_mask): Sync with xfns.c.
3264 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
3265 (HAVE_PBM): Remove #ifdef.
3266 (pbm_load): Sync with xfns.c. Set img->width and img->height
3267 before IMAGE_BACKGROUND.
3268 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
3269 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
3270 Don't enclose with #if HAVE_PNG.
3271 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
3272 symbol _CGImageCreateWithPNGDataProvider is defined.
3273 Otherwise use image_load_quicktime.
3274 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
3275 [HAVE_PNG] (png_load): Sync with xfns.c.
3276 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
3277 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
3278 HAVE_JPEG.
3279 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
3280 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
3281 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
3282 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
3283 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
3284 (tiff_image_p, tiff_load): Don't enclose declarations with #if
3285 HAVE_TIFF.
3286 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
3287 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
3288 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
3289 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
3290 New functions (from xfns.c).
3291 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
3292 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
3293 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
3294 Don't enclose with #if HAVE_GIF.
3295 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
3296 animated gif. Otherwise use image_load_quicktime.
3297 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
3298 gif_DrawText to avoid conflict with QuickdrawText.h.
3299 [HAVE_GIF] (gif_load): Sync with xfns.c.
3300 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
3301 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
3302 Ghostscript is not supported yet).
3303 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
3304 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
3305 cross_disabled_images (from xfns.c). Remove #if 0 for supported
3306 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
3307 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
3308 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
3309 HAVE_PNG. Call EnterMovies to support animated gifs.
3310 Call init_image_func_pointer to bind a symbol
3311 _CGImageCreateWithPNGDataProvider if it is defined.
3312
3313 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
3314 (x_draw_bar_cursor): Sync declaration with xterm.c.
3315 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
3316 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
3317 graphics).
3318 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
3319 (mac_draw_line_to_pixmap, XCreatePixmap)
3320 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
3321 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
3322 New functions.
3323 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
3324 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
3325 Cast bits to char *.
3326 (reflect_byte): New function (from w32fns.c).
3327 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
3328 due to byte alignment.
3329 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
3330 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
3331 (XSetForeground): Remove static (now used in macfns.c).
3332 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
3333 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
3334 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
3335 (x_draw_glyph_string_box, x_draw_image_foreground)
3336 (x_draw_image_foreground_1, x_draw_image_glyph_string)
3337 (x_draw_stretch_glyph_string, x_draw_glyph_string)
3338 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
3339 Sync with xterm.c.
3340 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
3341 than the xterm.c version when a strictly horizontal or vertical
3342 line is drawn.
3343 (XTset_terminal_window): Add static.
3344 (x_make_frame_visible): Add UNBLOCK_INPUT.
3345 (x_free_frame_resources): New funcion (from xterm.c).
3346 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
3347 occurs in tool bar area.
3348 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
3349 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
3350 Initialize image cache.
3351 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
3352 Enclose unused functions with #if 0.
3353 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
3354 (decode_mac_font_name): New function to apply code conversions
3355 from a mac font name to an XLFD font name according to its script code.
3356 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
3357 font name to a mac font name according to REGISTRY and ENCODING fields.
3358 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
3359 whose name starts with `.'.
3360 (init_font_name_table): Use decode_mac_font_name. Add both
3361 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
3362 of a font is smJapanese.
3363 (mac_do_list_fonts): New function to list fonts that match a given
3364 pattern.
3365 (x_list_fonts, XLoadQueryFont): Use it.
3366 (XLoadQueryFont): Set rbearing field for each variable width
3367 character to avoid needless redraw.
3368 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
3369
33702004-02-26 Kim F. Storm <storm@cua.dk>
3371
3372 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
3373 as read_socket_hook handler on X aborts if buffer is too small
3374 and W32 handler doesn't always check buffer limit.
3375
3376 * xdisp.c (handle_single_display_prop): Handle left-fringe and
3377 right-fringe similar to a display margin image. Specifically,
3378 the characters having the fringe prop are no longer shown, and
3379 we use IT_IMAGE/next_element_from_image with image_id = -1 to
3380 do this. Set fringe bitmap face_id in it->face_id.
3381 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
3382 still realize it->face (i.e. the fringe bitmap face).
3383
33842004-02-25 Miles Bader <miles@gnu.org>
3385
3386 * xdisp.c (check_it): Check string/string_pos consistency.
3387 (init_iterator): Initialize string-related fields properly.
3388
33892004-02-11 Miles Bader <miles@gnu.org>
3390
3391 * xdisp.c (produce_image_glyph): Force negative descents to zero.
3392
33932004-02-10 Miles Bader <miles@gnu.org>
3394
3395 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
3396 BLOCK_INPUT can be nested, so it doesn't make much sense.
3397
33982004-02-24 Michael Mauger <mmaug@yahoo.com>
3399
3400 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
3401 (xbm_read_bitmap_data): Use unsigned char for image data.
3402
34032004-02-23 Luc Teirlinck <teirllm@auburn.edu>
3404
3405 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
3406
34072004-02-22 Jason Rumney <jasonr@gnu.org>
3408
3409 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
3410 correctly over other bitmaps.
3411
34122004-02-21 Eli Zaretskii <eliz@gnu.org>
3413
3414 * emacs.c (USAGE1): Split into two halves.
3415 (USAGE2): Second half of the old USAGE1.
3416 (USAGE3): Rename from USAGE2.
3417 (USAGE4): Rename from USAGE3.
3418
34192004-02-21 Juri Linkov <juri@jurta.org>
3420
3421 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
3422 Fix --multibyte. Move --help, --version to USAGE2. Add alias
3423 --file. Fix -f, -l. Sort options. Untabify.
3424 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
3425
34262004-02-19 Luc Teirlinck <teirllm@auburn.edu>
3427
3428 * category.c (Fdefine_category, Fcategory_docstring)
3429 (Fget_unused_category, Fset_category_table)
3430 (Fcategory_set_mnemonics): Doc fixes.
3431
34322004-02-20 Kim F. Storm <storm@cua.dk>
3433
3434 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
3435 The following changes are relative to the 2004-01-21 revision.
3436 (NREAD_INPUT_EVENTS): Define as max number of input events to read
3437 in one call to read_socket_hook. Value is 8.
3438 (read_avail_input): Separate and rework handling of read_socket_hook
3439 and non-read_socket_hook cases. Use smaller input_event buffer
3440 in read_socket_hook case, and repeat if full buffer is read.
3441 Use new local variable 'discard' to skip input after C-g.
3442 In non-read_socket_hook case, just use a single input_event, and
3443 call kbd_buffer_store_event on the fly for each character.
3444
34452004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
3446
3447 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
3448 Remove unused `gu' alternative.
3449
34502004-02-19 Andreas Schwab <schwab@suse.de>
3451
3452 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
3453 warning.
3454
34552004-02-18 Kim F. Storm <storm@cua.dk>
3456
3457 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
3458 Fix last change.
3459
34602004-02-17 Kim F. Storm <storm@cua.dk>
3461
3462 * xdisp.c (fast_find_position): Fix return value of new version;
3463 it was inverted compared to the 21.1 version.
3464 (get_window_cursor_type): Don't look at glyph if NULL.
3465 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
3466
3467 * keyboard.c: Rework previous change; it didn't consider that the
3468 buf array was allocated on the stack.
3469 (prev_read): Remove variable.
3470 (read_avail_input_buf): New static event buffer array.
3471 (in_read_avail_input): New static variable to handle re-entrancy.
3472 (read_avail_input): Change buf to pinter to read_avail_input_buf.
3473 Use in_read_avail_input to handle re-entrance; when re-entered,
3474 fully initialize and use tmp_buf array instead of read_avail_input_buf.
3475 Do not initialize read_avail_input_buf in full here; instead assume it
3476 is always cleared on entry. To ensure that, we clear (just) the
3477 entries that were used before we return.
3478 (init_keyboard): Initialize read_avail_input_buf here.
3479
34802004-02-16 Jesper Harder <harder@ifa.au.dk>
3481
3482 * cmds.c (Fend_of_line): Doc fix.
3483
34842004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
3485
3486 * keyboard.c (prev_read): New static variable.
3487 (read_avail_input): Use it to zero out only those slots in buf[]
3488 that were used last time we were called.
3489
34902004-02-16 Eli Zaretskii <eliz@gnu.org>
3491
3492 * Makefile.in (obj): Move fringe.o from here...
3493 (XOBJ, MAC_OBJ): ...to here.
3494
34952004-02-16 Stephen Eglen <stephen@gnu.org>
3496
3497 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
3498
34992004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
3500
3501 * data.c (Fbyteorder):
3502 * fringe.c (Fdefine_fringe_bitmap):
3503 * xdisp.c (handle_single_display_prop):
3504 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
3505
35062004-02-16 Jason Rumney <jasonr@gnu.org>
3507
3508 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
3509
35102004-02-15 Steven Tamm <steventamm@mac.com>
3511
3512 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
3513 controlling emulation of a three button mouse with option and
3514 command keys.
3515 (Qreverse, mac_get_enumlated_btn): Handle the emulation
3516 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
3517
35182004-02-15 Kim F. Storm <storm@cua.dk>
3519
3520 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
3521
3522 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
3523 Perform byte-swapping.
3524
35252004-02-14 Kim F. Storm <storm@cua.dk>
3526
3527 * dispextern.h (struct draw_fringe_bitmap_params): Change member
3528 bits from char to short to facilitate wider bitmaps.
3529 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
3530 member.
3531
3532 * fringe.c (struct fringe_bitmap): Change member bits from char to
3533 short to facilitate 16 bits wide bitmaps. Modify all standard
3534 bitmaps accordingly.
3535 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
3536 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
3537 (draw_fringe_bitmap): Ditto.
3538 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
3539 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
3540 handle up to 16 bits wide bitmaps.
3541 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
3542 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
3543
3544 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
3545 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
3546 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
3547
3548 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
3549 so it is no longer necessary to expand them here.
3550
3551 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
3552
35532004-02-12 Kim F. Storm <storm@cua.dk>
3554
3555 * window.c (Fwindow_fringes): Doc fix.
3556
35572004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3558
3559 * xselect.c (x_get_foreign_selection): Add new optional parameter
3560 time_stamp.
3561 (Fx_get_selection_internal): Ditto, pass time_stamp to
3562 x_get_foreign_selection.
3563
3564 * data.c (Fbyteorder): New function.
3565
35662004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3567
3568 * atimer.c: Move include stdio.h to same place as in other files.
3569
3570 * region-cache.c: Ditto.
3571
3572 * sysdep.c: Ditto.
3573
3574 * xfaces.c: Ditto.
3575
35762004-02-09 Sam Steingold <sds@gnu.org>
3577
3578 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
3579
35802004-02-09 Kim F. Storm <storm@cua.dk>
3581
3582 * fringe.c: New file. Move original fringe related declarations
3583 and code from dispextern.h and xdisp.c here.
3584 Rework code to support user defined fringe bitmaps, redefining
3585 standard bitmaps, ability to overlay user defined bitmap with
3586 overlay arrow bitmap, and add faces to bitmaps.
3587 (Voverflow_newline_into_fringe): Declare here.
3588 (enum fringe_bitmap_align): New enum.
3589 (..._bits): All bitmaps are now defined without bitswapping; that
3590 is now done in init_fringe_once (if necessary).
3591 (standard_bitmaps): New array with specifications for the
3592 standard fringe bitmaps.
3593 (fringe_faces): New array.
3594 (valid_fringe_bitmap_id_p): New function.
3595 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
3596 (draw_fringe_bitmap): New function which draws fringe bitmap,
3597 possibly overlaying bitmap with cursor in right fringe or the
3598 overlay arrow in the left fringe.
3599 (update_window_fringes): Do not handle overlay arrow here.
3600 Compare and copy fringe bitmap faces.
3601 (init_fringe_bitmap): New function.
3602 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
3603 define and destroy user defined fringe bitmaps.
3604 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
3605 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
3606 (syms_of_fringe): New function. Defsubr new DEFUNs.
3607 DEFVAR_LISP Voverflow_newline_into_fringe.
3608 (init_fringe_once, init_fringe): New functions.
3609 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
3610
3611 * Makefile.in (obj): Add fringe.o.
3612 (fringe.o): New dependencies.
3613
3614 * dispextern.h (FRINGE_ID_BITS): New definition for number of
3615 bits allocated to hold a fringe number. Increase number of bits
3616 from 4 to 8 to allow user defined fringe bitmaps.
3617 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
3618 left_user_fringe_face_id, right_user_fringe_bitmap,
3619 right_user_fringe_face_id.
3620 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
3621 Move to new file fringe.c.
3622 (MAX_FRINGE_BITMAPS): Define here.
3623 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
3624 and overlay_p. Change member which to int.
3625 (struct redisplay_interface): New members define_fringe_bitmap
3626 and destroy_fringe_bitmap.
3627 (valid_fringe_bitmap_id_p): Add prototype.
3628 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
3629
3630 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
3631 arrows.
3632 (update_frame): Do flush_display if force_flush_display_p to
3633 ensure display (specifically fringes) are updated in a timely
3634 manner when resizing the frame by dragging the mouse.
3635 (update_window_line): Update row if overlay arrow changed.
3636 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
3637 or overlay arrow changed.
3638
3639 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
3640 syms_of_fringe, and init_fringe.
3641
3642 * frame.h (struct frame): New member force_flush_display_p.
3643
3644 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
3645 Add prototypes.
3646
3647 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
3648 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
3649 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
3650 Use cursor color for displaying cursor in fringe.
3651 (x_redisplay_interface): Add null handlers for
3652 define_fringe_bitmap and destroy_fringe_bitmap functions.
3653
3654 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
3655 xterm.c to handle overlayed fringe bitmaps and to use cursor color
3656 for displaying cursor in fringe.
3657 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
3658 specific functions to define and destroy fringe bitmaps in fringe_bmp.
3659 (w32_redisplay_interface): Add them to redisplay_interface.
3660 (w32_term_init): Call w32_init_fringe instead of explicitly
3661 defining fringe bitmaps in fringe_bmp array.
3662 (x_delete_display): Call w32_reset_fringes instead of explicitly
3663 destroying fringe bitmaps in fringe_bmp array.
3664
3665 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
3666 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
3667 (continued_bits, continuation_bits, ov_bits, first_line_bits)
3668 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
3669 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
3670 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
3671 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
3672 Move fringe handling vars and code to new file fringe.c.
3673 (handle_display_prop): Handle left-fringe and right-fringe
3674 display properties; store user fringe bitmaps in iterator.
3675 (move_it_in_display_line_to): Handle cursor in fringe at eob.
3676 (clear_garbaged_frames): Set force_flush_display_p if resized.
3677 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
3678 (display_line): Handle cursor in fringe at eob.
3679 (display_line): Set row user fringe bitmaps from iterator.
3680
3681 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
3682 Use cursor color for displaying cursor in fringe.
3683 (x_redisplay_interface): Add null handlers for
3684 define_fringe_bitmap and destroy_fringe_bitmap functions.
3685
36862004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3687
3688 * macfns.c (Fx_change_window_property): Make doc string and
3689 parameters same as for X version.
3690
3691 * w32fns.c (Fx_change_window_property): Ditto.
3692
36932004-02-07 Kim F. Storm <storm@cua.dk>
3694
3695 * xdisp.c (hscroll_window_tree): Position cursor near to right
3696 margin in hscrolled window when jumping to end of line (rather
3697 than centering cursor).
3698
3699 * process.c (wait_reading_process_input): Don't do adaptive read
3700 buffering if waiting for a specific process.
3701
37022004-02-05 Luc Teirlinck <teirllm@auburn.edu>
3703
3704 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
3705 (Fread_minibuffer, Feval_minibuffer)
3706 (Fread_string, Fread_no_blanks_input)
3707 (Fcompleting_read): Doc fixes.
3708 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
3709 completion-regexp-list. Define Qcase_fold_search and staticpro it.
3710 (read_minibuf): Fix initial comment.
3711 (Ftry_completion, Fall_completions, Ftest_completion): Bind
3712 case-fold-search to the value of completion-ignore-case when
3713 checking completion-regexp-list.
3714 (Fdisplay_completion_list): Make it handle arguments that are
3715 symbols. Doc fix.
3716
37172004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3718
3719 * xterm.h: Add declaration of free_frame_menubar.
3720
3721 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
3722 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
3723 (Fx_change_window_property): Add declaration of parameters type and
3724 format. Remove unused variable cons.
3725
3726 * xselect.c: Include stdio,h.
3727
37282004-02-05 Kenichi Handa <handa@m17n.org>
3729
3730 * fns.c (Fset_char_table_range): Fix previous change.
3731
3732 * buffer.c (Fset_buffer_multibyte): Fix docstring.
3733
37342004-02-04 Luc Teirlinck <teirllm@auburn.edu>
3735
3736 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
3737
37382004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
3739
3740 * keymap.c (Vmouse_events): Rename from Vmenu_events.
3741 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
3742
37432004-02-04 Kenichi Handa <handa@m17n.org>
3744
3745 * fns.c (Fset_char_table_range): Handle charsets ascii,
3746 eight-bit-control, and eight-bit-graphic correctly.
3747
37482004-02-03 Jason Rumney <jasonr@gnu.org>
3749
3750 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
3751
3752 * w32fns.c (x_to_w32_font): Likewise.
3753
37542004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3755
3756 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
3757 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
3758
3759 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
3760 ClientMessages.
3761
3762 * xselect.c: Include termhooks.h and X11/Xproto.h
3763 (x_check_property_data, x_fill_property_data)
3764 (x_property_data_to_lisp, mouse_position_for_drop)
3765 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
3766 (Fx_send_client_event): Move here from xfns.c.
3767 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
3768
3769 * xfns.c (x-send-client-message): Move to xselect.c
3770 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
3771 OUTER_P.
3772 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
3773 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
3774 if vector_ret_p is true.
3775 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
3776
37772004-02-02 Eli Zaretskii <eliz@gnu.org>
3778
3779 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
3780 basename of FILE relative to it, not FILE itself.
3781
37822004-02-02 Kenichi Handa <handa@m17n.org>
3783
3784 * coding.c (coding_restore_composition): Check invalid
3785 composition data more rigidly.
3786
37872004-01-30 Luc Teirlinck <teirllm@auburn.edu>
3788
3789 * fileio.c (Fread_file_name_internal): Correctly handle the case
3790 where insert-default-directory is nil.
3791 (Fread_file_name): Always return an empty string if the user exits
3792 with an empty minibuffer. Adapt the docstring accordingly.
3793 (syms_of_fileio): Adapt the docstring of insert-default-directory
3794 to the change in Fread_file_name.
3795
37962004-01-29 Eli Zaretskii <eliz@gnu.org>
3797
3798 * alloca.c [!alloca]: Fix the prototype for xfree.
3799
38002004-01-29 Kenichi Handa <handa@m17n.org>
3801
3802 * fns.c (string_char_to_byte): Optimize for ASCII only string.
3803 (string_byte_to_char): Likewise.
3804
38052004-01-28 Peter Runestig <peter@runestig.com>
3806
3807 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
3808
38092004-01-27 Steven Tamm <steventamm@mac.com>
3810
3811 * unexmacosx.c (unexec_copy): Do not copy more than was
3812 requested to prevent overwriting during unexec.
3813
38142004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3815
3816 * process.c (sigchld_handler): Add comment about not calling malloc.
3817
3818 * process.h: Add extern to synch_process_termsig.
3819
38202004-01-27 Steven Tamm <steventamm@mac.com>
3821
3822 * macterm.c (make_mac_frame, make_mac_terminal_frame):
3823 Move setting of scroll bars from make_mac_frame to
3824 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
3825
38262004-01-26 Richard M. Stallman <rms@gnu.org>
3827
3828 * search.c (Freplace_match): Handle nonexistent
3829 back-references properly.
3830
38312004-01-03 Richard M. Stallman <rms@gnu.org>
3832
3833 * window.c (decode_any_window): New function.
3834 (Fwindow_height, Fwindow_width, Fwindow_edges)
3835 (Fwindow_pixel_edges, Fwindow_inside_edges)
3836 (Fwindow_inside_pixel_edges): Use decode_any_window.
3837
38382004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3839
3840 * process.h: synch_process_termsig new variable.
3841
3842 * callproc.c: Define synch_process_termsig.
3843 (Fcall_process): Initiate synch_process_termsig to zero and
3844 check if non-zero and get signal name after subprocess has ended.
3845
3846 * process.c (sigchld_handler): Set synch_process_termsig
3847 if terminated by a signal. synch_process_death setting removed.
3848
3849 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
3850
38512004-01-26 Andreas Schwab <schwab@suse.de>
3852
3853 * print.c (print_preprocess): Declare size as EMACS_INT to not
3854 lose bits.
3855 (print_object): Likewise.
3856 * alloc.c (Fpurecopy): Likewise.
3857
38582004-01-25 Luc Teirlinck <teirllm@auburn.edu>
3859
3860 * window.c (Fwindow_minibuffer_p): Doc fix.
3861
38622004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
3863
3864 * editfns.c (Fformat): Make both passes accept the same set of flags.
3865
38662004-01-23 Kenichi Handa <handa@m17n.org>
3867
3868 * fns.c (Fmd5): If OBJECT is a buffer different from the current
3869 one, set buffer to OBJECT temporarily.
3870
38712004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
3872
3873 * keyboard.c (kbd_buffer_gcpro): Remove.
3874 (kbd_buffer_store_event, clear_event, Fdiscard_input)
3875 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
3876 Don't initialize and/or maintain the variable any more. It was made
3877 redundant by my commit of 2003-06-15.
3878
3879 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
3880
38812004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3882
3883 * lisp.h: Add undef DECL_ALIGN.
3884
38852004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
3886
3887 * process.c (wait_reading_process_input) [SYNC_INPUT]:
3888 Check interrupt_input_pending explicitly.
3889
3890 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
3891
3892 * keyboard.c (handle_async_input): New fun,
3893 extracted from input_available_signal.
3894 (input_available_signal, reinvoke_input_signal): Use it.
3895
38962004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
3897
3898 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
3899
3900 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
3901 manipulation macros for when tags are in the lower bits.
3902 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
3903 (DECL_ALIGN): New macro.
3904 (DEFUN): Use it.
3905
3906 * lisp.h [ENABLE_CHECKING]: Don't force union type.
3907
3908 * s/darwin.h (__attribute__): Remove outdated workaround.
3909
3910 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
3911
3912 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
3913 Don't check range of malloc address.
3914 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
3915
3916 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
3917
3918 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
3919
39202004-01-19 Kenichi Handa <handa@m17n.org>
3921
3922 * fontset.c (fontset_font_pattern): Fix previous change.
3923
39242004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
3925
3926 * xdisp.c (Voverflow_newline_into_fringe)
3927 (move_it_in_display_line_to, redisplay_internal)
3928 (update_window_fringes, redisplay_window, display_line, window):
3929 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
3930 that it compiles without a window-system.
3931 * dispnew.c (direct_output_for_insert, update_window): Likewise.
3932
39332004-01-16 Kim F. Storm <storm@cua.dk>
3934
3935 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
3936
3937 * buffer.c (init_buffer_once): Set buffer_defaults and
3938 buffer_local_flags for indicate_buffer_boundaries.
3939 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
3940 default- variable for it.
3941
3942 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
3943 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
3944 New members exact_window_width_line_p and cursor_in_fringe_p for
3945 overflowing newlines into right fringe.
3946 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
3947 and indicate_bottom_line_p for buffer boundaries and scrolling.
3948 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
3949 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
3950 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
3951 and HOLLOW_SQUARE_BITMAP.
3952 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
3953 Add prototypes.
3954
3955 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
3956 instead of related indicator fields.
3957 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
3958 (direct_output_for_insert): Handle exact width lines like
3959 contined lines. Call update_window_fringes.
3960 (update_window): Call update_window_fringes.
3961 (scrolling_window): Don't skip desired rows with changed bitmaps.
3962 Check if fringe bitmaps changes when assigning scrolled rows.
3963
3964 * xdisp.c (Voverflow_newline_into_fringe): New variable.
3965 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
3966 (move_it_in_display_line_to): Overflow newline into fringe for
3967 rows that are exactly as wide as the window.
3968 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
3969 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
3970 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
3971 (fringe_bitmaps): Add new bitmaps.
3972 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
3973 Select proper bitmap for cursor in fringe when appropriate.
3974 Handle alignment of bitmap to top or bottom of row.
3975 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
3976 done by update_window_fringes.
3977 (update_window_fringes, draw_window_fringes): New functions.
3978 (redisplay_internal): Call update_window_fringes in case only
3979 cursor row is updated.
3980 (redisplay_window): Call update_window_fringes.
3981 Explicitly call draw_window_fringes if redisplay was done using
3982 the current matrix or the overlay arrow is in the window.
3983 (try_window_reusing_current_matrix): Mark scrolled rows for
3984 fringe update (to update buffer-boundaries / scrolling icons).
3985 (find_last_unchanged_at_beg_row): Handle exact width lines line
3986 continued lines.
3987 (display_line): Overflow newline into fringe for rows that are
3988 exactly as wide as the window. Don't append space for newline
3989 in this case.
3990 (notice_overwritten_cursor): Explicitly clear cursor bitmap
3991 in fringe as if it had been overwritten.
3992 (erase_phys_cursor): Erase cursor bitmap in fringe.
3993 (syms_of_xdisp): Mark show-trailing-whitespace and
3994 void-text-area-pointer as user options.
3995 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
3996
3997 * xterm.c (x_update_window_end): Call draw_window_fringes.
3998 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
3999 in row instead of actually drawing fringe bitmaps.
4000 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
4001 (x_draw_window_cursor): Draw cursor in fringe.
4002
4003 * w32term.c (x_update_window_end): Call draw_window_fringes.
4004 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
4005 in row instead of actually drawing fringe bitmaps.
4006 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
4007 (w32_draw_window_cursor): Draw cursor in fringe.
4008
4009 * macterm.c (x_update_window_end): Call draw_window_fringes.
4010 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
4011 in row instead of actually drawing fringe bitmaps.
4012 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
4013 (mac_draw_window_cursor): Draw cursor in fringe.
4014
40152004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4016
4017 * xterm.c (handle_one_xevent): Don't handle characters that are part
4018 of an old style (XLookupString) compose sequence.
4019
40202004-01-15 Kenichi Handa <handa@m17n.org>
4021
4022 * search.c (Freplace_match): Use make_multibyte_string or
4023 make_unibyte_string according to the buffer multibyteness.
4024
40252004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
4026
4027 * alloc.c (struct interval_block, struct string_block)
4028 (struct symbol_block, struct marker_block, live_string_p)
4029 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
4030 Better preserve alignment for objects in blocks.
4031 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
4032
4033 * lread.c (defvar_per_buffer): Remove dead declaration.
4034
4035 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
4036 space size.
4037
40382004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4039
4040 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
4041 if a key press should pop down. Only pop down if a key is pressed
4042 outside the menu/dialog.
4043 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
4044 popup_get_selection.
4045 (create_and_show_dialog): Pass 1 for down_on_keypress to
4046 popup_get_selection.
4047
40482004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4049
4050 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
4051 BLOCK/UNBLOCK_INPUT.
4052
40532004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4054
4055 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
4056 specified.
4057
40582004-01-08 Kenichi Handa <handa@m17n.org>
4059
4060 * editfns.c (Fformat): Fix '&' to '&&'.
4061
40622004-01-08 Andreas Schwab <schwab@suse.de>
4063
4064 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
4065 size if PSEUDOVECTOR_FLAG is set.
4066
40672004-01-07 Kenichi Handa <handa@m17n.org>
4068
4069 * charset.c (Fdeclare_equiv_charset): Fix docstring.
4070
4071 * fontset.c (fontset_ref_via_base): Fix previous change.
4072
40732004-01-07 Kim F. Storm <storm@cua.dk>
4074
4075 * process.c (read_process_output): Only activate adaptive
4076 buffering if we read less than 256 bytes at a time.
4077
40782004-01-06 Kim F. Storm <storm@cua.dk>
4079
4080 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
4081 object and image object. Return glyph width and height.
4082 (mode_line_string, marginal_area_string): Ditto.
4083
4084 * dispextern.h (buffer_posn_from_coords, mode_line_string)
4085 (marginal_area_string): Fix prototypes.
4086
4087 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
4088 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
4089 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
4090
4091 * keyboard.c (make_lispy_position): Use modified mode_line_string,
4092 buffer_posn_from_coords, and marginal_area_string functions to
4093 include both string object and image object in the lispy position.
4094 Also add actual glyph width and height to position.
4095 (read_key_sequence): Use real buffer position from mouse
4096 event to find keymap property even when click is in marginal area.
4097
4098 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
4099 mode_line_string and marginal_area_string functions to handle
4100 both string object and image object properties.
4101
41022004-01-06 Andreas Schwab <schwab@suse.de>
4103
4104 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
4105 character.
4106
41072004-01-02 Andreas Schwab <schwab@suse.de>
4108
4109 * macterm.c (emacs_options, x_initialized, same_x_server):
4110 Remove unused (and duplicated) definitions.
4111
41122004-01-02 Kim F. Storm <storm@cua.dk>
4113
4114 * process.h (struct Lisp_Process): New members for adaptive read
4115 buffering: adaptive_read_buffering, read_output_delay, and
4116 read_output_skip.
4117
4118 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
4119 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
4120 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
4121 (process_output_delay_count, process_output_skip): New vars.
4122 (Vprocess_adaptive_read_buffering): New variable.
4123 (make_process): Initialize adaptive read buffering members.
4124 (Fstart_process): Set adaptive_read_buffering member.
4125 (deactivate_process): Cleanup adaptive read buffering.
4126 (wait_reading_process_input): Temporarily omit delayed
4127 subprocesses from the set of file descriptors to read from;
4128 adjust the select timeout if we skipped any subprocesses.
4129 (read_process_output): Increase adaptive read buffering delay if
4130 we read less than a full buffer; reduce delay when we read a
4131 full buffer.
4132 (send_process): Simplify using local Lisp_Process var.
4133 Reset adaptive read buffering delay after write.
4134 (init_process): Initialize process_output_delay_count and
4135 process_output_skip.
4136 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
4137
41382004-01-01 Jason Rumney <jasonr@gnu.org>
4139
4140 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
4141
41422003-12-30 Luc Teirlinck <teirllm@auburn.edu>
4143
4144 * print.c (Ferror_message_string): Add hyperlink in the docstring
4145 to the definition of `signal' in the Elisp manual.
4146 * eval.c (Fsignal): Ditto.
4147
41482003-12-29 James Clark <jjc@jclark.com>
4149
4150 * fns.c (internal_equal): Return t for two NaN arguments.
4151
41522003-12-29 Richard M. Stallman <rms@gnu.org>
4153
4154 * data.c (store_symval_forwarding): Handle setting
4155 default-fill-column, etc., by changing the value in
4156 buffers that use the default.
4157
4158 * minibuf.c (Fset_minibuffer_window): Doc fix.
4159
4160 * fileio.c (choose_write_coding_system): Ignore auto_saving
4161 if using the visited file for auto saves.
4162 (Fwrite_region): Don't update SAVE_MODIFF
4163 if auto-saving in visited file.
4164
41652003-12-29 Kenichi Handa <handa@m17n.org>
4166
4167 * dispextern.h (face_font_available_p): Extern it.
4168
4169 * fontset.c (Voverriding_fontspec_alist): New variable.
4170 (lookup_overriding_fontspec): New function.
4171 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
4172 (fontset_font_pattern): Likewise.
4173 (regulalize_fontname): New function.
4174 (Fset_fontset_font): Call regulalize_fontname.
4175 (Fset_overriding_fontspec_internal): New function.
4176 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
4177 Defsubr Sset_overriding_fontspec_internal.
4178
4179 * xfaces.c (face_font_available_p): New function.
4180
41812003-12-28 Richard M. Stallman <rms@gnu.org>
4182
4183 * buffer.c (Fother_buffer): Don't crash if BUF is nil
4184 or if its name is nil.
4185
4186 * buffer.c (Fkill_buffer): Don't delete auto-save file
4187 if it's the same as the visited file.
4188
41892003-12-28 Luc Teirlinck <teirllm@auburn.edu>
4190
4191 * coding.c (Fcheck_coding_system): Doc fix.
4192
41932003-12-28 Kim F. Storm <storm@cua.dk>
4194
4195 * Makefile.in (eval.o): Depend on dispextern.h.
4196
4197 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
4198 image glyph using image's ascent.
4199 (mode_line_string): Return image glyph as object clicked on.
4200 Adjust y0 for image glyph using image's ascent.
4201
4202 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
4203 (struct glyph): New members, ascent and descent. Used to save
4204 this glyph's ascent and descent, instead of having.
4205 (struct glyph): Declare member face_id using FACE_ID_BITS.
4206 (find_hot_spot): Add prototype.
4207
4208 * keyboard.c (Qimage): Remove extern (now in lisp.h).
4209 (QCmap): Declare extern.
4210 (make_lispy_position): When position is inside image hot-spot,
4211 use hot-spot element's id as posn element.
4212
4213 * lisp.h (IMAGEP): New macro to test for image object type.
4214 (Qimage): Declare extern.
4215
4216 * macfns.c (Qimage): Remove extern (now in lisp.h).
4217 (valid_image_p, parse_image_spec): Use IMAGEP macro.
4218
4219 * macterm.c (Qface, Qmouse_face): Remove unused externs.
4220
4221 * w32fns.c (Qimage): Remove extern (now in lisp.h).
4222 (valid_image_p, parse_image_spec): Use IMAGEP macro.
4223
4224 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
4225
4226 * w32term.c (Qface, Qmouse_face): Remove unused externs.
4227
4228 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
4229 pointer types.
4230 (Qrelative_width, Qalign_to): Remove unused variables.
4231 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
4232 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
4233 image maps.
4234 (x_y_to_hpos_vpos): Return glyph relative coordinates through
4235 new dx and dy args.
4236 Remove buffer_only_p arg (always 0). Simplify code accordingly.
4237 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
4238 than row's ascent and height, to get sensible height on tall rows.
4239 (build_desired_tool_bar_string): Remove Qimage extern.
4240 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
4241 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
4242 image glyph is alone on the last line.
4243 (append_glyph, append_composite_glyph, produce_image_glyph)
4244 (append_stretch_glyph): Set glyph's ascent and descent.
4245 (on_hot_spot_p): New function to check if position is inside an
4246 rectangular, circular, or polygon-shaped image hot-spot,
4247 (find_hot_spot): New function to search for image hot-spot.
4248 (Flookup_image_map): New defun to search for image hot-spot.
4249 (define_frame_cursor1): New aux function to determine frame pointer.
4250 (note_mode_line_or_margin_highlight, note_mouse_highlight):
4251 Handle `pointer' text property and :pointer image property to
4252 control frame pointer shape. Detect image hot-spots for pointer
4253 and help_echo properties. Use define_frame_cursor1.
4254 (note_mouse_highlight): Use Vvoid_text_area_pointer.
4255 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
4256 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
4257
4258 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
4259
4260 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
4261 (Qimage): Remove extern (now in lisp.h).
4262 (valid_image_p, parse_image_spec): Use IMAGEP macro.
4263
4264 * xmenu.c (show_help_event): Remove unused code.
4265
4266 * xterm.c (Qface, Qmouse_face): Remove unused externs.
4267 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
4268 row's ascent and descent, to get a sensible height on tall rows.
4269
42702003-12-25 Luc Teirlinck <teirllm@auburn.edu>
4271
4272 * minibuf.c (Fcompleting_read): Undo previous change.
4273
42742003-12-25 Lars Hansen <larsh@math.ku.dk>
4275
4276 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
4277 Arguments GCPRO'ed in call to file name handler.
4278
42792003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
4280
4281 * termcap.c (tgetst1): Scan for "%pN"; if all
4282 N are continuous in [1,9], remove all "%pN".
4283
42842003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4285
4286 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
4287
4288 * xfaces.c (lface_fully_specified_p): Take into account that
4289 MAC OS always have unspecified stipple.
4290
42912003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
4292
4293 * tparam.c (tparam1): Add handling for `%pN', which
4294 means use param N for the next substitution.
4295
42962003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
4297
4298 * xfaces.c (Fcolor_gray_p): Fix omission bug:
4299 In case `frame' is nil, consult the selected frame.
4300 (Fcolor_supported_p): Likewise.
4301
43022003-12-23 Luc Teirlinck <teirllm@auburn.edu>
4303
4304 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
4305 Doc fixes.
4306
4307 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
4308 and an integer. Adapt the introductory comment accordingly.
4309 (Fread_from_minibuffer): Delete code moved into read_minibuf.
4310 Doc fix.
4311 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
4312 read_minibuf.
4313 (Fcompleting_read): Delete code moved into read_minibuf.
4314 (Ftest_completion): Make it handle obarrays and hash tables correctly.
4315
43162003-12-03 Kenichi Handa <handa@m17n.org>
4317
4318 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
4319 encoding sequence.
4320
43212003-12-01 Kenichi Handa <handa@m17n.org>
4322
4323 * composite.c (syms_of_composite): Don't make the compostion hash
4324 table week.
4325
43262003-11-30 Luc Teirlinck <teirllm@auburn.edu>
4327
4328 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
4329 * textprop.c (Fget_char_property_and_overlay): New function.
4330 (syms_of_textprop): Defsubr it.
4331
43322003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4333
4334 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
4335 to compile on terminal configuration.
4336
4337 * fileio.c (Fread_file_name): Check use_file_dialog also before
4338 calling Fx_file_dialog.
4339
4340 * fns.c: use_file_dialog: New variable.
4341 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
4342
43432003-11-29 Kim F. Storm <storm@cua.dk>
4344
4345 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
4346 (syms_of_msdos): Don't intern and staticpro them.
4347
43482003-11-27 Kim F. Storm <storm@cua.dk>
4349
4350 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
4351 coordinates relative to glyph at posn. If glyph is an image,
4352 return that as object at posn. Callers changed.
4353 (mode_line_string, marginal_area_string): Calculate and return
4354 pixel coordinates relative to glyph. Callers changed.
4355
4356 * dispextern.h (buffer_posn_from_coords, mode_line_string)
4357 (marginal_area_string): Fix prototypes.
4358 (window_box_left_offset, window_box_right_offset): Add prototypes.
4359
4360 * frame.h (get_specified_cursor_type, get_window_cursor_type):
4361 Remove prototypes.
4362
4363 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
4364
4365 * keyboard.c (make_lispy_position): Add x and y coordinates
4366 relative to the current glyph as 7th element of position.
4367 If glyph is an image, return it in the object element.
4368 (read_key_sequence): Skip checks for keymap property in cases
4369 where POSN_STRING is not a string (e.g. an image).
4370
4371 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
4372 (Vshow_text_cursor_in_void): New variable.
4373 (glyph_to_pixel_coords): Don't use negative hpos.
4374 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
4375 (append_stretch_glyph): Change ascent arg to be actual value
4376 in pixels rather than ratio to height. Callers changed.
4377 (calc_pixel_width_or_height): New aux function, implementing
4378 pixel based artihmetic for glyph widths and heights.
4379 (produce_stretch_glyph): Use calc_pixel_width_or_height for
4380 :width, :height, :align-to, and :ascent, thus allowing these to
4381 be specified in pixels as well as multiples of characters.
4382 Don't produce stretch glyphs with zero width or height.
4383 (get_specified_cursor_type): Declare static.
4384 (get_window_cursor_type): Declare static. Add glyph arg to be
4385 able to know when cursor is on an image; always substitute
4386 hollow-box cursor for filled-box cursor on images, to avoid
4387 negative images and flicker when blinking the cursor.
4388 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
4389 (note_mode_line_or_margin_highlight): Use non-text cursor rather
4390 than vertical scroll-bar cursor in display margins.
4391 (note_mouse_highlight): Use non-text cursor rather than text
4392 cursor in fringes and over images in the text area.
4393 Use non-text cursor when mouse pointer is outside editable text,
4394 i.e. in the void after end-of-line or end-of-buffer; this was
4395 already done for W32, but is now standard for all systems --
4396 user can toggle show-text-cursor-in-void to get old behaviour.
4397 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
4398 Vdisplay_pixels_per_inch.
4399
44002003-11-25 Andreas Schwab <schwab@suse.de>
4401
4402 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
4403 EMACS_INT to not lose bits.
4404 (Ffillarray): Don't set bits beyond the size of a bool vector.
4405
44062003-11-25 Kim F. Storm <storm@cua.dk>
4407
4408 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
4409 define this defun on systems that cannot use stderr as lvalue.
4410
44112003-11-24 Gerd Moellmann <gerd@gnu.org>
4412
4413 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
4414 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
4415 ld's default is incompatible with unexec.
4416
44172003-11-23 Kim F. Storm <storm@cua.dk>
4418
4419 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
4420 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
4421 (Fforce_window_update): New defun.
4422 (syms_of_window): Defsubr it.
4423 (Fset_window_margins, Fset_window_fringes): Doc fix.
4424
4425 * print.c (Fredirect_debugging_output): New defun.
4426 (syms_of_print): Defsubr it.
4427
44282003-11-22 Luc Teirlinck <teirllm@auburn.edu>
4429
4430 * fns.c (Fset_char_table_parent): Doc fix.
4431
44322003-11-22 Kim F. Storm <storm@cua.dk>
4433
4434 * dispnew.c (buffer_posn_from_coords): Return actual row/column
4435 for glyph clicked on, rather than (unused) pixel positions.
4436 (mode_line_string, marginal_area_string): Change X and Y args to
4437 pointers for returning actual row/column for glyph clicked on.
4438 Simplify and optimize loops.
4439
4440 * dispextern.h (mode_line_string, marginal_area_string):
4441 Update prototypes.
4442
4443 * keyboard.c (make_lispy_position): New function for generating
4444 mouse click positions from frame and pixel coordinates.
4445 Enhanced to return buffer position and actual row/column for
4446 events outside the text area using updated mode_line_string and
4447 marginal_area_string functions.
4448 Return left-fringe and right-fringe clicks as such, rather than
4449 clicks in text area.
4450 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
4451 pixel_to_glyph_coords, as we never use the results.
4452 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
4453 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
4454 Eliminate unused code in WHEEL_EVENT handling.
4455 (make_lispy_movement): Use make_lispy_position.
4456
4457 * window.c (coordinates_in_window): Remove redundant tests.
4458 Fix returned X pixel value for left-margin.
4459
4460 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
4461 mode_line_string and marginal_area_string parameters.
4462
44632003-11-22 Lars Hansen <larsh@math.ku.dk>
4464
4465 * w32.c (struct the_group, getgrgid): Add.
4466 * mac.c (struct my_group, getgrgid): Add.
4467
44682003-11-21 Luc Teirlinck <teirllm@auburn.edu>
4469
4470 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
4471
44722003-11-21 Lars Hansen <larsh@math.ku.dk>
4473
4474 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
4475 include in call to file name handler. Optionally translate numeric
4476 UID and GID to strings. Update docstring.
4477 (directory_files_internal): Add parameter ID-FORMAT.
4478 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
4479 include in call to file name handler and call to
4480 directory_files_internal. Update Docstring.
4481 (Fdirectory_files): Add dummy parameter in call to
4482 directory_files_internal.
4483 * lisp.h (Qinteger): Add.
4484 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
4485 (Ffile_attributes): Add parameter.
4486 * data.c (Qinteger): Export.
4487
44882003-11-21 Luc Teirlinck <teirllm@auburn.edu>
4489
4490 * fns.c (Freverse, Fnreverse): Doc fixes.
4491
44922003-11-19 Kim F. Storm <storm@cua.dk>
4493
4494 * xdisp.c (init_iterator): Initialize it->start to position
4495 before reseating (in case start position is invisible).
4496 (init_to_row_start): Set it->start to row-start.
4497 (redisplay_window): Accept optional_new_start if start position
4498 is invisible (in which case IT_CHARPOS overshoots PT).
4499 (display_line): Setup row->start from it->start (rather than
4500 it->current which is wrong if first char on line is invisible).
4501 When done, reseat it->start to it->current (= start of next row).
4502 (expose_area): Fix exposure of text area when first char (e.g. TAB)
4503 is only partially visible.
4504
4505 * dispextern.h (struct it): New member start.
4506
45072003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
4508
4509 * alloc.c (make_float, Fcons): Clear the markbit at init time.
4510 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
4511 of block_index outside of the macro call.
4512 (Fgarbage_collect): Remove null code.
4513
4514 * m/amdx86-64.h: Don't redefine XPNTR.
4515
4516 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
4517 of VALMASK.
4518
4519 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
4520 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
4521 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
4522
4523 * lisp.h (VALMASK): Only define for non-union type.
4524 (MARKBIT): Remove.
4525 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
4526 (XTYPE): Define unconditionally.
4527 (XSETTYPE): Remove one more remnant.
4528 (EQ): Define differently for the union and non-union cases.
4529 (INTMASK): New bit mask.
4530 (struct Lisp_Marker): Move down to prepare for upcoming patch.
4531 (GC_EQ): Delegate to EQ.
4532
4533 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
4534
45352003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4536
4537 * xterm.c (x_window_to_scroll_bar): Move check of display to
4538 where window_id is compared.
4539
45402003-11-17 Kim F. Storm <storm@cua.dk>
4541
4542 * dispextern.h (struct it): New member first_vpos.
4543
4544 * xdisp.c (start_display): Set it->first_vpos.
4545 (try_window_id): Use first_vpos to start display in first _text_
4546 line if no reusable lines at start of window with header line.
4547
45482003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4549
4550 * w32fns.c (XPutPixel):
4551 * w32bdf.c (w32_init_bdf_font):
4552 * sunfns.c (sel_read):
4553 * process.c (Fmake_network_process):
4554 * frame.c (store_frame_param):
4555 * fontset.c (Fset_fontset_font):
4556 * emacs.c (shut_down_emacs):
4557 * ccl.c (ccl_driver): Remove period at end of error message.
4558
4559 * config.in: Regenerate.
4560
4561 * xfns.c (x_window_to_frame, x_any_window_to_frame)
4562 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
4563 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
4564 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
4565 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
4566
4567 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
4568
4569 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
4570 (XTmouse_position, handle_one_xevent): Pass Display* to
4571 x_window_to_scroll_bar.
4572 (x_window_to_scroll_bar): Take a Display* argument.
4573 Check that display for frame is equal to Display* argument.
4574 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
4575 x_display_info_for_display instead. Use Display in xev instead
4576 of GDK_DISPLAY.
4577 (x_dispatch_event): Call x_display_info_for_display.
4578 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
4579 (x_connection_closed): Call xg_display_close for GTK.
4580 (x_term_init): Call xg_display_open for additional displays.
4581 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
4582 for GTK.
4583
4584 * xmenu.c (single_menu_item, mouse_position_for_popup)
4585 (x_activate_menubar): Formatting adjustments.
4586
4587 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
4588 adjustments.
4589
4590 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
4591 (xg_display_close, xg_create_default_cursor)
4592 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
4593 handling.
4594 (xg_left_ptr_cursor): Remove.
4595 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
4596 cursor here.
4597 (xg_win_to_widget): Take Display* argument, call
4598 gdk_xid_table_lookup_for_display.
4599 (xg_create_frame_widgets, xg_get_file_name, create_menus)
4600 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
4601 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
4602 in FRAME_X_DISPLAY_INFO.
4603 (xg_get_scroll_id_for_window): Take Display* argument.
4604 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
4605 (xg_initialize): Remove xg_left_ptr_cursor.
4606
4607 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
4608 Display* argument also. Declare xg_display_open,
4609 xg_display_close, xg_create_default_cursor.
4610
46112003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4612
4613 * xterm.c (x_detect_focus_change): Do not change focus frame for
4614 Enter/LeaveNotify if the current focus frame has explicit focus.
4615
46162003-11-14 Kim F. Storm <storm@cua.dk>
4617
4618 * dispnew.c (update_text_area): Fix redisplay error when hscroll
4619 is active and first glyph is only partially visible.
4620
46212003-11-13 Kenichi Handa <handa@m17n.org>
4622
4623 * xdisp.c (select_frame_for_redisplay): New function.
4624 (redisplay_internal): Record also selected_frame for
4625 unwind_redisplay. Call select_frame_for_redisplay before
4626 redrawing each frame.
4627 (unwind_redisplay): Argument changed to a cons.
4628
46292003-11-12 Luc Teirlinck <teirllm@auburn.edu>
4630
4631 * fns.c (Fstring_to_multibyte): Doc fix.
4632
46332003-11-11 Kenichi Handa <handa@m17n.org>
4634
4635 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
4636
46372003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4638
4639 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
4640 program specified positions.
4641
46422003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4643
4644 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
4645
46462003-11-08 Kenichi Handa <handa@m17n.org>
4647
4648 * Makefile.in (lisp): Add kannada.el.
4649 (shortlisp): Likewise.
4650
46512003-11-07 Kenichi Handa <handa@m17n.org>
4652
4653 * coding.c (coding_allocate_composition_data):
4654 Reset coding->composing to COMPOSITION_NO.
4655 (coding_restore_composition): Detect invalid composition data.
4656 Give Fstring and Fvector a Lispy integer, not C int.
4657
46582003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
4659
4660 * floatfns.c (Flogb): Don't use VALMASK.
4661
4662 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
4663 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
4664
4665 * lisp.h (XINT): Move the cast to clarify what is going on.
4666 (GCTYPEMASK, XSETTYPE): Remove.
4667 (XGCTYPE): Make it an alias of XTYPE.
4668
46692003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4670
4671 * xterm.c (x_term_init): Fix formatting.
4672
46732003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4674
4675 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
4676 and xg_did_tearoff.
4677
4678 * gtkutil.c: Remove variable xg_did_tearoff.
4679 (xg_have_tear_offs): New function.
4680 (tearoff_remove): Just decrease xg_detached_menus.
4681 (tearoff_activate): Increase xg_detached_menus and call
4682 tearoff_remove when tearoff is removed.
4683 (xg_keep_popup): Remove function.
4684 (create_menus): Give add_tearoff_p as argument to recursive
4685 call to create_menus.
4686 (xg_create_widget): Use variables instead of multiple
4687 strcmp. Tell create_menus to create tear off only for
4688 menu bar menus.
4689 (xg_update_menubar): Change title for a detached menu also.
4690 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
4691 of deep_p.
4692 (xg_initialize): Initialize xg_detached_menus, remove
4693 initialization of xg_did_tearoff.
4694
4695 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
4696 xg_have_tear_offs returns non-zero.
4697 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
4698 call to xg_keep_popup.
4699
47002003-11-01 Andrew Choi <akochoi@shaw.ca>
4701
4702 * macterm.c (XTread_socket): Handle menubar selection and grow
4703 window only for mouseDown events.
4704
47052003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4706
4707 * xterm.c (x_term_init): For GTK part, increase x_initialized
4708 to check for more than one display. Use error instead of return 0.
4709
47102003-10-31 Andrew Choi <akochoi@shaw.ca>
4711
4712 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
4713 (copy_dysymtab): Call it.
4714
47152003-10-31 Luc Teirlinck <teirllm@auburn.edu>
4716
4717 * eval.c (Fdefvaralias): Doc fix.
4718
47192003-10-26 Luc Teirlinck <teirllm@auburn.edu>
4720
4721 * data.c (Fsetplist): Doc fix.
4722
47232003-10-14 Lute Kamstra <lute@gnu.org>
4724
4725 * window.c (Fset_window_fringes): Clarify docstring.
4726
47272003-10-14 Kim F. Storm <storm@cua.dk>
4728
4729 * window.c (Fset_window_margins): Simplify arg checking.
4730
47312003-10-13 Richard M. Stallman <rms@gnu.org>
4732
4733 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
4734 (print_partial_compiled_pattern): Replace assert with a printout.
4735 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
4736
4737 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
4738
4739 * window.c (Fset_window_margins): Allow only integers as args.
4740 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
4741 Doc fixes.
4742
47432003-10-13 Lute Kamstra <lute@gnu.org>
4744
4745 * window.c (Fset_window_fringes): Elaborate docstring.
4746
47472003-10-12 Andrew Choi <akochoi@shaw.ca>
4748
4749 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
4750
4751 * s/darwin.h (GC_MARK_STACK): Define.
4752
47532003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4754
4755 * window.c (shrink_windows): New function.
4756 (size_window): Call shrink_windows to calculate window sizes when
4757 shrinking frame with more than one window.
4758
47592003-10-12 Kim F. Storm <storm@cua.dk>
4760
4761 * xdisp.c (compute_fringe_widths): Doc fix.
4762
47632003-10-08 Kenichi Handa <handa@m17n.org>
4764
4765 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
4766
47672003-10-07 Kenichi Handa <handa@m17n.org>
4768
4769 * coding.c (Qcoding_system_define_form): New variable.
4770 (syms_of_coding): Intern and staticpro it.
4771 (Fcheck_coding_system): Try to autoload the definition of
4772 CODING-SYSTEM.
4773
47742003-10-05 Luc Teirlinck <teirllm@auburn.edu>
4775
4776 * fns.c (Frequire): Doc fix.
4777
47782003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4779
4780 * xfns.c (Fx_send_client_event): New function as a base for
4781 manipulating extended window manager hints.
4782 (Fx_send_client_event): Remove unused variable s.
4783
4784 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
4785 that function is removed.
4786
4787 * xterm.c (x_set_offset): Use move_offset_left/top instead of
4788 x/y_pixels_outer_diff.
4789 (x_check_expected_move): Calculate move_offset_left/top.
4790
4791 * xterm.h (struct x_output): New members: move_offset_top/left.
4792
4793 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
4794 call x_set_offset directly.
4795
4796 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
4797
4798 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
4799
4800 * xterm.c (x_delete_display): Free font names and font_encoder
4801 in dpyinfo->font_table.
4802
4803 * xfns.c (Fx_close_connection): Only call XFreeFont here.
4804 Move xfree of font names to x_delete_display.
4805
4806 * xterm.h (struct x_display_info): New member, wm_type.
4807 (struct x_output): New members, expected_top/left and
4808 check_expected_move.
4809
4810 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
4811 is received.
4812 (handle_one_xevent): Rename x_check_expected_move from
4813 x_check_fullscreen_move.
4814 (x_set_offset): Only add WM decoration sizes to modified_top/left
4815 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
4816 (x_check_expected_move): Rename from x_check_fullscreen_move.
4817 Removed fullscreen specific code. Use check_expected_move,
4818 expected_left/top instead. Also, set wm_type.
4819 (x_term_init): Initialize wm_type to unknown.
4820
4821 * frame.c (x_fullscreen_move): Remove addition of WM decoration
4822 sizes to move_x/y.
4823
48242003-10-03 Kenichi Handa <handa@m17n.org>
4825
4826 * macterm.c (x_load_font): Clear all members of FONTP before start
4827 filling them.
4828
48292003-10-02 Kenichi Handa <handa@m17n.org>
4830
4831 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
4832 before calling find_ccl_program_func. Call find_ccl_program_func
4833 only when fontp->font_encoder is not NULL.
4834
4835 * xterm.c (x_load_font): Clear all members of FONTP before start
4836 filling them.
4837
48382003-10-03 John Paul Wallington <jpw@gnu.org>
4839
4840 * keymap.c (map_keymap): Don't abort when binding is a vector.
4841
48422003-10-02 Jason Rumney <jasonr@gnu.org>
4843
4844 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
4845 Sync dependencies with Makefile.in.
4846 (alloca.o): Remove.
4847
4848 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
4849 filling them.
4850
4851 * w32bdf.c (w32_load_bdf_font): Likewise.
4852
48532003-09-30 Richard M. Stallman <rms@gnu.org>
4854
4855 * term.c (set_tty_color_mode): Calculate current_mode_spec
4856 regardless of value of VAL.
4857
4858 * intervals.c (graft_intervals_into_buffer):
4859 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
4860 Handle over_used when splitting UNDER.
4861
48622003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4863
4864 * regex.c (regex_compile): Free the stack when returning from function.
4865
48662003-09-28 Kenichi Handa <handa@m17n.org>
4867
4868 * fontset.c (Finternal_char_font): Change return value to
4869 cons (FONT-NAME . GLYPH-CODE).
4870
48712003-09-28 Eli Zaretskii <eliz@gnu.org>
4872
4873 * term.c (tty_setup_colors): Treat any negative argument as -1.
4874
48752003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
4876
4877 * process.c (send_process): Delete unused temp_buf.
4878
48792003-09-26 Dave Love <fx@gnu.org>
4880
4881 * xterm.c (x_bitmap_mask): Declare.
4882
48832003-09-25 Dave Love <fx@gnu.org>
4884
4885 * Makefile.in (fns.o): Depend on md5.h.
4886
48872003-09-25 Kim F. Storm <storm@cua.dk>
4888
4889 * window.c (set_window_buffer): Fix redisplay problems when
4890 switching between buffers with different display margin widths.
4891
48922003-09-23 Kim F. Storm <storm@cua.dk>
4893
4894 * process.c (set_socket_option): Fix :bindtodevice option.
4895 (Fset_network_process_option): Update process contact list when
4896 setting option succeeds.
4897 (Fmake_network_process): Doc fix.
4898
48992003-09-23 Dave Love <fx@gnu.org>
4900
4901 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
4902
49032003-09-22 Eli Zaretskii <eliz@gnu.org>
4904
4905 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
4906 color mode is an integer number (it could be -1).
4907
49082003-09-22 Richard M. Stallman <rms@gnu.org>
4909
4910 * intervals.c (graft_intervals_into_buffer): Correct the main loop
4911 in the case where OVER is longer than UNDER.
4912
49132003-09-22 Masatake YAMATO <jet@gyve.org>
4914
4915 * window.c (Fset_window_scroll_bars): Validate the value of
4916 `vertical_type'.
4917
49182003-09-21 Kim F. Storm <storm@cua.dk>
4919
4920 * frame.c (Vdefault_frame_scroll_bars): New variable.
4921 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
4922 (syms_of_frame): DEFVAR_LISP it, and initialize according to
4923 window-system default scroll bar position.
4924
4925 * window.c (Fwindow_scroll_bars): Doc fix.
4926
49272003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4928
4929 * xterm.c (x_set_offset): Take window manager decorations into account.
4930
49312003-09-19 Richard M. Stallman <rms@gnu.org>
4932
4933 * atimer.h: Don't include lisp.h.
4934 (P_): Define it here (as well as elsewhere).
4935
4936 * print.c (Fprin1_to_string): Move the PRINTPREPARE
4937 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
4938
4939 * data.c (Fvariable_binding_locus): New function.
4940 (syms_of_data): defsubr it.
4941 (Flocal_variable_p): Delete duplicate call to indirect_variable.
4942
49432003-09-18 Dave Love <fx@gnu.org>
4944
4945 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
4946
4947 * process.c (Fnetwork_interface_info): Fix type error.
4948 (Fnetwork_interface_list): Doc fix.
4949 (read_process_output, read_process_output): Delete unused var.
4950
49512003-09-17 Kim F. Storm <storm@cua.dk>
4952
4953 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
4954 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
4955 (Fnetwork_interface_info): Check that ifreq struct has required
4956 fields before accessing them; this requires that those fields are
4957 defined as macros, which may be too restrictive on some platforms,
4958 but it is better than failing on other platforms.
4959 (syms_of_process): Only defsubr above fns when included.
4960
49612003-09-17 Dave Love <fx@gnu.org>
4962
4963 * unexalpha.c: Don't include varargs.h.
4964
49652003-09-17 Kim F. Storm <storm@cua.dk>
4966
4967 * process.c (Fset_process_sentinel): Add sentinel to childp plist
4968 for network process.
4969 (socket_options): Add `:' prefix to option names. Add optbit field.
4970 (set_socket_option): Remove no_error arg and special handling of s < 0.
4971 Return 1<<optbit for known option, 0 for unknown.
4972 Do not interpret 0 as false for boolean option (only nil).
4973 Pass failed option and value to report_file_error.
4974 (Fset_network_process_options): Replace by Fset_network_process_option.
4975 (Fset_network_process_option): New function to set just one option.
4976 (Fmake_network_process): Allow :coding arg to be a cons.
4977 Allow :server arg to be an integer specifying backlog size.
4978 Remove :options arg, and allow options to be specified directly
4979 as :KEY, VALUE pairs. Parse these options before binding socket.
4980 As before, :reuseaddr t is default for a server process, but this
4981 can now be disabled by specifying :reuseaddr nil.
4982 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
4983 (init_process): Availability of network options is now checked with
4984 simpler syntax (featurep 'make-network-process :OPTION); use loop to
4985 setup features.
4986 (syms_of_process): Fix defsubr's for the replaced functions.
4987
49882003-09-16 Dave Love <fx@gnu.org>
4989
4990 * Makefile.in: Depend on coding.h.
4991
49922003-09-14 Kim F. Storm <storm@cua.dk>
4993
4994 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
4995 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
4996 (syms_of_process): Defsubr them.
4997
4998 * config.in: Regenerate.
4999
50002003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
5001
5002 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
5003 * m/news-r6.h (XUNMARK): Remove.
5004 * m/mips.h (XUNMARK): Remove.
5005 * m/mips-siemens.h (XUNMARK): Remove.
5006 * m/iris4d.h (XUNMARK): Remove.
5007 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
5008
50092003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
5010
5011 * lisp.h (VALBITS): Don't remove 1 for the markbit.
5012 (union Lisp_Object): Use unsigned int for types. Remove markbit.
5013 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
5014 (XTYPE): Use unsigned right-shift.
5015 (XMARKBIT, XMARK, XUNMARK): Remove.
5016
5017 * alloc.c (init_intervals, init_symbol, init_marker):
5018 Don't preallocate anything.
5019 (Fgarbage_collect, mark_object): Ignore the markbit.
5020
5021 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
5022
50232003-09-08 Lute Kamstra <lute@gnu.org>
5024
5025 * xdisp.c (pint2hrstr): New function.
5026 (decode_mode_spec): Add `%i' and `%I' specs.
5027 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
5028 for `mode-line-format'.
5029
50302003-09-07 Andreas Schwab <schwab@suse.de>
5031
5032 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
5033 avoid warning.
5034
50352003-09-07 Eli Zaretskii <eliz@gnu.org>
5036
5037 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
5038
50392003-09-03 Kim F. Storm <storm@cua.dk>
5040
5041 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
5042 change (superseded by 2002-08-30 change); the default blink-off
5043 cursor is now again "no cursor".
5044
50452003-09-01 Jason Rumney <jasonr@gnu.org>
5046
5047 * makefile.w32-in (alloca.o): Remove.
5048 (coding.o): Depend on intervals.h
5049 (emacs.o, bytecode.o): Depend on window.h
5050
50512003-09-01 Dave Love <fx@gnu.org>
5052
5053 * Makefile.in (alloca.o): Remove commands.
5054 (coding.o): Depend on intervals.h composite.h window.h.
5055 (emacs.o): Depend on window.h keyboard.h keymap.h.
5056 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
5057 (bytecode.o): Depend on window.h.
5058
50592003-08-31 Jason Rumney <jasonr@gnu.org>
5060
5061 * w32term.c (w32_per_char_metric): Allow cached metrics to be
5062 returned even when font_type is unknown.
5063
5064 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
5065
50662003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5067
5068 * xterm.c (x_term_init): Initialize new fields in x_display_info.
5069
5070 * xterm.h (struct x_display_info): Add red/green/blue_bits and
5071 *_offset.
5072
5073 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
5074 calculate pixel value.
5075
50762003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
5077
5078 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
5079 Don't tell redisplay display is accurate when it's actually been
5080 paused for pending input.
5081
50822003-08-29 Richard M. Stallman <rms@gnu.org>
5083
5084 * dispnew.c (adjust_glyph_matrix): Call window_box
5085 whenever W is nonzero.
5086
5087 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
5088 (Fkill_local_variable, Fmake_variable_frame_local)
5089 (Flocal_variable_p, Flocal_variable_if_set_p):
5090 Use indirect_variable to trace thru variable aliases.
5091
5092 * config.in: Updated.
5093
5094 * callint.c (Fcall_interactively): Save and restore
5095 Vthis_command, Vthis_original_command, real_this_command,
5096 and current_kboard->Vlast_command.
5097
5098 * abbrev.c (Fexpand_abbrev): Insert before deleting.
5099
51002003-08-29 Gerd Moellmann <gerd@gnu.org>
5101
5102 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
5103
51042003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
5105
5106 * coding.c (decode_coding_iso2022): Initialize local variable c2.
5107 (decode_coding_sjis_big5): Likewise.
5108
51092003-08-27 Jason Rumney <jasonr@gnu.org>
5110
5111 * w32.c (sys_pipe): Protect against file descriptor overflow.
5112
5113 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
5114
5115 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
5116
51172003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
5118
5119 * xfns.c (Vgtk_version_string): New variable.
5120 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
5121
51222003-08-24 Eli Zaretskii <eliz@gnu.org>
5123
5124 * term.c (term_init): Remove `const' from buffer_size's declaration.
5125
5126 * Makefile.in (msdos.o): Depend on intervals.h.
5127
5128 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5129
51302003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5131
5132 * xterm.h (struct x_display_info): New fields: client_leader_window
5133 and Xatom_wm_client_leader.
5134
5135 * xterm.c (x_initialize): Move call to x_session_initialize to ...
5136 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
5137
5138 * xsmfns.c (create_client_leader_window): New function.
5139 (x_session_initialize): Call create_client_leader_window, take
5140 dpyinfo as argument.
5141
5142 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
5143
5144 * Makefile.in (xsmfns.o): Add more depenedencies.
5145
51462003-08-21 Dave Love <fx@gnu.org>
5147
5148 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
5149
51502003-08-21 Kenichi Handa <handa@m17n.org>
5151
5152 * term.c (term_init): Fix previous change; don't rely on the
5153 length of `buffer' if TERMINFO is defined.
5154
51552003-08-20 Dave Love <fx@gnu.org>
5156
5157 * atimer.h: Include lisp.h.
5158
5159 * lisp.h (EMACS_LISP_H): New.
5160 (popup_activated_flag): Don't declare.
5161
5162 * alloca.c: Some merging with gnulib. Change logic and doc
5163 concerning (x)malloc/(x)free -- no longer Emacs-specific.
5164 [DO_BLOCK_INPUT]: Don't include lisp.h.
5165 (xmalloc, xfree): Declare.
5166 (malloc): Don't declare.
5167
5168 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
5169 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
5170 atimer.h, blockinput.h.
5171
5172 * alloc.c (lisp_align_malloc): Change type of `aligned'.
5173
5174 * alloca.s: Removed.
5175
51762003-08-19 Gerd Moellmann <gerd@gnu.org>
5177
5178 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
5179 use -lncurses.
5180
5181 * term.c (term_init): Use a buffer of size 4096 for tgetent since
5182 FreeBSD returns something longer than 2044. Abort if the end of
5183 the buffer is overwritten.
5184
51852003-08-19 Miles Bader <miles@gnu.org>
5186
5187 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
5188
51892003-08-19 Gerd Moellmann <gerd@gnu.org>
5190
5191 * alloc.c (lisp_align_malloc): Check for memory full when
5192 allocating ablocks, which also avoids freeing a pointer into an
5193 ablocks structure.
5194
5195 * puresize.h (BASE_PURESIZE): Increase to 1100000.
5196
5197 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
5198
51992003-08-16 Richard M. Stallman <rms@gnu.org>
5200
5201 * editfns.c (Fencode_time): Doc fix.
5202
52032003-08-16 David Ponce <david@dponce.com>
5204
5205 * fileio.c (Fwrite_region): Fix conditional expression to issue
5206 the right message.
5207
52082003-08-16 Juri Linkov <juri@jurta.org>
5209
5210 * syntax.c (Fforward_word): Argument changed to optional.
5211 Set default value to 1.
5212
52132003-08-15 Kenichi Handa <handa@m17n.org>
5214
5215 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
5216 what autoscaled.
5217 (best_matching_font): Once we find a better scalable font, set
5218 non_scalable_has_exact_height_p to 1.
5219 (try_font_list): Call try_alternative_families to try any family
5220 with the given registry.
5221
52222003-08-09 Andreas Schwab <schwab@suse.de>
5223
5224 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
5225
5226 * print.c (print_string): Fix printing of multibyte string with
5227 nontrivial printcharfun.
5228
52292003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5230
5231 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
5232
5233 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
5234
52352003-07-31 Kenichi Handa <handa@m17n.org>
5236
5237 * process.c (read_process_output): Return the actually read bytes
5238 instead of the result of decoding.
5239
52402003-07-31 Kenichi Handa <handa@m17n.org>
5241
5242 * xterm.h (struct x_bitmap_record): New member have_mask.
5243
5244 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
5245 to 0.
5246 (x_create_bitmap_from_file): Likewise.
5247 (x_destroy_bitmap): Check have_mask member before freeing a mask.
5248 (x_destroy_all_bitmaps): Likewise.
5249 (x_create_bitmap_mask): Set have_mask member to 1.
5250
52512003-07-30 Richard M. Stallman <rms@gnu.org>
5252
5253 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
5254
52552003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5256
5257 * gtkutil.c (xg_mark_data): Update calls to mark_object.
5258
52592003-07-29 Richard M. Stallman <rms@gnu.org>
5260
5261 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
5262 Conditionalize XIM code on HAVE_XIM.
5263
5264 * fns.c (Fclear_string): New function.
5265 (syms_of_fns): defsubr it.
5266
52672003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
5268
5269 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
5270
52712003-07-22 Stefan Monnier <monnier@cs.yale.edu>
5272
5273 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
5274
5275 * buffer.c (delete_all_overlays): New function.
5276 * buffer.h (delete_all_overlays): Declare.
5277 * coding.c (run_pre_post_conversion_on_str):
5278 * print.c (temp_output_buffer_setup):
5279 * fileio.c (Finsert_file_contents):
5280 * minibuf.c (get_minibuffer): Use it.
5281
52822003-07-22 Andrew Choi <akochoi@shaw.ca>
5283
5284 * unexmacosx.c (unexec_regions_sort_compare):
5285 (unexec_regions_merge): New functions. Sort and merge unexec
5286 regions before dumping them.
5287
52882003-07-22 Dave Love <fx@gnu.org>
5289
5290 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
5291
52922003-07-21 Stefan Monnier <monnier@cs.yale.edu>
5293
5294 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
5295 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
5296 MARKBIT as the gcmarkbit for strings.
5297
52982003-07-21 Richard M. Stallman <rms@gnu.org>
5299
5300 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
5301
5302 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
5303 (syms_of_fns): Corresponding change.
5304
5305 * alloc.c (syms_of_alloc): Doc fixes.
5306
53072003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
5308
5309 * s/netbsd.h: Use -Wl syntax.
5310
53112003-07-17 Richard M. Stallman <rms@gnu.org>
5312
5313 * xterm.c (xim_initialize): Redo 6/24 change.
5314
53152003-07-15 Stefan Monnier <monnier@cs.yale.edu>
5316
5317 * buffer.c (copy_overlays): Use EMACS_INT for positions.
5318 (Fswitch_to_buffer): Don't signal an error when switching to the same
5319 buffer in a dedicated window.
5320
5321 * alloc.c: Use bitmaps for cons, as was done for floats.
5322 (init_float, init_cons): Let the normal code allocate the first block.
5323 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
5324 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
5325 New macros.
5326 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
5327 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
5328 (live_cons_p): Check the pointer is not past the `conses' array.
5329 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
5330 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
5331 (survives_gc_p): Use CONS_MARKED_P and simplify.
5332 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
5333
53342003-07-13 Paul Eggert <eggert@twinsun.com>
5335
5336 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
5337 puts it into BSS instead, at least on Solaris 8 and 9.
5338 This is a valid optimization, and it may occur on other platforms,
5339 so Emacs should not assume that initializing a static variable to
5340 zero puts it into data.
5341 * alloc.c (pure, staticvec):
5342 Initialize these arrays to nonzero, so that they're not
5343 put into BSS by that optimization.
5344
53452003-07-13 Stefan Monnier <monnier@cs.yale.edu>
5346
5347 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
5348 (lisp_align_malloc): Use posix_memalign is available.
5349 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
5350 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
5351 for consistency. Update users.
5352
53532003-07-13 Richard M. Stallman <rms@gnu.org>
5354
5355 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
5356
53572003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
5358
5359 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
5360 and use the Gtk+ function gtk_window_icon_from_file if available.
5361
5362 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
5363 handle mask of bitmaps.
5364 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
5365 mask property.
5366 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
5367
5368 * xterm.h (xg_set_icon): New function.
5369
53702003-07-12 Paul Eggert <eggert@twinsun.com>
5371
5372 * unexelf.c (unexec): Consider a section to precede the .bss
5373 section if its addresses overlap that of .bss.
5374
53752003-07-12 Richard M. Stallman <rms@gnu.org>
5376
5377 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
5378
5379 * config.in (HAVE_CRTIN): Add #undef.
5380 (INLINE): Really inline only if OPTIMIZE is defined.
5381
5382 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
5383 END_FILES_1.
5384 (START_FILES_1, END_FILES_1): New macros (conditional).
5385 (LD_SWITCH_SYSTEM_TEMACS): Define.
5386
5387 * s/openbsd.h: Don't include bsd4-3.h.
5388 (TERMINFO): Define.
5389 (LIBS_TERMCAP): Define.
5390 (LD_SWITCH_SYSTEM): Define (two definitions).
5391
5392 * xfns.c: Include libpng/png.h instead of png.h.
5393
53942003-07-11 Andreas Schwab <schwab@suse.de>
5395
5396 * buffer.c (modify_overlay): Update prototype.
5397 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
5398 Likewise.
5399
54002003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5401
5402 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
5403 (struct interval): Move to intervals.h.
5404 (struct Lisp_Marker): Use EMACS_INT for position info.
5405 (forward_point): Remove prototype of defunct function.
5406 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
5407 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
5408 (syms_of_textprop, set_text_properties): Remove prototypes that are
5409 already in intervals.h.
5410
5411 * intervals.h (struct interval): Move from lisp.h.
5412 Use EMACS_INT for position and size info.
5413
5414 * coding.c: Include intervals.h for Fset_text_properties.
5415
5416 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
5417 position and length information.
5418
54192003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5420
5421 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
5422 position and length information.
5423
54242003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5425
5426 Change overlays_after and overlays_before so the overlays themselves
5427 are linked into lists, rather than using cons cells. After all each
5428 Lisp_Misc already occupies 5 words, so we can add a `next' field to
5429 Lisp_Overlay for free and save up one cons cell per overlay (not
5430 to mention one indirection when traversing the list of overlay).
5431
5432 * lisp.h (struct Lisp_Overlay): New field `next'.
5433
5434 * buffer.h (struct buffer): Change overlays_before and overlays_after
5435 from Lisp lists of overlays to pointers to overlays.
5436
5437 * buffer.c (overlay_strings, recenter_overlay_lists):
5438 Fix typo in eassert in last commit.
5439 (unchain_overlay): New function.
5440 (add_overlay_mod_hooklist): Use AREF.
5441 (copy_overlays, reset_buffer, overlays_at, overlays_in)
5442 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
5443 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
5444 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
5445 (report_overlay_modification, evaporate_overlays, init_buffer_once):
5446 Adjust to new type of overlays_(before|after).
5447
5448 * alloc.c (mark_object): Mark the new `next' field of overlays.
5449 (mark_buffer): Manually mark the overlays_(after|before) fields.
5450
5451 * coding.c (run_pre_post_conversion_on_str):
5452 * editfns.c (overlays_around):
5453 * xdisp.c (load_overlay_strings):
5454 * fileio.c (Finsert_file_contents):
5455 * indent.c (current_column):
5456 * insdel.c (signal_before_change, signal_after_change):
5457 * intervals.c (set_point_both):
5458 * print.c (temp_output_buffer_setup): Use new type for
5459 overlays_(before|after).
5460
54612003-07-08 Stefan Monnier <monnier@cs.yale.edu>
5462
5463 * buffer.c (report_overlay_modification): Don't run hooks while
5464 traversing the list of overlays.
5465
5466 * buffer.h (struct buffer): Use an int for overlay_center.
5467 (overlays_at, evaporate_overlays, recenter_overlay_lists)
5468 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
5469
5470 * buffer.c (reset_buffer, recenter_overlay_lists)
5471 (adjust_overlays_for_insert, adjust_overlays_for_delete)
5472 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
5473 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
5474 (overlays_at, evaporate_overlays, recenter_overlay_lists)
5475 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
5476
5477 * xdisp.c (fast_find_position): Remove unused var.
5478
5479 * cmds.c (Qexpand_abbrev): New sym.
5480 (syms_of_cmds): Initialize it.
5481 (internal_self_insert): Use it to call expand-abbrev.
5482
54832003-07-09 Kim F. Storm <storm@cua.dk>
5484
5485 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
5486 was configured with --without-xim.
5487 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
5488
54892003-07-07 Richard M. Stallman <rms@gnu.org>
5490
5491 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
5492
5493 * alloc.c (Fgarbage_collect): Doc fix.
5494
54952003-07-07 Nozomu Ando <nand@mac.com>
5496
5497 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
5498
54992003-07-06 Stefan Monnier <monnier@cs.yale.edu>
5500
5501 * minibuf.c (read_minibuf): UNGCPRO before returning.
5502 (Ftry_completion, Fall_completions): Doc fix.
5503
5504 * alloc.c (live_float_p): Check that p is not past the `floats' array,
5505 now that `floats' is not the last element of the struct any more.
5506
55072003-07-06 Jason Rumney <jasonr@gnu.org>
5508
5509 * w32term.h (ClipboardSequence_Proc): New type.
5510
5511 * w32fns.c (clipboard_sequence_fn): New variable.
5512 (globals_of_w32fns): Initialize it.
5513
5514 * w32select.c (last_clipboard_sequence_number): New variable.
5515 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
5516 number if possible.
5517
55182003-07-06 Stefan Monnier <monnier@cs.yale.edu>
5519
5520 * m/amdx86-64.h (MARKBIT):
5521 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
5522 MARKBIT and ARRAY_MARK_FLAG any more.
5523
5524 * m/hp800.h (XSETMARKBIT):
5525 * m/sr2k.h (XSETMARKBIT):
5526 * lisp.h (XSETMARKBIT): Remove unused macro.
5527
5528 * lisp.h (mark_object): Change prototype.
5529
5530 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
5531 (last_marked): Change accordingly.
5532 (mark_interval, mark_maybe_object, mark_maybe_pointer)
5533 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
5534 (mark_buffer): Update calls to mark_object.
5535
5536 * bytecode.c (mark_byte_stack):
5537 * fns.c (sweep_weak_table):
5538 * keyboard.c (mark_kboards): Update calls to mark_object.
5539
55402003-07-06 Jason Rumney <jasonr@gnu.org>
5541
5542 * alloc.c (struct ablock): Only include padding when there is some.
5543
55442003-07-04 Stefan Monnier <monnier@cs.yale.edu>
5545
5546 * alloc.c (ALIGN): Add casts to simplify usage.
5547 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
5548 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
5549 (struct ablock, struct ablocks): New types.
5550 (free_ablock): New global var.
5551 (lisp_align_malloc, lisp_align_free): New functions.
5552 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
5553 (struct float_block): Reorder and add gcmarkbits.
5554 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
5555 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
5556 (init_float, make_float): Use lisp_align_malloc.
5557 (free_float, live_float_p): Don't use `type' any more.
5558 (make_float): Use FLOAT_UNMARK to access to mark bit.
5559 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
5560 Use FLOAT_MARKED_P to access the mark bit.
5561 (pure_alloc): Simplify use of ALIGN.
5562 (mark_object): Use FLOAT_MARK to access the mark bit.
5563 (gc_sweep): Use new macros to access the float's mark bit.
5564 (init_alloc_once): Init free_ablock.
5565
5566 * lisp.h (struct Lisp_Float): Remove unused field `type'.
5567
55682003-06-27 Stefan Monnier <monnier@cs.yale.edu>
5569
5570 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
5571 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
5572 (allocate_buffer): Move.
5573 (string_bytes): Don't mask markbit of `size_byte'.
5574 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
5575 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
5576 Use the `size' field of buffers (rather than the `name' field) for
5577 the mark bit, as is done for all other vectorlike objects.
5578 Use the new macros to access the mark bit of vectorlike objects.
5579
55802003-06-26 Richard M. Stallman <rms@gnu.org>
5581
5582 * puresize.h (BASE_PURESIZE): Increment base size.
5583
5584 * xdisp.c (fast_find_position): Enable Gerd's new definition.
5585
5586 * xterm.c (xim_initialize): Undo previous change.
5587
55882003-06-26 Stefan Monnier <monnier@cs.yale.edu>
5589
5590 * alloc.c (survives_gc_p): Simplify.
5591
5592 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
5593
5594 * window.c (Fset_window_dedicated_p): Simplify.
5595 (display_buffer_1): Don't raise the win from which minibuf was entered.
5596 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
5597 (Fminibuffer_selected_window): Simplify.
5598
5599 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
5600
5601 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
5602 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
5603
5604 * insdel.c (check_markers, adjust_markers_for_delete)
5605 (adjust_markers_for_insert, adjust_markers_for_replace)
5606 (prepare_to_modify_buffer, RESTORE_VALUE):
5607 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
5608 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
5609 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
5610 * alloc.c (Fmake_marker, free_marker, gc_sweep):
5611 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
5612 * editfns.c (save_excursion_restore, transpose_markers):
5613 * window.c (delete_window):
5614 * xdisp.c (message_dolog): Update for new types.
5615
56162003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5617
5618 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
5619 (realize_default_face): Use default_face_done_p for the force_p
5620 argument to set_lface_from_font_name. Set default_face_done_p to one.
5621
5622 * frame.c (make_frame): Initialize default_face_done_p.
5623
5624 * frame.h (struct frame): Add default_face_done_p.
5625
5626 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
5627 will be defined.
5628
56292003-06-25 Stefan Monnier <monnier@cs.yale.edu>
5630
5631 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
5632 Initialize the new field `gcmarkbit'.
5633 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
5634 (mark_interval_tree): Don't mark the tree separately from the nodes.
5635 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
5636 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
5637 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
5638
5639 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
5640 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
5641 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
5642 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
5643 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
5644
56452003-06-24 Dave Love <fx@gnu.org>
5646
5647 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
5648
5649 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
5650 from gnulib.
5651
56522003-06-21 Richard M. Stallman <rms@gnu.org>
5653
5654 * fileio.c (Fwrite_region): Alternate messages
5655 for append and partial write.
5656
5657 * keyboard.c (read_key_sequence): When converting upcase fn key to
5658 downcase, update fkey and keytran so `backspace' gets translated.
5659
5660 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
5661
5662 * process.c (wait_reading_process_input): Don't signal SIGIO
5663 in batch mode.
5664
56652003-06-17 Kenichi Handa <handa@m17n.org>
5666
5667 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
5668 composite.h.
5669
5670 * xselect.c: Don't include charset.h, coding.h, composite.h.
5671 (Qforeign_selection): New variable.
5672 (syms_of_xselect): Intern and static it.
5673 (selection_data_to_lisp_data): Return a unibyte string made from
5674 data with `foreign-selection' text property.
5675
56762003-06-15 Stefan Monnier <monnier@cs.yale.edu>
5677
5678 * termhooks.h (EVENT_INIT): New macro.
5679
5680 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
5681
5682 * alloc.c (mark_kboards): Move to keyboard.c.
5683
5684 * keyboard.c (record_asynch_buffer_change, read_avail_input):
5685 * xterm.c (x_dispatch_event):
5686 * xmenu.c (find_and_call_menu_selection):
5687 * xdisp.c (handle_tool_bar_click):
5688 * w32menu.c (menubar_selection_callback):
5689 * sysdep.c (kbd_input_ast, read_input_waiting):
5690 * msdos.c (dos_rawgetc):
5691 * macterm.c (mac_check_for_quit_char):
5692 * macmenu.c (menubar_selection_callback):
5693 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
5694 data to kbd_buffer_store_event.
5695
56962003-06-15 Kim F. Storm <storm@cua.dk>
5697
5698 * xdisp.c (x_fix_overlapping_area): Always use area relative X
5699 to fix redisplay problem with tall characters (such as \e,AC\e(B).
5700
57012003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
5702
5703 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
5704
57052003-06-12 Kenichi Handa <handa@m17n.org>
5706
5707 * fileio.c (Fwrite_region): Save and restore restriction.
5708
57092003-06-12 Dave Love <fx@gnu.org>
5710
5711 * alloca.c (alloca): Declare arg as size_t.
5712
5713 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
5714 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
5715
57162003-06-11 Dave Love <fx@gnu.org>
5717
5718 * search.c (shrink_regexp_cache): Use xrealloc.
5719 (syms_of_search): Use xmalloc.
5720
57212003-06-10 Kim F. Storm <storm@cua.dk>
5722
5723 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
5724 Adjust phys_cursor.x to be relative to window box, rather than
5725 text area before checking -- to ensure cursor is redrawn when
5726 exposing window.
5727 Note: This also fixes a similar (older) bug if display margins
5728 are present.
5729
57302003-06-06 Kenichi Handa <handa@m17n.org>
5731
5732 * coding.c (encoding_buffer_size): If coding->type is
5733 coding_type_ccl, double magnification on CRLF encoding.
5734
57352003-06-06 Jason Rumney <jasonr@gnu.org>
5736
5737 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
5738 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
5739
5740 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
5741 Mac too.
5742
57432003-06-05 Dave Love <fx@gnu.org>
5744
5745 * strftime.c: Merge changes from gnulib.
5746
5747 * mktime.c (__mktime_internal): Merge changes from gnulib
5748 involving year 69 and dst2.
5749
5750 Changes to merge with gnulib version and be consistent with the
5751 autoconf test:
5752
5753 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
5754 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
5755 [HAVE_LOCALE_H]: Include locale.h.
5756 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
5757
57582003-06-05 Kim F. Storm <storm@cua.dk>
5759
5760 * window.c (coordinates_in_window): Convert X and Y to window
5761 relative coordinates inside mode-line and header-line parts.
5762 Convert X and Y to margin area relative coordinates inside left
5763 and right display margin parts.
5764
57652003-06-05 Jason Rumney <jasonr@gnu.org>
5766
5767 * w32fns.c (add_system_logical_colors_to_map): New function.
5768 (Fx_open_connection): Use it.
5769
57702003-06-04 Stefan Monnier <monnier@cs.yale.edu>
5771
5772 * process.c (allocate_pty): Revert part of the previous patch.
5773 (Faccept_process_output): Simplify.
5774
57752003-06-04 Jason Rumney <jasonr@gnu.org>
5776
5777 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
5778
5779 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
5780 (lispy_mouse_wheel_names): Remove.
5781 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
5782 Always define drag_and_drop_syms.
5783
5784 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
5785 WHEEL_EVENT events.
5786
57872003-06-03 Stefan Monnier <monnier@cs.yale.edu>
5788
5789 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
5790
5791 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
5792
57932003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5794
5795 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
5796 menu item label.
5797
57982003-06-03 Richard M. Stallman <rms@gnu.org>
5799
5800 * window.c (Fwindow_edges): Doc fix.
5801 (Fwindow_pixel_edges, Fwindow_inside_edges)
5802 (Fwindow_inside_pixel_edges): New functions.
5803 (syms_of_window): defsubr them.
5804
5805 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
5806 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
5807
58082003-06-02 Stefan Monnier <monnier@cs.yale.edu>
5809
5810 * dispnew.c (Fsit_for): Don't lie about the number of args.
5811
58122003-06-02 Dave Love <fx@gnu.org>
5813
5814 * callproc.c: Use HAVE_FCNTL_H, not USG5.
5815 (syms_of_callproc) <process-environment>: Doc fix.
5816
5817 * doc.c: Use HAVE_FCNTL_H, not USG5.
5818
5819 * xfaces.c (font_rescale_ratio): Fix for K&R.
5820
5821 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
5822
5823 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
5824
5825 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
5826
5827 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
5828 (xg_create_frame_widgets): Use ENCODE_UTF_8.
5829
5830 * xterm.c (Qutf_8): Move to coding.c
5831
5832 * xmenu.c (ENCODE_MENU_STRING): New.
5833 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
5834 Use it.
5835
5836 * coding.h (ENCODE_UTF_8): New.
5837 (Qutf_8): Declare.
5838
5839 * coding.c (Qutf_8): New.
5840 (syms_of_coding): Intern it.
5841
5842 * fns.c: Doc fixes.
5843
58442003-06-02 Kenichi Handa <handa@m17n.org>
5845
5846 * buffer.c (Fset_buffer_multibyte): Fix previous change.
5847
58482003-06-01 Stefan Monnier <monnier@cs.yale.edu>
5849
5850 * lread.c (openp): Make sure STR is a string.
5851
58522003-06-01 David Ponce <david@dponce.com>
5853
5854 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
5855 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
5856
5857 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
5858 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
5859 (discard_mouse_events): Discard WHEEL_EVENT events too.
5860 (lispy_wheel_names, wheel_syms): New.
5861 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
5862 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
5863 defined.
5864 (make_lispy_event): Add WHEEL_EVENT handler.
5865
5866 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
5867 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
5868 WHEEL_EVENT events.
5869
58702003-05-31 John Paul Wallington <jpw@gnu.org>
5871
5872 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
5873 timer are in lisp/emacs-lisp.
5874
58752003-05-31 Kenichi Handa <handa@m17n.org>
5876
5877 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
5878 region when a buffer is changed to unibyte.
5879
5880 * charset.h (VALID_LEADING_CODE_P): New macro.
5881 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
5882
5883 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
5884 is nonzero, accept multibyte form of eight-bit-control chars.
5885 (decode_composition_emacs_mule): Likewise.
5886 (decode_coding_emacs_mule): Likewise.
5887 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
5888 multibyte form of eight-bit-control chars.
5889
5890 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
5891 (Finsert_file_contents): If coding-system-for-read is bound to
5892 Qauto_save_coding, use the coding system emacs-mule with special
5893 setting for recovering a file.
5894 (choose_write_coding_system): On auto saving, use the coding
5895 system emacs-mule with special setting for auto saving.
5896 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
5897
58982003-05-30 Kenichi Handa <handa@m17n.org>
5899
5900 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
5901 properly before calling ccl_driver.
5902
5903 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
5904
5905 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
5906 nonzero.
5907 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
5908 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
5909
59102003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
5911
5912 * xfaces.c (realize_default_face): Do not abort if lface is
5913 non-existent - reverts change from 2003-05-19.
5914
59152003-05-29 Kenichi Handa <handa@m17n.org>
5916
5917 * coding.c (decode_coding_iso2022): Pay attention to the byte
5918 sequence of CTEXT extended segment, and retain those bytes as is.
5919
59202003-05-28 Kenichi Handa <handa@m17n.org>
5921
5922 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
5923 of CODING_REPLACEMENT_CHARACTER.
5924 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
5925 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
5926 check this flag on encoding.
5927 (encode_coding_sjis_big5): Check
5928 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
5929 (Fset_terminal_coding_system_internal): Set
5930 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
5931 instead of setting CODING_FLAG_ISO_SAFE flag in
5932 terminal_coding.flags.
5933
5934 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
5935 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
5936 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
5937
59382003-05-28 Richard M. Stallman <rms@gnu.org>
5939
5940 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
5941
5942 * eval.c (unbind_to): Move init of this_binding to separate statement.
5943
59442003-05-28 Kim F. Storm <storm@cua.dk>
5945
5946 * xdisp.c (expose_window): Fix error in calculation of
5947 window relative coordinates of area to redisplay.
5948
59492003-05-27 Jason Rumney <jasonr@gnu.org>
5950
5951 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
5952
59532003-05-27 David Ponce <david@dponce.com>
5954
5955 Handle W32 mouse wheel events as mouse click events, like in X.
5956
5957 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
5958 MOUSE_WHEEL_EVENT anymore.
5959
5960 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
5961 Scrolling down/up the mouse wheel is respectively mapped to mouse
5962 button 4 and 5.
5963 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
5964 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
5965 WM_MOUSEWHEEL events.
5966
59672003-05-27 Andreas Schwab <schwab@suse.de>
5968
5969 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
5970
5971 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
5972 partially visible line.
5973
5974 * alloc.c (Fgarbage_collect): Fix last change.
5975
59762003-05-26 John Paul Wallington <jpw@gnu.org>
5977
5978 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
5979
59802003-05-25 Stefan Monnier <monnier@cs.yale.edu>
5981
5982 * window.c (Fset_window_buffer): Add type of `keep_margins'.
5983 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
5984
5985 * window.h (window_box_text_cols): Declare.
5986
5987 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
5988 (x_draw_vertical_border): Remove unused var `f'.
5989
5990 * xfaces.c (build_scalable_font_name): Remove `unused var
5991 pixel_size' warning.
5992
5993 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
5994
5995 * unexelf.c (unexec): Remove `unused var n' warning.
5996
5997 * strftime.c (my_strftime_localtime_r): Remove `defined but
5998 unused' warning.
5999
6000 * process.c (allocate_pty): Remove `unused var stb' and
6001 `cp might be used uninitialized' warnings.
6002
6003 * dispnew.c (mode_line_string): Remove unused var `f'.
6004
6005 * coding.c (find_safe_codings): Remove unused var `i'.
6006
6007 * bytecode.c (Fbyte_code): Remove `unused val' warning.
6008
6009 * buffer.c (Fkill_buffer): Remove unused var `list'.
6010
6011 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
6012
60132003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6014
6015 * frame.c (make_frame): Condition want_fullscreen with
6016 HAVE_WINDOW_SYSTEM.
6017
60182003-05-25 Juanma Barranquero <lektu@terra.es>
6019
6020 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
6021 (Fwindow_scroll_bars): Fix typo in docstring.
6022
60232003-05-24 Kim F. Storm <storm@cua.dk>
6024
6025 The following changes serve several purposes:
6026
6027 1) Swap the position of fringes and display margins in windows, i.e.
6028 the fringes are now displayed between the margins and the text area
6029 (by default).
6030
6031 2) Allow fringe and scroll bar parameters to be set per-buffer and
6032 per-window (like display margins). Such settings are now stored
6033 in window configurations, preserved when frames are resized, and
6034 copied when windows are split vertically or horizontally.
6035 Several bugs related to display margins have been fixed.
6036
6037 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
6038
6039 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
6040 rather than FRAME_WIDTH (FRAME_FONT (f)).
6041
6042 5) Introduce a consistent naming of variables, members and macros
6043 depending on whether their value is measured in pixels or in
6044 canonical columns/lines. Pixel dimensions are named *_width and
6045 *_height, while canonical columns/lines are named *_cols and
6046 *_lines. Pixel positions are named *_x and *_y, while column/line
6047 positions are named *_col and *_line.
6048
6049 6) Consolidate more of the X, W32, and MAC gui code by moving
6050 common data into struct frame, and generalize it for the non-gui
6051 case by using suitable defaults.
6052
6053 7) Cleanup and consolidate the macros controlling frame and window
6054 layout into frame.h and window.h, and generalize the use of the
6055 various window_box_* functions (enhanced to handle the new fringe
6056 position and the per-window fringe and scroll bar settings).
6057
6058 * frame.h (struct frame): Rename members height to text_lines,
6059 width to text_cols, window_height to total_lines, window_width to
6060 total_cols, new_height to new_text_lines, new_width to
6061 new_text_cols. All uses changed.
6062 (struct frame): New members which consolidate common members of
6063 x_output, w32_output, and mac_output structures: left_pos,
6064 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
6065 win_gravity, size_hint_flags, border_width, internal_border_width,
6066 line_height, fringe_cols, left_fringe_width, right_fringe_width,
6067 want_fullscreen. All uses changed.
6068 (struct frame): New member column_width contaning the canonical
6069 column width, analogue to line_height. All uses changed.
6070 (struct frame): Rename members scroll_bar_pixel_width to
6071 config_scroll_bar_width, and scroll_bar_cols to
6072 config_scroll_bar_cols. All uses changed.
6073 (struct frame): New member scroll_bar_actual_width which
6074 consolidates and renames the vertical_scroll_bar_extra member of
6075 x_output, w32_output, and mac_output structures. All uses changed.
6076 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
6077 from x/w32/macterm.h files. All uses changed. Also change code
6078 which referred to f->output_data...->pixel_height.
6079 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
6080 from x/w32/macterm.h files. All uses changed. Also change code
6081 which referred to f->output_data...->pixel_width.
6082 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
6083 Also change code which referred to f->height.
6084 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
6085 Also change code which referred to f->width.
6086 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
6087 to update new_text_lines and new_text_cols members directly.
6088 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
6089 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
6090 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
6091 FRAME_SCROLL_BAR_COLS. All uses changed.
6092 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
6093 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
6094 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
6095 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
6096 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
6097 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
6098 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
6099 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
6100 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
6101 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
6102 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
6103 return line_height member (it now has proper value also for
6104 non-window frames).
6105 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
6106 return new column_width member (rather than the default font width).
6107 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
6108 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
6109 from x/w32/macterm.h files. Unconditionally return corresponding
6110 member of frame structure (they now have proper values also for
6111 non-window frames).
6112 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
6113 Calculate return value from left and right widths.
6114 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
6115 internal_border_width member (has proper value for non-window frame).
6116 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
6117 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
6118 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
6119 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
6120 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
6121 consolidated from xterm.h, macterm.h, and w32term.h.
6122 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
6123 consolidated from xterm.h, macterm.h, and w32term.h.
6124 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
6125 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
6126 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
6127 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
6128 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
6129 consolidated from x/mac/w32term.h.
6130 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
6131 consolidated from x/mac/w32term.h.
6132 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
6133 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
6134 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
6135 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
6136
6137 * window.h (struct window): Rename members left to left_col,
6138 top to top_line, height to total_lines, width to total_cols,
6139 left_margin_width to left_margin_cols, right_margin_width to
6140 right_margin_cols, orig_height to orig_total_lines, orig_top to
6141 orig_top_line. All uses changed.
6142 (struct window): New members left_fringe_width, right_fringe_width,
6143 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
6144 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
6145 New macros primarily used to simplify other macros.
6146 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
6147 referred to XINT (w->width).
6148 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
6149 referred to XINT (w->height).
6150 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
6151 referred to XINT (w->width) * canon_x_unit.
6152 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
6153 referred to XINT (w->height) * canon_y_unit.
6154 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
6155 referred to XINT (w->left).
6156 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
6157 all uses and code that referred to XINT (w->left) + XINT (w->width).
6158 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
6159 referred to XINT (w->top).
6160 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
6161 referred to XINT (w->top) + XINT (w->height).
6162 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
6163 referred to XINT (w->left) * canon_x_unit.
6164 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
6165 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
6166 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
6167 referred to XINT (w->top) * canon_y_unit.
6168 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
6169 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
6170 (WINDOW_LEFTMOST_P): New macro.
6171 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
6172 All uses changed.
6173 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
6174 All uses changed.
6175 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
6176 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
6177 Do not exclude left fringe width.
6178 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
6179 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
6180 Do not exclude fringe widths.
6181 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
6182 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
6183 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
6184 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
6185 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
6186 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
6187 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
6188 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
6189 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
6190 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
6191 New macros. Change code which referenced corresponding
6192 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
6193 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
6194 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
6195 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
6196 allow per-window scroll-bar settings.
6197 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
6198 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
6199 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
6200 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
6201 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
6202 FRAME_SCROLL_BAR_WIDTH.
6203 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
6204 (WINDOW_SCROLL_BAR_AREA_X): New macros.
6205 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
6206 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
6207 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
6208 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
6209 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
6210 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
6211 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
6212 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
6213 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
6214 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
6215 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
6216 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
6217 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
6218 (window_from_coordinates): Update prototype.
6219 (Fset_window_buffer): Update EXFUN.
6220 (set_window_buffer): Update prototype.
6221
6222 * dispextern.h (struct glyph_matrix): Rename members window_left_x
6223 to window_left_col, window_top_y to window_top_line. All uses
6224 changed.
6225 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
6226 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
6227 internal_border_width is now set to 0 for non-window frames.
6228 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
6229 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
6230 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
6231 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
6232 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
6233 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
6234 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
6235 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
6236 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
6237 Move to window.h and renamed [see window.h changes].
6238 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
6239 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
6240 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
6241 Use WINDOW_TOTAL_LINES.
6242 (frame_update_line_height): Remove prototype.
6243
6244 * buffer.h (struct buffer): Rename members measured in columns:
6245 left_margin_width to left_margin_cols, right_margin_width to
6246 right_margin_cols. All uses changed.
6247 New members left_fringe_width, right_fringe_width,
6248 fringes_outside_margins for per-buffer fringe settings.
6249 New members scroll_bar_width and vertical_scroll_bar_type for
6250 per-buffer scroll bar settings.
6251
6252 * buffer.c (init_buffer_once): Set buffer_defaults and
6253 buffer_local_flags for new buffer-local variables
6254 left_fringe_width, right_fringe_width, fringes_outside_margins,
6255 scroll_bar_width, and vertical_scroll_bar_type.
6256 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
6257 default-* variables for them.
6258
6259 * dispnew.c: Make (many) trivial substitutions for renamed and
6260 new macros in dispextern.h, frame.h and window.h.
6261 (mode_line_string): No need to adjust width for mode lines, as it
6262 is already adjusted by the caller.
6263 (marginal_area_string): Handle fringes inside/outside margins.
6264
6265 * frame.c: Make (many) trivial substitutions for renamed and
6266 new macros in dispextern.h, frame.h and window.h.
6267 (make_frame): Initialize left_fringe_width, right_fringe_width,
6268 fringe_cols, scroll_bar_actual_width, border_width,
6269 internal_border_width, column_width, line_height, x_pixels_diff,
6270 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
6271 members with values suitable for a non-window frames.
6272
6273 * gtkutil.c: Make (many) trivial substitutions for renamed and
6274 new macros in dispextern.h, frame.h and window.h.
6275
6276 * indent.c: Make (few) trivial substitutions for renamed and
6277 new macros in dispextern.h, frame.h and window.h.
6278
6279 * keyboard.c: Make (many) trivial substitutions for renamed and
6280 new macros in dispextern.h, frame.h and window.h.
6281 (make_lispy_event): Use window positions returned from
6282 window_from_coordinates when constructing the lisp event for
6283 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
6284 (incorrect) values locally.
6285 (make_lispy_movement): Use window positions returned from
6286 window_from_coordinates when constructing the lisp event, rather
6287 than calculating (incorrect) values locally.
6288
6289 * scroll.c: Make (some) trivial substitutions for renamed and
6290 new macros in dispextern.h, frame.h and window.h.
6291
6292 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
6293 scroll-bars.
6294
6295 * sysdep.c: Make (few) trivial substitutions for renamed and
6296 new macros in dispextern.h, frame.h and window.h.
6297
6298 * term.c: Make (some) trivial substitutions for renamed and
6299 new macros in dispextern.h, frame.h and window.h.
6300
6301 * widget.c: Make (few) trivial substitutions for renamed and
6302 new macros in dispextern.h, frame.h and window.h.
6303
6304 * window.c: Make (many) trivial substitutions for renamed and
6305 new macros in dispextern.h, frame.h and window.h.
6306 (make_window): Initialize new members
6307 left_margin_cols, right_margin_cols, left_fringe_width,
6308 right_fringe_width, fringes_outside_margins, scroll_bar_width,
6309 and vertical_scroll_bar_type.
6310 (coordinates_in_window): Adapted to new fringe/margin positions
6311 and per-window fringes and scroll-bars.
6312 Fix bug related to incorrectly adjusting coordinates by
6313 frame's internal_border_width (the effect normally negible since
6314 the internal_border_width is typically 0 or 1 pixel, but very
6315 noticeable for an internal_border_width of e.g. 25 pixels).
6316 Upon successful return (other than ON_NOTHING), the coordinates
6317 are now always properly converted to window relative for the
6318 given display element.
6319 (window_from_coordinates): Add new parameters wx and wy to
6320 return the window relative x and y position in the returned
6321 window and part. A null arg means, don't return the position.
6322 All callers changed.
6323 (adjust_window_margins): New function which may reduce the width
6324 of the display margins if a window's text area is too small after
6325 resizing or splitting windows.
6326 (size_window): Fix bug that did not account for display margin
6327 widths when checking the minimum width of a window; use
6328 adjust_window_margins.
6329 (set_window_buffer): Call Fset_window_fringes and
6330 Fset_window_scroll_bars to setup per-window elements.
6331 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
6332 existing display margin, fringe widths, and scroll bar settings
6333 (e.g. after splitting a window or resizing the frame).
6334 All callers changed.
6335 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
6336 (Fsplit_window): Duplicate original window's display margin,
6337 fringe, and scroll-bar settings; then call Fset_window_buffer with
6338 KEEP_MARGINS non-nil. This fixes a bug which caused a split
6339 window to only preserve the display margins in one of the windows.
6340 When splitting horizontally, call adjust_window_margins on both
6341 windows to ensure that the text area of the new windows is non too
6342 narrow. This fixes a bug which could cause Emacs to trap if the
6343 width of the split window was less than the width of the display
6344 margins.
6345 (window_box_text_cols): Renamed from window_internal_width.
6346 All uses changed. Adapt to per-window fringes and scroll bars.
6347 Fix bug that caused vertical separator to be subtracted also on
6348 window frames. Fix another bug that did not reduce the returned
6349 value by the columns used for display margins.
6350 (window_scroll_line_based): Fix bug related to scrolling too much
6351 when display margins are present (implicitly fixed by the fix to
6352 window_box_text_cols).
6353 (scroll_left, scroll_right): Fix bug related to scrolling too far
6354 by default when display margins are present (implicitly fixed by
6355 the fix to window_box_text_cols).
6356 (struct saved_window): Rename members left to left_col, top to
6357 top_line, width to total_cols, height to total_lines, orig_top to
6358 orig_top_line, orig_height to orig_total_lines. All uses changed.
6359 New members left_margin_cols, right_margin_cols,
6360 left_fringe_width, right_fringe_width, fringes_outside_margins,
6361 scroll_bar_width, and vertical_scroll_bar_type for saving
6362 per-window display elements.
6363 (Fset_window_configuration): Restore display margins, fringes,
6364 and scroll bar settings. This fixes a bug which caused display
6365 margins to be discarded when saving and restoring a window
6366 configuration.
6367 (save_window_save): Save display margins, fringes, and scroll bar
6368 settings. This fixes a bug which caused display margins to be
6369 discarded when saving and restoring a window configuration.
6370 (Fset_window_margins): Do nothing if display margins are not
6371 really changed. Otherwise, call adjust_window_margins to ensure
6372 the text area doesn't get too narrow. This fixes a bug which
6373 could cause Emacs to trap if setting display margins wider than
6374 the width of the window.
6375 (Fset_window_fringes): New defun to allow user to specifically set
6376 this window's fringe widths and position vs. display margins.
6377 (Fwindow_fringes): New defun to return window's actual fringe
6378 settings.
6379 (Fset_window_scroll_bars): New defun to allow user to specifically
6380 set this window's scroll bar width and position.
6381 (Fwindow_scroll_bars): New defun to return window's actual scroll
6382 bar settings.
6383 (compare_window_configurations): Also compare display margins,
6384 fringes, and scroll bar settings.
6385 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
6386
6387 * xdisp.c: Make (many) trivial substitutions for renamed and
6388 new macros in dispextern.h, frame.h and window.h.
6389 (window_box_width): Adapt to per-window fringes and scroll bars,
6390 and new fringe vs. display margin position. Note that returned
6391 value is no longer guaranteed to be a whole multiple of the frame
6392 column width, since per-window fringes may now be any width.
6393 (window_box_left_offset): New function like window_box_left, but
6394 value is relative to left border of window (rather than frame).
6395 (window_box_right_offset): New function like window_box_right,
6396 but value is relative to left border of window.
6397 (window_box_left): Adapt to per-window fringes and scroll bars,
6398 and new fringe vs. display margin position. Simplify by using
6399 WINDOW_LEFT_EDGE_X and window_box_left_offset.
6400 (window_box): Allow null args for unnecessary return values;
6401 change/simplify relevant callers.
6402 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
6403 and new fringe vs. display margin position.
6404 Use window_box_left_offset and window_box_right_offset
6405 (get_glyph_string_clip_rect): Adapt to per-window fringes and
6406 scroll bars, and new fringe vs. display margin position.
6407 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
6408 (draw_fringe_bitmap): Rework to handle per-window fringes and new
6409 fringe vs. display margin position.
6410 (hscroll_window_tree): Use window_box_width instead of window_box.
6411 (redisplay_window): Adapt to per-window scroll bars.
6412 (draw_glyphs): Rework to handle per-window fringes and scroll
6413 bars, and new fringe vs. display margin position.
6414 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
6415 (x_clear_end_of_line): Adapt to per-window fringes and scroll
6416 bars, and new fringe vs. display margin position. Fix bug which
6417 increased total width of full_width rows by width of scroll bars
6418 although window's total width already includes that.
6419 (x_fix_overlapping_area): Simplify using window_box_left_offset.
6420 (expose_area): Simplify using window_box_left_offset.
6421 (x_draw_vertical_border): Handle per-window scroll bar settings,
6422 mixing windows with left, right and no scroll bars.
6423
6424 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
6425 where it's used in x_list_fonts (for clarity).
6426 (frame_update_line_height): Remove unused function; functionality
6427 is now done directly when setting the default font in x_set_font.
6428
6429 * xfns.c: Make (many) trivial substitutions for renamed and
6430 new macros in dispextern.h, frame.h and window.h.
6431
6432 * xmenu.c: Make (some) trivial substitutions for renamed and
6433 new macros in dispextern.h, frame.h and window.h.
6434
6435 * xterm.h (struct x_output): Move members left_pos, top_pos,
6436 border_width, pixel_height, pixel_width, line_height,
6437 internal_border_width, vertical_scroll_bar_extra,
6438 left_fringe_width, right_fringe_width, fringe_cols,
6439 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6440 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
6441 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6442 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6443 (PIXEL_WIDTH, PIXEL_HEIGHT)
6444 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6445 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6446 frame.h and renamed [see frame.h changes].
6447 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6448 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6449 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6450 and renamed [see frame.h changes].
6451
6452 * xterm.c: Make (several) trivial substitutions for renamed and
6453 new macros in dispextern.h, frame.h and window.h.
6454 (x_draw_glyph_string_box): Adapt to per-window fringes and
6455 scroll-bars.
6456 (scroll_run): Adapt to new fringe position.
6457 (glyph_rect): Use window coordinates returned from
6458 window_from_coordinates rather than frame_to_window_pixel_xy.
6459 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6460 scroll-bars.
6461 (handle_one_xevent): Simplify a USE_GTK conditional.
6462 (x_clip_to_row): Remove superfluous whole_line_p arg and code
6463 (fringes are now inside margins, i.e. always in the clipping area).
6464 All callers changed.
6465 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6466 directly, then call compute_fringe_widths. Don't call
6467 frame_update_line_height.
6468
6469 * w32term.h (struct w32_output): Move members left_pos, top_pos,
6470 border_width, pixel_height, pixel_width, line_height,
6471 internal_border_width, vertical_scroll_bar_extra,
6472 left_fringe_width, right_fringe_width, fringe_cols,
6473 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6474 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
6475 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6476 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6477 (PIXEL_WIDTH, PIXEL_HEIGHT)
6478 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6479 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6480 frame.h and renamed [see frame.h changes].
6481 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6482 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6483 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6484 and renamed [see frame.h changes].
6485
6486 * w32term.c: Make (several) trivial substitutions for renamed and
6487 new macros in dispextern.h, frame.h and window.h.
6488 (x_draw_glyph_string_box): Adapt to per-window fringes and
6489 scroll-bars.
6490 (glyph_rect): Use window coordinates returned from
6491 window_from_coordinates rather than frame_to_window_pixel_xy.
6492 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6493 scroll-bars.
6494 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
6495 (fringes are now inside margins, i.e. always in the clipping area).
6496 All callers changed.
6497 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6498 directly, then call compute_fringe_widths. Don't call
6499 frame_update_line_height.
6500
6501 * w32console.c: Make (few) trivial substitutions for renamed and
6502 new macros in dispextern.h, frame.h and window.h.
6503
6504 * w32fns.c: Make (many) trivial substitutions for renamed and
6505 new macros in dispextern.h, frame.h and window.h.
6506
6507 * w32menu.c: Make (few) trivial substitutions for renamed and
6508 new macros in dispextern.h, frame.h and window.h.
6509
6510 * macterm.h (struct mac_output): Move members left_pos, top_pos,
6511 border_width, pixel_height, pixel_width, line_height,
6512 internal_border_width, vertical_scroll_bar_extra,
6513 left_fringe_width, right_fringe_width, fringe_cols,
6514 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6515 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
6516 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6517 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6518 (PIXEL_WIDTH, PIXEL_HEIGHT)
6519 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6520 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6521 frame.h and renamed [see frame.h changes].
6522 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6523 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6524 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6525 and renamed [see frame.h changes].
6526
6527 * macterm.c: Make (several) trivial substitutions for renamed and
6528 new macros in dispextern.h, frame.h and window.h.
6529 (x_draw_glyph_string_box): Adapt to per-window fringes and
6530 scroll-bars.
6531 (glyph_rect): Use window coordinates returned from
6532 window_from_coordinates rather than frame_to_window_pixel_xy.
6533 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6534 scroll-bars.
6535 (x_clip_to_row): Remove superfluous whole_line_p arg and code
6536 (fringes are now inside margins, i.e. always in the clipping area).
6537 All callers changed.
6538 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6539 directly, then call compute_fringe_widths. Don't call
6540 frame_update_line_height.
6541
6542 * macfns.c: Make (several) trivial substitutions for renamed and
6543 new macros in dispextern.h, frame.h and window.h.
6544 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
6545
6546 * macmenu.c: Make (few) trivial substitutions for renamed and
6547 new macros in dispextern.h, frame.h and window.h.
6548
6549 * msdos.h (struct x_output): Remove members left_pos, top_pos,
6550 and line_height, and use corresponding new members in struct
6551 frame. All uses changed.
6552 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
6553 superseeded by corresponding macros in frame.h.
6554
6555 * msdos.c: Make (several) trivial substitutions for renamed and
6556 new macros in dispextern.h, frame.h and window.h.
6557 (IT_note_mouse_highlight): Use updated window coordinates returned
6558 by window_from_coordinates, rather than adjusting them locally.
6559 (internal_terminal_init): No need to initialize line_height here;
6560 it now defaults to 1.
6561
65622003-05-24 Stefan Monnier <monnier@cs.yale.edu>
6563
6564 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
6565 dropping `down' events.
6566
65672003-05-24 Andreas Schwab <schwab@suse.de>
6568
6569 * coding.c (find_safe_codings): Fix last change.
6570
65712003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
6572
6573 * xfns.c (x_window): Fix typo from 2003-05-21 change.
6574
65752003-05-23 Stefan Monnier <monnier@cs.yale.edu>
6576
6577 * xdisp.c (display_mode_element): Increase max depth.
6578 Simplify the error handling code. Use a different error string
6579 for the case where we hit the depth limit.
6580
6581 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
6582
6583 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
6584
65852003-05-21 Stefan Monnier <monnier@cs.yale.edu>
6586
6587 * intervals.c (get_local_map): Don't get char-property of previous
6588 point any more: get_pos_property already does it and better.
6589
65902003-05-21 Dave Love <fx@gnu.org>
6591
6592 [Merged from unicode branch.]
6593
6594 * xfns.c (x_window, x_window): Use use_xim.
6595
6596 * xterm.c (use_xim): Initialize.
6597 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
6598 (x_term_init): Maybe set use_xim.
6599
6600 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
6601
66022003-05-21 Jason Rumney <jasonr@gnu.org>
6603
6604 * unexw32.c (_start): Remove _fmode initialization.
6605
6606 * emacs.c (main) [WINDOWSNT]: Move it here.
6607
66082003-05-20 Dave Love <fx@gnu.org>
6609
6610 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
6611
66122003-05-19 Richard M. Stallman <rms@gnu.org>
6613
6614 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
6615 as value for QCfont attribute.
6616 (realize_default_face): lface should already exist; crash if not.
6617 Specify 0 for FORCE_P when calling set_lface_from_font_name.
6618
6619 * frame.c (Fignore_event): Doc fix.
6620
66212003-05-19 Kenichi Handa <handa@m17n.org>
6622
6623 * coding.c (decode_coding_string): Handle post-read-conversion
6624 even if the coding doesn't require decoding.
6625
66262003-05-18 Richard M. Stallman <rms@gnu.org>
6627
6628 * callproc.c (Fcall_process_region): Doc fix.
6629
66302003-05-17 Stefan Monnier <monnier@cs.yale.edu>
6631
6632 * lread.c (Fload): Print a message if package is obsolete.
6633
6634 * window.c (Fselect_window): Add optional `norecord' arg.
6635 (select_window_1): Fold into Fselect_window.
6636 (select_window_norecord): New function.
6637 (temp_output_buffer_show): Use it. Preserve current buffer.
6638
6639 * window.h (Fselect_window): Update declaration.
6640
6641 * window.c (delete_window, Fother_window, Fset_window_configuration):
6642 * minibuf.c (read_minibuf):
6643 * macterm.c (x_new_focus_frame):
6644 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
6645 * callint.c (Fcall_interactively):
6646 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
6647
6648 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
6649
66502003-05-17 David Kastrup <dak@gnu.org>
6651
6652 * process.c (read_process_output): Back out change from 2003-03-09.
6653
66542003-05-17 Stefan Monnier <monnier@cs.yale.edu>
6655
6656 * editfns.c (get_pos_property): Don't assume that `object' = nil.
6657
6658 * textprop.c (text_property_stickiness): New arg `buffer'.
6659
6660 * intervals.h (text_property_stickiness): New arg `buffer'.
6661 (get_pos_property): Declare.
6662
6663 * intervals.c (get_local_map): Use get_pos_property, to obey
6664 stickiness and empty overlays.
6665 (create_root_interval, graft_intervals_into_buffer): Use BEG.
6666 (merge_properties, intervals_equal, merge_properties_sticky):
6667 Use XCAR, XCDR.
6668 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
6669
66702003-05-17 Richard M. Stallman <rms@gnu.org>
6671
6672 * minibuf.c (read_minibuf): If buffer is empty, record the default
6673 in the history.
6674 (Fminibuffer_complete_word): When deleting the overlap, take account
6675 of its real position.
6676
6677 * fns.c (map_char_table): Fix previous change.
6678
6679 * syntax.c (find_defun_start):
6680 When open_paren_in_column_0_is_defun_start,
6681 return beginning of buffer.
6682
6683 * lisp.h (map_char_table): Declare added arg.
6684
6685 * fns.c (map_char_table): New arg TABLE gets the master table.
6686 All calls changed.
6687 Process default and inheritance, resorting to Faref if necessary.
6688
6689 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
6690 (Faccessible_keymaps): Pass new arg to map_char_table.
6691
6692 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
6693
6694 * casetab.c (set_case_table): Pass new arg to map_char_table.
6695
6696 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
6697
6698 * lisp.h (specbinding_func): New typedef.
6699 (struct specbinding): Use specbinding_func, to put the `volatile'
6700 in the right place.
6701
6702 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
6703 to avoid GCC warning.
6704
67052003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
6706
6707 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
6708
67092003-05-15 Stefan Monnier <monnier@cs.yale.edu>
6710
6711 * keyboard.c (apply_modifiers): Don't fill the other cache.
6712
67132003-05-14 Stefan Monnier <monnier@cs.yale.edu>
6714
6715 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
6716
6717 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
6718 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
6719 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
6720 (Fset_window_configuration, Fcurrent_window_configuration)
6721 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
6722 (Fpos_visible_in_window_p, mark_window_cursors_off)
6723 (window_internal_height, window_internal_width, Frecenter)
6724 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
6725 (replace_buffer_in_all_windows, init_window_once, init_window)
6726 (syms_of_window, keys_of_window): Move from lisp.h.
6727 * lisp.h: Move window.c declarations to window.h.
6728
6729 * bytecode.c: Include window.h.
6730 * emacs.c: Include window.h.
6731
6732 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
6733 (keyremap): Add `parent' field.
6734 (keyremap_step): Use it. Remove `parent' argument.
6735 (read_key_sequence): Setup and use the new `parent' field.
6736
67372003-05-11 Stefan Monnier <monnier@cs.yale.edu>
6738
6739 * keyboard.c (adjust_point_for_property): Ensure termination.
6740
67412003-05-10 Stefan Monnier <monnier@cs.yale.edu>
6742
6743 * keyboard.c (follow_key): Remove dead variable `did_meta'.
6744 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
6745 duplicated handling of function-key-map and key-translation-map
6746 in read_key_sequence.
6747 (read_key_sequence): Use them.
6748
6749 * keyboard.c (adjust_point_for_property): Try harder to move point
6750 to the non-sticky end of an invisible property.
6751
6752 * xdisp.c (single_display_prop_intangible_p): Make `space' display
6753 property intangible as well.
6754
67552003-05-10 Andreas Schwab <schwab@suse.de>
6756
6757 * xmenu.c (single_menu_item): Change last parameter to void* to
6758 avoid warning.
6759
67602003-05-09 Richard M. Stallman <rms@gnu.org>
6761
6762 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
6763 Bind Qinhibit_modification_hooks to t so there will be no GC.
6764 Rename local `tem' to `save_deactivate_mark'.
6765
6766 * eval.c (specpdl_ptr): Declare volatile.
6767 (unbind_to): Copy the whole binding and decrement specpdl_ptr
6768 before doing the work of unbinding it.
6769
6770 * lisp.h (struct specbinding): Declare elements volatile.
6771 (specpdl_ptr): Declare volatile.
6772
6773 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
6774
6775 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
6776 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
6777
67782003-05-08 Dave Love <fx@gnu.org>
6779
6780 * coding.c (Vlast_coding_system_used): Doc fix.
6781
67822003-05-07 Jason Rumney <jasonr@gnu.org>
6783
6784 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
6785 when system does not support them.
6786
67872003-05-05 Stefan Monnier <monnier@cs.yale.edu>
6788
6789 * fileio.c (Qwrite_region_annotate_functions): New var.
6790 (build_annotations): Use it to process the global part of the hook.
6791 (syms_of_fileio): Init and staticpro it.
6792
6793 * keyboard.c (safe_run_hooks_error): Display a message instead of
6794 silently ignoring the error.
6795
67962003-05-03 Stefan Monnier <monnier@cs.yale.edu>
6797
6798 * keyboard.c (input_available_signal): Mark static.
6799 (menu_bar_items): Use map_keymap.
6800 (menu_bar_one_keymap): Remove.
6801 (menu_bar_item): Adjust arglist (for use in map_keymap).
6802 Properly hide a second binding when not both are keymaps.
6803
6804 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
6805 (single_keymap_panes): Use it and map_keymap.
6806 (single_menu_item): Use skp as well.
6807
6808 * keymap.h (map_keymap_function_t): New type.
6809 (map_keymap): Declare.
6810
6811 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
6812 (map_keymap_call, Fmap_keymap): New functions.
6813 (syms_of_keymap): Defsubr map-keymap.
6814
68152003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6816
6817 * gtkutil.c (create_dialog, make_widget_for_menu_item)
6818 (make_menu_item, create_menus, xg_update_menu_item): Don't call
6819 ..._with_mnemonic functions for menu items.
6820
68212003-05-01 Kenichi Handa <handa@m17n.org>
6822
6823 * coding.c (coding_system_accept_latin_extra_p): Delete this
6824 function.
6825 (find_safe_codings): Pay attention to
6826 the property tranlsation-table-for-encode of each codings.
6827 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
6828
68292003-05-01 Stefan Monnier <monnier@cs.yale.edu>
6830
6831 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
6832
68332003-04-30 Stefan Monnier <monnier@cs.yale.edu>
6834
6835 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
6836
6837 * lisp.h (CHECK): Wrap args in parenthesis.
6838 (specbind): Fix doc: symbol = Qnil is not supported any more.
6839
6840 * bytecode.c (Fbyte_code) <unwind-protect>:
6841 Use Fprogn rather than 0 and Qnil.
6842
6843 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
6844 `double', and `triple' modifiers as well.
6845
68462003-04-30 Richard M. Stallman <rms@gnu.org>
6847
6848 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
6849
6850 * alloc.c (abort_on_gc): New variable.
6851 (Fgarbage_collect): Abort if abort_on_gc is set.
6852
6853 * lisp.h (abort_on_gc): Add decl.
6854
6855 * eval.c (Fsignal): Clear abort_on_gc.
6856
6857 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
6858 Reinit FORMAT_START and END before second scan.
6859
6860 * xdisp.c (move_it_vertically_backward): Do the final big else
6861 even if nlines is 0.
6862
6863 * xdisp.c (redisplay_internal): Finish the per-frame loop
6864 even if redisplay is suspended by input.
6865
68662003-04-24 Andrew Choi <akochoi@shaw.ca>
6867
6868 * macterm.c (x_list_fonts): Return all fonts that match if
6869 maxnames = -1.
6870
68712003-04-25 Kenichi Handa <handa@m17n.org>
6872
6873 * syntax.c (skip_chars): Fix previous change.
6874
68752003-04-24 Kenichi Handa <handa@m17n.org>
6876
6877 * syntax.c (skip_chars): Make the code faster by using the common
6878 technique of *p, *stop, and *endp.
6879
68802003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6881
6882 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
6883 tool_bar_items so GTK tool bar expose callback does not access items
6884 being updated.
6885
68862003-04-19 Stefan Monnier <monnier@cs.yale.edu>
6887
6888 * eval.c (Fapply): Undo last change and add a comment about why.
6889
68902003-04-18 Miles Bader <miles@gnu.org>
6891
6892 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
6893 pickier PARSE_MULTIBYTE_SEQ.
6894
68952003-04-17 Stefan Monnier <monnier@cs.yale.edu>
6896
6897 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
6898 Use XCDR, XCAR, CONSP.
6899 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
6900 (Fapply): Remove unnecessary GCPRO.
6901
6902 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
6903
6904 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
6905
6906 * buffer.h: Don't hardcode BEG==1.
6907
6908 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
6909
69102003-04-16 Richard M. Stallman <rms@gnu.org>
6911
6912 * xdisp.c (try_window, try_window_reusing_current_matrix):
6913 When at end of window, set window_end_pos to Z-ZV.
6914
6915 * buffer.c (Foverlay_recenter): Doc fix.
6916
69172003-04-14 Stefan Monnier <monnier@cs.yale.edu>
6918
6919 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
6920
69212003-04-14 Andrew Choi <akochoi@shaw.ca>
6922
6923 * macterm.c (mac_check_for_quit_char): Don't check more often than
6924 once a second.
6925
69262003-04-11 Stefan Monnier <monnier@cs.yale.edu>
6927
6928 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
6929 specially, so that they can't hide an implicit switch-frame event.
6930 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
6931 (head_table): Use switch-frame as event_kind for select-window.
6932 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
6933
6934 * editfns.c (Fformat): Lisp_Object/int mixup.
6935 (format2): Remove unused var numargs.
6936
69372003-04-11 Kenichi Handa <handa@m17n.org>
6938
6939 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
6940 (Qafter_insert_file_set_coding): New variable.
6941 (syms_of_fileio): Initialize and staticpro it. Delete declaration
6942 for after-insert-file-adjust-coding-function.
6943 (Finsert_file_contents): Call Qafter_insert_file_set_coding
6944 instead of Vafter_insert_file_adjust_coding_function.
6945
69462003-04-11 Kenichi Handa <handa@m17n.org>
6947
6948 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
6949
6950 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
6951 string. Callers changed.
6952
69532003-04-10 Kenichi Handa <handa@m17n.org>
6954
6955 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
6956 (syms_of_fileio): Declare it as a lisp variable.
6957 (Finsert_file_contents):
6958 Call Vafter_insert_file_adjust_coding_function before calling
6959 decode-format.
6960
69612003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6962
6963 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
6964 get GtkAdjustment as widget now is a GtkRange.
6965
6966 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
6967 GtkRange to avoid memory leak.
6968
69692003-04-09 Kenichi Handa <handa@m17n.org>
6970
6971 * xfaces.c (Vface_font_rescale_alist): New variable.
6972 (struct font_name): New member rescale_ratio.
6973 (font_rescale_ratio): New function.
6974 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
6975 (better_font_p): On comparing point sized, pay attention to
6976 recale_ratio member of fonts.
6977 (build_scalable_font_name): Reflect font->rescale_ratio in the
6978 font name.
6979 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
6980
6981 * lread.c (read1): Before calling index, check if the 2nd
6982 arguemnt is in ASCII range.
6983
69842003-04-08 Richard M. Stallman <rms@gnu.org>
6985
6986 * fileio.c (Ffile_symlink_p): Doc fix.
6987
6988 * editfns.c (Fformat): Translate positions of text properties
6989 in the format string to apply them to the result.
6990
6991 * fileio.c (Finsert_file_contents): Doc fix.
6992 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
6993
69942003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6995
6996 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
6997
69982003-04-08 Steven Tamm <steventamm@mac.com>
6999
7000 * mac.c (init_mac_osx_environment): Switch libexec and bin so
7001 that self-contained application finds libexec files.
7002
70032003-04-08 Kenichi Handa <handa@m17n.org>
7004
7005 * coding.c (code_convert_region_unwind):
7006 Set Vlast_coding_system_used to the argument.
7007 (code_convert_region): If post-read-conversion function changed
7008 the value of last-coding-sytem, keep the new value in
7009 coding->symbol so that it won't be overridden.
7010 (run_pre_post_conversion_on_str): Likewise.
7011 (coding_system_accept_latin_extra_p): New function.
7012 (find_safe_codings): Pay attention to characters registered in
7013 latin-extra-code-table.
7014
70152003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
7016
7017 * Makefile.in (md5.o): Add missing dependency info.
7018
70192003-04-06 Richard M. Stallman <rms@gnu.org>
7020
7021 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
7022
7023 * marker.c (verify_bytepos): New function.
7024
7025 * intervals.c (set_intervals_multibyte_1): When becoming
7026 multibyte, adjust right and left child sizes to a whole set of
7027 characters. If an interval gets zero total-length, delete it.
7028 If an interval consists of just its children, delete one of them.
7029
7030 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
7031 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
7032
7033 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
7034 All calls deleted.
7035 (lisp_malloc): Do the work here directly.
7036
70372003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
7038
7039 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
7040 char tables.
7041
70422003-04-04 Kenichi Handa <handa@m17n.org>
7043
7044 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
7045 destructively change "%S" to "%s".
7046
70472003-04-03 Miles Bader <miles@gnu.org>
7048
7049 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
7050 always set.
7051
70522003-04-01 Dave Love <fx@gnu.org>
7053
7054 * xfns.c (xpm_lookup_color): Grok "opaque".
7055
70562003-03-31 Andrew Choi <akochoi@shaw.ca>
7057
7058 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
7059 parent window ID.
7060
7061 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
7062
7063 * macterm.h (struct mac_output): Define x_pixels_diff and
7064 y_pixels_diff.
7065
70662003-03-31 Juanma Barranquero <lektu@terra.es>
7067
7068 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
7069 blockinput.h and files included from it.
7070
70712003-03-31 Kim F. Storm <storm@cua.dk>
7072
7073 The following changes consolidates the common code related to
7074 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
7075 files into frame.c.
7076
7077 * frame.c: Include blockinput.h.
7078 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
7079 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
7080 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
7081 related vars here.
7082 (struct frame_parm_table, frame_parms): New table for describing
7083 frame parameters and their associated Q-variable.
7084 The order of the parameters corresponds to the sequence of the
7085 frame_parm_handlers table in redisplay_interface.
7086 (x_fullscreen_move, x_set_frame_parameters)
7087 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
7088 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
7089 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7090 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
7091 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
7092 Generic functions for processing of frame parameters.
7093 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
7094 (display_x_get_resource, x_get_resource_string): Functions for
7095 generic access to X resources.
7096 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
7097 (x_default_parameter, Fx_parse_geometry): Functions for generic
7098 access to frame parameters.
7099 (x_figure_window_size): Generic calculation of frame size.
7100 Fixed to add space needed for tool bar. Also setup size_hint_flags.
7101 (syms_of_frame): Intern and staticpro frame parameter variables.
7102 Defvar_lisp Vx_resource_class and Vx_resource_name here.
7103 Defsubr Sx_get_resource and Sx_parse_geometry.
7104
7105 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
7106 parameter related vars defined in frame.c.
7107 (EMACS_CLASS): Define here.
7108 (enum FULLSCREEN_*): Define here.
7109 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
7110 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
7111 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
7112 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
7113 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
7114 (x_set_visibility, x_set_autoraise, x_set_autolower)
7115 (x_set_unsplittable, x_set_vertical_scroll_bars)
7116 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
7117 (x_figure_window_size): Add prototypes.
7118
7119 * dispextern.h (frame_parm_handler): New typedef.
7120 (struct redisplay_interface): New member frame_parm_handlers.
7121 (enum resource_types): Move declaration here.
7122 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
7123 (x_default_parameter): Add prototypes.
7124
7125 * window.c: Remove extern decl for frame parameter vars.
7126 (change_window_heights): New generic function;
7127 replaces x_change_window_heights. All users changed.
7128
7129 * window.h (change_window_heights): Add prototype.
7130
7131 * xfaces.c: Remove extern decl for frame parameter vars.
7132
7133 * xterm.h (EMACS_CLASS): Remove. Use generic define.
7134 (struct w32_display_info): Fix type of xrdb member.
7135 (enum FULLSCREEN_*): Remove.
7136 Remove prototypes for generic functions (in frame.h).
7137
7138 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
7139 parameters now defined in frame.h and frame.c.
7140 (Vx_resource_name): Remove. Use generic var.
7141 (enum x_frame_parms): Remove (bogus, unused enum).
7142 (check_x_display_info): Make non-static (for frame.c).
7143 (struct x_frame_parm_table, x_frame_parms): Remove.
7144 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
7145 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
7146 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7147 (x_change_window_heights, x_set_autoraise, x_set_autolower)
7148 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
7149 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
7150 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
7151 Remove. Use generic functions instead.
7152 (enum resource_types): Remove.
7153 (x_set_scroll_bar_default_width): New global function (for frame.c).
7154 (Fx_create_frame): Depend on x_figure_window_size to add space for
7155 toolbar and setup size_hint_flags.
7156 (x_frame_parm_handlers): New table for redisplay_interface.
7157 (syms_of_xfns): Don't intern/staticpro removed vars.
7158
7159 * xterm.c: Remove unnecessary extern declarations.
7160 (x_fullscreen_adjust): Remove. Use generic instead.
7161 (x_redisplay_interface): Add x_frame_parm_handlers member.
7162
7163 * w32gui.h (XrmDatabase): New (dummy) typedef.
7164
7165 * w32term.h (EMACS_CLASS): Remove. Use generic define.
7166 (struct w32_display_info): Fix type of xrdb member.
7167 (enum FULLSCREEN_*): Remove.
7168 (x_fullscreen_adjust): Remove prototype.
7169
7170 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
7171 parameters now defined in frame.h and frame.c.
7172 (Vx_resource_name): Remove. Use generic var.
7173 (enum x_frame_parms): Remove (bogus, unused enum).
7174 (check_x_display_info): Make non-static (for frame.c).
7175 (struct x_frame_parm_table, x_frame_parms): Remove.
7176 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
7177 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
7178 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7179 (x_change_window_heights, x_set_autoraise, x_set_autolower)
7180 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
7181 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
7182 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
7183 Remove. Use generic functions instead.
7184 (enum resource_types): Remove.
7185 (x_set_scroll_bar_default_width): New global function (for frame.c).
7186 (Fx_create_frame): Depend on x_figure_window_size to add space for
7187 toolbar and setup size_hint_flags.
7188 (w32_frame_parm_handlers): New table for redisplay_interface.
7189 (syms_of_w32fns): Don't intern/staticpro removed vars.
7190
7191 * w32term.c: Remove unnecessary extern declarations.
7192 (x_fullscreen_adjust): Remove. Use generic instead.
7193 (x_redisplay_interface): Add w32_frame_parm_handlers member.
7194
7195 * w32reg.c (x_get_string_resource): Use XrmDatabase.
7196
7197 * macgui.h (XrmDatabase): New (dummy) typedef.
7198
7199 * macterm.h (EMACS_CLASS): Remove.
7200 (struct mac_display_info): Add xrdb member.
7201 (struct mac_output): Add want_fullscreen member.
7202
7203 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
7204 parameters now defined in frame.h and frame.c.
7205 (Vx_resource_name): Remove. Use generic var.
7206 (check_x_display_info): Make non-static (for frame.c).
7207 (struct x_frame_parm_table, x_frame_parms): Remove.
7208 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
7209 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
7210 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7211 (x_change_window_heights, x_set_autoraise, x_set_autolower)
7212 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
7213 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
7214 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
7215 Remove. Use generic functions instead.
7216 (enum resource_types): Remove.
7217 (x_set_scroll_bar_default_width): New global function (for frame.c).
7218 (mac_frame_parm_handlers): New table for redisplay_interface.
7219 (syms_of_macfns): Don't intern/staticpro removed vars.
7220
7221 * macterm.c: Remove unnecessary extern declarations.
7222 (x_redisplay_interface): Add mac_frame_parm_handlers member.
7223
7224 * Makefile.in (frame.o): Add dependency on blockinput.h and files
7225 included from it (atimer.h and systime.h).
7226
72272003-03-30 Andreas Schwab <schwab@suse.de>
7228
7229 * xdisp.c (x_insert_glyphs): Fix swapped width and height
7230 parameters for shift_glyphs_for_insert.
7231
7232 * macterm.c (x_redisplay_interface): Add missing entry for
7233 draw_vertical_window_border.
7234
72352003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
7236
7237 * fileio.c (Fexpand_file_name): In the no-handler case, after
7238 expanding, look again for a handler and invoke it. This is needed
7239 for filenames like "/foo/../user@host:/bar/../baz" -- the first
7240 expansion produces "/user@host:/bar/../baz" which needs to be
7241 expanded again for the finame result "/user@host:/baz".
7242
72432003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7244
7245 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
7246 of area to be redrawn for better performance.
7247
72482003-03-28 Stefan Monnier <monnier@cs.yale.edu>
7249
7250 * xterm.c (take_vertical_position_into_account): Remove.
7251 (xt_action_hook): Call set_vertical_scroll_bar if needed.
7252 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
7253 (xm_scroll_callback, x_create_toolkit_scroll_bar)
7254 (x_set_toolkit_scroll_bar_thumb): Simplify.
7255 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
7256 (XTread_socket): Remove unused var.
7257 (x_make_frame_invisible): Replace goto with else.
7258
7259 * xdisp.c (set_vertical_scroll_bar): New fun.
7260 (redisplay_window): Use it.
7261
72622003-03-26 Richard M. Stallman <rms@gnu.org>
7263
7264 * xdisp.c (update_tool_bar): Recompute tool bar if
7265 update_mode_lines is set. Set w->update_mode_line
7266 only if the tool bar contents actually change.
7267 (update_menu_bar): Undo previous change.
7268
72692003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7270
7271 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
7272 (xg_frame_set_char_size): Calculate scroll bar width before frame
7273 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
7274 (xg_separator_p): Check for all documented separator types.
7275 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
7276 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
7277
7278 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
7279 so tool bar gets updated.
7280
72812003-03-26 Stefan Monnier <monnier@cs.yale.edu>
7282
7283 * data.c (store_symval_forwarding): Re-instate part of the code
7284 that was deleted with too much enthusiasm.
7285
72862003-03-25 Stefan Monnier <monnier@cs.yale.edu>
7287
7288 * data.c (store_symval_forwarding): Delete special read-only
7289 hack for type == -1, since we now use ->constant instead.
7290 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
7291
7292 * buffer.c (overlays_in): Declare static.
7293 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
7294 `constant' field rather than the variable's `type' field.
7295
72962003-03-24 Andrew Choi <akochoi@shaw.ca>
7297
7298 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
7299
7300 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
7301
7302 * fns.c [MAC_OSX]: Do not redefine vector.
7303
7304 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
7305
7306 * macgui.h: Remove definition of No_Cursor.
7307
7308 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
7309
7310 * xdisp.c: Define No_Cursor.
7311 (x_write_glyphs, notice_overwritten_cursor)
7312 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
7313 (note_mouse_highlight): Remove Mac-specific code.
7314 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
7315
73162003-03-24 John Paul Wallington <jpw@gnu.org>
7317
7318 * xdisp.c (redisplay_window): If mini window's buffer is not
7319 empty, then redisplay it like other windows.
7320
73212003-03-23 Kim F. Storm <storm@cua.dk>
7322
7323 * w32term.c (w32_draw_window_cursor): Fix last change.
7324
73252003-03-23 Kenichi Handa <handa@m17n.org>
7326
7327 * alloc.c (make_string_from_bytes, make_specified_string):
7328 Add `const' for the arg CONTENTS.
7329
7330 * lisp.h (make_string_from_bytes, make_specified_string):
7331 Prototypes adjusted.
7332
73332003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7334
7335 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
7336
7337 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
7338 (XG_SB_RANGE): New define.
7339
7340 * gtkutil.c (xg_fixed_handle_expose): New function.
7341 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
7342 expose events.
7343 (xg_update_scrollbar_pos): Take two more arguments, left and width
7344 of scroll bar including borders.
7345 Clear left and right part outside scroll bar separately as some
7346 themes have bars that are not an even number of pixels.
7347 Don't set reallocate_redraws, don't call
7348 gdk_window_process_all_updates.
7349 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
7350 so no need to change it. Calculate size and value with XG_SB_RANGE.
7351
7352 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
7353 Pass left and width of scroll bar including borders to
7354 xg_update_scrollbar_pos.
7355
73562003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
7357
7358 * Makefile.in: Make sure space precedes end-of-line backslashes.
7359
73602003-03-22 Kim F. Storm <storm@cua.dk>
7361
7362 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
7363 Add generic versions here. Remove system specific versions
7364 defined elsewhere.
7365
7366 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
7367 Add prototypes.
7368
7369 * xterm.h (STORE_NATIVE_RECT): New macro.
7370
73712003-03-21 Kim F. Storm <storm@cua.dk>
7372
7373 * xdisp.c (get_glyph_string_clip_rect):
7374 Use FRAME_INTERNAL_BORDER_WIDTH.
7375
7376 * dispextern.h (struct redisplay_interface): Add active_p
7377 argument to draw_window_cursor member. All uses changed.
7378
73792003-03-21 Kim F. Storm <storm@cua.dk>
7380
7381 The following changes consolidate code related to writing and
7382 inserting glyphs, exposing frame, the tool bar, the mouse face,
7383 the output cursor, and help echo from xterm.c, w32term.c and
7384 macterm.c into xdisp.c. It also generalizes the use of the
7385 window_part enum instead of using numeric values throughout.
7386
7387 * xdisp.c: Consolidate gui-independent code here.
7388 Include keymap.h.
7389 (Qhelp_echo): Import.
7390 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
7391 (help_echo_string, help_echo_window, help_echo_object)
7392 (previous_help_echo_string, help_echo_pos): Declare here.
7393 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
7394 (estimate_mode_line_height): Define here. Handle windowing
7395 systems directly (without using estimate_mode_line_height_hook).
7396 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
7397 (update_window_cursor, update_cursor_in_window_tree)
7398 (fast_find_position, fast_find_string_pos)
7399 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
7400 (expose_area, expose_line, expose_overlaps, expose_window)
7401 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
7402 declared static as they are only used locally in xdisp.c.
7403 (draw_glyphs): Rename from x_draw_glyphs and make static.
7404 (tool_bar_item_info, notice_overwritten_cursor): Make static.
7405 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
7406 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
7407 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
7408 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
7409 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
7410 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
7411 (note_mouse_highlight, x_clear_window_mouse_face)
7412 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
7413 (x_intersect_rectangles): New generic functions for use by xdisp.c
7414 and GUI front-ends.
7415 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
7416 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
7417
7418 * dispextern.h (Display_Info): Generic typedef for *_display_info.
7419 (NativeRectangle): Generic typedef for rectangle type.
7420 (enum window_part): Move here from window.c.
7421 (struct redisplay_interface): New members flush_display_optional,
7422 define_frame_cursor, clear_frame_area, draw_window_cursor,
7423 draw_vertical_window_border, shift_glyphs_for_insert.
7424 Rename member clear_mouse_face to clear_window_mouse_face.
7425 (estimate_mode_line_height_hook): Remove hook.
7426 (auto_raise_tool_bar_buttons_p): Don't declare extern.
7427 (tool_bar_item_info): Remove prototype.
7428 (help_echo_string, help_echo_window, help_echo_object)
7429 (previous_help_echo_string, help_echo_pos)
7430 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
7431 (x_stretch_cursor_p, output_cursor): Declare extern.
7432 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
7433 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
7434 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
7435 (display_and_set_cursor, set_output_cursor, x_cursor_to)
7436 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
7437 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
7438 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
7439 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
7440 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
7441 Add prototypes.
7442 (mode_line_string, marginal_area_string): Fix prototypes.
7443
7444 * window.c (enum window_part): Move to dispextern.h.
7445 (coordinates_in_window): Use enum window_part member names
7446 instead of numbers to describe return value.
7447 (struct check_window_data): Change part member to window_part.
7448 (check_window_containing): Return window_part unaltered.
7449 (window_from_coordinates): Change part arg from int to enum
7450 window_part. Allow part arg to be null. All users changed.
7451
7452 * window.h (window_from_coordinates): Fix prototype.
7453
7454 * term.c (estimate_mode_line_height): Move to xdisp.c.
7455
7456 * keyboard.c (make_lispy_event): Use enum window_part.
7457
7458 * dispnew.c (mode_line_string, marginal_area_string): Use enum
7459 window_part instead of int in arg list. Users changed.
7460
7461 * xterm.h (No_Cursor): Declare as None for X.
7462 (struct mac_output): Replace member cross_cursor by hand_cursor.
7463
7464 * xterm.c: Remove consolidated defines and code.
7465 (BETWEEN): Remove unused macro.
7466 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
7467 (x_define_frame_cursor, x_clear_frame_area)
7468 (x_draw_window_cursor): New X-specific functions for RIF.
7469 (x_redisplay_interface): Add new members.
7470
7471 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
7472
7473 * w32term.h (struct w32_output): Remove cross_cursor member.
7474
7475 * w32term.c: Remove consolidated defines and code.
7476 (BETWEEN): Remove unused macro.
7477 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
7478 (w32_define_frame_cursor, w32_clear_frame_area)
7479 (w32_draw_window_cursor): New W32-specific functions for RIF.
7480 (w32_redisplay_interface): Add new members.
7481
7482 * w32gui.h (No_Cursor): Define as 0 for W32.
7483 (XRectangle): Add X compatible rectangle type.
7484 (NativeRectangle): Declare as RECT for W32.
7485 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
7486
7487 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
7488
7489 * w32console.c: Remove consolidated defines and code.
7490
7491 * msdos.h (Display_Info): Add generic typedef.
7492
7493 * msdos.c: Remove consolidated defines and code.
7494 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
7495
7496 * macterm.h (struct mac_output): Replace member cross_cursor by
7497 hand_cursor.
7498 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
7499
7500 * macterm.c: Remove consolidated defines and code.
7501 (BETWEEN): Remove unused macro.
7502 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
7503 (mac_define_frame_cursor, mac_clear_frame_area)
7504 (mac_draw_window_cursor): New Mac-specific functions for RIF.
7505 (x_redisplay_interface): Add new members.
7506
7507 * macgui.h (No_Cursor): Define as 0 for Mac.
7508 (XRectangle): Add X compatible rectangle type.
7509 (NativeRectangle): Declare as Rect for Mac.
7510 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
7511
7512 * macfns.c (x_set_mouse_color): Setup hand_cursor.
7513 (x_set_cursor_color): Use x_display_and_set_cursor.
7514
7515 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
7516 included from it. Add dependency on keymap.h.
7517
7518 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
7519
75202003-03-21 Kenichi Handa <handa@m17n.org>
7521
7522 * fileio.c (Fexpand_file_name): Fix previous change.
7523
75242003-03-19 Kenichi Handa <handa@m17n.org>
7525
7526 * fileio.c (Ffile_name_directory): Reconstruct file name by
7527 make_specified_string.
7528 (Ffile_name_nondirectory, Ffile_name_as_directory)
7529 (Fdirectory_file_name, Fexpand_file_name)
7530 (Fsubstitute_in_file_name): Likewise.
7531 (Fread_file_name): Compare decoded homedir with DIR and
7532 DEFAULT_FILENAME.
7533
7534 * alloc.c (make_specified_string): If NCHARS is negative, count
7535 the number of characters.
7536
75372003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7538
7539 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
7540 all widgets.
7541
7542 * gtkutil.h: Removed xg_ignore_next_thumb.
7543
75442003-03-18 Kenichi Handa <handa@m17n.org>
7545
7546 * coding.c (Vchar_coding_system_table): Remove this variable.
7547 (Vcoding_system_safe_chars): New variable.
7548 (intersection): Remove this function.
7549 (find_safe_codings): Don't use Vchar_coding_system_table, but try
7550 all codings in SAFE_CODINGS.
7551 (Ffind_coding_systems_region_internal): Adjust for the change of
7552 find_safe_codings. Get generic coding systems from
7553 Vcoding_system_safe_chars.
7554 (Fdefine_coding_system_internal): New function.
7555 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
7556 Initialize and staticpro Vcoding_system_safe_chars.
7557
75582003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7559
7560 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
7561 equal old values before updating.
7562
7563 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
7564
7565 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
7566
75672003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7568
7569 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
7570 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
7571 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
7572 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
7573 (xg_create_scroll_bar): Pass bar to button event callback.
7574 (xg_find_top_left_in_fixed): New function.
7575 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
7576 whole scroll bar area. Get old position with
7577 xg_find_top_left_in_fixed, calculate and only clear needed areas.
7578 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
7579 dragging is in progress. Calculate whole as for Motif.
7580 Remove code that saved last values. Call gtk_range functions to
7581 set scroll bar sizes.
7582
7583 * gtkutil.h: Removed xg_ignore_next_thumb.
7584
75852003-03-17 Juanma Barranquero <lektu@terra.es>
7586
7587 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
7588 and files included from it.
7589
75902003-03-18 Stefan Monnier <monnier@cs.yale.edu>
7591
7592 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
7593 multiple occurrences of the same keymap under different prefixes.
7594 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
7595
75962003-03-16 Jason Rumney <jasonr@gnu.org>
7597
7598 * w32gui.h: Use HDC for Display.
7599
7600 * w32term.c (w32_encode_char): Prevent double-byte chars from
7601 crashing Emacs.
7602
7603 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
7604 as binary.
7605
76062003-03-16 Juanma Barranquero <lektu@terra.es>
7607
7608 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
7609
76102003-03-16 Kim F. Storm <storm@cua.dk>
7611
7612 The following changes consolidate some of the gui-independent
7613 parts of the processing and drawing of "glyph strings" from
7614 xterm.c, w32term.c, and macterm.c into xdisp.c.
7615
7616 * dispextern.h (struct glyph): Reduce face_id member from 22 to
7617 21 bits (this reduces number of faces from 4M to 2M).
7618 Replace W32 specific w32_font_type member (2 bits) by generic
7619 font_type member (3 bits) for portability.
7620 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
7621 (enum draw_glyphs_face): Define here.
7622 (struct glyph_string): Define here. Merge W32 and X versions.
7623 (struct redisplay_interface): New members per_char_metric,
7624 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
7625 (VCENTER_BASELINE_OFFSET): Define here.
7626 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
7627 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
7628
7629 * xdisp.c: Consolidate gui-independent "glyph string" code here.
7630 (dump_glyph_string): Moved here.
7631 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
7632 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
7633 (fill_composite_glyph_string, fill_glyph_string)
7634 (fill_image_glyph_string, fill_stretch_glyph_string)
7635 (left_overwritten, left_overwriting, right_overwritten)
7636 (right_overwriting, get_char_face_and_encoding)
7637 (set_glyph_string_background_width, compute_overhangs_and_x)
7638 (append_glyph, append_composite_glyph, produce_image_glyph)
7639 (take_vertical_position_into_account, append_stretch_glyph)
7640 (produce_stretch_glyph): New generic functions (based on X version).
7641 Call platform specific functions through rif.
7642 (INIT_GLYPH_STRING): New macro, hides W32 details.
7643 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
7644 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
7645 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
7646 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
7647 (notice_overwritten_cursor):
7648 Generic functions exported to platform modules. Users changed.
7649
7650 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
7651 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
7652 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
7653 New macros for consolidated code.
7654
7655 * xterm.c: Remove consolidated defines and code.
7656 (x_per_char_metric, x_encode_char)
7657 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
7658 (x_redisplay_interface): Add new members.
7659
7660 * w32gui.h (Display): Add dummy typedef for consolidation.
7661 (XChar2b): Define alias for wchar_t for consolidation.
7662 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
7663
7664 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
7665 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
7666 New macros for consolidation.
7667
7668 * w32term.c: Remove consolidated defines and code.
7669 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
7670 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
7671 (w32_per_char_metric): Change font_type arg to int for RIF.
7672 (w32_encode_char): Return int according to RIF requirements.
7673 (w32_compute_glyph_string_overhangs): Adapt to RIF.
7674 (w32_get_glyph_overhangs): New function for RIF. Uses generic
7675 x_get_glyph_overhangs.
7676 (w32_redisplay_interface): Add new members.
7677
7678 * macgui.h (XChar2b): Move typedef here for consolidation.
7679 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
7680
7681 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
7682 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
7683 consolidation.
7684
7685 * macterm.c: Remove consolidated defines and code.
7686 (mac_per_char_metric): New function for RIF.
7687 (mac_encode_char): Adapt to new RIF requirements.
7688 (mac_compute_glyph_string_overhangs): Adapt for RIF.
7689 (x_redisplay_interface): Add new members.
7690
76912003-03-15 Stefan Monnier <monnier@cs.yale.edu>
7692
7693 * keymap.c (Vmenu_events): New var.
7694 (syms_of_keymap): Initialize it.
7695 (where_is_internal): Check more carefully what is a menu event.
7696
76972003-03-14 Richard M. Stallman <rms@gnu.org>
7698
7699 * lread.c (read1): After #!, exit loop on eof.
7700
77012003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7702
7703 * gtkutil.h: Add declaration for xg_frame_cleared.
7704
7705 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
7706
7707 * gtkutil.c (struct xg_last_sb_pos): New structure.
7708 (handle_fixed_child): New function.
7709 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
7710 and force a redraw on them.
7711 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
7712 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
7713 so we can avoid unneeded redraws.
7714 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
7715 and force a redraw on the scroll bar.
7716 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
7717 if xg_last_sb_pos shows the positions are up to date.
7718 (xg_frame_cleared): New function.
7719
77202003-03-13 Kenichi Handa <handa@m17n.org>
7721
7722 * coding.c (Fdetect_coding_region): Fix docstring.
7723 (Fdetect_coding_string): Fix docstring.
7724
77252003-03-13 Andreas Schwab <schwab@suse.de>
7726
7727 * gtkutil.c: Add prototype for create_menus.
7728
7729 * data.c (long_to_cons): Fix type of top.
7730
7731 * xselect.c (selection_data_to_lisp_data): Use int instead of
7732 long for an integer of size 4.
7733
7734 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
7735 (xg_tool_bar_help_callback): Likewise.
7736
77372003-03-12 Andreas Schwab <schwab@suse.de>
7738
7739 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
7740
77412003-03-12 Kim F. Storm <storm@cua.dk>
7742
7743 The following changes consolidate the fringe handling from
7744 xterm.c, w32term.c, and macterm.c into xdisp.c.
7745
7746 * xdisp.c: Consolidate fringe handling code here.
7747 (left_bits, right_bits, continued_bits, continuation_bits)
7748 (ov_bits, zv_bits): Define fringe bitmaps.
7749 (fringe_bitmaps): New array holding fringe bitmaps.
7750 (draw_fringe_bitmap): Draw a specific bitmap; call display
7751 specific drawing routine via rif->draw_fringe_bitmap.
7752 (draw_row_fringe_bitmaps): Generic replacement for
7753 x_draw_row_fringe_bitmaps; all callers changed.
7754 (compute_fringe_widths): Generic replacement for
7755 x_compute_fringe_widths; all callers changed.
7756
7757 * dispextern.h (enum fringe_bitmap_type): Define here.
7758 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
7759 (fringe_bitmaps): Declare extern.
7760 (struct redisplay_interface): New member draw_fringe_bitmap.
7761 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
7762
7763 * xterm.c: Remove generic fringe code.
7764 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
7765 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
7766
7767 * w32term.c: Remove generic fringe code.
7768 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
7769 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
7770
7771 * macterm.c: Remove generic fringe code.
7772 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
7773 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
7774
77752003-03-11 Stefan Monnier <monnier@cs.yale.edu>
7776
7777 * print.c (Fprin1_to_string): Return unibyte string if possible.
7778
77792003-03-09 David Kastrup <dak@gnu.org>
7780
7781 * process.c (read_process_output): We have allocated enough space
7782 for readmax and carryover, so actually use the alloted space.
7783
77842003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7785
7786 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
7787 toolkit scrollbar click.
7788
7789 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
7790 for USE_GTK.
7791 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
7792 also.
7793 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
7794 scrollbar and control is pressed, call x_scroll_bar_handle_click.
7795
7796 * gtkutil.h: Declare xg_get_scroll_id_for_window.
7797
7798 * gtkutil.c (xg_get_scroll_id_for_window): New function.
7799 (xg_tool_bar_item_expose_callback): New function.
7800 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
7801 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
7802 on the tool bar widget.
7803 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
7804 to expose on the tool bar item widgets.
7805
78062003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7807
7808 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
7809 struct image* when deciding to update (struct image* may have been
7810 deleted from the image cache).
7811
7812 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
7813 the event isn't for a frame (i.e. for dialogs).
7814
78152003-03-07 Kenichi Handa <handa@m17n.org>
7816
7817 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
7818 composition components reaches the limit, terminate composing.
7819 (COMPOSITION_OK): New macro.
7820 (detect_coding_iso2022): Use it if an escape sequence for
7821 composition is found.
7822 (coding_restore_composition): Adjust the number of composition
7823 components if it is not sane.
7824
78252003-03-06 Juanma Barranquero <lektu@terra.es>
7826
7827 * w32term.h (struct w32_display_info): Add xrdb member to support
7828 passing resources via -xrm on Windows.
7829
7830 * w32term.c (w32_make_rdb): New function.
7831 (w32_term_init): Use it to initialize xrdb member of w32_display_info
7832 struct. Delete leftover code.
7833
7834 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
7835 for resources passed on the command line.
7836
7837 * w32reg.c (w32_get_rdb_resource): New function.
7838 (x_get_string_resource): Use it, so resources passed with -xrm
7839 supercede the ones in the registry.
7840
78412003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7842
7843 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
7844 instead of x_top_window_to_frame.
7845
78462003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7847
7848 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
7849 when restarting Emacs.
7850
78512003-03-03 Richard M. Stallman <rms@gnu.org>
7852
7853 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
7854 to run kill-buffer-query-functions.
7855 (Qkill_buffer_query_functions): New var.
7856 (syms_of_buffer): Init and staticpro it.
7857
78582003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7859
7860 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
7861
78622003-02-25 Kim F. Storm <storm@cua.dk>
7863
7864 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
7865 If centering point failed to make whole line visible and vscroll
7866 is non-zero, disable vscroll and try centering point again.
7867
7868 * lread.c (read1): Accept `single space' syntax like (? x).
7869
78702003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7871
7872 * keyboard.c (cancel_hourglass_unwind): Surround with
7873 #ifdef HAVE_X_WINDOWS
7874
78752003-02-25 Kenichi Handa <handa@m17n.org>
7876
7877 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
7878 process only when "subprocesses" is defined.
7879
78802003-02-24 Stefan Monnier <monnier@cs.yale.edu>
7881
7882 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
7883
78842003-02-24 Juanma Barranquero <lektu@terra.es>
7885
7886 * callint.c (fix_command): Declare as static void and move before
7887 Fcall_interactively.
7888
7889 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
7890 (syms_of_xdisp): Don't initialize Qwhen.
7891
78922003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7893
7894 * keyboard.c (cancel_hourglass_unwind): New function.
7895 (command_loop_1): Cancel hourglass with unwind-protect.
7896
78972003-02-23 Richard M. Stallman <rms@gnu.org>
7898
7899 * callint.c (fix_command): New subroutine, from Fcall_interactively.
7900 Detect (when ... (region-beginning)) etc.
7901 (Fcall_interactively): Call fix_command.
7902 (Qif, Qwhen): New variables.
7903 (syms_of_callint): Init and staticpro them.
7904
7905 * regex.c (print_partial_compiled_pattern): Output to stderr.
7906
79072003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
7908
7909 * dired.c (directory_files_internal): Don't expand directory.
7910 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
7911 instead. From Lars Hansen <larsh@math.ku.dk>.
7912
79132003-02-22 Stefan Monnier <monnier@cs.yale.edu>
7914
7915 * fns.c (string_to_multibyte): Remove unused var i.
7916 (Flanginfo): Fix int/Lisp_Object mixup.
7917 (void_call2): New fun.
7918 (Fmap_char_table): Use it in place of call2.
7919
7920 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
7921
7922 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
7923
7924 * keymap.c (copy_keymap_1): Make it static.
7925
7926 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
7927
79282003-02-22 David Ponce <david@dponce.com>
7929
7930 * lread.c (Fload): Don't check STRING_MULTIBYTE.
7931
79322003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7933
7934 * process.h: Removed subtty field from struct Lisp_Process.
7935
7936 * process.c (create_process): Remove setting of subtty.
7937 (emacs_get_tty_pgrp): New function.
7938 (Fprocess_running_child_p, process_send_signal):
7939 Call emacs_get_tty_pgrp instead of ioctl.
7940 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
7941
79422003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
7943
7944 * keymap.c (Fdefine_key): Doc fix.
7945
79462003-02-21 Juanma Barranquero <lektu@terra.es>
7947
7948 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
7949
7950 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
7951 POLLING_PROBLEM_IN_SELECT.
7952
7953 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
7954 Delete #undef of POLLING_PROBLEM_IN_SELECT.
7955
7956 * s/hpux10-20.h: New file.
7957
7958 * process.c (wait_reading_process_input):
7959 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
7960
79612003-02-20 Kenichi Handa <handa@m17n.org>
7962
7963 * fontset.c (check_fontset_name): If NAME is nil, return the
7964 default fontset.
7965 (override_font_info): New function.
7966 (Fset_fontset_font): Document that NAME nil means the default fontset.
7967 (Ffontset_info): If FONTSET is not the default fontset, merge
7968 FONTSET onto the copy of the default fontset, and work on that
7969 copy. Document that NAME nil means the default fontset.
7970 (Ffontset_font): Document that NAME nil means the default fontset.
7971
7972 * process.c (setup_process_coding_systems): If the process's
7973 in/out descriptor is -1, do nothing.
7974
79752003-02-19 Andreas Schwab <schwab@suse.de>
7976
7977 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
7978 Add prototypes.
7979
79802003-02-19 Kenichi Handa <handa@m17n.org>
7981
7982 * xfaces.c (try_alternative_families): Try all scalable fonts if
7983 Vscalable_fonts_allowed is not Qt.
7984
79852003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7986
7987 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
7988
79892003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7990
7991 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
7992 names.
7993
7994 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
7995 (sorted_font_list): Move allocation of struct font_name to
7996 x_face_list_fonts.
7997 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
7998 (Fx_list_fonts): Set maxnames to -1 to get all font names.
7999
80002003-02-18 Kim F. Storm <storm@cua.dk>
8001
8002 * lread.c (read1): Fix last change.
8003 "`" is not always special. Allow "?" after a character constant.
8004
80052003-02-18 Andrew Choi <akochoi@shaw.ca>
8006
8007 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
8008
80092003-02-18 Andreas Schwab <schwab@suse.de>
8010
8011 * window.c (window_scroll_pixel_based): Move outside a
8012 multi-glyph character before setting new window start.
8013
8014 * xdisp.c (in_display_vector_p): New function.
8015 * dispextern.h (in_display_vector_p): Declare.
8016
80172003-02-18 Kim F. Storm <storm@cua.dk>
8018
8019 * lread.c (read1): Fix and relax read syntax.
8020 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
8021 Only recognize "," after dotted-pair dot if inside backquote.
8022 Never include "`" or "," (inside backquote) in a symbol.
8023 Allow dotted-pair dot after a character constant.
8024 Allow "`" and "," (inside backquote) after a character constant.
8025
80262003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8027
8028 * gtkutil.c (xg_tool_bar_expose_callback): New function.
8029 (xg_create_tool_bar): Force style of tool bar to be horizontal with
8030 icons. Set name of tool bar to emacs-toolbar.
8031 (update_frame_tool_bar): Connect expose event to
8032 xg_tool_bar_expose_callback.
8033
80342003-02-17 Richard M. Stallman <rms@gnu.org>
8035
8036 * keyboard.c (this_command_key_count_reset): New variable.
8037 Initiatize to 0 where this_command_key_count is set.
8038 (read_char): Save and restore this_command_key_count_reset
8039 around input method code.
8040 (read_char): If this_command_key_count_reset, echo reread commands.
8041 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
8042
80432003-02-17 Kenichi Handa <handa@m17n.org>
8044
8045 * fns.c (string_to_multibyte): Always return a multibyte string.
8046
80472003-02-16 Jason Rumney <jasonr@gnu.org>
8048
8049 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
8050 Negative max_fonts parameter means list all.
8051
80522003-02-14 Dave Love <fx@gnu.org>
8053
8054 * fns.c (Flanginfo): Doc fix.
8055
80562003-02-13 Kim F. Storm <storm@cua.dk>
8057
8058 * lread.c (read_escape): Interpret \s as a SPACE character, except
8059 for \s-X in a character constant which still is the super modifier.
8060 (read1): Signal an `invalid read syntax' error if a character
8061 constant is immediately followed by a digit or symbol character.
8062
8063 * search.c (Fmatch_data): Doc fix. Explicitly state that
8064 match-data is undefined if last search failed.
8065
8066 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
8067 All uses changed.
8068
80692003-02-12 Juanma Barranquero <lektu@terra.es>
8070
8071 * eval.c (Fdefmacro): Fix typo.
8072
80732003-02-12 Kim F. Storm <storm@cua.dk>
8074
8075 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
8076 macro is a string, convert meta modifiers in string when copying
8077 the string into a vector.
8078
80792003-02-11 Kim F. Storm <storm@cua.dk>
8080
8081 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
8082
80832003-02-11 Kenichi Handa <handa@m17n.org>
8084
8085 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
8086
80872003-02-10 Kim F. Storm <storm@cua.dk>
8088
8089 * process.c: Doc fixes.
8090 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
8091
80922003-02-10 Kenichi Handa <handa@m17n.org>
8093
8094 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
8095
8096 * process.c (QCfilter_multibyte): New variable.
8097 (setup_process_coding_systems): New function.
8098 (Fset_process_buffer, Fset_process_filter):
8099 Call setup_process_coding_systems.
8100 (Fstart_process): Initialize the member `filter_multibyte' of
8101 struct Lisp_Process.
8102 (create_process): Call setup_process_coding_systems.
8103 (Fmake_network_process): New keyward `:filter-multibyte'.
8104 Initialize the member `filter_multibyte' of struct Lisp_Process.
8105 Call setup_process_coding_systems.
8106 (server_accept_connection): Call setup_process_coding_systems.
8107 (read_process_output): If the process has a filter, decide the
8108 multibyteness of a string to given to the filter by
8109 `filter_multibyte' member of the process. If the process doesn't
8110 have a filter and the result of conversion is unibyte, use
8111 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
8112 multibyte form.
8113 (Fset_process_coding_system): Call setup_process_coding_systems.
8114 (Fset_process_filter_multibyte): New function.
8115 (Fprocess_filter_multibyte_p): New function.
8116 (syms_of_process): Intern and staticpro QCfilter_multibyte.
8117 Defsubr Sset_process_filter_multibyte and
8118 Sprocess_filter_multibyte_p.
8119
8120 * process.h (struct Lisp_Process): New member filter_multibyte.
8121
8122 * lisp.h (setup_process_coding_systems): Add prototype.
8123
8124 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
8125 process, update coding systems for the process.
8126
81272003-02-09 Kenichi Handa <handa@m17n.org>
8128
8129 * fns.c (string_to_multibyte): New function.
8130 (Fstring_to_multibyte): New function.
8131 (syms_of_fns): Defsubr it.
8132
81332003-02-08 Andreas Schwab <schwab@suse.de>
8134
8135 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
8136 instead of the substitution.
8137
81382003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8139
8140 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
8141
8142 * xmenu.c (menu_position_func): Adjust menu popup position so that
8143 the menu is fully visible.
8144
81452003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8146
8147 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
8148 (x_make_frame_invisible, x_wm_set_icon_position):
8149 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
8150
8151 * xfns.c (x_set_name, x_set_title): Ditto.
8152
81532003-02-04 Richard M. Stallman <rms@gnu.org>
8154
8155 * keyboard.c (echo_now): Update before_command_echo_length.
8156 (Freset_this_command_lengths): Reset this_command_key_count etc.
8157 immediately rather than arranging to do it later.
8158 (before_command_key_count_1, before_command_echo_length_1)
8159 (before_command_restore_flag): Vars deleted.
8160 (add_command_key): Don't handle before_command_restore_flag.
8161 (read_char, record_menu_key): Don't update before_command_key_count or
8162 before_command_echo_length.
8163 (read_char): Don't handle before_command_restore_flag.
8164
8165 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
8166 in direct-output clauses if it wouldn't be called in the ordinary case.
8167
81682003-02-04 Kim F. Storm <storm@cua.dk>
8169
8170 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
8171
81722003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8173
8174 * gtkutil.c (remove_from_container): Copying list is not needed.
8175 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
8176 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
8177 on list returned from gtk_container_get_children to avoid memory leak.
8178
81792003-02-01 Jason Rumney <jasonr@gnu.org>
8180
8181 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
8182 local malloc.
8183 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
8184 definitions in xpm.h.
8185 (init_xpm_functions): New function.
8186 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
8187 (init_external_image_libraries): Try to load libXpm.dll.
8188
8189 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
8190 timestamp.
8191
81922003-01-31 Dave Love <fx@gnu.org>
8193
8194 * syntax.c (Fskip_chars_forward)
8195 (open-paren-in-column-0-is-defun-start): Doc fix.
8196
81972003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
8198
8199 * fileio.c: Support // at start of name for Cygwin (just added proper
8200 preprocessor tests).
8201
8202 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
8203
8204 * Makefile.in: Use @EXEEXT@ for Cygwin.
8205
8206 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
8207
8208 * s/cygwin.h: Added for Cygwin port.
8209
82102003-01-31 Juanma Barranquero <lektu@terra.es>
8211
8212 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
8213 when including gif_lib.h.
8214 (init_gif_functions, init_tiff_functions): New functions.
8215 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
8216 Windows. Disable color table lookups. Call library functions
8217 through pointers determined at runtime.
8218 (init_external_image_libraries): Try to load libungif.dll and
8219 libtiff.dll.
8220
82212003-01-31 Kenichi Handa <handa@m17n.org>
8222
8223 * xdisp.c (SKIP_GLYPHS): New macro.
8224 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
8225
82262003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8227
8228 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
8229
82302003-01-30 Dave Love <fx@gnu.org>
8231
8232 * alloc.c (Vgc_elapsed, gcs_done): New variables.
8233 (Fgarbage_collect): Use them.
8234 (init_alloc, syms_of_alloc): Set them up.
8235
82362003-01-30 Juanma Barranquero <lektu@terra.es>
8237
8238 * w32fns.c (init_external_image_libraries): Add missing operator.
8239
82402003-01-29 Jason Rumney <jasonr@gnu.org>
8241
8242 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
8243 an alternative name for jpeg.dll.
8244
82452003-01-29 Kenichi Handa <handa@m17n.org>
8246
8247 * xdisp.c (set_cursor_from_row): Pay attention to string display
8248 properties.
8249
82502003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
8251
8252 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
8253 <escape>.
8254 (keycode_to_xkeysym_table): Reformat and add more comments.
8255 (XTread_socket): Drop special case for backspace.
8256
82572003-01-28 Andrew Choi <akochoi@shaw.ca>
8258
8259 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
8260 values in old-style RGB specs.
8261
82622003-01-27 Juanma Barranquero <lektu@terra.es>
8263
8264 * w32fns.c (init_external_image_libraries): Try alternate names for the
8265 jpeg dll.
8266
82672003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8268
8269 * gtkutil.c (create_dialog, xg_separator_p)
8270 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
8271 before calling strcmp or strlen.
8272
82732003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8274
8275 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
8276 and handle image load failure.
8277
82782003-01-26 Jason Rumney <jasonr@gnu.org>
8279
8280 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
8281 New functions.
8282 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
8283 Disable color table lookups. Call jpeg library functions
8284 through pointers determined at runtime.
8285 (init_external_image_libraries): Try to load jpeg.dll.
8286
82872003-01-25 Richard M. Stallman <rms@gnu.org>
8288
8289 * lisp.h: Declare format2 instead of format1.
8290
8291 * fileio.c (barf_or_query_if_file_exists):
8292 Call format2 instead of format1.
8293
8294 * editfns.c (format2): New function, replaces format1
8295 but takes exactly two Lisp Objects as format args.
8296
8297 * buffer.c (Fkill_buffer): Call format2 instead of format1.
8298
82992003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8300
8301 * xterm.h: Change to return value of x_dispatch_event to int.
8302
8303 * xterm.c (x_filter_event): New function.
8304 (event_handler_gdk, XTread_socket): Call x_filter_event.
8305 (x_dispatch_event): Change to return value of finish.
8306 (event_handler_gdk): Use return value from x_dispatch_event.
8307
8308 * xfns.c (x_window): Call create_frame_xic for GTK version to
8309 initialize input methods.
8310
8311 * gtkutil.h: Add (void) prototypes.
8312
8313 * gtkutil.c (create_menus): Remove code that puts the help menu to
8314 the right.
8315
83162003-01-25 Jason Rumney <jasonr@gnu.org>
8317
8318 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
8319 [HAVE_PNG]: Sync with xfns.c version.
8320 (png_load): Adjust colors for Windows. Use Windows
8321 bitmaps. Disable color table lookups.
8322 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
8323 (init_png_functions): New function.
8324 (png_read_from_memory, png_load): Call png library functions
8325 through pointers determined at runtime.
8326 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
8327 (init_external_image_libraries): New function.
8328 (init_xfns): Call it.
8329
83302003-01-24 Andreas Schwab <schwab@suse.de>
8331
8332 * minibuf.c (Fminibuffer_message): Verify type of parameter.
8333
83342003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8335
8336 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
8337 of static initializer.
8338
83392003-01-24 Dave Love <fx@gnu.org>
8340
8341 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
8342 architectures.
8343
8344 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
8345 Use __alignof__.
8346
83472003-01-24 Kenichi Handa <handa@m17n.org>
8348
8349 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
8350 It it is nonzero, don't pretend that an invisible area doesn't exist.
8351 (command_loop_1): Call adjust_point_for_property with proper
8352 second arg.
8353
83542003-01-22 Jason Rumney <jasonr@gnu.org>
8355
8356 Sync changes with xterm.c and xfns.c.
8357
8358 * w32term.c (x_draw_glyph_string_foreground)
8359 (x_draw_composite_glyph_string_foreground): Implement overstriking.
8360
8361 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
8362 phys_cursor's hpos is overwritten. This is still not completely
8363 correct, as it doesn't really make sense to use hpos at all to
8364 get the cursor glyph (as that is relative to the width of the
8365 characters on the line, which may have changed during the update).
8366
8367 * w32term.c (notice_overwritten_cursor): Handle the special case
8368 of the cursor being in the first blank non-text line at the
8369 end of a window.
8370
8371 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
8372 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
8373 Compute from the x position returned by x_draw_glyphs.
8374
8375 (x_display_and_set_cursor): Don't set phys_cursor_width here,
8376 except for NO_CURSOR and system caret, to make phys_cursor_width
8377 contain what its name suggests.
8378 (notice_overwritten_cursor): Consider the cursor image erased if
8379 the output area intersects the cursor image in y-direction.
8380
8381 * w32term.c (note_mode_line_or_margin_highlight): Rename from
8382 note_mode_line_highlight and extend.
8383
8384 * w32term.c (last_window): New variable.
8385 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
8386 (note_mouse_movement): Remove reimplemented code in #if 0.
8387
8388 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
8389 not update_mode_lines, and always set it to 1.
8390
83912003-01-21 Jason Rumney <jasonr@gnu.org>
8392
8393 * w32fns.c (IDC_HAND): Define it if system headers don't.
8394
83952003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
8396
8397 * w32term.h (struct w32_output): New member hand_cursor.
8398 (WM_EMACS_SETCURSOR): New message definition.
8399
8400 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
8401 function w32_define_cursor.
8402 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
8403 position, change member name output_data.x to output_data.w32 and
8404 add function w32_define_cursor.
8405 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
8406 and change member name output_data.x to output_data.w32.
8407 (w32_initialize_display_info):
8408 Setup dpyinfo->vertical_scroll_bar_cursor.
8409
8410 * w32fns.c (Vx_hand_shape): New variable.
8411 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
8412 WM_EMACS_SETCURSOR.
8413 (x-create-frame): Setup Cursor types.
8414
84152003-01-21 David Ponce <david@dponce.com>
8416
8417 * w32term.c (w32_encode_char): For DIM=1 charset, set
8418 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
8419 x_encode_char change by Kenichi Handa <handa@m17n.org> on
8420 2002-09-30.)
8421 (w32_draw_relief_rect): Declare all args.
8422 (w32_define_cursor): New.
8423
8424 * w32fns.c (w32_load_cursor): New function.
8425 (w32_init_class): Use it.
8426 (x_put_x_image): Declare all args.
8427
84282003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
8429
8430 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
8431
84322003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8433
8434 * gtkutil.c: Must include stdio.h before termhooks.h
8435
84362003-01-21 Dave Love <fx@gnu.org>
8437
8438 * alloc.c (Fgc_status): Print zombie list.
8439 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
8440 Fix assignment of zombies.
8441 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
8442 Don't take car of non-cons.
8443
8444 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
8445
8446 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
8447
84482003-01-20 David Ponce <david@dponce.com>
8449
8450 * w32menu.c (digest_single_submenu): Declare all args.
8451
8452 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
8453 changes in xmenu.c:
8454
8455 (parse_single_submenu): Use individual keymap's prompt
8456 string as pane name, if there is one.
8457 (set_frame_menubar): Save menu_items_n_panes from each call to
8458 parse_single_submenu and use it when calling digest_single_submenu.
8459
84602003-01-20 Steven Tamm <steventamm@mac.com>
8461
8462 * macterm.c (XTread_socket): Checks for valid, visible window
8463 before sending a scroll-wheel event.
8464
84652003-01-20 Richard M. Stallman <rms@gnu.org>
8466
8467 * xdisp.c (redisplay_window): If mini window's buffer is not
8468 a minibuffer, then redisplay it like other windows.
8469
84702003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8471
8472 * gtkutil.c (xg_create_frame_widgets): Check if there is an
8473 external tool bar before setting tool bar height.
8474
84752003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8476
8477 * xterm.c (handle_one_xevent): Surround popup_activated
8478 with #ifdef:s for non-toolkit version.
8479
8480 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
8481 (gtkutil.o): New file.
8482 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
8483 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
8484
8485 * gtkutil.c: New file for GTK version.
8486
8487 * gtkutil.h: New file for GTK version.
8488
8489 * xterm.h: Add xt_or_gtk_widget.
8490 Include gtk files for USE_GTK.
8491 (struct x_output): Add toolbar_height.
8492 (struct x_output): Add GTK widgets and Gdk size_hints.
8493 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
8494 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
8495 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
8496
8497 * xterm.c: Include gtkutil.h for USE_GTK.
8498 Declare extern void free_frame_menubar for USE_GTK.
8499 (note_mouse_highlight): Check popup_activated for USE_GTK.
8500 (xt_action_hook): Don't compile if USE_GTK.
8501 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
8502 (xg_scroll_callback): New function.
8503 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
8504 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
8505 for USE_GTK.
8506 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
8507 xg_show_scroll_bar for USE_GTK.
8508 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
8509 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
8510 (event_handler_gdk): New function for USE_GTK.
8511 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
8512 (handle_one_xevent): Make sure widget is mapped before
8513 calling x_real_positions for USE_GTK.
8514 (XTread_socket): Add GTK event loop for USE_GTK.
8515 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
8516 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
8517 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
8518 (x_iconify_frame): Add code for USE_GTK.
8519 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
8520 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
8521 is in gtkutil.c.
8522 (x_term_init): Add initialization for GTK.
8523 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
8524
8525 * xmenu.c: Include gtkutil.h for USE_GTK.
8526 (Fx_popup_menu): Use current position if x and y is NIL.
8527 (single_menu_item, single_menu_item, Fx_popup_dialog):
8528 Check for USE_GTK.
8529 (popup_widget_loop): New function for USE_GTK.
8530 (x_activate_menubar): Add code for USE_GTK.
8531 (popup_activate_callback, popup_deactivate_callback)
8532 (menu_highlight_callback, menubar_selection_callback):
8533 Add USE_GTK versions.
8534 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
8535 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
8536 (free_frame_menubar): Only compile if not USE_GTK. GTK version
8537 is in gtkutil.c.
8538 (popup_selection_callback): New version for USE_GTK.
8539 (create_and_show_popup_menu): New fuction, one USE_GTK version and
8540 one USE_X_TOOLKIT version.
8541 (xmenu_show): Call create_and_show_popup_menu.
8542 (dialog_selection_callback): New version for USE_GTK.
8543 (create_and_show_dialog): New fuction, one USE_GTK version and
8544 one USE_X_TOOLKIT version.
8545 (xdialog_show): Call create_and_show_dialog.
8546
8547 * xfns.c: Include gtkutil for USE_GTK.
8548 (x_window_to_frame, x_any_window_to_frame)
8549 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
8550 (x_top_window_to_frame): Add code for USE_GTK.
8551 (x_set_background_color): Call xg_set_background_color for GTK.
8552 (x_set_menu_bar_lines): Check for USE_GTK.
8553 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
8554 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
8555 (x_window): Call xg_create_frame_widgets for USE_GTK.
8556 (Fx_create_frame): Check for USE_GTK
8557 (Fx_file_dialog): New implementation for USE_GTK.
8558
8559 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
8560 (update_menu_bar): Add check for USE_GTK.
8561 (update_tool_bar): Add check for USE_GTK and external tool bar.
8562 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
8563 (redisplay_internal): Add check for USE_GTK and popup_activated.
8564 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
8565 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
8566 (display_menu_bar): Add check for USE_GTK
8567
8568 * lisp.h: Declare Vx_resource_name extern.
8569
8570 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
8571 for USE_GTK.
8572 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
8573
8574 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
8575 (FRAME_EXTERNAL_TOOL_BAR): New macro.
8576 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
8577
8578 * fileio.c (Fread_file_name): Add check for USE_GTK.
8579
8580 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
8581 Add check for USE_GTK.
8582
8583 * config.in: Added HAVE_GTK
8584
8585 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
8586
85872003-01-18 Stefan Monnier <monnier@cs.yale.edu>
8588
8589 * charset.h (Funibyte_char_to_multibyte): Export.
8590
85912003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8592
8593 * xmenu.c (mouse_position_for_popup): New function.
8594 (Fx_popup_menu): Call mouse_position_for_popup for X and
8595 mouse_position_hook for others.
8596
85972003-01-17 Kim F. Storm <storm@cua.dk>
8598
8599 * editfns.c (Finsert): Mention `string-make-multibyte' and
8600 `string-as-multibyte' in doc string.
8601
86022003-01-17 Kenichi Handa <handa@m17n.org>
8603
8604 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
8605
8606 * editfns.c (Fformat): Convert an unibyte char argument that is
8607 formatted by "%c" to multibyte if the total result must be a
8608 multibyte string.
8609
86102003-01-16 Kim F. Storm <storm@cua.dk>
8611
8612 * process.c (set-process-filter): Document unibyte/multibyte-ness
8613 of string argument.
8614
86152003-01-16 Kenichi Handa <handa@m17n.org>
8616
8617 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
8618
8619 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
8620 (re_search_2): Likewise.
8621
86222003-01-15 Kenichi Handa <handa@m17n.org>
8623
8624 * xdisp.c (message_dolog): Fix bug of the case that *Message*
8625 buffer is unibyte.
8626
86272003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
8628
8629 * fns.c (Fsubstring): Clarify doc string.
8630
8631 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
8632 (Fprevious_char_property_change)
8633 (Fnext_single_char_property_change)
8634 (Fprevious_single_char_property_change, Fnext_property_change)
8635 (Fnext_single_property_change, Fprevious_property_change)
8636 (Fprevious_single_property_change, Fadd_text_properties)
8637 (Fput_text_property, Fset_text_properties)
8638 (Fremove_text_properties, Fremove_list_of_text_properties)
8639 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
8640
86412003-01-14 Kim F. Storm <storm@cua.dk>
8642
8643 * process.h (struct Lisp_Process): New member plist replaces old
8644 member private_vars. All uses changed.
8645
8646 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
8647 (QCplist): Rename from QCvars. Change all uses.
8648 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
8649 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
8650 (syms_of_process): Intern, staticpro, defsubr these.
8651 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
8652
86532003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
8654
8655 * m/delta.h: Remove (obsolete).
8656
86572003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
8658
8659 * fileio.c (Fdelete_directory, Fdelete_file): Document the
8660 behaviour in front of symlinks.
8661 (Fdelete_file): Raise an error on directories.
8662
86632003-01-13 Dave Love <fx@gnu.org>
8664
8665 * fns.c (Freverse): Use QUIT.
8666
86672003-01-13 Richard M. Stallman <rms@gnu.org>
8668
8669 * minibuf.c (minibuffer_completion_contents):
8670 Error if point is inside prompt.
8671
8672 * keyboard.c (command_loop_1): Don't redisplay directly
8673 if there's a post-command-hook.
8674
8675 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
8676 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
8677
86782003-01-12 Kim F. Storm <storm@cua.dk>
8679
8680 * process.h (struct Lisp_Process): New member private_vars.
8681
8682 * process.c (QCvars): New variable.
8683 (syms_of_process): Intern and staticpro it.
8684 (Fset_process_contact): Removed function.
8685 (Fprocess_variable, Fset_process_variable): New functions.
8686 (syms_of_process): Defsubr them.
8687 (Fstart_process): Initialize private_vars plist to nil.
8688 (Fmake_network_process): New arg :vars to setup the private
8689 variables for new network process.
8690 (server_accept_connection): Copy server's private variables to
8691 client process.
8692
8693 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
8694 crashes). Code rewritten and simplified. Now directly aligns the
8695 pointer and recalculates pure_bytes_used, rather than aligning the
8696 size and adjusting the pointer.
8697
86982003-01-11 Kim F. Storm <storm@cua.dk>
8699
8700 * process.c (Fset_process_contact): New function.
8701 (syms_of_process): defsubr it.
8702 (make-network-process): Update doc.
8703
87042003-01-10 Andreas Schwab <schwab@suse.de>
8705
8706 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
8707 Reported by Berthold Gunreben <b.gunreben@web.de>.
8708
87092003-01-10 Dave Love <fx@gnu.org>
8710
8711 * composite.c (syms_of_composite): Make composition_hash_table weak.
8712
87132003-01-09 Kim F. Storm <storm@cua.dk>
8714
8715 * process.c (Fmake_network_process): Convert new port number
8716 to host byte order for `:service t' case. From Mario Lang.
8717
87182003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8719
8720 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
8721 instead of XtAppProcessEvent.
8722
8723 * xterm.c (handle_one_xevent): New function.
8724 (x_dispatch_event): New function.
8725 (XTread_socket): Call handle_one_xevent.
8726
8727 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
8728
8729 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
8730 call XQueryPointer to get coordinates.
8731 (popup_get_selection): Do not set popup_activated_flag to zero,
8732 let popup_deactivate_callback do that. Needed for Motif.
8733 Call x_dispatch_event instead of XtDispatchEvent.
8734 (xmenu_show): Calculate root coordinate from frame top/left position.
8735
87362003-01-08 Kim F. Storm <storm@cua.dk>
8737
8738 * process.c (server_accept_connection): Fix recording of new
8739 connection's local address in :local property of contact info.
8740 (Fmake_network_process): Record local network address for new
8741 client processes in :local property of contact info.
8742 (format-network-address): Add arg OMIT-PORT. Change callers.
8743
87442003-01-07 Dave Love <fx@gnu.org>
8745
8746 * Makefile.in (fns.o): Depend on coding.h.
8747
87482003-01-07 Markus Rost <rost@math.ohio-state.edu>
8749
8750 * minibuf.c (Fread_variable): Doc fix.
8751
8752 * eval.c (Fuser_variable_p): Doc change. For custom variables,
8753 use the same test as for custom-variable-p.
8754
87552003-01-05 Richard M. Stallman <rms@gnu.org>
8756
8757 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
8758 Count LAST_LINE_MISFIT in scroll margin for end of window.
8759 Move label too_near_end before setting SCROLL_MARGIN_POS.
8760 Set LAST_LINE_MISFIT before jumping there.
8761
8762 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
8763 scroll_conservatively case. If scrolling that much doesn't change
8764 STARTP, move it down one line.
8765
8766 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
8767 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8768
8769 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
8770 selected frame.
8771
8772 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
8773 (syms_of_keymap): staticpro them.
8774 (Fapropos_internal): Initialize them and clear them out.
8775 Don't GCPRO them.
8776
8777 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
8778 Doc fixes.
8779
8780 * lisp.h: New misc type Lisp_Save_Value.
8781 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
8782 (XSAVE_VALUE): New macro.
8783 (struct Lisp_Save_Value): New data type.
8784 (union Lisp_Misc): Add u_save_value alternative.
8785 (make_save_value): Declared.
8786
8787 * alloc.c (make_save_value): New function.
8788
8789 * xterm.c (x_catch_errors): Save dpy using make_save_value.
8790 (x_catch_errors_unwind): Call XSync.
8791
87922003-01-01 Richard M. Stallman <rms@gnu.org>
8793
8794 * window.c (window_scroll_pixel_based): Partially undo last change.
8795
8796 * keyboard.c (command_loop_1): Call adjust_point_for_property
8797 in direct action cases for Qforward_char and Qbackward_char.
8798 Set already_adjusted so it won't be done twice.
8799
88002002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
8801
8802 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
8803 type definition of size_t.
8804
88052003-01-02 Steven Tamm <steventamm@mac.com>
8806
8807 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
8808 distinguish Carbon GUI builds from X11 builds on darwin.
8809
88102002-12-30 Steven Tamm <steventamm@mac.com>
8811
8812 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
8813 to default to t.
8814
88152002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
8816
8817 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
8818
88192002-12-28 Steven Tamm <steventamm@mac.com>
8820
8821 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
8822 allow building in a different directory than source. Uses some
8823 GNU Make extensions, but there is no other make on Mac OS X.
8824
88252002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
8826
8827 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
8828 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
8829 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
8830 (Fstring_to_number): Mention the returned value in the doc strings.
8831
88322002-12-23 Richard M. Stallman <rms@gnu.org>
8833
8834 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
8835 <scroll-down-aggressively>: Doc fix.
8836
8837 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
8838 string as pane name, if there is one.
8839 (set_frame_menubar): Save menu_items_n_panes from each call to
8840 parse_single_submenu and use it when calling digest_single_submenu.
8841
8842 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
8843 Don't try to make last line fully visible if it is past end of window.
8844
88452002-12-22 Steven Tamm <steventamm@mac.com>
8846
8847 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
8848 (mac_menu_show): Add support for hierarchical popup menus.
8849 (add_menu_item): Remove indentation support.
8850 (fill_submenu, fill_menu): Create hierarchical menus
8851 instead of using indentation.
8852
88532002-12-22 Richard M. Stallman <rms@gnu.org>
8854
8855 * xdisp.c (try_cursor_movement): Don't call try_window here.
8856 (redisplay_window): Never redisplay minibuffer when inactive.
8857
8858 * window.c (select_window_1): Undo 9/21 change.
8859
88602002-12-22 Steven Tamm <steventamm@mac.com>
8861
8862 * macterm.c (XTread_socket): Call KeyTranslate for control and
8863 meta to deal correctly shifted non-alpha characters, like C-S-5
8864 being treated like C-%. Does not look for shift key to deal
8865 with masking off control-key with mac-reverse-ctrl-meta.
8866
88672002-12-21 Richard M. Stallman <rms@gnu.org>
8868
8869 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
8870 If it is non-nil, run timers. Use an unwind-protect to requeue
8871 the events that were read ahead.
8872 (popup_get_selection_unwind): New subroutine.
8873 (popup_get_selection_queue): File-scope variable now holds that queue.
8874 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
8875 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
8876 Use an unwind-protect to pop down the dialog box.
8877 (xdialog_show_unwind): New subroutine implements that.
8878
8879 * xdisp.c (row_containing_pos): Change exit test using last_y.
8880 (try_window_id): Abort if row_containing_pos returns null.
8881
8882 * lread.c (load_error_handler): New function.
8883 (Fload): Handle errors in Fsubstitute_in_file_name.
8884 Don't expect Fsignal to return.
8885
8886 * eval.c: Errors and throws work right with interrupt blocking.
8887 (struct catchtag): New elt interrupt_input_blocked.
8888 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
8889 (internal_catch, Fcondition_case, internal_condition_case)
8890 (internal_condition_case_1, internal_condition_case_2): Save it.
8891 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
8892
8893 * editfns.c (Fformat): Add parens.
8894
8895 * dired.c (file_name_completion): Fix that change.
8896 Delete special quit-handling code; just use QUIT.
8897
88982002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
8899
8900 * dired.c (file_name_completion): Close directory on error
8901 just as in directory_files_internal.
8902
89032002-12-19 David Kastrup <David.Kastrup@t-online.de>
8904
8905 * window.c (Fset_window_configuration): Set old_point to correct
8906 value when new_current_buffer == current_buffer.
8907
89082002-12-17 Ben Key <bkey1@tampabay.rr.com>
8909
8910 Revisited my earlier fix for the following entry in etc/PROBLEMS:
8911 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
8912 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
8913
8914 These changes were in part based upon suggestions made by Peter
8915 'Luna' Runestig [peter@runestig.com].
8916
8917 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
8918 g_b_init_get_token_information, g_b_init_lookup_account_sid,
8919 g_b_init_get_sid_identifier_authority ): Add several static
8920 global variables.
8921
8922 * w32.c (globals_of_w32): New function. Used to initialize those
8923 global variables that must always be initialized on startup even
8924 when the global variable initialized is non zero. Its primary
8925 purpose at this time is to set the global variables
8926 g_b_init_is_windows_9x, g_b_init_open_process_token,
8927 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
8928 g_b_init_get_sid_identifier_authority to 0 on startup.
8929 Called from main.
8930
8931 * w32.c (is_windows_9x): Perform initialization only if
8932 g_b_init_is_windows_9x is equal to 0. On initialization set
8933 g_b_init_is_windows_9x equal to 1.
8934
8935 * w32.c (open_process_token): Perform initialization only if
8936 g_b_init_open_process_token is equal to 0. On initialization set
8937 g_b_init_open_process_token equal to 1.
8938
8939 * w32.c (get_token_information): Perform initialization only if
8940 g_b_init_get_token_information is equal to 0. On initialization
8941 set g_b_init_get_token_information equal to 1.
8942
8943 * w32.c (lookup_account_sid): Perform initialization only if
8944 g_b_init_lookup_account_sid is equal to 0. On initialization
8945 set g_b_init_lookup_account_sid equal to 1.
8946
8947 * w32.c (get_sid_identifier_authority): Perform initialization
8948 only if g_b_init_get_sid_identifier_authority is equal to 0.
8949 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
8950
8951 * w32fns.c (globals_of_w32fns): New function. Used to initialize
8952 those global variables that must always be initialized on startup
8953 even when the global variable initialized is non zero.
8954 Its primary purpose at this time is to initialize the global variable
8955 track_mouse_event_fn.
8956
8957 * w32fns.c (w32_wnd_proc): Remove initialization of
8958 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
8959
8960 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
8961
8962 * w32menu.c (globals_of_w32menu): New function. Used to
8963 initialize those global variables that must always be initialized
8964 on startup even when the global variable initialized is non zero.
8965 Its primary purpose at this time is to initialize the global
8966 variables get_menu_item_info and set_menu_item_info.
8967
8968 * w32menu.c (initialize_frame_menubar): Remove initialization of
8969 get_menu_item_info and set_menu_item_info.
8970
8971 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
8972
8973 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
8974 Declare them.
8975
8976 * emacs.c (main): Call globals_of_w32 prior to calling
8977 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
8978 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
8979 is defined.
8980
8981 * w32term.c (x_update_window_begin): Fix Windows API error
8982 detected by BoundsChecker. Test to determine if
8983 w32_system_caret_hwnd is NULL prior to attempting to use
8984 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
8985
8986 * w32term.c (x_update_window_end): Fix Windows API error
8987 detected by BoundsChecker. Test to determine if
8988 w32_system_caret_hwnd is NULL prior to attempting to use
8989 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
8990
89912002-12-17 Kenichi Handa <handa@m17n.org>
8992
8993 * coding.c (coding_system_require_warning): New variable.
8994 (syms_of_coding): DEFVAR it.
8995
8996 * coding.h (coding_system_require_warning): Extern it.
8997
8998 * fileio.c (choose_write_coding_system): Even if
8999 Vcoding_system_for_write is non-nil, if
9000 coding_system_require_warning is nonzero, call
9001 Vselect_safe_coding_system_function.
9002
90032002-12-17 Markus Rost <rost@math.ohio-state.edu>
9004
9005 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
9006 (lisp): Add font-core.
9007
90082002-12-13 Stefan Monnier <monnier@cs.yale.edu>
9009
9010 * textprop.c (text_read_only): New arg `propval'.
9011 (get_char_property_and_overlay): Remove unused var `next_overlay'.
9012 (verify_interval_modification): Use text_read_only's new arg.
9013
90142002-12-13 Kenichi Handa <handa@m17n.org>
9015
9016 * coding.c (Funencodable_char_position): Set pend correctly.
9017
90182002-12-12 Jason Rumney <jasonr@gnu.org>
9019
9020 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
9021 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
9022 Be more careful about when help_events are generated.
9023
90242002-12-12 Steven Tamm <steventamm@mac.com>
9025
9026 * macterm.c (mac_check_for_quit_char): Correctly set the
9027 modifiers of the event to 0.
9028 * mac.c (sys_select): Duplicate rfds before calling select to
9029 ensure that rfds survive the while loop.
9030
90312002-12-11 Kim F. Storm <storm@cua.dk>
9032
9033 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
9034 row_containing_pos returned NULL.
9035
90362002-12-10 Steven Tamm <steventamm@mac.com>
9037
9038 * mac.c (sys_read): Fix sys_read to not call select if IO is
9039 non-blocking.
9040 (sys_select): Fix sys_select to not use a timeout larger than
9041 the one given.
9042
90432002-12-10 Juanma Barranquero <lektu@terra.es>
9044
9045 * editfns.c (Fformat): Use alloca, not _alloca.
9046
90472002-12-09 Richard M. Stallman <rms@gnu.org>
9048
9049 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
9050 as the last thing.
9051
90522002-12-09 Dave Love <fx@gnu.org>
9053
9054 * s/sol2-8.h: Removed. (Not necessary.)
9055
90562002-12-09 Matthew Swift <swift@alum.mit.edu>
9057
9058 * editfns.c (Fformat): Handle precision in string conversion
9059 specifiers like libc functions do (ie, print at most that many
9060 characters).
9061
90622002-12-08 Richard M. Stallman <rms@gnu.org>
9063
9064 * xdisp.c (row_containing_pos): Check more carefully
9065 whether charpos is really in the row before returning it.
9066
90672002-12-07 Steven Tamm <steventamm@mac.com>
9068
9069 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
9070
9071 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
9072 each stack frame. This may change as it could be time consuming.
9073
9074 * macterm.c (mac_check_for_quit_char, quit_char_comp)
9075 (init_quit_char_handler, mac_determine_quit_char_modifiers)
9076 (mac_initialize): Add code to check for pressing of quit_char
9077 in the OS event queue.
9078
9079 * mac.c (sys_select): Call mac_check_for_quit_char every second
9080 while blocking on select.
9081
9082 * mac.c (sys_read): Use sys_select to test for input first
9083 before calling read, to allow C-g to break.
9084
90852002-12-07 Richard M. Stallman <rms@gnu.org>
9086
9087 * minibuf.c (Fcompleting_read): Doc fix.
9088
9089 * lread.c (syms_of_lread) <load-history>: Doc fix.
9090
9091 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9092
9093 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
9094 autoload.
9095
9096 * data.c (Fdefalias): Record in load-history redefining an autoload.
9097
9098 * alloca.c: Undo ifdef change accidentally made on 12-04.
9099
91002002-12-06 Francesco Potorti` <pot@gnu.org>
9101
9102 * xfns.c (png_load): Avoid double gamma correction for PNG images.
9103
91042002-12-04 Richard M. Stallman <rms@gnu.org>
9105
9106 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
9107
9108 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
9109
9110 * alloca.c: Don't use #error.
9111
91122002-12-03 Dave Love <fx@gnu.org>
9113
9114 * buffer.c (Qucs_set_table_for_input): New.
9115 (Fget_buffer_create): Use it.
9116 (Qset_buffer_major_mode_hook): Deleted.
9117 (Fset_buffer_major_mode): Revert previous change.
9118 (init_buffer_once): Intern ucs-set-table-for-input.
9119 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
9120 Add &Qucs_set_table_for_input.
9121
91222002-12-03 Andreas Schwab <schwab@suse.de>
9123
9124 * callint.c (Fcall_interactively): Use next_event only if less
9125 than key_count.
9126
91272002-12-02 Andrew Choi <akochoi@shaw.ca>
9128
9129 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
9130 names to 255 characters.
9131
9132 * macterm.c (XTread_socket): If all frames have been collapsed,
9133 expand the first one before handling drag-and-drop events.
9134
9135 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
9136 which is detected by autoconf.
9137
91382002-12-01 Steven Tamm <steventamm@mac.com>
9139
9140 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
9141 offset in two hints table to allow prebinding to be redone and
9142 allow the executable to be stripped.
9143
91442002-11-29 Dave Love <fx@gnu.org>
9145
9146 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
9147 already provided.
9148
91492002-11-29 Richard M. Stallman <rms@gnu.org>
9150
9151 * xdisp.c (start_display): Check more intelligently for
9152 whether the line is continued.
9153 (move_it_vertically_backward): Clear it->continuation_lines_width.
9154
91552002-11-28 Dave Love <fx@gnu.org>
9156
9157 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
9158 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
9159
91602002-11-27 Steven Tamm <steventamm@mac.com>
9161
9162 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
9163 more descriptive error output from lread.c:Fload upon most require
9164 cycles during boostrapping.
9165
91662002-11-27 Jason Rumney <jasonr@gnu.org>
9167
9168 * fileio.c (Finsert_file_contents): Give a more appropriate error
9169 for files bigger than 2Gb when off_t is 32 bit.
9170
9171 * dired.c (Ffile_attributes): Don't return negative file sizes for
9172 files bigger than 2Gb when off_t is 32 bit.
9173
91742002-11-27 Dave Love <fx@gnu.org>
9175
9176 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
9177
9178 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
9179 Test GETPGRP_VOID instead.
9180 [BSD_TERMIOS]: Remove definitions (never used).
9181
9182 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
9183 Don't define.
9184 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
9185
9186 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
9187
91882002-11-25 Jason Rumney <jasonr@gnu.org>
9189
9190 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
9191 supported.
9192
91932002-11-25 Dave Love <fx@gnu.org>
9194
9195 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
9196
9197 * Makefile.in (TEMACS_LDFLAGS): Update last change.
9198
91992002-11-25 Andreas Schwab <schwab@suse.de>
9200
9201 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
9202
92032002-11-24 Steven Tamm <steventamm@mac.com>
9204
9205 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
9206 determine the size of pointers alloced in unexed space instead
9207 of using possibly invalid emacs_zone pointers. This fixes the
9208 binary incompatibility problems caused by updates to libSystem.B.
9209
92102002-11-24 Richard M. Stallman <rms@gnu.org>
9211
9212 * search.c (Fstring_match): Doc fix.
9213
9214 * callint.c (Fcall_interactively): If a command fails because
9215 `*' detects a read-only buffer, but RECORD_FLAG is set,
9216 record it anyway if the args don't actually do tty input.
9217
92182002-11-22 Dave Love <fx@gnu.org>
9219
9220 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
9221
9222 * keyboard.c (interrupt_signal): Provide forward declaration.
9223 (kbd_buffer_store_event): Don't declare interrupt_signal.
9224
9225 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
9226
92272002-11-21 Richard M. Stallman <rms@gnu.org>
9228
9229 * eval.c (interactive_p): Skip any number of bytecode
9230 and special form frames, in any order.
9231
92322002-11-20 Jason Rumney <jasonr@gnu.org>
9233
9234 * w32fns.c (convert_mono_to_color_image): New function.
9235 (xbm_load, xbm_load_image): Use it when foreground or background
9236 is explicitly set.
9237
92382002-11-19 Dave Love <fx@gnu.org>
9239
9240 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
9241
92422002-11-18 Jason Rumney <jasonr@gnu.org>
9243
9244 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
9245 (XPutPixel): Swap blue and red.
9246 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
9247 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
9248 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
9249 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
9250
92512002-11-18 Dave Love <fx@gnu.org>
9252
9253 * m/orion105.h (HAVE_ALLOCA): Don't define.
9254
9255 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
9256
9257 * m/intel386.h: Don't include alloca.h or define alloca.
9258
9259 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
9260 malloc, realloc, calloc.
9261
9262 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
9263 (bcmp): Don't define.
9264
9265 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
9266
9267 * m/amdahl.h: Don't define LIB_STANDARD.
9268
9269 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
9270
9271 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
9272
9273 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
9274 Don't include alloca.h.
9275
9276 * s/aix3-2.h (HAVE_FSYNC): Don't define.
9277
9278 * regex.c (_GNU_SOURCE): Don't define.
9279
9280 * process.c (_GNU_SOURCE): Don't define.
9281
9282 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
9283
92842002-11-18 Markus Rost <rost@math.ohio-state.edu>
9285
9286 * s/sol2-8.h: Include sol2-6.h.
9287
92882002-11-18 Miles Bader <miles@gnu.org>
9289
9290 * dispextern.h (struct face): Add `overstrike' field.
9291 * xterm.c (x_draw_glyph_string_foreground)
9292 (x_draw_composite_glyph_string_foreground): Implement overstriking.
9293 * xfaces.c (load_face_font): Set `face->overstrike' based on
9294 result from choose_face_font.
9295 (best_matching_font, choose_face_font): Add `needs_overstrike'
9296 argument, and use it to return whether overstriking is desirable
9297 for this face/font combo.
9298 (set_font_frame_param: Pass new argument to choose_face_font.
9299
93002002-11-17 Ben Key <BKey1@tampabay.rr.com>
9301
9302 This change is my fix for the following entry in etc/PROBLEMS:
9303 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
9304 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9305
9306 * w32.c: Added wrapper functions around the win32 API functions
9307 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
9308 GetSidIdentifierAuthority. These wrapper functions serve two
9309 purposes:
9310 1. They ensure that the wrapped function can never be called
9311 when Emacs is running on an operating system on which they are
9312 not supported (Microsoft Windows 95 / 98 / ME).
9313 2. They call the wrapped functions via function pointers rather
9314 than calling them directly. This avoids taking advantage of the
9315 undocumented fact that although these functions are not supported
9316 in the 9x branch of Microsoft Windows, the functions do exist in
9317 the version of advapi32.dll that is found in the 9x branch of
9318 Microsoft Windows.
9319
9320 * w32.c (init_user_info): Replace the calls to the win32 API
9321 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
9322 and GetSidIdentifierAuthority with calls to the newly added
9323 wrapper functions.
9324
9325 * w32.h: Added extern declarations for the following functions:
9326 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
9327 syms_of_w32menu, and void syms_of_fontset.
9328
9329 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
9330 function pointer track_mouse_event_fn in the handler for the
9331 WM_SETFOCUS message.
9332
9333 * w32menu.c (initialize_frame_menubar): Add code to
9334 reinitialize the function pointers set_menu_item_info and
9335 get_menu_item_info.
9336
93372002-11-17 Ben Key <BKey1@tampabay.rr.com>
9338
9339 * sound.c: Added a partial implementation of play-sound-internal
9340 for Microsoft Windows. Added various #ifdef / #else / #endif
9341 code blocks to separate the code that will compile under
9342 Microsoft Windows from the code that is specific to Gnu/Linux.
9343 Moved several blocks of code around to make this separation of code
9344 into Windows compatible and Gnu/Linux compatible code blocks easier.
9345
9346 * makefile.w32-in: Include sound.c and link with WinMM.lib.
9347
9348 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
9349 added support for play-sound-internal under Windows would be
9350 included in the build of Emacs.
9351
93522002-11-16 Jason Rumney <jasonr@gnu.org>
9353
9354 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
9355
9356 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
9357
93582002-11-15 Stefan Monnier <monnier@cs.yale.edu>
9359
9360 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
9361 (adjust_point_for_property): Move out of display and invisible even if
9362 we were already inside before (in case a property was added while
9363 we weren't looking). Be more careful when handling invisible props.
9364 Skip invisible text as if it really wasn't there at all.
9365
93662002-11-15 Jason Rumney <jasonr@gnu.org>
9367
9368 * w32term.c (x_draw_image_foreground)
9369 (w32_draw_image_foreground_1): Use standard copy and invert
9370 operations to draw images.
9371
9372 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
9373 depth of 1.
9374 (xbm_read_bitmap_data): Invert bits as xbm is read in.
9375 (XPutPixel): Don't invert bits here.
9376
93772002-11-15 Jason Rumney <jasonr@gnu.org>
9378
9379 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
9380 (w32_draw_image_foreground_1): Handle image masks.
9381 (x_draw_image_glyph_string): Don't BitBlt transparently.
9382
9383 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
9384 (x_from_xcolors): Adjust RGB values for W32.
9385 (image_background, image_background_transparent)
9386 (postprocess_image, x_to_xcolors, x_disable_image)
9387 (x_build_heuristic_mask): Adapt for W32 and enable.
9388 (x_create_x_image_and_pixmap): Mark images with palettes as such.
9389 (xbm_load): Remove unused variable.
9390
93912002-11-14 Richard M. Stallman <rms@gnu.org>
9392
9393 * buffer.c (syms_of_buffer): Doc fix.
9394
93952002-11-14 Dave Love <fx@gnu.org>
9396
9397 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
9398
9399 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
9400 * xmenu.c (unuse_menu_items, digest_single_submenu):
9401 * xfns.c (x_put_x_image):
9402 * xdisp.c (message2_nolog, set_message):
9403 * undo.c (record_point):
9404 * terminfo.c (tparam):
9405 * syntax.c (scan_sexps_forward):
9406 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
9407 * composite.c (update_compositions):
9408 * cm.c (calccost, cmgoto):
9409 * charset.c (c_string_width): Declare all args (per C99).
9410
9411 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
9412
9413 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
9414 Don't declare.
9415
9416 * emacs.c (main) [!VMS]: Avoid third arg.
9417
9418 * fns.c (Fcopy_sequence): Doc fix.
9419 (Fmap_char_table): Cast `call2'.
9420
94212002-11-14 Francesco Potorti` <pot@gnu.org>
9422
9423 * s/sol2-8.h: New file.
9424
94252002-11-14 Kim F. Storm <storm@cua.dk>
9426
9427 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
9428 dependency on `risky-local-variable' and the :propertize form.
9429
94302002-11-12 Stefan Monnier <monnier@cs.yale.edu>
9431
9432 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
9433
9434 * syntax.c (scan_sexps_forward): Undo last patch.
9435 Use a more obvious fix: check eob before updating the syntax table.
9436
94372002-11-09 Stefan Monnier <monnier@cs.yale.edu>
9438
9439 * syntax.c (scan_sexps_forward): Update syntax table before reading
9440 a char rather than after so we don't update the table past eob.
9441
94422002-11-09 Dave Love <fx@gnu.org>
9443
9444 * buffer.c (Fset_buffer_major_mode): Fix last change.
9445
9446 * regex.c (regexec): Fix pmatch declaration.
9447
9448 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
9449
9450 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
9451 to self-inserting characters.
9452 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
9453
9454 * coding.c (Vtranslation_table_for_input): New.
9455 (syms_of_coding): DEFVAR it.
9456
94572002-11-08 Juanma Barranquero <lektu@terra.es>
9458
9459 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
9460 window.
9461
94622002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9463
9464 * process.c (Fformat_network_address): Remove unused locals p,
9465 cp, and i.
9466
94672002-11-06 Dave Love <fx@gnu.org>
9468
9469 * buffer.c (Qset_buffer_major_mode_hook): New.
9470 (Fset_buffer_major_mode): Use it.
9471
94722002-11-06 Richard M. Stallman <rms@gnu.org>
9473
9474 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
9475 and stop_polling.
9476
9477 * process.c (wait_reading_process_input):
9478 Test POLLING_PROBLEM_IN_SELECT, not hpux.
9479 Avoid initialization for auto Lisp_Object var.
9480
9481 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
9482
9483 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
9484
94852002-11-05 Richard M. Stallman <rms@gnu.org>
9486
9487 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
9488
9489 * callint.c (Fcall_interactively): New local filter_specs.
9490 (Fcall_interactively): Check for progn as well as let.
9491 Add a gcpro.
9492 (Qprogn): New variable.
9493 (syms_of_callint): Staticpro and init Qprogn.
9494
94952002-11-04 John Paul Wallington <jpw@shootybangbang.com>
9496
9497 * lread.c (Feval_buffer): Doc fix.
9498
94992002-11-04 Dave Love <fx@gnu.org>
9500
9501 * keyboard.c (read_char): Always translate iff
9502 Vkeyboard_translate_table is a char table and c is valid.
9503
9504 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
9505 and fix C types.
9506
95072002-11-03 Stefan Monnier <monnier@cs.yale.edu>
9508
9509 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
9510
9511 * editfns.c (get_pos_property): Don't hardcode Qfield.
9512
9513 * keyboard.c (adjust_point_for_property): Handle `display' prop on
9514 overlays. Also handle `invisible' prop.
9515
95162002-11-02 Stefan Monnier <monnier@cs.yale.edu>
9517
9518 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
9519 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
9520
95212002-11-01 Andreas Schwab <schwab@suse.de>
9522
9523 * editfns.c (Fmessage): Revert last change to properly handle %%.
9524
95252002-11-01 Stefan Monnier <monnier@cs.yale.edu>
9526
9527 * xmenu.c (unuse_menu_items): New fun.
9528 (menu_items_inuse): New var.
9529 (syms_of_xmenu): Initialize it.
9530 (init_menu_items): Use it to detect re-entrance.
9531 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
9532 (Fx_popup_menu): Remove spurious XSETFRAME.
9533
9534 * editfns.c (find_field): Make an exception for nil fields.
9535
95362002-11-01 Dave Love <fx@gnu.org>
9537
9538 * m/gec63.h: Deleted.
9539
95402002-10-31 Dave Love <fx@gnu.org>
9541
9542 * xterm.c (XTread_socket): Fix last change.
9543 (xaw_scroll_callback): Cast call_data to long to avoid warning.
9544
95452002-10-31 Stefan Monnier <monnier@cs.yale.edu>
9546
9547 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
9548
95492002-10-30 Stefan Monnier <monnier@cs.yale.edu>
9550
9551 * editfns.c (overlays_around, get_pos_property): New funs.
9552 (find_field): Use them.
9553 Also be careful not to modify POS before its last use.
9554 (Fmessage): Don't Fformat if there's nothing to format.
9555
95562002-10-30 Dave Love <fx@gnu.org>
9557
9558 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
9559 [HAVE_PTY_H]; Include pty.h.
9560
9561 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
9562
9563 * xterm.c (Qeql): Declare.
9564 (Vx_keysym_table): New.
9565 (syms_of_xterm): Initialize it.
9566 (XTread_socket): Use it. Deal with ASCII keysyms.
9567 (XSetIMValues) [HAVE_X11R6]: Prototype.
9568
9569 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
9570 (lispy_kana_keys): Comment out.
9571 (make_lispy_event) [XK_kana_A]: Comment out.
9572 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
9573 Fix sprintf call.
9574
9575 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
9576 regexp.h change).
9577 (TERMINFO, LIBS_TERMCAP): Define.
9578
9579 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
9580 (bcmp): Define conditional on HAVE_BCMP.
9581 (NO_SIOCTL_H): Don't define.
9582 (TIOCSIGSEND): Don't make conditional on IRIX6.
9583
9584 * s/sol2-5.h: Don't include strings.h.
9585 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
9586
9587 * s/irix6-0.h (IRIX6): Don't define.
9588 (bcopy, bcmp, bzero): Don't undef.
9589
9590 * s/irix6-5.h: Don't include strings.h.
9591 (IRIX6): Don't define.
9592 (bcopy, bcmp, bzero): Don't undef.
9593
9594 * syntax.c (Fforward_comment): Doc fix.
9595
95962002-10-29 Kim F. Storm <storm@cua.dk>
9597
9598 * process.c (Fsignal_process): Allow PROCESS to be specified by
9599 name in addition to pid (as integer or string).
9600
96012002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
9602
9603 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
9604 environments.
9605
96062002-10-27 Kim F. Storm <storm@cua.dk>
9607
9608 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
9609
9610 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
9611
9612 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
9613
9614 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
9615
96162002-10-26 Richard M. Stallman <rms@gnu.org>
9617
9618 * editfns.c (Fformat): Detect invalid format letters for floats.
9619
96202002-10-25 Kenichi Handa <handa@m17n.org>
9621
9622 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
9623 (x_set_title): Likewise.
9624
96252002-10-25 Juanma Barranquero <lektu@terra.es>
9626
9627 * macgui.h:
9628 * w32gui.h: Remove definition of XColor.
9629
9630 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
9631
96322002-10-24 Kim F. Storm <storm@cua.dk>
9633
9634 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
9635 Callers changed (supply dummy arg).
9636
9637 * lisp.h (get_window_cursor_type): Update prototype.
9638
9639 * w32term.c (x_display_and_set_cursor): Get active_cursor from
9640 get_window_cursor_type to track system caret.
9641
96422002-10-24 Kim F. Storm <storm@cua.dk>
9643
9644 * process.c (Fformat_network_address): New function.
9645 (syms_of_process): Defsubr it.
9646 (list_processes_1): Use it to format :local/:remote address if
9647 service/host is not set; before Emacs would crash in that case.
9648 (Fmake_network_process): Don't use Ffind_operation_coding_system
9649 to setup coding system if host or service is not set.
9650
96512002-10-23 Juanma Barranquero <lektu@terra.es>
9652
9653 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
9654
9655 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
9656 COLORREF.
9657
9658 * macgui.h:
9659 * w32gui.h: Add definition of XColor.
9660
9661 * macfns.c:
9662 * w32fns.c:
9663 * xfaces.c: Remove definition of XColor.
9664
96652002-10-22 Stefan Monnier <monnier@cs.yale.edu>
9666
9667 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
9668
9669 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
9670 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
9671 window if it is dedicated.
9672 (Fshrink_window): Add preserve_before as was done for enlarge_window.
9673 (Vspecial_display_function): Update docstring.
9674
9675 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
9676 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
9677 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
9678
96792002-10-21 Stefan Monnier <monnier@cs.yale.edu>
9680
9681 * casefiddle.c (casify_region): Don't treat a prefix char as part
9682 of a word when at the beginning.
9683
96842002-10-17 Juanma Barranquero <lektu@terra.es>
9685
9686 * lread.c (syms_of_lread): Fix typos.
9687
96882002-10-17 Dave Love <fx@gnu.org>
9689
9690 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
9691
96922002-10-16 Richard M. Stallman <rms@gnu.org>
9693
9694 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
9695
96962002-10-14 Juanma Barranquero <lektu@terra.es>
9697
9698 * w16select.c (syms_of_win16select): Fix docstring for
9699 `selection-coding-system'.
9700
9701 * w32select.c (syms_of_w32select): Likewise.
9702
97032002-10-14 Stefan Monnier <monnier@cs.yale.edu>
9704
9705 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
9706 a backslash-quoted char.
9707 (scan_lists, scan_sexps_forward): Pacify the compiler.
9708
97092002-10-13 Richard M. Stallman <rms@gnu.org>
9710
9711 * window.c (window_scroll): Set immediate_quit.
9712
9713 * print.c (print): When backquote form is the car of a list,
9714 output in old style. Use old_backquote_output to output all
9715 comma forms inside it in old style too.
9716
9717 * buffer.h (struct buffer): Move `undo_list' down below `name'.
9718
97192002-10-11 Markus Rost <rost@math.ohio-state.edu>
9720
9721 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
9722 batch mode).
9723
9724 * lread.c (Fload): Doc fix (load-suffixes).
9725
97262002-10-10 Steven Tamm <steventamm@mac.com>
9727
9728 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
9729 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
9730 Also switch the default to Qnil from Qt.
9731
97322002-10-08 Kenichi Handa <handa@m17n.org>
9733
9734 * coding.c (code_convert_region): When we need more GAP for
9735 conversion, pay attention to the case that coding->produced is not
9736 greater than coding->consumed.
9737
97382002-10-07 Richard M. Stallman <rms@gnu.org>
9739
9740 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
9741
97422002-10-06 Andrew Choi <akochoi@shaw.ca>
9743
9744 * macmenu.c (mac_menu_show): Add j to count menu items; match
9745 menu_item_selection to it to find selected item.
9746
97472002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9748
9749 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
9750 cases. The correct fix is to pass ReparentNotify to Xt.
9751 The shell widget interprets ConfigureNotify differently depending
9752 on if it has been reparented or not.
9753
97542002-10-05 Markus Rost <rost@math.ohio-state.edu>
9755
9756 * editfns.c (Fformat_time_string): Doc fix.
9757
97582002-10-05 John Paul Wallington <jpw@shootybangbang.com>
9759
9760 * fns.c (Flength): Doc fix.
9761
97622002-10-04 Stefan Monnier <monnier@cs.yale.edu>
9763
9764 * keyboard.c (keyremap): New struct.
9765 (read_key_sequence): Use it: globally replace keytran_foo with
9766 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
9767 keytran_next and fkey_next to just `next'.
9768
97692002-10-04 Steven Tamm <steventamm@mac.com>
9770
9771 * macterm.c (keycode_to_xkeysym_table): Change return to be
9772 treated like an X keysym.
9773
97742002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9775
9776 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
9777 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
9778 This is to also handle x/y changes that occur because of a resize.
9779
97802002-10-02 John Paul Wallington <jpw@shootybangbang.com>
9781
9782 * frame.c (Vdelete_frame_functions): New variable.
9783 (syms_of_frame): Initialize and defvar it.
9784 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
9785 it when frame's `tooltip' parameter is non-nil.
9786
9787 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
9788
9789 * w32fns.c (x_create_tip_frame): Likewise.
9790
9791 * macfns.c (x_create_tip_frame): Likewise.
9792
97932002-09-30 Kenichi Handa <handa@m17n.org>
9794
9795 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
9796 -1 before calling ccl_driver.
9797
9798 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
9799 Only when it is non-nil, handle composition sequence.
9800 (setup_coding_system) <0>: Don't force composition handling.
9801
9802 * Makefile.in (lisp, shortlisp): Add utf-16.elc
9803
98042002-09-29 Richard M. Stallman <rms@gnu.org>
9805
9806 * search.c (Freplace_match): Adjust match data for the substitution
9807 just made in the buffer.
9808
9809 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
9810 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
9811
98122002-09-27 Richard M. Stallman <rms@gnu.org>
9813
9814 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
9815 (read_char): Use them. Do all exits thru the end of the function.
9816
98172002-09-27 Kenichi Handa <handa@etl.go.jp>
9818
9819 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
9820 is nil.
9821
98222002-09-26 Richard M. Stallman <rms@gnu.org>
9823
9824 * regex.h (__restrict_arr): Don't define if already defined.
9825
9826 * coding.c (run_pre_post_conversion_on_str):
9827 Save and restore Vdeactivate_mark.
9828
98292002-09-26 John Paul Wallington <jpw@shootybangbang.com>
9830
9831 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
9832
98332002-09-26 Kenichi Handa <handa@etl.go.jp>
9834
9835 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
9836 nonzero, try face's family at first. Otherwise try FAMILY at first.
9837 (choose_face_font): If C is a single byte char or latin-1, call
9838 try_font_list with PREFER_FACE_FAMILY 1.
9839
98402002-09-21 Richard M. Stallman <rms@gnu.org>
9841
9842 * window.c (select_window_1): Don't select frame.
9843 Set frame's selected window only when frame itself is selected.
9844 (Fselect_window): Doc fix.
9845
98462002-09-18 Kim F. Storm <storm@cua.dk>
9847
9848 * process.c (make-network-process): Doc fix (there is no
9849 network-server-log-function hook).
9850
98512002-09-18 Richard M. Stallman <rms@gnu.org>
9852
9853 * print.c (print): Clear out the unused parts of Vprint_number_table.
9854 (syms_of_print): Doc fix for `print-number-table'.
9855
9856 * unexelf.c (unexec): Undo previous change.
9857
98582002-09-17 Andreas Schwab <schwab@suse.de>
9859
9860 * m/alpha.h [LINUX]: Don't define DATA_START.
9861
98622002-09-16 Dave Love <fx@gnu.org>
9863
9864 * unexelf.c (unexec): Deal with .got, reinstating change from
9865 25-08-1999.
9866
98672002-09-13 Richard M. Stallman <rms@gnu.org>
9868
9869 * s/sol2-6.h (UNEXEC): Comment out definition.
9870
9871 * unexsol.c (unexec): Don't downcase first letter of error msg.
9872
9873 * xfaces.c (Fcolor_supported_p): Just one arg is required.
9874
98752002-09-12 Markus Rost <rost@math.ohio-state.edu>
9876
9877 * unexsol.c: Include buffer.h, charset.h, coding.h.
9878
98792002-09-11 Richard M. Stallman <rms@gnu.org>
9880
9881 * unexsol.c: Don't use report_file_error; do it by hand
9882 using dlerror.
9883
9884 * process.c (wait_reading_process_input, both versions):
9885 Before calling turn_on_atimers, call stop_polling.
9886
9887 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
9888
9889 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
9890 we go to too_near_end, call clear_glyph_matrix.
9891 (redisplay_window): After make_cursor_line_fully_visible,
9892 call clear_glyph_matrix and bypass `goto done'.
9893
9894 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
9895 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
9896
98972002-09-10 Richard M. Stallman <rms@gnu.org>
9898
9899 * fileio.c (Fdo_auto_save): Catch error making directory.
9900 Only call push_message if we need to.
9901 At the same time, make an unwind-protect to pop it.
9902 Rename local message_p to old_message_p.
9903 (do_auto_save_make_dir, do_auto_save_eh): New functions.
9904 (do_auto_save_unwind): Don't call pop_message.
9905
9906 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
9907
9908 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
9909
9910 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
9911
9912 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
9913
99142002-09-10 Stefan Monnier <monnier@cs.yale.edu>
9915
9916 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
9917 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
9918 (re_match_2_internal): Be more careful with infinite loops.
9919
99202002-09-10 Kim F. Storm <storm@cua.dk>
9921
9922 * macros.c (end_kbd_macro): New function.
9923 (Fend_kbd_macro): Use it.
9924
9925 * macros.h (end_kbd_macro): Declare extern.
9926
9927 * keyboard.c (Fdiscard_input): If defining keyboard macro,
9928 end and save it instead of discarding it.
9929
99302002-09-09 Markus Rost <rost@math.ohio-state.edu>
9931
9932 * s/sol2-6.h: Fix typo. Add comment.
9933
99342002-09-09 Richard M. Stallman <rms@gnu.org>
9935
9936 * regex.c (regnum_t): Use signed int, not unsigned int.
9937
9938 * s/sol2-6.h: New file.
9939
9940 * s/sol2-5.h (UNEXEC): Definition deleted.
9941
99422002-09-08 Kim F. Storm <storm@cua.dk>
9943
9944 * macros.c (executing_macro_index): Change type to EMACS_INT.
9945 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
9946
9947 * macros.h (executing_macro_index): Change type to EMACS_INT.
9948
99492002-09-06 Richard M. Stallman <rms@gnu.org>
9950
9951 * casetab.c (set_case_table): Make canon table point to eqv table.
9952
99532002-09-06 Juanma Barranquero <lektu@terra.es>
9954
9955 * coding.c (syms_of_coding): Fix spacing.
9956
9957 * composite.c (Fcompose_region_internal)
9958 (Fcompose_string_internal): Likewise.
9959
9960 * data.c (Flsh): Likewise.
9961
9962 * fontset.c (Fset_fontset_font): Likewise.
9963
9964 * macfns.c (Fx_server_max_request_size): Likewise.
9965
9966 * w16select.c (syms_of_win16select): Likewise.
9967
9968 * w32select.c (syms_of_w32select): Likewise.
9969
9970 * xselect.c (syms_of_xselect): Likewise.
9971
99722002-09-05 Richard M. Stallman <rms@gnu.org>
9973
9974 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
9975 call EXTEND_RANGE_TABLE and return a proper value.
9976 (set_image_of_range): Don't call set_image_of_range_1
9977 if no TRANSLATE or if range includes all of Latin-1.
9978 Only call it for the Latin-1 part of the range.
9979 For other cases, make two separate ranges,
9980 one for the original specified characters and one for
9981 their case-conversions.
9982
99832002-09-04 Richard M. Stallman <rms@gnu.org>
9984
9985 * s/sol2-5.h (UNEXEC): Use unexsol.o.
9986
9987 * window.c (displayed_window_lines): Correct for one-off bug
9988 in HEIGHT on non-window displays.
9989
9990 * regex.c (set_image_of_range_1): New function.
9991 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
9992 Return a value to indicate running out of memory.
9993 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
9994 (extend_range_table_work_area): New subroutine.
9995 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
9996 Different calling conventions, and used from set_image_of_range{,_1}.
9997 (IMMEDIATE_QUIT_CHECK): Definitions moved.
9998
99992002-09-04 Juanma Barranquero <lektu@terra.es>
10000
10001 * makefile.w32-in: All dependencies updated.
10002
100032002-09-01 Richard M. Stallman <rms@gnu.org>
10004
10005 * unexsol.c: New file.
10006
10007 * xfns.c (Qbox): Declare external, don't define.
10008
10009 * xdisp.c (redisplay_window) <force-start case>:
10010 If point is on semi-visible last line, reposition
10011 it at previous line.
10012
10013 * alloc.c (display_malloc_warning): Use display-warning.
10014 (malloc_warning_1): Function deleted.
10015
10016 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
10017
10018 * lread.c (read1): Handle #! by skipping the line.
10019
100202002-08-31 Richard M. Stallman <rms@gnu.org>
10021
10022 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
10023 Don't include LDFLAGS.
10024 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
10025
100262002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
10027
10028 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
10029 member of x_display_info unless we compile for some window system.
10030
100312002-08-31 Kim F. Storm <storm@cua.dk>
10032
10033 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
10034 (get_window_cursor_type): Don't use them.
10035 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
10036
100372002-08-30 Kenichi Handa <handa@etl.go.jp>
10038
10039 * xdisp.c (get_next_display_element): Fix previous change.
10040
100412002-08-30 Andrew Choi <akochoi@shaw.ca>
10042
10043 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
10044 (expose_window): Use it to fix the display of overlapping
10045 rows (merge code from xterm.c).
10046
10047 * macfns.c (Qbox): Add extern declaration.
10048
100492002-08-30 Juanma Barranquero <lektu@terra.es>
10050
10051 * w32fns.c (Qbox): Make extern.
10052 (syms_of_w32fns): Remove initialization of Qbox.
10053
100542002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
10055
10056 * xfns.c (Fx_open_connection): Fix error message.
10057
100582002-08-30 Kim F. Storm <storm@cua.dk>
10059
10060 The following changes consolidates the handling of the cursor
10061 type in xdisp.c, moving duplicate code and functionality from
10062 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
10063
10064 * frame.h (enum text_cursor_kinds): Consolidated here.
10065 Added DEFAULT_CURSOR value.
10066 (struct frame) <desired_cursor, cursor_width>
10067 <blink_off_cursor, blink_off_cursor_width>: New fields.
10068 Consolidated from output_x, output_w32 and output_mac structs.
10069 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
10070 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
10071
10072 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
10073 Variables consolidated here.
10074 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
10075 (Vcursor_in_non_selected_windows): Renamed from
10076 cursor_in_non_selected_windows and changed to Lisp_Object.
10077 (syms_of_xdisp): Define and staticpro new and moved variables.
10078 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
10079 consolidated here. Recognize Qhollow setting.
10080 (set_frame_cursor_types): New function to set frame cursor types
10081 based on the frame parameters.
10082 (get_window_cursor_type): New function to calculate new cursor
10083 type and width for the specified window. Based on duplicated
10084 code consolidated here.
10085 Enhancements: cursor-in-non-selected-windows may be a cursor type,
10086 check buffer-local alternate-cursor-type and blink-cursor-alist
10087 before using built-in blink off methods.
10088
10089 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
10090
10091 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
10092 (get_specified_cursor_type, get_window_cursor_type)
10093 (set_frame_cursor_types): Added prototypes.
10094
10095 * macfns.c (x_specified_cursor_type): Removed.
10096 (x_set_cursor_type): Use set_frame_cursor_types.
10097 (Qbar, Qbox): Removed.
10098 (syms_of_macfns): Don't intern or staticpro them.
10099
10100 * macterm.c (x_specified_cursor_type): Remove prototype.
10101 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
10102 (x_display_and_set_cursor): Use get_window_cursor_type.
10103 Remove unused local variables cursor_non_selected, active_cursor.
10104 Redraw cursor if hbar cursor width changes.
10105 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
10106
10107 * macterm.h (enum text_cursor_kinds): Removed.
10108 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
10109 <blink_off_cursor, blink_off_cursor_width>: Members removed.
10110 (FRAME_DESIRED_CURSOR): Macro removed.
10111
10112 * w32fns.c (Vblink_cursor_alist): Removed.
10113 (Qbar, Qhbar, Qbox, Qhollow): Removed.
10114 (syms_of_w32fns): Don't intern, staticpro, or define them.
10115 (x_specified_cursor_type): Removed.
10116 (x_set_cursor_type): Use set_frame_cursor_types.
10117
10118 * w32term.c (x_specified_cursor_type): Remove prototype.
10119 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
10120 (x_display_and_set_cursor): Use get_window_cursor_type.
10121 Remove unused local variables cursor_off_state.
10122 Redraw cursor if hbar cursor width changes.
10123 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
10124
10125 * w32term.h (enum text_cursor_kinds): Removed.
10126 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
10127 <blink_off_cursor, blink_off_cursor_width>: Members removed.
10128 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
10129 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
10130 (struct w32_display_info) <x_highlight_frame>: Renamed member from
10131 w32_highlight_frame.
10132
10133 * xfns.c (Vblink_cursor_alist): Removed.
10134 (Qbar, Qhbar, Qbox, Qhollow): Removed.
10135 (syms_of_xfns): Don't intern, staticpro, or define them.
10136 (x_specified_cursor_type): Removed.
10137 (x_set_cursor_type): Use set_frame_cursor_types.
10138
10139 * xterm.c (x_specified_cursor_type): Remove prototype.
10140 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
10141 (x_display_and_set_cursor): Use get_window_cursor_type.
10142 Remove unused local variables cursor_off_state.
10143 Redraw cursor if hbar cursor width changes.
10144
10145 * xterm.h (enum text_cursor_kinds): Removed.
10146 (struct output_x) <current_cursor, desired_cursor, cursor_width>
10147 <blink_off_cursor, blink_off_cursor_width>: Members removed.
10148 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
10149 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
10150 (x_specified_cursor_type): Remove prototype.
10151
101522002-08-28 Richard M. Stallman <rms@gnu.org>
10153
10154 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
10155 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
10156 (Vblink_cursor_alist): New variable.
10157 (syms_of_w32fns): Initialize and defvar it.
10158 (x_specified_cursor_type): Recognize Qbox for filled box.
10159 Exceptions are hollow boxes.
10160 (Qbox, Qhollow): New variables.
10161 (syms_of_w32fns): Initialize and staticpro them.
10162
10163 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
10164 New macros.
10165 (struct w32_output): New fields blink_off_cursor,
10166 blink_off_cursor_width.
10167 (FRAME_CURSOR_WIDTH): New macro.
10168
10169 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
10170 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
10171
10172 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
10173 for bar cursor.
10174
10175 * w32term.c (expose_overlaps): New function.
10176 (expose_window): Use it to fix the display of overlapping rows.
10177
101782002-08-28 Simon Josefsson <jas@extundo.com>
10179
10180 * xfns.c (Fx_open_connection): Improve help when X connection
10181 fails, xhost is insecure and xauth is better.
10182
101832002-08-28 Juanma Barranquero <lektu@terra.es>
10184
10185 * makefile.w32-in: Add missing dependencies on w32term.h and
10186 composite.h.
10187
10188 * emacs.c (USAGE1): Add missing newline.
10189
101902002-08-27 Andrew Choi <akochoi@shaw.ca>
10191
10192 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
10193
101942002-08-27 Richard M. Stallman <rms@gnu.org>
10195
10196 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
10197 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
10198 (Vblink_cursor_alist): New variable.
10199 (syms_of_xfns): Initialize and defvar it.
10200 (x_specified_cursor_type): Recognize Qbox for filled box.
10201 Exceptions are hollow boxes.
10202 (Qbox, Qhollow): New variables.
10203 (syms_of_xfns): Initialize and staticpro them.
10204
10205 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
10206 New macros.
10207 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
10208
10209 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
10210 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
10211
10212 * emacs.c (main): Handle --script.
10213 (USAGE1): Mention --script.
10214 (standard_args): Define sort order for --script.
10215
102162002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
10217
10218 * xdisp.c (redisplay_updating_p): Variable removed.
10219 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
10220 New variables.
10221 (init_iterator): Don't free realized faces if
10222 inhibit_free_realized_faces is set.
10223 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
10224 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
10225 initialize Qinhibit_free_realized_faces.
10226
10227 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
10228 when iterator is adding glyphs to a glyph matrix.
10229
102302002-08-27 Kenichi Handa <handa@etl.go.jp>
10231
10232 * xdisp.c (get_next_display_element): In unibyte case, don't use
10233 octal form for such eight-bit characters that can be converted to
10234 multibyte char.
10235
102362002-08-26 Kim F. Storm <storm@cua.dk>
10237
10238 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
10239 foreground and background colors. From Joe Buehler.
10240
102412002-08-26 Miles Bader <miles@gnu.org>
10242
10243 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
10244
102452002-08-25 Andrew Choi <akochoi@shaw.ca>
10246
10247 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
10248 defined instead of MAC_OSX.
10249
10250 * s/darwin.h (select): Define select to sys_select only if
10251 HAVE_CARBON is defined.
10252 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
10253 (DONT_REOPEN_PTY): #def it.
10254
10255 * macterm.c (XTread_socket): Remove code to call
10256 SendEventToEventTarget for keys with command modifiers when
10257 mac_command_key_is_meta is nil.
10258
102592002-08-24 Andreas Schwab <schwab@suse.de>
10260
10261 * eval.c (Fdefvar): Fix last change.
10262
102632002-08-23 Richard M. Stallman <rms@gnu.org>
10264
10265 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
10266 Record variables in load history as (defvar . VAR).
10267 (Fdefvar): Don't record in load history if no initial value.
10268 (Qdefvar): New variable.
10269 (syms_of_eval): Init and staticpro it.
10270
10271 * lread.c (syms_of_lread): Doc fix.
10272 (build_load_history): Use Fmember to see if a definition
10273 is already in the Vload_history element.
10274
10275 * process.c (Fstart_process): Remove /: from program name.
10276
10277 * emacs.c (decode_env_path): Don't add /: if file name handler
10278 has a `safe-magic' property.
10279
10280 * callproc.c (Fcall_process): Remove /: from program name.
10281
102822002-08-23 Stefan Monnier <monnier@cs.yale.edu>
10283
10284 * regex.c (PATFETCH): Remove the translating fetch.
10285 (PATFETCH_RAW): Rename to PATFETCH.
10286 (set_image_of_range): New fun.
10287 (SET_RANGE_TABLE_WORK_AREA): Use it.
10288 (regex_compile): Don't translate the pattern chars so eagerly.
10289 Only do it when inserting an `exactn' bytecode or when handling
10290 a char-range.
10291 (mutually_exclusive_p): Avoid empty statement.
10292
102932002-08-22 Kim F. Storm <storm@cua.dk>
10294
10295 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
10296 end up on a partially visible line; this reverts a specific part
10297 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
10298 display error which has been reported several times now.
10299 However it introduces the problem that changes was supposed to fix.
10300 See my comments in the source if you want to debug this further.
10301
103022002-08-20 Kenichi Handa <handa@etl.go.jp>
10303
10304 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
10305
103062002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
10307
10308 * msdos.c (croak): Add `void' to definition.
10309
10310 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
10311 Don't define them, they are defined in msdos.c.
10312
10313 * mem-limits.h [MSDOS]: Declare etext.
10314
10315 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
10316 `const' since CORRECT_DIR_SEPS modifies its target.
10317
103182002-08-19 Kim F. Storm <storm@cua.dk>
10319
10320 * keyboard.c (Fclear_this_command_keys): Add optional arg
10321 KEEP-RECORD to avoid clearing lossage when we just want to clear
10322 the current key sequence (kmacro needs this).
10323
103242002-08-19 Kenichi Handa <handa@localhost>
10325
10326 * composite.c (run_composition_function): Call FUNC if it is fboundp.
10327
10328 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
10329 cons, return Qnil.
10330
103312002-08-17 Richard M. Stallman <rms@gnu.org>
10332
10333 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
10334
10335 * sysdep.c [!VMS]: Include sys/files.h.
10336
10337 * editfns.c (save_restriction_restore): Defend from unchained marker.
10338
10339 * buffer.c (overlays_at): Handle extending vec uniformly.
10340 (overlays_in): Handle extending vec from length 0 as in overlays_at.
10341
103422002-08-15 Andrew Choi <akochoi@shaw.ca>
10343
10344 * mac.c (init_mac_osx_environment): New function.
10345
10346 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
10347
103482002-08-14 Kim F. Storm <storm@cua.dk>
10349
10350 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
10351 executing macro before appending to it (when used from Lisp).
10352 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
10353 which is called prior to each iteration of macro (for kmacro.el).
10354 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
10355
10356 * lisp.h (Fexecute_kbd_macro): Update prototype.
10357
10358 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
10359
103602002-08-14 Kenichi Handa <handa@etl.go.jp>
10361
10362 * xselect.c (QUTF8_STRING): New variable.
10363 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
10364 (x_atom_to_symbol): Likewise.
10365 (x_get_local_selection): New argument local_request. If it is
10366 nonzero, call handler_fn with the second arg nil.
10367 (x_handle_selection_request): Call x_get_local_selection with
10368 local_request 0.
10369 (lisp_data_to_selection_data): Don't encode the string here.
10370 (Fx_get_selection_internal): Call x_get_local_selection with
10371 local_request 1.
10372 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
10373
10374 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
10375
10376 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
10377
103782002-08-13 Richard M. Stallman <rms@gnu.org>
10379
10380 * minibuf.c (Fminibufferp): New function.
10381 (syms_of_minibuf): Defsubr it.
10382 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
10383
103842002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
10385
10386 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
10387
103882002-08-12 Richard M. Stallman <rms@gnu.org>
10389
10390 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
10391 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
10392 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
10393 already.
10394
10395 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
10396
103972002-08-11 Andrew Choi <akochoi@shaw.ca>
10398
10399 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
10400 (Vmac_pass_command_to_system): New variable.
10401 (Vmac_pass_control_to_system): New variable.
10402 (do_mouse_moved): Check wp with is_emacs_window.
10403 (XTread_socket): Check window_ptr with is_emacs_window.
10404 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
10405 events back to Mac Toolbox for processing, depending on values of
10406 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
10407 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
10408 Vmac_pass_control_to_system.
10409
104102002-08-10 Kenichi Handa <handa@etl.go.jp>
10411
10412 * coding.c (unencodable_char_position): New function.
10413 (Funencodable_char_position): New function.
10414 (syms_of_coding): Defsubr Funencodable_char_position.
10415
104162002-08-10 Andrew Choi <akochoi@shaw.ca>
10417
10418 * mac.c (sys_select) [MAC_OSX]: New function.
10419
10420 * macterm.c (MakeMeTheFrontProcess): New function.
10421 (mac_initialize): Call MakeMeTheFrontProcess.
10422
10423 * s/darwin.h: Define select to sys_select.
10424
104252002-08-09 Richard M. Stallman <rms@gnu.org>
10426
10427 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
10428
104292002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
10430
10431 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
10432 end of the buffer.
10433
104342002-08-08 Ken Raeburn <raeburn@mit.edu>
10435
10436 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
10437
10438 * puresize.h (BASE_PURESIZE): Increase to 910000.
10439
104402002-08-08 Kenichi Handa <handa@etl.go.jp>
10441
10442 * coding.c (Ffind_operation_coding_system): For write-region, if
10443 VISIT is a filename, make it the target.
10444
104452002-08-07 Richard M. Stallman <rms@gnu.org>
10446
10447 * alloc.c (mark_object): Detect long lists for debugging.
10448 (mark_object_loop_halt): New variable.
10449
10450 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
10451
10452 * data.c (Fmake_variable_frame_local): Doc fix.
10453
104542002-08-01 David Ponce <david@dponce.com>
10455
10456 * w32menu.c (local_heap, local_alloc, local_free): New macros.
10457 (malloc_widget_value, free_widget_value)
10458 (w32_free_submenu_strings): Use them.
10459
10460 (push_submenu_start, push_submenu_end, push_left_right_boundary)
10461 (push_menu_pane, push_menu_item, single_keymap_panes)
10462 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
10463 (single_submenu, set_frame_menubar)
10464 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
10465
10466 (Fx_popup_menu): Don't show pop up menu until preceding one is
10467 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
10468
10469 * w32menu.c: Changes adapted from xmenu.c
10470 (set_frame_menubar): First parse all submenus,
10471 then make widget_value trees from them.
10472 Don't allocate any widget_value objects
10473 until we are done with the parsing.
10474 (parse_single_submenu): New function.
10475 (digest_single_submenu): New function.
10476 (single_submenu): Function deleted, replaced by those two.
10477
104782002-08-04 Andrew Choi <akochoi@shaw.ca>
10479
10480 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
10481 returns a valid window pointer before proceeding for keyDown and
10482 autoKey events.
10483
104842002-08-03 Andrew Choi <akochoi@shaw.ca>
10485
10486 * macterm.c (USE_CARBON_EVENTS): New macro.
10487 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
10488 (x_iconify_frame): Call CollapseWindow.
10489 (Vmac_reverse_ctrl_meta): New variable.
10490 (Vmac_wheel_button_is_mouse_2): New variable.
10491 (init_mac_drag_n_drop): New function.
10492 (mac_do_receive_drag): New function.
10493 (mac_handle_service_event): New function.
10494 (init_service_handler): New function.
10495 (mac_to_emacs_modifiers): New function.
10496 (mac_event_to_emacs_modifiers): New function.
10497 (mac_get_mouse_btn): New function.
10498 (mac_convert_event_ref): New function.
10499 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
10500 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
10501 mac_get_mouse_btn.
10502 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
10503
10504 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
10505 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
10506 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
10507 TOOL_BAR_EVENT for MAC_OS as well.
10508 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
10509 as for WINDOWS_NT.
10510 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
10511
10512 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
10513
105142002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
10515
10516 * xdisp.c (forward_to_next_line_start): Fix a condition that
10517 lead to a newline being skipped.
10518
105192002-08-02 Andrew Choi <akochoi@shaw.ca>
10520
10521 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
10522
105232002-08-01 Richard M. Stallman <rms@gnu.org>
10524
10525 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
10526
105272002-07-31 Andrew Choi <akochoi@shaw.ca>
10528
10529 * macfns.c: #undef init_process before #define-ing it.
10530
10531 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
10532 HAVE_CARBON is defined.
10533
105342002-07-31 Richard M. Stallman <rms@gnu.org>
10535
10536 * xmenu.c (set_frame_menubar): First parse all submenus,
10537 then make widget_value trees from them.
10538 Don't allocate any widget_value objects
10539 until we are done with the parsing.
10540 (parse_single_submenu): New function.
10541 (digest_single_submenu): New function.
10542 (single_submenu): Function deleted, replaced by those two.
10543
105442002-07-30 Juanma Barranquero <lektu@terra.es>
10545
10546 * w32proc.c (syms_of_ntproc): Fix docstring of
10547 `w32-get-true-file-attributes'.
10548
105492002-07-28 Richard M. Stallman <rms@gnu.org>
10550
10551 * s/hpux8.h (HPUX8): Define this before including hpux.h.
10552 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
10553
10554 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
10555
10556 * keyboard.c (make_lispy_event):
10557 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
10558 Explicitly clear up_modifier in event->modifiers.
10559
105602002-07-27 Richard M. Stallman <rms@gnu.org>
10561
10562 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
10563
10564 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
10565 for bar cursor.
10566
105672002-07-26 Kenichi Handa <handa@etl.go.jp>
10568
10569 * coding.c (detect_coding_iso2022): While checking a byte sequence
10570 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
10571 it in the normal loop.
10572
105732002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
10574
10575 * xterm.c (expose_overlaps): New function.
10576 (expose_window): Use it to fix the display of overlapping rows.
10577
10578 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
10579
105802002-07-23 Ken Raeburn <raeburn@gnu.org>
10581
10582 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
10583 since it only depends on XUINT.
10584
10585 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
10586 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
10587 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
10588 Macros deleted.
10589
10590 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
10591 its value over other approaches.
10592 * sysdep.c (start_of_data): Don't define the function if a macro
10593 form has been defined.
10594
105952002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
10596
10597 * xdisp.c (redisplay_updating_p): New variable.
10598 (init_iterator): Don't free realized faces when
10599 redisplay_updating_p is set.
10600 (redisplay_internal): Set redisplay_updating_p while updating
10601 the display.
10602
106032002-07-23 Richard M. Stallman <rms@gnu.org>
10604
10605 * editfns.c (Fmessage): Treat "" like nil.
10606
106072002-07-23 Kenichi Handa <handa@etl.go.jp>
10608
10609 * xdisp.c (face_before_or_after_it_pos):
10610 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
10611
106122002-07-22 Juanma Barranquero <lektu@terra.es>
10613
10614 * callproc.c (init_callproc) [DOS_NT]:
10615 Initialize Vshared_game_score_directory to nil.
10616 (syms_of_callproc) [DOS_NT]: Likewise.
10617
106182002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
10619
10620 * xdisp.c (display_line): Replace an abort with xassert.
10621
106222002-07-21 Richard M. Stallman <rms@gnu.org>
10623
10624 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
10625 and END_UNCHANGED when setting buffer_unchanged_p.
10626 Use current_matrix_up_to_date_p to decide whether to use
10627 try_cursor_movement.
10628
10629 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
10630
10631 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
10632
10633 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
10634 Set to nil if dir does not exist.
10635 (syms_of_callproc): Init unconditionally and simply.
10636
10637 * buffer.c (Fbuffer_list): Doc fix.
10638
106392002-07-21 Ken Raeburn <raeburn@gnu.org>
10640
10641 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
10642
10643 * buffer.c (mmap_realloc): When shrinking, make sure number of
10644 pages to unmap is rounded towards zero.
10645
10646 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
10647 (XSETINT): Deleted.
10648
10649 * m/att3b.h (XINT): Don't define.
10650 (VALBITS, VALMASK, XTYPE): Deleted.
10651 (DATA_SEG_BITS): Define.
10652 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
10653 ARRAY_MARK_FLAG): Deleted.
10654 (DATA_SEG_BITS): Define.
10655 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
10656 (DATA_SEG_BITS): Define.
10657
106582002-07-20 Richard M. Stallman <rms@gnu.org>
10659
10660 * print.c (print_error_message): New args CONTEXT and CALLER.
10661 Calls changed.
10662
10663 * lisp.h (print_error_message): Declare new args.
10664
10665 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
10666 and CONTEXT to print_error_message, don't print them here.
10667 For a Quit, don't use Vsignaling_function.
10668 Call message_log_maybe_newline.
10669
10670 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
10671
106722002-07-20 Kim F. Storm <storm@cua.dk>
10673
10674 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
10675
106762002-07-19 Ken Raeburn <raeburn@gnu.org>
10677
10678 * bytecode.c (struct byte_stack): Pointers into byte string now
10679 point to const.
10680 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
10681 const.
10682 * charset.h (BCOPY_SHORT): Source pointer now points to const.
10683 * coding.c (encode_eol, detect_coding, detect_eol):
10684 (decode_coding, encode_coding, detect_coding_system):
10685 Source strings now treated as const.
10686 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
10687 modify Lisp string contents.
10688 * coding.h (decode_coding, encode_coding, detect_coding,
10689 detect_eol): Declarations updated.
10690 * composite.c (compose_chars_in_text): Treat Lisp string contents
10691 as const.
10692 * dispnew.c (safe_bcopy): Source pointer now points to const.
10693 * lisp.h (STRING_COPYIN): New macro.
10694 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
10695 (internal_with_output_to_temp_buffer): Declarations updated.
10696 * print.c (temp_output_buffer_setup):
10697 (internal_with_output_to_temp_buffer): Buffer name argument is now
10698 pointer to const.
10699 * sound.c (struct sound_device): Function pointer field "write"
10700 buffer argument now points to const.
10701 (vox_write): Buffer argument points to const.
10702 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
10703 contents as const.
10704 * sysdep.c (emacs_write): Buffer pointer now const.
10705 * term.c (encode_terminal_code): Buffer pointer now const.
10706 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
10707 (x_face_list_fonts, x_update_menu_appearance):
10708 (hash_string_case_insensitive): Treat Lisp string contents as const.
10709
107102002-07-19 Juanma Barranquero <lektu@terra.es>
10711
10712 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
10713
10714 * fileio.c (syms_of_fileio): Likewise.
10715 (Ffile_name_as_directory): Fix argument name in docstring.
10716 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
10717
107182002-07-18 Richard M. Stallman <rms@gnu.org>
10719
10720 * data.c (Fdefalias): Doc fix.
10721
107222002-07-17 Dave Love <fx@gnu.org>
10723
10724 * intervals.h (text_property_stickiness): Use P_.
10725
10726 * ccl.c: Remove `emacs' conditionals.
10727 (ccl_backtrace_table): Fix size spec.
10728 (ccl_driver): Fix type errors.
10729
107302002-07-16 Ken Raeburn <raeburn@gnu.org>
10731
10732 * alloc.c (xstrdup, make_string, make_unibyte_string)
10733 (make_multibyte_string, build_string): String pointer args now
10734 point to const.
10735 * charset.c (find_charset_in_text, c_string_width):
10736 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
10737 * fileio.c (report_file_error):
10738 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
10739 (count_combining_before, count_combining_after, insert_1_both):
10740 (insert, insert_and_inherit, insert_string):
10741 (insert_before_markers, insert_before_markers_and_inherit):
10742 * lread.c (intern, oblookup, hash_string):
10743 * minibuf.c (temp_echo_area_glyphs):
10744 * search.c (fast_c_string_match_ignore_case):
10745 * sysdep.c (emacs_open, set_file_times):
10746 * xfaces.c (xstricmp):
10747 * xdisp.c (store_frame_title, string_char_and_length):
10748 (message_dolog, message2, message2_nolog, set_message): Likewise.
10749 (set_message_1): Cast message string argument to const pointer.
10750 * editfns.c (general_insert_function): Insertion function now
10751 takes pointer to const for input data.
10752 * charset.h (find_charset_in_text, c_string_width):
10753 (parse_str_as_multibyte): Declarations updated.
10754 * dispextern.h (xstricmp): Declaration updated.
10755 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
10756 (count_size_as_multibyte, count_combining_before):
10757 (count_combining_after, insert_1, insert_1_both, message_dolog):
10758 (insert, insert_and_inherit, insert_before_markers)
10759 (insert_before_markers_and_inherit, set_message, message2):
10760 (message2_dolog, build_string, make_string, make_unibyte_string):
10761 (make_multibyte_string, intern, oblookup, report_file_error):
10762 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
10763 (emacs_open, xstrdup): Declarations updated.
10764 * systime.h (set_file_times): Declaration updated.
10765
10766 * charset.c (find_charset_in_text, lisp_string_width): Use const
10767 for pointer to lisp string data.
10768 * charset.h (FETCH_STRING_CHAR_ADVANCE):
10769 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
10770 * coding.c (Ffind_coding_systems_region_interval):
10771 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
10772 (Fmake_directory_internal, Fdelete_directory):
10773 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
10774 * fontset.c (font_family_registry, fs_query_fontset):
10775 (list_fontsets):
10776 * frame.c (Fframe_parameter):
10777 * keyboard.c (cmd_error_internal):
10778 * keymap.c (Fdescribe_buffer_bindings):
10779 * lread.c (complete_filename_p, openp):
10780 * minibuf.c (Fminibuffer_complete_word):
10781 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
10782 (face_before_or_after_it_pos, next_element_from_string):
10783 (get_overlay_arrow_glyph_row, display_mode_element):
10784 (decode_mode_spec_coding):
10785 * xterm.c (same_x_server): Likewise.
10786
10787 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
10788 settings of non-existent fields.
10789
10790 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
10791 copy a lisp value.
10792
10793 * lread.c (Fintern_soft): Use string macros instead of
10794 Lisp_String fields.
10795 * keyboard.c (echo_char, parse_modifiers_uncached):
10796 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
10797 * textprop.c (validate_interval_range, interval_of): Likewise.
10798
10799 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
10800
10801 * charset.h (FETCH_STRING_CHAR_ADVANCE)
10802 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
10803 XSTRING()->size_byte.
10804
10805 * lisp.h (SDATA, SREF): Produce rvalue.
10806 (SSET): New macro.
10807 * alloc.c (make_event_array): Use SSET for storing into a string.
10808 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
10809 a string.
10810 * casefiddle.c (casify_object): Use SSET.
10811 * charset.h (FETCH_STRING_CHAR_ADVANCE)
10812 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
10813 address of string contents.
10814 * data.c (Faref): Use SDATA.
10815 (Faset): Use SDATA, SSET.
10816 * dired.c (directory_files_internal): Use SSET.
10817 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
10818 (Fread_file_name): Use SREF, SSET.
10819 * fns.c (concat): Use SSET.
10820 (concat, Fdelete): Use SDATA.
10821 * insdel.c (insert_from_string_1): Use SDATA.
10822 * keyboard.c (Fevent_convert_list): Use SREF.
10823 * lread.c (Fload): Use SDATA, SSET.
10824 * macfns.c (validate_x_resource_name): Use SSET.
10825 * process.c (status_message): Use SSET.
10826 * search.c (wordify): Use SDATA.
10827 (Freplace_match): Use SREF.
10828 * w32fns.c (validate_x_resource_name): Use SSET.
10829 * xfns.c (validate_x_resource_name): Use SSET.
10830 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
10831
108322002-07-16 Richard M. Stallman <rms@gnu.org>
10833
10834 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
10835
10836 * xdisp.c (reconsider_clip_changes):
10837 Don't test prevent_redisplay_optimizations_p.
10838 (redisplay_internal): Test prevent_redisplay_optimizations_p
10839 along with clip_changed in some cases.
10840 (try_window_id): Likewise.
10841 (redisplay_window): New local var buffer_unchanged_p.
10842
10843 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
10844
10845 * process.c (create_process): Test USG_SUBTTY_WORKS.
10846 (process_send_signal): Clean up handling of GID.
10847 Detect errors in ioctls meant to set GID.
10848
10849 * window.c (temp_output_buffer_show):
10850 Don't set prevent_redisplay_optimizations_p.
10851
108522002-07-15 Juanma Barranquero <lektu@terra.es>
10853
10854 * eval.c (Fdefvaralias): Add docstring argument.
10855
108562002-07-15 Ken Raeburn <raeburn@gnu.org>
10857
10858 * lisp.h (STRING_INTERVALS): Produce rvalue.
10859 (STRING_SET_INTERVALS): New macro.
10860 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
10861 * fns.c (Fstring_as_multibyte): Likewise.
10862 * intervals.c (balance_possible_root_interval, delete_interval)
10863 (create_root_interval, copy_intervals_to_string): Likewise.
10864 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
10865 instead of 0.
10866
108672002-07-14 Ken Raeburn <raeburn@gnu.org>
10868
10869 * lisp.h (STRING_SET_CHARS): New macro.
10870 (SCHARS, SBYTES): Produce rvalues.
10871 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
10872 * fns.c (concat): Likewise.
10873 * lread.c (read_vector): Likewise.
10874
10875 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
10876 (STRING_SET_UNIBYTE): New macro.
10877 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
10878 length of -1) changed to use STRING_SET_UNIBYTE.
10879 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
10880 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
10881 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
10882 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
10883 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
10884 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
10885 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
10886 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
10887 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
10888 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
10889 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
10890 STRING_BYTES or indirection changed to SCHARS, SBYTES,
10891 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
10892 unchanged for now.
10893
108942002-07-13 Kim F. Storm <storm@cua.dk>
10895
10896 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
10897
108982002-07-12 Richard M. Stallman <rms@gnu.org>
10899
10900 * fileio.c (Fwrite_region): Doc fix.
10901
10902 * print.c (print_error_message): Don't handle Vsignaling_function here.
10903
10904 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
10905 (command_loop_1): Avoid certain actions after memory-full error.
10906
10907 * eval.c (Fsignal): Don't call cancel_hourglass.
10908 For a memory-full error, don't call Vsignal_hook_function
10909 and don't set Vsignaling_function.
10910
10911 * process.c (process_send_signal): Add abort call.
10912
109132002-07-11 Markus Rost <rost@math.ohio-state.edu>
10914
10915 * keymap.c (Fkey_binding): Fix typo.
10916
109172002-07-11 Richard M. Stallman <rms@gnu.org>
10918
10919 * alloc.c (Vmemory_full): New variable.
10920 (Vmemory_signal_data): Renamed from memory_signal_data.
10921 Uses changed.
10922 (syms_of_alloc): Defvar them.
10923 (memory_full, buffer_memory_full): Set Vmemory_full.
10924
10925 * lisp.h (Vmemory_full): Add declaration.
10926 (current_column, indented_beyond_p): Change declaration.
10927
10928 * indent.c (last_known_column): Declare as double, not float.
10929 (current_column, current_column_1, string_display_width)
10930 (position_indentation): Return `double'.
10931 (indented_beyond_p): Arg `column' is `double'. Callers changed.
10932
10933 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
10934 (back_to_previous_visible_line_start)
10935 (reseat_at_next_visible_line_start, next_element_from_buffer):
10936 Use `double', not `float', when calling indented_beyond_p.
10937
10938 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
10939
10940 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
10941
109422002-07-11 Juanma Barranquero <lektu@terra.es>
10943
10944 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
10945 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
10946 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
10947 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
10948 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
10949 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
10950
109512002-07-10 Juanma Barranquero <lektu@terra.es>
10952
10953 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
10954 All callers changed.
10955
109562002-07-09 Stefan Monnier <monnier@cs.yale.edu>
10957
10958 * data.c (Fdefalias): Add an optional `docstring' argument.
10959 (set_internal, Fsetq_default): Use XCAR/XCDR.
10960
10961 * composite.c (HASH_VALUE, HASH_KEY):
10962 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
10963
109642002-07-09 Kenichi Handa <handa@etl.go.jp>
10965
10966 * callproc.c (Fcall_process): Fix previous change.
10967
109682002-07-07 Stefan Monnier <monnier@cs.yale.edu>
10969
10970 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
10971 Add support for hash-tables.
10972 (Ftry_completion): Return t even if the string appears multiple times.
10973
10974 * fns.c (Fnconc): Use XCDR.
10975 (Fprovide): Use CONSP and XCDR.
10976 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
10977 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
10978 (Fmake_hash_table): Accept `:size nil'.
10979 (Fmakehash): Delete: moved to subr.el.
10980 (syms_of_fns): Don't defsubr makehash.
10981
10982 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
10983 (HASH_TABLE_SIZE): Move from fns.c.
10984
109852002-07-07 Richard M. Stallman <rms@gnu.org>
10986
10987 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
10988 Instead just return 0 when there is something to be done.
10989 (try_scrolling): If make_cursor_line_fully_visible returns 0,
10990 retry scrolling as if cursor were off the bottom.
10991 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
10992 return CURSOR_MOVEMENT_MUST_SCROLL.
10993 (redisplay_window): If make_cursor_line_fully_visible returns 0,
10994 go to try_to_scroll.
10995
10996 * buffer.c (Fbuffer_local_value): Store current value into its binding
10997 so we get the up-to-date value for the binding that is loaded.
10998
10999 * eval.c (Fdefmacro): Doc fix.
11000
110012002-07-05 Dave Love <fx@gnu.org>
11002
11003 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
11004 correctly.
11005
11006 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
11007 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
11008 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
11009 CCL_LookupCharConstTbl.
11010 (syms_of_ccl): Defvar translation-hash-table-vector.
11011
110122002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11013
11014 * xdisp.c: Remove unused variable `face'.
11015
110162002-07-04 Juanma Barranquero <lektu@terra.es>
11017
11018 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
11019 obsolescence information.
11020
110212002-07-03 Andrew Choi <akochoi@shaw.ca>
11022
11023 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
11024 pattern. Search cache first.
11025 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
11026 for Japanese font.
11027 (XLoadQueryFont): Use it.
11028
110292002-07-02 Richard M. Stallman <rms@gnu.org>
11030
11031 * keymap.c (Fdefine_key): Doc fix.
11032
11033 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
11034
110352002-07-02 Juanma Barranquero <lektu@terra.es>
11036
11037 * keymap.c (syms_of_keymap): Fix typo.
11038
110392002-07-01 Andrew Choi <akochoi@shaw.ca>
11040
11041 * s/darwin.h: Define POSIX_SIGNALS.
11042
11043 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
11044 and FSRefMakePath to convert FSSpec returned with Apple Event to
11045 Posix pathname.
11046 (mac_initialize) [TARGET_API_MAC_CARBON]:
11047 Call init_required_apple_events and disable the `Quit' menu item
11048 provided automatically by the Carbon Toolbox.
11049
110502002-07-01 Dave Love <fx@gnu.org>
11051
11052 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
11053 for K&R.
11054
11055 * xterm.c: Fix prototype for K&R.
11056
11057 * term.c (costs_set): Declare static, non-initialized for pcc.
11058
110592002-07-01 Richard M. Stallman <rms@gnu.org>
11060
11061 * keyboard.c (timer_last_idleness_start_time): New variable.
11062 (timer_start_idle): Set that.
11063 (read_key_sequence): Use that to reset timer_idleness_start_time
11064 to previous value.
11065
11066 * window.c (Frecenter): With arg, set optional_new_start.
11067
11068 * xdisp.c (redisplay_internal): Make optional_new_start really work.
11069
11070 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
11071 buffer for completion.
11072
110732002-06-29 Ken Raeburn <raeburn@gnu.org>
11074
11075 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
11076
110772002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11078
11079 * keyboard.c (readable_filtered_events): New function that filters
11080 FOCUS_IN_EVENT depending on parameter.
11081 (readable_events): Calls readable_filtered_events, not filtering
11082 FOCUS_IN_EVENT.
11083 (get_filtered_input_pending): New function, filtering parameter passed
11084 to readable_filtered_events.
11085 (get_input_pending): Calls get_filtered_input_pending, not filtering
11086 FOCUS_IN_EVENT.
11087 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
11088 FOCUS_IN_EVENT.
11089
11090 * xterm.h (struct x_output): Add focus_state.
11091
11092 * xterm.c (x_focus_changed): New function.
11093 (x_detect_focus_change): New function.
11094 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
11095 EnterNotify and LeaveNotify to track X focus changes.
11096
110972002-06-28 Andreas Schwab <schwab@suse.de>
11098
11099 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
11100
111012002-06-27 Kim F. Storm <storm@cua.dk>
11102
11103 * xdisp.c: (mode_line_string_list, mode_line_string_face)
11104 (mode_line_string_face_prop): New variables.
11105 (store_mode_line_string): New function.
11106 (display_mode_element): Use store_mode_line_string to
11107 add mode-line string elements to mode_line_string_list
11108 when mode_line_string_list is non-nil.
11109 (Fformat_mode_line): Now returns propertized string by
11110 default. New arg NO-PROPS to ignore properties.
11111 (decode_mode_spec): Only add two dashes for %- in propertized
11112 mode-line string.
11113 (syms_of_xdisp): Init and staticpro mode_line_string_list.
11114
111152002-06-27 Stefan Monnier <monnier@cs.yale.edu>
11116
11117 * minibuf.c (minibuffer_completion_contents): Add return type.
11118
111192002-06-27 Juanma Barranquero <lektu@terra.es>
11120
11121 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
11122
111232002-06-26 Juanma Barranquero <lektu@terra.es>
11124
11125 * fileio.c (read_file_name_cleanup): Add missing return.
11126
111272002-06-26 Richard M. Stallman <rms@gnu.org>
11128
11129 * window.c (Frecenter): Don't set force_start flag.
11130
11131 * minibuf.c (do_completion, Fminibuffer_complete_word)
11132 (Fminibuffer_completion_help): Complete just the text before point.
11133 (minibuffer_completion_contents): New function.
11134
11135 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
11136
11137 * frame.c (frames_bury_buffer): Function deleted.
11138
111392002-06-25 Miles Bader <miles@gnu.org>
11140
11141 * callint.c (Fcall_interactively): When checking to see if doprnt hit
11142 the end of callint_message, allow for a terminating '\0'.
11143
111442002-06-24 Juanma Barranquero <lektu@terra.es>
11145
11146 * w32select.c: Include composite.h
11147
11148 * w16select.c: Likewise.
11149
111502002-06-24 Kenichi Handa <handa@etl.go.jp>
11151
11152 * callproc.c (Fcall_process): If code detection is necessary,
11153 call detect_coding directly here.
11154
11155 * coding.c (detect_eol): Preserve coding->cmp_data.
11156
11157 * w16select.c (Fw16_get_clipboard_data):
11158 * w32fns.c (w32_to_x_font):
11159 * w32select.c (Fw32_get_clipboard_data):
11160 * xselect.c (selection_data_to_lisp_data):
11161 * xterm.c (XTread_socket): Disable composition handling.
11162
111632002-06-24 Stefan Monnier <monnier@cs.yale.edu>
11164
11165 * print.c (temp_output_buffer_setup): Kill all local variables.
11166
111672002-06-22 Stefan Monnier <monnier@cs.yale.edu>
11168
11169 * lread.c (Fread): Remove redundant and imprecise declaration.
11170
11171 * xfns.c (check_x_display_info): Use check_x_frame.
11172
11173 * .gdbinit (xprintsym): Use the new `xname' field.
11174 (xsymbol): Use it.
11175
111762002-06-22 Jason Rumney <jasonr@gnu.org>
11177
11178 * w32fns.c (file_dialog_callback): New function.
11179 (Fx_file_dialog): Allow selecting directories as well as files.
11180
111812002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11182
11183 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
11184 OpenBSD. Add support for mipseb-*-netbsd* machines.
11185
111862002-06-17 Andrew Choi <akochoi@shaw.ca>
11187
11188 * macterm.c (mac_scroll_area): Set foreground and backcolor to
11189 black and white before scrolling. Restore frame background and
11190 foreground color after scrolling.
11191 (do_window_update): Call XClearWindow before calling expose_frame.
11192 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
11193 FRAME_FOREGROUND_PIXEL of frame.
11194
11195 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
11196 test Mac command key as <ALT> key.
11197
111982002-06-17 Stefan Monnier <monnier@cs.yale.edu>
11199
11200 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
11201
11202 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
11203 Lookup keys in function-key-map immediately so that key-translation-map
11204 can be applied earlier.
11205 Remove function_key_possible and key_translation_possible, replaced
11206 by checking `keytran_start < t'.
11207
11208 * .gdbinit (xsymbol): Use the new `xname' field.
11209
112102002-06-17 Andrew Choi <akochoi@shaw.ca>
11211
11212 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
11213 test Mac command key as <ALT> key.
11214
11215 * mac.c (do_applescript): Call initialize_applescript if necessary
11216 when first called. Dispose of result_desc only when there is no error.
11217 (Fdo_applescript): Use %d format specifier instead of %ld.
11218
112192002-06-16 Andrew Choi <akochoi@shaw.ca>
11220
11221 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
11222 of FrontWindow for cases keyDown and autoKey.
11223
11224 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
11225 Vdefault_fontset to Monaco with mac-roman coding.
11226
11227 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
11228 init_process before and after inclusion of Carbon/Carbon.h, resp.
11229
11230 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
11231 cursor_gc.
11232 (add_font_name_table_entry): New function.
11233 (init_font_name_table): Use add_font_name_table_entry; add italic,
11234 bold, and bold-italic entries for truetype fonts.
11235
11236 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
11237 for Mac too.
11238 (try_font_list) [MAC_OS]: If no font matches given registry, try
11239 fonts with any registry matching face_family.
11240 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
11241
11242 * s/darwin.h: If autoconf detects the Ncurses library, define
11243 LIBS_TERMCAP to -lncurses to use it.
11244
112452002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
11246
11247 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
11248
112492002-06-15 Richard M. Stallman <rms@gnu.org>
11250
11251 * window.c (Fset_window_configuration): Explicitly preserve
11252 the point value that new_current_buffer had at the start.
11253
112542002-06-14 Juanma Barranquero <lektu@terra.es>
11255
11256 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
11257 Fix typos.
11258
112592002-06-14 Kim F. Storm <storm@cua.dk>
11260
11261 * insdel.c (insert_1_both, insert_from_string_1)
11262 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
11263 insert happened in the end_unchanged region. Otherwise, the
11264 redisplay may be confused and duplicate the last line in the
11265 buffer [seen after save-buffer when require-final-newline==t].
11266
112672002-06-13 Jason Rumney <jasonr@gnu.org>
11268
11269 * w32.c (init_environment): Remove EMACSLOCKDIR.
11270 (stat): Swap _S_IFDIR and _S_IFREG.
11271
112722002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11273
11274 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
11275 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
11276 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
11277 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
11278 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
11279 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
11280 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
11281 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
11282 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
11283 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
11284 SELECTION_REQUEST_EVENT, selection_clear_event to
11285 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
11286 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
11287 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
11288 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
11289 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
11290 no_event to NO_EVENT.
11291
112922002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11293
11294 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
11295
112962002-06-12 Stefan Monnier <monnier@cs.yale.edu>
11297
11298 * intervals.c (textget): Don't forget to `return'.
11299 (lookup_char_property): Use XCAR/XCDR.
11300
113012002-06-12 Juanma Barranquero <lektu@terra.es>
11302
11303 * xdisp.c (Fformat_mode_line): Fix typo.
11304
113052002-06-12 Kim F. Storm <storm@cua.dk>
11306
11307 * xdisp.c (Fformat_mode_line): New function.
11308 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
11309 (store_frame_title_char, store_frame_title): Use unconditionally.
11310 (init_xdisp): Defsubr Fformat_mode_line.
11311 Initialize frame_title_buf etc. unconditionally.
11312
113132002-06-11 Stefan Monnier <monnier@cs.yale.edu>
11314
11315 * keyboard.c (read_key_sequence):
11316 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
11317 things through those maps after downcasing events.
11318 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
11319 applies after function-key-map.
11320 Make sure that keytran can be done in the middle in the sequence.
11321 Be careful not to throw away events past the one we downcase.
11322
11323 * lread.c (read_integer): Remove unused var `tem'.
11324 (read1): Fix int/Lisp_Object mixup.
11325
11326 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
11327
113282002-06-11 Richard M. Stallman <rms@gnu.org>
11329
11330 * keyboard.c (readable_events): Ignore any number of
11331 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
11332
113332002-06-09 Miles Bader <miles@gnu.org>
11334
11335 * xfaces.c (Ftty_supports_face_attributes_p): New function.
11336 (parse_rgb_list, tty_lookup_color): New functions.
11337 (tty_defined_color): Use `tty_lookup_color' to do all the work.
11338 (color_distance, Fcolor_distance): New functions.
11339 (TTY_SAME_COLOR_THRESHOLD): New macro.
11340 (Qtty_color_standard_values): New variable.
11341 (syms_of_xfaces): Initialize new vars & functions.
11342
113432002-06-08 Colin Walters <walters@verbum.org>
11344
11345 * textprop.c (Vchar_property_alias_alist): New variable.
11346 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
11347
11348 * intervals.c (lookup_char_property): New function for looking up
11349 overlay and text properties, created from textget.
11350 (textget): Use it.
11351
11352 * intervals.h (lookup_char_property): Declare.
11353 (Vchar_property_alias_alist): Declare.
11354
11355 * buffer.c (Foverlay_get): Use lookup_char_property.
11356
113572002-06-07 Sam Steingold <sds@gnu.org>
11358
11359 * xselect.c (lisp_data_to_selection_data): Fix last change:
11360 *data_ret is not a Lisp string, while unibyte_string is.
11361
113622002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
11363
11364 * xselect.c (lisp_data_to_selection_data): Fix last change:
11365 set size_ret.
11366
113672002-06-07 Andreas Schwab <schwab@suse.de>
11368
11369 * m/amdx86-64.h: New file.
11370
113712002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
11372
11373 * fns.c (Fstring_make_unibyte): Doc fix.
11374
11375 * xselect.c (lisp_data_to_selection_data): If the requested type
11376 is STRING, call string_make_unibyte to encode the selected text
11377 as a string.
11378
11379 * window.c (Fset_window_hscroll): Doc fix.
11380
113812002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11382
11383 * fileio.c (choose_write_coding_system):
11384 Call select-safe-coding-system properly.
11385
113862002-06-03 Richard M. Stallman <rms@gnu.org>
11387
11388 * xdisp.c (message_with_string): Error if STRING is not a string.
11389
11390 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
11391
11392 * fileio.c (choose_write_coding_system): Pass FILE arg to
11393 Vselect_safe_coding_system_function.
11394
113952002-06-03 Ken Raeburn <raeburn@gnu.org>
11396
11397 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
11398
113992002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
11400
11401 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
11402 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
11403 * keymap.c (describe_command): Likewise.
11404 * minibuf.c (read_minibuf): Likewise.
11405
11406 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
11407 Cast `current_column' return value to int.
11408 (back_to_previous_visible_line_start)
11409 (reseat_at_next_visible_line_start, next_element_from_buffer):
11410 Cast `indented_beyond_p' 3rd arg to float.
11411
11412 * indent.c (last_known_column): Now a float.
11413 (current_column_1, position_indentation, current_column)
11414 (string_display_width): Return float.
11415 (Fcurrent_column): Cast `current_column' return value to int.
11416 (Fcurrent_indentation): Cast `position_indentation' retval to int.
11417 (indented_beyond_p): Third arg now a float.
11418 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
11419
11420 * lisp.h (current_column): Now returns float.
11421 (indented_beyond_p): 3rd arg now a float.
11422
114232002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
11424
11425 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
11426 is Qcompound_text_with_extensions.
11427
11428 * xselect.c (lisp_data_to_selection_data): Always set selection
11429 type as string if x_encode_text returns streingp non-NULL.
11430
11431 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
11432
114332002-05-30 Richard M. Stallman <rms@gnu.org>
11434
11435 * window.c (Fset_window_configuration): Correct the handling
11436 of point in current buffer, to work with multiple windows.
11437
114382002-05-29 Colin Walters <walters@verbum.org>
11439
11440 * lread.c (Fread_from_string): Don't depend on order of evaluation
11441 for C function parameters.
11442
114432002-05-28 Richard M. Stallman <rms@gnu.org>
11444
11445 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
11446 way for blinked-off state and for a nonselected window.
11447
11448 * window.c (window_scroll_pixel_based): Don't call Fbolp;
11449 instead, see if the new start pos is at beginning of line.
11450
11451 * fileio.c (Fwrite_region): If START is a string, don't
11452 make any annotations.
11453
11454 * eval.c (syms_of_eval): Doc fix.
11455
114562002-05-28 Colin Walters <walters@debian.org>
11457
11458 * emacs.c (USAGE1): Add --no-splash.
11459 (standard_args): Ditto.
11460
114612002-05-28 Colin Walters <walters@gnu.org>
11462
11463 * lread.c (readchar_count): New variable.
11464 (readchar): Increment it.
11465 (unreadchar): Decrement it.
11466 (read_multibyte): Decrement it.
11467 (Vread_with_symbol_positions): New variable.
11468 (Vread_symbol_positions_list): New variable.
11469 (read_internal_start): New function, created from Fread and
11470 Fread_from_string. Handle Vread_symbol_positions_list and
11471 Vread_with_symbol_positions.
11472 (readevalloop, Fread, Fread_from_string): Use it.
11473 (read1): Use readchar_count to add symbol positions to
11474 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
11475 (syms_of_lread): DEFVAR_LISP and initialize them.
11476
11477 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
11478 (substitute_object_recurse, substitute_object_in_subtree)
11479 (substitute_in_interval): Prototype.
11480 (read_multibyte): Return c if it's less than zero.
11481
114822002-05-28 Kim F. Storm <storm@cua.dk>
11483
11484 * fileio.c (Fread_file_name_internal): Added brute-force
11485 speed up for using predicate file-directory-p.
11486
114872002-05-28 Kim F. Storm <storm@cua.dk>
11488
11489 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
11490 New variables.
11491 (syms_of_fileio): DEFVAR_LISP them.
11492 (read_file_name_cleanup): New unwind function.
11493 (Fread_file_name_internal): Only return completions satifying
11494 Vread_file_name_predicate. Temporarily unwind protect and rebind
11495 default-directory while checking completions against the predicate.
11496 (Fread_file_name): Added PREDICATE argument. Specbind it to
11497 Vread_file_name_predicate during completion.
11498 Call Vread_file_name_function to read the file name if non-nil.
11499
11500 * lisp.h (Fread_file_name): Now has 6 args.
11501
11502 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
11503 predicate for Fread_file_name when reading directory name.
11504 Supply Qnil for predicate in other calls to Fread_file_name.
11505
115062002-05-26 Miles Bader <miles@gnu.org>
11507
11508 * term.c (tty_capable_p): New function.
11509 * dispextern.h (tty_capable_p): New function declaration.
11510 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
11511 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
11512
115132002-05-23 Stefan Monnier <monnier@cs.yale.edu>
11514
11515 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
11516 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
11517 (Vwrite_region_annotate_functions): Docstring fix.
11518
115192002-05-23 Kim F. Storm <storm@cua.dk>
11520
11521 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
11522 phys_cursor's hpos is overwritten. This is still not completely
11523 correct, as it doesn't really make sense to use hpos at all to
11524 get the cursor glyph (as that is relative to the width of the
11525 characters on the line, which may have changed during the update).
11526
115272002-05-22 Jason Rumney <jasonr@gnu.org>
11528
11529 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
11530 Lisp_Object.
11531 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
11532 Use modified enumfont_t struct.
11533
11534 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
11535
11536 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
11537 Handle the `hbar' cursor type.
11538 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
11539
11540 * w32fns.c (Qhbar): New variable.
11541 (x_specified_cursor_type): Use it.
11542
115432002-05-21 Ken Raeburn <raeburn@gnu.org>
11544
11545 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
11546 now, when the address is needed.
11547
115482002-05-21 Colin Walters <walters@gnu.org>
11549
11550 * Makefile.in (shortlisp): Add font-core.el.
11551
115522002-05-20 Richard M. Stallman <rms@gnu.org>
11553
11554 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
11555
11556 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
11557 equivalent key bindings here.
11558
115592002-05-20 Ken Raeburn <raeburn@gnu.org>
11560
11561 Change symbol structure to contain a lisp object for the symbol
11562 name:
11563 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
11564 object field named "xname".
11565 (SYMBOL_NAME): New macro.
11566 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
11567 name field.
11568 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
11569 (mark_object, gc_sweep): Use symbol xname field and XSTRING
11570 instead of name field.
11571 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
11572 SYMBOL_NAME instead of XSYMBOL and name field.
11573 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
11574 instead of XSYMBOL and name field.
11575 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
11576 and SYMBOL_NAME instead of XSYMBOL and name field.
11577 * coding.c (Fread_coding_system, code_convert_region1)
11578 (code_convert_string1, code_convert_string_norecord)
11579 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
11580 XSYMBOL and name field.
11581 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
11582 (Fmake_variable_buffer_local, Fmake_local_variable)
11583 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
11584 of XSYMBOL and name field.
11585 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
11586 XSYMBOL and name field.
11587 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
11588 instead of XSYMBOL and name field.
11589 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
11590 XSYMBOL and name field.
11591 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
11592 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11593 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
11594 instead of XSYMBOL and name field.
11595 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
11596 (parse_modifiers, apply_modifiers, Fevent_convert_list)
11597 (parse_solitary_modifier, Fexecute_extended_command):
11598 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11599 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
11600 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
11601 of XSYMBOL and name field.
11602 (describe_command, describe_translation): Use SYMBOL_NAME and
11603 assignment instead of XSYMBOL and name field and XSETSTRING.
11604 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
11605 instead of XSYMBOL and name field.
11606 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
11607 name field and XSETSTRING.
11608 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
11609 of XSYMBOL and name field.
11610 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
11611 assignment instead of XSYMBOL and name field and XSETSTRING.
11612 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
11613 XSTRING instead of XSYMBOL and name field.
11614 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
11615 and XSTRING instead of XSYMBOL and name field.
11616 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
11617 and XSTRING instead of XSYMBOL and name field.
11618 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
11619 XSTRING instead of XSYMBOL and name field.
11620 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
11621 of XSYMBOL and name field.
11622 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
11623 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11624
116252002-05-19 Ken Raeburn <raeburn@gnu.org>
11626
11627 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
11628 and XCDR real rvalues in most configurations.
11629
11630 * buffer.c (fix_overlays_in_range, fix_overlays_before):
11631 Don't take the address of the cdr part of a cons cell; instead, track
11632 the parent cell and call XSETCDR, or set the variable for the head
11633 of the list if we haven't started down the list yet.
11634
116352002-05-19 Richard M. Stallman <rms@gnu.org>
11636
11637 * doc.c (reread_doc_file): Don't ask for confirmation.
11638
116392002-05-18 Jason Rumney <jasonr@gnu.org>
11640
11641 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
11642 (xbm_load_image): Use it.
11643 (xbm_load): Ditto.
11644 (xbm_read_bitmap_data): Reverted to xfns.c version.
11645 From David Ponce <david@dponce.com>.
11646
116472002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
11648
11649 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
11650 2.02 and later.
11651
116522002-05-16 Juanma Barranquero <lektu@terra.es>
11653
11654 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
11655
116562002-05-15 Stefan Monnier <monnier@cs.yale.edu>
11657
11658 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
11659 meaningful test.
11660 (read_char_minibuf_menu_prompt): Fix typo.
11661
116622002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
11663
11664 * eval.c (Fcommandp): Doc fix.
11665
116662002-05-13 Stefan Monnier <monnier@cs.yale.edu>
11667
11668 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
11669 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
11670 (Fset_keymap_parent): Gcpro a bit more.
11671 (access_keymap): Gcpro around meta_map call and around the main loop.
11672 (get_keyelt): Gcpro when following indirect references.
11673 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
11674 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
11675 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
11676 Remove useless ad-hoc remap code.
11677
116782002-05-13 Richard M. Stallman <rms@gnu.org>
11679
11680 * search.c (search_buffer): Give up boyer moore search if inverse
11681 translation change charset_base.
11682
116832002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
11684
11685 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
11686 characters is carried over from the previous block of text, adjust
11687 coding->produced to account for the extra character.
11688
116892002-05-11 Andreas Schwab <schwab@suse.de>
11690
11691 * coding.c (intersection): Keep the elements of the returned list
11692 in the same order as in the first list.
11693
116942002-05-11 Kim F. Storm <storm@cua.dk>
11695
11696 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
11697 only update cmm_size if realloc actually succeeds.
11698 Testing with initial size of 2 elements revealed that using
11699 realloc on GNU/Linux would cause a random trap in xmalloc
11700 later on, so I rewrote the code to use malloc/bcopy/free instead
11701 of realloc.
11702
117032002-05-10 Jason Rumney <jasonr@gnu.org>
11704
11705 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
11706
117072002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
11708
11709 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
11710 parens, to ensure correct evaluation order.
11711
117122002-05-10 Kim F. Storm <storm@cua.dk>
11713
11714 * keymap.c (Vemulation_mode_map_alists): New variable.
11715 (syms_of_keymap): DEFVAR_LISP it.
11716 (current_minor_maps): Process keymap alists in that list before
11717 minor-mode-overriding-map-alist and minor-mode-map-alist.
11718
117192002-05-09 Richard M. Stallman <rms@gnu.org>
11720
11721 * search.c (Freplace_match): Doc fix.
11722
117232002-05-09 Kim F. Storm <storm@cua.dk>
11724
11725 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
11726 Enlarge cursor rectangle drawn around image with non-zero relief.
11727
11728 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
11729 Enlarge cursor rectangle drawn around image with non-zero relief.
11730
11731 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
11732 Enlarge cursor rectangle drawn around image with non-zero relief.
11733
117342002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
11735
11736 * xselect.c (lisp_data_to_selection_data): Don't set selection
11737 type if comes from the Lisp object's car. If the selection
11738 contains a pure ASCII text, always return QSTRING as its type.
11739
117402002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11741
11742 * mac.c (mac-cut-function): Doc fix.
11743
117442002-05-05 Richard M. Stallman <rms@gnu.org>
11745
11746 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
11747
117482002-05-04 Jason Rumney <jasonr@gnu.org>
11749
11750 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
11751 for event-click-count.
11752
11753 * process.c (init_process): Only add server subfeature if we can
11754 use non-blocking I/O.
11755
117562002-05-04 Andrew Choi <akochoi@shaw.ca>
11757
11758 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
11759 repeatedly.
11760
117612002-05-03 Jason Rumney <jasonr@gnu.org>
11762
11763 * process.c (Fmake_network_process): Only support server sockets
11764 when we can make them non-blocking.
11765
11766 * s/ms-w32.h (HAVE_SELECT): Define.
11767
11768 * w32.h (FILE_NDELAY): New flag.
11769
11770 * w32.c (sys_getpeername, fcntl): New functions.
11771 (_sys_read_ahead): Temporarily block on non-blocking sockets.
11772
11773 * w32proc.c: include sys/file.h.
11774
117752002-05-03 Colin Walters <walters@verbum.org>
11776
11777 * callproc.c (Vgame_score_directory): Renamed to
11778 Vshared_game_score_directory.
11779
117802002-04-30 Richard M. Stallman <rms@gnu.org>
11781
11782 * s/gnu.h [emacs]: Include stdio.h.
11783 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
11784
11785 * eval.c (do_autoload): Error if called while preparing to dump.
11786
11787 * fns.c (Frequire): Error if need to load while preparing to dump.
11788
117892002-04-28 Colin Walters <walters@verbum.org>
11790
11791 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
11792 Default to "~/.emacs.d/games".
11793
117942002-04-29 Stefan Monnier <monnier@cs.yale.edu>
11795
11796 * lread.c (openp): Change arg exec_only to predicate.
11797 (build_load_history): Use XCAR/XCDR.
11798 (Flocate_file_internal): New fun.
11799 (syms_of_lread): Defsubr it.
11800 (Fload): Update call to openp.
11801
11802 * lisp.h (openp): Update prototype.
11803
11804 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
11805 * w32proc.c (sys_spawnve):
11806 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
11807 * w32.c (check_windows_init_file):
11808 * sound.c (Fplay_sound_internal):
11809 * process.c (Fstart_process):
11810 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
11811 * mac.c (run_mac_command):
11812 * emacs.c (init_cmdargs):
11813 * callproc.c (Fcall_process): Update call to openp.
11814
11815 * textprop.c (remove_properties): Don't use XCAR without CONSP.
11816
11817 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
11818
118192002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11820
11821 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
11822 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
11823
118242002-04-28 Richard M. Stallman <rms@gnu.org>
11825
11826 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
11827
11828 * eval.c (Fcommandp): New arg for_call_interactively.
11829 * lisp.h (Fcommandp): Declare new arg.
11830
118312002-04-28 Jason Rumney <jasonr@gnu.org>
11832
11833 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
11834
11835 * w32.c (stat, fstat): Use file index information to generate
11836 inodes for directories where available.
11837
118382002-04-26 Andrew Choi <akochoi@shaw.ca>
11839
11840 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
11841 [HAVE_CARBON]: Include Mac object files.
11842
11843 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
11844 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
11845 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
11846 MAC_OSX, and MAC_OS instead of macintosh.
11847
11848 * editfns.c [MAC_OS8]: Include stdio.h.
11849
11850 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
11851
11852 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
11853 Apple Monaco.
11854
11855 * process.c: Declare QCfamily and QCfilter as extern.
11856 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
11857 calling select.
11858
11859 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
11860
11861 * tparam.c [MAC_OSX]: Don't define BC and UP.
11862
11863 * config.in [HAVE_CARBON]: Add.
11864
11865 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
11866 Move here from mac/src and mac/inc.
11867
11868 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
11869
118702002-04-26 Gerd Moellmann <gerd@gnu.org>
11871
11872 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
11873 Compute phys_cursor_width from the x position returned
11874 by x_draw_glyhs, which is cheaper.
11875 (x_display_and_set_cursor): Compute the buffer-local value
11876 of `cursor-in-non-selected-windows' only when needed.
11877
118782002-04-25 Gerd Moellmann <gerd@gnu.org>
11879
11880 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
11881 cursor on a stretch glyph has a width that depends on
11882 x_stretch_cursor_p.
11883
118842002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11885
11886 * abbrev.c (abbrev-start-location): Doc fix.
11887
11888 * indent.c (Fvertical_motion): Fix last change.
11889
118902002-04-25 Gerd Moellmann <gerd@gnu.org>
11891
11892 * indent.c (Fvertical_motion): Move to the start of the line
11893 containing PT before moving up or down.
11894
118952002-04-24 Gerd Moellmann <gerd@gnu.org>
11896
11897 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
11898 case of writing a whole row, more or less analogous to the case of
11899 writing only parts of a row.
11900
11901 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
11902 0 for NO_CURSOR.
11903
11904 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
11905
119062002-04-23 Colin Walters <walters@verbum.org>
11907
11908 * buffer.c (syms_of_buffer): Doc fix.
11909
119102002-04-23 Gerd Moellmann <gerd@gnu.org>
11911
11912 * xterm.c (notice_overwritten_cursor): Handle the special case
11913 of the cursor being in the first blank non-text line at the
11914 end of a window.
11915
11916 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
11917 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
11918 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
11919 bar cursors only, to make phys_cursor_width contain what its name
11920 suggests.
11921 (notice_overwritten_cursor): Consider the cursor image erased if
11922 the output area intersects the cursor image in y-direction.
11923
119242002-04-23 Simon Marshall <simon@gnu.org>
11925
11926 * xfns.c (x_set_mouse_color): Change default for cross_cursor
11927 to XC_hand2.
11928
119292002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11930
11931 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
11932
119332002-04-22 Kim F. Storm <storm@cua.dk>
11934
11935 * textprop.c (remove_properties): Fixed trap for malformed plist.
11936
119372002-04-22 Richard M. Stallman <rms@gnu.org>
11938
11939 * cmds.c (Fend_of_line): Handle intangible text in mid line.
11940
11941 * window.c (make_window): Initialize height_fixed_p,
11942 last_cursor_off_p, and p->cursor_off_p slots.
11943
119442002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11945
11946 * fns.c (use-dialog-box): Doc fix.
11947
119482002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11949
11950 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
11951 variables `row', `i' and `area'.
11952 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
11953 toolkit library.
11954
119552002-04-19 Stefan Monnier <monnier@cs.yale.edu>
11956
11957 * xfaces.c (clear_font_table): Don't free the default font of
11958 a frame even if it's on another display.
11959 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
11960 that could be Qt.
11961
119622002-04-19 Juanma Barranquero <lektu@terra.es>
11963
11964 * indent.c (Fmove_to_column): Remove unused local variable
11965 `next_boundary_byte'.
11966 (current_column_1): Likewise.
11967
119682002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
11969
11970 * msdos.c (Qhbar): New variable.
11971 (syms_of_msdos): Intern and staticpro it.
11972 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
11973 cursor type.
11974
119752002-04-19 Dave Lambert <dlambert@acm.org>
11976
11977 Theses change implement an underscore-like (`hbar') cursor.
11978
11979 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
11980
11981 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
11982 Handle the `hbar' cursor type.
11983 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
11984
11985 * xfns.c (Qhbar): New variable.
11986 (syms_of_xfns): Intern and staticpro it.
11987 (x_specified_cursor_type): Handle `hbar' cursor.
11988
11989 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
11990 not defined.
11991
119922002-04-18 Richard M. Stallman <rms@gnu.org>
11993
11994 * textprop.c (remove_properties): New arg LIST allows scanning
11995 either a list or a plist.
11996 (interval_has_some_properties_list): New function, like
11997 interval_has_some_properties using list instead of plist.
11998 All callers changed.
11999 (Fremove_list_of_text_properties): New function.
12000 (syms_of_textprop): Defsubr it.
12001
120022002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
12003
12004 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
12005
120062002-04-17 Juanma Barranquero <lektu@terra.es>
12007
12008 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
12009
120102002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
12011
12012 * window.c (coordinates_in_window): Don't report on margin area
12013 if its width is zero.
12014
120152002-04-16 Jason Rumney <jasonr@gnu.org>
12016
12017 * w32fns.c (Fx_file_dialog): Decode file name before using.
12018
12019 * w32term.c (construct_drag_n_drop): Likewise.
12020
120212002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
12022
12023 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
12024 store load-history in pure space.
12025
12026 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
12027
120282002-04-16 Stefan Monnier <monnier@cs.yale.edu>
12029
12030 * xterm.c (Qlatin_1, Qutf_8): New vars.
12031 (syms_of_xterm): Initialize them.
12032 (XTread_socket): Eliminate incorrect optimization that tried to avoid
12033 decoding the output of X*LookupString.
12034 Always use latin-1 to decode the output of XLookupString.
12035 Try Xutf8LookupString if XmbLookupString failed.
12036
12037 * region-cache.c (new_region_cache): Use BEG.
12038
120392002-04-16 Gerd Moellmann <gerd@gnu.org>
12040
12041 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
12042 configuration files.
12043 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
12044 returns 0.
12045
120462002-04-15 Andreas Schwab <schwab@suse.de>
12047
12048 * config.in: Regenerated using autoheader.
12049
12050 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
12051 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
12052 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
12053 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
12054 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
12055 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
12056 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
12057 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
12058 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
12059 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
12060 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
12061 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
12062 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
12063 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
12064 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
12065 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
12066 STACK_DIRECTION, now set by autoconf.
12067
120682002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12069
12070 * dispnew.c (marginal_area_string): Sort arguments.
12071
12072 * dispextern.h (marginal_area_string): Add prototype.
12073
120742002-04-13 Richard M. Stallman <rms@gnu.org>
12075
12076 * fileio.c (Finsert_file_contents):
12077 Don't call temp_output_buffer_setup--do just part, by hand.
12078
12079 * coding.c (run_pre_post_conversion_on_str):
12080 Don't call temp_output_buffer_setup--do just part, by hand.
12081
12082 * keyboard.c (command_loop_1): Don't call start_hourglass
12083 or cancel_hourglass when executing a macro.
12084
12085 * marker.c (count_markers): New function.
12086
12087 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
12088 grow without limit. Move recently used elements to the front.
12089
120902002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
12091
12092 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
12093
120942002-04-12 Gerd Moellmann <gerd@gnu.org>
12095
12096 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
12097 rows marginal areas.
12098 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
12099 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
12100
12101 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
12102
121032002-04-12 Dave Love <fx@gnu.org>
12104
12105 * dispnew.c (marginal_area_string): New.
12106
12107 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
12108 (Qleft_margin, Qright_margin): Declare.
12109 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
12110
12111 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
12112 note_mode_line_highlight and extended.
12113
12114 * keyboard.c (Qleft_margin, Qright_margin): Declare.
12115 (make_lispy_event): Deal with mouse events in margins.
12116
121172002-04-12 Stefan Monnier <monnier@cs.yale.edu>
12118
12119 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
12120
12121 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
12122 than deactivating the mark if tmm is set to `lambda'.
12123 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
12124 Use a single event for HELP_EVENT.
12125 (Fexecute_extended_command): Save last_point_position.
12126
121272002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12128
12129 * lisp.h (Fpropertize): Add prototype.
12130
12131 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
12132
121332002-04-10 Colin Walters <walters@verbum.org>
12134
12135 * config.in: Add HAVE_SHARED_GAME_DIR.
12136
12137 * callproc.c: (Vgame_score_directory): New variable.
12138 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
12139
121402002-04-10 Richard M. Stallman <rms@gnu.org>
12141
12142 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
12143
121442002-04-09 Stefan Monnier <monnier@cs.yale.edu>
12145
12146 * minibuf.c (read_minibuf): Use empty_string.
12147 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
12148 Short-circuit the search as soon as it "failed".
12149 (Fall_completions): Allow lambda forms and lists of strings for alist.
12150 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
12151 when require_match is nil.
12152 (Ftest_completion): Rename from `test_completion' and export to elisp.
12153 Call the predicate also when alist is a list.
12154 Obey Vcompletion_regexp_list.
12155 (do_completion, Fminibuffer_complete_and_exit): Use it.
12156 (Fassoc_string): Rename from `assoc_for_completion'.
12157 Allow list of strings as well and export to elisp.
12158
121592002-04-08 Stefan Monnier <monnier@cs.yale.edu>
12160
12161 * puresize.h (BASE_PURESIZE): Increase to 900KB.
12162
121632002-04-08 Juanma Barranquero <lektu@terra.es>
12164
12165 * w32.c (sys_accept): Don't hide variable `s'.
12166
121672002-04-05 Gerd Moellmann <gerd@gnu.org>
12168
12169 * callint.c (Fcall_interactively): Use INTEGERP instead of
12170 NUMBERP for checking Vhistory_length.
12171
121722002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12173
12174 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
12175 Doc fix to reflect it.
12176
121772002-04-04 Richard M. Stallman <rms@gnu.org>
12178
12179 * xdisp.c (display_mode_element): New arg RISKY.
12180 Disregard text props found or specified within a variable
12181 that isn't marked risky-local-variable.
12182 (Qrisky_local_variable): New variable.
12183 (syms_of_xdisp): Init and staticpro it.
12184
121852002-04-04 Stefan Monnier <monnier@cs.yale.edu>
12186
12187 * undo.c (record_point): New fun.
12188 (record_delete, record_insert): Use it.
12189
121902002-04-03 Juanma Barranquero <lektu@terra.es>
12191
12192 * doc.c (Fdocumentation): Add missing parentheses.
12193 (Fdocumentation_property): Likewise.
12194
121952002-04-03 Stefan Monnier <monnier@cs.yale.edu>
12196
12197 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
12198 data is 0, just return nil.
12199
122002002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
12201
12202 * msdos.c (syms_of_msdos): Fix last change with
12203 mouse_autoselect_window.
12204
122052002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12206
12207 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
12208 mouse_autoselect_window.
12209
122102002-04-02 Stefan Monnier <monnier@cs.yale.edu>
12211
12212 * keyboard.c (make_lispy_event): Handle unknown keysyms together
12213 with system-specific keysyms. Use it also for unknown function keys.
12214
12215 * doc.c (reread_doc_file): Return whether reload was attempted.
12216 (Fdocumentation, Fdocumentation_property): Don't try to reload
12217 if the doc is 0 and only ask once.
12218
12219 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
12220
122212002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
12222
12223 * keyboard.c (read_char): If the event was Qselect_window,
12224 restore timer_idleness_start_time to its previous value.
12225
12226 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
12227
122282002-04-01 Stefan Monnier <monnier@cs.yale.edu>
12229
12230 * region-cache.c (new_region_cache): Use BEG.
12231
12232 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
12233 Use BEG and BEG_BYTE.
12234
12235 * doc.c (get_doc_string): Return nil if the location is wrong.
12236 (reread_doc_file): New fun.
12237 (Fdocumentation, Fdocumentation_property):
12238 Call it if get_doc_string fails.
12239 (Fsnarf_documentation): Make it work for a dumped Emacs.
12240
12241 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
12242 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
12243
12244 * charset.c (Fstring): Allow 0 arguments.
12245
12246 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
12247
12248 * process.c (DATAGRAM_CONN_P, list_processes_1)
12249 (Fprocess_datagram_address, Fset_process_datagram_address)
12250 (Fset_network_process_options, server_accept_connection):
12251 Fix some int/Lisp_Object confusions (thank you union types).
12252
122532002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12254
12255 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
12256
12257 * w32term.c: Likewise.
12258 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
12259
12260 * keyboard.c (Qselect_window): New symbol.
12261 (head_table): Use it.
12262 (keys_of_keyboard): Bound select-window event to handle-select-window.
12263 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
12264
12265 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
12266 (last_window): New variable.
12267 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
12268 (note_mouse_movement): Remove reimplemented code in #if 0.
12269 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
12270 Emacs windows.
12271
12272 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
12273
122742002-03-31 Gerd Moellmann <gerd@gnu.org>
12275
12276 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
12277 Callers changed.
12278
122792002-03-30 Richard M. Stallman <rms@gnu.org>
12280
12281 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
12282 loop whenever it stops making progress.
12283
12284 * widget.c (set_frame_size): Don't call change_frame_size.
12285
122862002-03-30 Gerd Moellmann <gerd@gnu.org>
12287
12288 * dispnew.c (direct_output_for_insert):
12289 Call mark_window_display_accurate.
12290
122912002-03-29 Jason Rumney <jasonr@gnu.org>
12292
12293 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
12294
122952002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
12296
12297 * Makefile.in (lread.o): Depend on coding.h.
12298
12299 * lread.c (openp, Fload): Encode the file name before passing it
12300 to `stat', `access', and `emacs_open'.
12301 (openp): GCPRO the encoded file name. Don't recompute Lisp
12302 strings unnecessarily.
12303
123042002-03-29 Kim F. Storm <storm@cua.dk>
12305
12306 * fns.c (Flax_plist_put): Doc fix.
12307
123082002-03-28 Miles Bader <miles@gnu.org>
12309
12310 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
12311
123122002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12313
12314 * process.c (set-network-process-options): Add usage.
12315 (make-network-process): Doc fix.
12316
123172002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
12318
12319 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
12320
123212002-03-26 Richard M. Stallman <rms@gnu.org>
12322
12323 * fns.c (Fsubstring_no_properties): New function.
12324 (Flax_plist_get, Flax_plist_put): New functions.
12325 (syms_of_fns): defsubr them.
12326
12327 * xdisp.c (update_menu_bar): Test only update_mode_lines;
12328 don't test or alter w->update_mode_line.
12329
12330 * window.c (Fdisplay_buffer): Doc fix.
12331
123322002-03-24 Richard M. Stallman <rms@gnu.org>
12333
12334 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
12335
123362002-03-24 Gerd Moellmann <gerd@gnu.org>
12337
12338 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
12339 (Fdefmacro): Handle `(declare ...)'.
12340 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
12341 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
12342
123432002-03-24 Jason Rumney <jasonr@gnu.org>
12344
12345 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
12346 (xbm_file_p): Add prototypes.
12347 (xbm_format, xbm_image_p): Sync with xfns.c.
12348 (reflect_byte): New function.
12349 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
12350 (xbm_load_image): Create bitmaps with a depth of 1.
12351 (init_xfns): Enable XBM images.
12352
123532002-03-23 Jason Rumney <jasonr@gnu.org>
12354
12355 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
12356 correctly. Do not pass up_modifier to keyboard buffer.
12357
12358 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
12359
123602002-03-22 Stefan Monnier <monnier@cs.yale.edu>
12361
12362 * Makefile.in (bootstrapclean): New target.
12363 (bootstrap-temacs, bootstrap-doc): Remove.
12364 (bootstrap-emacs): Use a bog-standard `temacs'.
12365 Don't bother to build a DOC file.
12366
12367 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
12368
12369 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
12370 in temacs even if !CANNOT_DUMP.
12371 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
12372
12373 * alloc.c (check_pure_size): Only output a warning.
12374
123752002-03-22 Jason Rumney <jasonr@gnu.org>
12376
12377 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
12378 supported.
12379
12380 * w32term.c (zv_bits): Declare as short, for word alignment.
12381 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
12382 (syms_of_w32term): Define x-use-underline-position-properties.
12383
12384 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
12385 (clear_image_cache): Block input, fix logic, clear matrices in
12386 all frames that share this cache.
12387
123882002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
12389
12390 * emacs.c (main): Update the Copyright year in the blurb printed
12391 by "emacs --version".
12392
12393 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
12394
12395 * xterm.c (XTread_socket): If XK_ISO_Lock and
12396 XK_ISO_Last_Group_Lock are defined, handle keysyms between
12397 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
12398
123992002-03-21 Kim F. Storm <storm@cua.dk>
12400
12401 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
12402 menu-bar bindings in keymap and local-map properties _are_ used.
12403 But try keymap property first in accordance with 2002-01-03 patch.
12404 Added comment describing why this is not always reliable.
12405 (tool_bar_items): Ditto for tool-bar.
12406
124072002-03-21 Jason Rumney <jasonr@gnu.org>
12408
12409 * w32fns.c (x_clear_image_1): Disable color table code.
12410
124112002-03-21 Kim F. Storm <storm@cua.dk>
12412
12413 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
12414 removed the wrong version of the DEFUN macro; fixed it.
12415
12416 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
12417 Fmember rather than Fmemq).
12418 (Fprovide): Check that subfeatures is a list.
12419
12420 * process.c (QCfeature, QCdatagram): Removed variables.
12421 (QCtype, Qdatagram): New variables.
12422 (network_process_featurep): Removed function.
12423 (Fmake_network_process): Removed :feature check.
12424 Use :type 'datagram instead of :datagram t to create a datagram
12425 socket. This allows us to add other connection types (e.g. raw
12426 sockets) later in a consistent manner.
12427 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
12428 supported subfeatures for feature make-network-process.
12429 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
12430 Intern and staticpro QCtype and Qdatagram.
12431 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
12432
12433 * xfns.c: (QCtype): Remove duplicate declaration and
12434 initialization (is now declared in process.c).
12435
12436 * w32fns.c: (QCtype): Remove duplicate declaration and
12437 initialization (is now declared in process.c).
12438
124392002-03-21 Richard M. Stallman <rms@gnu.org>
12440
12441 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
12442 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
12443 when jumping to `fail' to avoid undoing reg changes in the
12444 last iteration of the loop.
12445 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
12446
12447 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
12448 Depend on process.h.
12449
124502002-03-20 Jason Rumney <jasonr@gnu.org>
12451
12452 Most of the following changes are still conditional on HAVE_IMAGES
12453 which is not set by default on Windows.
12454
12455 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
12456
12457 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
12458 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
12459 (four_corners_best, x_clear_image_1, x_clear_image)
12460 (x_alloc_image_color, postprocess_image)
12461 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
12462 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
12463 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
12464
12465 * w32gui.h (struct XImage): Define.
12466
12467 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
12468 extract mouse co-ordinates.
12469
124702002-03-20 Jason Rumney <jasonr@gnu.org>
12471
12472 * w32.c (init_winsock): Dynamically load new server and UDP
12473 socket functions.
12474 (socket_to_fd): New function.
12475 (sys_socket): Use it.
12476 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
12477 (sys_recvfrom, sys_sendto): New wrapper functions.
12478
12479 * process.c (QCfamily, QCfilter): Remove duplicate declaration
12480 and initialization.
12481
12482 * makefile.w32-in (LIBS): Remove $(WSOCK32).
12483
124842002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
12485
12486 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
12487 Don't use "sun" as a variable, it's a predefined constant on Sun
12488 machines.
12489
124902002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12491
12492 * bytecode.c (Fbyte_code): Revert last change.
12493
124942002-03-19 Kim F. Storm <storm@cua.dk>
12495
12496 * makefile.w32-in (LIBS): Add $(WSOCK32).
12497 From David Ponce <dponce@voila.fr>.
12498
124992002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12500
12501 * process.c (wait_reading_process_input): Move variables `pname'
12502 and `pnamelen' down where they are used.
12503
12504 * bytecode.c (Fbyte_code): Discard unused computed value to
12505 prevent gcc warning.
12506
12507 * lisp.h (Fplist_member): Add prototype.
12508
125092002-03-18 Kim F. Storm <storm@cua.dk>
12510
12511 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
12512 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
12513
12514 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
12515 Remove explicit GNU_LINUX settings for datagram support.
12516
125172002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12518
12519 * process.c (Fmake_network_process): Remove unused variable `sa'.
12520 Doc fix. Add usage:.
12521 (set_socket_options): Remove unused variables `optnum' and `opttype'.
12522
125232002-03-17 Richard M. Stallman <rms@gnu.org>
12524
12525 * xdisp.c (cursor_type_changed): New variable.
12526 (redisplay_internal): Redisplay all windows if cursor_type_changed.
12527 Clear it when clearing windows_or_buffers_changed.
12528 (try_cursor_movement, redisplay_window, try_window_id)
12529 (try_window_reusing_current_matrix): Test cursor_type_changed
12530 along with windows_or_buffers_changed.
12531
12532 * window.h (cursor_type_changed): New variable.
12533
12534 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
12535 not update_mode_lines, and always set it to 1.
12536
12537 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
12538 if no frames needed redrawing.
12539
125402002-03-17 Kim F. Storm <storm@cua.dk>
12541
12542 The following changes add support for network server processes,
12543 datagram connections, and local (unix) sockets.
12544
12545 * process.h (struct Lisp_Process): New member log.
12546 Doc fix: Member command used to indicate stopped network process.
12547 Doc fix: Member childp contains plist for network process.
12548 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
12549
12550 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
12551 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
12552 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
12553 New variables.
12554 (NETCONN1_P): New macro.
12555 (DATAGRAM_SOCKETS): New conditional symbol.
12556 (datagram_address): New array.
12557 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
12558 (status_message): Use concat3.
12559 (Fprocess_status): Add `listen' status to doc string. Return `stop'
12560 for a stopped network process.
12561 (Fset_process_buffer): Update contact plist for network process.
12562 (Fset_process_filter): Ditto. Don't enable input for stopped
12563 network processes. Server must listen, even if filter is t.
12564 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
12565 New functions.
12566 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
12567 (Fprocess_contact): Added KEY argument. Handle datagrams.
12568 (list_processes_1): Optionally show only processes with the query
12569 on exit flag set. Dynamically adjust column widths. Omit tty
12570 column if not needed. Report stopped network processes.
12571 Identify server and datagram network processes.
12572 (Flist_processes): New optional arg `query-only'.
12573 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
12574 (conv_lisp_to_sockaddr, set_socket_options)
12575 (network_process_featurep, unwind_request_sigio): New helper functions.
12576 (Fprocess_datagram_address, Fset_process_datagram_address):
12577 (Fset_network_process_options): New lisp functions.
12578 (Fopen_network_stream): Removed. Now defined in simple.el.
12579 (Fmake_network_process): New lisp function. Code is based on previous
12580 Fopen_network_stream, but heavily reworked with new property list based
12581 argument list, support for datagrams, server processes, and local
12582 sockets in addition to old client-only functionality.
12583 (server_accept_connection): New function.
12584 (wait_reading_process_input): Use it to handle incoming connects.
12585 Do not enable input on a new connection if process is stopped.
12586 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
12587 (send_process): Handle datagram sockets.
12588 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
12589 network process is indicated by setting command field to t .
12590 (Fprocess_send_eof): No-op if datagram connection.
12591 (Fstatus_notify): Don't read input for a stream server socket or a
12592 stopped network process.
12593 (init_process): Initialize datagram_address array.
12594 (syms_of_process): Intern and staticpro new variables, defsubr new
12595 functions.
12596
125972002-03-16 Jason Rumney <jasonr@gnu.org>
12598
12599 * w32fns.c (w32_to_all_x_charsets): Return correct type in
12600 startup case.
12601
126022002-03-16 Richard M. Stallman <rms@gnu.org>
12603
12604 * xdisp.c (redisplay_internal, redisplay_windows):
12605 Use list_of_error to call internal_condition_case_1.
12606 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
12607 so as to catch all errors with no possibility of debugger redisplay.
12608 (list_of_error): New variable.
12609 (syms_of_xdisp): Init and staticpro it.
12610
12611 * print.c (print_object): Delete `\ ' from printed rep of frame.
12612
126132002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
12614
12615 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
12616 until its implementation is fixed.
12617
126182002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12619
12620 * xfns.c (png_load): Remove unused variable `gamma_str'.
12621
126222002-03-14 Richard M. Stallman <rms@gnu.org>
12623
12624 * xfns.c (x_real_positions): Handle failure in XQueryTree.
12625
126262002-03-14 Miles Bader <miles@gnu.org>
12627
12628 * intervals.c (adjust_for_invis_intang): New function.
12629 (set_point_both): Use `adjust_for_invis_intang' to do most of the
12630 work for dealing with invisible+intangible regions. Do so before
12631 and after both forward and backward movements, to handle both
12632 front-sticky and rear-sticky cases.
12633 * textprop.c (text_property_stickiness): Function moved here from
12634 `editfns.c'.
12635 * intervals.h (text_property_stickiness): New declaration.
12636 * editfns.c (char_property_eq): Function removed.
12637 (text_property_stickiness): Function moved to `textprop.c'.
12638
126392002-03-13 Jason Rumney <jasonr@gnu.org>
12640
12641 * config.in: Add STRFTIME_NO_POSIX2.
12642
12643 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
12644 and %OX when underlying strftime does not.
12645
126462002-03-13 Stefan Monnier <monnier@cs.yale.edu>
12647
12648 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
12649 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
12650 line) to avoid annoying flicker.
12651 (xm_scroll_callback): Get rid of the now unnecessary kludge.
12652 (XTread_socket): Mark it static.
12653
12654 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
12655
126562002-03-13 Kim F. Storm <storm@cua.dk>
12657
12658 * puresize.h (BASE_PURESIZE): Increase to 775000.
12659
126602002-03-12 Juanma Barranquero <lektu@terra.es>
12661
12662 * editfns.c (syms_of_editfns): Fix typo.
12663
126642002-03-12 Gerd Moellmann <gerd@gnu.org>
12665
12666 * xsmfns.c: Include stdio.h because termhooks.h needs it.
12667 Include termopt.h for interrupt_input.
12668
126692002-03-11 Andreas Schwab <schwab@suse.de>
12670
12671 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
12672
126732002-03-11 Gerd Moellmann <gerd@gnu.org>
12674
12675 * xterm.c (note_mouse_movement): Put code for
12676 x_autoselect_window_p in #if 0.
12677
12678 * lread.c (Fload): Don't assume that message_with_string uses the
12679 string it is given like a C string.
12680
126812002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12682
12683 * xterm.h (x_session_check_input, x_session_initialize): Declared.
12684
12685 * xterm.c: (XTread_socket): Add call to x_session_check_input and
12686 x_session_have_connection.
12687 (x_initialize): Add call to x_session_initialize.
12688
12689 * termhooks.h (enum event_kind): Add save_session_event.
12690
12691 * keyboard.c: Add Emacs event save_session_event.
12692
12693 * emacs.c (main): Add call to syms_of_xsmfns.
12694
12695 * lisp.h: Declare syms_of_xsmfns as extern.
12696
12697 * config.in: Add HAVE_X_SM.
12698
12699 * Makefile.in (LIBXT): Add -lSM -lICE
12700 if HAVE_X_SM and not USE_X_TOOLKIT.
12701 (XOBJ): New file xsmfns.c added.
12702
12703 * xsmfns.c: New file for X session management.
12704
127052002-03-09 Jason Rumney <jasonr@gnu.org>
12706
12707 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
12708 read-only when setting modified time.
12709
127102002-03-08 Gerd Moellmann <gerd@gnu.org>
12711
12712 * xdisp.c (move_it_vertically_backward): At the end of the function,
12713 when moving forward by lines, treat terminal frames specially.
12714
12715 * keyboard.c (echo_char): Make sure to add a separator between
12716 keys even if echo_dash hasn't been called.
12717
12718 * xdisp.c: Use new string macros.
12719 (update_echo_area): Pass number of bytes to message3 instead of
12720 number of chars.
12721 (set_message_1): Don't access a string's size_byte directly.
12722 (decode_mode_spec_coding): Use number of bytes of eoltype string
12723 instead number of chars.
12724
12725 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
12726
127272002-03-08 Juanma Barranquero <lektu@terra.es>
12728
12729 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
12730 24-bit.
12731
127322002-03-06 Jason Rumney <jasonr@gnu.org>
12733
12734 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
12735
127362002-03-06 Gerd Moellmann <gerd@gnu.org>
12737
12738 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
12739 (cancel_echoing, echo_length, echo_truncate): Changed to
12740 work with new kboard definition.
12741 (echo_now): Use message3_nolog instead of message2_nolog.
12742
12743 * alloc.c (mark_kboards): Mark echo_string.
12744
12745 * keyboard.h (ECHOBUFSIZE): Removed.
12746 (struct kboard): Member echoptr removed, member echobuf renamed
12747 to echo_string.
12748
12749 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
12750 message3 instead of message2 to display the message using STRING's
12751 text properties.
12752
127532002-03-05 Andreas Schwab <schwab@suse.de>
12754
12755 * xdisp.c (hscroll_margin): Change to EMACS_INT.
12756
127572002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
12758
12759 * frame.c (default-frame-alist): Explain that setting it doesn't
12760 affect existing frames.
12761
127622002-03-05 Stefan Monnier <monnier@cs.yale.edu>
12763
12764 * indent.c (skip_invisible): Fix my brain fart.
12765
12766 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
12767
127682002-03-04 Stefan Monnier <monnier@cs.yale.edu>
12769
12770 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
12771 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
12772 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
12773 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
12774 and variables to use EMACS_INT instead of just int.
12775
12776 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
12777
127782002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
12779
12780 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
12781 environment, pass it down with corrected value.
12782
127832002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12784
12785 * lread.c (read_filtered_event): Do not call start_hourglass
12786 before returning.
12787
127882002-03-04 Juanma Barranquero <lektu@terra.es>
12789
12790 * w32term.c (x_display_and_set_cursor): Fix typo.
12791
127922002-03-03 Richard M. Stallman <rms@gnu.org>
12793
12794 * fileio.c (Fmake_temp_name): Doc fix.
12795
127962002-03-03 Gary Wong <gtw@gnu.org>
12797
12798 * termcap.c [!emacs]: Replace ospeed for building standalone
12799 libtermcap, for binary compatibility.
12800
12801 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
12802
128032002-03-03 Richard M. Stallman <rms@gnu.org>
12804
12805 * xrdb.c (file_p): Rename arg `path' to `filename'.
12806
12807 * abbrev.c (Fexpand_abbrev): Increment plist as use count
12808 only if it is an integer.
12809
12810 * xfns.c (png_load): Set screen_gamma based on f->gamma.
12811 If png_get_sRGB gives an answer, call png_set_gamma
12812 using the default image gamma value.
12813
12814 * lread.c (read1): When reading from a file, default string to
12815 multibyte only if it has some multibyte characters.
12816
12817 * print.c (print_object): Output multibyte chars 128...255
12818 using \x even if ! print_escape_multibyte.
12819
12820 * xdisp.c (display_mode_element): Move the places where
12821 bytepos, charpos, this, and lisp_string are set.
12822 Use lisp_string to set bytepos.
12823
12824 * xdisp.c (redisplay_internal):
12825 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
12826
12827 * xdisp.c (display_mode_element): Merge properties specified with
12828 :propertize onto those that come with the string.
12829
128302002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
12831
12832 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
12833 automatic-hscrolling. Users changed.
12834 <hscroll-margin>: Renamed from automatic-hscroll-margin.
12835 Users changed.
12836 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
12837
128382002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
12839
12840 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
12841
128422002-03-02 Kim F. Storm <storm@cua.dk>
12843
12844 * window.c (Fminibuffer_selected_window): New function.
12845 (syms_of_window): Defsubr it.
12846
128472002-03-01 Kim F. Storm <storm@cua.dk>
12848
12849 * window.h (struct window): New member phys_cursor_width.
12850
12851 * window.c (make_window, replace_window): Init phys_cursor_width.
12852
12853 * xterm.c (x_display_and_set_cursor): Blink box cursor using
12854 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
12855
12856 * w32term.c (x_display_and_set_cursor): Blink box cursor using
12857 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
12858
12859 * lisp.h (GCPRO6): New macro.
12860
12861 * process.c (Fopen_network_stream): Use GCPRO6.
12862
128632002-03-01 Kim F. Storm <storm@cua.dk>
12864
12865 * process.c (Qconnect, Qfailed): New variables.
12866 (syms_of_process): Intern and staticpro them.
12867 (Fprocess_status): Document connect and failed return values.
12868 [NON_BLOCKING_CONNECT]: New conditional.
12869 (connect_wait_mask, num_pending_connects): New variables.
12870 (status_message): Convert Qfailed status.
12871 (Fopen_network_stream): Added support for non-blocking connect.
12872 New optional args: filter, sentinel, non_blocking. Doc updated.
12873 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
12874 (deactivate_process): Handle pending non-blocking connect.
12875 (wait_reading_process_input): Poll for status of non-blocking
12876 connects. Exec sentinel directly when connect succeeds.
12877 (status_notify): Don't read process output if not yet connected.
12878
128792002-02-28 Kim F. Storm <storm@cua.dk>
12880
12881 * window.c: (minibuf_selected_window): Renamed from
12882 Vminibuf_selected_window. Users changed.
12883 (syms_of_window): Staticpro it.
12884
128852002-02-26 Kim F. Storm <storm@cua.dk>
12886
12887 The following changes add a new Vminibuf_selected_window variable
12888 which is similar to Vminibuf_scroll_window, but which is only set
12889 on entry to the minibuffer (from a non-minibuffer window):
12890
12891 * window.c: (Vminibuf_selected_window): New variable.
12892 (struct save_window_data): New member minibuf_selected_window.
12893 (Fset_window_configuration): Restore Vminibuf_selected_window.
12894 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
12895 Set minibuf_scroll_window member to nil if minibuf_level is 0.
12896 (compare_window_configurations): Compare minibuf_selected_window.
12897
12898 * window.h: (Vminibuf_selected_window): Declare extern.
12899
12900 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
12901 entry to minibuffer or on entry from a non-minibuffer window.
12902
12903 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
12904 Vminibuf_selected_window instead of Vminibuf_scroll_window.
12905
12906 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
12907 instead of Vminibuf_scroll_window when deciding in which window
12908 the region should be highlighted. Consequently, the region remains
12909 highlighteded even when a completion buffer is also displayed.
12910
129112002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
12912
12913 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
12914
12915 * xselect.c (Qcompound_text_with_extensions): Renamed from
12916 Qcompound_text_no_extensions.
12917 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
12918
129192002-02-26 Juanma Barranquero <lektu@terra.es>
12920
12921 * w32proc.c (syms_of_ntproc): Doc fix.
12922
129232002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12924
12925 * intervals.h: Include "dispextern.h" unconditionally.
12926
129272002-02-24 Jason Rumney <jasonr@gnu.org>
12928
12929 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
12930 and disp-table.elc.
12931 (lisp): Add emacs-lisp/backquote.elc.
12932
129332002-02-24 Kim F. Storm <storm@cua.dk>
12934
12935 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
12936 The validation of the event type was too strict as it didn't
12937 allow string events; buffer names are used in bindings for
12938 menu-bar-select-buffer (see `menu-bar-update-buffers').
12939
129402002-02-23 Kim F. Storm <storm@cua.dk>
12941
12942 The following changes rework my patch of 2002-02-06 which
12943 added command remapping by entering the commands directly into
12944 the keymaps. Now, command remapping uses an explicit `remap'
12945 prefix in the keymaps, i.e. [remap COMMAND].
12946
12947 * keymap.c (Qremap, remap_command_vector): New variables.
12948 (is_command_symbol): Removed function.
12949 (Fdefine_key): No longer accept a symbol for KEY.
12950 Added validation of [remap COMMAND] argument for KEY.
12951 The DEF is no longer required to be a symbol when remapping a command.
12952 (Fremap_command): New function to remap command through keymaps.
12953 (Flookup_key): Perform command remapping initiated by
12954 Fremap_command directly for speed.
12955 (Fkey_binding): Use Fremap_command for command remapping.
12956 (where_is_internal): Handle new command remapping representation.
12957 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
12958 staticpro them. Defsubr Fremap_command.
12959
12960 * keymap.h (Fremap_command): Declare extern.
12961 (is_command_symbol): Remove extern.
12962
12963 * keyboard.c (command_loop_1): Use Fremap_command for command
12964 remapping; now try command remapping for all symbols.
12965
129662002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
12967
12968 * coding.h (run_pre_post_conversion_on_str): Add prototype.
12969
129702002-02-23 Jason Rumney <jasonr@gnu.org>
12971
12972 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
12973 on the string before encoding it.
12974 (Fw32_get_clipboard_data): Run post-read-conversion on the string
12975 after decoding it.
12976
12977 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
12978
129792002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12980
12981 * w32term.c (enter_timestamp): Remove unused static variable to
12982 prevent warning.
12983
12984 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
12985
129862002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
12987
12988 * w16select.c (Fw16_get_clipboard_data): Fix last change.
12989
12990 * xselect.c (selection_data_to_lisp_data): Fix last change.
12991
129922002-02-22 Jason Rumney <jasonr@gnu.org>
12993
12994 * w32term.h (struct w32_output): New member menu_command_in_progress.
12995
12996 * w32menu.c (menubar_selection_callback): Free the menu and
12997 clear the menu_command_in_progress flag.
12998
12999 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
13000 (menu_free_timer): New variable.
13001 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
13002 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
13003 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
13004 menu command is in progress.
13005 <WM_COMMAND>: Set the menu_command_in_progress flag.
13006 Kill any menu_free_timer that is running.
13007
13008 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
13009 Call ExtTextOutA rather than ExtTextOut.
13010
130112002-02-22 Eli Zaretskii <eliz@gnu.org>
13012
13013 * puresize.h (BASE_PURESIZE): Increase to 755000.
13014
130152002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
13016
13017 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
13018 on the string before encoding it.
13019 (Fw16_get_clipboard_data): Run post-read-conversion on the string
13020 after decoding it.
13021
130222002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
13023
13024 Support for ICCCM Extended Segments in X selections:
13025
13026 * xselect.c <Qcompound_text_no_extensions>: New variable.
13027 (syms_of_xselect): Intern and staticpro it.
13028 (selection_data_to_lisp_data): Run post-read-conversion on decoded
13029 selection text.
13030 (lisp_data_to_selection_data): If next-selection-coding-system is
13031 compound-text-no-extensions, set the type of selection to be
13032 compound-text.
13033
13034 * xterm.h (x_encode_text): Update prototype.
13035
13036 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
13037 callers changed. If SELECTIONP is non-zero, run the
13038 pre-write-conversion function before encoding the selection text.
13039
130402002-02-21 Kim F. Storm <storm@cua.dk>
13041
13042 * frame.c (syms_of_frame): Change mouse-highlight default to t.
13043
13044 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
13045 Correct composing of language-change event.
13046
130472002-02-20 Kim F. Storm <storm@cua.dk>
13048
13049 * keyboard.c (menu_bar_items): Don't include keymap or local-map
13050 bindings at PT when building menu (the menu is not updated often
13051 enough for this to work reliable).
13052 (tool_bar_items): Likewise.
13053 (current_active_maps): Removed unused (and buggy) function.
13054
130552002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13056
13057 * xfns.c (gif_load): Use correct width and height for GIF images.
13058
130592002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
13060
13061 * floatfns.c (Fatan): Accept an optional second arg and call
13062 atan2 if passed 2 args.
13063
130642002-02-18 Jason Rumney <jasonr@gnu.org>
13065
13066 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
13067
130682002-02-17 Jason Rumney <jasonr@gnu.org>
13069
13070 * w32term.c (x_autoselect_window_p): New variable.
13071 (syms_of_w32term): DEFVAR_BOOL and initialize it.
13072 (note_mouse_movement): Use it.
13073
13074 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
13075
13076 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
13077
13078 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
13079 New variables.
13080 (syms_of_w32fns): Intern and staticpro them.
13081 (x_frame_parms) <"fullscreen">: New parameter.
13082 (x_fullscreen_move, x_set_fullscreen): New functions.
13083 (x_set_frame_parameters): Support Qfullscreen.
13084 (x_real_positions): Save x/y_pixels_diff frame params.
13085 (x_figure_window_size): Support full-screen frames.
13086 (Fx_create_frame): Default the fullscreen parameter.
13087
13088 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
13089 (x_fullscreen_adjust): New functions.
13090 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
13091 fullscreen. Call x_check_fullscreen_move, and set the
13092 want_fullscreen member of output_data.w32
13093 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
13094
13095 * w32term.h: New enum for FULLSCREEN_* constants.
13096 (struct w32_output): New members want_fullscreen, x_pixels_diff,
13097 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
13098 (x-fullscreen-adjust): New prototype.
13099
131002002-02-17 Kim F. Storm <storm@cua.dk>
13101
13102 * frame.c: (Vmouse_highlight): New variable.
13103 (syms_of_frame): DEFVAR_LISP it.
13104
13105 * frame.h: (Vmouse_highlight): Declare extern.
13106
13107 * xterm.h (struct x_display_info): Add mouse_face_hidden.
13108
13109 * xterm.c (disable_mouse_highlight): Removed variable.
13110 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
13111 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
13112 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
13113 and on after keyboard input.
13114 (x_term_init): Initialize mouse_face_hidden.
13115
13116 * msdos.h (struct display_info): Add mouse_face_hidden.
13117
13118 * msdos.c (disable_mouse_highlight): Removed variable.
13119 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
13120 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
13121 (internal_terminal_init): Initialize mouse_face_hidden.
13122 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
13123 and on after keyboard input.
13124
13125 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
13126
13127 * w32term.c (disable_mouse_highlight): Removed variable.
13128 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
13129 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
13130 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
13131 and on after keyboard input.
13132 (w32_initialize_display_info): Initialize mouse_face_hidden.
13133
131342002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
13135
13136 * msdos.c (last_mouse_window): New variable.
13137 (dos_rawgetc): Fix last change--if the mouse is in the same window
13138 as recorded in last_mouse_window, don't select this window.
13139
13140 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
13141
13142 * msdos.c (x_autoselect_window_p): New variable.
13143 (syms_of_msdos): Defvar it.
13144 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
13145 which the last mouse movement occured, unless it is already selected.
13146
13147 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
13148 New variables.
13149 (syms_of_xdisp): DEVFAR them.
13150 (hscroll_window_tree): Use automatic_hscroll_margin and
13151 Vautomatic_hscroll_step to compute the amount of window scrolling.
13152
131532002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13154
13155 * xterm.c (x-autoselect-window): New variable.
13156 (note_mouse_movement): Use it.
13157
13158 * keyboard.c: Do not include "systime.h" twice.
13159
131602002-02-15 Andreas Schwab <schwab@suse.de>
13161
13162 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
13163
13164 * alloc.c (NSTATICS): Increase to 1280.
13165
131662002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
13167
13168 * alloc.c (NSTATICS): Bump to 1026.
13169
13170 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
13171 (Vx_super_keysym): New variables.
13172 (syms_of_xterm): DEFVAR_LISP them.
13173 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
13174 variables to determine which keys to use for the various modifiers.
13175
131762002-02-13 Kim F. Storm <storm@cua.dk>
13177
13178 * window.c: (Vmode_line_in_non_selected_windows): Removed.
13179 (mode_line_in_non_selected_windows): New variable.
13180 (syms_of_window): DEFVAR_BOOL it.
13181
13182 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
13183 Use mode_line_in_non_selected_windows.
13184 (mode_line_in_non_selected_windows): Declare extern.
13185 (Vmode_line_in_non_selected_windows): Removed extern.
13186
131872002-02-13 Richard M. Stallman <rms@gnu.org>
13188
13189 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
13190 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
13191 (Fclear_this_command_keys): Doc fixes.
13192
13193 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
13194 (update_face_from_frame_parameter): Increment face_change_count
13195 and windows_or_buffers_changed to force redisplay using changed faces.
13196
13197 * xdisp.c (QCpropertize): New variable.
13198 (mode_line_proptrans_alist): New variable.
13199 (display_mode_element): New arg PROPS; all calls changed.
13200 Implement this, for strings.
13201 Handle literal output of strings by sharing the
13202 main-line code for strings, using local var `literal'.
13203 Handle :propertize feature.
13204 (syms_of_xdisp): Initialze and staticpro QCpropertize and
13205 mode_line_proptrans_alist.
13206
132072002-02-11 Kim F. Storm <storm@cua.dk>
13208
13209 * window.c: (Vmode_line_in_non_selected_windows): New variable.
13210 (syms_of_window): DEFVAR_LISP it.
13211
13212 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
13213 (CURRENT_MODE_LINE_FACE_ID): Use it.
13214 (Vmode_line_in_non_selected_windows): Declare extern.
13215
13216 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
13217 to get mode line face.
13218
132192002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
13220
13221 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
13222 variables; cus-start.el doesn't need them anymore.
13223
132242002-02-09 Kim F. Storm <storm@cua.dk>
13225
13226 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
13227 reduction. This fixes a display problem where stray newlines were
13228 inserted in the window (corrected by C-l). Clarified code (IMHO).
13229
132302002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
13231
13232 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
13233
13234 * xdisp.c (display_mode_lines): Fix last change.
13235
132362002-02-09 Jason Rumney <jasonr@gnu.org>
13237
13238 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
13239 match each other.
13240 (w32_load_system_font): Prevent Cleartype fonts from loading.
13241 (Fx_show_tip): Ensure tip frames are above other topmost windows.
13242
132432002-02-09 Kim F. Storm <storm@cua.dk>
13244
13245 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
13246 (CURRENT_MODE_LINE_HEIGHT): Use it.
13247 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
13248
13249 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
13250 (pos_visible_p, handle_face_prop): Likewise.
13251 (display_mode_lines): Likewise, but for the real selected window.
13252 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
13253
13254 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
13255 in non-selected windows.
13256 (realize_basic_faces): Realize it.
13257 (syms_of_term): Intern and staticpro it.
13258
132592002-02-08 Kim F. Storm <storm@cua.dk>
13260
13261 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
13262 Changed mail addresses to emacs-devel@gnu.org.
13263
132642002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
13265
13266 * fileio.c (Fsubstitute_in_file_name): If the file name includes
13267 ~user, and there's no such user, don't discard everything before ~user.
13268
13269 * floatfns.c (Fround): Doc fix.
13270
132712002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13272
13273 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
13274
132752002-02-07 Stefan Monnier <monnier@cs.yale.edu>
13276
13277 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
13278
132792002-02-07 Kim F. Storm <storm@cua.dk>
13280
13281 * keymap.c (where_is_internal): Only check whether definition is
13282 remapped if it fulfills is_command_symbol.
13283
132842002-02-07 Andreas Schwab <schwab@suse.de>
13285
13286 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
13287
13288 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
13289
132902002-02-06 Kim F. Storm <storm@cua.dk>
13291
13292 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
13293 defining command remapping. Doc updated.
13294 (Flookup_key): Remap command through keymap if KEY is a symbol.
13295 (is_command_symbol): New function.
13296 (Fkey_binding): Use it. New optional argument NO-REMAP.
13297 Doc updated. Callers changed. Perform command remapping via
13298 recursive call unless that arg is non-nil.
13299 (where_is_internal): New argument no_remap. Callers changed.
13300 Call recursively to find original key bindings for a remapped
13301 comand unless that arg is non-nil.
13302 (Fwhere_is_internal): New optional argument NO-REMAP.
13303 Doc updated. Callers changed. Pass arg to where_is_internal.
13304
13305 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
13306 (is_command_symbol): Added prototype.
13307
13308 * keyboard.c (Vthis_original_command): New variable.
13309 (syms_of_keyboard): DEFVAR_LISP it.
13310 (command_loop_1): Set it, and perform command remapping.
13311
133122002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13313
13314 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
13315
133162002-02-06 Jason Rumney <jasonr@gnu.org>
13317
13318 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
13319
133202002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
13321
13322 * charset.c (get_charset_id): Use if-else instead of ?:.
13323
133242002-02-06 Richard M. Stallman <rms@gnu.org>
13325
13326 * filelock.c (S_ISLNK): Define if not defined.
13327
133282002-02-03 Richard M. Stallman <rms@gnu.org>
13329
13330 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
13331
13332 * lread.c (read1): Redesign strategy for force_multibyte and
13333 force_singlebyte. Now is_multibyte records whether read_buffer
13334 is multibyte. Encountering any multibyte character makes it so.
13335
133362002-02-02 Stefan Monnier <monnier@cs.yale.edu>
13337
13338 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
13339 with the same sequence, map that sequence to f10 rather than f0.
13340
133412002-02-03 Andreas Schwab <schwab@suse.de>
13342
13343 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
13344 latter never being defined on GNU/Linux.
13345
133462002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
13347
13348 * xfaces.c (realize_default_face): Don't set the weight and slant of
13349 the default face to Qnormal, unless these attributes are unspecified.
13350
133512002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13352
13353 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
13354 Call cancel_hourglass unconditionally.
13355
13356 * eval.c (Fsignal): Remove duplicated declaration of
13357 the variable `display_hourglass_p'.
13358
133592002-01-31 Richard M. Stallman <rms@gnu.org>
13360
13361 * editfns.c (region_limit): Nicer error message.
13362
13363 * coding.c (decode_composition_emacs_mule):
13364 Give up if NCOMPONENT gets too large to index `component'.
13365
13366 * callint.c (check_mark): New arg to specify clearer error message.
13367 Callers changed.
13368
133692002-01-27 Richard M. Stallman <rms@gnu.org>
13370
13371 * minibuf.c (Fcompleting_read): Doc fix.
13372
133732002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13374
13375 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
13376 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
13377 Fix doc-strings.
13378
133792002-01-26 Richard M. Stallman <rms@gnu.org>
13380
13381 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
13382
13383 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
13384 and scroll_up_aggressively.
13385
133862002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13387
13388 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
13389
133902002-01-25 Stefan Monnier <monnier@cs.yale.edu>
13391
13392 * textprop.c (Fnext_property_change, Fnext_single_property_change)
13393 (Fprevious_property_change, Fprevious_single_property_change):
13394 Stay within the narrowed-buffer boundaries.
13395
133962002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
13397
13398 * term.c (Ftty_display_color_cells): New function.
13399 (syms_of_term): Defsubr it.
13400 (Ftty_display_color_cells, Ftty_display_color_p): Change the
13401 argument name to DISPLAY. Doc fix.
13402
13403 * dispextern.h: Add prototype for set_tty_color_mode and
13404 tty_setup_colors.
13405
134062002-01-24 Jason Rumney <jasonr@gnu.org>
13407
13408 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
13409 If region left to draw is not what was expected, mark the frame as
13410 garbaged.
13411
13412 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
13413 Combine the regions returned by BeginPaint and GetUpdateRect.
13414
134152002-01-23 Jason Rumney <jasonr@gnu.org>
13416
13417 * w32term.c (x_update_window_begin): Only hide caret if
13418 w32_use_visible_system_caret is set.
13419 (x_update_window_end): Only show caret if
13420 w32_use_visible_system_caret is set.
13421 (syms_of_w32term): Handle SystemParametersInfo call failing.
13422
13423 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
13424
134252002-01-22 Richard M. Stallman <rms@gnu.org>
13426
13427 * unexelf.c (unexec): Define n so as to cause compilation error
13428 for the code where people have often written n instead of nn.
13429
13430 * .gdbinit (hookpost-run): Defined.
13431
134322002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13433
13434 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
13435
134362002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13437
13438 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
13439 if fullscreen is being set.
13440
134412002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13442
13443 * minibuf.c (Fminibuffer_contents)
13444 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
13445 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
13446
134472002-01-21 Richard M. Stallman <rms@gnu.org>
13448
13449 * window.c (check_frame_size): Fix minimum height calculation.
13450
134512002-01-20 Ken Raeburn <raeburn@gnu.org>
13452
13453 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
13454 height before comparison.
13455 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
13456
134572002-01-20 Jason Rumney <jasonr@gnu.org>
13458
13459 * w32term.c (w32_system_caret_width): Remove.
13460 (w32_use_visible_system_caret): New user flag.
13461 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
13462 Windows reports a screen reader running.
13463 (x_update_window_begin): Hide the system caret.
13464 (x_update_window_end): Show the system caret.
13465 (x_display_and_set_cursor): Don't draw a cursor when
13466 w32_use_visible_system_caret is set. Do not adjust width.
13467
13468 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
13469 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
13470 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
13471 the user requests it. Use system default width when creating.
13472 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
13473
13474 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
13475 New window messages.
13476
134772002-01-20 Richard M. Stallman <rms@gnu.org>
13478
13479 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
13480
134812002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13482
13483 * doprnt.c (doprnt1): Fix typos in error call.
13484
134852002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
13486
13487 * unexelf.c (unexec) [__sgi]: Support the .got sections.
13488
134892002-01-20 Jason Rumney <jasonr@gnu.org>
13490
13491 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
13492 that Windows returns. If a double check fails, try to guess how
13493 ExtTextOut is going to act.
13494
13495 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
13496 in place of stricmp.
13497 (w32_list_synthesized_fonts): Removed.
13498 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
13499 (struct enumfont_t): New element; list.
13500 (enum_font_cb2): List all style and charset variations of a font.
13501 (Fw32_select_font): New optional argument; include_proportional.
13502 Exclude vertical fonts. Exclude proportional fonts unless
13503 include_proportional is non-nil.
13504 (w32_enable_synthesized_fonts): Change to a boolean.
13505 (Fw32_send_sys_command): Doc fix.
13506
135072002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13508
13509 * dispnew.c (update_frame): Move the variable `tem' to the block
13510 where it is used.
13511
135122002-01-19 Jason Rumney <jasonr@gnu.org>
13513
13514 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
13515 call to face-set-after-frame-default.
13516
135172002-01-18 Richard M. Stallman <rms@gnu.org>
13518
13519 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
13520 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
13521
135222002-01-17 Richard M. Stallman <rms@gnu.org>
13523
13524 * window.c (enlarge_window): When exceeding size of parent,
13525 directly delete all the siblings instead of trying to resize it.
13526
135272002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13528
13529 * term.c (set_tty_color_mode): Remove unused variable `tem'.
13530
135312002-01-16 Henrik Enberg <henrik@enberg.org>
13532
13533 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
13534
135352002-01-16 Kim F. Storm <storm@cua.dk>
13536
13537 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
13538 is invisible. This can happen if cursor is on top line of a
13539 window, and we switch to a buffer with a header line.
13540
13541 * w32term.c (x_erase_phys_cursor): Ditto.
13542
135432002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13544
13545 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
13546 `dont_resize' only when used.
13547
13548 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
13549
135502002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
13551
13552 * xdisp.c (display_mode_element): When computing charpos, depend
13553 on multibyteness of elt, not the text in field.
13554
135552002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13556
13557 * buffer.c (Fkill_all_local_variables):
13558 Increment `update_mode_lines' only once.
13559
135602002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13561
13562 * lisp.h (adjust_after_replace_noundo)
13563 (Fupdate_coding_systems_internal): Add prototypes.
13564
13565 * sound.c (Fplay_sound): Initialize header_size also for :data case.
13566
135672002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
13568
13569 Support for the --color command-line argument and tty-color-mode
13570 frame parameter:
13571
13572 * term.c (tty_default_color_capabilities, tty_setup_colors)
13573 (set_tty_color_mode): New functions.
13574 (term_init): Call tty_default_color_capabilities.
13575 (Qtty_color_mode_alist): New variable.
13576 (syms_of_term): Intern and staticpro it.
13577
13578 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
13579 frames.
13580 (do_switch_frame): For termcap frames, switch the tty
13581 color mode as specified by the frame's parameters.
13582 (Qtty_color_mode): New variable.
13583 (syms_of_frame): Intern and staticpro it.
13584
13585 * emacs.c (USAGE2): Add the --color option.
13586 (standard_args): Ditto.
13587
135882002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13589
13590 * xterm.h (struct x_output): New members want_fullscreen,
13591 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
13592 y_pixels_outer_diff.
13593 New enum for FULLSCREEN_* constants.
13594 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
13595 is NULL.
13596 (x_fullscreen_adjust): Add prototype.
13597
13598 * emacs.c (USAGE2): Add the new full-screen arguments.
13599 (standard_args): Ditto.
13600
13601 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
13602 New variables.
13603 (syms_of_xfns): Intern and staticpro them.
13604 (x_frame_parms) <"fullscreen">: New parameter.
13605 (x_fullscreen_move, x_set_fullscreen): New functions.
13606 (x_set_frame_parameters): Support for Qfullscreen.
13607 (x_real_positions): More accurate computation of the frame position.
13608 (x_figure_window_size): Support full-screen frames.
13609 (Fx_create_frame): Default the fullscreen parameter.
13610
13611 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
13612 (XTread_socket) <Expose>: Call x_check_fullscreen.
13613 <ConfigureNotify>: Don't resize to fullscreen.
13614 Call x_check_fullscreen_move, and set the want_fullscreen member of
13615 output_data.x.
13616
136172002-01-13 Jason Rumney <jasonr@gnu.org>
13618
13619 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
13620 for mice with more than 3 buttons.
13621
13622 * w32term.c (parse_button): New parameter xbutton. Callers changed.
13623 (w32_read_socket): Handle new "XBUTTON" messages.
13624
13625 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
13626 (syms_of_w32fns): DEFVAR_BOOL it.
13627 (w32_wnd_proc): Handle new "XBUTTON" messages.
13628
136292002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13630
13631 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
13632
136332002-01-13 Andreas Schwab <schwab@suse.de>
13634
13635 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
13636
136372002-01-12 Andreas Schwab <schwab@suse.de>
13638
13639 * .gdbinit (xbuffer): Remove address operator since data is now a
13640 pointer.
13641
136422002-01-11 Richard M. Stallman <rms@gnu.org>
13643
13644 * insdel.c (adjust_after_replace_noundo): New function.
13645
13646 * coding.c (code_convert_region): Don't copy old text if undo disabled.
13647
136482002-01-09 Jason Rumney <jasonr@gnu.org>
13649
13650 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
13651 when checking for multiple frames.
13652
136532002-01-08 Richard M. Stallman <rms@gnu.org>
13654
13655 * window.c (delete_window): Rewrite the code for changing the
13656 selected window to handle the case where WINDOW is not a leaf.
13657
136582002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
13659
13660 * process.c (send_process): Set src_multibyte to 1 after the call
13661 top setup_coding_system, not before the call.
13662
136632002-01-07 Jason Rumney <jasonr@gnu.org>
13664
13665 * xmenu.c (set_frame_menubar, xmenu_show):
13666 (xdialog_show): Initialize wv->help to Qnil.
13667
13668 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
13669 (w32_dialog_show): Initialize wv->help to Qnil.
13670
136712002-01-06 Jason Rumney <jasonr@gnu.org>
13672
13673 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
13674
13675 * w32menu.c (w32_menu_display_help): Revert last change.
13676
13677 * xmenu.c (menu_highlight_callback): Revert last change.
13678
136792002-01-06 Andreas Schwab <schwab@suse.de>
13680
13681 * insdel.c (make_gap_larger): Make sure buffer size does not
13682 overflow range of int.
13683
136842002-01-05 Jason Rumney <jasonr@gnu.org>
13685
13686 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
13687 OVERLAPS_P.
13688
13689 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
13690
13691 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
13692 to the left or to the right of the pointer, put it against
13693 the left screen edge.
13694 (x_frame_parms): Add missing braces around initializer.
13695
13696 * w32term.c (x_setup_relief_colors): Don't compute an image's
13697 background color if it doesn't have a Pixmap.
13698 (notice_overwritten_cursor): Don't depend on
13699 output_cursor and updated_area. Compare pixel coordinates with
13700 window's cursor pixel coordinates.
13701 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
13702 Call notice_overwritten_cursor with new arg list.
13703 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
13704 unconditionally.
13705 (x_draw_image_relief): Use predefined macro instead of
13706 constant when the value of `tool_bar_button_relief' is negative.
13707
13708 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
13709
137102002-01-04 Richard M. Stallman <rms@gnu.org>
13711
13712 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
13713
137142002-01-03 Richard M. Stallman <rms@gnu.org>
13715
13716 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
13717 (Fkey_binding): Try the `keymap' property map first.
13718 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
13719 minor mode bindings.
13720
137212002-01-03 Kim F. Storm <storm@cua.dk>
13722
13723 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
13724
137252002-01-02 Richard M. Stallman <rms@gnu.org>
13726
13727 * keyboard.c (read_key_sequence): Handle the keymap property
13728 before minor mode maps.
13729
13730 * editfns.c (Fformat): Update thissize from field_width
13731 based on the actual width, in the string case.
13732
137332002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13734
13735 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
13736 when used as truth value to prevent gcc warnings.
13737
13738 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
13739 * w32proc.c: Include <config.h>.
13740
137412002-01-01 Andreas Schwab <schwab@suse.de>
13742
13743 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
13744 not EMACS_INT, to make them compatible with DEFVAR_INT.
13745 * lisp.h (max_specpdl_size): Adjust declaration.
13746
137472002-01-01 Richard M. Stallman <rms@gnu.org>
13748
13749 * print.c (print_object): Test print_escape_nonascii only for
13750 unibyte strings.
13751 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
13752 when outputting to a multibyte buffer.
13753
137542001-12-29 Richard M. Stallman <rms@gnu.org>
13755
13756 * print.c (print_object): In multibyte string, use hex escapes.
13757 Use octal only for unibyte strings.
13758 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
13759
13760 * lread.c (read_escape): New arg BYTEREP for reporting whether
13761 escape forces unibyte or multibyte.
13762 (read1): When reading a string, take note of that info.
13763
137642001-12-29 Ken Raeburn <raeburn@gnu.org>
13765
13766 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
13767 comparison to test lisp value returned by Fget.
13768
137692001-12-29 Richard M. Stallman <rms@gnu.org>
13770
13771 * lisp.h (max_specpdl_size): Add declaration.
13772
13773 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
13774
13775 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
13776 Handle modifier bits. Correct typo in error message.
13777
137782001-12-28 Richard M. Stallman <rms@gnu.org>
13779
13780 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
13781 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
13782 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
13783 Update calls to Fdefine_abbrev.
13784 (write_abbrev): Update for changed data format.
13785 Don't list "system" abbrevs.
13786 (Fexpand_abbrev): Update use count with new data format.
13787 (describe_abbrev): Update for changed data format.
13788 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
13789
13790 * config.in (HAVE_MBSINIT): Add #undef.
13791
13792 * strftime.c (mbsinit): Define as no-op if not available.
13793
13794 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
13795 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
13796
13797 * keymap.c (Flookup_key): Error message if key has wrong data type.
13798 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
13799 (exclude_key): New variable.
13800
138012001-12-28 Gerd Moellmann <gerd@gnu.org>
13802
13803 * xterm.c (x_setup_relief_colors): Don't compute an image's
13804 background color if it doesn't have a Pixmap.
13805
13806 * xterm.c (notice_overwritten_cursor): Don't depend on
13807 output_cursor and updated_area. Compare pixel coordinates with
13808 window's cursor pixel coordinates.
13809 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
13810 Call notice_overwritten_cursor with new arg list.
13811 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
13812 unconditionally.
13813
13814 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
13815 height of the cursor line to the amount to scroll.
13816
138172001-12-27 Richard M. Stallman <rms@gnu.org>
13818
13819 * intervals.c (set_point_both): The position after an invisible,
13820 intangible character is not an acceptable stopping point.
13821
138222001-12-27 Ken Raeburn <raeburn@gnu.org>
13823
13824 * window.c (enlarge_window): In new preserve_before code, convert
13825 CURBEG from lisp object to integer before doing arithmetic.
13826
138272001-12-27 Richard M. Stallman <rms@gnu.org>
13828
13829 * bytecode.c (Fbyte_code): Undo previous change.
13830
138312001-12-26 Kim F. Storm <storm@cua.dk>
13832
13833 * keyboard.c (record_char): Ignore duplicate help-echo events only
13834 separated by mouse-movement. When tracking mouse, only record
13835 first and last mouse-movement event in same window.
13836 Don't record mouse-movement events in keyboard macros.
13837
138382001-12-25 Richard M. Stallman <rms@gnu.org>
13839
13840 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
13841 (Fenlarge_window): New arg PRESERVE_BEFORE.
13842
13843 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
13844 instead of Fstring_as_unibyte.
13845
138462001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13847
13848 The following changes remove mocklisp support:
13849
13850 * mocklisp.h, mocklisp.c: Files removed.
13851
13852 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
13853 `Qmocklisp' and `Qmocklisp_arguments'.
13854 Remove prototype of syms_of_mocklisp.
13855
13856 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
13857
13858 * callint.c: Do not include mocklisp.h.
13859 (Fcall_interactively): Do not test for mocklisp case.
13860
13861 * eval.c: Remove variables `Qmocklisp_arguments',
13862 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
13863 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
13864 Do not test for mocklisp case.
13865 (Fwhile): Remove unused variable `tem'.
13866 (syms_of_eval): Remove variable `moclisp-arguments'.
13867
13868 * data.c (wrong_type_argument): Remove mocklisp case.
13869
13870 * doc.c (Fdocumentation): Remove mocklisp case.
13871
13872 * emacs.c (main): Do not call syms_of_mocklisp.
13873
138742001-12-21 Richard M. Stallman <rms@gnu.org>
13875
13876 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
13877 to the left or to the right of the pointer, put it against
13878 the left screen edge.
13879
138802001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
13881
13882 * Makefile.in (distclean): Remove .gdbinit if we are building
13883 outside the source tree.
13884
138852001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
13886
13887 * w32.c (emacs_root_dir): New function.
13888
13889 * msdos.c (emacs_root_dir): New function.
13890
13891 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
13892 of the current drive as the fallback for default_directory.
13893
13894 * dired.c (file_name_completion): Run the elements of
13895 completion-ignored-extensions through ENCODE_FILE.
13896
13897 * lisp.h (scmp): Remove prototype, since it's now a static
13898 function private to dired.c.
13899
139002001-12-18 Richard M. Stallman <rms@gnu.org>
13901
13902 * dired.c (scmp): Function moved from minibuf.c.
13903 Delete multibyte handling--used only on encoded strings.
13904
13905 * minibuf.c (scmp): Function moved to dired.c.
13906
13907 * fns.c (merge): Add QUIT call.
13908
139092001-12-18 Dave Love <fx@gnu.org>
13910
13911 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
13912 language/georgian.el.
13913
139142001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
13915
13916 * Makefile.in (lisp, shortlisp): Synchronize with changes to
13917 lisp/Makefile.in:DONTCOMPILE.
13918
139192001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13920
13921 * xdisp.c (window_box_height): Do not return negative values.
13922 From Gerd Moellmann <gerd@gnu.org>.
13923
13924 * keyboard.c (head_table): Add missing braces around initializer.
13925
13926 * term.c (keys): Likewise.
13927
13928 * xfns.c (x_frame_parms, visual_classes): Likewise.
13929
139302001-12-17 Sam Steingold <sds@gnu.org>
13931
13932 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
13933 patch (COMPOSING_P, not COMPOSING).
13934
139352001-12-17 Richard M. Stallman <rms@gnu.org>
13936
13937 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
13938
13939 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
13940 before calling decode_coding.
13941
13942 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
13943
13944 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
13945 instead of only for COMPOSITION_DISABLED.
13946
139472001-12-16 Richard M. Stallman <rms@gnu.org>
13948
13949 * alloc.c (pure_alloc): After overflow, allocate just a small block.
13950
13951 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
13952
13953 * buffer.h (struct buffer): New field `display_error_modiff'.
13954 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
13955
13956 * window.c (Frecenter): Clear display_error_modiff field.
13957
13958 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
13959 Call redisplay_window, but not if display_error_modiff field says no.
13960 (redisplay_window_error): New function.
13961 (displayed_buffer): New variable.
13962 (redisplay_internal, redisplay_windows): Call the new functions
13963 instead of redisplay_window directly.
13964
139652001-12-15 Richard M. Stallman <rms@gnu.org>
13966
13967 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
13968
139692001-12-14 Andrew Innes <andrewi@gnu.org>
13970
13971 * makefile.w32-in (EMACSLOADPATH): Define.
13972 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
13973 (bootstrap-temacs): Remove dependency on bootstrap-clean.
13974
139752001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
13976
13977 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
13978 parameter have a numeric value all the time.
13979
13980 * w32fns.c (x_report_frame_params): Likewise.
13981
139822001-12-12 Richard M. Stallman <rms@gnu.org>
13983
13984 * fileio.c (Fwrite_region): Doc fix.
13985
13986 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
13987 (redisplay_internal): Call clear_image_cache only for window terminals.
13988
139892001-12-12 Gerd Moellmann <gerd@gnu.org>
13990
13991 * xdisp.c (move_it_vertically_backward): Change heuristic
13992 for the case that we didn't move far enough initially.
13993
13994 * window.c (Frecenter): Simplify computation in the case of window
13995 system frames and ARG < 0; use window_box_height.
13996
139972001-12-11 Richard M. Stallman <rms@gnu.org>
13998
13999 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
14000 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
14001
140022001-12-11 Andrew Innes <andrewi@gnu.org>
14003
14004 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
14005 arg is negative.
14006
140072001-12-11 Richard M. Stallman <rms@gnu.org>
14008
14009 * m/hp800.h: Split the __hpux conditional into the parts
14010 that are right for GNU/Linux too and the parts that are not.
14011 Use the former if GNU_LINUX.
14012 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
14013
14014 * s/gnu-linux.h (GNU_LINUX): Defined.
14015
140162001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14017
14018 * macros.c, msdos.c, w16select.c: Change doc-string comments to
14019 `new style' [w/`doc:' keyword].
14020
140212001-12-10 Jason Rumney <jasonr@gnu.org>
14022
14023 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
14024 before using.
14025
140262001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14027
14028 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
14029 keyword].
14030
140312001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
14032
14033 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
14034
14035 * s/hpux10.h (srand48): Don't undefine.
14036
140372001-12-09 Jason Rumney <jasonr@gnu.org>
14038
14039 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
14040 Add comment to explain where the struct came from.
14041 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
14042 (add_menu_item): Process pop-up menus first to avoid memory leak.
14043 (add_menu_item, w32_menu_display_help): Use `help' field as
14044 Lisp_Object.
14045 (w32_free_submenu_strings): Only free owner-drawn strings.
14046
140472001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14048
14049 * COPYING: Moved back.
14050
14051 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
14052 Add parentheses around && within ||.
14053
14054 * indent.c (compute_motion): Likewise.
14055
14056 * intervals.c (merge_properties_sticky): Likewise.
14057
14058 * coding.c (setup_coding_system, shrink_encoding_region)
14059 (Fdecode_sjis_char): Likewise.
14060
140612001-12-07 Andreas Schwab <schwab@suse.de>
14062
14063 * xdisp.c (display_mode_element): Don't read past end of string if
14064 it ends with '%'.
14065
14066 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
14067 can hold.
14068
14069 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
14070 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
14071 type changed to Lisp_Object.
14072 (syms_of_data): DEFVAR_LISP them.
14073
140742001-12-07 Richard M. Stallman <rms@gnu.org>
14075
14076 * callproc.c (init_callproc): Set Vdata_directory based on the source
14077 location whenever Emacs was run uninstalled.
14078
140792001-12-06 Paul Eggert <eggert@twinsun.com>
14080
14081 * config.in (HAVE_WORKING_VFORK): New #undefs.
14082 * process.c (create_process):
14083 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
14084 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
14085 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
14086 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
14087 * m/intel386.h (HAVE_VFORK): Likewise.
14088 * m/mips-siemens.h (HAVE_VFORK): Likewise.
14089 * m/mips.h (HAVE_VFORK): Likewise.
14090 * s/freebsd.h (vfork): Remove #define.
14091 * s/lynxos.h (HAVE_VFORK): Remove #undef.
14092 * s/usg5-4-2.h: Fix comment about vfork.
14093
140942001-12-06 Richard M. Stallman <rms@gnu.org>
14095
14096 * s/hpux10.h (random): Add undef.
14097 (HAVE_RANDOM): Define it just once.
14098
140992001-12-06 Stefan Monnier <monnier@cs.yale.edu>
14100
14101 * eval.c: Undo last change: the standard syntax is not wanted.
14102
141032001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
14104
14105 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
14106 scroll bars of the frame before deleting the frame itself. If the
14107 frame has a widget, delete the frame with XtDestroyWidget, and do
14108 not call XDestroyWindow before that.
14109
141102001-12-06 Kim F. Storm <storm@cua.dk>
14111
14112 * xfns.c (x_report_frame_params): Return actual fringe widths.
14113
14114 * w32fns.c (x_report_frame_params): Return actual fringe widths.
14115
141162001-12-05 Andrew Innes <andrewi@gnu.org>
14117
14118 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
14119 excessively large.
14120
14121 * insdel.c (make_gap_larger): New function.
14122 (make_gap_smaller): New function.
14123 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
14124 Call make_gap_smaller if arg is negative.
14125
141262001-12-04 Stefan Monnier <monnier@cs.yale.edu>
14127
14128 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
14129 Pass a dummy argument when calling interrupt_signal.
14130 (parse_menu_item): Mark disabled items before checking for empty def.
14131 (read_char_minibuf_menu_prompt): Make safety more visible.
14132 (read_key_sequence): Add a `first_unbound' variable.
14133 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
14134 unbound prefix as soon as we can detect it.
14135
14136 * doc.c (Fsnarf_documentation): Add prototype.
14137 (get_doc_string): Handle negative arguments.
14138 (Fdocumentation): Use AREF and ASIZE.
14139 Move the calls to get_doc_string to a single place.
14140 Don't confuse an interactive-spec for a docstring reference.
14141 (Fdocumentation_property): Take advantage of the fact that
14142 get_doc_string now ignores the sign of the docstring position.
14143
14144 * eval.c: Use standard syntax for usage in docstrings.
14145
141462001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14147
14148 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
14149
141502001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14151
14152 * xterm.c (x_draw_image_relief): Use predefined macro instead of
14153 constant when the value of `tool_bar_button_relief' is negative.
14154
141552001-12-02 Richard M. Stallman <rms@gnu.org>
14156
14157 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
14158 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
14159
14160 * fileio.c (read_non_regular): Delete Fsignal call.
14161
141622001-12-01 Stefan Monnier <monnier@cs.yale.edu>
14163
14164 * lisp.h (run_hook_list_with_args): Undo last change.
14165
141662001-12-01 Gerd Moellmann <gerd@gnu.org>
14167
14168 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
14169
141702001-12-01 Jason Rumney <jasonr@gnu.org>
14171
14172 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
14173
14174 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
14175 [!WM_MOUSELEAVE]: Define.
14176
14177 * w32menu.c (current_popup_menu, get_menu_item_info):
14178 (set_menu_item_info): New vars.
14179 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
14180 (w32_menu_show): Set current_popup_menu.
14181 (add_menu_item): Allocate new strings for owner-drawn menu items
14182 and help strings.
14183 Use owner-draw for disabled menu items again.
14184 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
14185 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
14186
14187 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
14188 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
14189 <WM_EXITMENULOOP>: Free menu strings.
14190 <WM_MOUSELEAVE>: Stop tracking mouse.
14191 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
14192
14193 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
14194 and mouse face.
14195
141962001-12-01 Kim F. Storm <storm@cua.dk>
14197
14198 The following changes add left-fringe and right-fringe
14199 frame parameters to adjust fringe widths, or remove one or
14200 both fringes.
14201
14202 * frame.h (struct frame): Remove trunc_area_pixel_width and
14203 trunc_area_cols fields.
14204 (Qleft_fringe, Qright_fringe): Declare.
14205 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
14206
14207 * frame.c (Qleft_fringe, Qright_fringe): New vars.
14208 (syms_of_frame): Initialize them.
14209
14210 * window.c (coordinates_in_window): Handle separate left and right
14211 fringe widths.
14212
14213 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
14214 and fringe_cols fields.
14215 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
14216 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
14217 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
14218 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
14219 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
14220 (x_compute_fringe_widths): Add prototype.
14221
14222 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
14223 fill fringe evenly with small dashes.
14224 (x_draw_fringe_bitmap): Clear background if necessary. Align and
14225 clip the new ZV bitmap to avoid jitter between rows.
14226 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
14227 background. Don't draw fringe bitmaps if fringe width is zero.
14228 (x_compute_fringe_widths): New function.
14229 (x_new_font, x_set_window_size_1): Use it.
14230
14231 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
14232 (x_set_frame_parameters): Process `font' parameter before other
14233 parameters as fringe widths depend on it.
14234 (x_set_fringe_width): New function.
14235 (x_figure_window_size): Use x_compute_fringe_widths.
14236 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
14237 parameters.
14238
14239 * widget.c (set_frame_size): Use x_compute_fringe_widths.
14240 (EmacsFrameSetCharSize): Ditto.
14241
14242 * w32term.h: Merged changes from xterm.h.
14243 * w32term.c: Merged changes from xterm.c.
14244 * w32fns.c: Merged changes from xfns.c.
14245
142462001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14247
14248 * COPYING: Removed.
14249
142502001-11-29 Dave Love <fx@gnu.org>
14251
14252 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
14253 extra extra slot.
14254 (detect_coding_mask): Fix call of detect_coding_iso2022.
14255
142562001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14257
14258 * fileio.c (file-name-coding-system)
14259 (default-file-name-coding-system): Doc fix (links to referenced
14260 variables added).
14261
142622001-11-28 Stefan Monnier <monnier@cs.yale.edu>
14263
14264 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
14265 Add dummy uses of gcproN variables.
14266
14267 * category.c (describe_category, describe_category_1)
14268 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
14269 (syms_of_category): Don't defsubr Sdescribe_categories.
14270
142712001-11-28 Richard M. Stallman <rms@gnu.org>
14272
14273 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
14274
14275 * Makefile.in (lispdir): New variable, referring to build dir.
14276 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
14277
142782001-11-28 Andrew Innes <andrewi@gnu.org>
14279
14280 * w32menu.c (w32_menu_display_help): Actually add the new argument
14281 OWNER.
14282
142832001-11-28 Jason Rumney <jasonr@gnu.org>
14284
14285 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
14286 menu items. From David Ponce <dponce@wanadoo.fr>.
14287 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
14288 conditionally.
14289 (w32_menu_display_help): New argument OWNER. Rewritten to store a
14290 help event in the owner frame's keyboard buffer.
14291
14292 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
14293 (Fx_show_tip): Don't subtract last width from row width.
14294
14295 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
14296 (w32_read_socket): Use EQ to compare frames.
14297
142982001-11-28 Gerd Moellmann <gerd@gnu.org>
14299
14300 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
14301 OVERLAPS_P.
14302
143032001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14304
14305 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
14306 `gcpro3' and `gcpro4'.
14307
14308 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
14309
143102001-11-28 Stefan Monnier <monnier@cs.yale.edu>
14311
14312 * ccl.c: Use AREF and ASIZE.
14313
143142001-11-27 Stefan Monnier <monnier@cs.yale.edu>
14315
14316 * lisp.h (run_hook_list_with_args): Remove.
14317 (LIST_END_P): Fix call to wrong_type_argument.
14318 (make_fixnum_or_float): Use EMACS_INT rather than int.
14319
143202001-11-26 Stefan Monnier <monnier@cs.yale.edu>
14321
14322 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
14323 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
14324
14325 * eval.c: Use AREF and ASIZE.
14326 (Ffetch_bytecode): Add the file name to the error message.
14327
14328 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
14329 which match the end of the file-name.
14330 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
14331 is not a valid env var, but leave it as is instead.
14332
14333 * keymap.c (access_keymap): Handle t bindings like nil bindings.
14334 Make nil bindings in char-tables transparent.
14335 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
14336
143372001-11-26 Richard M. Stallman <rms@gnu.org>
14338
14339 * textprop.c (set_text_properties_1): Allow START, END in either order.
14340 Do nothing if range is empty.
14341
14342 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
14343
14344 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
14345 (clean): Not here.
14346
143472001-11-25 Stefan Monnier <monnier@cs.yale.edu>
14348
14349 * textprop.c (set_text_properties_1): Clearly mark that the
14350 interval should not be empty.
14351
14352 * intervals.c (graft_intervals_into_buffer):
14353 Don't call set_text_properties_1 on an empty interval.
14354
143552001-11-25 Richard M. Stallman <rms@gnu.org>
14356
14357 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
14358
14359 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
14360 don't lose the data in it.
14361
143622001-11-25 Juanma Barranquero <lektu@terra.es>
14363
14364 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
14365
14366 * buffer.c (Fkill_buffer): Likewise.
14367
14368 * print.c (temp_output_buffer_setup): Likewise.
14369
143702001-11-25 Stefan Monnier <monnier@cs.yale.edu>
14371
14372 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
14373
143742001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
14375
14376 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
14377 Niemitalo <kon@iki.fi>.
14378
143792001-11-25 Jason Rumney <jasonr@gnu.org>
14380
14381 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
14382
14383 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
14384 (Fx_show_tip): Block input during frame creation.
14385 (Fx_show_tip, Fx_hide_tip): Enable.
14386
143872001-11-24 Richard M. Stallman <rms@gnu.org>
14388
14389 * lread.c (Fload): Detect recursive load error for more than 3
14390 nestings of the same file.
14391 (Vrecursive_load_depth_limit): Variable deleted.
14392 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
14393
143942001-11-24 Jason Rumney <jasonr@gnu.org>
14395
14396 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
14397 mouse position if either left or top is not specified.
14398
14399 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
14400 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
14401 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
14402 (my_create_tip_window): Assign tip_window.
14403 (x_create_tip_frame): Use same defaults as X.
14404 (compute_tip_xy): Remove unused variable. Use full screen width.
14405 (Fx_show_tip): Do not double height. Call ShowWindow directly.
14406
14407 * w32term.c (x_after_update_window_line): Doc fix.
14408 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
14409 frames.
14410 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
14411
14412 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
14413 for all Windowed systems.
14414
144152001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
14416
14417 * msdos.c (IT_clear_screen): If the frame's faces are not yet
14418 realized, use the initial screen colors to clear the screen.
14419
144202001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14421
14422 * textprop.c (Fset_text_properties): Remove unused variables
14423 `unchanged', `prev_changed', `s' and `len'.
14424
14425 * search.c (Freplace_match): Remove unused variable `inslen'.
14426
14427 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
14428
144292001-11-22 Jason Rumney <jasonr@gnu.org>
14430
14431 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
14432 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
14433 (my_create_tip_window): New function.
14434 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
14435 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
14436
144372001-11-20 Jason Rumney <jasonr@gnu.org>
14438
14439 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
14440 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
14441
14442 * w32fns.c (Vw32_system_coding_system): Remove.
14443 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
14444
144452001-11-19 Stefan Monnier <monnier@cs.yale.edu>
14446
14447 * fileio.c (Fwrite_region): Move choose_write_coding_system to
14448 after build_annotations.
14449
14450 * syntax.c (describe_syntax): Add dummy arg.
14451 (describe_syntax_1): Update call to describe_vector.
14452
14453 * category.c (describe_category): Add dummy arg.
14454 (describe_category_1): Update call to describe_vector.
14455
14456 * keymap.c (Fdescribe_vector): Add `describer' parameter.
14457 (describe_command, describe_translation): Add dummy second param.
14458 (describe_map): Call elt_describer with two arguments.
14459 (describe_vector_princ): Add `fun' parameter.
14460 Call it instead of the hardcoded `princ'.
14461 (describe_vector): Add arg `args'.
14462 Pass it as a new second argument to elt_describer.
14463
14464 * keymap.h (describe_vector): Update prototype.
14465
14466 * frame.c: Don't include keymap.h any more.
14467 (keys_of_frame): Remove.
14468
14469 * lisp.h (keys_of_frame): Remove declaration.
14470
14471 * emacs.c (main): Don't call `keys_of_frame' any more.
14472
144732001-11-14 Andreas Schwab <schwab@suse.de>
14474
14475 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
14476 if defined, 0 otherwise.
14477 (MAP_FAILED): Define if not defined and use it to test mmap failure.
14478 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
14479
144802001-11-19 Richard M. Stallman <rms@gnu.org>
14481
14482 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
14483
144842001-11-18 Jason Rumney <jasonr@gnu.org>
14485
14486 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
14487 (x_draw_bar_cursor): If the background color of the glyph under
14488 the cursor equals the frame's cursor color, use the glyph's
14489 foreground color for drawing the bar cursor.
14490 (x_after_update_window_line): Clear internal border in different
14491 circumstances.
14492 (w32_set_vertical_scroll_bar): Check for width and height > 0.
14493 (w32_draw_relief_rect): Correct relief by 1 pixel.
14494 (x_set_glyph_string_background_width):
14495 Set extends_to_end_of_line_p if the row's fill_line_p is set and
14496 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
14497 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
14498 if cursor_in_non_selected_windows is false.
14499 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
14500 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
14501 Notice if cursor gets overwritten.
14502 (notice_overwritten_cursor): Renamed from
14503 note_overwritten_text_cursor. Rewritten to take glyph widths
14504 into account, and to take X positions as parameters.
14505 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
14506 around call to x_draw_glyphs.
14507 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
14508 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
14509 color to use for image glyph reliefs.
14510 (x_draw_image_relief): Accept zero tool_bar_button_relief.
14511 (glyph_rect): Remove unused variable `area'.
14512
14513 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
14514 some items.
14515 (x_set_internal_border_width): Set frame garbaged when window
14516 doesn't exist yet.
14517 (Fx_create_frame): Accept zero tool_bar_button_relief.
14518 (x_clear_image_1, four_corners_best, image_background)
14519 (image_background_transparent): New functions.
14520 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
14521 (gs_format): Add `:background' entry.
14522 (lookup_image): Set IMG's background color if specified.
14523 (pbm_load, xbm_load_image, png_load): Set IMG's background field
14524 when appropriate.
14525 (x_clear_image_1): Reset `background_valid' and
14526 `background_transparent_valid' fields.
14527 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
14528 calculating it here. Set IMG's background_transparent field.
14529 (enum xpm_keyword_index): Add XPM_BACKGROUND.
14530 (enum png_keyword_index): Add PNG_BACKGROUND.
14531 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
14532 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
14533 (enum gif_keyword_index): Add GIF_BACKGROUND.
14534 (enum gs_keyword_index): Add GS_BACKGROUND.
14535 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
14536 Pre-calculate image background color where necessary.
14537 (x_create_x_image_and_pixmap, xbm_load, gs_load):
14538 Use display info's n_cbits entry for screen depth.
14539 (Fx_show_tip): Remove unused variables `buffer', `top',
14540 `left', `max_width' and `max_height'.
14541
14542 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
14543
145442001-11-18 Gerd Moellmann <gerd@gnu.org>
14545
14546 * puresize.h (BASE_PURESIZE): Increase to 750000.
14547
145482001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14549
14550 * frame.c (Fframe_live_p): Doc fix.
14551
145522001-11-18 Richard M. Stallman <rms@gnu.org>
14553
14554 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
14555 (message_dolog_marker3): New static variables hold three markers.
14556 (syms_of_xdisp): Initialize and staticpro them.
14557 (message_dolog): Use message_dolog_marker1..3 instead of
14558 allocating markers each time. Unchain them when done.
14559
145602001-11-17 Richard M. Stallman <rms@gnu.org>
14561
14562 * doc.c (Fsnarf_documentation): Doc fix.
14563
145642001-11-17 Andreas Schwab <schwab@suse.de>
14565
14566 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
14567
145682001-11-17 Richard M. Stallman <rms@gnu.org>
14569
14570 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
14571
145722001-11-17 Jason Rumney <jasonr@gnu.org>
14573
14574 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
14575
145762001-11-17 Gerd Moellmann <gerd@gnu.org>
14577
14578 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
14579 with invalid position.
14580
145812001-11-16 Richard M. Stallman <rms@gnu.org>
14582
14583 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
14584
14585 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
14586 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
14587 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
14588
14589 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
14590
145912001-11-16 Stefan Monnier <monnier@cs.yale.edu>
14592
14593 * fileio.c (build_annotations): Split off the tail.
14594 (build_annotations_2): New fun. Extracted from build_annotations.
14595 (Fwrite_region): Split the call to build_annotations into two
14596 calls to build_annotations and build_annotations_2.
14597
145982001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14599
14600 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
14601 clear_waiting_for_input with argument.
14602
14603 * xterm.h (x_update_cursor): Remove duplicated prototype.
14604
14605 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
14606
14607 * xterm.c (waiting_for_input): Remove unnecessary declaration.
14608
14609 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
14610
146112001-11-16 Stefan Monnier <monnier@cs.yale.edu>
14612
14613 * fileio.c (choose_write_coding_system): New fun, extracted
14614 from Fwrite_region.
14615 (Fwrite_region): Use it.
14616
14617 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
14618 (funcall_lambda, run_hook_with_args): Make static and add prototype.
14619 (ml_apply, find_handler_clause): Add prototype.
14620
146212001-11-16 Eli Zaretskii <eliz@gnu.org>
14622
14623 * config.in: Add #undef HAVE_COFF_H.
14624
14625 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
14626 Required for ISC 4.1.
14627
146282001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
14629
14630 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
14631 Andrew Wiseman <a.wiseman@btclick.com>.
14632
146332001-11-16 Kim F. Storm <storm@cua.dk>
14634
14635 The following changes are made to clean up the various internal
14636 references to the fringes to actually use the term `fringe' for
14637 them. Previously, they were called `flags areas', `bitmap areas',
14638 `left/right side of windows', or implicitly as `flags' or
14639 `bitmaps':
14640
14641 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
14642 Comments fixed. Use renamed symbols.
14643
14644 * dispnew.c: Comment fix. Use renamed symbols.
14645
14646 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
14647 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
14648 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
14649
14650 * msdos.c: Comment fix.
14651
14652 * w32fns.c: Use renamed symbols.
14653
14654 * w32term.c: Comment fixes. Use renamed symbols.
14655 (fringe_bitmap_type): Renamed from bitmap_type.
14656 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
14657 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
14658 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
14659
14660 * w32term.h: Comment fixes. Use renamed symbols.
14661 (fringes_extra): Renamed from flags_areas_extra.
14662 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
14663 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
14664 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
14665 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
14666 (FRAME_X_LEFT_FRINGE_WIDTH):
14667 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
14668 (FRAME_X_RIGHT_FRINGE_WIDTH):
14669 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
14670
14671 * widget.c: Use renamed symbols.
14672
14673 * window.c: Comment fixes. Use renamed symbols.
14674 (coordinates-in-window-p): Doc fix.
14675
14676 * xdisp.c: Comment fixes. Use renamed symbols.
14677
14678 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
14679
14680 * xfns.c: Use renamed symbols.
14681
14682 * xterm.c: Comment fixes. Use renamed symbols.
14683 (fringe_bitmap_type): Renamed from bitmap_type.
14684 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
14685 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
14686 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
14687
14688 * xterm.h: Comment fixes. Use renamed symbols.
14689 (fringes_extra): Renamed from flags_areas_extra.
14690 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
14691 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
14692 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
14693 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
14694 (FRAME_X_LEFT_FRINGE_WIDTH):
14695 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
14696 (FRAME_X_RIGHT_FRINGE_WIDTH):
14697 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
14698
146992001-11-15 Jason Rumney <jasonr@gnu.org>
14700
14701 * w32menu.c (add-menu-item): Make help_echo and radio buttons
14702 work for most menu items. From David Ponce
14703 <david.ponce@wanadoo.fr>.
14704
147052001-11-15 Gerd Moellmann <gerd@gnu.org>
14706
14707 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
14708 Some x_set_* function expect to be called even if old and new
14709 value are equal.
14710
14711 * xdisp.c (build_desired_tool_bar_string): Accept zero
14712 tool_bar_button_relief.
14713
14714 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
14715
14716 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
14717
14718 * xterm.c (x_draw_bar_cursor): If the background color of the
14719 glyph under the cursor equals the frame's cursor color, use
14720 the glyph's foreground color for drawing the bar cursor.
14721
14722 * dispnew.c (direct_output_forward_char): Fix character/byte
14723 position comparison.
14724
147252001-11-15 Miles Bader <miles@gnu.org>
14726
14727 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
14728 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
14729 Update arguments to find_field.
14730 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
14731 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
14732 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
14733 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
14734
147352001-11-14 Richard M. Stallman <rms@gnu.org>
14736
14737 * editfns.c (Fpropertize): Allow call with 1 arg.
14738
14739 * dispextern.h (image_background, image_background_transparent):
14740 Conditionalize on HAVE_X_WINDOWS.
14741
147422001-11-13 Richard M. Stallman <rms@gnu.org>
14743
14744 * print.c (Fprin1_to_string): Doc fix.
14745
14746 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
14747
14748 * floatfns.c (Fceiling, Ffloor): Doc fixes.
14749
14750 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
14751
14752 * fileio.c (Ffile_accessible_directory_p): Doc fix.
14753
14754 * eval.c (syms_of_eval): Doc fix.
14755
14756 * coding.c (syms_of_coding): Doc fix.
14757
14758 * doc.c (Fsnarf_documentation): Doc fix.
14759
14760 * dispnew.c (syms_of_display): Doc fix.
14761
14762 * category.c (Fget_unused_category): Doc fix.
14763
14764 * buffer.c (syms_of_buffer): Doc fixes.
14765
147662001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
14767
14768 * print.c (prin1, print): Doc fix.
14769
147702001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14771
14772 * fontset.h: Remove declarations of variables
14773 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
14774
14775 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
14776 `Vclip_large_size_font'.
14777
147782001-11-13 Jason Rumney <jasonr@gnu.org>
14779
14780 * w32fns.c: Doc fix.
14781
147822001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14783
14784 * xfaces.c (Fface_attributes_as_vector): Doc fix.
14785
14786 * fns.c: Doc fix.
14787
14788 * emacs.c: Doc fix.
14789
14790 * coding.c: Doc fix.
14791
14792 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
14793 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
14794 `new style' [w/`doc:' keyword].
14795
147962001-11-12 Richard M. Stallman <rms@gnu.org>
14797
14798 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
14799 LeaveNotify events. Only FocusIn and FocusOut do that now.
14800 (x_display_and_set_cursor): Do display hollow cursors in active
14801 minibuffer windows when they are not selected.
14802
148032001-11-12 Jason Rumney <jasonr@gnu.org>
14804
14805 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
14806 * w32term.c: Change doc-string comments to `new style'
14807 [w/`doc:' keyword]. Doc fixes.
14808
14809 * w32fns.c: Don't define max.
14810 (Fx_open_connection): Only execute once.
14811
148122001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14813
14814 * ccl.c: Change macros to use do-while block instead of if-else.
14815 Use braces to follow GNU Coding Standards.
14816
148172001-11-11 Richard M. Stallman <rms@gnu.org>
14818
14819 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
14820
14821 * lread.c (read_escape): Use end_of_file_error for reporting eof.
14822
14823 * insdel.c (replace_range): Use adjust_markers_for_replace
14824 instead of adjust_markers_for_delete and adjust_markers_for_insert.
14825
14826 * intervals.h: Declare set_text_properties and set_text_properties_1.
14827
14828 * textprop.c (set_text_properties_1): New subroutine
14829 broken out of set_text_properties.
14830 (set_text_properties): Use set_text_properties_1.
14831
14832 * intervals.c (graft_intervals_into_buffer):
14833 Use set_text_properties_1 to clear out properties.
14834
14835 * search.c (Freplace_match): Use replace_range to insert
14836 and delete. Don't request property inheritance from
14837 surrounding text.
14838
148392001-11-10 Jason Rumney <jasonr@gnu.org>
14840
14841 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
14842 vertical fonts. Allow them if face name is explicitly specified.
14843 Do not give up if we find a font that cannot be converted to an xlfd.
14844
148452001-11-10 Gerd Moellmann <gerd@gnu.org>
14846
14847 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
14848 instead of malloc/free.
14849
148502001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14851
14852 * xfaces.c (merge_face_vectors): Use braces to follow GNU
14853 Coding Standards.
14854 (Finternal_set_lisp_face_attribute): Likewise.
14855
14856 * buffer.c (Fbury_buffer): Likewise.
14857
14858 * indent.c (current_column_1): Remove unused variable `prev_col'.
14859
14860 * coding.c (encode_coding): Use precomputed value of `src'.
14861 (encode_coding): Remove unused variable `src_end'.
14862 (code_convert_region): Remove unused variables `count'.
14863
148642001-11-07 Jason Rumney <jasonr@gnu.org>
14865
14866 * w32term.c (x_display_and_set_cursor): Do not move system caret
14867 if cursor_glyph is NULL.
14868
148692001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14870
14871 * keymap.c (access_keymap): Fix compilation error.
14872
148732001-11-07 Miles Bader <miles@gnu.org>
14874
14875 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
14876
148772001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14878
14879 * intervals.c (graft_intervals_into_buffer):
14880 Remove #ifdef'd-out code.
14881 (graft_intervals_into_buffer): Remove unused variable `middle'.
14882
14883 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
14884 code (eval-current-buffer).
14885 Change doc-string comments to `new style' [w/`doc:' keyword].
14886
148872001-11-06 Richard M. Stallman <rms@gnu.org>
14888
14889 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
14890
148912001-11-06 Stefan Monnier <monnier@cs.yale.edu>
14892
14893 * lread.c (read1): Fix behavior with nested backquoting.
14894
14895 * keyboard.c (make_lispy_event): Check integerness and fix
14896 Lisp_Object/int mixup.
14897
148982001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14899
14900 * fns.c (copy_hash_table): Remove unused variable `v'.
14901
14902 * fontset.c (fontset_font_pattern): Remove unused variable
14903 `family_registry'.
14904
14905 * indent.c (current_column_1): Remove unused variable `prev_col'.
14906
149072001-11-05 Richard M. Stallman <rms@gnu.org>
14908
14909 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
14910
14911 * buffer.c (Fkill_buffer): Don't delete auto save file
14912 if buffer is modified.
14913
149142001-11-05 Andrew Innes <andrewi@gnu.org>
14915
14916 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
14917 CHECK_NUMBER_CDR.
14918
149192001-11-05 Richard M. Stallman <rms@gnu.org>
14920
14921 * unexelf.c (unexec): Minor changes; clean up comments.
14922
149232001-11-05 Sam Steingold <sds@gnu.org>
14924
14925 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
14926
149272001-11-05 Andreas Schwab <schwab@suse.de>
14928
14929 * sound.c (sound_perror): Save errno from being clobbered.
14930
149312001-11-05 Dale Hagglund <rdh@yottayotta.com>
14932
14933 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
14934 the program image directly.
14935
149362001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14937
14938 * buffer.h (Fbuffer_local_value): Add prototype.
14939
149402001-11-04 Richard M. Stallman <rms@gnu.org>
14941
14942 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
14943 and CHECK_BUFFER.
14944
14945 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
14946 (record_char): Likewise.
14947
14948 * keyboard.c (make_lispy_event): Don't insist a drag event must
14949 move to a different buffer position. Instead, check for moving at
14950 least double_click_fuzz.
14951
14952 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
14953
14954 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
14955
14956 * indent.c (current_column_1, Fmove_to_column): Separate the code
14957 for display-table glyphs from the code for buffer text, to fix
14958 bugs in the former.
14959
149602001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
14961
14962 * buffer.c (Fbuffer_local_value): New function.
14963 (syms_of_buffer): Defsubr it.
14964
14965 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
14966 value of `cursor-in-non-selected-windows'.
14967
14968 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
14969 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
14970 (syms_of_xdisp): Initialize it.
14971
149722001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14973
14974 * xfns.c (Fx_create_frame): Doc fix.
14975
14976 * coding.c: Change doc-string comments to `new style' [w/`doc:'
14977 keyword].
14978
14979 * eval.c (top_level_value, top_level_set): Remove commented and
14980 #ifdef'd-out code.
14981 (Fdefvar): Fix usage in doc-string.
14982
149832001-11-03 Richard M. Stallman <rms@gnu.org>
14984
14985 * xfns.c: Include unistd.h, if it exists.
14986
14987 * editfns.c: Move the include of ctype.h after unistd.h.
14988
14989 * gmalloc.c: Test BROKEN_PROTOTYPES.
14990
149912001-11-03 Ken Raeburn <raeburn@gnu.org>
14992
14993 * lisp.h (CHECK_STRING_CAR): New macro.
14994 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
14995 treating XCAR and XCDR as lvalues.
14996 (openp): Use CHECK_STRING_CAR.
14997 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
14998
149992001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
15000
15001 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
15002 (SIGMASKTYPE): Define.
15003
15004 * syssignal.h (sigunblock): Don't define if already defined.
15005
150062001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15007
15008 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
15009 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
15010 Fix typos in comments.
15011
15012 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
15013 and #ifdef'd-out code.
15014 Fix and reindent comments.
15015
15016 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
15017
15018 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
15019 argument `i' in macros.
15020
15021 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
15022 `i' in macros.
15023
15024 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
15025 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
15026 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
15027 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
15028 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
15029 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
15030 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
15031 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
15032 in macros.
15033
15034 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
15035 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
15036 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
15037 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
15038 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
15039 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
15040 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
15041 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
15042 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
15043 (remove unused second argument).
15044
150452001-11-02 Stefan Monnier <monnier@cs.yale.edu>
15046
15047 * syntax.c (describe_syntax): New wrapper.
15048 (Finternal_describe_syntax_value): Rename from describe_syntax.
15049 Don't insert space at front and \n at the end.
15050 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
15051
15052 * regex.c (re_wctype): Try to fix some warnings.
15053 (regcomp, regexec): Don't forget the __restrict.
15054
150552001-11-02 Richard M. Stallman <rms@gnu.org>
15056
15057 * textprop.c (Fget_char_property): Doc fix.
15058
150592001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15060
15061 * process.c (Fstart_process): Add usage to doc-string.
15062
15063 * data.c (Fsetq_default): Ditto.
15064
15065 * callint.c (Finteractive): Ditto.
15066
150672001-11-01 Stefan Monnier <monnier@cs.yale.edu>
15068
15069 * macros.c: Don't include keymap.h any more.
15070
150712001-11-01 Richard M. Stallman <rms@gnu.org>
15072
15073 * data.c (Fmake_local_variable): Doc fix.
15074
15075 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
15076 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
15077
15078 * keymap.c (Fdescribe_buffer_bindings): Print character property
15079 bindings along with or instead of the buffer local map.
15080 Make the overriding maps override what they should.
15081
150822001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15083
15084 * window.c (grow_mini_window): Fix typo in comment.
15085
150862001-11-01 Gerd Moellmann <gerd@gnu.org>
15087
15088 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
15089 (XTset_vertical_scroll_bar): Likewise.
15090
15091 * xfns.c (x_build_heuristic_mask): Use four_corners_best
15092 instead of IMAGE_BACKGROUND.
15093
15094 * xfns.c (four_corners_best): Reindent.
15095
15096 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
15097 Handle :box so that it is possible to specify sexprs.
15098
150992001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
15100
15101 * s/hpux11.h: New file.
15102
151032001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15104
15105 * emacs.c (USAGE1): Show command line option --no-window-system
15106 instead of --no-windows in usage.
15107 (standard_args): Rename --no-windows to --no-window-system.
15108 (bug_reporting_address): Follow Emacs coding conventions.
15109
15110 * eval.c (Fcommandp): Doc fix.
15111 Change doc-string comments to `new style' [w/`doc:' keyword].
15112
15113 * frame.c (Fframe_live_p): Doc fix.
15114
15115 * buffer.c (selective-display-ellipses): Doc fix.
15116
151172001-10-31 Gerd Moellmann <gerd@gnu.org>
15118
15119 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
15120
15121 * xfaces.c (realize_x_face): If C is not a single-byte character,
15122 set the face's colors_copied_bitwise_p instead of the defaulted_p
15123 members which have a different meaning.
15124 (free_face_colors): Do nothing for a face whose colors have been
15125 copied bitwise.
15126
15127 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
15128
151292001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15130
15131 * marker.c, mocklisp.c: Change doc-string comments to `new style'
15132 [w/`doc:' keyword].
15133
151342001-10-31 Gerd Moellmann <gerd@gnu.org>
15135
15136 * fns.c (require_unwind): Return Lisp_Object.
15137
151382001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15139
15140 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
15141 (last-input-char): Revert doc-string to be the same as the
15142 doc-string of `last-input-event'.
15143
15144 * xdisp.c: Fix typos in comments.
15145
151462001-10-31 Gerd Moellmann <gerd@gnu.org>
15147
15148 * window.c (grow_mini_window): Handle case that the root
15149 window is already smaller than the nominal mininum height.
15150
151512001-10-30 Stefan Monnier <monnier@cs.yale.edu>
15152
15153 * emacs.c (main): Don't call keys_of_macros any more.
15154
15155 * lisp.h (keys_of_macros): Remove.
15156
15157 * macros.c (keys_of_macros): Remove.
15158
15159 * xfaces.c (Fface_attribute_relative_p): Declare args.
15160
151612001-10-30 Jason Rumney <jasonr@gnu.org>
15162
15163 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
15164 (enum_font_cb2): Ignore fonts with vertical orientation.
15165
151662001-10-30 Richard M. Stallman <rms@gnu.org>
15167
15168 * keyboard.c (Finput_pending_p): Doc fix.
15169
151702001-10-30 Gerd Moellmann <gerd@gnu.org>
15171
15172 * xterm.c (x_after_update_window_line): Don't run the code
15173 clearing in borders for rows whose visible height is 0.
15174
15175 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
15176 resized_p flag is set. If not set, use the much less flickering
15177 method previously used.
15178
15179 * dispnew.c (change_frame_size_1): Set frame's resized_p.
15180
15181 * frame.h (struct frame) <resized_p>: New member.
15182
15183 * lread.c (to_multibyte): Ensure read_buffer is at least twice
15184 as large as the number of bytes to convert.
15185
15186 * lread.c (to_multibyte): New function.
15187 (read1): Use it.
15188
151892001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
15190
15191 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
15192
151932001-10-30 Gerd Moellmann <gerd@gnu.org>
15194
15195 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
15196 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
15197 if the row's fill_line_p is set and drawing the last glyph with
15198 DRAW_IMAGE_{RAISED,SUNKEN}.
15199
15200 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
15201
152022001-10-29 Stefan Monnier <monnier@cs.yale.edu>
15203
15204 * xmenu.c: Include coding.h and charset.h.
15205 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
15206 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
15207 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
15208 Explicitly set wv->help. Use `TRUE' rather than `True'.
15209 (menu_help_callback): Use empty_string.
15210
15211 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
15212 (Fx_popup_dialog): Explicitly init f.
15213 (w32_menu_display_help): Use empty_string.
15214
152152001-10-29 Richard M. Stallman <rms@gnu.org>
15216
15217 * fns.c (Frequire): Detect recursive try to require the same
15218 feature 3 or more levels deep, and get error.
15219 (require_unwind): New subroutine.
15220 (require_nesting_list): New variable.
15221 (syms_of_fns): Init and staticpro it.
15222
15223 * print.c (print_object): Clarify indication of insertion type.
15224
152252001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
15226
15227 * coding.c (syms_of_coding): Document that locale-coding-system is
15228 used for decoding input on X.
15229
15230 * window.c (Fscroll_left, Fscroll_right): Doc fix.
15231
152322001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15233
15234 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
15235 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
15236
152372001-10-29 Gerd Moellmann <gerd@gnu.org>
15238
15239 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
15240 use NO_CURSOR if cursor_in_non_selected_windows is false.
15241
15242 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
15243 the slant attribute if FRAME is t.
15244
15245 * xfns.c (x_set_internal_border_width): Set frame garbaged
15246 when X window doesn't exist yet.
15247
15248 * xterm.c (x_after_update_window_line): Clear internal border
15249 in different circumstances.
15250
15251 * xterm.c (XTread_socket) <KeyPress>: Don't use
15252 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
15253 <handa@etl.go.jp>.
15254
152552001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
15256
15257 * m/ibms390.h: New file. From Adam Thornton
15258 <athornton@sinenomine.net>.
15259
152602001-10-28 Gerd Moellmann <gerd@gnu.org>
15261
15262 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
15263
15264 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
15265 a loop counter.
15266
152672001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15268
15269 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
15270
15271 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
15272 keyword].
15273 Fix typos in comments.
15274
15275 * emacs.c (bug_reporting_address): New function.
15276 Use it when displaying usage message.
15277
15278 * minibuf.c (read_minibuf): Remove unused external declaration of
15279 variable `Qread_only'.
15280
15281 * keymap.c (access_keymap): Remove unused variable `charset'.
15282
152832001-10-28 Miles Bader <miles@gnu.org>
15284
15285 * xfaces.c (merge_face_heights): Handle TO being relative as well.
15286 Remove #ifdef'd-out code.
15287 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
15288 (syms_of_xfaces): Initialize them.
15289
152902001-10-27 Jason Rumney <jasonr@gnu.org>
15291
15292 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
15293 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
15294 position using the system caret.
15295
15296 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
15297 (w32_system_caret_height, w32_system_caret_x)
15298 (w32_system_caret_y): New variables for tracking system caret.
15299 (w32_initialize): Initialize them.
15300 (x_display_and_set_cursor): Make system caret follow the active cursor.
15301
15302 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
15303 New messages types.
15304
15305 * w32term.c (note_mouse_highlight): Clear old help_echo.
15306
153072001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15308
15309 * xterm.c: Fix typo in a comment.
15310
15311 * emacs.c: Fix typos in comments.
15312 Remove unnecessary spaces.
15313 Change doc-string comments to `new style' [w/`doc:' keyword].
15314 (USAGE2): Fix typos in usage string.
15315
15316 * xterm.c: Fix typo in a comment.
15317
15318 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
15319 emacs.c.
15320
153212001-10-27 Gerd Moellmann <gerd@gnu.org>
15322
15323 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
15324 instead of 1/2 line_height in the heuristic for skipping
15325 farther backward when target_y was not reached.
15326
15327 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
15328 Display errno only if non-zero.
15329 (sound_warning): New function.
15330 (vox_configure): Don't treat failing to set sample rate as error.
15331 (various places): Improve error messages.
15332
153332001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
15334
15335 * fileio.c (Faccess_file): Run the argument filename through
15336 Fexpand_file_name, before using it.
15337
15338 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
15339 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
15340
153412001-10-26 Gerd Moellmann <gerd@gnu.org>
15342
15343 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
15344
15345 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
15346 Fix clearing in the case of scroll bars on the right.
15347
153482001-10-26 Juanma Barranquero <lektu@terra.es>
15349
15350 * w32gui.h (XImage): Add a dummy typedef.
15351
153522001-10-26 Gerd Moellmann <gerd@gnu.org>
15353
15354 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
15355
153562001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
15357
15358 * frame.c (Fframe_parameter): Fix last change.
15359
15360 * fileio.c: Revert last change (which removed old commented-out
15361 version of expand-file-name). Add a comment that explains why
15362 this old version should not be removed.
15363
153642001-10-25 Gerd Moellmann <gerd@gnu.org>
15365
15366 * frame.c (Fframe_parameter): Fix a bug whereby some
15367 ``artificial'' frame parameters, like `minibuffer' were not
15368 obtained by calling Fframe_parameters.
15369
15370 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
15371 cursor differently.
15372
15373 * xdisp.c (move_it_vertically_backward): Compute line height
15374 differently. Add heuristic to try to be more compatible to 20.x.
15375
153762001-10-25 Stefan Monnier <monnier@cs.yale.edu>
15377
15378 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
15379
15380 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
15381 boolean.
15382
153832001-10-25 Miles Bader <miles@gnu.org>
15384
15385 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
15386 BG is a pointer to a structure, not a structure.
15387 (gif_format, png_format): Add missing commas.
15388
153892001-10-24 Richard M. Stallman <rms@gnu.org>
15390
15391 * xfaces.c (Fface_attributes_as_vector): New function.
15392 (syms_of_xfaces): Defsubr it.
15393
153942001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15395
15396 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
15397 variable `area'.
15398
153992001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15400
15401 * search.c (scan_newline): Remove unused variable `selective_display'.
15402
154032001-10-25 Miles Bader <miles@gnu.org>
15404
15405 * dispextern.h (struct image): Add `background',
15406 `background_valid', and `background_transparent' fields.
15407 (image_background, image_background_transparent): New declarations.
15408 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
15409 * xfns.c (image_background, image_background_transparent)
15410 (four_corners_best): New functions.
15411 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
15412 (gs_format): Add `:background' entry.
15413 (lookup_image): Set IMG's background color if specified.
15414 (pbm_load, xbm_load_image, png_load): Set IMG's background field
15415 when appropriate.
15416 (x_clear_image_1): Reset `background_valid' and
15417 `background_transparent_valid' fields.
15418 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
15419 calculating it here. Set IMG's background_transparent field.
15420 (enum xpm_keyword_index): Add XPM_BACKGROUND.
15421 (enum png_keyword_index): Add PNG_BACKGROUND.
15422 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
15423 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
15424 (enum gif_keyword_index): Add GIF_BACKGROUND.
15425 (enum gs_keyword_index): Add GS_BACKGROUND.
15426 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
15427 Pre-calculate image background color where necessary.
15428 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
15429 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
15430 color to use for image glyph reliefs.
15431
154322001-10-24 Gerd Moellmann <gerd@gnu.org>
15433
15434 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
15435 in full-width rows.
15436
15437 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
15438 Fix clearing of area not covered by scroll bar.
15439
154402001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15441
15442 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
15443 and `real_start'.
15444 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
15445 (glyph_rect): Remove unused variable `area'.
15446
154472001-10-24 Gerd Moellmann <gerd@gnu.org>
15448
15449 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
15450
15451 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
15452 (row_containing_pos): Take additional argument DY.
15453 Treat rows ending in middle of char differently.
15454 (display_line): Handle tabs on window systems differently.
15455
15456 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
15457 with additional argument.
15458
15459 * dispextern.h (row_containing_pos): Adjust prototype.
15460
15461 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
15462 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
15463 (try_window_id, try_window_reusing_current_matrix)
15464 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
15465 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
15466
154672001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15468
15469 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
15470 gnuemacs).
15471 (HAVE_BOXES): Fix typo in comment.
15472 (push_menu_pane): Fix typo in comment.
15473
15474 * xdisp.c: (display_prop_string_p): Remove unused local declaration
15475 of `Qwhen'.
15476 (single_display_prop_string_p): Remove unused local declarations
15477 of `Qwhen' and `Qmargin'.
15478 (string_buffer_position): Remove unused variable `around'.
15479 (store_frame_title): Remove unused variable `width'.
15480
15481 * window.c: Don't define max.
15482 (coordinates_in_window): Remove unused variable `uy'.
15483
15484 * widget.c: Don't define max.
15485
15486 * process.c: Don't define max.
15487 (create_process): Remove unused variable `buffer'.
15488
154892001-10-23 Gerd Moellmann <gerd@gnu.org>
15490
15491 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
15492
154932001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
15494
15495 * xfaces.c (Finternal_set_lisp_face_attribute)
15496 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
15497 frame is on a windowed display.
15498
154992001-10-23 Gerd Moellmann <gerd@gnu.org>
15500
15501 * dispnew.c (sync_window_with_frame_matrix_rows):
15502 Fix handling of windows which aren't full-width, fix handling
15503 of marginal areas.
15504
15505 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
15506
155072001-10-23 Andreas Schwab <schwab@suse.de>
15508
15509 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
15510 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
15511
155122001-10-23 Gerd Moellmann <gerd@gnu.org>
15513
15514 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
15515 REAL_END. Notice if cursor gets overwritten.
15516 (notice_overwritten_cursor): Take X positions as parameters.
15517 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
15518 around call to x_draw_glyphs.
15519
155202001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15521
15522 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
15523 instead of C) and usage.
15524
15525 * editfns.c (char-to-string): Fix argument names (use CHAR instead
15526 of C) and usage.
15527
15528 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
15529 `left', `max_width' and `max_height'.
15530
155312001-10-23 Gerd Moellmann <gerd@gnu.org>
15532
15533 * xdisp.c (display_line): For a tab continued to the next line,
15534 set row's ends_in_middle_of_char_p.
15535
155362001-10-22 Gerd Moellmann <gerd@gnu.org>
15537
15538 * xdisp.c (display_line): Fix computation of continuation lines
15539 width for TABs.
15540
155412001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15542
15543 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
15544 `Qlaplace'.
15545
15546 * fileio.c: Remove unused code.
15547
155482001-10-22 Miles Bader <miles@gnu.org>
15549
15550 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
15551 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
15552 Remove `DOC_STRINGS_IN_COMMENTS' cases.
15553
155542001-10-21 Jason Rumney <jasonr@gnu.org>
15555
15556 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
15557
155582001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
15559
15560 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
15561 (Finsert_string): Avoid the multi-line string literals warning.
15562
155632001-10-22 Miles Bader <miles@gnu.org>
15564
15565 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
15566 (Fdocumentation): Don't use it.
15567 (syms_of_doc): Don't initialize it.
15568
15569 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
15570 * print.c (Fwith_output_to_temp_buffer): Likewise.
15571 * window.c (Fsave_window_excursion): Likewise.
15572 * editfns.c (Fsave_excursion, Fsave_current_buffer)
15573 (Fsave_restriction): Likewise.
15574 * eval.c (Frun_hooks, Frun_hook_with_args)
15575 (Frun_hook_with_args_until_failure)
15576 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
15577 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
15578 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
15579 (Funwind_protect, Fcondition_case): Likewise.
15580 * coding.c (Ffind_operation_coding_system): Likewise.
15581 * keyboard.c (Ftrack_mouse): Likewise.
15582
155832001-10-21 Miles Bader <miles@gnu.org>
15584
15585 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
15586 (Fmake_hash_table): Add usage: string to doc string.
15587 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
15588 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
15589 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
15590 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
15591 (Fml_prefix_argument_loop): Likewise.
15592
155932001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15594
15595 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
15596
15597 * sysdep.c (init_sys_modes): Change doc-string comments to `new
15598 style' [w/`doc:' keyword].
15599
15600 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
15601 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
15602 comments to `new style' [w/`doc:' keyword].
15603
156042001-10-21 Jason Rumney <jasonr@gnu.org>
15605
15606 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
15607
15608 * w32term.c (remember_mouse_glyph): New function.
15609 (w32_mouse_position): Use it.
15610 (note_mouse_movement): If the mouse moved off the glyph, remember
15611 its new position.
15612
15613 * w32term.h (struct w32_output): Correct spelling of x_compatible.
15614 (w32_display_info): Add mouse_face_overlay.
15615
15616 * w32term.c (notice_overwritten_cursor): Renamed from
15617 note_overwritten_text_cursor. Rewritten to take glyph widths into
15618 account.
15619 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
15620 (fast_find_string_pos): New function.
15621 (fast_find_position): Return the correct vpos. Add parameter
15622 STOP. In the final row, stop before glyphs having STOP as object.
15623 Don't consider glyphs that are not from a buffer.
15624 (fast_find_position) [0]: Add a presumably more correct version
15625 for after 21.1.
15626 (expose_window_tree, expose_frame): Don't compute intersections here.
15627 (expose_window): Do it here instead.
15628 (expose_window_tree, expose_window, expose_line): Return 1 when
15629 overwriting mouse-face.
15630 (expose_window): If W is the window currently being updated, mark
15631 the frame garbaged.
15632 (expose_frame): If mouse-face was overwritten, redo it.
15633 (x_use_underline_position_properties): New variable.
15634 (syms_of_xterm): DEFVAR_BOOL it.
15635 (x_draw_glyph_string): Add comment to use it in future.
15636 (x_draw_glyph_string): Restore clipping after drawing box.
15637 Fix a computation of the underline position.
15638 (w32_get_glyph_string_clip_rect): Minor cleanup.
15639 (x_fill_stretch_glyph_string): Remove an assertion.
15640 (x_produce_glyphs): Don't convert multibyte characters
15641 to unibyte characters in unibyte buffers.
15642 (cursor_in_mouse_face_p): New function.
15643 (x_draw_stretch_glyph_string): Use it to choose a different GC
15644 when drawing a cursor within highlighted text. Don't draw
15645 background again if it has already been drawn.
15646 (x_draw_glyph_string_box): Don't draw a full-width
15647 box just because the glyph row's full_width_p flag is set.
15648 (x_draw_glyphs): Fix computation of rightmost x for
15649 full-width rows.
15650 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
15651 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
15652 change bottom shadow accordingly. Some cleanup.
15653 (x_update_window_end): Handle overwritten mouse face
15654 also for tool bar windows.
15655 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
15656 DRAW is DRAW_IMAGE_RAISED.
15657 (clear_mouse_face): Return 1 if text with mouse face was
15658 actually redrawn. Make the function static.
15659 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
15660 optimize away highlighting if we pass over that same overlay again.
15661 (note_mouse_highlight): Call mouse_face_overlay_overlaps
15662 to detect a case where we have to highlight a different region
15663 despite not having left the currently highlighted region.
15664 Set mouse_face_overlay in the x_display_info. Avoid changing the
15665 mouse pointer shape when show_mouse_face has already done it, or
15666 there is no need. Handle mouse-face and help-echo in strings.
15667 (glyph_rect): New function.
15668 (w32_mouse_position): Use it to raise the threshold for mouse
15669 movement event generation.
15670 (w32_initialize_display_info): Initialize the x_display_info's
15671 mouse_face_overlay.
15672 (w32_set_vertical_scroll_bar): Don't clear a zero height
15673 or width area.
15674 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
15675 a widget to zero height.
15676
15677 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
15678 Protect unibyte strings created by replacing their multibyte
15679 equivalents in menu_items.
15680 (w32_menu_show): Don't overwrite an item's name with its key
15681 description in case the description is a multibyte string.
15682 (single_submenu): Some cleanup.
15683
15684 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
15685 (postprocess_image): New function.
15686 (lookup_image): Call it for all image types except PostScript.
15687 (x_kill_gs_process): Call postprocess_image.
15688 (tiff_error_handler, tiff_warning_handler): New functions.
15689 (tiff_load): Install them as handlers.
15690 (x_kill_gs_process): Recognize if someone has cleared the image
15691 cache under us.
15692 (valid_image_p): Protect better against invalid image
15693 specifications. Previous code could signal an error.
15694 (Fx_hide_tip, Fshow_tip): Doc fix.
15695 (Fv_max_tooltip_size): New variable.
15696 (syns_of_xfns): DEFVAR_LISP it.
15697 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
15698 window buffer to *tip* right after creating the frame. Set frame's
15699 window_width. Use a maximum tooltip size specified by
15700 Vx_max_tooltip_size, if that has valid contents.
15701 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
15702 Make sure the tooltip is completely visible.
15703 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
15704 (Fx_create_frame): Adjust the frame's height for presence
15705 of the tool bar before calling x_figure_window_size.
15706 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
15707 when the window gets smaller.
15708 (x_set_foreground_color): Set frame's cursor_pixel.
15709 (x_set_foreground_color, x_set_background_color): Cleaned up.
15710 (x_set_font): Handle case of x_new_fontset returning the same name
15711 as before, although there was a change in fontsets.
15712
157132001-10-21 Miles Bader <miles@gnu.org>
15714
15715 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
15716 (Flogxor): Add usage: string to doc string.
15717 * charset.c (Fstring): Likewise.
15718 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
15719 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
15720
157212001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15722
15723 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
15724
15725 * alloc.c: Reindent DEFUNs with doc: keywords.
15726
15727 * abbrev.c (Finsert_abbrev_table_description): Reindent.
15728
15729 * frame.c: Change doc-string comments to `new style' [w/`doc:'
15730 keyword].
15731
15732See ChangeLog.9 for earlier changes.
15733
15734;; Local Variables:
15735;; coding: iso-2022-7bit
15736;; End:
15737
15738 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
15739 Copying and distribution of this file, with or without modification,
15740 are permitted provided the copyright notice and this notice are preserved.
15741
15742;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4