* xfns.c (x_window_to_frame, x_any_window_to_frame)
[bpt/emacs.git] / src / ChangeLog
CommitLineData
10b43ac3
JD
12004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2
3 * xfns.c (x_window_to_frame, x_any_window_to_frame)
4 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
5 (x_top_window_to_frame): Return 0 if wdesc is None.
6
2ee3b79e
RS
72004-08-22 Richard M. Stallman <rms@gnu.org>
8
9 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
10 HAVE_TERMIOS]: If there's no char for this signal, drop through
11 and use system calls.
12
13 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
14
9a1ba2ea
KS
152004-08-20 Kim F. Storm <storm@cua.dk>
16
17 * process.c (wait_reading_process_output): Rename from
18 wait_reading_process_input. All uses changed.
19 (wait_reading_process_output_1): Rename from
20 wait_reading_process_input_1. All uses changed.
21
22 * dispnew.c (Fsleep_for): Remove obsolete code.
23
295f3b30
KH
242004-08-20 Kenichi Handa <handa@m17n.org>
25
26 * syntax.c (skip_chars): Fix for unibyte case.
27
27615979
SM
282004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
29
30 * syntax.c (char_quoted): Mixup byte/char pos.
31 (back_comment): Fixup globals in all cases.
32
00267f94
JD
332004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
34
35 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
36 passing it to gtk_window_set_title.
37
2439909e
KS
382004-08-19 Kim F. Storm <storm@cua.dk>
39
6ba0f14c
KS
40 * process.c (wait_reading_process_input): Clean up.
41 Add wait_for_cell, wait_proc, and just_wait_proc args
42 to avoid overloading `read_kbd' and `do_display' args.
43 Change read_kbd arg to int. All callers changed.
44
2439909e
KS
45 * process.c (process_send_signal): Use CDISABLE.
46
47 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
48
101c421e
KS
492004-08-18 Kim F. Storm <storm@cua.dk>
50
51 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
52 forward to wait_reading_process_input via DO_DISPLAY arg.
53 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
54 object, only process output from that process; also inhibit
55 running timers if DO_DISPLAY==-2.
56
c438dc33
KS
572004-08-17 Kim F. Storm <storm@cua.dk>
58
59 * process.c (process_send_signal): Fix last change--use
60 _POSIX_VDISABLE instead of CVDISABLE when available.
61
8afc13c6
RS
622004-08-16 Richard M. Stallman <rms@gnu.org>
63
64 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
65 Set VQUIT and VINTR chars to the standard ones if they are unset.
66 [AIX]: Don't do that here. And don't force VINTR to standard
67 when SIGNALS_VIA_CHARACTERS.
68
c438dc33 69 * process.c (process_send_signal)
8afc13c6
RS
70 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
71 Do nothing if the character is CVDISABLE.
72
73 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
74
c438dc33 75 * intervals.c (move_if_not_intangible):
8afc13c6
RS
76 Force POSITION to be between BEGV and ZV.
77
6dad1714
JPW
782004-08-14 John Paul Wallington <jpw@gnu.org>
79
80 * buffer.c (Frestore_buffer_modified_p): Doc fix.
81
82 * fileio.c (Fread_file_name): Doc fix.
83
84 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
85
2bd77330
LT
862004-08-09 Luc Teirlinck <teirllm@auburn.edu>
87
88 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
89
c90e7e43
LT
902004-08-08 Luc Teirlinck <teirllm@auburn.edu>
91
92 * keyboard.c: Declare Qdisabled_command_function instead of
8392e138 93 Qdisabled_command_hook.
c90e7e43 94 (Fcommand_execute): Use Qdisabled_command_function instead of
8392e138 95 Qdisabled_command_hook.
c90e7e43
LT
96 (syms_of_keyboard): Ditto.
97
81909a1a
LT
982004-08-07 Luc Teirlinck <teirllm@auburn.edu>
99
100 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
101 (syms_of_keymap) <key-translation-map>: Doc fixes.
102
0cedd530
SM
1032004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
104
1725a7c9
SM
105 * window.c (window_list_1): YAILOM.
106
0cedd530
SM
107 * fileio.c (make_temp_name): Handle multibyte prefixes.
108
2515a131
LT
1092004-08-06 Luc Teirlinck <teirllm@auburn.edu>
110
111 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
112 Doc fix.
113
c8b20fb7
KH
1142004-08-03 Kenichi Handa <handa@m17n.org>
115
116 * coding.c (decode_coding_string): Adjust coding->consumed, and
117 etc. with shrinked_bytes.
118
fb8b092b
KS
1192004-08-03 Kim F. Storm <storm@cua.dk>
120
121 * indent.c (compute_motion): Fix check for full width window
122 in non-window case. Do not count left truncation glyph on
123 window systems.
124
df133612
LT
1252004-08-02 Luc Teirlinck <teirllm@auburn.edu>
126
127 * data.c (Finteractive_form): Doc fix.
128
0f7a93c1
KS
1292004-08-02 Kim F. Storm <storm@cua.dk>
130
131 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
132 properly accounting for continuation glyph on non-window systems.
133 (Fcompute_motion): Use actual window width if WIDTH is nil, and
134 actual window width/height if TOPOS is nil, properly accounting for
135 continuation glyphs on non-window systems, and optional header lines.
136 (vmotion): Let compute_motion calculate actual window width.
137
138 * window.c (window_scroll_line_based): Let compute_motion
139 calculate actual window width.
140
f491e1ed
KS
1412004-08-02 Kim F. Storm <storm@cua.dk>
142
143 * process.c (read_process_output): Use whole read buffer.
144 Don't trigger adaptive read buffering on errors.
145
83f64226
LT
1462004-07-31 Luc Teirlinck <teirllm@auburn.edu>
147
148 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
149
150 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
151
152 * callint.c (Fcall_interactively): Doc fix.
153
8afc13c6
RS
1542004-07-30 Richard M. Stallman <rms@gnu.org>
155
156 * abbrev.c (Fexpand_abbrev): Undo previous change.
157
7c111482
KS
1582004-07-30 Kim F. Storm <storm@cua.dk>
159
160 * editfns.c (Fformat): Allocate extra (dummy) element in info.
161
ee945d08
LT
1622004-07-28 Luc Teirlinck <teirllm@auburn.edu>
163
164 * eval.c (Fdefvar, Fdefconst): Doc fixes.
165
3f911c94
KS
1662004-07-27 Kim F. Storm <storm@cua.dk>
167
168 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
169 we have ensured that the glyph fits on the current line (or returned
170 MOVE_LINE_CONTINUED otherwise).
171
f29ff8c7
KS
1722004-07-26 Kim F. Storm <storm@cua.dk>
173
174 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
175 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
176 if target position is at end of display line but char is not a newline.
177
81159bb9
RS
1782004-07-25 Richard M. Stallman <rms@gnu.org>
179
ab431b61
RS
180 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
181 instead of ON_VERTICAL_BORDER, when on scroll bar.
182 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
183
184 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
185
f29ff8c7 186 * window.c (Fcoordinates_in_window_p):
81159bb9
RS
187 Take account of FRAME_INTERNAL_BORDER_WIDTH.
188
189 * alloc.c (check_cons_list): New function (contents commented out).
190
fc820cc5
LT
1912004-07-24 Luc Teirlinck <teirllm@auburn.edu>
192
193 * xfaces.c (Fcolor_supported_p): Doc fix.
194
195 * frame.c (Fselect_frame, Fset_frame_selected_window)
196 (Fframe_visible_p, Fraise_frame): Doc fixes.
197
289978b5
LT
1982004-07-24 Richard M. Stallman <rms@gnu.org>
199
7630911d
RS
200 * keyboard.h (not_single_kboard_state): Declared.
201
202 * fileio.c (Fwrite_region): Doc fix.
203
204 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
205
206 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
207 only when a real abbrev is present.
208
289978b5
LT
209 * xfns.c (x_icon_verify): New function.
210 (Fx_create_frame): Use it.
211
63cc10ae
KS
2122004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
213
214 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
215
36f826d4
KS
2162004-07-21 Kim F. Storm <storm@cua.dk>
217
218 * window.h (struct glyph_matrix): New members nrows_scale_factor
219 and ncols_scale_factor.
220
221 * window.c (make_window): Initialize nrows_scale_factor and
222 ncols_scale_factor members.
223
224 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
225 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
226 (required_matrix_height): Apply nrows_scale_factor.
227 (required_matrix_width): Apply ncols_scale_factor.
228
229 * xdisp.c (display_line): Increment nrows_scale_factor and set
230 fonts_changed_p if past last allocated row.
231 (append_glyph, append_composite_glyph, produce_image_glyph)
232 (append_stretch_glyph): Increment ncols_scale_factor and set
233 fonts_changed_p if current area is full.
234
5fc1c546
JD
2352004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
236
237 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
238
cb7516e5
LT
2392004-07-19 Luc Teirlinck <teirllm@auburn.edu>
240
241 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
242 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
243 (Fset_window_start, Fscroll_up, Fscroll_down)
244 (Fother_window_for_scrolling, Fscroll_other_window)
245 (Fsave_window_excursion, Fset_window_vscroll)
246 (syms_of_window) <window-size-fixed>: Doc fixes.
247
dda741ec
JR
2482004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
249
250 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
251 ENCODE_SYSTEM for filenames.
252
bfcf6608
ST
2532004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
254
255 * mac.c (sys_select): Block input around call to
256 ReceiveNextEvent to prevent breakage. Correctly handle
257 blocking on event queue only by calling ReceiveNextEvent
258 instead of select (since GUI events aren't on an fd).
259 (sys_read): Remove function
260 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
261
e082ac9d
ST
2622004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
263
264 * mac.c (sys_select): Redo sys_select to use alarm-based
cb7516e5 265 polling instead of 1 sec timeouts (like solaris).
e082ac9d 266
cb7516e5 267 * macterm.c (x_make_frame_visible): Comment in polling on
e082ac9d
ST
268 frame creation.
269
270 * keyboard.c: Undef SIGIO on Carbon
271
272 * atimer.c (alarm_signal_handler): Call alarm handlers after
273 scheduling.
274
275 * eval.c (Feval): Remove quit_char test
276
277 * process.c (wait_reading_process_input): Remove clearing
278 stdin for select call on process input.
279
4b9da0fb
LT
2802004-07-18 Luc Teirlinck <teirllm@auburn.edu>
281
1204e81c
LT
282 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
283 capitalization error in docstring.
4b9da0fb 284
26503ad2
JB
2852004-07-17 Juanma Barranquero <lektu@terra.es>
286
287 * keyboard.c (not_single_kboard_state): Do nothing unless
288 MULTI_KBOARD is defined.
289
3751eb00
RS
2902004-07-17 Richard M. Stallman <rms@gnu.org>
291
292 * window.c (coordinates_in_window): Inside the window but outside
293 its box to the L or R, return ON_VERTICAL_BORDER.
294 (window_list_1): Rotate the list to start with WINDOW.
295
296 * print.c (print_preprocess): Test for print_depth at limit
297 before entering in being_printed.
298
299 * keyboard.c (not_single_kboard_state): New function.
300 (stuff_buffered_input): Now no-op only if no SIGTSTP.
301
302 * frame.c (Fdelete_frame): If we're in single_bboard_state on
303 this kboard, and we delete its last frame, go to any_kboard_state.
304
305 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
306
62eb6ca9
JR
3072004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
308
309 * w32fns.c (Fx_file_dialog): Encode strings in system coding
310 system before passing them to OS functions for display.
311
0f6af254
DK
3122004-07-15 David Kastrup <dak@gnu.org>
313
f9253326
KS
314 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
315 Apparently fixes an abort condition.
0f6af254 316
386c8f42
LT
3172004-07-14 Luc Teirlinck <teirllm@auburn.edu>
318
319 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
320 instead of a cons.
321
366511da
MB
3222004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
323
324 * keyboard.c (echo_dash): Do nothing if there already is a dash
325 at the end of the echo string.
326
f85409d3
KS
3272004-07-12 Kim F. Storm <storm@cua.dk>
328
329 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
330 if GC_MARK_STACK.
331
0ba2e87b
LT
3322004-07-10 Luc Teirlinck <teirllm@auburn.edu>
333
da38045d
LT
334 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
335
0ba2e87b
LT
336 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
337 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
338 (Freplace_buffer_in_windows, Fset_window_buffer)
339 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
340 (syms_of_window): Expand docstring of `display-buffer-function'.
341
5668fbb8
LT
3422004-07-09 Luc Teirlinck <teirllm@auburn.edu>
343
344 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
345 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
346 that time values of the type (HIGH . LOW) are considered obsolete.
347
a085bf9d
LT
3482004-07-06 Luc Teirlinck <teirllm@auburn.edu>
349
669de2fb
LT
350 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
351 docstring.
352
bac66325 353 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
a085bf9d 354
8e975df9
JPW
3552004-07-06 John Paul Wallington <jpw@gnu.org>
356
357 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
358
fa164e6a
JPW
359 * fns.c (Fclear_string): Signal an error if STRING is not a string.
360
2bac9bb1
JD
3612004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
362
363 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
364 instead of CGMainDisplayID (only in OSX 10.2 and later).
365
316ef0dc
JPW
3662004-07-04 John Paul Wallington <jpw@gnu.org>
367
368 * fileio.c (read_file_name_completion_ignore_case): New variable.
369 (syms_of_fileio): Declare and initialise it.
370 (Fread_file_name): Bind `completion-ignore-case' to respect it.
371
2a1a35c6
EZ
3722004-07-03 Eli Zaretskii <eliz@gnu.org>
373
374 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
375 for event.x and event.y.
376
33a72331
KH
3772004-07-01 Kenichi Handa <handa@m17n.org>
378
379 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
380 after getting a new string by pre-write-conversion.
381
07a6ab76
SM
3822004-06-30 Stefan <monnier@iro.umontreal.ca>
383
384 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
385 (x_calc_absolute_position): Remove unused var `child'.
386
387 * xfaces.c (x_supports_face_attributes_p)
388 (Fdisplay_supports_face_attributes_p): YAILOM.
389 (tty_supports_face_attributes_p): Remove unused var `i'.
390
391 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
392 back_unibyte_ok.
393
394 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
395
396 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
397
398 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
399
f96ec754
AS
4002004-06-30 Andreas Schwab <schwab@suse.de>
401
402 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
403 (Finit_image_library): Pass LIBRARIES through to
404 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
405 (lookup_image_type): Pass Qnil as second argument to
406 Finit_image_library.
407
408 * lisp.h: Declare Finit_image_library.
409
59feca74 4102004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
c8d09ad8 411
31983645
AS
412 * macterm.c (do_window_activate, do_window_deactivate): Remove.
413 (XTread_socket): Send mouse button events to the toolbox
414 dispatcher even when the mouse is grabbed. Don't process window
415 activate events for non-Emacs windows. Replace function calls to
416 do_window_activate and do_window_deactivate with their contents.
417 Reset mouse grabbing status when a window is deactivated.
59feca74 418
c61278bb
ST
4192004-06-29 Steven Tamm <steventamm@mac.com>
420
421 * macterm.c (mac_get_emulated_btn)
422 (mac_event_to_emacs_modifiers): Fix emulated mouse button
423 support to correctly mask out modifiers.
424
c3762cbd
DK
4252004-06-29 David Kastrup <dak@gnu.org>
426
427 * search.c (Fset_match_data): Allow buffer before end of list
428 which can happen if set-match-data is using a pre-consed list.
429
c61278bb 4302004-06-28 Steven Tamm <steventamm@mac.com>
e439b925
ST
431
432 * macterm.c (XTread_socket): Correctly set the frame position
433 after the window is moved.
434
74cdfe05
JD
4352004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
436
437 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
438 gpix and gmask just before return to avoid memory leak.
03ecb80f
JD
439 (xg_get_image_for_pixmap): Add workaround for monochrome displays
440 so insensitive and activated icons look ok.
74cdfe05 441
ef544dc8
JR
4422004-06-27 Jason Rumney <jasonr@gnu.org>
443
444 * w32fns.c (file_dialog_callback): Disable edit control if set
445 to directories only on CDN_INITDONE message.
446 (Fx_file_dialog): Default to directories only when prompt starts
447 with "Dired".
448
7b7990cc
KS
4492004-06-25 Kim F. Storm <storm@cua.dk>
450
451 * alloc.c (allocate_misc): Update total_free_markers.
452 (free_misc): New function.
453 (safe_alloca_unwind, free_marker): Use it.
454
455 * lisp.h (free_misc): Add prototype.
456
457 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
458
d8c379f8
RS
4592004-06-24 Richard M. Stallman <rms@gnu.org>
460
461 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
462 (syms_of_emacs): Lisp variables deleted.
463
559cdd07
DK
4642004-06-23 David Kastrup <dak@gnu.org>
465
94939b84
DK
466 * search.c (Freplace_match): Adjust the match-data more thoroughly
467 when replacing strings in the buffer.
468 (Fmatch_data): When INTEGERS is non-nil and the last match was in
469 a buffer, add the buffer as last element to the match data.
470 (Fset_match_data): If an additional element of the match-data is a
471 buffer, restore it to last_thing_searched.
c8d09ad8 472 (save_search_regs): Save last_thing_searched as part of the match data.
559cdd07
DK
473 (restore_match_data): Restore it again.
474
dce417e7
LT
4752004-06-23 Luc Teirlinck <teirllm@auburn.edu>
476
477 * keymap.c (Ftext_char_description): Doc fix.
478 * doc.c (Fsnarf_documentation): Doc fix.
479
ef54b2d0
KS
4802004-06-22 Kim F. Storm <storm@cua.dk>
481
b5bc4d05
KS
482 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
483
ef54b2d0
KS
484 * lisp.h (struct Lisp_Save_Value): New member dogc.
485 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
486 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
487 (SAFE_FREE_LISP): New macro.
488
489 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
490 (make_save_value): Init new dogc member.
491 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
492
493 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
494 SAFE_FREE_LISP macros.
495
3d33d993
KS
4962004-06-22 Kim F. Storm <storm@cua.dk>
497
498 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
499 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
500 in that memory area are unknown to GC. Add comments.
501
502 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
503
5c917f98
KS
5042004-06-21 Kim F. Storm <storm@cua.dk>
505
506 * lisp.h (MAX_ALLOCA): Define here.
507 (safe_alloca_unwind): Add prototype.
508 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
509
510 * alloc.c (safe_alloca_unwind): New function.
511
512 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
513
514 * charset.c (Fstring): Use SAFE_ALLOCA.
515
516 * coding.c (MAX_ALLOCA): Remove define.
517
518 * data.c (MAX_ALLOCA): Remove define.
519 (Faset): Use SAFE_ALLOCA.
520
521 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
522
523 * fns.c (string_make_multibyte, string_to_multibyte)
524 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
525 (MAX_ALLOCA): Remove define.
526 (Fbase64_encode_region, Fbase64_encode_string)
527 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
528 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
529 memory leak if encoding fails.
530
531 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
532
9a09408e
EZ
5332004-06-21 Eli Zaretskii <eliz@gnu.org>
534
535 * print.c (Fwith_output_to_temp_buffer): Doc fix.
536
376de739
RS
5372004-06-20 Richard M. Stallman <rms@gnu.org>
538
539 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
540
541 * search.c (match_limit): Cleaner err msg when no match data available.
542
543 * window.c (syms_of_window): Doc fix.
544
545 * keyboard.c (command_loop_1): Handle values `only' and `identity'
546 for Vtransient_mark_mode.
547
548 * buffer.c (syms_of_buffer): Doc fix.
549
acd81db9
DK
5502004-06-21 David Kastrup <dak@gnu.org>
551
552 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
553 and unbinding of `case-fold-search' according to
554 `completion-ignore-case' around calls of string-match and
555 predicates, respectively. Should give satisfactory performance
556 in all relevant cases.
557
f303762d
JD
5582004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
559
95911c74
JD
560 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
561 clip_x/y_origin.
562
a6cb6b78
JD
563 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
564
f303762d
JD
565 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
566
567 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
568 on Mac OSX.
569
bbdb2684
LT
5702004-06-16 Luc Teirlinck <teirllm@auburn.edu>
571
572 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
573
5ea48b1c
KS
5742004-06-16 Kim F. Storm <storm@cua.dk>
575
576 * dispextern.h (Vimage_types): Remove extern.
577
803aac3e
MB
5782004-06-16 Miles Bader <miles@gnu.org>
579
580 * image.c (lookup_image_type): Initialize image type if necessary.
581
cdc97764
KS
5822004-06-15 Kim F. Storm <storm@cua.dk>
583
c4a5739c
KS
584 * xdisp.c (try_cursor_movement): Exclude header line from scroll
585 margin at top of window.
586 (try_window_reusing_current_matrix): Calculate proper cursor position
587 after scrolling up with non-zero scroll margin, as the old cursor
588 position corresponds to value of PT before executing this command.
589 (try_window_id): Consider scroll margin at bottom of window too;
590 otherwise we fail to scroll when hl-line-mode is enabled.
591
cdc97764
KS
592 * syntax.c (skip_chars): Only recognize [:class:] when it has the
593 proper format and class is a lower-case word.
594
5b166323
JD
5952004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
596
597 * gtkutil.c (xg_get_image_for_pixmap): New function.
c8d09ad8 598 (xg_get_gdk_pixmap_and_mask): Remove.
5b166323
JD
599 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
600 xg_get_gdk_pixmap_and_mask.
cdc97764 601
5b166323
JD
602 * xterm.h (struct x_display_info): Typo in comment fixed.
603
1ebd4f78
JB
6042004-06-14 Juanma Barranquero <lektu@terra.es>
605
606 * dispextern.h (Vimage_types): Make it conditional on
607 HAVE_WINDOW_SYSTEM.
608
609 * image.c (Vimage_types): Move from xdisp.c.
610 (Vimage_type_cache): New variable.
611 (define_image_type): New argument indicating whether an image
612 library was loaded; cache loaded status and return t on success,
613 nil otherwise.
614 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
615 (w32_delayed_load): New function to load an image library from a
616 list of possible filenames.
617 (init_xpm_functions, init_png_functions, init_jpeg_functions)
618 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
c8d09ad8 619 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
1ebd4f78
JB
620 (Finit_image_library): New function, extracted from `init_image'.
621 Try to initialize an image library on demand and cache whether we
622 were successful or not.
623 (syms_of_image): Initialize `Vimage_types' and
624 `Vimage_type_cache'. Add recognized image types to Vimage_types.
625 Export `init-image-library'.
626 (init_image): Remove initialization of all image types, except xbm
627 and pbm.
628
629 * xdisp.c (Vimage_types): Delete (moved to image.c).
630
904ee128
AS
6312004-06-14 Andreas Schwab <schwab@suse.de>
632
633 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
634 Avoid calling specbind when completion-regexp-list is empty.
635
092de21d
RS
6362004-06-13 Richard M. Stallman <rms@gnu.org>
637
638 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
639 (re_wctype, re_iswctype, re_wctype_to_bit):
640 Non-function definitions moved here from regex.c.
1ebd4f78 641
092de21d
RS
642 * regex.c (re_wctype, re_iswctype): Function defs longer static.
643 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
644 (re_wctype, re_iswctype, re_wctype_to_bit):
645 Non-function definitions moved to regex.h.
646
647 * window.c (Fselect_window): Doc fix.
648
649 * syntax.c: Include regex.h.
650 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
651 If requested, make a list of classes, then check the scanned
652 chars for membership in them.
653 (in_classes): New function.
654 Doc fix.
655
656 * keyboard.c (cmd_error): Don't call any_kboard_state
657 if inside a recursive edit level.
658
6592004-06-13 Lorentey K\e,Aa\e(Broly <lorentey@elte.hu>
660
661 * keyboard.c (command_loop): Call any_kboard_state before
662 command_loop_2 when at top level.
663
3ebc0939
AS
6642004-06-13 Andreas Schwab <schwab@suse.de>
665
cea5d0d4
AS
666 * print.c (print_object): Always use %ld for printing EMACS_INT.
667
668 * keyboard.c (cancel_hourglass_unwind): Return a value.
669 (modify_event_symbol): Always use %ld for printing EMACS_INT.
670 (Fexecute_extended_command): Likewise.
671
672 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
673 avoid clashes.
674 (SYNTAX): Likewise.
675 (SYNTAX_WITH_FLAGS): Likewise.
676 (SYNTAX_MATCH): Likewise.
677
678 * syntax.c (char_quoted): Avoid warning about undefined operation.
679 (find_defun_start): Likewise.
680 (scan_lists): Likewise.
681 (INC_FROM): Likewise.
682 (scan_sexps_forward): Likewise.
683
be8c4ce4
AS
684 * image.c: Include <ctype.h>.
685
3ebc0939
AS
686 * xfaces.c (face_attr_equal_p): Declare parameters.
687
6fb41b5b
KH
6882004-06-13 Kenichi Handa <handa@m17n.org>
689
690 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
691
fc3095ce
EZ
6922004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
693
694 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
695
66189a40
KH
6962004-06-12 Kenichi Handa <handa@m17n.org>
697
698 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
699 ccl_prog_stack_struct and update it.
700 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
701 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
702 ccl->eof_ic on EOF.
703 (ccl_debug_hook): New function.
704 (struct ccl_prog_stack): New member eof_ic.
705 (ccl_driver): Handle EOF in subrountine call correctly.
706
7072004-06-11 Kenichi Handa <handa@m17n.org>
708
709 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
710
1da71023
KS
7112004-06-11 Kim F. Storm <storm@cua.dk>
712
713 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
714
e9efcef4
JB
7152004-06-11 Juanma Barranquero <lektu@terra.es>
716
717 * keyboard.c (Fposn_at_point): Doc fix.
718
9b9ceb61
DK
7192004-06-11 David Kastrup <dak@gnu.org>
720
721 * search.c (match_limit): Don't flag an error if match-data
722 exceeding the allocated search_regs.num_regs gets requested, just
723 return Qnil.
724
6e87ac8f
MB
7252004-06-08 Miles Bader <miles@gnu.org>
726
727 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
728
0b0dea7b
JB
7292004-06-07 Juanma Barranquero <lektu@terra.es>
730
731 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
732 (Fcurrent_time_string, Fcurrent_time_zone)
733 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
734
a0a23346
MB
7352004-06-07 Miles Bader <miles@gnu.org>
736
08384afd 737 * xfaces.c (struct named_merge_point): New type.
a0a23346
MB
738 (push_named_merge_point): New function.
739 (merge_named_face): New function.
740 (merge_face_ref, face_at_buffer_position, face_at_string_position):
741 Use `merge_named_face'.
742 (merge_face_inheritance): Function removed.
c8d09ad8 743 (merge_face_ref): Rename from `merge_face_vector_with_property'.
a0a23346
MB
744 Add new `err_msgs' and `named_merge_points' args. Return error
745 status. Only print error messages if ERR_MSGS is true. Don't try to
746 do :inherit attribute validation.
747 (merge_face_heights): Handle `unspecified' in both directions.
748 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
749 Call `merge_face_ref' instead of `merge_face_inheritance'.
750 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
751 (compute_char_face, face_at_buffer_position)
752 (face_at_string_position): Call `merge_face_ref' instead of
753 `merge_face_vector_with_property'.
754
12d5b185
KH
7552004-06-07 Kenichi Handa <handa@m17n.org>
756
757 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
758 the necessary places.
759
2e2d7ee6
KS
7602004-06-07 Kim F. Storm <storm@cua.dk>
761
762 * process.c (Fdelete_process): Undo 2004-05-28 change.
763 Instead, call status_notify also for network process.
764 (status_message): Use process instead of status as arg.
765 Give messages "deleted" or "connection broken by remote peer" for
766 an exited network process.
767 (status_notify): Change call to status_message.
768 (read_process_output): Increase readmax to 4096. Do not increase
769 buffer size for datagram channels (default is now large enough).
770
fcf0d299
ST
7712004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
772
773 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
774 problem due to newly defined variable.
775
0722292b
MB
7762004-06-06 Miles Bader <miles@gnu.org>
777
778 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
779 immediately if non-interactive or not initialized.
780
ddfb8369
RS
7812004-06-05 Richard M. Stallman <rms@gnu.org>
782
783 * minibuf.c (Fcompleting_read): Doc fix.
784
57015754
AS
7852004-06-05 Andreas Schwab <schwab@suse.de>
786
787 * macfns.c (x_create_tip_frame): Fix declaration after statement.
788
23715ea6
JB
7892004-06-05 Juanma Barranquero <lektu@terra.es>
790
791 * keymap.c (Fdescribe_vector): Fix docstring.
792 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
793
8e330b22
MB
7942004-06-05 Miles Bader <miles@gnu.org>
795
796 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
797 attributes have different values than the default face.
798
9742a3a6
EZ
7992004-06-04 Eli Zaretskii <eliz@gnu.org>
800
801 * xfaces.c (x_supports_face_attributes_p): Make this function
802 conditional on HAVE_WINDOW_SYSTEM.
c8d09ad8
SM
803 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
804 Don't call x_supports_face_attributes_p if it was not compiled in.
9742a3a6 805
9717e36c
MB
8062004-06-04 Miles Bader <miles@gnu.org>
807
808 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
809 from Ftty_supports_face_attributes_p.
810 (x_supports_face_attributes_p): New function.
811 (Ftty_supports_face_attributes_p): Function deleted.
812 (Fdisplay_supports_face_attributes_p): New function.
813 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
f9711de4 814 (face_attr_equal_p): New function.
9717e36c
MB
815 (lface_equal_p): Use it.
816
52deb19f
JB
8172004-06-03 Juanma Barranquero <lektu@terra.es>
818
819 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
820 (Vw32_color_map): Fix typo in docstring.
821 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
822 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
823 Make argument names match their use in docstring.
824
86d373e6
JB
8252004-06-02 Juanma Barranquero <lektu@terra.es>
826
827 Work around bugs/problems with MinGW builds of graphics libraries
828 called from MSVC builds of Emacs.
829
830 * image.c (lookup_image): Make pointer to img static.
831 (png_read_from_memory): Disable "global" optimization.
832
2fb0ce67
SM
8332004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
834
c8d09ad8
SM
835 * eval.c (Fcondition_case): Fix usage. Simplify.
836
2fb0ce67
SM
837 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
838
50bf7673
ST
8392004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
840
841 * macfns.c: Don't include ccl.h.
842 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
86d373e6
JB
843 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
844 TextUtils.h.
c8d09ad8 845 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
50bf7673
ST
846 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
847 display height/width.
848 (compute_tip_xy, Vx_max_tooltip_size): Declare.
849 (unwind_create_tip_frame, compute_tip_xy): New functions.
850 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
851 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
852 and last_show_tip_args.
2fb0ce67 853
50bf7673
ST
854 * macgui.h [!MAC_OSX]: Include Gestalt.h.
855 (Cursor, No_Cursor): New defines.
c8d09ad8 856 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
50bf7673
ST
857 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
858
859 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
860
861 * macterm.c: Don't include Gestalt.h.
862 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
863 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
864 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
865 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
866 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
867 (construct_mouse_click, XTmouse_position)
868 (x_scroll_bar_report_motion, x_calc_absolute_position)
869 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
870 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
871 (note_mouse_movement): Clear the mouse face and reset the pointer
872 shape when the pointer goes outside the frame without grabbing.
873 (mac_front_window): New function.
874 (mac_window_to_frame): New macro.
875 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
876 (do_window_activate, do_window_deactivate, do_app_resume)
877 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
878 (do_zoom_window, mac_do_receive_drag, XTread_socket)
879 (mac_check_for_quit_char): Use mac_front_window and/or
880 mac_window_to_frame.
881 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
882 scroll-bar click event.
883 (mac_define_frame_cursor): Change the pointer shape.
c8d09ad8 884 (x_free_frame_resources): Reset tip_window to NULL when it is disposed.
50bf7673 885 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
c8d09ad8 886 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
50bf7673
ST
887 (do_window_update): Don't do anything if the updated window is the
888 tooltip window.
889 (do_mouse_moved): Handle mouse movement events here (previously in
890 XTread_socket). Clear the mouse face if
891 dpyinfo->mouse_face_hidden is set.
892 (do_os_event, do_events): Remove (now in XTread_socket).
893 (XTread_socket): Immediately return if interrupt_input_blocked.
c8d09ad8
SM
894 Loop until all the events in the queue are processed.
895 Rearrange codes for mouse grabbing. Add tooltip support. Include the
50bf7673
ST
896 contents of do_os_event and do_events. Remove mouse movement
897 handling (now in do_mouse_moved). Add the case where
898 Vmouse_highlight has an integer value.
899 (NewMacWindow): Remove.
900 (make_mac_frame): Do what NewMacWindow previously did. Don't do
901 excess initializations.
902 (make_mac_terminal_frame): Previous initializations in
903 make_mac_frame are moved here.
c8d09ad8
SM
904 (mac_initialize_display_info):
905 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
50bf7673
ST
906
907 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
908 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
909
08fd1251
RS
9102004-05-29 Richard M. Stallman <rms@gnu.org>
911
912 * lisp.h (truncate_undo_list): Update decl.
913
914 * alloc.c (undo_outer_limit): New variable.
915 (syms_of_alloc): Defvar it.
916 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
917
918 * undo.c (truncate_undo_list): New arg LIMITSIZE.
919
920 * alloc.c (lisp_align_malloc): Check for base == 0
921 regardless of HAVE_POSIX_MEMALIGN.
922 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
923
227ef0ff
SM
9242004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
925
926 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
927 (marker_blocks_pending_free): Remove.
928 (Fgarbage_collect): Sweep after cleaning up undo-lists.
929 Mark the undo lists after claning them up.
930 Don't free block in marker_blocks_pending_free.
931 (mark_buffer): Don't mark undo_list.
932 (gc_sweep): Sweep hash-tables and strings first.
933 Do free marker blocks that are empty.
934
034a6113
SM
9352004-05-28 Jim Blandy <jimb@redhat.com>
936
937 * regex.c (print_partial_compiled_pattern): Add missing 'break'
938 after 'case wordend'. For symbeg and symend, print to stderr,
939 like the other cases.
940
33594a8d
NF
9412004-05-28 Noah Friedman <friedman@splode.com>
942
943 * process.c (Fdelete_process): Do not call remove_process.
944
ce50a847
SM
9452004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
946
947 * alloc.c (struct backtrace): Remove.
948 (Fgarbage_collect): Use the new mark_backtrace.
949
950 * eval.c (mark_backtrace): New function.
951
952 * minibuf.c (run_exit_minibuf_hook): New function.
953 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
954 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
955
1e8dae36
KS
9562004-05-27 Kim F. Storm <storm@cua.dk>
957
958 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
959 over display properties, e.g. images, that replace buffer text.
960
846faa3b
KS
9612004-05-25 Kim F. Storm <storm@cua.dk>
962
963 * alloc.c (marker_blocks_pending_free): New var.
964 (gc_sweep): Store free marker blocks on that list.
965 (Fgarbage_collect): Free them after undo-list cleanup.
966
967 * process.c (wait_reading_process_input): Check connect_wait_mask
968 before actually accepting connection in case it has already been
969 accepted due to recursion.
970
6239a668
KH
9712004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu> (tiny change)
972
ce50a847
SM
973 * coding.c (Fset_safe_terminal_coding_system_internal):
974 Set suppress_error in safe_terminal_coding, not terminal_coding.
6239a668 975
71d5a208
RS
9762004-05-22 Richard M. Stallman <rms@gnu.org>
977
978 * alloc.c (Fmake_string): Doc fix.
979
980 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
981 and the alist pairs too.
982
983 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
984
985 * emacs.c (main): Update copyright year.
986
987 * fileio.c (Fread_file_name): Expand DIR if not absolute.
988
989 * insdel.c (del_range_2, replace_range): Don't write an anchor
990 if the gap is empty.
991
992 * xdisp.c (try_scrolling): If scroll-up-aggressively or
993 scroll-down-aggressively is small but positive, put point
994 near the screen edge.
995
f63fd14e
JB
9962004-05-22 Juanma Barranquero <lektu@terra.es>
997
998 * keymap.c (Fdefine_key): Doc fix.
999
4d12067c
KS
10002004-05-22 Kim F. Storm <storm@cua.dk>
1001
1002 * alloc.c (struct backtrace): Add debug_on_exit member.
1003 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
1004 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
1005 the removed cons cells.
1006 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
1007 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
1008 any cons cells pointing to unallocated stings.
1009 Do not lisp_free any marker blocks, as there may still be pointers
1010 to them from buffer undo lists at this stage of GC.
1011
1012 * keyboard.c (struct backtrace): Add debug_on_exit member.
1013 (Fcommand_execute): Clear it.
1014
931285e2
LT
10152004-05-20 Luc Teirlinck <teirllm@auburn.edu>
1016
1017 * intervals.c (lookup_char_property): Do not prematurely return nil.
1018
669fa600
SM
10192004-05-19 Jim Blandy <jimb@redhat.com>
1020
1021 Add support for new '\_<' and '\_>' regexp operators, matching the
f63fd14e 1022 beginning and end of symbols.
4d12067c 1023
669fa600
SM
1024 * regex.c (enum syntaxcode): Add Ssymbol.
1025 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
1026 (re_opcode_t): New opcodes `symbeg' and `symend'.
1027 (print_partial_compiled_pattern): Print the new opcodes properly.
1028 (regex_compile): Parse the new operators.
ce50a847 1029 (analyse_first): Skip sym(beg|end) (they match only the empty string).
669fa600
SM
1030 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
1031 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
1032 (re_match_2_internal): Match symbeg and symend.
1033
1034 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
1035
0d8c2e5c
KS
10362004-05-19 Kim F. Storm <storm@cua.dk>
1037
1038 * .gdbinit (xsymbol): Fix last change.
1039
669fa600
SM
10402004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
1041
1042 * .gdbinit (xprintstr): New fun.
1043 (xstring, xprintsym): Use it.
1044
1045 * w32proc.c (create_child): Use INTMASK.
1046
1047 * alloc.c (Fgarbage_collect): Do all the marking before flushing
1048 unmarked elements of the undo list.
1049
9a6a4c40
DP
10502004-05-18 David Ponce <david@dponce.com>
1051
1052 * print.c (print): Reset print_depth before to call print_object.
1053
f3c4ec74
JR
10542004-05-18 Jason Rumney <jasonr@gnu.org>
1055
1056 * w32console.c: Prefix RIF functions with w32con_ to avoid
1057 namespace clash with functions in term.c and w32term.c.
1058
1059 * w32menu.c (add_menu_item, w32_menu_display_help)
1060 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
1061
0d8c2e5c 1062 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
f3c4ec74 1063
6be49c3a
EZ
10642004-05-18 Eli Zaretskii <eliz@gnu.org>
1065
4d0b9a0a
EZ
1066 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
1067
6be49c3a
EZ
1068 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
1069 with make_number.
1070 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
1071 with XINT.
1072
0bc90bba
KS
10732004-05-18 Kim F. Storm <storm@cua.dk>
1074
89d19988
KS
1075 * blockinput.h (INPUT_BLOCKED_P): New macros.
1076
1077 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
1078 (Ftop_level): Unblock input if blocked.
1079
0bc90bba
KS
1080 * buffer.h (GET_OVERLAYS_AT): New macro.
1081 * msdos.c (IT_note_mouse_highlight): Use it.
1082 * textprop.c (get_char_property_and_overlay): Use it.
1083 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
1084 * xfaces.c (face_at_buffer_position): Use it.
1085
1086 * print.c (print_object): Increase buf size.
1087
653bd0f6
JR
10882004-05-17 Jason Rumney <jasonr@gnu.org>
1089
1090 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
1091 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
1092 Lisp_Object using i member.
1093 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
1094 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
1095 consistently.
1096
1097 * w32proc.c (create_child): Use make_number instead of masking pid.
1098
1099 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
1100 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
1101 Use EQ to compare Lisp_Objects.
1102 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
1103
1104 * w32term.c (w32_num_mouse_buttons): Rename from
1105 Vw32_num_mouse_buttons and make it an int.
1106
1107 * w32.c (init_environment): Use it.
1108
1109 * w32fns.c (w32_wnd_proc): Likewise.
1110
1111 * w32proc.c (w32_pipe_read_delay): Rename from
1112 Vw32_pipe_read_delay and make it an int.
1113
1114 * w32.c (_sys_read_ahead): Use it.
1115
1116 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
1117
1118 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
1119
1120 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
1121 (key_event): Don't mix Lisp_Object and int.
1122
1123 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
1124
1125 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
1126 modifiers in language change event.
1127
54b53ba7
KS
11282004-05-17 Kim F. Storm <storm@cua.dk>
1129
1130 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
1131 Such objects may be freed markers which still exist on an undo list.
1132
6e86a75d
JB
11332004-05-16 Juanma Barranquero <lektu@terra.es>
1134
1135 * data.c (Fset_default): Make argument names match their use in
1136 docstring.
1137
fc80da24
AS
11382004-05-15 Andreas Schwab <schwab@suse.de>
1139
1140 * emacs.c (gdb_array_mark_flag): Define.
1141 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
1142
c1380aa6
EZ
11432004-05-15 Eli Zaretskii <eliz@gnu.org>
1144
1145 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
1146 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
1147 defined for the MS-DOS build.
1148
89458937
SM
11492004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
1150
1151 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
1152
08020f9a
KH
11532004-05-14 Kenichi Handa <handa@m17n.org>
1154
1155 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
1156
a433994a
ST
11572004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1158
1159 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
1160 section to frame.c section.
1161 (Fxw_display_color_p, Fx_file_dialog): Declare if
89458937 1162 HAVE_WINDOW_SYSTEM defined.
0d8c2e5c 1163
a433994a 1164 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
0d8c2e5c 1165
a433994a 1166 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
0d8c2e5c 1167
a433994a
ST
1168 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
1169 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
1170 (XTread_socket): Fix int/Lisp_Object mixup.
1171 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
0d8c2e5c 1172
a433994a
ST
1173 * macterm.h (struct frame, struct face, struct image)
1174 (display_x_get_resource, Fx_display_color_p)
89458937
SM
1175 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
1176 Add prototypes.
a433994a 1177
b51a51b9
KS
11782004-05-14 Kim F. Storm <storm@cua.dk>
1179
1180 * process.c (wait_reading_process_input): Make reentrant.
1181 Make Available and Connecting non-static. Save and restore value
1182 of waiting_for_user_input_p.
1183
2bde1dd8
KS
11842004-05-13 Kim F. Storm <storm@cua.dk>
1185
1186 * keyboard.c (mark_kboards): Don't mark x and y members
1187 that are overloaded in selection request events.
1188
a267ab4d
SM
11892004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
1190
1191 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
1192
eb15ce9e
GM
11932004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
1194
1195 * window.c (Fdisplay_buffer, Fsplit_window)
1196 (split-height-threshold): Doc fix.
1197
7fc92635
JB
11982004-05-13 Juanma Barranquero <lektu@terra.es>
1199
1200 * xfaces.c (Ftty_supports_face_attributes_p)
1201 (Finternal_copy_lisp_face): Fix typo in docstring.
1202 (Finternal_get_lisp_face_attribute): Fix docstring.
1203
1ec2a572
JD
12042004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1205
1206 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
1207
ae9292e0
ST
12082004-05-11 Steven Tamm <steventamm@mac.com>
1209
1210 * macfns.c (Fx_create_frame): Default to using tool-bar by
1211 setting tool-bar-lines to 1 in default-frame-alist.
1212
12132004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ea1aaa6f
ST
1214
1215 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
1216 (xpm_get_color_table_v, xpm_make_color_table_h)
1217 (xpm_put_color_table_h, xpm_get_color_table_h)
1218 (xpm_str_to_color_key, xpm_load_image, xpm_load)
1219 (syms_of_image): Support XPM on Carbon Emacs. Does not
a267ab4d 1220 depend on libXpm, but only supports XPM version 3 without extensions.
ea1aaa6f 1221
fe97e8df
ST
12222004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1223
a267ab4d 1224 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
fe97e8df
ST
1225 instead of FRAME_X_P
1226
b47e779e
KS
12272004-05-11 Kim F. Storm <storm@cua.dk>
1228
1229 * process.c (read_process_output): Grow decoding_buf when needed;
1230 this could cause a crash in allocate_string and compact_small_strings.
1231
cdc9b845
EZ
12322004-04-29 Jim Blandy <jimb@redhat.com>
1233
1234 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
1235 against proper opcode.
1236
aa7094ba
JB
12372004-05-10 Juanma Barranquero <lektu@terra.es>
1238
1239 * process.c (Fstart_process): Fix docstring.
1240
1241 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
1242 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
1243 (Fsplit_char, Fchar_charset): Make argument names match their use
1244 in docstring.
1245
e109331a
RS
12462004-05-10 Richard M. Stallman <rms@gnu.org>
1247
1248 * print.c (print_preprocess): Use being_printed, loop_count and
1249 halftail to detect overdeep nesting and cyclic cdr chains.
1250
9a28b921
AS
12512004-05-10 Andreas Schwab <schwab@suse.de>
1252
1253 * lisp.h: Declare Fmake_symbolic_link.
1254
1255 * fileio.c (Frename_file): Remove extra argument in call to
1256 Fmake_symbolic_link.
1257
e2c02c1a
KS
12582004-05-10 Kim F. Storm <storm@cua.dk>
1259
1260 * xdisp.c (calc_line_height_property): Use string position when
1261 object is a string.
1262
cfe9d13e
KH
12632004-05-10 Kenichi Handa <handa@m17n.org>
1264
a57e8159
KH
1265 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
1266 inhibit-modification-hooks to t temporarily before calling
1267 Ferase_buffer.
1268
1269 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
1270 inhibit-modification-hooks to t temporarily before calling
1271 Ferase_buffer.
1272
1273 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
1274 inhibit-modification-hooks to t temporarily before calling
1275 Ferase_buffer.
1276
cfe9d13e
KH
1277 * fns.c (count_combining): Delete it.
1278 (concat): Don't check combining bytes.
1279
ceb96489
JR
12802004-05-09 Jason Rumney <jasonr@gnu.org>
1281
1282 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
1283 (globals_of_w32fns): Set it.
1284
b1c661c7
JB
12852004-05-09 Piet van Oostrum <piet@cs.uu.nl> (tiny change)
1286
1287 * data.c (Fquo): Simplify.
1288
28712a21
JB
12892004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
1290
1291 * data.c (Fquo): If any argument is float, do the computation in
1292 floating point.
1293
0f0af7a8
JB
12942004-05-08 Juanma Barranquero <lektu@terra.es>
1295
88214ef6
JB
1296 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
1297 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
1298 Fix spelling of Emacs on docstring.
1299 (Fset_process_coding_system, Fprocess_coding_system)
1300 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
1301 Make argument names match their use in docstring.
1302 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
1303 Fix docstring.
1304
0f0af7a8
JB
1305 * editfns.c (Finsert_buffer_substring): Make argument names match their
1306 use in docstring.
1307
1308 * syntax.c (Fmodify_syntax_entry): Fix docstring.
1309
2a316a84
ST
13102004-05-07 Steven Tamm <steventamm@mac.com>
1311
1312 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
1313 around call to ReceiveEvent to avoid certain crashes.
1314
13152004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
0d8c2e5c 1316
2a316a84
ST
1317 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
1318 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
1319 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
1320 Save/restore the current graphics port and device handle when
1321 drawing into an offscreen graphics world.
1322
1323 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
1324 (gif_load): Likewise.
1325
ab80314b
JB
13262004-05-07 Juanma Barranquero <lektu@terra.es>
1327
1328 * window.c (Fset_window_buffer): Fix docstring.
1329
70646bb5
TTN
13302004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
1331
1332 * emacs.c (main) [VMS]: Fix var ref.
1333
b03a4fdd
JB
13342004-05-06 Romain Francoise <romain@orebokech.com> (tiny change)
1335
1336 * data.c (Fsetq_default): Fix docstring.
1337
279d3293
JR
13382004-05-06 Jason Rumney <jasonr@gnu.org>
1339
1340 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
1341 to avoid name clash.
1342
f72b5416
JD
13432004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1344
1345 * fileio.c (barf_or_query_if_file_exists): Use lstat.
1346 (Frename_file): Handle renaming of symlinks across file systems.
440c7d00 1347 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
f72b5416 1348
6ab66799
KS
13492004-05-04 Kim F. Storm <storm@cua.dk>
1350
1351 * xdisp.c (Qtotal): New var.
1352 (syms_of_xdisp): Intern and staticpro it.
1353 (calc_line_height_property): New arg total. Set it if
1354 line-spacing property has format (total . VALUE).
1355 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
1356 Handle total line-spacing property.
1357
ab2d724b
JD
13582004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1359
1360 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
1361 "under" scroll bar when size/position changes.
1362
238add5e
JR
13632004-05-03 Jason Rumney <jasonr@gnu.org>
1364
1365 * makefile.nt: Remove.
1366
1644f4e4
EZ
13672004-05-02 Eli Zaretskii <eliz@gnu.org>
1368
a267ab4d
SM
1369 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
1370 Avoid compiler warnings.
05fdbeb8 1371
1644f4e4
EZ
1372 * Makefile.in (region-cache.o): Depend on config.h.
1373
6cbc951e
SM
13742004-05-02 Romain Francoise <romain@orebokech.com> (tiny change)
1375
1376 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
1377 with continuation lines, too.
1378
2b98b088
TTN
13792004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
1380
1381 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
1382
d9bf7950
SM
13832004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
1384
1385 * xdisp.c (calc_line_height_property): YAILOM (yet another
1386 int/Lisp_Object mixup).
1387
affa509c
EZ
13882004-05-01 Eli Zaretskii <eliz@gnu.org>
1389
1390 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
1391 undo bad effect of pack(4) in some versions of system headers.
1392
07c07cfe
JR
13932004-05-01 Jason Rumney <jasonr@gnu.org>
1394
1395 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
1396
e71caa4e
KS
13972004-04-30 Kim F. Storm <storm@cua.dk>
1398
1399 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
b2b55d03 1400 (syms_of_buffer) <cursor-type>: Doc fix.
e71caa4e
KS
1401
1402 * dispextern.h (struct it): Remove member use_default_face.
1403 Add members override_ascent, override_descent, override_boff.
1404
1405 * xdisp.c (init_iterator): Handle line-spacing float value.
1406 Initialize override_ascent member.
1407 (append_space_for_newline): Reset override_ascent.
1408 Remove use_default_face.
1409 (calc_line_height_property): New function to calculate value of
1410 line-height and line-spacing properties. Look at overlays, too.
1411 Set override_ascent, override_descent, override_boff members when
1412 using another face than the current face. Float values are now
1413 relative to the frame default font, by default; accept a cons
1414 of ratio and face name to specify value relative to a specific face.
1415 (x_produce_glyphs): Use calc_line_height_property.
1416 Use override_ascent etc. when set to handle different face heights.
1417 A negative line-spacing property value is interpreted as a total
1418 line height, rather than inter-line spacing.
1419 (note_mouse_highlight): Allocate room for 40 overlays initially.
1420
0fddae66
SM
14212004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
1422
1423 * data.c (Fsubr_name): New fun.
1424 (syms_of_data): Defsubr it.
1425
712d23dc
KS
14262004-04-29 Kim F. Storm <storm@cua.dk>
1427
1428 * xdisp.c (null_glyph_slice): New var.
1429 (append_glyph, append_composite_glyph, append_stretch_glyph):
1430 Use it to initialize glyph slice.
1431
033ad8c6
SM
14322004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
1433
1434 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
1435 (on_hot_spot_p): Make sure we always return a value.
1436 (Flookup_image_map): Remove unused var ix and iy.
1437 (note_mode_line_or_margin_highlight): Remove unused var `image'.
1438
93397360
EZ
14392004-04-27 Eli Zaretskii <eliz@gnu.org>
1440
1441 * msdos.c (init_environment): If one of the TMP... environment
1442 variables is set to a drive letter without a trailing slash,
1443 append a slash.
1444
0c54865e
EZ
14452004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
1446
1447 * editfns.c (lisp_time_argument): Provide externally.
1448
1449 * fileio.c (Fset_file_times): New function.
1450 (syms_of_fileio): Intern and staticpro it.
1451
d3b111bd
KS
14522004-04-27 Kim F. Storm <storm@cua.dk>
1453
07dc1231
KS
1454 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
1455 header line strings.
1456
360fe9d2
KS
1457 * dispextern.h (struct it): New member use_default_face.
1458
d3b111bd
KS
1459 * xdisp.c (Qline_height): New variable.
1460 (syms_of_xdisp): Intern and staticpro it.
1461 (append_space_for_newline): Partially undo 2004-04-25 change;
1462 add default_face_p arg, and restore callers.
1463 Clear it->use_default_face after use.
1464 (x_produce_glyphs): Set default font for ascii char if
1465 it->use_default_font is set. Change line-spacing property to set
1466 just extra line spacing. Handle new line-height property.
1467
0448588b
AS
14682004-04-26 Andreas Schwab <schwab@suse.de>
1469
1470 * print.c (print_object): Print non-ascii characters in bool
1471 vector representation as octal escapes.
1472
1473 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
1474 * print.c (print_object): Use it instead of BITS_PER_CHAR for
1475 bool vectors.
1476 * lread.c (read1): Likewise.
1477 * alloc.c (Fmake_bool_vector): Likewise.
1478 * data.c (Faref, Faset): Likewise.
1479 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
1480 (mapcar1): Likewise.
d3b111bd 1481
536d6baa
ST
14822004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
1483
1484 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
1485
ae11577a
MB
14862004-04-26 Miles Bader <miles@gnu.org>
1487
1488 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
1489
e198ba87
JB
14902004-04-26 Juanma Barranquero <lektu@terra.es>
1491
1492 * buffer.c (Fpop_to_buffer): Fix docstring.
1493
f3d5f92d 14942004-04-26 Steven Tamm <steventamm@mac.com>
e198ba87 1495
f3d5f92d
ST
1496 * lread.c (init_lread): Don't display missing lisp directory
1497 warnings with Carbon Emacs because self-contained bundled Emacs
e198ba87 1498 may be built without correct installation path.
f3d5f92d 1499
03e35edc
KS
15002004-04-25 Kim F. Storm <storm@cua.dk>
1501
9ff3aa31
KS
1502 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
1503
1504 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
1505
03e35edc
KS
1506 * xdisp.c (append_space_for_newline): Rename from append_space.
1507 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
1508 (x_produce_glyphs): Handle line-spacing property on newline char.
1509 If value is t, adjust ascent and descent to fit current row height.
1510 If value is an integer or float, set extra_line_spacing to integer
1511 value, or to float value x current line height.
1512
f24814e0
KH
15132004-04-23 Kenichi Handa <handa@m17n.org>
1514
1515 * fontset.c (Finternal_char_font): If POSITION is nil, return
1516 font for displaying CH with the default face.
1517
d814862a
JB
15182004-04-23 Juanma Barranquero <lektu@terra.es>
1519
1520 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
1521
063a45c5
SM
15222004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
1523
1524 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
1525 Don't make assumptions about the relative place of i and val.
1526 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
1527
ae7ab2d3
KS
15282004-04-21 Kim F. Storm <storm@cua.dk>
1529
1530 * dispextern.h (struct glyph_slice): New struct.
1531 (struct glyph): New member slice.
1532 (GLYPH_SLICE_EQUAL_P): New macro.
1533 (GLYPH_EQUAL_P): Use it.
1534 (struct glyph_string): New member slice.
1535 (struct it_slice): New struct.
1536 (struct it): New member slice, add member to stack too.
1537 New member constrain_row_ascent_descent_p.
1538 (image_ascent): Add prototype.
1539
1540 * dispnew.c (buffer_posn_from_coords): Return full image width
1541 and height even for image slices (posn is relative to full image).
1542 (marginal_area_string): Adjust x0,y0 for image slice.
1543
1544 * image.c (image_ascent): Add slice arg; calculate ascent for
1545 image slice (or full image).
1546
1547 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
1548 (syms_of_keyboard): Defsubr them.
1549
1550 * lisp.h (pos_visible_p): Fix prototype.
1551
c62aec78 1552 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
ae7ab2d3
KS
1553 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1554 (x_draw_image_foreground, x_draw_image_relief)
1555 (x_draw_image_foreground_1, x_draw_image_glyph_string):
1556 Draw sliced images.
1557
1558 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
1559 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1560 (x_draw_image_foreground, x_draw_image_relief)
1561 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
1562 Draw sliced images.
1563
1564 * w32term.h (image_ascent): Remove prototype.
1565
1566 * window.c (Fpos_visible_in_window_p): Return pixel position if
1567 PARTIALLY arg is non-nil. Simplify. Doc fix.
1568 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
1569 to return/set vscroll in pixels.
1570
1571 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
1572
1573 * xdisp.c (Qslice): New variable.
1574 (syms_of_xdisp): Intern and staticpro it.
1575 (pos_visible_p): Return pixel position in new x and y args.
1576 (init_iterator): Reset it->slice info.
1577 (handle_display_prop): Parse (slice ...) property.
1578 (push_it, pop_it): Save/restore slice info.
1579 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
1580 force repositioning of tall row if window is vscrolled, as that
1581 would reset vscroll.
1582 (append_space): Set it->constrain_row_ascent_descent_p to avoid
1583 increasing row height if row is non-empty.
1584 (fill_image_glyph_string): Copy slice info.
1585 (take_vertical_position_into_account): Simplify.
1586 (produce_image_glyph): Handle iterator slice info, setup glyph
1587 slice info. Do not force minimum line height.
1588 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
1589 do not increase height (ascent/descent) of non-empty row when
1590 adding normal character glyph; instead reduce glyph ascent/descent
1591 appropriately; if row is higher than current glyph, adjust glyph
1592 descent/ascent to reposition glyph within the existing row.
1593 Likewise, when char is newline, only set ascent/descent if row is
1594 currently empty.
1595 (note_mouse_highlight): Handle hotspots with sliced image.
1596
1597 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
1598 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1599 (x_draw_image_foreground, x_draw_image_relief)
1600 (x_draw_image_foreground_1, x_draw_image_glyph_string):
1601 Draw sliced images.
1602
1603 * xterm.h (image_ascent): Remove prototype.
1604
d58f8753
SM
16052004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
1606
1607 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
1608
4ce2719d
JPW
16092004-04-20 John Paul Wallington <jpw@gnu.org>
1610
1611 * fns.c (Fassoc, Feql): Fix indentation.
1612
d58f8753 1613 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
4ce2719d 1614
95f8c3b9
JPW
16152004-04-19 John Paul Wallington <jpw@gnu.org>
1616
1617 * fns.c (Feql): New function.
d58f8753 1618 (syms_of_fns): Defsubr it.
95f8c3b9 1619
b7e85537
JR
16202004-04-18 Jason Rumney <jasonr@gnu.org>
1621
1622 * w32select.c (Fw32_set_clipboard_data): Get sequence number
1623 after closing the clipboard.
1624
5a72efd4
LT
16252004-04-16 Luc Teirlinck <teirllm@auburn.edu>
1626
1627 * buffer.c (Fbuffer_base_buffer): Doc fix.
1628
20dc8583
KS
16292004-04-17 Kim F. Storm <storm@cua.dk>
1630
60962ec4
KS
1631 * keymap.c (Fkey_description): Add optional PREFIX arg.
1632 Combine prefix with KEYS to make up the full key sequence to describe.
1633 Correlate meta_prefix_char and following (simple) key to describe
1634 as meta modifier. All callers changed.
1635 (describe_map): Rename arg `keys' to `prefix'. Remove local
1636 `elt_prefix' var. Use Fkey_description with prefix instead of
1637 elt_prefix combined with Fsingle_key_description.
1638 (describe_vector): Declare static. Replace arg `elt_prefix' with
1639 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
1640 if !KEYMAP_P. Use Fkey_description with prefix instead of
1641 Fsingle_key_description.
1642
1643 * keymap.h (Fkey_description): Fix prototype.
1644 (describe_vector): Remove prototype.
1645
409368b9
KS
1646 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
1647
20dc8583
KS
1648 * image.c (PNG_BG_COLOR_SHIFT): Remove.
1649 (png_load): Fix calculation of transparent background color on X
1650 and W32 platforms.
1651
75c5501b
JB
16522004-04-16 Juanma Barranquero <lektu@terra.es>
1653
1654 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
1655 not too large before computing how much to scroll.
1656
da879ae8
SM
16572004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
1658
1659 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
1660
d01ca4a8
LT
16612004-04-14 Luc Teirlinck <teirllm@auburn.edu>
1662
1663 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
1664 Add hyperlink to Elisp manual to the docstring.
1665
572943b3
SM
16662004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
1667
1668 * callint.c (fix_command): Use XDCR.
1669
5e30a0fb
NR
16702004-04-14 Nick Roberts <nick@nick.uklinux.net>
1671
1672 * window.c (Fget_lru_window): Doc fix.
1673
a27ddfaf
KS
16742004-04-14 Kim F. Storm <storm@cua.dk>
1675
1676 * editfns.c (Fformat): Fix allocation size of precision array.
1677
1678 * dispnew.c (update_window): Only set changed_p if
1679 scrolling_window actually did scroll.
1680 (scrolling_window): Only return 1 if we actually did scroll.
1681
1682 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
1683 height to glyph height when cursor row is not fully visible.
1684 (make_cursor_line_fully_visible): Add FORCE_P arg to return
1685 failure in case row is higher than window. Callers changed.
1686 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
1687 Try to scroll partially visible, higher-than-window cursor row.
1688 (redisplay_window): Always try to scroll partially visible,
1689 higher-than-window cursor row - both initially and again with
1690 centering_position = 0.
1691 Clear desired matrix before retrying with centering_position = 0.
1692
da879ae8
SM
16932004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
1694
1695 * syntax.c (scan_lists): Simplify backward string scan.
1696 Fix off-by-one boundary check for string and comment fences.
1697
5fc16e8e
SM
16982004-04-13 Joe Buehler <jbuehler@hekimian.com>
1699
1700 * sheap.c, unexcw.c: New files.
1701
c9aac8e6
LT
17022004-04-12 Luc Teirlinck <teirllm@auburn.edu>
1703
1704 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
1705 base buffer has been killed. Correct the error message if the
1706 base buffer does not exist.
1707
1e88a355
SM
17082004-04-12 Joe Buehler <jbuehler@hekimian.com>
1709
1710 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
1711 Cygwin itself. Add support for Xaw3d scrollbars.
1712
1713 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
1714
1715 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
1716
1717 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
1718 before Cygwin unexec.
1719
1720 * Makefile.in: Link changes for Cygwin unexec() support.
1721
8dbff9a0
AS
17222004-04-12 Andreas Schwab <schwab@suse.de>
1723
1724 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
1725
54dffe35
LT
17262004-04-11 Luc Teirlinck <teirllm@auburn.edu>
1727
1728 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
1729 IGNORE argument equals NAME. Doc fix.
1730
99a72bdf
MY
17312004-04-11 Masatake YAMATO <jet@gyve.org>
1732
1e88a355 1733 * buffer.c (fix_start_end_in_overlays): Make overlays
99a72bdf
MY
1734 empty if they are backwards.
1735
40899d7b
SM
17362004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
1737
1738 * xfaces.c (face_color_supported_p): Fix compilation without X11.
1739
f8f853de
SM
17402004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
1741
1742 * doc.c (Fsnarf_documentation): Ignore new file name entries.
1743
c953fe1b
KS
17442004-04-06 Kim F. Storm <storm@cua.dk>
1745
661e85c1
KS
1746 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
1747 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
1748
1749 * w32term.c (w32_read_socket): Set mouse_face_hidden after
1750 clearing highlight.
1751
1752 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
1753
1754 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
1755 clearing highlight.
1756
c953fe1b
KS
1757 * indent.c (vmotion): Do not reserve one column for continuation
1758 marks on window frames.
1759
c1994268
EZ
17602004-04-04 Eli Zaretskii <eliz@gnu.org>
1761
1762 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
1763 from GCC.
1764
9f691b0d
SM
17652004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
1766
1767 * .gdbinit-union: Remove.
1768
1769 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
1770 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
1771 ($nonvalbits): Remove.
1772 ($valmask): Set it by calling xreload to avoid redundancy.
1773
1774 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
1775 (gdb_emacs_intbits): Remove.
1776
7a8560d7
JD
17772004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1778
9f691b0d 1779 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
7a8560d7 1780
3c8111fc
KH
17812004-03-30 Kenichi Handa <handa@m17n.org>
1782
1783 * editfns.c (Fformat): Fix initialization of the array info.
1784
48a0bce4
KS
17852004-03-30 Kim F. Storm <storm@cua.dk>
1786
1787 * xterm.c (x_mouse_click_focus_ignore_position): New var.
1788 (syms_of_xterm): DEFVAR_BOOL it.
1789 (ignore_next_mouse_click_timeout): New var.
1790 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
1791 Use it to filter mouse clicks following focus event.
1792
1cd0066c
KS
17932004-03-29 David Ponce <david@dponce.com>
1794
1795 * callint.c (Fcall_interactively): Fix last change.
1796
adb3b353
SM
17972004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
1798
1799 * eval.c (Fcommandp): Simplify.
1800
1801 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
1802 Extend to handle all kinds of functions.
1803
1804 * lisp.h (Finteractive_form): Declare.
1805
1806 * callint.c (Fcall_interactively): Use it.
1807
6fc4c9c9
KS
18082004-03-26 Kim F. Storm <storm@cua.dk>
1809
1810 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
1811 to catch errors in calc_pixel_width_or_height during redisplay.
1812
abdb9b83
MY
18132004-03-26 Masatake YAMATO <jet@gyve.org>
1814
b17856dd 1815 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
abdb9b83 1816
b17856dd 1817 * lisp.h (fix_start_end_in_overlays): Likewise.
abdb9b83 1818
b17856dd 1819 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
abdb9b83 1820
b17856dd 1821 * editfns.c (Ftranspose_regions): Likewise.
abdb9b83 1822
e8a84b6c
JD
18232004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1824
b17856dd 1825 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
e8a84b6c 1826
36a3fd05
RS
18272004-03-19 Richard M. Stallman <rms@gnu.org>
1828
1829 * s/sol2-6.h: Delete previous change.
1830
ab24c127
KS
18312004-03-19 Kim F. Storm <storm@cua.dk>
1832
1833 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
1834 to_charpos corresponds to newline in right fringe. Use local
1835 BUFFER_POS_REACHED_P macro.
1836
992126de
JD
18372004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1838
1839 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
1840 to compile on non-window system.
1841
45dbfc84
KS
18422004-03-19 Kim F. Storm <storm@cua.dk>
1843
1844 * dispextern.h (calc_pixel_width_or_height): Add prototype.
1845
1846 * image.c (Qcenter): Move to xdisp.c.
1847
1848 * xdisp.c (Qcenter): Declare here.
adb3b353 1849 (syms_of_xdisp): Intern and staticpro it.
45dbfc84
KS
1850 (handle_single_display_prop): Allow space display property on all
1851 platforms.
1852 (display_mode_line): Set mode_line_p before displaying line.
1853 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
1854 handling. Remove complex cases for fringes and scroll-bars.
1855 Add left, right, and center alignment positions. Add text (area)
1856 width/height. Return width or height for image specs.
1857 (produce_stretch_glyph): Improve handling of :align-to. Is now
1858 relative to left of text area by default, but other base offsets
1859 can be specified -- also for text lines.
1860
1861 * term.c (produce_glyphs): Handle IT_STRETCH.
1862 (produce_stretch_glyph): New function to handle space width and
1863 align-to display properties on non-window systems.
1864
37264101
SM
18652004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
1866
1867 * fileio.c (Fread_file_name): Set completion-ignore-case for
1868 case-insensitive systems.
1869
73bc43da
MY
18702004-03-14 Masatake YAMATO <jet@gyve.org>
1871
1872 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
1873 when keymap and cursor are setup.
1874
9062aa89
ST
18752004-03-14 Steven Tamm <steventamm@mac.com>
1876
b17856dd 1877 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
9062aa89 1878
e4b1b5ab
KS
18792004-03-14 Kim F. Storm <storm@cua.dk>
1880
1881 * dispextern.h (x_find_image_file): Add prototype.
1882
1883 * image.c (x_find_image_file): Make extern.
1884
1885 * xfns.c (x_find_image_file): Remove prototype.
1886
a6eeaa81 18872004-03-13 Eli Zaretskii <eliz@gnu.org>
5109b06a 1888
37264101 1889 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
5109b06a 1890
37264101 1891 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
5109b06a 1892
e69cfac2
RS
18932004-03-12 Richard M. Stallman <rms@gnu.org>
1894
1895 * fns.c (internal_equal): New arg PROPS controls comparing
1896 text properties. All callers changed.
1897 (Fequal_including_properties): New function.
1898 (syms_of_fns): defsubr it.
1899
45034953
KS
19002004-03-12 Kim F. Storm <storm@cua.dk>
1901
1902 Fix image support on MAC. From YAMAMOTO Mitsuharu.
37264101 1903
45034953
KS
1904 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
1905 (image_background, image_background_transparent): Fix prototypes.
1906
37264101 1907 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
45034953
KS
1908
1909 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
1910 (x_query_font, x_find_ccl_program, x_set_window_size)
1911 (x_make_frame_visible, mac_initialize, XCreatePixmap)
1912 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
1913 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
1914
1915 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
1916 (x_query_font, x_find_ccl_program, x_set_window_size)
1917 (x_make_frame_visible, mac_initialize, XCreatePixmap)
1918 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
1919 (mac_draw_line_to_pixmap): Add prototypes.
1920
19212004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1922
1923 * macterm.c (XTread_socket): Fix mouse click on tool bar.
1924
a12d3d87
KS
19252004-03-11 Kim F. Storm <storm@cua.dk>
1926
d3ab1cf1
KS
1927 * dispextern.h: Move image related prototypes from xfns.c section
1928 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
1929 HAVE_X_WINDOWS.
37264101 1930
37de9f51 1931 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
37264101 1932 Move gtkutil.o to new GTK_OBJ list.
a12d3d87
KS
1933 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
1934 (GTK_OBJ) [USE_GTK]: New declaration.
1935 (obj): Add $(GTK_OBJ) to list.
1936
5243c06a 19372004-03-11 Steven Tamm <steventamm@mac.com>
5109b06a 1938
5243c06a
ST
1939 * image.c [MAC_OSX]: Include sys/stat.h
1940
1941 * macfns.c (syms_of_macfns): Remove definitions of things now
1942 defined in image.c
1943
c0f97789
KS
19442004-03-11 Kim F. Storm <storm@cua.dk>
1945
1946 The following changes consolidates the identical/similar image
1947 support code previously found in xfns.c, w32fns.c, and macfns.c
1948 into a new file image.c.
1949
1950 * makefile.w32-in (OBJ1): Add image.o.
1951 ($(BLD)/image.$(O)): Add dependencies.
1952
1953 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
1954 (image.o): Add dependencies.
37264101 1955
c0f97789
KS
1956 * image.c: New file with consolidated image support code.
1957 (COLOR_TABLE_SUPPORT): New define to control whether
1958 color table support is available (X only).
1959 (Bitmap_Record): Common name for x_bitmap_record,
1960 w32_bitmap_record, and mac_bitmap_record.
1961 (XImagePtr): Common name for pointer to XImage or equivalent.
1962 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
1963 to XImagePtr on X+MAC, and to HDC on W32.
1964 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
1965 (NO_PIXMAP): Common name for "None" or equivalent.
1966 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
1967 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
1968 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
37264101
SM
1969 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
1970 Define with suitable equivalents on W32 and MAC for code sharing.
c0f97789
KS
1971 (XDrawLine): Define on MAC for code sharing.
1972 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
1973 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
1974 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1975 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1976 (x_reference_bitmap, x_create_bitmap_from_data)
1977 (x_create_bitmap_from_file, x_destroy_bitmap)
1978 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1979 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
1980 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1981 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1982 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1983 (define_image_type, lookup_image_type, valid_image_p)
1984 (image_error, enum image_value_type, struct image_keyword)
1985 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1986 (make_image, free_image, prepare_image_for_display, image_ascent)
1987 (four_corners_best, image_background, image_background_transparent)
1988 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1989 (make_image_cache, free_image_cache, clear_image_cache)
1990 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1991 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1992 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1993 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
1994 (init_image_func_pointer, image_load_quartz2d)
1995 (struct ct_color, init_color_table, free_color_table)
1996 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1997 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1998 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1999 (x_disable_image, x_build_heuristic_mask)
2000 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2001 (TIFF support, GIF support, Ghostscript support): Consolidate image
2002 code from xfns.c, w32fns.c, and macfns.c.
2003 (syms_of_image): Consolidate image related symbol setup here.
2004 (init_image): Consolidate image related initializations here.
37264101 2005
c0f97789
KS
2006 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
2007 and init_image. Remove call to init_xfns.
2008
37264101
SM
2009 * macterm.h (struct mac_bitmap_record): Add file member.
2010 Not currently used, but simplifies code sharing.
c0f97789
KS
2011
2012 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2013 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2014 (x_reference_bitmap, x_create_bitmap_from_data)
2015 (x_create_bitmap_from_file, x_destroy_bitmap)
2016 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2017 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
2018 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2019 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2020 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2021 (define_image_type, lookup_image_type, valid_image_p)
2022 (image_error, enum image_value_type, struct image_keyword)
2023 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2024 (make_image, free_image, prepare_image_for_display, image_ascent)
2025 (four_corners_best, image_background, image_background_transparent)
2026 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2027 (make_image_cache, free_image_cache, clear_image_cache)
2028 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2029 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2030 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2031 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
2032 (init_image_func_pointer, image_load_quartz2d)
2033 (struct ct_color, init_color_table, free_color_table)
2034 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2035 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2036 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2037 (x_disable_image, x_build_heuristic_mask)
2038 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2039 (TIFF support, GIF support, Ghostscript support): Merge with image
2040 code from xfns.c and macfns.c into image.c.
2041 (syms_of_xfns): Move image related symbols to image.c.
2042 (init_external_image_libraries, init_xfns): Remove; initialization
2043 moved to init_image in image.c.
2044
2045 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2046 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2047 (x_reference_bitmap, x_create_bitmap_from_data)
2048 (x_create_bitmap_from_file, x_destroy_bitmap)
2049 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2050 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2051 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2052 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2053 (define_image_type, lookup_image_type, valid_image_p)
2054 (image_error, enum image_value_type, struct image_keyword)
2055 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2056 (make_image, free_image, prepare_image_for_display, image_ascent)
2057 (four_corners_best, image_background, image_background_transparent)
2058 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2059 (make_image_cache, free_image_cache, clear_image_cache)
2060 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2061 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2062 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2063 (struct ct_color, init_color_table, free_color_table)
2064 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2065 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2066 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2067 (x_disable_image, x_build_heuristic_mask)
2068 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2069 (TIFF support, GIF support, Ghostscript support): Merge with image
2070 code from xfns.c and macfns.c into image.c.
2071 (syms_of_xfns): Move image related symbols to image.c.
2072 (init_external_image_libraries, init_xfns): Remove; initialization
2073 moved to init_image in image.c.
2074
2075 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2076 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2077 (x_reference_bitmap, x_create_bitmap_from_data)
2078 (x_create_bitmap_from_file, x_destroy_bitmap)
2079 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2080 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2081 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2082 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2083 (define_image_type, lookup_image_type, valid_image_p)
2084 (image_error, enum image_value_type, struct image_keyword)
2085 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2086 (make_image, free_image, prepare_image_for_display, image_ascent)
2087 (four_corners_best, image_background, image_background_transparent)
2088 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2089 (make_image_cache, free_image_cache, clear_image_cache)
2090 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2091 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2092 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2093 (struct ct_color, init_color_table, free_color_table)
2094 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2095 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2096 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2097 (x_disable_image, x_build_heuristic_mask)
2098 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2099 (TIFF support, GIF support, Ghostscript support): Merge with
2100 w32fns.c and macfns.c image code into image.c.
2101 (syms_of_xfns): Move image related symbols to image.c.
2102 (init_xfns): Remove; initialization moved to init_image in image.c.
2103
2104 * lisp.h (syms_of_image, init_image): Add protoypes.
2105 (init_xfns): Remove prototype.
2106
2107 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2108 (x_reference_bitmap, x_create_bitmap_from_data)
2109 (x_create_bitmap_from_file, x_destroy_bitmap)
2110 (x_create_bitmap_mask): Move prototypes from dispextern.h.
2111 (gamma_correct) [MAC_OS]: Add prototype.
2112
2113 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2114 (x_reference_bitmap, x_create_bitmap_from_data)
2115 (x_create_bitmap_from_file, x_destroy_bitmap)
2116 (x_create_bitmap_mask): Move prototypes to dispextern.h.
2117
6eced09c
KH
21182004-03-09 Kenichi Handa <handa@etlken2>
2119
2120 * coding.c (decode_coding_emacs_mule): Handle insufficent source
2121 correctly.
2122
9a7e95f3
RS
21232004-03-04 Richard M. Stallman <rms@gnu.org>
2124
04a6e76b
RS
2125 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
2126
9a7e95f3
RS
2127 * window.c (Fdisplay_buffer): Doc fix.
2128
2129 * buffer.c (Fpop_to_buffer): Doc fix.
2130
6c2488df
KS
21312004-03-03 Kim F. Storm <storm@cua.dk>
2132
2133 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
2134
d8d95bc7
SM
21352004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
2136
2137 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
2138
357589bf
RS
21392004-03-02 Richard M. Stallman <rms@gnu.org>
2140
2141 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
2142
409949b5
KH
21432004-03-02 Kenichi Handa <handa@m17n.org>
2144
2145 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
2146
d24bc50f
KS
21472004-03-02 Kim F. Storm <storm@cua.dk>
2148
2149 * window.h (struct window): New member overlay_arrow_bitmap.
2150
2151 * window.c (make_window): Initialize overlay_arrow_bitmap.
2152
2153 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
2154 implement and integrate multiple overlay arrows with redisplay.
2155 (syms_of_xdisp): DEFVAR_LISP and initialize it.
2156 (last_arrow_position, last_arrow_string): Replace by properties.
2157 (Qlast_arrow_position, Qlast_arrow_string)
2158 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
2159 (syms_of_xdisp): Intern and staticpro them.
2160 (overlay_arrow_string_or_property, update_overlay_arrows)
2161 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
2162 (overlay_arrow_at_row): New functions for multiple overlay arrows.
2163 (redisplay_internal): Use them instead of directly accessing
2164 Voverlay_arrow_position etc. for multiple overlay arrows.
2165 (mark_window_display_accurate): Use update_overlay_arrows.
2166 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
2167 (try_window_id): Use overlay_arrows_changed_p.
2168 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
2169 (display_line): Use overlay_arrow_at_row to check multiple
2170 overlay arrows, and get relevant overlay-arrow-string and
d8d95bc7 2171 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
d24bc50f
KS
2172 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
2173 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
2174
2175 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
2176 (update_window_fringes): Remove unused code.
2177
c1464661
JR
21782004-03-01 Jason Rumney <jasonr@gnu.org>
2179
2180 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
2181
a64387ee
JB
21822004-03-01 Juanma Barranquero <lektu@terra.es>
2183
2184 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
2185
2186 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
2187
334faa08
JD
21882004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2189
2190 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
2191 how many colors can be displayed.
2192
bb62616f
KH
21932004-03-01 Kenichi Handa <handa@m17n.org>
2194
2195 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
2196 correctly.
2197
0fd16104
KS
21982004-02-28 Kim F. Storm <storm@cua.dk>
2199
2200 * dispnew.c (update_window): Update header line also if there are
2201 no other changes in window (move code after set_cursor label).
2202
2203 * lisp.h (mark_window_display_accurate): Remove prototype.
2204
2205 * window.c (window_loop, Fforce_window_update): Force mode line
2206 updates by setting prevent_redisplay_optimizations_p and
2207 update_mode_lines.
2208
b59dd9c8
JD
22092004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2210
d8d95bc7 2211 * xfns.c (x_window): Fix indentation.
b59dd9c8
JD
2212
2213 * xterm.c (x_calc_absolute_position): Call x_real_positions
2214 to get WM window sizes and use those to calculate position.
d8d95bc7 2215 (x_set_offset): Remove code commented out.
b59dd9c8 2216
a874691c
MB
22172004-02-28 Miles Bader <miles@gnu.org>
2218
2219 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
2220
3e0c6482
KS
22212004-02-28 Kim F. Storm <storm@cua.dk>
2222
2223 * keyboard.c (kbd_buffer_store_event_hold): New function to store
2224 an event into kbd fifo, but with special handling of quit event;
2225 a quit event is saved for later, and further events are discarded
2226 until the saved quit event has been processed.
2227 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
2228 (gen_help_event): Store help event in kbd fifo.
2229 (NREAD_INPUT_EVENTS): Remove.
2230 (read_avail_input): Adapt to new read_socket_hook interface.
2231 Remove allocation and initialization of local input_event buffer,
2232 as read_socket_hook stores events directly in fifo. Allocate and
2233 initialize local hold_quit event to handle postponed quit event
2234 (and store it if set by kbd_buffer_store_event_hold).
2235
2236 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
2237 (gen_help_event): Fix prototype.
2238
a64387ee 2239 * macterm.c (XTread_socket): Remove bufp_r and
3e0c6482 2240 numcharsp args. Add hold_quit arg.
f63fd14e 2241 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
2242 directly in fifo using kbd_buffer_store_event_hold.
2243
2244 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
2245 (read_input_waiting): Adapt to new read_socket_hook interface.
2246 Remove allocation and initialization of local input_event buffer,
2247 as read_socket_hook stores events directly in fifo. Allocate and
2248 initialize local hold_quit event to handle postponed quit event
2249 (and store it if set by kbd_buffer_store_event_hold).
2250
a64387ee 2251 * term.c (read_socket_hook): Fix arg list.
3e0c6482
KS
2252
2253 * termhooks.h (read_socket_hook): Fix prototype.
2254
2255 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
2256 numcharsp args. Add hold_quit arg.
f63fd14e 2257 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
2258 directly in fifo using kbd_buffer_store_event_hold.
2259
2260 * w32inevt.h (w32_console_mouse_position): Fix prototype.
2261
2262 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
f63fd14e
JB
2263 Add hold_quit arg. Rework to use just one, local, inev
2264 input_event. Store inev directly in fifo using
3e0c6482
KS
2265 kbd_buffer_store_event_hold. Update count in one place.
2266 Postpone call to gen_help_event until inev is stored; use new
2267 local do_help for this.
2268 Remove local emacs_event in handing of ButtonPress event; just use
2269 inev instead (so no reason to copy it later).
2270
2271 * xsmfns.c (x_session_check_input): Remove numchars arg.
2272
d8d95bc7
SM
2273 * xterm.c (x_focus_changed, x_detect_focus_change):
2274 Remove numchars arg. Always store event into bufp arg.
2275 Return nothing. Callers changed accordingly.
3e0c6482
KS
2276 (glyph_rect): Simplify.
2277 (STORE_KEYSYM_FOR_DEBUG): New macro.
2278 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
2279 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
2280 (current_hold_quit) [USE_GTK]: Add.
2281 (event_handler_gdk): Adapt to new handle_one_xevent.
2282 (handle_one_xevent): Remove bufp_r and numcharsp args.
f63fd14e
JB
2283 Add hold_quit arg. Rework to use just one, local, inev
2284 input_event. Store inev directly in fifo using
3e0c6482
KS
2285 kbd_buffer_store_event_hold. Update count in one place.
2286 Postpone call to gen_help_event until inev is stored; use new
2287 local do_help for this.
2288 Simplify handling of keysyms (consolidate common code). Fix bug
2289 where count was updated with nchars instead of nbytes.
2290 Remove local emacs_event in handing of ButtonPress event; just use
2291 inev instead (so no reason to copy it later).
2292 Remove `out' label. Rename label `ret' to `done'; add various
2293 `goto done' to clarify code flow in deeply nested blocks.
2294 (x_dispatch_event): Simplify as handle_one_xevent now calls
2295 kbd_buffer_store_event itself.
f63fd14e 2296 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
3e0c6482
KS
2297 arg. Call handle_one_xevent with new arglist. Store event from
2298 x_session_check_input in fifo.
2299 [USE_GTK]: Setup current_hold_quit.
2300 Decrement handling_signal before unblocking input.
2301 (x_initialize) [USE_GTK]: Initialize current_count.
2302
2303 * xterm.h (x_session_check_input): Fix prototype.
2304
e3564461 23052004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
a64387ee 2306
d8d95bc7 2307 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
a64387ee 2308
e3564461
ST
2309 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
2310 macgui.h).
a64387ee 2311
e3564461 2312 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
a64387ee 2313
e3564461
ST
2314 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
2315 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
2316 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
2317 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
2318 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
2319 (Bitmap): Remove typedef.
2320 (Pixmap): Change int to GWorldPtr.
2321
d8d95bc7 2322 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
a64387ee 2323
d8d95bc7
SM
2324 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
2325 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
2326 New #define to extract 16-bit depth color components from unsigned
e3564461
ST
2327 long representation.
2328 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
2329 colors used for masks.
2330 (struct mac_display_info): Add color_p. Remove n_cbits.
a64387ee 2331
e3564461
ST
2332 * macfns.c: Include sys/types.h and sys/stat.h.
2333 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
2334 Include QuickTime/QuickTime.h.
2335 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
2336 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
2337 functions defined in macterm.c.
2338 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
2339 (ZPixmap): New #define for compatibility with xfns.c.
2340 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
2341 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
d8d95bc7
SM
2342 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
2343 New functions.
e3564461 2344 (four_corners_best, x_create_x_image_and_pixmap)
d8d95bc7
SM
2345 (x_destroy_x_image, unwind_create_frame, x_disable_image)
2346 (x_edge_detection, init_color_table, colors_in_color_table)
e3564461
ST
2347 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
2348 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
2349 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
2350 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
2351 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
2352 long mixup.
2353 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
2354 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
2355 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
2356 (x_set_cursor_type, Fxw_color_values, valid_image_p)
2357 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
2358 (x_alloc_image_color, clear_image_cache, lookup_image)
2359 (x_find_image_file, xbm_read_bitmap_file_data)
2360 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
2361 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
2362 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
2363 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
2364 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
d8d95bc7 2365 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
e3564461
ST
2366 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
2367 #if 0.
2368 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
2369 #if 0. Free white_relief.gc and black_relief.gc.
d8d95bc7
SM
2370 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
2371 New functions (from xfns.c).
e3564461
ST
2372 (Fx_create_frame): Record unwind_create_frame.
2373 (Fxw_display_color_p): Use dpyinfo->color_p.
2374 (Fx_display_grayscale_p, Fx_display_planes): Don't use
2375 dpyinfo->n_cbits.
2376 (Fx_display_color_cells): Use dpyinfo->n_planes;
2377 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
2378 (Qheuristic, cross_disabled_images, emboss_matrix)
2379 (laplace_matrix): New variables (from xfns.c).
2380 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
2381 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
2382 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
d8d95bc7
SM
2383 (image_background_transparent): New function (from xfns.c).
2384 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
2385 (image_load_quicktime): Add declaration.
2386 [MAC_OSX] (image_load_quartz2d): Likewise.
2387 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
2388 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
d8d95bc7 2389 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
e3564461
ST
2390 (xbm_load_image_from_file, x_laplace_read_row)
2391 (x_laplace_write_row, pbm_read_file): Remove functions.
2392 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
2393 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
2394 (colors_in_color_table): Sync with xfns.c (although not used).
2395 (lookup_rgb_color): Don't lookup color table. Just do gamma
2396 correction.
2397 (COLOR_INTENSITY): New #define (from xfns.c).
d8d95bc7
SM
2398 (x_disable_image): New function (from xfns.c).
2399 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
2400 (x_build_heuristic_mask): Sync with xfns.c.
2401 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
2402 (HAVE_PBM): Remove #ifdef.
2403 (pbm_load): Sync with xfns.c. Set img->width and img->height
2404 before IMAGE_BACKGROUND.
d8d95bc7 2405 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
e3564461
ST
2406 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
2407 Don't enclose with #if HAVE_PNG.
2408 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
d8d95bc7
SM
2409 symbol _CGImageCreateWithPNGDataProvider is defined.
2410 Otherwise use image_load_quicktime.
e3564461 2411 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
d8d95bc7
SM
2412 [HAVE_PNG] (png_load): Sync with xfns.c.
2413 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
2414 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
2415 HAVE_JPEG.
2416 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
2417 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
2418 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
2419 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
2420 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
2421 (tiff_image_p, tiff_load): Don't enclose declarations with #if
2422 HAVE_TIFF.
2423 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
2424 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
2425 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
d8d95bc7
SM
2426 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
2427 New functions (from xfns.c).
e3564461 2428 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
d8d95bc7 2429 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
e3564461
ST
2430 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
2431 Don't enclose with #if HAVE_GIF.
2432 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
2433 animated gif. Otherwise use image_load_quicktime.
2434 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
2435 gif_DrawText to avoid conflict with QuickdrawText.h.
2436 [HAVE_GIF] (gif_load): Sync with xfns.c.
2437 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
2438 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
2439 Ghostscript is not supported yet).
2440 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
2441 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
2442 cross_disabled_images (from xfns.c). Remove #if 0 for supported
2443 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
2444 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
2445 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
d8d95bc7
SM
2446 HAVE_PNG. Call EnterMovies to support animated gifs.
2447 Call init_image_func_pointer to bind a symbol
e3564461 2448 _CGImageCreateWithPNGDataProvider if it is defined.
a64387ee 2449
d8d95bc7 2450 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
e3564461
ST
2451 (x_draw_bar_cursor): Sync declaration with xterm.c.
2452 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
2453 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
2454 graphics).
2455 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
2456 (mac_draw_line_to_pixmap, XCreatePixmap)
2457 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
d8d95bc7
SM
2458 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
2459 New functions.
2460 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
2461 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
2462 Cast bits to char *.
e3564461
ST
2463 (reflect_byte): New function (from w32fns.c).
2464 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
2465 due to byte alignment.
d8d95bc7
SM
2466 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
2467 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
e3564461
ST
2468 (XSetForeground): Remove static (now used in macfns.c).
2469 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
2470 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
2471 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
2472 (x_draw_glyph_string_box, x_draw_image_foreground)
2473 (x_draw_image_foreground_1, x_draw_image_glyph_string)
2474 (x_draw_stretch_glyph_string, x_draw_glyph_string)
2475 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
2476 Sync with xterm.c.
2477 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
2478 than the xterm.c version when a strictly horizontal or vertical
2479 line is drawn.
2480 (XTset_terminal_window): Add static.
2481 (x_make_frame_visible): Add UNBLOCK_INPUT.
2482 (x_free_frame_resources): New funcion (from xterm.c).
2483 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
2484 occurs in tool bar area.
d8d95bc7
SM
2485 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
2486 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
e3564461
ST
2487 Initialize image cache.
2488 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
2489 Enclose unused functions with #if 0.
2490 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
2491 (decode_mac_font_name): New function to apply code conversions
d8d95bc7 2492 from a mac font name to an XLFD font name according to its script code.
e3564461 2493 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
d8d95bc7 2494 font name to a mac font name according to REGISTRY and ENCODING fields.
e3564461
ST
2495 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
2496 whose name starts with `.'.
2497 (init_font_name_table): Use decode_mac_font_name. Add both
2498 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
2499 of a font is smJapanese.
2500 (mac_do_list_fonts): New function to list fonts that match a given
2501 pattern.
2502 (x_list_fonts, XLoadQueryFont): Use it.
2503 (XLoadQueryFont): Set rbearing field for each variable width
2504 character to avoid needless redraw.
2505 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
2506
446f5f3d
KS
25072004-02-26 Kim F. Storm <storm@cua.dk>
2508
af617d0f
KS
2509 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
2510 as read_socket_hook handler on X aborts if buffer is too small
2511 and W32 handler doesn't always check buffer limit.
2512
446f5f3d
KS
2513 * xdisp.c (handle_single_display_prop): Handle left-fringe and
2514 right-fringe similar to a display margin image. Specifically,
2515 the characters having the fringe prop are no longer shown, and
2516 we use IT_IMAGE/next_element_from_image with image_id = -1 to
2517 do this. Set fringe bitmap face_id in it->face_id.
2518 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
2519 still realize it->face (i.e. the fringe bitmap face).
2520
7d8a0b55
MB
25212004-02-25 Miles Bader <miles@gnu.org>
2522
2523 * xdisp.c (check_it): Check string/string_pos consistency.
2524 (init_iterator): Initialize string-related fields properly.
2525
25262004-02-11 Miles Bader <miles@gnu.org>
2527
2528 * xdisp.c (produce_image_glyph): Force negative descents to zero.
2529
25302004-02-10 Miles Bader <miles@gnu.org>
2531
2532 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
2533 BLOCK_INPUT can be nested, so it doesn't make much sense.
2534
a64387ee 25352004-02-24 Michael Mauger <mmaug@yahoo.com>
ce35edd1
JR
2536
2537 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
2538 (xbm_read_bitmap_data): Use unsigned char for image data.
2539
92f5fba2
LT
25402004-02-23 Luc Teirlinck <teirllm@auburn.edu>
2541
2542 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
2543
8565fb3d
JR
25442004-02-22 Jason Rumney <jasonr@gnu.org>
2545
2546 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
2547 correctly over other bitmaps.
2548
a6eeaa81 25492004-02-21 Eli Zaretskii <eliz@gnu.org>
f8125c39
EZ
2550
2551 * emacs.c (USAGE1): Split into two halves.
2552 (USAGE2): Second half of the old USAGE1.
d8d95bc7
SM
2553 (USAGE3): Rename from USAGE2.
2554 (USAGE4): Rename from USAGE3.
f8125c39 2555
4effffca
EZ
25562004-02-21 Juri Linkov <juri@jurta.org>
2557
2558 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
2559 Fix --multibyte. Move --help, --version to USAGE2. Add alias
2560 --file. Fix -f, -l. Sort options. Untabify.
2561 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
2562
923c1e6f
LT
25632004-02-19 Luc Teirlinck <teirllm@auburn.edu>
2564
2565 * category.c (Fdefine_category, Fcategory_docstring)
2566 (Fget_unused_category, Fset_category_table)
2567 (Fcategory_set_mnemonics): Doc fixes.
2568
b0e225fd
KS
25692004-02-20 Kim F. Storm <storm@cua.dk>
2570
2571 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
2572 The following changes are relative to the 2004-01-21 revision.
2573 (NREAD_INPUT_EVENTS): Define as max number of input events to read
2574 in one call to read_socket_hook. Value is 8.
2575 (read_avail_input): Separate and rework handling of read_socket_hook
2576 and non-read_socket_hook cases. Use smaller input_event buffer
d8d95bc7
SM
2577 in read_socket_hook case, and repeat if full buffer is read.
2578 Use new local variable 'discard' to skip input after C-g.
b0e225fd
KS
2579 In non-read_socket_hook case, just use a single input_event, and
2580 call kbd_buffer_store_event on the fly for each character.
2581
b15aa9f9
SM
25822004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
2583
2584 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
2585 Remove unused `gu' alternative.
2586
83c9aa95
AS
25872004-02-19 Andreas Schwab <schwab@suse.de>
2588
2589 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
2590 warning.
2591
cc808173
KS
25922004-02-18 Kim F. Storm <storm@cua.dk>
2593
2594 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
2595 Fix last change.
2596
ab90a54d
KS
25972004-02-17 Kim F. Storm <storm@cua.dk>
2598
b26f249f
KS
2599 * xdisp.c (fast_find_position): Fix return value of new version;
2600 it was inverted compared to the 21.1 version.
2601 (get_window_cursor_type): Don't look at glyph if NULL.
2602 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 2603
ab90a54d
KS
2604 * keyboard.c: Rework previous change; it didn't consider that the
2605 buf array was allocated on the stack.
2606 (prev_read): Remove variable.
2607 (read_avail_input_buf): New static event buffer array.
b9568dfc 2608 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 2609 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
2610 Use in_read_avail_input to handle re-entrance; when re-entered,
2611 fully initialize and use tmp_buf array instead of read_avail_input_buf.
2612 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
2613 is always cleared on entry. To ensure that, we clear (just) the
2614 entries that were used before we return.
2615 (init_keyboard): Initialize read_avail_input_buf here.
2616
4e039f3f
EZ
26172004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change)
2618
2619 * cmds.c (Fend_of_line): Doc fix.
2620
7b5368c1
EZ
26212004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
2622
2623 * keyboard.c (prev_read): New static variable.
2624 (read_avail_input): Use it to zero out only those slots in buf[]
2625 that were used last time we were called.
2626
a6eeaa81 26272004-02-16 Eli Zaretskii <eliz@gnu.org>
ca4bc494
EZ
2628
2629 * Makefile.in (obj): Move fringe.o from here...
2630 (XOBJ, MAC_OBJ): ...to here.
2631
159c348e
SE
26322004-02-16 Stephen Eglen <stephen@gnu.org>
2633
2634 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
2635
d2f14999
SM
26362004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
2637
b15aa9f9
SM
2638 * data.c (Fbyteorder):
2639 * fringe.c (Fdefine_fringe_bitmap):
2640 * xdisp.c (handle_single_display_prop):
d2f14999
SM
2641 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
2642
8d50508a
JR
26432004-02-16 Jason Rumney <jasonr@gnu.org>
2644
2645 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
2646
dd4497dc
ST
26472004-02-15 Steven Tamm <steventamm@mac.com>
2648
2649 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
2650 controlling emulation of a three button mouse with option and
2651 command keys.
2652 (Qreverse, mac_get_enumlated_btn): Handle the emulation
b15aa9f9 2653 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
dd4497dc 2654
c9159cb3
KS
26552004-02-15 Kim F. Storm <storm@cua.dk>
2656
2cc52658
KS
2657 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
2658
c9159cb3
KS
2659 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
2660 Perform byte-swapping.
2661
12fde2dc
KS
26622004-02-14 Kim F. Storm <storm@cua.dk>
2663
2664 * dispextern.h (struct draw_fringe_bitmap_params): Change member
2665 bits from char to short to facilitate wider bitmaps.
2666 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
2667 member.
2668
2669 * fringe.c (struct fringe_bitmap): Change member bits from char to
2670 short to facilitate 16 bits wide bitmaps. Modify all standard
2671 bitmaps accordingly.
2672 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
2673 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
2674 (draw_fringe_bitmap): Ditto.
2675 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
2676 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
2677 handle up to 16 bits wide bitmaps.
2678 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 2679 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
2680
2681 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
2682 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
2683 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
2684
2685 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
2686 so it is no longer necessary to expand them here.
2687
2688 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
2689
9d7271e8
KS
26902004-02-12 Kim F. Storm <storm@cua.dk>
2691
2692 * window.c (Fwindow_fringes): Doc fix.
2693
706c1e4f
JD
26942004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2695
2696 * xselect.c (x_get_foreign_selection): Add new optional parameter
2697 time_stamp.
2698 (Fx_get_selection_internal): Ditto, pass time_stamp to
2699 x_get_foreign_selection.
2700
2701 * data.c (Fbyteorder): New function.
2702
c2d12b5d
JD
27032004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2704
2705 * atimer.c: Move include stdio.h to same place as in other files.
2706
2707 * region-cache.c: Ditto.
2708
2709 * sysdep.c: Ditto.
2710
2711 * xfaces.c: Ditto.
2712
4c1947b9
SS
27132004-02-09 Sam Steingold <sds@gnu.org>
2714
89458937 2715 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
4c1947b9 2716
82722af3
KS
27172004-02-09 Kim F. Storm <storm@cua.dk>
2718
2719 * fringe.c: New file. Move original fringe related declarations
2720 and code from dispextern.h and xdisp.c here.
2721 Rework code to support user defined fringe bitmaps, redefining
2722 standard bitmaps, ability to overlay user defined bitmap with
2723 overlay arrow bitmap, and add faces to bitmaps.
2724 (Voverflow_newline_into_fringe): Declare here.
2725 (enum fringe_bitmap_align): New enum.
2726 (..._bits): All bitmaps are now defined without bitswapping; that
2727 is now done in init_fringe_once (if necessary).
2728 (standard_bitmaps): New array with specifications for the
2729 standard fringe bitmaps.
2730 (fringe_faces): New array.
2731 (valid_fringe_bitmap_id_p): New function.
2732 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
2733 (draw_fringe_bitmap): New function which draws fringe bitmap,
2734 possibly overlaying bitmap with cursor in right fringe or the
2735 overlay arrow in the left fringe.
2736 (update_window_fringes): Do not handle overlay arrow here.
2737 Compare and copy fringe bitmap faces.
2738 (init_fringe_bitmap): New function.
2739 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
2740 define and destroy user defined fringe bitmaps.
2741 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
2742 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
2743 (syms_of_fringe): New function. Defsubr new DEFUNs.
2744 DEFVAR_LISP Voverflow_newline_into_fringe.
2745 (init_fringe_once, init_fringe): New functions.
2746 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 2747
82722af3
KS
2748 * Makefile.in (obj): Add fringe.o.
2749 (fringe.o): New dependencies.
2750
2751 * dispextern.h (FRINGE_ID_BITS): New definition for number of
2752 bits allocated to hold a fringe number. Increase number of bits
2753 from 4 to 8 to allow user defined fringe bitmaps.
2754 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
2755 left_user_fringe_face_id, right_user_fringe_bitmap,
2756 right_user_fringe_face_id.
2757 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
2758 Move to new file fringe.c.
2759 (MAX_FRINGE_BITMAPS): Define here.
2760 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
2761 and overlay_p. Change member which to int.
2762 (struct redisplay_interface): New members define_fringe_bitmap
2763 and destroy_fringe_bitmap.
2764 (valid_fringe_bitmap_id_p): Add prototype.
2765 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
2766
2767 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
2768 arrows.
2769 (update_frame): Do flush_display if force_flush_display_p to
2770 ensure display (specifically fringes) are updated in a timely
2771 manner when resizing the frame by dragging the mouse.
2772 (update_window_line): Update row if overlay arrow changed.
2773 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
2774 or overlay arrow changed.
2775
2776 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
2777 syms_of_fringe, and init_fringe.
2778
2779 * frame.h (struct frame): New member force_flush_display_p.
2780
2781 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
2782 Add prototypes.
2783
a3993cc8 2784 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
a64387ee 2785 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
a3993cc8
KS
2786 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
2787 Use cursor color for displaying cursor in fringe.
82722af3
KS
2788 (x_redisplay_interface): Add null handlers for
2789 define_fringe_bitmap and destroy_fringe_bitmap functions.
2790
2791 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
2792 xterm.c to handle overlayed fringe bitmaps and to use cursor color
2793 for displaying cursor in fringe.
2794 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
2795 specific functions to define and destroy fringe bitmaps in fringe_bmp.
2796 (w32_redisplay_interface): Add them to redisplay_interface.
2797 (w32_term_init): Call w32_init_fringe instead of explicitly
2798 defining fringe bitmaps in fringe_bmp array.
2799 (x_delete_display): Call w32_reset_fringes instead of explicitly
2800 destroying fringe bitmaps in fringe_bmp array.
2801
2802 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
2803 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
2804 (continued_bits, continuation_bits, ov_bits, first_line_bits)
2805 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
2806 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
2807 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
2808 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
2809 Move fringe handling vars and code to new file fringe.c.
2810 (handle_display_prop): Handle left-fringe and right-fringe
2811 display properties; store user fringe bitmaps in iterator.
2812 (move_it_in_display_line_to): Handle cursor in fringe at eob.
2813 (clear_garbaged_frames): Set force_flush_display_p if resized.
2814 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
2815 (display_line): Handle cursor in fringe at eob.
2816 (display_line): Set row user fringe bitmaps from iterator.
2817
2818 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
2819 Use cursor color for displaying cursor in fringe.
2820 (x_redisplay_interface): Add null handlers for
2821 define_fringe_bitmap and destroy_fringe_bitmap functions.
2822
030400eb
JD
28232004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2824
2825 * macfns.c (Fx_change_window_property): Make doc string and
2826 parameters same as for X version.
2827
2828 * w32fns.c (Fx_change_window_property): Ditto.
2829
3af55251
KS
28302004-02-07 Kim F. Storm <storm@cua.dk>
2831
ec110e9e
KS
2832 * xdisp.c (hscroll_window_tree): Position cursor near to right
2833 margin in hscrolled window when jumping to end of line (rather
2834 than centering cursor).
2835
3af55251
KS
2836 * process.c (wait_reading_process_input): Don't do adaptive read
2837 buffering if waiting for a specific process.
2838
b0c138ce
LT
28392004-02-05 Luc Teirlinck <teirllm@auburn.edu>
2840
2841 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
2842 (Fread_minibuffer, Feval_minibuffer)
2843 (Fread_string, Fread_no_blanks_input)
2844 (Fcompleting_read): Doc fixes.
2845 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
2846 completion-regexp-list. Define Qcase_fold_search and staticpro it.
2847 (read_minibuf): Fix initial comment.
2848 (Ftry_completion, Fall_completions, Ftest_completion): Bind
e8eeaed8 2849 case-fold-search to the value of completion-ignore-case when
b0c138ce
LT
2850 checking completion-regexp-list.
2851 (Fdisplay_completion_list): Make it handle arguments that are
2852 symbols. Doc fix.
2853
9676f5ad 28542004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 2855
9676f5ad 2856 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 2857
9676f5ad
JD
2858 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
2859 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 2860 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 2861 format. Remove unused variable cons.
5b698285
JD
2862
2863 * xselect.c: Include stdio,h.
2864
fc1d15f6
KH
28652004-02-05 Kenichi Handa <handa@m17n.org>
2866
ebaff4af
KH
2867 * fns.c (Fset_char_table_range): Fix previous change.
2868
fc1d15f6
KH
2869 * buffer.c (Fset_buffer_multibyte): Fix docstring.
2870
9676f5ad
JD
28712004-02-04 Luc Teirlinck <teirllm@auburn.edu>
2872
2873 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
2874
da75761f
SM
28752004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
2876
2877 * keymap.c (Vmouse_events): Rename from Vmenu_events.
2878 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
2879
13c5d120
KH
28802004-02-04 Kenichi Handa <handa@m17n.org>
2881
2882 * fns.c (Fset_char_table_range): Handle charsets ascii,
2883 eight-bit-control, and eight-bit-graphic correctly.
2884
2883d842
JR
28852004-02-03 Jason Rumney <jasonr@gnu.org>
2886
2887 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
2888
2889 * w32fns.c (x_to_w32_font): Likewise.
2890
69eff41f
JD
28912004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2892
2893 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
2894 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
2895
2896 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
2897 ClientMessages.
2898
2899 * xselect.c: Include termhooks.h and X11/Xproto.h
2900 (x_check_property_data, x_fill_property_data)
2901 (x_property_data_to_lisp, mouse_position_for_drop)
2902 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 2903 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
2904 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
2905
da75761f 2906 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
2907 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
2908 OUTER_P.
2909 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
2910 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
2911 if vector_ret_p is true.
2912 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 2913
a6eeaa81 29142004-02-02 Eli Zaretskii <eliz@gnu.org>
dcdbbb5d
EZ
2915
2916 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
2917 basename of FILE relative to it, not FILE itself.
2918
09721b31
KH
29192004-02-02 Kenichi Handa <handa@m17n.org>
2920
2921 * coding.c (coding_restore_composition): Check invalid
2922 composition data more rigidly.
2923
eb996101
LT
29242004-01-30 Luc Teirlinck <teirllm@auburn.edu>
2925
2926 * fileio.c (Fread_file_name_internal): Correctly handle the case
2927 where insert-default-directory is nil.
2928 (Fread_file_name): Always return an empty string if the user exits
2929 with an empty minibuffer. Adapt the docstring accordingly.
2930 (syms_of_fileio): Adapt the docstring of insert-default-directory
2931 to the change in Fread_file_name.
2932
a6eeaa81 29332004-01-29 Eli Zaretskii <eliz@gnu.org>
a0367d42
EZ
2934
2935 * alloca.c [!alloca]: Fix the prototype for xfree.
2936
13f52ed8
KH
29372004-01-29 Kenichi Handa <handa@m17n.org>
2938
2939 * fns.c (string_char_to_byte): Optimize for ASCII only string.
2940 (string_byte_to_char): Likewise.
2941
d57625a0
JR
29422004-01-28 Peter Runestig <peter@runestig.com>
2943
2944 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
2945
a64387ee 29462004-01-27 Steven Tamm <steventamm@mac.com>
911c78b4
ST
2947
2948 * unexmacosx.c (unexec_copy): Do not copy more than was
2949 requested to prevent overwriting during unexec.
2950
eb37b8fd
JD
29512004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2952
ce38070a
JD
2953 * process.c (sigchld_handler): Add comment about not calling malloc.
2954
eb37b8fd
JD
2955 * process.h: Add extern to synch_process_termsig.
2956
a64387ee 29572004-01-27 Steven Tamm <steventamm@mac.com>
21a3e657 2958
da75761f
SM
2959 * macterm.c (make_mac_frame, make_mac_terminal_frame):
2960 Move setting of scroll bars from make_mac_frame to
2961 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 2962
d62a265d
RS
29632004-01-26 Richard M. Stallman <rms@gnu.org>
2964
2965 * search.c (Freplace_match): Handle nonexistent
2966 back-references properly.
2967
29682004-01-03 Richard M. Stallman <rms@gnu.org>
2969
2970 * window.c (decode_any_window): New function.
2971 (Fwindow_height, Fwindow_width, Fwindow_edges)
2972 (Fwindow_pixel_edges, Fwindow_inside_edges)
2973 (Fwindow_inside_pixel_edges): Use decode_any_window.
2974
ff236419
JD
29752004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2976
2977 * process.h: synch_process_termsig new variable.
2978
2979 * callproc.c: Define synch_process_termsig.
2980 (Fcall_process): Initiate synch_process_termsig to zero and
2981 check if non-zero and get signal name after subprocess has ended.
2982
2983 * process.c (sigchld_handler): Set synch_process_termsig
2984 if terminated by a signal. synch_process_death setting removed.
2985
2986 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
2987
41b867ea
AS
29882004-01-26 Andreas Schwab <schwab@suse.de>
2989
2990 * print.c (print_preprocess): Declare size as EMACS_INT to not
2991 lose bits.
2992 (print_object): Likewise.
2993 * alloc.c (Fpurecopy): Likewise.
2994
a08084ff
LT
29952004-01-25 Luc Teirlinck <teirllm@auburn.edu>
2996
2997 * window.c (Fwindow_minibuffer_p): Doc fix.
2998
b19ac475
JY
29992004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
3000
3001 * editfns.c (Fformat): Make both passes accept the same set of flags.
3002
fe905025
KH
30032004-01-23 Kenichi Handa <handa@m17n.org>
3004
3005 * fns.c (Fmd5): If OBJECT is a buffer different from the current
3006 one, set buffer to OBJECT temporarily.
3007
438fc6c0
SM
30082004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
3009
455316e2
SM
3010 * keyboard.c (kbd_buffer_gcpro): Remove.
3011 (kbd_buffer_store_event, clear_event, Fdiscard_input)
3012 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
3013 Don't initialize and/or maintain the variable any more. It was made
3014 redundant by my commit of 2003-06-15.
3015
438fc6c0
SM
3016 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
3017
5335a4ee
JD
30182004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3019
3020 * lisp.h: Add undef DECL_ALIGN.
3021
dcdaeebc
SM
30222004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
3023
3024 * process.c (wait_reading_process_input) [SYNC_INPUT]:
3025 Check interrupt_input_pending explicitly.
3026
3027 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
3028
3029 * keyboard.c (handle_async_input): New fun,
3030 extracted from input_available_signal.
3031 (input_available_signal, reinvoke_input_signal): Use it.
3032
9076a823
SM
30332004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
3034
d7107586
SM
3035 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
3036
3037 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
3038 manipulation macros for when tags are in the lower bits.
3039 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
3040 (DECL_ALIGN): New macro.
3041 (DEFUN): Use it.
3042
3043 * lisp.h [ENABLE_CHECKING]: Don't force union type.
3044
3045 * s/darwin.h (__attribute__): Remove outdated workaround.
3046
3047 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
3048
3049 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
3050 Don't check range of malloc address.
3051 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
3052
9076a823
SM
3053 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
3054
3055 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
3056
ba029065
KH
30572004-01-19 Kenichi Handa <handa@m17n.org>
3058
3059 * fontset.c (fontset_font_pattern): Fix previous change.
3060
7af0e8d7
MB
30612004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
3062
3063 * xdisp.c (Voverflow_newline_into_fringe)
3064 (move_it_in_display_line_to, redisplay_internal)
3065 (update_window_fringes, redisplay_window, display_line, window):
3066 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
3067 that it compiles without a window-system.
3068 * dispnew.c (direct_output_for_insert, update_window): Likewise.
3069
77a9cf69
KS
30702004-01-16 Kim F. Storm <storm@cua.dk>
3071
3072 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
3073
a64387ee 3074 * buffer.c (init_buffer_once): Set buffer_defaults and
77a9cf69
KS
3075 buffer_local_flags for indicate_buffer_boundaries.
3076 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
3077 default- variable for it.
3078
3079 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
3080 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 3081 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
3082 overflowing newlines into right fringe.
3083 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
3084 and indicate_bottom_line_p for buffer boundaries and scrolling.
3085 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
3086 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
3087 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
3088 and HOLLOW_SQUARE_BITMAP.
3089 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
3090 Add prototypes.
3091
3092 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
3093 instead of related indicator fields.
3094 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
3095 (direct_output_for_insert): Handle exact width lines like
3096 contined lines. Call update_window_fringes.
3097 (update_window): Call update_window_fringes.
3098 (scrolling_window): Don't skip desired rows with changed bitmaps.
3099 Check if fringe bitmaps changes when assigning scrolled rows.
3100
3101 * xdisp.c (Voverflow_newline_into_fringe): New variable.
3102 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
3103 (move_it_in_display_line_to): Overflow newline into fringe for
3104 rows that are exactly as wide as the window.
3105 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
3106 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
3107 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
3108 (fringe_bitmaps): Add new bitmaps.
3109 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
3110 Select proper bitmap for cursor in fringe when appropriate.
3111 Handle alignment of bitmap to top or bottom of row.
3112 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
3113 done by update_window_fringes.
3114 (update_window_fringes, draw_window_fringes): New functions.
3115 (redisplay_internal): Call update_window_fringes in case only
3116 cursor row is updated.
3117 (redisplay_window): Call update_window_fringes.
3118 Explicitly call draw_window_fringes if redisplay was done using
3119 the current matrix or the overlay arrow is in the window.
3120 (try_window_reusing_current_matrix): Mark scrolled rows for
3121 fringe update (to update buffer-boundaries / scrolling icons).
3122 (find_last_unchanged_at_beg_row): Handle exact width lines line
3123 continued lines.
3124 (display_line): Overflow newline into fringe for rows that are
3125 exactly as wide as the window. Don't append space for newline
d7107586 3126 in this case.
77a9cf69
KS
3127 (notice_overwritten_cursor): Explicitly clear cursor bitmap
3128 in fringe as if it had been overwritten.
3129 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 3130 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
3131 void-text-area-pointer as user options.
3132 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 3133
77a9cf69
KS
3134 * xterm.c (x_update_window_end): Call draw_window_fringes.
3135 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
3136 in row instead of actually drawing fringe bitmaps.
3137 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
3138 (x_draw_window_cursor): Draw cursor in fringe.
3139
3140 * w32term.c (x_update_window_end): Call draw_window_fringes.
3141 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
3142 in row instead of actually drawing fringe bitmaps.
3143 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
3144 (w32_draw_window_cursor): Draw cursor in fringe.
3145
3146 * macterm.c (x_update_window_end): Call draw_window_fringes.
3147 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
3148 in row instead of actually drawing fringe bitmaps.
3149 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
3150 (mac_draw_window_cursor): Draw cursor in fringe.
3151
a633a954
JD
31522004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3153
3154 * xterm.c (handle_one_xevent): Don't handle characters that are part
3155 of an old style (XLookupString) compose sequence.
3156
80460525
KH
31572004-01-15 Kenichi Handa <handa@m17n.org>
3158
3159 * search.c (Freplace_match): Use make_multibyte_string or
3160 make_unibyte_string according to the buffer multibyteness.
3161
7fc34f85
SM
31622004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
3163
3164 * alloc.c (struct interval_block, struct string_block)
3165 (struct symbol_block, struct marker_block, live_string_p)
3166 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
3167 Better preserve alignment for objects in blocks.
3168 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
3169
3170 * lread.c (defvar_per_buffer): Remove dead declaration.
3171
3172 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
3173 space size.
3174
66070bd1
JD
31752004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3176
3177 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
3178 if a key press should pop down. Only pop down if a key is pressed
3179 outside the menu/dialog.
3180 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
3181 popup_get_selection.
3182 (create_and_show_dialog): Pass 1 for down_on_keypress to
3183 popup_get_selection.
3184
de7515d6
JD
31852004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3186
3187 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
3188 BLOCK/UNBLOCK_INPUT.
3189
160b1b50
JD
31902004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3191
3192 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
3193 specified.
3194
3a9f36e6
KH
31952004-01-08 Kenichi Handa <handa@m17n.org>
3196
3197 * editfns.c (Fformat): Fix '&' to '&&'.
3198
3803eb32
AS
31992004-01-08 Andreas Schwab <schwab@suse.de>
3200
3201 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
3202 size if PSEUDOVECTOR_FLAG is set.
3203
9da88f37
KH
32042004-01-07 Kenichi Handa <handa@m17n.org>
3205
74ac5074
KH
3206 * charset.c (Fdeclare_equiv_charset): Fix docstring.
3207
9da88f37
KH
3208 * fontset.c (fontset_ref_via_base): Fix previous change.
3209
05faee07
KS
32102004-01-07 Kim F. Storm <storm@cua.dk>
3211
3212 * process.c (read_process_output): Only activate adaptive
3213 buffering if we read less than 256 bytes at a time.
3214
634910c8
KS
32152004-01-06 Kim F. Storm <storm@cua.dk>
3216
3217 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
3218 object and image object. Return glyph width and height.
3219 (mode_line_string, marginal_area_string): Ditto.
3220
3221 * dispextern.h (buffer_posn_from_coords, mode_line_string)
3222 (marginal_area_string): Fix prototypes.
3223
3224 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
f63fd14e 3225 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
634910c8
KS
3226 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
3227
3228 * keyboard.c (make_lispy_position): Use modified mode_line_string,
3229 buffer_posn_from_coords, and marginal_area_string functions to
3230 include both string object and image object in the lispy position.
3231 Also add actual glyph width and height to position.
3232 (read_key_sequence): Use real buffer position from mouse
3233 event to find keymap property even when click is in marginal area.
3234
3235 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
3236 mode_line_string and marginal_area_string functions to handle
3237 both string object and image object properties.
d7107586 3238
57951c2e
AS
32392004-01-06 Andreas Schwab <schwab@suse.de>
3240
3241 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
3242 character.
3243
181e6a61
AS
32442004-01-02 Andreas Schwab <schwab@suse.de>
3245
d7107586
SM
3246 * macterm.c (emacs_options, x_initialized, same_x_server):
3247 Remove unused (and duplicated) definitions.
181e6a61 3248
31e0fbdd
KS
32492004-01-02 Kim F. Storm <storm@cua.dk>
3250
3251 * process.h (struct Lisp_Process): New members for adaptive read
3252 buffering: adaptive_read_buffering, read_output_delay, and
3253 read_output_skip.
3254
3255 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
3256 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
3257 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
3258 (process_output_delay_count, process_output_skip): New vars.
3259 (Vprocess_adaptive_read_buffering): New variable.
3260 (make_process): Initialize adaptive read buffering members.
3261 (Fstart_process): Set adaptive_read_buffering member.
3262 (deactivate_process): Cleanup adaptive read buffering.
3263 (wait_reading_process_input): Temporarily omit delayed
3264 subprocesses from the set of file descriptors to read from;
3265 adjust the select timeout if we skipped any subprocesses.
3266 (read_process_output): Increase adaptive read buffering delay if
3267 we read less than a full buffer; reduce delay when we read a
3268 full buffer.
3269 (send_process): Simplify using local Lisp_Process var.
3270 Reset adaptive read buffering delay after write.
3271 (init_process): Initialize process_output_delay_count and
3272 process_output_skip.
3273 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
3274
68c6a789
JR
32752004-01-01 Jason Rumney <jasonr@gnu.org>
3276
d7107586 3277 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 3278
3f70fe82
LT
32792003-12-30 Luc Teirlinck <teirllm@auburn.edu>
3280
3281 * print.c (Ferror_message_string): Add hyperlink in the docstring
3282 to the definition of `signal' in the Elisp manual.
3283 * eval.c (Fsignal): Ditto.
3284
a64387ee 32852003-12-29 James Clark <jjc@jclark.com> (tiny change)
c2be49ed
EZ
3286
3287 * fns.c (internal_equal): Return t for two NaN arguments.
3288
7abd90ea
RS
32892003-12-29 Richard M. Stallman <rms@gnu.org>
3290
3291 * data.c (store_symval_forwarding): Handle setting
3292 default-fill-column, etc., by changing the value in
3293 buffers that use the default.
3294
3295 * minibuf.c (Fset_minibuffer_window): Doc fix.
3296
3297 * fileio.c (choose_write_coding_system): Ignore auto_saving
3298 if using the visited file for auto saves.
3299 (Fwrite_region): Don't update SAVE_MODIFF
3300 if auto-saving in visited file.
3301
3e7cfcdc
KH
33022003-12-29 Kenichi Handa <handa@m17n.org>
3303
3304 * dispextern.h (face_font_available_p): Extern it.
3305
3306 * fontset.c (Voverriding_fontspec_alist): New variable.
3307 (lookup_overriding_fontspec): New function.
d7107586 3308 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
3309 (fontset_font_pattern): Likewise.
3310 (regulalize_fontname): New function.
3311 (Fset_fontset_font): Call regulalize_fontname.
3312 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
3313 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
3314 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
3315
3316 * xfaces.c (face_font_available_p): New function.
3317
7abd90ea
RS
33182003-12-28 Richard M. Stallman <rms@gnu.org>
3319
3320 * buffer.c (Fother_buffer): Don't crash if BUF is nil
3321 or if its name is nil.
3322
3323 * buffer.c (Fkill_buffer): Don't delete auto-save file
3324 if it's the same as the visited file.
3325
de1d1a40
LT
33262003-12-28 Luc Teirlinck <teirllm@auburn.edu>
3327
3328 * coding.c (Fcheck_coding_system): Doc fix.
3329
204fb75e
KS
33302003-12-28 Kim F. Storm <storm@cua.dk>
3331
3332 * Makefile.in (eval.o): Depend on dispextern.h.
3333
3334 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
3335 image glyph using image's ascent.
3336 (mode_line_string): Return image glyph as object clicked on.
3337 Adjust y0 for image glyph using image's ascent.
3338
3339 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
3340 (struct glyph): New members, ascent and descent. Used to save
3341 this glyph's ascent and descent, instead of having.
3342 (struct glyph): Declare member face_id using FACE_ID_BITS.
3343 (find_hot_spot): Add prototype.
3344
3345 * keyboard.c (Qimage): Remove extern (now in lisp.h).
3346 (QCmap): Declare extern.
3347 (make_lispy_position): When position is inside image hot-spot,
3348 use hot-spot element's id as posn element.
3349
3350 * lisp.h (IMAGEP): New macro to test for image object type.
3351 (Qimage): Declare extern.
3352
3353 * macfns.c (Qimage): Remove extern (now in lisp.h).
3354 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3355
3356 * macterm.c (Qface, Qmouse_face): Remove unused externs.
3357
3358 * w32fns.c (Qimage): Remove extern (now in lisp.h).
3359 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3360
3361 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
3362
3363 * w32term.c (Qface, Qmouse_face): Remove unused externs.
3364
3365 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
3366 pointer types.
3367 (Qrelative_width, Qalign_to): Remove unused variables.
3368 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
3369 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
3370 image maps.
d7107586 3371 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
3372 new dx and dy args.
3373 Remove buffer_only_p arg (always 0). Simplify code accordingly.
3374 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
3375 than row's ascent and height, to get sensible height on tall rows.
3376 (build_desired_tool_bar_string): Remove Qimage extern.
3377 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
3378 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
3379 image glyph is alone on the last line.
3380 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 3381 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 3382 (on_hot_spot_p): New function to check if position is inside an
d7107586 3383 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
3384 (find_hot_spot): New function to search for image hot-spot.
3385 (Flookup_image_map): New defun to search for image hot-spot.
3386 (define_frame_cursor1): New aux function to determine frame pointer.
3387 (note_mode_line_or_margin_highlight, note_mouse_highlight):
3388 Handle `pointer' text property and :pointer image property to
3389 control frame pointer shape. Detect image hot-spots for pointer
3390 and help_echo properties. Use define_frame_cursor1.
3391 (note_mouse_highlight): Use Vvoid_text_area_pointer.
f63fd14e 3392 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
204fb75e
KS
3393 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
3394
3395 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
3396
3397 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
3398 (Qimage): Remove extern (now in lisp.h).
3399 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3400
3401 * xmenu.c (show_help_event): Remove unused code.
3402
3403 * xterm.c (Qface, Qmouse_face): Remove unused externs.
3404 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
3405 row's ascent and descent, to get a sensible height on tall rows.
3406
fc052137
LT
34072003-12-25 Luc Teirlinck <teirllm@auburn.edu>
3408
3409 * minibuf.c (Fcompleting_read): Undo previous change.
3410
a64387ee 34112003-12-25 Lars Hansen <larsh@math.ku.dk>
b9148500
LH
3412
3413 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
3414 Arguments GCPRO'ed in call to file name handler.
3415
56ffd194
TTN
34162003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
3417
3418 * termcap.c (tgetst1): Scan for "%pN"; if all
3419 N are continuous in [1,9], remove all "%pN".
3420
5202d23d
JD
34212003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3422
f26fab36
JD
3423 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
3424
5202d23d
JD
3425 * xfaces.c (lface_fully_specified_p): Take into account that
3426 MAC OS always have unspecified stipple.
3427
8babaa59
TTN
34282003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
3429
3430 * tparam.c (tparam1): Add handling for `%pN', which
3431 means use param N for the next substitution.
3432
2d176448
TTN
34332003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
3434
3435 * xfaces.c (Fcolor_gray_p): Fix omission bug:
3436 In case `frame' is nil, consult the selected frame.
3437 (Fcolor_supported_p): Likewise.
3438
adb0708c
LT
34392003-12-23 Luc Teirlinck <teirllm@auburn.edu>
3440
000eeb15
LT
3441 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
3442 Doc fixes.
0dc72b11
LT
3443
3444 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
3445 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
3446 (Fread_from_minibuffer): Delete code moved into read_minibuf.
3447 Doc fix.
3448 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
3449 read_minibuf.
3450 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 3451 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 3452
2e4d132b
KH
34532003-12-03 Kenichi Handa <handa@m17n.org>
3454
3455 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
3456 encoding sequence.
3457
3999c705
KH
34582003-12-01 Kenichi Handa <handa@m17n.org>
3459
3460 * composite.c (syms_of_composite): Don't make the compostion hash
3461 table week.
3462
d344ecbb
LT
34632003-11-30 Luc Teirlinck <teirllm@auburn.edu>
3464
3465 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
3466 * textprop.c (Fget_char_property_and_overlay): New function.
3467 (syms_of_textprop): Defsubr it.
3468
03d6484e
JD
34692003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3470
019b1f0e
JD
3471 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
3472 to compile on terminal configuration.
3473
03d6484e
JD
3474 * fileio.c (Fread_file_name): Check use_file_dialog also before
3475 calling Fx_file_dialog.
3476
3477 * fns.c: use_file_dialog: New variable.
3478 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
3479
442d3fd0
KS
34802003-11-29 Kim F. Storm <storm@cua.dk>
3481
3482 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
3483 (syms_of_msdos): Don't intern and staticpro them.
3484
0f6a07a8
KS
34852003-11-27 Kim F. Storm <storm@cua.dk>
3486
3487 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
3488 coordinates relative to glyph at posn. If glyph is an image,
3489 return that as object at posn. Callers changed.
3490 (mode_line_string, marginal_area_string): Calculate and return
3491 pixel coordinates relative to glyph. Callers changed.
3492
3493 * dispextern.h (buffer_posn_from_coords, mode_line_string)
3494 (marginal_area_string): Fix prototypes.
3495 (window_box_left_offset, window_box_right_offset): Add prototypes.
3496
3497 * frame.h (get_specified_cursor_type, get_window_cursor_type):
3498 Remove prototypes.
3499
3500 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
3501
3502 * keyboard.c (make_lispy_position): Add x and y coordinates
3503 relative to the current glyph as 7th element of position.
3504 If glyph is an image, return it in the object element.
3505 (read_key_sequence): Skip checks for keymap property in cases
3506 where POSN_STRING is not a string (e.g. an image).
3507
3508 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
3509 (Vshow_text_cursor_in_void): New variable.
3510 (glyph_to_pixel_coords): Don't use negative hpos.
3511 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
3512 (append_stretch_glyph): Change ascent arg to be actual value
f63fd14e 3513 in pixels rather than ratio to height. Callers changed.
0f6a07a8
KS
3514 (calc_pixel_width_or_height): New aux function, implementing
3515 pixel based artihmetic for glyph widths and heights.
3516 (produce_stretch_glyph): Use calc_pixel_width_or_height for
3517 :width, :height, :align-to, and :ascent, thus allowing these to
3518 be specified in pixels as well as multiples of characters.
3519 Don't produce stretch glyphs with zero width or height.
3520 (get_specified_cursor_type): Declare static.
3521 (get_window_cursor_type): Declare static. Add glyph arg to be
3522 able to know when cursor is on an image; always substitute
3523 hollow-box cursor for filled-box cursor on images, to avoid
3524 negative images and flicker when blinking the cursor.
3525 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
3526 (note_mode_line_or_margin_highlight): Use non-text cursor rather
3527 than vertical scroll-bar cursor in display margins.
3528 (note_mouse_highlight): Use non-text cursor rather than text
3529 cursor in fringes and over images in the text area.
3530 Use non-text cursor when mouse pointer is outside editable text,
3531 i.e. in the void after end-of-line or end-of-buffer; this was
3532 already done for W32, but is now standard for all systems --
3533 user can toggle show-text-cursor-in-void to get old behaviour.
3534 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
3535 Vdisplay_pixels_per_inch.
3536
00498bfc
AS
35372003-11-25 Andreas Schwab <schwab@suse.de>
3538
3539 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
3540 EMACS_INT to not lose bits.
3541 (Ffillarray): Don't set bits beyond the size of a bool vector.
3542
edaa824d
KS
35432003-11-25 Kim F. Storm <storm@cua.dk>
3544
3545 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
3546 define this defun on systems that cannot use stderr as lvalue.
3547
74d6f539
GM
35482003-11-24 Gerd Moellmann <gerd@gnu.org>
3549
3550 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
3551 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
3552 ld's default is incompatible with unexec.
3553
6a1ff3ba
KS
35542003-11-23 Kim F. Storm <storm@cua.dk>
3555
63dc7c6b
KS
3556 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
3557 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
3558 (Fforce_window_update): New defun.
3559 (syms_of_window): Defsubr it.
3560 (Fset_window_margins, Fset_window_fringes): Doc fix.
3561
6a1ff3ba
KS
3562 * print.c (Fredirect_debugging_output): New defun.
3563 (syms_of_print): Defsubr it.
3564
aef109b7
LT
35652003-11-22 Luc Teirlinck <teirllm@auburn.edu>
3566
3567 * fns.c (Fset_char_table_parent): Doc fix.
3568
6a1ff3ba 35692003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
3570
3571 * dispnew.c (buffer_posn_from_coords): Return actual row/column
3572 for glyph clicked on, rather than (unused) pixel positions.
3573 (mode_line_string, marginal_area_string): Change X and Y args to
3574 pointers for returning actual row/column for glyph clicked on.
3575 Simplify and optimize loops.
3576
aef109b7
LT
3577 * dispextern.h (mode_line_string, marginal_area_string):
3578 Update prototypes.
63ccbe21
KS
3579
3580 * keyboard.c (make_lispy_position): New function for generating
3581 mouse click positions from frame and pixel coordinates.
3582 Enhanced to return buffer position and actual row/column for
3583 events outside the text area using updated mode_line_string and
3584 marginal_area_string functions.
3585 Return left-fringe and right-fringe clicks as such, rather than
3586 clicks in text area.
3587 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
3588 pixel_to_glyph_coords, as we never use the results.
3589 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
3590 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
3591 Eliminate unused code in WHEEL_EVENT handling.
3592 (make_lispy_movement): Use make_lispy_position.
3593
3594 * window.c (coordinates_in_window): Remove redundant tests.
3595 Fix returned X pixel value for left-margin.
3596
3597 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
3598 mode_line_string and marginal_area_string parameters.
3599
a64387ee 36002003-11-22 Lars Hansen <larsh@math.ku.dk>
930a9995 3601
d7107586
SM
3602 * w32.c (struct the_group, getgrgid): Add.
3603 * mac.c (struct my_group, getgrgid): Add.
aef109b7 3604
3dbf3426
LT
36052003-11-21 Luc Teirlinck <teirllm@auburn.edu>
3606
3607 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
3608
cae8ddbb 36092003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 3610
d7107586
SM
3611 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
3612 include in call to file name handler. Optionally translate numeric
3613 UID and GID to strings. Update docstring.
3614 (directory_files_internal): Add parameter ID-FORMAT.
3615 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
3616 include in call to file name handler and call to
3617 directory_files_internal. Update Docstring.
3618 (Fdirectory_files): Add dummy parameter in call to
3619 directory_files_internal.
3620 * lisp.h (Qinteger): Add.
3621 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
3622 (Ffile_attributes): Add parameter.
3623 * data.c (Qinteger): Export.
cae8ddbb 3624
2550b848
LT
36252003-11-21 Luc Teirlinck <teirllm@auburn.edu>
3626
3dbf3426 3627 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 3628
88380018
KS
36292003-11-19 Kim F. Storm <storm@cua.dk>
3630
3631 * xdisp.c (init_iterator): Initialize it->start to position
3632 before reseating (in case start position is invisible).
3633 (init_to_row_start): Set it->start to row-start.
3634 (redisplay_window): Accept optional_new_start if start position
3635 is invisible (in which case IT_CHARPOS overshoots PT).
3636 (display_line): Setup row->start from it->start (rather than
3637 it->current which is wrong if first char on line is invisible).
3638 When done, reseat it->start to it->current (= start of next row).
3639 (expose_area): Fix exposure of text area when first char (e.g. TAB)
3640 is only partially visible.
3641
3642 * dispextern.h (struct it): New member start.
3643
854c1a59
SM
36442003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
3645
455316e2
SM
3646 * alloc.c (make_float, Fcons): Clear the markbit at init time.
3647 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
3648 of block_index outside of the macro call.
3649 (Fgarbage_collect): Remove null code.
3650
3651 * m/amdx86-64.h: Don't redefine XPNTR.
3652
854c1a59
SM
3653 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
3654 of VALMASK.
3655
3656 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
3657 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
3658 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
3659
3660 * lisp.h (VALMASK): Only define for non-union type.
3661 (MARKBIT): Remove.
3662 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
3663 (XTYPE): Define unconditionally.
3664 (XSETTYPE): Remove one more remnant.
3665 (EQ): Define differently for the union and non-union cases.
3666 (INTMASK): New bit mask.
3667 (struct Lisp_Marker): Move down to prepare for upcoming patch.
3668 (GC_EQ): Delegate to EQ.
3669
3670 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
3671
a0c6ef2d
JD
36722003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3673
3674 * xterm.c (x_window_to_scroll_bar): Move check of display to
3675 where window_id is compared.
3676
859492c4
KS
36772003-11-17 Kim F. Storm <storm@cua.dk>
3678
3679 * dispextern.h (struct it): New member first_vpos.
3680
3681 * xdisp.c (start_display): Set it->first_vpos.
3682 (try_window_id): Use first_vpos to start display in first _text_
3683 line if no reusable lines at start of window with header line.
3684
810f2256
JD
36852003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3686
7c402969 3687 * w32fns.c (XPutPixel):
854c1a59
SM
3688 * w32bdf.c (w32_init_bdf_font):
3689 * sunfns.c (sel_read):
3690 * process.c (Fmake_network_process):
3691 * frame.c (store_frame_param):
3692 * fontset.c (Fset_fontset_font):
3693 * emacs.c (shut_down_emacs):
a64387ee 3694 * ccl.c (ccl_driver): Remove period at end of error message.
7c402969 3695
a32e9bfd
JD
3696 * config.in: Regenerate.
3697
810f2256
JD
3698 * xfns.c (x_window_to_frame, x_any_window_to_frame)
3699 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
3700 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
3701 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
3702 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
3703
3704 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
3705
3706 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
3707 (XTmouse_position, handle_one_xevent): Pass Display* to
3708 x_window_to_scroll_bar.
3709 (x_window_to_scroll_bar): Take a Display* argument.
3710 Check that display for frame is equal to Display* argument.
854c1a59 3711 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
3712 x_display_info_for_display instead. Use Display in xev instead
3713 of GDK_DISPLAY.
3714 (x_dispatch_event): Call x_display_info_for_display.
f63fd14e 3715 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
810f2256
JD
3716 (x_connection_closed): Call xg_display_close for GTK.
3717 (x_term_init): Call xg_display_open for additional displays.
3718 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
3719 for GTK.
3720
3721 * xmenu.c (single_menu_item, mouse_position_for_popup)
3722 (x_activate_menubar): Formatting adjustments.
3723
3724 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
3725 adjustments.
3726
3727 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
3728 (xg_display_close, xg_create_default_cursor)
3729 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
3730 handling.
854c1a59
SM
3731 (xg_left_ptr_cursor): Remove.
3732 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
3733 cursor here.
3734 (xg_win_to_widget): Take Display* argument, call
3735 gdk_xid_table_lookup_for_display.
3736 (xg_create_frame_widgets, xg_get_file_name, create_menus)
3737 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
3738 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
3739 in FRAME_X_DISPLAY_INFO.
3740 (xg_get_scroll_id_for_window): Take Display* argument.
3741 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 3742 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256
JD
3743
3744 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
3745 Display* argument also. Declare xg_display_open,
3746 xg_display_close, xg_create_default_cursor.
3747
0b03cc78
JD
37482003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3749
3750 * xterm.c (x_detect_focus_change): Do not change focus frame for
3751 Enter/LeaveNotify if the current focus frame has explicit focus.
3752
77e688fa
KS
37532003-11-14 Kim F. Storm <storm@cua.dk>
3754
3755 * dispnew.c (update_text_area): Fix redisplay error when hscroll
3756 is active and first glyph is only partially visible.
854c1a59 3757
dd429b03
KH
37582003-11-13 Kenichi Handa <handa@m17n.org>
3759
3760 * xdisp.c (select_frame_for_redisplay): New function.
3761 (redisplay_internal): Record also selected_frame for
3762 unwind_redisplay. Call select_frame_for_redisplay before
3763 redrawing each frame.
3764 (unwind_redisplay): Argument changed to a cons.
3765
6d9266f4
LT
37662003-11-12 Luc Teirlinck <teirllm@auburn.edu>
3767
3768 * fns.c (Fstring_to_multibyte): Doc fix.
3769
80060eb3
KH
37702003-11-11 Kenichi Handa <handa@m17n.org>
3771
3772 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
3773
74305183
JD
37742003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3775
3776 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
3777 program specified positions.
3778
cfda993e
JD
37792003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3780
3781 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
3782
df211069
KH
37832003-11-08 Kenichi Handa <handa@m17n.org>
3784
3785 * Makefile.in (lisp): Add kannada.el.
3786 (shortlisp): Likewise.
3787
4307d534
KH
37882003-11-07 Kenichi Handa <handa@m17n.org>
3789
854c1a59
SM
3790 * coding.c (coding_allocate_composition_data):
3791 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
3792 (coding_restore_composition): Detect invalid composition data.
3793 Give Fstring and Fvector a Lispy integer, not C int.
3794
854c1a59
SM
37952003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
3796
3797 * floatfns.c (Flogb): Don't use VALMASK.
3798
3799 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
3800 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
3801
3802 * lisp.h (XINT): Move the cast to clarify what is going on.
3803 (GCTYPEMASK, XSETTYPE): Remove.
3804 (XGCTYPE): Make it an alias of XTYPE.
3805
d04103a1
JD
38062003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3807
3808 * xterm.c (x_term_init): Fix formatting.
3809
da18b5ac
JD
38102003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3811
3812 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
3813 and xg_did_tearoff.
3814
3815 * gtkutil.c: Remove variable xg_did_tearoff.
3816 (xg_have_tear_offs): New function.
3817 (tearoff_remove): Just decrease xg_detached_menus.
3818 (tearoff_activate): Increase xg_detached_menus and call
3819 tearoff_remove when tearoff is removed.
854c1a59 3820 (xg_keep_popup): Remove function.
da18b5ac
JD
3821 (create_menus): Give add_tearoff_p as argument to recursive
3822 call to create_menus.
3823 (xg_create_widget): Use variables instead of multiple
3824 strcmp. Tell create_menus to create tear off only for
3825 menu bar menus.
3826 (xg_update_menubar): Change title for a detached menu also.
3827 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
3828 of deep_p.
3829 (xg_initialize): Initialize xg_detached_menus, remove
3830 initialization of xg_did_tearoff.
3831
3832 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
3833 xg_have_tear_offs returns non-zero.
3834 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
3835 call to xg_keep_popup.
3836
64d4923e
AC
38372003-11-01 Andrew Choi <akochoi@shaw.ca>
3838
3839 * macterm.c (XTread_socket): Handle menubar selection and grow
3840 window only for mouseDown events.
854c1a59 3841
6cc8bc07
JD
38422003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3843
3844 * xterm.c (x_term_init): For GTK part, increase x_initialized
3845 to check for more than one display. Use error instead of return 0.
3846
043131c4
AC
38472003-10-31 Andrew Choi <akochoi@shaw.ca>
3848
854c1a59 3849 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
3850 (copy_dysymtab): Call it.
3851
bdda99a1
LT
38522003-10-31 Luc Teirlinck <teirllm@auburn.edu>
3853
3854 * eval.c (Fdefvaralias): Doc fix.
3855
800f42ff 38562003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
3857
3858 * data.c (Fsetplist): Doc fix.
3859
ef35b389
LK
38602003-10-14 Lute Kamstra <lute@gnu.org>
3861
3862 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 3863
ef35b389 38642003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 3865
07107abc
KS
3866 * window.c (Fset_window_margins): Simplify arg checking.
3867
f7005886
RS
38682003-10-13 Richard M. Stallman <rms@gnu.org>
3869
3870 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
3871 (print_partial_compiled_pattern): Replace assert with a printout.
3872 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
3873
3874 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
3875
3876 * window.c (Fset_window_margins): Allow only integers as args.
3877 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
3878 Doc fixes.
3879
9c0c2af5
LK
38802003-10-13 Lute Kamstra <lute@gnu.org>
3881
3882 * window.c (Fset_window_fringes): Elaborate docstring.
3883
3f080e4e
AC
38842003-10-12 Andrew Choi <akochoi@shaw.ca>
3885
854c1a59 3886 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 3887
3f080e4e
AC
3888 * s/darwin.h (GC_MARK_STACK): Define.
3889
0aa513ed
JD
38902003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3891
3892 * window.c (shrink_windows): New function.
3893 (size_window): Call shrink_windows to calculate window sizes when
3894 shrinking frame with more than one window.
3895
6aa8858a
KS
38962003-10-12 Kim F. Storm <storm@cua.dk>
3897
3898 * xdisp.c (compute_fringe_widths): Doc fix.
3899
c2164d91
KH
39002003-10-08 Kenichi Handa <handa@m17n.org>
3901
854c1a59 3902 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 3903
f82ac129
KH
39042003-10-07 Kenichi Handa <handa@m17n.org>
3905
3906 * coding.c (Qcoding_system_define_form): New variable.
3907 (syms_of_coding): Intern and staticpro it.
3908 (Fcheck_coding_system): Try to autoload the definition of
3909 CODING-SYSTEM.
3910
9296c947
LT
39112003-10-05 Luc Teirlinck <teirllm@auburn.edu>
3912
3913 * fns.c (Frequire): Doc fix.
3914
c1f0671a
JD
39152003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3916
3d8c3826
JD
3917 * xfns.c (Fx_send_client_event): New function as a base for
3918 manipulating extended window manager hints.
6dc15d98 3919 (Fx_send_client_event): Remove unused variable s.
3d8c3826 3920
068ae0fd
JD
3921 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
3922 that function is removed.
3923
3924 * xterm.c (x_set_offset): Use move_offset_left/top instead of
3925 x/y_pixels_outer_diff.
3926 (x_check_expected_move): Calculate move_offset_left/top.
3927
3928 * xterm.h (struct x_output): New members: move_offset_top/left.
3929
854c1a59 3930 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
3931 call x_set_offset directly.
3932
3933 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
3934
96f09305
JD
3935 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
3936
3937 * xterm.c (x_delete_display): Free font names and font_encoder
3938 in dpyinfo->font_table.
3939
854c1a59
SM
3940 * xfns.c (Fx_close_connection): Only call XFreeFont here.
3941 Move xfree of font names to x_delete_display.
96f09305 3942
c1f0671a
JD
3943 * xterm.h (struct x_display_info): New member, wm_type.
3944 (struct x_output): New members, expected_top/left and
3945 check_expected_move.
3946
3947 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
3948 is received.
854c1a59
SM
3949 (handle_one_xevent): Rename x_check_expected_move from
3950 x_check_fullscreen_move.
c1f0671a
JD
3951 (x_set_offset): Only add WM decoration sizes to modified_top/left
3952 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 3953 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
3954 Removed fullscreen specific code. Use check_expected_move,
3955 expected_left/top instead. Also, set wm_type.
3956 (x_term_init): Initialize wm_type to unknown.
3957
3958 * frame.c (x_fullscreen_move): Remove addition of WM decoration
3959 sizes to move_x/y.
3960
be2fdba9
KH
39612003-10-03 Kenichi Handa <handa@m17n.org>
3962
3963 * macterm.c (x_load_font): Clear all members of FONTP before start
3964 filling them.
3965
39662003-10-02 Kenichi Handa <handa@m17n.org>
3967
3968 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
3969 before calling find_ccl_program_func. Call find_ccl_program_func
3970 only when fontp->font_encoder is not NULL.
3971
3972 * xterm.c (x_load_font): Clear all members of FONTP before start
3973 filling them.
3974
26a6e439
JPW
39752003-10-03 John Paul Wallington <jpw@gnu.org>
3976
3977 * keymap.c (map_keymap): Don't abort when binding is a vector.
3978
0d4c2dc2
JR
39792003-10-02 Jason Rumney <jasonr@gnu.org>
3980
854c1a59
SM
3981 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
3982 Sync dependencies with Makefile.in.
a63cf46f
JR
3983 (alloca.o): Remove.
3984
0d4c2dc2
JR
3985 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
3986 filling them.
3987
3988 * w32bdf.c (w32_load_bdf_font): Likewise.
3989
ab8f7d5c
RS
39902003-09-30 Richard M. Stallman <rms@gnu.org>
3991
3992 * term.c (set_tty_color_mode): Calculate current_mode_spec
3993 regardless of value of VAL.
3994
854c1a59 3995 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
3996 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
3997 Handle over_used when splitting UNDER.
3998
a64387ee 39992003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ab8f7d5c
RS
4000
4001 * regex.c (regex_compile): Free the stack when returning from function.
4002
3413f972
KH
40032003-09-28 Kenichi Handa <handa@m17n.org>
4004
4005 * fontset.c (Finternal_char_font): Change return value to
4006 cons (FONT-NAME . GLYPH-CODE).
4007
a6eeaa81 40082003-09-28 Eli Zaretskii <eliz@gnu.org>
40409f05
EZ
4009
4010 * term.c (tty_setup_colors): Treat any negative argument as -1.
4011
f98ddc99
KH
40122003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
4013
4014 * process.c (send_process): Delete unused temp_buf.
4015
66c8f1a8
DL
40162003-09-26 Dave Love <fx@gnu.org>
4017
4018 * xterm.c (x_bitmap_mask): Declare.
4019
ca716c26
DL
40202003-09-25 Dave Love <fx@gnu.org>
4021
4022 * Makefile.in (fns.o): Depend on md5.h.
4023
fbe57420
KS
40242003-09-25 Kim F. Storm <storm@cua.dk>
4025
4026 * window.c (set_window_buffer): Fix redisplay problems when
4027 switching between buffers with different display margin widths.
4028
ef6ae4ff
KS
40292003-09-23 Kim F. Storm <storm@cua.dk>
4030
4031 * process.c (set_socket_option): Fix :bindtodevice option.
4032 (Fset_network_process_option): Update process contact list when
4033 setting option succeeds.
4034 (Fmake_network_process): Doc fix.
4035
68e03c1c
DL
40362003-09-23 Dave Love <fx@gnu.org>
4037
7146d1c1 4038 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 4039
a6eeaa81 40402003-09-22 Eli Zaretskii <eliz@gnu.org>
2f809aae
EZ
4041
4042 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
4043 color mode is an integer number (it could be -1).
4044
8fe7d8c8
RS
40452003-09-22 Richard M. Stallman <rms@gnu.org>
4046
4047 * intervals.c (graft_intervals_into_buffer): Correct the main loop
4048 in the case where OVER is longer than UNDER.
4049
2f71b5ea
MY
40502003-09-22 Masatake YAMATO <jet@gyve.org>
4051
7146d1c1 4052 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 4053 `vertical_type'.
7146d1c1 4054
0c4da023
KS
40552003-09-21 Kim F. Storm <storm@cua.dk>
4056
4057 * frame.c (Vdefault_frame_scroll_bars): New variable.
4058 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
4059 (syms_of_frame): DEFVAR_LISP it, and initialize according to
4060 window-system default scroll bar position.
4061
b648413b
KS
4062 * window.c (Fwindow_scroll_bars): Doc fix.
4063
8f5b9e34
JD
40642003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4065
854c1a59 4066 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 4067
b0f23edf
RS
40682003-09-19 Richard M. Stallman <rms@gnu.org>
4069
4070 * atimer.h: Don't include lisp.h.
4071 (P_): Define it here (as well as elsewhere).
4072
4073 * print.c (Fprin1_to_string): Move the PRINTPREPARE
4074 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
4075
4076 * data.c (Fvariable_binding_locus): New function.
4077 (syms_of_data): defsubr it.
4078 (Flocal_variable_p): Delete duplicate call to indirect_variable.
4079
e1283999
DL
40802003-09-18 Dave Love <fx@gnu.org>
4081
ad5f3636
DL
4082 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
4083
e1283999
DL
4084 * process.c (Fnetwork_interface_info): Fix type error.
4085 (Fnetwork_interface_list): Doc fix.
4086 (read_process_output, read_process_output): Delete unused var.
4087
b8c7fd71
KS
40882003-09-17 Kim F. Storm <storm@cua.dk>
4089
4090 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
4091 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
4092 (Fnetwork_interface_info): Check that ifreq struct has required
4093 fields before accessing them; this requires that those fields are
4094 defined as macros, which may be too restrictive on some platforms,
4095 but it is better than failing on other platforms.
4096 (syms_of_process): Only defsubr above fns when included.
4097
11e0a411
DL
40982003-09-17 Dave Love <fx@gnu.org>
4099
4100 * unexalpha.c: Don't include varargs.h.
4101
e9c50801
KS
41022003-09-17 Kim F. Storm <storm@cua.dk>
4103
4104 * process.c (Fset_process_sentinel): Add sentinel to childp plist
4105 for network process.
4106 (socket_options): Add `:' prefix to option names. Add optbit field.
4107 (set_socket_option): Remove no_error arg and special handling of s < 0.
4108 Return 1<<optbit for known option, 0 for unknown.
4109 Do not interpret 0 as false for boolean option (only nil).
4110 Pass failed option and value to report_file_error.
7146d1c1 4111 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
4112 (Fset_network_process_option): New function to set just one option.
4113 (Fmake_network_process): Allow :coding arg to be a cons.
4114 Allow :server arg to be an integer specifying backlog size.
4115 Remove :options arg, and allow options to be specified directly
4116 as :KEY, VALUE pairs. Parse these options before binding socket.
4117 As before, :reuseaddr t is default for a server process, but this
4118 can now be disabled by specifying :reuseaddr nil.
4119 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
4120 (init_process): Availability of network options is now checked with
4121 simpler syntax (featurep 'make-network-process :OPTION); use loop to
4122 setup features.
4123 (syms_of_process): Fix defsubr's for the replaced functions.
4124
a0fc3644
DL
41252003-09-16 Dave Love <fx@gnu.org>
4126
4127 * Makefile.in: Depend on coding.h.
4128
6df2a645
KS
41292003-09-14 Kim F. Storm <storm@cua.dk>
4130
4131 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
4132 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
4133 (syms_of_process): Defsubr them.
4134
4135 * config.in: Regenerate.
7146d1c1
SM
4136
41372003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
4138
4139 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
4140 * m/news-r6.h (XUNMARK): Remove.
4141 * m/mips.h (XUNMARK): Remove.
4142 * m/mips-siemens.h (XUNMARK): Remove.
4143 * m/iris4d.h (XUNMARK): Remove.
4144 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
4145
0930c1a1
SM
41462003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
4147
31003b9e
SM
4148 * lisp.h (VALBITS): Don't remove 1 for the markbit.
4149 (union Lisp_Object): Use unsigned int for types. Remove markbit.
4150 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
4151 (XTYPE): Use unsigned right-shift.
4152 (XMARKBIT, XMARK, XUNMARK): Remove.
4153
0930c1a1
SM
4154 * alloc.c (init_intervals, init_symbol, init_marker):
4155 Don't preallocate anything.
4156 (Fgarbage_collect, mark_object): Ignore the markbit.
4157
4158 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
4159
19bb0fcd 41602003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
4161
4162 * xdisp.c (pint2hrstr): New function.
4163 (decode_mode_spec): Add `%i' and `%I' specs.
4164 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
4165 for `mode-line-format'.
4166
03bb6a06
AS
41672003-09-07 Andreas Schwab <schwab@suse.de>
4168
4169 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
4170 avoid warning.
4171
a6eeaa81 41722003-09-07 Eli Zaretskii <eliz@gnu.org>
2063d89c 4173
0930c1a1 4174 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 4175
ed159bbf
KS
41762003-09-03 Kim F. Storm <storm@cua.dk>
4177
4178 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
4179 change (superseded by 2002-08-30 change); the default blink-off
4180 cursor is now again "no cursor".
4181
fe64a394
JR
41822003-09-01 Jason Rumney <jasonr@gnu.org>
4183
4184 * makefile.w32-in (alloca.o): Remove.
4185 (coding.o): Depend on intervals.h
4186 (emacs.o, bytecode.o): Depend on window.h
4187
c0175e24
DL
41882003-09-01 Dave Love <fx@gnu.org>
4189
4190 * Makefile.in (alloca.o): Remove commands.
4191 (coding.o): Depend on intervals.h composite.h window.h.
4192 (emacs.o): Depend on window.h keyboard.h keymap.h.
4193 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
4194 (bytecode.o): Depend on window.h.
4195
a24d4cb2
JR
41962003-08-31 Jason Rumney <jasonr@gnu.org>
4197
4bc2315e
JR
4198 * w32term.c (w32_per_char_metric): Allow cached metrics to be
4199 returned even when font_type is unknown.
4200
a24d4cb2
JR
4201 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
4202
9d35adc7
JD
42032003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4204
4205 * xterm.c (x_term_init): Initialize new fields in x_display_info.
4206
4207 * xterm.h (struct x_display_info): Add red/green/blue_bits and
4208 *_offset.
4209
4210 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
4211 calculate pixel value.
4212
6f68b035
GM
42132003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
4214
0930c1a1
SM
4215 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
4216 Don't tell redisplay display is accurate when it's actually been
4217 paused for pending input.
6f68b035 4218
4828b4d7
RS
42192003-08-29 Richard M. Stallman <rms@gnu.org>
4220
4221 * dispnew.c (adjust_glyph_matrix): Call window_box
4222 whenever W is nonzero.
4223
4224 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
4225 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 4226 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
4227 Use indirect_variable to trace thru variable aliases.
4228
4229 * config.in: Updated.
4230
4231 * callint.c (Fcall_interactively): Save and restore
4232 Vthis_command, Vthis_original_command, real_this_command,
4233 and current_kboard->Vlast_command.
4234
4235 * abbrev.c (Fexpand_abbrev): Insert before deleting.
4236
e019878d
GM
42372003-08-29 Gerd Moellmann <gerd@gnu.org>
4238
4239 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
4240
85478bc6
KH
42412003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
4242
0930c1a1 4243 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
4244 (decode_coding_sjis_big5): Likewise.
4245
07ce82d3
JR
42462003-08-27 Jason Rumney <jasonr@gnu.org>
4247
d3703de3
JR
4248 * w32.c (sys_pipe): Protect against file descriptor overflow.
4249
ee4a01d1
JR
4250 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
4251
07ce82d3
JR
4252 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
4253
a64387ee 42542003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
72d19c66
LK
4255
4256 * xfns.c (Vgtk_version_string): New variable.
4257 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
4258
a6eeaa81 42592003-08-24 Eli Zaretskii <eliz@gnu.org>
5459e42a 4260
0930c1a1 4261 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 4262
5459e42a
EZ
4263 * Makefile.in (msdos.o): Depend on intervals.h.
4264
0930c1a1 4265 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 4266
231d6cfb
JD
42672003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4268
4269 * xterm.h (struct x_display_info): New fields: client_leader_window
4270 and Xatom_wm_client_leader.
4271
4272 * xterm.c (x_initialize): Move call to x_session_initialize to ...
4273 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
4274
4275 * xsmfns.c (create_client_leader_window): New function.
4276 (x_session_initialize): Call create_client_leader_window, take
4277 dpyinfo as argument.
4278
4279 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
4280
4281 * Makefile.in (xsmfns.o): Add more depenedencies.
4282
afa88464
DL
42832003-08-21 Dave Love <fx@gnu.org>
4284
4285 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
4286
f730033e
KH
42872003-08-21 Kenichi Handa <handa@m17n.org>
4288
4289 * term.c (term_init): Fix previous change; don't rely on the
4290 length of `buffer' if TERMINFO is defined.
4291
6dca786c
DL
42922003-08-20 Dave Love <fx@gnu.org>
4293
4294 * atimer.h: Include lisp.h.
4295
4296 * lisp.h (EMACS_LISP_H): New.
4297 (popup_activated_flag): Don't declare.
4298
4299 * alloca.c: Some merging with gnulib. Change logic and doc
4300 concerning (x)malloc/(x)free -- no longer Emacs-specific.
4301 [DO_BLOCK_INPUT]: Don't include lisp.h.
4302 (xmalloc, xfree): Declare.
4303 (malloc): Don't declare.
4304
0930c1a1 4305 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
4306 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
4307 atimer.h, blockinput.h.
4308
4309 * alloc.c (lisp_align_malloc): Change type of `aligned'.
4310
4311 * alloca.s: Removed.
4312
3a06a6d9
RS
43132003-08-19 Gerd Moellmann <gerd@gnu.org>
4314
4315 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
4316 use -lncurses.
4317
4318 * term.c (term_init): Use a buffer of size 4096 for tgetent since
4319 FreeBSD returns something longer than 2044. Abort if the end of
4320 the buffer is overwritten.
4321
27eeee55
MB
43222003-08-19 Miles Bader <miles@gnu.org>
4323
4324 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
4325
2f297815
GM
43262003-08-19 Gerd Moellmann <gerd@gnu.org>
4327
f4446bbf
GM
4328 * alloc.c (lisp_align_malloc): Check for memory full when
4329 allocating ablocks, which also avoids freeing a pointer into an
4330 ablocks structure.
4331
4332 * puresize.h (BASE_PURESIZE): Increase to 1100000.
4333
0930c1a1 4334 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 4335
0e7d7aae
RS
43362003-08-16 Richard M. Stallman <rms@gnu.org>
4337
4338 * editfns.c (Fencode_time): Doc fix.
4339
43402003-08-16 David Ponce <david@dponce.com>
4341
4342 * fileio.c (Fwrite_region): Fix conditional expression to issue
4343 the right message.
4344
43452003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
4346
4347 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 4348 Set default value to 1.
0e7d7aae 4349
5d551295
KH
43502003-08-15 Kenichi Handa <handa@m17n.org>
4351
4352 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
4353 what autoscaled.
4354 (best_matching_font): Once we find a better scalable font, set
4355 non_scalable_has_exact_height_p to 1.
4356 (try_font_list): Call try_alternative_families to try any family
4357 with the given registry.
4358
1661e56b
AS
43592003-08-09 Andreas Schwab <schwab@suse.de>
4360
f29181dc
AS
4361 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
4362
1661e56b
AS
4363 * print.c (print_string): Fix printing of multibyte string with
4364 nontrivial printcharfun.
4365
465aa50a
JD
43662003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4367
4368 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
4369
4370 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
4371
e430e5ba
KH
43722003-07-31 Kenichi Handa <handa@m17n.org>
4373
4374 * process.c (read_process_output): Return the actually read bytes
4375 instead of the result of decoding.
4376
97e7188e
KH
43772003-07-31 Kenichi Handa <handa@m17n.org>
4378
4379 * xterm.h (struct x_bitmap_record): New member have_mask.
4380
4381 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
4382 to 0.
4383 (x_create_bitmap_from_file): Likewise.
4384 (x_destroy_bitmap): Check have_mask member before freeing a mask.
4385 (x_destroy_all_bitmaps): Likewise.
4386 (x_create_bitmap_mask): Set have_mask member to 1.
4387
b53094d6
RS
43882003-07-30 Richard M. Stallman <rms@gnu.org>
4389
4390 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
4391
631f2082
JD
43922003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4393
4394 * gtkutil.c (xg_mark_data): Update calls to mark_object.
4395
c855f2ca
RS
43962003-07-29 Richard M. Stallman <rms@gnu.org>
4397
4398 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
4399 Conditionalize XIM code on HAVE_XIM.
4400
4401 * fns.c (Fclear_string): New function.
4402 (syms_of_fns): defsubr it.
4403
17e6d491
KH
44042003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
4405
0930c1a1 4406 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 4407
29ea8ae9
SM
44082003-07-22 Stefan Monnier <monnier@cs.yale.edu>
4409
4410 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
4411
4412 * buffer.c (delete_all_overlays): New function.
4413 * buffer.h (delete_all_overlays): Declare.
4414 * coding.c (run_pre_post_conversion_on_str):
4415 * print.c (temp_output_buffer_setup):
4416 * fileio.c (Finsert_file_contents):
4417 * minibuf.c (get_minibuffer): Use it.
4418
1dd7ccf2
AC
44192003-07-22 Andrew Choi <akochoi@shaw.ca>
4420
4421 * unexmacosx.c (unexec_regions_sort_compare):
4422 (unexec_regions_merge): New functions. Sort and merge unexec
4423 regions before dumping them.
4424
f57bd967
DL
44252003-07-22 Dave Love <fx@gnu.org>
4426
4427 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
4428
7cdee936
SM
44292003-07-21 Stefan Monnier <monnier@cs.yale.edu>
4430
4431 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
4432 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
4433 MARKBIT as the gcmarkbit for strings.
4434
e50886d3
RS
44352003-07-21 Richard M. Stallman <rms@gnu.org>
4436
4437 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
4438
29ea8ae9 4439 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
4440 (syms_of_fns): Corresponding change.
4441
4442 * alloc.c (syms_of_alloc): Doc fixes.
4443
44442003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
4445
4446 * s/netbsd.h: Use -Wl syntax.
4447
fdc39b59
RS
44482003-07-17 Richard M. Stallman <rms@gnu.org>
4449
4450 * xterm.c (xim_initialize): Redo 6/24 change.
4451
9c53385f
SM
44522003-07-15 Stefan Monnier <monnier@cs.yale.edu>
4453
4454 * buffer.c (copy_overlays): Use EMACS_INT for positions.
4455 (Fswitch_to_buffer): Don't signal an error when switching to the same
4456 buffer in a dedicated window.
4457
4458 * alloc.c: Use bitmaps for cons, as was done for floats.
4459 (init_float, init_cons): Let the normal code allocate the first block.
4460 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
4461 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
4462 New macros.
4463 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
4464 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
4465 (live_cons_p): Check the pointer is not past the `conses' array.
4466 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
4467 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
4468 (survives_gc_p): Use CONS_MARKED_P and simplify.
4469 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
4470
dde13196
PE
44712003-07-13 Paul Eggert <eggert@twinsun.com>
4472
4473 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
4474 puts it into BSS instead, at least on Solaris 8 and 9.
4475 This is a valid optimization, and it may occur on other platforms,
4476 so Emacs should not assume that initializing a static variable to
4477 zero puts it into data.
4478 * alloc.c (pure, staticvec):
4479 Initialize these arrays to nonzero, so that they're not
4480 put into BSS by that optimization.
4481
a801bc34
SM
44822003-07-13 Stefan Monnier <monnier@cs.yale.edu>
4483
4484 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
4485 (lisp_align_malloc): Use posix_memalign is available.
4486 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
4487 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
4488 for consistency. Update users.
4489
0c8b2afa
RS
44902003-07-13 Richard M. Stallman <rms@gnu.org>
4491
4492 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
4493
668c2ab0
JB
44942003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
4495
4496 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
4497 and use the Gtk+ function gtk_window_icon_from_file if available.
4498
4499 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
4500 handle mask of bitmaps.
4501 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
4502 mask property.
4503 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
4504
4505 * xterm.h (xg_set_icon): New function.
4506
800bebe3
RS
45072003-07-12 Paul Eggert <eggert@twinsun.com>
4508
4509 * unexelf.c (unexec): Consider a section to precede the .bss
4510 section if its addresses overlap that of .bss.
4511
69e38995
RS
45122003-07-12 Richard M. Stallman <rms@gnu.org>
4513
4514 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
4515
4516 * config.in (HAVE_CRTIN): Add #undef.
4517 (INLINE): Really inline only if OPTIMIZE is defined.
4518
4519 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
4520 END_FILES_1.
4521 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 4522 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
4523
4524 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
4525 (TERMINFO): Define.
4526 (LIBS_TERMCAP): Define.
4527 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
4528
4529 * xfns.c: Include libpng/png.h instead of png.h.
4530
f1d0c238
AS
45312003-07-11 Andreas Schwab <schwab@suse.de>
4532
4533 * buffer.c (modify_overlay): Update prototype.
4534 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
4535 Likewise.
4536
5f6bf5fe
SM
45372003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4538
4539 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
4540 (struct interval): Move to intervals.h.
4541 (struct Lisp_Marker): Use EMACS_INT for position info.
4542 (forward_point): Remove prototype of defunct function.
4543 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
4544 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
4545 (syms_of_textprop, set_text_properties): Remove prototypes that are
4546 already in intervals.h.
4547
4548 * intervals.h (struct interval): Move from lisp.h.
4549 Use EMACS_INT for position and size info.
4550
4551 * coding.c: Include intervals.h for Fset_text_properties.
4552
4553 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
4554 position and length information.
4555
2765b457
SM
45562003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4557
4558 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
4559 position and length information.
4560
2410d73a
SM
45612003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4562
4563 Change overlays_after and overlays_before so the overlays themselves
4564 are linked into lists, rather than using cons cells. After all each
4565 Lisp_Misc already occupies 5 words, so we can add a `next' field to
4566 Lisp_Overlay for free and save up one cons cell per overlay (not
4567 to mention one indirection when traversing the list of overlay).
4568
4569 * lisp.h (struct Lisp_Overlay): New field `next'.
4570
4571 * buffer.h (struct buffer): Change overlays_before and overlays_after
4572 from Lisp lists of overlays to pointers to overlays.
4573
4574 * buffer.c (overlay_strings, recenter_overlay_lists):
4575 Fix typo in eassert in last commit.
4576 (unchain_overlay): New function.
4577 (add_overlay_mod_hooklist): Use AREF.
4578 (copy_overlays, reset_buffer, overlays_at, overlays_in)
4579 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
4580 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
4581 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
4582 (report_overlay_modification, evaporate_overlays, init_buffer_once):
4583 Adjust to new type of overlays_(before|after).
4584
4585 * alloc.c (mark_object): Mark the new `next' field of overlays.
4586 (mark_buffer): Manually mark the overlays_(after|before) fields.
4587
4588 * coding.c (run_pre_post_conversion_on_str):
4589 * editfns.c (overlays_around):
4590 * xdisp.c (load_overlay_strings):
4591 * fileio.c (Finsert_file_contents):
4592 * indent.c (current_column):
4593 * insdel.c (signal_before_change, signal_after_change):
4594 * intervals.c (set_point_both):
4595 * print.c (temp_output_buffer_setup): Use new type for
4596 overlays_(before|after).
4597
04812929
SM
45982003-07-08 Stefan Monnier <monnier@cs.yale.edu>
4599
4600 * buffer.c (report_overlay_modification): Don't run hooks while
4601 traversing the list of overlays.
4602
4603 * buffer.h (struct buffer): Use an int for overlay_center.
4604 (overlays_at, evaporate_overlays, recenter_overlay_lists)
4605 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
4606
4607 * buffer.c (reset_buffer, recenter_overlay_lists)
4608 (adjust_overlays_for_insert, adjust_overlays_for_delete)
4609 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
4610 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
4611 (overlays_at, evaporate_overlays, recenter_overlay_lists)
4612 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
4613
4614 * xdisp.c (fast_find_position): Remove unused var.
4615
4616 * cmds.c (Qexpand_abbrev): New sym.
4617 (syms_of_cmds): Initialize it.
4618 (internal_self_insert): Use it to call expand-abbrev.
4619
2e7ecf15
KS
46202003-07-09 Kim F. Storm <storm@cua.dk>
4621
f9711de4 4622 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
2e7ecf15 4623 was configured with --without-xim.
42f81f64 4624 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 4625
c6de56a0
RS
46262003-07-07 Richard M. Stallman <rms@gnu.org>
4627
4628 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
4629
4630 * alloc.c (Fgarbage_collect): Doc fix.
4631
b93fb365
KH
46322003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
4633
4634 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
4635
bfe1a3f7
SM
46362003-07-06 Stefan Monnier <monnier@cs.yale.edu>
4637
04812929
SM
4638 * minibuf.c (read_minibuf): UNGCPRO before returning.
4639 (Ftry_completion, Fall_completions): Doc fix.
4640
bfe1a3f7
SM
4641 * alloc.c (live_float_p): Check that p is not past the `floats' array,
4642 now that `floats' is not the last element of the struct any more.
4643
ee79d1aa
JR
46442003-07-06 Jason Rumney <jasonr@gnu.org>
4645
4646 * w32term.h (ClipboardSequence_Proc): New type.
4647
4648 * w32fns.c (clipboard_sequence_fn): New variable.
4649 (globals_of_w32fns): Initialize it.
4650
4651 * w32select.c (last_clipboard_sequence_number): New variable.
4652 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
4653 number if possible.
4654
49723c04
SM
46552003-07-06 Stefan Monnier <monnier@cs.yale.edu>
4656
4698665f
SM
4657 * m/amdx86-64.h (MARKBIT):
4658 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
4659 MARKBIT and ARRAY_MARK_FLAG any more.
4660
4661 * m/hp800.h (XSETMARKBIT):
4662 * m/sr2k.h (XSETMARKBIT):
4663 * lisp.h (XSETMARKBIT): Remove unused macro.
4664
49723c04
SM
4665 * lisp.h (mark_object): Change prototype.
4666
4667 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
4668 (last_marked): Change accordingly.
4669 (mark_interval, mark_maybe_object, mark_maybe_pointer)
4670 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
4671 (mark_buffer): Update calls to mark_object.
4672
4673 * bytecode.c (mark_byte_stack):
4674 * fns.c (sweep_weak_table):
4675 * keyboard.c (mark_kboards): Update calls to mark_object.
4676
1d660eca
JR
46772003-07-06 Jason Rumney <jasonr@gnu.org>
4678
4679 * alloc.c (struct ablock): Only include padding when there is some.
4680
618b5ae4
SM
46812003-07-04 Stefan Monnier <monnier@cs.yale.edu>
4682
4683 * alloc.c (ALIGN): Add casts to simplify usage.
4684 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
4685 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
4686 (struct ablock, struct ablocks): New types.
4687 (free_ablock): New global var.
4688 (lisp_align_malloc, lisp_align_free): New functions.
4689 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
4690 (struct float_block): Reorder and add gcmarkbits.
4691 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
4692 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
4693 (init_float, make_float): Use lisp_align_malloc.
4694 (free_float, live_float_p): Don't use `type' any more.
4695 (make_float): Use FLOAT_UNMARK to access to mark bit.
4696 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
4697 Use FLOAT_MARKED_P to access the mark bit.
4698 (pure_alloc): Simplify use of ALIGN.
4699 (mark_object): Use FLOAT_MARK to access the mark bit.
4700 (gc_sweep): Use new macros to access the float's mark bit.
4701 (init_alloc_once): Init free_ablock.
4702
4703 * lisp.h (struct Lisp_Float): Remove unused field `type'.
4704
3ef06d12
SM
47052003-06-27 Stefan Monnier <monnier@cs.yale.edu>
4706
4707 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
4708 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
4709 (allocate_buffer): Move.
4710 (string_bytes): Don't mask markbit of `size_byte'.
4711 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
4712 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
4713 Use the `size' field of buffers (rather than the `name' field) for
4714 the mark bit, as is done for all other vectorlike objects.
4715 Use the new macros to access the mark bit of vectorlike objects.
4716
e81043aa
RS
47172003-06-26 Richard M. Stallman <rms@gnu.org>
4718
4719 * puresize.h (BASE_PURESIZE): Increment base size.
4720
4721 * xdisp.c (fast_find_position): Enable Gerd's new definition.
4722
4723 * xterm.c (xim_initialize): Undo previous change.
4724
2d0834cc
SM
47252003-06-26 Stefan Monnier <monnier@cs.yale.edu>
4726
4727 * alloc.c (survives_gc_p): Simplify.
4728
4729 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
4730
4731 * window.c (Fset_window_dedicated_p): Simplify.
4732 (display_buffer_1): Don't raise the win from which minibuf was entered.
4733 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
4734 (Fminibuffer_selected_window): Simplify.
4735
4736 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
4737
4738 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
4739 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
4740
4741 * insdel.c (check_markers, adjust_markers_for_delete)
4742 (adjust_markers_for_insert, adjust_markers_for_replace)
4743 (prepare_to_modify_buffer, RESTORE_VALUE):
4744 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
4745 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
4746 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
4747 * alloc.c (Fmake_marker, free_marker, gc_sweep):
4748 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
4749 * editfns.c (save_excursion_restore, transpose_markers):
4750 * window.c (delete_window):
4751 * xdisp.c (message_dolog): Update for new types.
4752
d54ae3d8
JD
47532003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4754
a5f696ac
JD
4755 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
4756 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 4757 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
4758
4759 * frame.c (make_frame): Initialize default_face_done_p.
4760
4761 * frame.h (struct frame): Add default_face_done_p.
4762
d54ae3d8
JD
4763 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
4764 will be defined.
4765
2336fe58
SM
47662003-06-25 Stefan Monnier <monnier@cs.yale.edu>
4767
4768 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
4769 Initialize the new field `gcmarkbit'.
4770 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
4771 (mark_interval_tree): Don't mark the tree separately from the nodes.
4772 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
4773 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
4774 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
4775
4776 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
4777 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
4778 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
4779 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
4780 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
4781
bcea31c2
DL
47822003-06-24 Dave Love <fx@gnu.org>
4783
4784 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
4785
4786 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
4787 from gnulib.
4788
2601f59e
RS
47892003-06-21 Richard M. Stallman <rms@gnu.org>
4790
4791 * fileio.c (Fwrite_region): Alternate messages
4792 for append and partial write.
4793
4794 * keyboard.c (read_key_sequence): When converting upcase fn key to
4795 downcase, update fkey and keytran so `backspace' gets translated.
4796
4797 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
4798
4799 * process.c (wait_reading_process_input): Don't signal SIGIO
4800 in batch mode.
4801
b5d2c621
KH
48022003-06-17 Kenichi Handa <handa@m17n.org>
4803
4804 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
4805 composite.h.
4806
4807 * xselect.c: Don't include charset.h, coding.h, composite.h.
4808 (Qforeign_selection): New variable.
4809 (syms_of_xselect): Intern and static it.
4810 (selection_data_to_lisp_data): Return a unibyte string made from
4811 data with `foreign-selection' text property.
4812
6793bc63
SM
48132003-06-15 Stefan Monnier <monnier@cs.yale.edu>
4814
4815 * termhooks.h (EVENT_INIT): New macro.
4816
4817 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
4818
4819 * alloc.c (mark_kboards): Move to keyboard.c.
4820
4821 * keyboard.c (record_asynch_buffer_change, read_avail_input):
4822 * xterm.c (x_dispatch_event):
4823 * xmenu.c (find_and_call_menu_selection):
4824 * xdisp.c (handle_tool_bar_click):
4825 * w32menu.c (menubar_selection_callback):
4826 * sysdep.c (kbd_input_ast, read_input_waiting):
4827 * msdos.c (dos_rawgetc):
4828 * macterm.c (mac_check_for_quit_char):
4829 * macmenu.c (menubar_selection_callback):
4830 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
4831 data to kbd_buffer_store_event.
4832
b3ea810c
KS
48332003-06-15 Kim F. Storm <storm@cua.dk>
4834
4835 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 4836 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 4837
b8f75eda
KG
48382003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
4839
4840 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
4841
ba92ce48
KH
48422003-06-12 Kenichi Handa <handa@m17n.org>
4843
4844 * fileio.c (Fwrite_region): Save and restore restriction.
4845
b80263be
DL
48462003-06-12 Dave Love <fx@gnu.org>
4847
4848 * alloca.c (alloca): Declare arg as size_t.
4849
6793bc63
SM
4850 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
4851 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 4852
b23c0a83
DL
48532003-06-11 Dave Love <fx@gnu.org>
4854
4855 * search.c (shrink_regexp_cache): Use xrealloc.
4856 (syms_of_search): Use xmalloc.
4857
700e47c2
KS
48582003-06-10 Kim F. Storm <storm@cua.dk>
4859
4860 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
4861 Adjust phys_cursor.x to be relative to window box, rather than
4862 text area before checking -- to ensure cursor is redrawn when
4863 exposing window.
4864 Note: This also fixes a similar (older) bug if display margins
4865 are present.
4866
f11aa0b2
KH
48672003-06-06 Kenichi Handa <handa@m17n.org>
4868
4869 * coding.c (encoding_buffer_size): If coding->type is
4870 coding_type_ccl, double magnification on CRLF encoding.
4871
3d143690
JR
48722003-06-06 Jason Rumney <jasonr@gnu.org>
4873
4874 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
4875 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
4876
4877 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
4878 Mac too.
4879
f16205ca
DL
48802003-06-05 Dave Love <fx@gnu.org>
4881
b23c0a83
DL
4882 * strftime.c: Merge changes from gnulib.
4883
f16205ca
DL
4884 * mktime.c (__mktime_internal): Merge changes from gnulib
4885 involving year 69 and dst2.
4886
4887 Changes to merge with gnulib version and be consistent with the
4888 autoconf test:
4889
6793bc63
SM
4890 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
4891 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
4892 [HAVE_LOCALE_H]: Include locale.h.
4893 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
4894
9b87a0bc
KS
48952003-06-05 Kim F. Storm <storm@cua.dk>
4896
4897 * window.c (coordinates_in_window): Convert X and Y to window
4898 relative coordinates inside mode-line and header-line parts.
4899 Convert X and Y to margin area relative coordinates inside left
4900 and right display margin parts.
4901
5a8a15ec
JR
49022003-06-05 Jason Rumney <jasonr@gnu.org>
4903
4904 * w32fns.c (add_system_logical_colors_to_map): New function.
4905 (Fx_open_connection): Use it.
4906
01ed8ff1
SM
49072003-06-04 Stefan Monnier <monnier@cs.yale.edu>
4908
4909 * process.c (allocate_pty): Revert part of the previous patch.
4910 (Faccept_process_output): Simplify.
4911
b427b65d
JR
49122003-06-04 Jason Rumney <jasonr@gnu.org>
4913
4914 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
4915
4916 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
4917 (lispy_mouse_wheel_names): Remove.
4918 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
4919 Always define drag_and_drop_syms.
4920
4921 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
4922 WHEEL_EVENT events.
4923
914a8c47
SM
49242003-06-03 Stefan Monnier <monnier@cs.yale.edu>
4925
01ed8ff1
SM
4926 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
4927
914a8c47
SM
4928 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
4929
adcb132c
JD
49302003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4931
4932 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
4933 menu item label.
4934
be781fa7
RS
49352003-06-03 Richard M. Stallman <rms@gnu.org>
4936
4937 * window.c (Fwindow_edges): Doc fix.
4938 (Fwindow_pixel_edges, Fwindow_inside_edges)
4939 (Fwindow_inside_pixel_edges): New functions.
4940 (syms_of_window): defsubr them.
4941
4942 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
4943 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
4944
914a8c47
SM
49452003-06-02 Stefan Monnier <monnier@cs.yale.edu>
4946
4947 * dispnew.c (Fsit_for): Don't lie about the number of args.
4948
5b07197a
DL
49492003-06-02 Dave Love <fx@gnu.org>
4950
4951 * callproc.c: Use HAVE_FCNTL_H, not USG5.
4952 (syms_of_callproc) <process-environment>: Doc fix.
4953
4954 * doc.c: Use HAVE_FCNTL_H, not USG5.
4955
4956 * xfaces.c (font_rescale_ratio): Fix for K&R.
4957
4958 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
4959
4960 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
4961
4962 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
4963
4964 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
4965 (xg_create_frame_widgets): Use ENCODE_UTF_8.
4966
d7107586 4967 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
4968
4969 * xmenu.c (ENCODE_MENU_STRING): New.
4970 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
4971 Use it.
4972
4973 * coding.h (ENCODE_UTF_8): New.
4974 (Qutf_8): Declare.
4975
4976 * coding.c (Qutf_8): New.
4977 (syms_of_coding): Intern it.
4978
4979 * fns.c: Doc fixes.
4980
7335b336
KH
49812003-06-02 Kenichi Handa <handa@m17n.org>
4982
4983 * buffer.c (Fset_buffer_multibyte): Fix previous change.
4984
914a8c47
SM
49852003-06-01 Stefan Monnier <monnier@cs.yale.edu>
4986
4987 * lread.c (openp): Make sure STR is a string.
4988
9862c135
JR
49892003-06-01 David Ponce <david@dponce.com>
4990
4991 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
4992 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
4993
4994 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
4995 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
4996 (discard_mouse_events): Discard WHEEL_EVENT events too.
4997 (lispy_wheel_names, wheel_syms): New.
4998 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
4999 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
5000 defined.
914a8c47 5001 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
5002
5003 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
5004 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
5005 WHEEL_EVENT events.
5006
f984e73e
JPW
50072003-05-31 John Paul Wallington <jpw@gnu.org>
5008
5009 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
5010 timer are in lisp/emacs-lisp.
5011
1efcd78f
KH
50122003-05-31 Kenichi Handa <handa@m17n.org>
5013
458c8af4
KH
5014 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
5015 region when a buffer is changed to unibyte.
5016
1efcd78f
KH
5017 * charset.h (VALID_LEADING_CODE_P): New macro.
5018 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
5019
778e2804
KH
5020 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
5021 is nonzero, accept multibyte form of eight-bit-control chars.
5022 (decode_composition_emacs_mule): Likewise.
5023 (decode_coding_emacs_mule): Likewise.
5024 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
5025 multibyte form of eight-bit-control chars.
5026
5027 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
5028 (Finsert_file_contents): If coding-system-for-read is bound to
5029 Qauto_save_coding, use the coding system emacs-mule with special
5030 setting for recovering a file.
5031 (choose_write_coding_system): On auto saving, use the coding
5032 system emacs-mule with special setting for auto saving.
5033 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
5034
034060e4
KH
50352003-05-30 Kenichi Handa <handa@m17n.org>
5036
5037 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
5038 properly before calling ccl_driver.
5039
778e2804 5040 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4
KH
5041
5042 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
5043 nonzero.
5044 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
5045 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
5046
595f5aa5
GM
50472003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
5048
5049 * xfaces.c (realize_default_face): Do not abort if lface is
5050 non-existent - reverts change from 2003-05-19.
5051
103e0180
KH
50522003-05-29 Kenichi Handa <handa@m17n.org>
5053
5054 * coding.c (decode_coding_iso2022): Pay attention to the byte
5055 sequence of CTEXT extended segment, and retain those bytes as is.
5056
50572003-05-28 Kenichi Handa <handa@m17n.org>
5058
5059 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
5060 of CODING_REPLACEMENT_CHARACTER.
5061 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
5062 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
5063 check this flag on encoding.
5064 (encode_coding_sjis_big5): Check
5065 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
5066 (Fset_terminal_coding_system_internal): Set
5067 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
5068 instead of setting CODING_FLAG_ISO_SAFE flag in
5069 terminal_coding.flags.
5070
5071 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
5072 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
5073 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
5074
ff6a3bfb 50752003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 5076
ff6a3bfb
RS
5077 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
5078
5079 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 5080
1963c428
KS
50812003-05-28 Kim F. Storm <storm@cua.dk>
5082
5083 * xdisp.c (expose_window): Fix error in calculation of
5084 window relative coordinates of area to redisplay.
5085
2b5d4601
JR
50862003-05-27 Jason Rumney <jasonr@gnu.org>
5087
5088 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
5089
1c64a4a2
JB
50902003-05-27 David Ponce <david@dponce.com>
5091
5092 Handle W32 mouse wheel events as mouse click events, like in X.
5093
5094 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
5095 MOUSE_WHEEL_EVENT anymore.
5096
5097 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
5098 Scrolling down/up the mouse wheel is respectively mapped to mouse
5099 button 4 and 5.
5100 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
5101 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
5102 WM_MOUSEWHEEL events.
5103
2d031b89
AS
51042003-05-27 Andreas Schwab <schwab@suse.de>
5105
20464fdf
AS
5106 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
5107
2d031b89
AS
5108 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
5109 partially visible line.
5110
5111 * alloc.c (Fgarbage_collect): Fix last change.
5112
97bc76d4
JPW
51132003-05-26 John Paul Wallington <jpw@gnu.org>
5114
5115 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
5116
56613f06
SM
51172003-05-25 Stefan Monnier <monnier@cs.yale.edu>
5118
5119 * window.c (Fset_window_buffer): Add type of `keep_margins'.
5120 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
5121
5122 * window.h (window_box_text_cols): Declare.
5123
5124 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
5125 (x_draw_vertical_border): Remove unused var `f'.
5126
5127 * xfaces.c (build_scalable_font_name): Remove `unused var
5128 pixel_size' warning.
5129
5130 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
5131
5132 * unexelf.c (unexec): Remove `unused var n' warning.
5133
5134 * strftime.c (my_strftime_localtime_r): Remove `defined but
5135 unused' warning.
5136
5137 * process.c (allocate_pty): Remove `unused var stb' and
5138 `cp might be used uninitialized' warnings.
5139
5140 * dispnew.c (mode_line_string): Remove unused var `f'.
5141
5142 * coding.c (find_safe_codings): Remove unused var `i'.
5143
5144 * bytecode.c (Fbyte_code): Remove `unused val' warning.
5145
5146 * buffer.c (Fkill_buffer): Remove unused var `list'.
5147
5148 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
5149
93421a1f
JD
51502003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5151
5152 * frame.c (make_frame): Condition want_fullscreen with
5153 HAVE_WINDOW_SYSTEM.
5154
c4b8aebc
JB
51552003-05-25 Juanma Barranquero <lektu@terra.es>
5156
5157 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
5158 (Fwindow_scroll_bars): Fix typo in docstring.
5159
0416870b
KS
51602003-05-24 Kim F. Storm <storm@cua.dk>
5161
5162 The following changes serve several purposes:
5163
5164 1) Swap the position of fringes and display margins in windows, i.e.
5165 the fringes are now displayed between the margins and the text area
5166 (by default).
5167
5168 2) Allow fringe and scroll bar parameters to be set per-buffer and
5169 per-window (like display margins). Such settings are now stored
5170 in window configurations, preserved when frames are resized, and
9018a88e 5171 copied when windows are split vertically or horizontally.
0416870b
KS
5172 Several bugs related to display margins have been fixed.
5173
5174 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 5175
0416870b
KS
5176 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
5177 rather than FRAME_WIDTH (FRAME_FONT (f)).
5178
5179 5) Introduce a consistent naming of variables, members and macros
5180 depending on whether their value is measured in pixels or in
5181 canonical columns/lines. Pixel dimensions are named *_width and
5182 *_height, while canonical columns/lines are named *_cols and
5183 *_lines. Pixel positions are named *_x and *_y, while column/line
5184 positions are named *_col and *_line.
5185
5186 6) Consolidate more of the X, W32, and MAC gui code by moving
5187 common data into struct frame, and generalize it for the non-gui
5188 case by using suitable defaults.
5189
5190 7) Cleanup and consolidate the macros controlling frame and window
5191 layout into frame.h and window.h, and generalize the use of the
5192 various window_box_* functions (enhanced to handle the new fringe
5193 position and the per-window fringe and scroll bar settings).
5194
5195 * frame.h (struct frame): Rename members height to text_lines,
5196 width to text_cols, window_height to total_lines, window_width to
5197 total_cols, new_height to new_text_lines, new_width to
5198 new_text_cols. All uses changed.
5199 (struct frame): New members which consolidate common members of
5200 x_output, w32_output, and mac_output structures: left_pos,
5201 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
5202 win_gravity, size_hint_flags, border_width, internal_border_width,
5203 line_height, fringe_cols, left_fringe_width, right_fringe_width,
5204 want_fullscreen. All uses changed.
5205 (struct frame): New member column_width contaning the canonical
5206 column width, analogue to line_height. All uses changed.
5207 (struct frame): Rename members scroll_bar_pixel_width to
5208 config_scroll_bar_width, and scroll_bar_cols to
5209 config_scroll_bar_cols. All uses changed.
5210 (struct frame): New member scroll_bar_actual_width which
5211 consolidates and renames the vertical_scroll_bar_extra member of
5212 x_output, w32_output, and mac_output structures. All uses changed.
5213 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
5214 from x/w32/macterm.h files. All uses changed. Also change code
5215 which referred to f->output_data...->pixel_height.
5216 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
f63fd14e 5217 from x/w32/macterm.h files. All uses changed. Also change code
0416870b
KS
5218 which referred to f->output_data...->pixel_width.
5219 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
5220 Also change code which referred to f->height.
5221 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
5222 Also change code which referred to f->width.
5223 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
5224 to update new_text_lines and new_text_cols members directly.
5225 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
5226 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
5227 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
5228 FRAME_SCROLL_BAR_COLS. All uses changed.
5229 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
5230 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
5231 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
5232 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
5233 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
5234 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
5235 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
5236 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
5237 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
5238 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
5239 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
5240 return line_height member (it now has proper value also for
5241 non-window frames).
5242 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
5243 return new column_width member (rather than the default font width).
5244 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
5245 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
5246 from x/w32/macterm.h files. Unconditionally return corresponding
5247 member of frame structure (they now have proper values also for
5248 non-window frames).
5249 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
5250 Calculate return value from left and right widths.
5251 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
5252 internal_border_width member (has proper value for non-window frame).
5253 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
5254 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
5255 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
5256 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
5257 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
5258 consolidated from xterm.h, macterm.h, and w32term.h.
5259 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
5260 consolidated from xterm.h, macterm.h, and w32term.h.
5261 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
5262 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
5263 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
5264 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
5265 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
5266 consolidated from x/mac/w32term.h.
5267 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
5268 consolidated from x/mac/w32term.h.
5269 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
5270 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
5271 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
5272 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
5273
5274 * window.h (struct window): Rename members left to left_col,
5275 top to top_line, height to total_lines, width to total_cols,
5276 left_margin_width to left_margin_cols, right_margin_width to
5277 right_margin_cols, orig_height to orig_total_lines, orig_top to
5278 orig_top_line. All uses changed.
5279 (struct window): New members left_fringe_width, right_fringe_width,
5280 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
5281 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
5282 New macros primarily used to simplify other macros.
5283 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
5284 referred to XINT (w->width).
5285 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
5286 referred to XINT (w->height).
5287 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
5288 referred to XINT (w->width) * canon_x_unit.
5289 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
5290 referred to XINT (w->height) * canon_y_unit.
5291 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
5292 referred to XINT (w->left).
5293 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
5294 all uses and code that referred to XINT (w->left) + XINT (w->width).
5295 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
5296 referred to XINT (w->top).
5297 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
5298 referred to XINT (w->top) + XINT (w->height).
5299 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
5300 referred to XINT (w->left) * canon_x_unit.
5301 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
5302 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
5303 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
5304 referred to XINT (w->top) * canon_y_unit.
5305 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
5306 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
5307 (WINDOW_LEFTMOST_P): New macro.
5308 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
5309 All uses changed.
5310 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
5311 All uses changed.
5312 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
5313 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
5314 Do not exclude left fringe width.
5315 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
5316 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
5317 Do not exclude fringe widths.
5318 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
5319 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
5320 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
5321 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
5322 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
5323 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
5324 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
5325 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
5326 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
5327 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
5328 New macros. Change code which referenced corresponding
5329 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
5330 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
5331 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
5332 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
5333 allow per-window scroll-bar settings.
5334 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
5335 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
5336 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
5337 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
5338 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
5339 FRAME_SCROLL_BAR_WIDTH.
5340 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 5341 (WINDOW_SCROLL_BAR_AREA_X): New macros.
0416870b
KS
5342 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
5343 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
5344 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
5345 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
5346 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
5347 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
5348 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
5349 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
5350 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
5351 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
5352 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
5353 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
5354 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
5355 (window_from_coordinates): Update prototype.
5356 (Fset_window_buffer): Update EXFUN.
5357 (set_window_buffer): Update prototype.
9018a88e 5358
0416870b 5359 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 5360 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
5361 changed.
5362 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
5363 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
5364 internal_border_width is now set to 0 for non-window frames.
5365 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
5366 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
5367 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
5368 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
5369 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
5370 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
5371 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
5372 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
5373 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 5374 Move to window.h and renamed [see window.h changes].
0416870b
KS
5375 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
5376 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
5377 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
5378 Use WINDOW_TOTAL_LINES.
0416870b
KS
5379 (frame_update_line_height): Remove prototype.
5380
5381 * buffer.h (struct buffer): Rename members measured in columns:
5382 left_margin_width to left_margin_cols, right_margin_width to
5383 right_margin_cols. All uses changed.
5384 New members left_fringe_width, right_fringe_width,
5385 fringes_outside_margins for per-buffer fringe settings.
5386 New members scroll_bar_width and vertical_scroll_bar_type for
5387 per-buffer scroll bar settings.
5388
5389 * buffer.c (init_buffer_once): Set buffer_defaults and
5390 buffer_local_flags for new buffer-local variables
5391 left_fringe_width, right_fringe_width, fringes_outside_margins,
5392 scroll_bar_width, and vertical_scroll_bar_type.
5393 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
5394 default-* variables for them.
5395
5396 * dispnew.c: Make (many) trivial substitutions for renamed and
5397 new macros in dispextern.h, frame.h and window.h.
5398 (mode_line_string): No need to adjust width for mode lines, as it
5399 is already adjusted by the caller.
5400 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 5401
0416870b
KS
5402 * frame.c: Make (many) trivial substitutions for renamed and
5403 new macros in dispextern.h, frame.h and window.h.
5404 (make_frame): Initialize left_fringe_width, right_fringe_width,
5405 fringe_cols, scroll_bar_actual_width, border_width,
5406 internal_border_width, column_width, line_height, x_pixels_diff,
5407 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
5408 members with values suitable for a non-window frames.
5409
5410 * gtkutil.c: Make (many) trivial substitutions for renamed and
5411 new macros in dispextern.h, frame.h and window.h.
9018a88e 5412
0416870b
KS
5413 * indent.c: Make (few) trivial substitutions for renamed and
5414 new macros in dispextern.h, frame.h and window.h.
5415
5416 * keyboard.c: Make (many) trivial substitutions for renamed and
5417 new macros in dispextern.h, frame.h and window.h.
5418 (make_lispy_event): Use window positions returned from
5419 window_from_coordinates when constructing the lisp event for
5420 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
5421 (incorrect) values locally.
5422 (make_lispy_movement): Use window positions returned from
5423 window_from_coordinates when constructing the lisp event, rather
5424 than calculating (incorrect) values locally.
5425
5426 * scroll.c: Make (some) trivial substitutions for renamed and
5427 new macros in dispextern.h, frame.h and window.h.
5428
5429 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
5430 scroll-bars.
5431
5432 * sysdep.c: Make (few) trivial substitutions for renamed and
5433 new macros in dispextern.h, frame.h and window.h.
5434
5435 * term.c: Make (some) trivial substitutions for renamed and
5436 new macros in dispextern.h, frame.h and window.h.
5437
5438 * widget.c: Make (few) trivial substitutions for renamed and
5439 new macros in dispextern.h, frame.h and window.h.
5440
5441 * window.c: Make (many) trivial substitutions for renamed and
5442 new macros in dispextern.h, frame.h and window.h.
5443 (make_window): Initialize new members
5444 left_margin_cols, right_margin_cols, left_fringe_width,
5445 right_fringe_width, fringes_outside_margins, scroll_bar_width,
5446 and vertical_scroll_bar_type.
5447 (coordinates_in_window): Adapted to new fringe/margin positions
9018a88e 5448 and per-window fringes and scroll-bars.
0416870b 5449 Fix bug related to incorrectly adjusting coordinates by
9018a88e 5450 frame's internal_border_width (the effect normally negible since
0416870b
KS
5451 the internal_border_width is typically 0 or 1 pixel, but very
5452 noticeable for an internal_border_width of e.g. 25 pixels).
5453 Upon successful return (other than ON_NOTHING), the coordinates
5454 are now always properly converted to window relative for the
5455 given display element.
5456 (window_from_coordinates): Add new parameters wx and wy to
5457 return the window relative x and y position in the returned
5458 window and part. A null arg means, don't return the position.
5459 All callers changed.
5460 (adjust_window_margins): New function which may reduce the width
5461 of the display margins if a window's text area is too small after
5462 resizing or splitting windows.
5463 (size_window): Fix bug that did not account for display margin
5464 widths when checking the minimum width of a window; use
5465 adjust_window_margins.
5466 (set_window_buffer): Call Fset_window_fringes and
5467 Fset_window_scroll_bars to setup per-window elements.
5468 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
5469 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
5470 (e.g. after splitting a window or resizing the frame).
5471 All callers changed.
0416870b
KS
5472 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
5473 (Fsplit_window): Duplicate original window's display margin,
5474 fringe, and scroll-bar settings; then call Fset_window_buffer with
5475 KEEP_MARGINS non-nil. This fixes a bug which caused a split
5476 window to only preserve the display margins in one of the windows.
c4b8aebc 5477 When splitting horizontally, call adjust_window_margins on both
0416870b 5478 windows to ensure that the text area of the new windows is non too
f9711de4 5479 narrow. This fixes a bug which could cause Emacs to trap if the
0416870b
KS
5480 width of the split window was less than the width of the display
5481 margins.
9018a88e
SM
5482 (window_box_text_cols): Renamed from window_internal_width.
5483 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
5484 Fix bug that caused vertical separator to be subtracted also on
5485 window frames. Fix another bug that did not reduce the returned
5486 value by the columns used for display margins.
5487 (window_scroll_line_based): Fix bug related to scrolling too much
5488 when display margins are present (implicitly fixed by the fix to
5489 window_box_text_cols).
5490 (scroll_left, scroll_right): Fix bug related to scrolling too far
5491 by default when display margins are present (implicitly fixed by
5492 the fix to window_box_text_cols).
5493 (struct saved_window): Rename members left to left_col, top to
5494 top_line, width to total_cols, height to total_lines, orig_top to
5495 orig_top_line, orig_height to orig_total_lines. All uses changed.
5496 New members left_margin_cols, right_margin_cols,
5497 left_fringe_width, right_fringe_width, fringes_outside_margins,
5498 scroll_bar_width, and vertical_scroll_bar_type for saving
5499 per-window display elements.
5500 (Fset_window_configuration): Restore display margins, fringes,
5501 and scroll bar settings. This fixes a bug which caused display
5502 margins to be discarded when saving and restoring a window
5503 configuration.
5504 (save_window_save): Save display margins, fringes, and scroll bar
5505 settings. This fixes a bug which caused display margins to be
5506 discarded when saving and restoring a window configuration.
5507 (Fset_window_margins): Do nothing if display margins are not
5508 really changed. Otherwise, call adjust_window_margins to ensure
5509 the text area doesn't get too narrow. This fixes a bug which
f9711de4 5510 could cause Emacs to trap if setting display margins wider than
0416870b
KS
5511 the width of the window.
5512 (Fset_window_fringes): New defun to allow user to specifically set
5513 this window's fringe widths and position vs. display margins.
5514 (Fwindow_fringes): New defun to return window's actual fringe
5515 settings.
5516 (Fset_window_scroll_bars): New defun to allow user to specifically
5517 set this window's scroll bar width and position.
5518 (Fwindow_scroll_bars): New defun to return window's actual scroll
5519 bar settings.
5520 (compare_window_configurations): Also compare display margins,
5521 fringes, and scroll bar settings.
5522 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
5523
5524 * xdisp.c: Make (many) trivial substitutions for renamed and
5525 new macros in dispextern.h, frame.h and window.h.
5526 (window_box_width): Adapt to per-window fringes and scroll bars,
f63fd14e 5527 and new fringe vs. display margin position. Note that returned
0416870b
KS
5528 value is no longer guaranteed to be a whole multiple of the frame
5529 column width, since per-window fringes may now be any width.
5530 (window_box_left_offset): New function like window_box_left, but
5531 value is relative to left border of window (rather than frame).
5532 (window_box_right_offset): New function like window_box_right,
5533 but value is relative to left border of window.
5534 (window_box_left): Adapt to per-window fringes and scroll bars,
5535 and new fringe vs. display margin position. Simplify by using
5536 WINDOW_LEFT_EDGE_X and window_box_left_offset.
5537 (window_box): Allow null args for unnecessary return values;
5538 change/simplify relevant callers.
5539 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
5540 and new fringe vs. display margin position.
5541 Use window_box_left_offset and window_box_right_offset
0416870b 5542 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
5543 scroll bars, and new fringe vs. display margin position.
5544 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
5545 (draw_fringe_bitmap): Rework to handle per-window fringes and new
5546 fringe vs. display margin position.
5547 (hscroll_window_tree): Use window_box_width instead of window_box.
a64387ee
JB
5548 (redisplay_window): Adapt to per-window scroll bars.
5549 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
5550 bars, and new fringe vs. display margin position.
5551 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
a64387ee 5552 (x_clear_end_of_line): Adapt to per-window fringes and scroll
0416870b
KS
5553 bars, and new fringe vs. display margin position. Fix bug which
5554 increased total width of full_width rows by width of scroll bars
5555 although window's total width already includes that.
5556 (x_fix_overlapping_area): Simplify using window_box_left_offset.
5557 (expose_area): Simplify using window_box_left_offset.
5558 (x_draw_vertical_border): Handle per-window scroll bar settings,
5559 mixing windows with left, right and no scroll bars.
5560
5561 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
5562 where it's used in x_list_fonts (for clarity).
5563 (frame_update_line_height): Remove unused function; functionality
5564 is now done directly when setting the default font in x_set_font.
5565
5566 * xfns.c: Make (many) trivial substitutions for renamed and
5567 new macros in dispextern.h, frame.h and window.h.
5568
5569 * xmenu.c: Make (some) trivial substitutions for renamed and
5570 new macros in dispextern.h, frame.h and window.h.
5571
5572 * xterm.h (struct x_output): Move members left_pos, top_pos,
5573 border_width, pixel_height, pixel_width, line_height,
5574 internal_border_width, vertical_scroll_bar_extra,
5575 left_fringe_width, right_fringe_width, fringe_cols,
5576 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5577 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
5578 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5579 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5580 (PIXEL_WIDTH, PIXEL_HEIGHT)
5581 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5582 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5583 frame.h and renamed [see frame.h changes].
5584 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5585 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5586 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5587 and renamed [see frame.h changes].
9018a88e 5588
0416870b
KS
5589 * xterm.c: Make (several) trivial substitutions for renamed and
5590 new macros in dispextern.h, frame.h and window.h.
5591 (x_draw_glyph_string_box): Adapt to per-window fringes and
5592 scroll-bars.
5593 (scroll_run): Adapt to new fringe position.
5594 (glyph_rect): Use window coordinates returned from
5595 window_from_coordinates rather than frame_to_window_pixel_xy.
5596 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5597 scroll-bars.
5598 (handle_one_xevent): Simplify a USE_GTK conditional.
5599 (x_clip_to_row): Remove superfluous whole_line_p arg and code
5600 (fringes are now inside margins, i.e. always in the clipping area).
5601 All callers changed.
5602 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5603 directly, then call compute_fringe_widths. Don't call
5604 frame_update_line_height.
5605
5606 * w32term.h (struct w32_output): Move members left_pos, top_pos,
5607 border_width, pixel_height, pixel_width, line_height,
5608 internal_border_width, vertical_scroll_bar_extra,
5609 left_fringe_width, right_fringe_width, fringe_cols,
5610 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5611 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
5612 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5613 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5614 (PIXEL_WIDTH, PIXEL_HEIGHT)
5615 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5616 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5617 frame.h and renamed [see frame.h changes].
5618 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5619 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5620 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5621 and renamed [see frame.h changes].
9018a88e 5622
0416870b
KS
5623 * w32term.c: Make (several) trivial substitutions for renamed and
5624 new macros in dispextern.h, frame.h and window.h.
5625 (x_draw_glyph_string_box): Adapt to per-window fringes and
5626 scroll-bars.
5627 (glyph_rect): Use window coordinates returned from
5628 window_from_coordinates rather than frame_to_window_pixel_xy.
5629 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5630 scroll-bars.
5631 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
5632 (fringes are now inside margins, i.e. always in the clipping area).
5633 All callers changed.
5634 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5635 directly, then call compute_fringe_widths. Don't call
5636 frame_update_line_height.
5637
5638 * w32console.c: Make (few) trivial substitutions for renamed and
5639 new macros in dispextern.h, frame.h and window.h.
5640
5641 * w32fns.c: Make (many) trivial substitutions for renamed and
5642 new macros in dispextern.h, frame.h and window.h.
5643
5644 * w32menu.c: Make (few) trivial substitutions for renamed and
5645 new macros in dispextern.h, frame.h and window.h.
5646
5647 * macterm.h (struct mac_output): Move members left_pos, top_pos,
5648 border_width, pixel_height, pixel_width, line_height,
5649 internal_border_width, vertical_scroll_bar_extra,
5650 left_fringe_width, right_fringe_width, fringe_cols,
5651 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5652 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
5653 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5654 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5655 (PIXEL_WIDTH, PIXEL_HEIGHT)
5656 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5657 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5658 frame.h and renamed [see frame.h changes].
5659 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5660 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5661 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5662 and renamed [see frame.h changes].
9018a88e 5663
0416870b
KS
5664 * macterm.c: Make (several) trivial substitutions for renamed and
5665 new macros in dispextern.h, frame.h and window.h.
5666 (x_draw_glyph_string_box): Adapt to per-window fringes and
5667 scroll-bars.
5668 (glyph_rect): Use window coordinates returned from
5669 window_from_coordinates rather than frame_to_window_pixel_xy.
5670 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5671 scroll-bars.
5672 (x_clip_to_row): Remove superfluous whole_line_p arg and code
5673 (fringes are now inside margins, i.e. always in the clipping area).
5674 All callers changed.
5675 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5676 directly, then call compute_fringe_widths. Don't call
5677 frame_update_line_height.
5678
5679 * macfns.c: Make (several) trivial substitutions for renamed and
5680 new macros in dispextern.h, frame.h and window.h.
9018a88e 5681 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
5682
5683 * macmenu.c: Make (few) trivial substitutions for renamed and
5684 new macros in dispextern.h, frame.h and window.h.
5685
5686 * msdos.h (struct x_output): Remove members left_pos, top_pos,
5687 and line_height, and use corresponding new members in struct
5688 frame. All uses changed.
5689 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
5690 superseeded by corresponding macros in frame.h.
5691
5692 * msdos.c: Make (several) trivial substitutions for renamed and
5693 new macros in dispextern.h, frame.h and window.h.
5694 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 5695 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
5696 (internal_terminal_init): No need to initialize line_height here;
5697 it now defaults to 1.
5698
9018a88e
SM
56992003-05-24 Stefan Monnier <monnier@cs.yale.edu>
5700
5701 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
5702 dropping `down' events.
5703
016bd3c0
AS
57042003-05-24 Andreas Schwab <schwab@suse.de>
5705
5706 * coding.c (find_safe_codings): Fix last change.
5707
4dacadcc
TTN
57082003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
5709
5710 * xfns.c (x_window): Fix typo from 2003-05-21 change.
5711
319830ce
SM
57122003-05-23 Stefan Monnier <monnier@cs.yale.edu>
5713
9018a88e
SM
5714 * xdisp.c (display_mode_element): Increase max depth.
5715 Simplify the error handling code. Use a different error string
5716 for the case where we hit the depth limit.
5717
319830ce
SM
5718 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
5719
5720 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
5721
57222003-05-21 Stefan Monnier <monnier@cs.yale.edu>
5723
5724 * intervals.c (get_local_map): Don't get char-property of previous
5725 point any more: get_pos_property already does it and better.
5726
c67de8ba
DL
57272003-05-21 Dave Love <fx@gnu.org>
5728
5729 [Merged from unicode branch.]
5730
5731 * xfns.c (x_window, x_window): Use use_xim.
5732
5733 * xterm.c (use_xim): Initialize.
5734 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
5735 (x_term_init): Maybe set use_xim.
5736
5737 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
5738
edd3ff1d
JR
57392003-05-21 Jason Rumney <jasonr@gnu.org>
5740
5741 * unexw32.c (_start): Remove _fmode initialization.
5742
5743 * emacs.c (main) [WINDOWSNT]: Move it here.
5744
463f55ee
DL
57452003-05-20 Dave Love <fx@gnu.org>
5746
5747 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
5748
af253914
RS
57492003-05-19 Richard M. Stallman <rms@gnu.org>
5750
5751 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
5752 as value for QCfont attribute.
5753 (realize_default_face): lface should already exist; crash if not.
5754 Specify 0 for FORCE_P when calling set_lface_from_font_name.
5755
5756 * frame.c (Fignore_event): Doc fix.
5757
1d211019
KH
57582003-05-19 Kenichi Handa <handa@m17n.org>
5759
5760 * coding.c (decode_coding_string): Handle post-read-conversion
5761 even if the coding doesn't require decoding.
5762
4dd68254
RS
57632003-05-18 Richard M. Stallman <rms@gnu.org>
5764
5765 * callproc.c (Fcall_process_region): Doc fix.
5766
14d87dc9
SM
57672003-05-17 Stefan Monnier <monnier@cs.yale.edu>
5768
deca5d96
SM
5769 * lread.c (Fload): Print a message if package is obsolete.
5770
14d87dc9
SM
5771 * window.c (Fselect_window): Add optional `norecord' arg.
5772 (select_window_1): Fold into Fselect_window.
5773 (select_window_norecord): New function.
5774 (temp_output_buffer_show): Use it. Preserve current buffer.
5775
5776 * window.h (Fselect_window): Update declaration.
5777
5778 * window.c (delete_window, Fother_window, Fset_window_configuration):
5779 * minibuf.c (read_minibuf):
5780 * macterm.c (x_new_focus_frame):
5781 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
5782 * callint.c (Fcall_interactively):
5783 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
5784
5785 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
5786
78f52183
DK
57872003-05-17 David Kastrup <dak@gnu.org>
5788
5789 * process.c (read_process_output): Back out change from 2003-03-09.
5790
14d87dc9
SM
57912003-05-17 Stefan Monnier <monnier@cs.yale.edu>
5792
5793 * editfns.c (get_pos_property): Don't assume that `object' = nil.
5794
5795 * textprop.c (text_property_stickiness): New arg `buffer'.
5796
5797 * intervals.h (text_property_stickiness): New arg `buffer'.
5798 (get_pos_property): Declare.
5799
5800 * intervals.c (get_local_map): Use get_pos_property, to obey
5801 stickiness and empty overlays.
5802 (create_root_interval, graft_intervals_into_buffer): Use BEG.
5803 (merge_properties, intervals_equal, merge_properties_sticky):
5804 Use XCAR, XCDR.
5805 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
5806
1fd1cc2f
RS
58072003-05-17 Richard M. Stallman <rms@gnu.org>
5808
4f9f637a
RS
5809 * minibuf.c (read_minibuf): If buffer is empty, record the default
5810 in the history.
5811 (Fminibuffer_complete_word): When deleting the overlap, take account
5812 of its real position.
5813
5814 * fns.c (map_char_table): Fix previous change.
5815
1fd1cc2f
RS
5816 * syntax.c (find_defun_start):
5817 When open_paren_in_column_0_is_defun_start,
5818 return beginning of buffer.
5819
5820 * lisp.h (map_char_table): Declare added arg.
5821
5822 * fns.c (map_char_table): New arg TABLE gets the master table.
5823 All calls changed.
5824 Process default and inheritance, resorting to Faref if necessary.
5825
5826 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
5827 (Faccessible_keymaps): Pass new arg to map_char_table.
5828
5829 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
5830
5831 * casetab.c (set_case_table): Pass new arg to map_char_table.
5832
5833 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
5834
5835 * lisp.h (specbinding_func): New typedef.
5836 (struct specbinding): Use specbinding_func, to put the `volatile'
5837 in the right place.
5838
5839 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
5840 to avoid GCC warning.
14d87dc9 5841
b4bd27c5
RS
58422003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
5843
14d87dc9 5844 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 5845
35fb885d
SM
58462003-05-15 Stefan Monnier <monnier@cs.yale.edu>
5847
5848 * keyboard.c (apply_modifiers): Don't fill the other cache.
5849
9a274fbd
SM
58502003-05-14 Stefan Monnier <monnier@cs.yale.edu>
5851
c55b5fad
SM
5852 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
5853
9a274fbd
SM
5854 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
5855 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
5856 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
5857 (Fset_window_configuration, Fcurrent_window_configuration)
5858 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
5859 (Fpos_visible_in_window_p, mark_window_cursors_off)
5860 (window_internal_height, window_internal_width, Frecenter)
5861 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
5862 (replace_buffer_in_all_windows, init_window_once, init_window)
5863 (syms_of_window, keys_of_window): Move from lisp.h.
5864 * lisp.h: Move window.c declarations to window.h.
5865
5866 * bytecode.c: Include window.h.
5867 * emacs.c: Include window.h.
5868
14d87dc9 5869 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
5870 (keyremap): Add `parent' field.
5871 (keyremap_step): Use it. Remove `parent' argument.
5872 (read_key_sequence): Setup and use the new `parent' field.
5873
fd93e331
SM
58742003-05-11 Stefan Monnier <monnier@cs.yale.edu>
5875
5876 * keyboard.c (adjust_point_for_property): Ensure termination.
5877
1c4001a1
SM
58782003-05-10 Stefan Monnier <monnier@cs.yale.edu>
5879
5880 * keyboard.c (follow_key): Remove dead variable `did_meta'.
5881 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
5882 duplicated handling of function-key-map and key-translation-map
5883 in read_key_sequence.
5884 (read_key_sequence): Use them.
5885
5886 * keyboard.c (adjust_point_for_property): Try harder to move point
5887 to the non-sticky end of an invisible property.
5888
5889 * xdisp.c (single_display_prop_intangible_p): Make `space' display
5890 property intangible as well.
5891
780379b1
AS
58922003-05-10 Andreas Schwab <schwab@suse.de>
5893
5894 * xmenu.c (single_menu_item): Change last parameter to void* to
5895 avoid warning.
5896
ca2de342
RS
58972003-05-09 Richard M. Stallman <rms@gnu.org>
5898
5899 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
5900 Bind Qinhibit_modification_hooks to t so there will be no GC.
5901 Rename local `tem' to `save_deactivate_mark'.
5902
5903 * eval.c (specpdl_ptr): Declare volatile.
5904 (unbind_to): Copy the whole binding and decrement specpdl_ptr
5905 before doing the work of unbinding it.
5906
5907 * lisp.h (struct specbinding): Declare elements volatile.
5908 (specpdl_ptr): Declare volatile.
5909
5910 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
5911
5912 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
5913 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
5914
347003be
DL
59152003-05-08 Dave Love <fx@gnu.org>
5916
5917 * coding.c (Vlast_coding_system_used): Doc fix.
5918
5adcec23
JR
59192003-05-07 Jason Rumney <jasonr@gnu.org>
5920
5921 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
5922 when system does not support them.
5923
5fe3b8a4
SM
59242003-05-05 Stefan Monnier <monnier@cs.yale.edu>
5925
5926 * fileio.c (Qwrite_region_annotate_functions): New var.
5927 (build_annotations): Use it to process the global part of the hook.
5928 (syms_of_fileio): Init and staticpro it.
5929
5930 * keyboard.c (safe_run_hooks_error): Display a message instead of
5931 silently ignoring the error.
5932
59332003-05-03 Stefan Monnier <monnier@cs.yale.edu>
5934
5935 * keyboard.c (input_available_signal): Mark static.
5936 (menu_bar_items): Use map_keymap.
5937 (menu_bar_one_keymap): Remove.
5938 (menu_bar_item): Adjust arglist (for use in map_keymap).
5939 Properly hide a second binding when not both are keymaps.
5940
5941 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
5942 (single_keymap_panes): Use it and map_keymap.
5943 (single_menu_item): Use skp as well.
5944
5945 * keymap.h (map_keymap_function_t): New type.
5946 (map_keymap): Declare.
5947
5948 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
5949 (map_keymap_call, Fmap_keymap): New functions.
5950 (syms_of_keymap): Defsubr map-keymap.
5951
4b1b4443
JD
59522003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5953
5954 * gtkutil.c (create_dialog, make_widget_for_menu_item)
5955 (make_menu_item, create_menus, xg_update_menu_item): Don't call
5956 ..._with_mnemonic functions for menu items.
5957
1f816871
KH
59582003-05-01 Kenichi Handa <handa@m17n.org>
5959
5960 * coding.c (coding_system_accept_latin_extra_p): Delete this
5961 function.
5962 (find_safe_codings): Pay attention to
5963 the property tranlsation-table-for-encode of each codings.
5964 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
5965
5ed6ba5b
SM
59662003-05-01 Stefan Monnier <monnier@cs.yale.edu>
5967
5968 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
5969
32c06229
SM
59702003-04-30 Stefan Monnier <monnier@cs.yale.edu>
5971
5972 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
5973
5974 * lisp.h (CHECK): Wrap args in parenthesis.
5975 (specbind): Fix doc: symbol = Qnil is not supported any more.
5976
5977 * bytecode.c (Fbyte_code) <unwind-protect>:
5978 Use Fprogn rather than 0 and Qnil.
5979
5980 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
5981 `double', and `triple' modifiers as well.
5982
ed3c3314
RS
59832003-04-30 Richard M. Stallman <rms@gnu.org>
5984
5985 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
5986
5987 * alloc.c (abort_on_gc): New variable.
5988 (Fgarbage_collect): Abort if abort_on_gc is set.
5989
5990 * lisp.h (abort_on_gc): Add decl.
5991
5992 * eval.c (Fsignal): Clear abort_on_gc.
5993
5994 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 5995 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
5996
5997 * xdisp.c (move_it_vertically_backward): Do the final big else
5998 even if nlines is 0.
5999
6000 * xdisp.c (redisplay_internal): Finish the per-frame loop
6001 even if redisplay is suspended by input.
6002
0b325c12
AC
60032003-04-24 Andrew Choi <akochoi@shaw.ca>
6004
6005 * macterm.c (x_list_fonts): Return all fonts that match if
6006 maxnames = -1.
6007
4e837cd0
KH
60082003-04-25 Kenichi Handa <handa@m17n.org>
6009
6010 * syntax.c (skip_chars): Fix previous change.
6011
9af7511a
KH
60122003-04-24 Kenichi Handa <handa@m17n.org>
6013
6014 * syntax.c (skip_chars): Make the code faster by using the common
6015 technique of *p, *stop, and *endp.
6016
e3b2c21f
JD
60172003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6018
6019 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 6020 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
6021 being updated.
6022
32c06229
SM
60232003-04-19 Stefan Monnier <monnier@cs.yale.edu>
6024
6025 * eval.c (Fapply): Undo last change and add a comment about why.
6026
c6464167
MB
60272003-04-18 Miles Bader <miles@gnu.org>
6028
6029 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
6030 pickier PARSE_MULTIBYTE_SEQ.
6031
e509f168
SM
60322003-04-17 Stefan Monnier <monnier@cs.yale.edu>
6033
6034 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
6035 Use XCDR, XCAR, CONSP.
6036 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
6037 (Fapply): Remove unnecessary GCPRO.
6038
6039 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
6040
6041 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
6042
6043 * buffer.h: Don't hardcode BEG==1.
6044
6045 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
6046
5ceea398
RS
60472003-04-16 Richard M. Stallman <rms@gnu.org>
6048
6049 * xdisp.c (try_window, try_window_reusing_current_matrix):
6050 When at end of window, set window_end_pos to Z-ZV.
6051
6052 * buffer.c (Foverlay_recenter): Doc fix.
6053
e509f168
SM
60542003-04-14 Stefan Monnier <monnier@cs.yale.edu>
6055
6056 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
6057
d243e605
AC
60582003-04-14 Andrew Choi <akochoi@shaw.ca>
6059
6060 * macterm.c (mac_check_for_quit_char): Don't check more often than
6061 once a second.
6062
6901b111
SM
60632003-04-11 Stefan Monnier <monnier@cs.yale.edu>
6064
6065 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
6066 specially, so that they can't hide an implicit switch-frame event.
6067 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
6068 (head_table): Use switch-frame as event_kind for select-window.
6069 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
6070
6071 * editfns.c (Fformat): Lisp_Object/int mixup.
6072 (format2): Remove unused var numargs.
6073
e301806f 60742003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 6075
6901b111 6076 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
6077 (Qafter_insert_file_set_coding): New variable.
6078 (syms_of_fileio): Initialize and staticpro it. Delete declaration
6079 for after-insert-file-adjust-coding-function.
6080 (Finsert_file_contents): Call Qafter_insert_file_set_coding
6081 instead of Vafter_insert_file_adjust_coding_function.
6082
38914424
KH
60832003-04-11 Kenichi Handa <handa@m17n.org>
6084
6085 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
6086
6087 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
6088 string. Callers changed.
6089
60902003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 6091
6901b111 6092 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 6093 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
6094 (Finsert_file_contents):
6095 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
6096 decode-format.
6097
f979dc05
JD
60982003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6099
6100 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
6101 get GtkAdjustment as widget now is a GtkRange.
6102
6103 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
6104 GtkRange to avoid memory leak.
6105
f8c6b4c2 61062003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 6107
50ebc53d
KH
6108 * xfaces.c (Vface_font_rescale_alist): New variable.
6109 (struct font_name): New member rescale_ratio.
6110 (font_rescale_ratio): New function.
6901b111 6111 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
6112 (better_font_p): On comparing point sized, pay attention to
6113 recale_ratio member of fonts.
6114 (build_scalable_font_name): Reflect font->rescale_ratio in the
6115 font name.
6901b111 6116 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 6117
cb98871c
KH
6118 * lread.c (read1): Before calling index, check if the 2nd
6119 arguemnt is in ASCII range.
6120
4773b8ca
RS
61212003-04-08 Richard M. Stallman <rms@gnu.org>
6122
b0ada147
RS
6123 * fileio.c (Ffile_symlink_p): Doc fix.
6124
6125 * editfns.c (Fformat): Translate positions of text properties
6126 in the format string to apply them to the result.
6127
4773b8ca
RS
6128 * fileio.c (Finsert_file_contents): Doc fix.
6129 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
6130
61312003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 6132
4773b8ca
RS
6133 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
6134
e8f25745 61352003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 6136
e8f25745
ST
6137 * mac.c (init_mac_osx_environment): Switch libexec and bin so
6138 that self-contained application finds libexec files.
6139
f8c6b4c2 61402003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 6141
6901b111
SM
6142 * coding.c (code_convert_region_unwind):
6143 Set Vlast_coding_system_used to the argument.
2310d84c
KH
6144 (code_convert_region): If post-read-conversion function changed
6145 the value of last-coding-sytem, keep the new value in
6146 coding->symbol so that it won't be overridden.
6147 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
6148 (coding_system_accept_latin_extra_p): New function.
6149 (find_safe_codings): Pay attention to characters registered in
6150 latin-extra-code-table.
2310d84c 6151
39c9a034
TTN
61522003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
6153
6154 * Makefile.in (md5.o): Add missing dependency info.
6155
eb67c5d6
RS
61562003-04-06 Richard M. Stallman <rms@gnu.org>
6157
6158 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
6159
6160 * marker.c (verify_bytepos): New function.
6161
6162 * intervals.c (set_intervals_multibyte_1): When becoming
6163 multibyte, adjust right and left child sizes to a whole set of
6164 characters. If an interval gets zero total-length, delete it.
6165 If an interval consists of just its children, delete one of them.
6166
6167 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
6168 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 6169
eb67c5d6
RS
6170 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
6171 All calls deleted.
6172 (lisp_malloc): Do the work here directly.
6173
b1f81fc5
JB
61742003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
6175
6176 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
6177 char tables.
6178
61792003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
6180
6181 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
6182 destructively change "%S" to "%s".
6183
774666fb
MB
61842003-04-03 Miles Bader <miles@gnu.org>
6185
6186 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
6187 always set.
6188
19c37f01
DL
61892003-04-01 Dave Love <fx@gnu.org>
6190
6191 * xfns.c (xpm_lookup_color): Grok "opaque".
6192
2f4b24c3
AC
61932003-03-31 Andrew Choi <akochoi@shaw.ca>
6194
6195 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
6196 parent window ID.
6197
6198 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
6199
6200 * macterm.h (struct mac_output): Define x_pixels_diff and
6201 y_pixels_diff.
b1f81fc5 6202
9443fcf6
JB
62032003-03-31 Juanma Barranquero <lektu@terra.es>
6204
6205 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
6206 blockinput.h and files included from it.
6207
e072891b
KS
62082003-03-31 Kim F. Storm <storm@cua.dk>
6209
6210 The following changes consolidates the common code related to
6211 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
6212 files into frame.c.
9443fcf6 6213
e072891b
KS
6214 * frame.c: Include blockinput.h.
6215 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
6216 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
6217 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
6218 related vars here.
6219 (struct frame_parm_table, frame_parms): New table for describing
6220 frame parameters and their associated Q-variable.
6221 The order of the parameters corresponds to the sequence of the
6222 frame_parm_handlers table in redisplay_interface.
6223 (x_fullscreen_move, x_set_frame_parameters)
6224 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
6225 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
6226 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6227 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
6228 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
6229 Generic functions for processing of frame parameters.
6230 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
6231 (display_x_get_resource, x_get_resource_string): Functions for
6232 generic access to X resources.
6233 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
6234 (x_default_parameter, Fx_parse_geometry): Functions for generic
6235 access to frame parameters.
6901b111
SM
6236 (x_figure_window_size): Generic calculation of frame size.
6237 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
6238 (syms_of_frame): Intern and staticpro frame parameter variables.
6239 Defvar_lisp Vx_resource_class and Vx_resource_name here.
6240 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 6241
e072891b
KS
6242 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
6243 parameter related vars defined in frame.c.
6244 (EMACS_CLASS): Define here.
6245 (enum FULLSCREEN_*): Define here.
6246 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
6247 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
6248 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
6249 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
6250 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
6251 (x_set_visibility, x_set_autoraise, x_set_autolower)
6252 (x_set_unsplittable, x_set_vertical_scroll_bars)
6253 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
6254 (x_figure_window_size): Add prototypes.
6255
6256 * dispextern.h (frame_parm_handler): New typedef.
6257 (struct redisplay_interface): New member frame_parm_handlers.
6258 (enum resource_types): Move declaration here.
6259 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
6260 (x_default_parameter): Add prototypes.
6261
6262 * window.c: Remove extern decl for frame parameter vars.
6263 (change_window_heights): New generic function;
6264 replaces x_change_window_heights. All users changed.
6265
6266 * window.h (change_window_heights): Add prototype.
6267
6268 * xfaces.c: Remove extern decl for frame parameter vars.
6269
6270 * xterm.h (EMACS_CLASS): Remove. Use generic define.
6271 (struct w32_display_info): Fix type of xrdb member.
6272 (enum FULLSCREEN_*): Remove.
6273 Remove prototypes for generic functions (in frame.h).
6274
6275 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
6276 parameters now defined in frame.h and frame.c.
f63fd14e 6277 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
6278 (enum x_frame_parms): Remove (bogus, unused enum).
6279 (check_x_display_info): Make non-static (for frame.c).
6280 (struct x_frame_parm_table, x_frame_parms): Remove.
6281 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
6282 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
6283 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6284 (x_change_window_heights, x_set_autoraise, x_set_autolower)
6285 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
6286 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
6287 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
6288 Remove. Use generic functions instead.
6289 (enum resource_types): Remove.
6290 (x_set_scroll_bar_default_width): New global function (for frame.c).
6291 (Fx_create_frame): Depend on x_figure_window_size to add space for
6292 toolbar and setup size_hint_flags.
6293 (x_frame_parm_handlers): New table for redisplay_interface.
6294 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 6295
e072891b 6296 * xterm.c: Remove unnecessary extern declarations.
f63fd14e 6297 (x_fullscreen_adjust): Remove. Use generic instead.
e072891b
KS
6298 (x_redisplay_interface): Add x_frame_parm_handlers member.
6299
6300 * w32gui.h (XrmDatabase): New (dummy) typedef.
6301
6302 * w32term.h (EMACS_CLASS): Remove. Use generic define.
6303 (struct w32_display_info): Fix type of xrdb member.
6304 (enum FULLSCREEN_*): Remove.
6305 (x_fullscreen_adjust): Remove prototype.
6306
6307 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
6308 parameters now defined in frame.h and frame.c.
f63fd14e 6309 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
6310 (enum x_frame_parms): Remove (bogus, unused enum).
6311 (check_x_display_info): Make non-static (for frame.c).
6312 (struct x_frame_parm_table, x_frame_parms): Remove.
6313 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
6314 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
6315 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6316 (x_change_window_heights, x_set_autoraise, x_set_autolower)
6317 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
6318 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
6319 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
6320 Remove. Use generic functions instead.
6321 (enum resource_types): Remove.
6322 (x_set_scroll_bar_default_width): New global function (for frame.c).
6323 (Fx_create_frame): Depend on x_figure_window_size to add space for
6324 toolbar and setup size_hint_flags.
6325 (w32_frame_parm_handlers): New table for redisplay_interface.
6326 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 6327
e072891b
KS
6328 * w32term.c: Remove unnecessary extern declarations.
6329 (x_fullscreen_adjust): Remove. Use generic instead.
6330 (x_redisplay_interface): Add w32_frame_parm_handlers member.
6331
6332 * w32reg.c (x_get_string_resource): Use XrmDatabase.
6333
6334 * macgui.h (XrmDatabase): New (dummy) typedef.
6335
6336 * macterm.h (EMACS_CLASS): Remove.
6337 (struct mac_display_info): Add xrdb member.
6338 (struct mac_output): Add want_fullscreen member.
6339
6340 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
6341 parameters now defined in frame.h and frame.c.
f63fd14e 6342 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
6343 (check_x_display_info): Make non-static (for frame.c).
6344 (struct x_frame_parm_table, x_frame_parms): Remove.
6345 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
6346 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
6347 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6348 (x_change_window_heights, x_set_autoraise, x_set_autolower)
6349 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
6350 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
6351 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
6352 Remove. Use generic functions instead.
6353 (enum resource_types): Remove.
6354 (x_set_scroll_bar_default_width): New global function (for frame.c).
6355 (mac_frame_parm_handlers): New table for redisplay_interface.
6356 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 6357
e072891b
KS
6358 * macterm.c: Remove unnecessary extern declarations.
6359 (x_redisplay_interface): Add mac_frame_parm_handlers member.
6360
3e6a560b
KS
6361 * Makefile.in (frame.o): Add dependency on blockinput.h and files
6362 included from it (atimer.h and systime.h).
6363
7b7b454e
AS
63642003-03-30 Andreas Schwab <schwab@suse.de>
6365
6366 * xdisp.c (x_insert_glyphs): Fix swapped width and height
6367 parameters for shift_glyphs_for_insert.
6368
6369 * macterm.c (x_redisplay_interface): Add missing entry for
6370 draw_vertical_window_border.
6371
beb402de
KG
63722003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
6373
6374 * fileio.c (Fexpand_file_name): In the no-handler case, after
6375 expanding, look again for a handler and invoke it. This is needed
6376 for filenames like "/foo/../user@host:/bar/../baz" -- the first
6377 expansion produces "/user@host:/bar/../baz" which needs to be
6378 expanded again for the finame result "/user@host:/baz".
6379
b676f356
JD
63802003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6381
6382 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
6383 of area to be redrawn for better performance.
6384
3c671a56
SM
63852003-03-28 Stefan Monnier <monnier@cs.yale.edu>
6386
6387 * xterm.c (take_vertical_position_into_account): Remove.
6388 (xt_action_hook): Call set_vertical_scroll_bar if needed.
6389 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
6390 (xm_scroll_callback, x_create_toolkit_scroll_bar)
6391 (x_set_toolkit_scroll_bar_thumb): Simplify.
6392 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
6393 (XTread_socket): Remove unused var.
6394 (x_make_frame_invisible): Replace goto with else.
6395
6396 * xdisp.c (set_vertical_scroll_bar): New fun.
6397 (redisplay_window): Use it.
6398
84f2e615
RS
63992003-03-26 Richard M. Stallman <rms@gnu.org>
6400
6401 * xdisp.c (update_tool_bar): Recompute tool bar if
6402 update_mode_lines is set. Set w->update_mode_line
6403 only if the tool bar contents actually change.
6404 (update_menu_bar): Undo previous change.
6405
70b6104c
JD
64062003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6407
5fd6f727
JD
6408 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
6409 (xg_frame_set_char_size): Calculate scroll bar width before frame
6410 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
6411 (xg_separator_p): Check for all documented separator types.
6412 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
6413 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
6414
70b6104c
JD
6415 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
6416 so tool bar gets updated.
6417
d9b36d19
SM
64182003-03-26 Stefan Monnier <monnier@cs.yale.edu>
6419
6420 * data.c (store_symval_forwarding): Re-instate part of the code
6421 that was deleted with too much enthusiasm.
6422
64232003-03-25 Stefan Monnier <monnier@cs.yale.edu>
6424
6425 * data.c (store_symval_forwarding): Delete special read-only
6426 hack for type == -1, since we now use ->constant instead.
6427 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
6428
6429 * buffer.c (overlays_in): Declare static.
6430 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
6431 `constant' field rather than the variable's `type' field.
6432
365fa1b3
AC
64332003-03-24 Andrew Choi <akochoi@shaw.ca>
6434
6435 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
6436
6437 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
6438
6439 * fns.c [MAC_OSX]: Do not redefine vector.
6440
6441 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
6442
6443 * macgui.h: Remove definition of No_Cursor.
6444
d9b36d19 6445 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
6446
6447 * xdisp.c: Define No_Cursor.
6448 (x_write_glyphs, notice_overwritten_cursor)
6449 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
6450 (note_mouse_highlight): Remove Mac-specific code.
6451 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 6452
c0bcce6f
JPW
64532003-03-24 John Paul Wallington <jpw@gnu.org>
6454
6455 * xdisp.c (redisplay_window): If mini window's buffer is not
6456 empty, then redisplay it like other windows.
6457
a526b96c
KS
64582003-03-23 Kim F. Storm <storm@cua.dk>
6459
6460 * w32term.c (w32_draw_window_cursor): Fix last change.
6461
37ab321e
KH
64622003-03-23 Kenichi Handa <handa@m17n.org>
6463
a526b96c
KS
6464 * alloc.c (make_string_from_bytes, make_specified_string):
6465 Add `const' for the arg CONTENTS.
37ab321e
KH
6466
6467 * lisp.h (make_string_from_bytes, make_specified_string):
6468 Prototypes adjusted.
6469
7863d625
JD
64702003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6471
a526b96c 6472 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 6473
7863d625
JD
6474 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
6475 (XG_SB_RANGE): New define.
6476
6477 * gtkutil.c (xg_fixed_handle_expose): New function.
6478 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
6479 expose events.
6480 (xg_update_scrollbar_pos): Take two more arguments, left and width
6481 of scroll bar including borders.
6482 Clear left and right part outside scroll bar separately as some
6483 themes have bars that are not an even number of pixels.
d9b36d19 6484 Don't set reallocate_redraws, don't call
7863d625
JD
6485 gdk_window_process_all_updates.
6486 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
6487 so no need to change it. Calculate size and value with XG_SB_RANGE.
6488
d9b36d19
SM
6489 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
6490 Pass left and width of scroll bar including borders to
7863d625
JD
6491 xg_update_scrollbar_pos.
6492
af0ad939
TTN
64932003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
6494
6495 * Makefile.in: Make sure space precedes end-of-line backslashes.
6496
b22139fd
KS
64972003-03-22 Kim F. Storm <storm@cua.dk>
6498
6499 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
6500 Add generic versions here. Remove system specific versions
6501 defined elsewhere.
6502
6503 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
6504 Add prototypes.
6505
6e6410cf
KS
6506 * xterm.h (STORE_NATIVE_RECT): New macro.
6507
5c9cc435
KS
65082003-03-21 Kim F. Storm <storm@cua.dk>
6509
00c64fab
SM
6510 * xdisp.c (get_glyph_string_clip_rect):
6511 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
6512
6513 * dispextern.h (struct redisplay_interface): Add active_p
6514 argument to draw_window_cursor member. All uses changed.
6515
acd37560
KS
65162003-03-21 Kim F. Storm <storm@cua.dk>
6517
6518 The following changes consolidate code related to writing and
6519 inserting glyphs, exposing frame, the tool bar, the mouse face,
6520 the output cursor, and help echo from xterm.c, w32term.c and
6521 macterm.c into xdisp.c. It also generalizes the use of the
6522 window_part enum instead of using numeric values throughout.
af0ad939 6523
acd37560
KS
6524 * xdisp.c: Consolidate gui-independent code here.
6525 Include keymap.h.
6526 (Qhelp_echo): Import.
6527 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
6528 (help_echo_string, help_echo_window, help_echo_object)
6529 (previous_help_echo_string, help_echo_pos): Declare here.
6530 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
6531 (estimate_mode_line_height): Define here. Handle windowing
6532 systems directly (without using estimate_mode_line_height_hook).
6533 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
6534 (update_window_cursor, update_cursor_in_window_tree)
6535 (fast_find_position, fast_find_string_pos)
6536 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
6537 (expose_area, expose_line, expose_overlaps, expose_window)
6538 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
6539 declared static as they are only used locally in xdisp.c.
6540 (draw_glyphs): Rename from x_draw_glyphs and make static.
6541 (tool_bar_item_info, notice_overwritten_cursor): Make static.
6542 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
6543 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 6544 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
6545 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
6546 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
6547 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
6548 (note_mouse_highlight, x_clear_window_mouse_face)
6549 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
6550 (x_intersect_rectangles): New generic functions for use by xdisp.c
6551 and GUI front-ends.
6552 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
6553 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
6554
6555 * dispextern.h (Display_Info): Generic typedef for *_display_info.
6556 (NativeRectangle): Generic typedef for rectangle type.
6557 (enum window_part): Move here from window.c.
6558 (struct redisplay_interface): New members flush_display_optional,
6559 define_frame_cursor, clear_frame_area, draw_window_cursor,
6560 draw_vertical_window_border, shift_glyphs_for_insert.
6561 Rename member clear_mouse_face to clear_window_mouse_face.
6562 (estimate_mode_line_height_hook): Remove hook.
6563 (auto_raise_tool_bar_buttons_p): Don't declare extern.
6564 (tool_bar_item_info): Remove prototype.
6565 (help_echo_string, help_echo_window, help_echo_object)
6566 (previous_help_echo_string, help_echo_pos)
6567 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
6568 (x_stretch_cursor_p, output_cursor): Declare extern.
6569 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
6570 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
6571 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
6572 (display_and_set_cursor, set_output_cursor, x_cursor_to)
6573 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
6574 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
6575 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
6576 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
6577 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
6578 Add prototypes.
6579 (mode_line_string, marginal_area_string): Fix prototypes.
6580
6581 * window.c (enum window_part): Move to dispextern.h.
6582 (coordinates_in_window): Use enum window_part member names
6583 instead of numbers to describe return value.
6584 (struct check_window_data): Change part member to window_part.
6585 (check_window_containing): Return window_part unaltered.
6586 (window_from_coordinates): Change part arg from int to enum
6587 window_part. Allow part arg to be null. All users changed.
6588
6589 * window.h (window_from_coordinates): Fix prototype.
6590
6591 * term.c (estimate_mode_line_height): Move to xdisp.c.
6592
6593 * keyboard.c (make_lispy_event): Use enum window_part.
6594
6595 * dispnew.c (mode_line_string, marginal_area_string): Use enum
6596 window_part instead of int in arg list. Users changed.
6597
6598 * xterm.h (No_Cursor): Declare as None for X.
6599 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 6600
acd37560
KS
6601 * xterm.c: Remove consolidated defines and code.
6602 (BETWEEN): Remove unused macro.
6603 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
6604 (x_define_frame_cursor, x_clear_frame_area)
6605 (x_draw_window_cursor): New X-specific functions for RIF.
6606 (x_redisplay_interface): Add new members.
6607
6608 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
6609
6610 * w32term.h (struct w32_output): Remove cross_cursor member.
6611
6612 * w32term.c: Remove consolidated defines and code.
6613 (BETWEEN): Remove unused macro.
6614 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
6615 (w32_define_frame_cursor, w32_clear_frame_area)
6616 (w32_draw_window_cursor): New W32-specific functions for RIF.
6617 (w32_redisplay_interface): Add new members.
6618
a64387ee 6619 * w32gui.h (No_Cursor): Define as 0 for W32.
acd37560
KS
6620 (XRectangle): Add X compatible rectangle type.
6621 (NativeRectangle): Declare as RECT for W32.
6622 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
6623
6624 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
6625
6626 * w32console.c: Remove consolidated defines and code.
af0ad939 6627
acd37560
KS
6628 * msdos.h (Display_Info): Add generic typedef.
6629
6630 * msdos.c: Remove consolidated defines and code.
6631 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
6632
6633 * macterm.h (struct mac_output): Replace member cross_cursor by
6634 hand_cursor.
6635 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
6636
6637 * macterm.c: Remove consolidated defines and code.
6638 (BETWEEN): Remove unused macro.
6639 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
6640 (mac_define_frame_cursor, mac_clear_frame_area)
6641 (mac_draw_window_cursor): New Mac-specific functions for RIF.
6642 (x_redisplay_interface): Add new members.
6643
6644 * macgui.h (No_Cursor): Define as 0 for Mac.
6645 (XRectangle): Add X compatible rectangle type.
6646 (NativeRectangle): Declare as Rect for Mac.
6647 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
6648
204ccab1
KS
6649 * macfns.c (x_set_mouse_color): Setup hand_cursor.
6650 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 6651
9443fcf6 6652 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
6653 included from it. Add dependency on keymap.h.
6654
6655 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
6656
8ba01a70 66572003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
6658
6659 * fileio.c (Fexpand_file_name): Fix previous change.
6660
8ba01a70 66612003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
6662
6663 * fileio.c (Ffile_name_directory): Reconstruct file name by
6664 make_specified_string.
6665 (Ffile_name_nondirectory, Ffile_name_as_directory)
6666 (Fdirectory_file_name, Fexpand_file_name)
6667 (Fsubstitute_in_file_name): Likewise.
6668 (Fread_file_name): Compare decoded homedir with DIR and
6669 DEFAULT_FILENAME.
6670
6671 * alloc.c (make_specified_string): If NCHARS is negative, count
6672 the number of characters.
6673
19536747
JD
66742003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6675
de38ae5a
JD
6676 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
6677 all widgets.
6678
19536747
JD
6679 * gtkutil.h: Removed xg_ignore_next_thumb.
6680
37ab321e 66812003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
6682
6683 * coding.c (Vchar_coding_system_table): Remove this variable.
6684 (Vcoding_system_safe_chars): New variable.
6685 (intersection): Remove this function.
6686 (find_safe_codings): Don't use Vchar_coding_system_table, but try
6687 all codings in SAFE_CODINGS.
00c64fab 6688 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
6689 find_safe_codings. Get generic coding systems from
6690 Vcoding_system_safe_chars.
6691 (Fdefine_coding_system_internal): New function.
6692 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
6693 Initialize and staticpro Vcoding_system_safe_chars.
6694
17097258
JD
66952003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6696
2a2071c3
JD
6697 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
6698 equal old values before updating.
6699
17097258
JD
6700 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
6701
6702 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
6703
67042003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6705
6706 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
6707 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
6708 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
6709 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
6710 (xg_create_scroll_bar): Pass bar to button event callback.
6711 (xg_find_top_left_in_fixed): New function.
6712 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
6713 whole scroll bar area. Get old position with
6714 xg_find_top_left_in_fixed, calculate and only clear needed areas.
6715 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
6716 dragging is in progress. Calculate whole as for Motif.
6717 Remove code that saved last values. Call gtk_range functions to
6718 set scroll bar sizes.
6719
6720 * gtkutil.h: Removed xg_ignore_next_thumb.
6721
8cb9dfbf
JB
67222003-03-17 Juanma Barranquero <lektu@terra.es>
6723
6724 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
6725 and files included from it.
6726
00c64fab
SM
67272003-03-18 Stefan Monnier <monnier@cs.yale.edu>
6728
6729 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
6730 multiple occurrences of the same keymap under different prefixes.
6731 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
6732
c45bb3b2
JR
67332003-03-16 Jason Rumney <jasonr@gnu.org>
6734
6735 * w32gui.h: Use HDC for Display.
6736
6737 * w32term.c (w32_encode_char): Prevent double-byte chars from
6738 crashing Emacs.
6739
6740 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
6741 as binary.
6742
2a6d0874
JB
67432003-03-16 Juanma Barranquero <lektu@terra.es>
6744
6745 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
6746
03eb5fab
KS
67472003-03-16 Kim F. Storm <storm@cua.dk>
6748
6749 The following changes consolidate some of the gui-independent
6750 parts of the processing and drawing of "glyph strings" from
6751 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 6752
03eb5fab
KS
6753 * dispextern.h (struct glyph): Reduce face_id member from 22 to
6754 21 bits (this reduces number of faces from 4M to 2M).
6755 Replace W32 specific w32_font_type member (2 bits) by generic
6756 font_type member (3 bits) for portability.
6757 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
6758 (enum draw_glyphs_face): Define here.
6759 (struct glyph_string): Define here. Merge W32 and X versions.
6760 (struct redisplay_interface): New members per_char_metric,
6761 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
6762 (VCENTER_BASELINE_OFFSET): Define here.
6763 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
6764 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
6765
6766 * xdisp.c: Consolidate gui-independent "glyph string" code here.
6767 (dump_glyph_string): Moved here.
6768 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
6769 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
6770 (fill_composite_glyph_string, fill_glyph_string)
6771 (fill_image_glyph_string, fill_stretch_glyph_string)
6772 (left_overwritten, left_overwriting, right_overwritten)
6773 (right_overwriting, get_char_face_and_encoding)
6774 (set_glyph_string_background_width, compute_overhangs_and_x)
6775 (append_glyph, append_composite_glyph, produce_image_glyph)
6776 (take_vertical_position_into_account, append_stretch_glyph)
6777 (produce_stretch_glyph): New generic functions (based on X version).
6778 Call platform specific functions through rif.
6779 (INIT_GLYPH_STRING): New macro, hides W32 details.
6780 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
6781 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
6782 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
6783 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
6784 (notice_overwritten_cursor):
6785 Generic functions exported to platform modules. Users changed.
6786
6787 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
6788 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
6789 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 6790 New macros for consolidated code.
2a6d0874 6791
03eb5fab
KS
6792 * xterm.c: Remove consolidated defines and code.
6793 (x_per_char_metric, x_encode_char)
6794 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
6795 (x_redisplay_interface): Add new members.
6796
6797 * w32gui.h (Display): Add dummy typedef for consolidation.
6798 (XChar2b): Define alias for wchar_t for consolidation.
6799 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
6800
6801 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 6802 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
6803 New macros for consolidation.
6804
fad49844 6805 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
6806 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
6807 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
6808 (w32_per_char_metric): Change font_type arg to int for RIF.
6809 (w32_encode_char): Return int according to RIF requirements.
6810 (w32_compute_glyph_string_overhangs): Adapt to RIF.
6811 (w32_get_glyph_overhangs): New function for RIF. Uses generic
6812 x_get_glyph_overhangs.
6813 (w32_redisplay_interface): Add new members.
6814
6815 * macgui.h (XChar2b): Move typedef here for consolidation.
6816 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
6817
6818 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
6819 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
6820 consolidation.
6821
6822 * macterm.c: Remove consolidated defines and code.
6823 (mac_per_char_metric): New function for RIF.
00c64fab 6824 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
6825 (mac_compute_glyph_string_overhangs): Adapt for RIF.
6826 (x_redisplay_interface): Add new members.
6827
00c64fab
SM
68282003-03-15 Stefan Monnier <monnier@cs.yale.edu>
6829
6830 * keymap.c (Vmenu_events): New var.
6831 (syms_of_keymap): Initialize it.
6832 (where_is_internal): Check more carefully what is a menu event.
6833
225c7a07
RS
68342003-03-14 Richard M. Stallman <rms@gnu.org>
6835
6836 * lread.c (read1): After #!, exit loop on eof.
6837
cea9be54
JD
68382003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6839
9ea0e54d
JD
6840 * gtkutil.h: Add declaration for xg_frame_cleared.
6841
0cb35f4e
JD
6842 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
6843
cea9be54
JD
6844 * gtkutil.c (struct xg_last_sb_pos): New structure.
6845 (handle_fixed_child): New function.
6846 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
6847 and force a redraw on them.
6848 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
6849 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
6850 so we can avoid unneeded redraws.
6851 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
6852 and force a redraw on the scroll bar.
6853 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
6854 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 6855 (xg_frame_cleared): New function.
cea9be54 6856
20b853f3
KH
68572003-03-13 Kenichi Handa <handa@m17n.org>
6858
6859 * coding.c (Fdetect_coding_region): Fix docstring.
6860 (Fdetect_coding_string): Fix docstring.
6861
7a555aff
AS
68622003-03-13 Andreas Schwab <schwab@suse.de>
6863
25cc0080
AS
6864 * gtkutil.c: Add prototype for create_menus.
6865
30225431
AS
6866 * data.c (long_to_cons): Fix type of top.
6867
6868 * xselect.c (selection_data_to_lisp_data): Use int instead of
6869 long for an integer of size 4.
6870
7a555aff 6871 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 6872 (xg_tool_bar_help_callback): Likewise.
7a555aff 6873
a3e4741f
AS
68742003-03-12 Andreas Schwab <schwab@suse.de>
6875
6876 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
6877
9668be7c
KS
68782003-03-12 Kim F. Storm <storm@cua.dk>
6879
03eb5fab 6880 The following changes consolidate the fringe handling from
9668be7c 6881 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 6882
9668be7c
KS
6883 * xdisp.c: Consolidate fringe handling code here.
6884 (left_bits, right_bits, continued_bits, continuation_bits)
6885 (ov_bits, zv_bits): Define fringe bitmaps.
6886 (fringe_bitmaps): New array holding fringe bitmaps.
6887 (draw_fringe_bitmap): Draw a specific bitmap; call display
6888 specific drawing routine via rif->draw_fringe_bitmap.
6889 (draw_row_fringe_bitmaps): Generic replacement for
6890 x_draw_row_fringe_bitmaps; all callers changed.
6891 (compute_fringe_widths): Generic replacement for
6892 x_compute_fringe_widths; all callers changed.
6893
6894 * dispextern.h (enum fringe_bitmap_type): Define here.
6895 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
6896 (fringe_bitmaps): Declare extern.
6897 (struct redisplay_interface): New member draw_fringe_bitmap.
6898 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
6899
6900 * xterm.c: Remove generic fringe code.
6901 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
6902 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
6903
6904 * w32term.c: Remove generic fringe code.
6905 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
6906 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 6907
9668be7c
KS
6908 * macterm.c: Remove generic fringe code.
6909 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
6910 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
6911
00a88f32
SM
69122003-03-11 Stefan Monnier <monnier@cs.yale.edu>
6913
6914 * print.c (Fprin1_to_string): Return unibyte string if possible.
6915
1d1de695
DK
69162003-03-09 David Kastrup <dak@gnu.org>
6917
6918 * process.c (read_process_output): We have allocated enough space
6919 for readmax and carryover, so actually use the alloted space.
6920
257f40f2
JD
69212003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6922
6923 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
6924 toolkit scrollbar click.
6925
6926 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
6927 for USE_GTK.
6928 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
6929 also.
6930 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
6931 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 6932
257f40f2
JD
6933 * gtkutil.h: Declare xg_get_scroll_id_for_window.
6934
6935 * gtkutil.c (xg_get_scroll_id_for_window): New function.
6936 (xg_tool_bar_item_expose_callback): New function.
6937 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
6938 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
6939 on the tool bar widget.
6940 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
6941 to expose on the tool bar item widgets.
6942
15213141
JD
69432003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6944
26b74a0b 6945 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 6946 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
6947 deleted from the image cache).
6948
15213141
JD
6949 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
6950 the event isn't for a frame (i.e. for dialogs).
6951
20b853f3 69522003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
6953
6954 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
6955 composition components reaches the limit, terminate composing.
6956 (COMPOSITION_OK): New macro.
00a88f32 6957 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
6958 composition is found.
6959 (coding_restore_composition): Adjust the number of composition
6960 components if it is not sane.
6961
c9029fe5
JB
69622003-03-06 Juanma Barranquero <lektu@terra.es>
6963
6964 * w32term.h (struct w32_display_info): Add xrdb member to support
6965 passing resources via -xrm on Windows.
6966
6967 * w32term.c (w32_make_rdb): New function.
6968 (w32_term_init): Use it to initialize xrdb member of w32_display_info
6969 struct. Delete leftover code.
6970
6971 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
6972 for resources passed on the command line.
6973
6974 * w32reg.c (w32_get_rdb_resource): New function.
6975 (x_get_string_resource): Use it, so resources passed with -xrm
6976 supercede the ones in the registry.
6977
9d00001f
JD
69782003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6979
6980 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
6981 instead of x_top_window_to_frame.
6982
ca2417b9
JD
69832003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6984
6985 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
6986 when restarting Emacs.
6987
5b20caf0
RS
69882003-03-03 Richard M. Stallman <rms@gnu.org>
6989
6990 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
6991 to run kill-buffer-query-functions.
6992 (Qkill_buffer_query_functions): New var.
6993 (syms_of_buffer): Init and staticpro it.
6994
58e91b77
JD
69952003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6996
6997 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
6998
932357b4
KS
69992003-02-25 Kim F. Storm <storm@cua.dk>
7000
7001 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
7002 If centering point failed to make whole line visible and vscroll
7003 is non-zero, disable vscroll and try centering point again.
7004
7005 * lread.c (read1): Accept `single space' syntax like (? x).
7006
bb8db7e1
JD
70072003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7008
7009 * keyboard.c (cancel_hourglass_unwind): Surround with
7010 #ifdef HAVE_X_WINDOWS
7011
47d77aab
KH
70122003-02-25 Kenichi Handa <handa@m17n.org>
7013
7014 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
7015 process only when "subprocesses" is defined.
7016
6a097c0c
SM
70172003-02-24 Stefan Monnier <monnier@cs.yale.edu>
7018
7019 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
7020
0b063c27
JB
70212003-02-24 Juanma Barranquero <lektu@terra.es>
7022
d1135afc
JB
7023 * callint.c (fix_command): Declare as static void and move before
7024 Fcall_interactively.
7025
0b063c27
JB
7026 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
7027 (syms_of_xdisp): Don't initialize Qwhen.
7028
0af912f0
JD
70292003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7030
7031 * keyboard.c (cancel_hourglass_unwind): New function.
7032 (command_loop_1): Cancel hourglass with unwind-protect.
7033
120d0a23
RS
70342003-02-23 Richard M. Stallman <rms@gnu.org>
7035
7036 * callint.c (fix_command): New subroutine, from Fcall_interactively.
7037 Detect (when ... (region-beginning)) etc.
7038 (Fcall_interactively): Call fix_command.
7039 (Qif, Qwhen): New variables.
7040 (syms_of_callint): Init and staticpro them.
0b063c27 7041
120d0a23
RS
7042 * regex.c (print_partial_compiled_pattern): Output to stderr.
7043
4ece81a6
KG
70442003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
7045
7046 * dired.c (directory_files_internal): Don't expand directory.
7047 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
7048 instead. From Lars Hansen <larsh@math.ku.dk>.
7049
e52bd6b7
SM
70502003-02-22 Stefan Monnier <monnier@cs.yale.edu>
7051
7052 * fns.c (string_to_multibyte): Remove unused var i.
7053 (Flanginfo): Fix int/Lisp_Object mixup.
7054 (void_call2): New fun.
7055 (Fmap_char_table): Use it in place of call2.
7056
7057 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
7058
7059 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
7060
7061 * keymap.c (copy_keymap_1): Make it static.
7062
7063 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
7064
c33ef7c4
JB
70652003-02-22 David Ponce <david@dponce.com>
7066
7067 * lread.c (Fload): Don't check STRING_MULTIBYTE.
7068
16782258
JD
70692003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7070
7071 * process.h: Removed subtty field from struct Lisp_Process.
7072
7073 * process.c (create_process): Remove setting of subtty.
7074 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
7075 (Fprocess_running_child_p, process_send_signal):
7076 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
7077 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
7078
3abeca61
KG
70792003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
7080
7081 * keymap.c (Fdefine_key): Doc fix.
7082
92a8ce63
JB
70832003-02-21 Juanma Barranquero <lektu@terra.es>
7084
7085 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
7086
7087 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
7088 POLLING_PROBLEM_IN_SELECT.
7089
7090 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
7091 Delete #undef of POLLING_PROBLEM_IN_SELECT.
7092
7093 * s/hpux10-20.h: New file.
7094
e52bd6b7
SM
7095 * process.c (wait_reading_process_input):
7096 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 7097
20f1ef2e
KH
70982003-02-20 Kenichi Handa <handa@m17n.org>
7099
32d0a9dc
KH
7100 * fontset.c (check_fontset_name): If NAME is nil, return the
7101 default fontset.
7102 (override_font_info): New function.
e52bd6b7 7103 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
7104 (Ffontset_info): If FONTSET is not the default fontset, merge
7105 FONTSET onto the copy of the default fontset, and work on that
7106 copy. Document that NAME nil means the default fontset.
7107 (Ffontset_font): Document that NAME nil means the default fontset.
7108
20f1ef2e
KH
7109 * process.c (setup_process_coding_systems): If the process's
7110 in/out descriptor is -1, do nothing.
7111
77d1daf2
AS
71122003-02-19 Andreas Schwab <schwab@suse.de>
7113
e52bd6b7
SM
7114 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
7115 Add prototypes.
77d1daf2 7116
f9a45bb3
KH
71172003-02-19 Kenichi Handa <handa@m17n.org>
7118
7119 * xfaces.c (try_alternative_families): Try all scalable fonts if
7120 Vscalable_fonts_allowed is not Qt.
7121
72ecb43c
JD
71222003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7123
7124 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
7125
ee5be7c3
JD
71262003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7127
7128 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
7129 names.
7130
7131 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 7132 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
7133 x_face_list_fonts.
7134 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
7135 (Fx_list_fonts): Set maxnames to -1 to get all font names.
7136
4cd519a7
KS
71372003-02-18 Kim F. Storm <storm@cua.dk>
7138
068f9882
KS
7139 * lread.c (read1): Fix last change.
7140 "`" is not always special. Allow "?" after a character constant.
4cd519a7 7141
7290a344
AC
71422003-02-18 Andrew Choi <akochoi@shaw.ca>
7143
7144 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
7145
1f7fa69b
AS
71462003-02-18 Andreas Schwab <schwab@suse.de>
7147
7148 * window.c (window_scroll_pixel_based): Move outside a
7149 multi-glyph character before setting new window start.
7150
7151 * xdisp.c (in_display_vector_p): New function.
7152 * dispextern.h (in_display_vector_p): Declare.
7153
23e21195
KS
71542003-02-18 Kim F. Storm <storm@cua.dk>
7155
7156 * lread.c (read1): Fix and relax read syntax.
7157 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
7158 Only recognize "," after dotted-pair dot if inside backquote.
7159 Never include "`" or "," (inside backquote) in a symbol.
7160 Allow dotted-pair dot after a character constant.
7161 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 7162
f098b121
JD
71632003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7164
7165 * gtkutil.c (xg_tool_bar_expose_callback): New function.
7166 (xg_create_tool_bar): Force style of tool bar to be horizontal with
7167 icons. Set name of tool bar to emacs-toolbar.
7168 (update_frame_tool_bar): Connect expose event to
7169 xg_tool_bar_expose_callback.
7170
63020c46
RS
71712003-02-17 Richard M. Stallman <rms@gnu.org>
7172
7173 * keyboard.c (this_command_key_count_reset): New variable.
7174 Initiatize to 0 where this_command_key_count is set.
7175 (read_char): Save and restore this_command_key_count_reset
7176 around input method code.
7177 (read_char): If this_command_key_count_reset, echo reread commands.
7178 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
7179
fb4452cc
KH
71802003-02-17 Kenichi Handa <handa@m17n.org>
7181
7182 * fns.c (string_to_multibyte): Always return a multibyte string.
7183
bd11cc09
JR
71842003-02-16 Jason Rumney <jasonr@gnu.org>
7185
e52bd6b7
SM
7186 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
7187 Negative max_fonts parameter means list all.
bd11cc09 7188
4cdf4bde
DL
71892003-02-14 Dave Love <fx@gnu.org>
7190
7191 * fns.c (Flanginfo): Doc fix.
7192
023b93f6
KS
71932003-02-13 Kim F. Storm <storm@cua.dk>
7194
37cd4238
KS
7195 * lread.c (read_escape): Interpret \s as a SPACE character, except
7196 for \s-X in a character constant which still is the super modifier.
7197 (read1): Signal an `invalid read syntax' error if a character
7198 constant is immediately followed by a digit or symbol character.
7199
140a6b7e
KS
7200 * search.c (Fmatch_data): Doc fix. Explicitly state that
7201 match-data is undefined if last search failed.
7202
023b93f6
KS
7203 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
7204 All uses changed.
7205
7d5c86e5
JB
72062003-02-12 Juanma Barranquero <lektu@terra.es>
7207
7208 * eval.c (Fdefmacro): Fix typo.
7209
295fff2c
KS
72102003-02-12 Kim F. Storm <storm@cua.dk>
7211
7212 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
7213 macro is a string, convert meta modifiers in string when copying
7214 the string into a vector.
7215
60f3202d
KS
72162003-02-11 Kim F. Storm <storm@cua.dk>
7217
7218 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
7219
61cb0b53
KH
72202003-02-11 Kenichi Handa <handa@m17n.org>
7221
7222 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
7223
7392e23c
KS
72242003-02-10 Kim F. Storm <storm@cua.dk>
7225
7226 * process.c: Doc fixes.
7227 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
7228
ce4254bd
KH
72292003-02-10 Kenichi Handa <handa@m17n.org>
7230
9c7a329a
KH
7231 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
7232
ce4254bd
KH
7233 * process.c (QCfilter_multibyte): New variable.
7234 (setup_process_coding_systems): New function.
e52bd6b7
SM
7235 (Fset_process_buffer, Fset_process_filter):
7236 Call setup_process_coding_systems.
ce4254bd
KH
7237 (Fstart_process): Initialize the member `filter_multibyte' of
7238 struct Lisp_Process.
7239 (create_process): Call setup_process_coding_systems.
7240 (Fmake_network_process): New keyward `:filter-multibyte'.
7241 Initialize the member `filter_multibyte' of struct Lisp_Process.
7242 Call setup_process_coding_systems.
7243 (server_accept_connection): Call setup_process_coding_systems.
7244 (read_process_output): If the process has a filter, decide the
7245 multibyteness of a string to given to the filter by
7246 `filter_multibyte' member of the process. If the process doesn't
7247 have a filter and the result of conversion is unibyte, use
7248 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
7249 multibyte form.
7250 (Fset_process_coding_system): Call setup_process_coding_systems.
7251 (Fset_process_filter_multibyte): New function.
7252 (Fprocess_filter_multibyte_p): New function.
7253 (syms_of_process): Intern and staticpro QCfilter_multibyte.
7254 Defsubr Sset_process_filter_multibyte and
7255 Sprocess_filter_multibyte_p.
7256
7257 * process.h (struct Lisp_Process): New member filter_multibyte.
7258
7259 * lisp.h (setup_process_coding_systems): Add prototype.
7260
7261 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
7262 process, update coding systems for the process.
7263
b08d5f59
KH
72642003-02-09 Kenichi Handa <handa@m17n.org>
7265
7266 * fns.c (string_to_multibyte): New function.
7267 (Fstring_to_multibyte): New function.
7268 (syms_of_fns): Defsubr it.
7269
0dfd93c0
AS
72702003-02-08 Andreas Schwab <schwab@suse.de>
7271
7272 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
7273 instead of the substitution.
7274
7b76ca1c
JD
72752003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7276
7277 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
7278
7279 * xmenu.c (menu_position_func): Adjust menu popup position so that
7280 the menu is fully visible.
7b76ca1c 7281
2436a4e4
JD
72822003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7283
7284 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
7285 (x_make_frame_invisible, x_wm_set_icon_position):
7286 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
7287
7288 * xfns.c (x_set_name, x_set_title): Ditto.
7289
37d1e680
RS
72902003-02-04 Richard M. Stallman <rms@gnu.org>
7291
7292 * keyboard.c (echo_now): Update before_command_echo_length.
7293 (Freset_this_command_lengths): Reset this_command_key_count etc.
7294 immediately rather than arranging to do it later.
7295 (before_command_key_count_1, before_command_echo_length_1)
7296 (before_command_restore_flag): Vars deleted.
7297 (add_command_key): Don't handle before_command_restore_flag.
7298 (read_char, record_menu_key): Don't update before_command_key_count or
7299 before_command_echo_length.
7300 (read_char): Don't handle before_command_restore_flag.
7301
7302 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
7303 in direct-output clauses if it wouldn't be called in the ordinary case.
7304
578846a3
KS
73052003-02-04 Kim F. Storm <storm@cua.dk>
7306
7307 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
7308
49853a4d
JD
73092003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7310
7311 * gtkutil.c (remove_from_container): Copying list is not needed.
7312 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
7313 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
7314 on list returned from gtk_container_get_children to avoid memory leak.
7315
8b53dc06
JR
73162003-02-01 Jason Rumney <jasonr@gnu.org>
7317
5d54d177
JR
7318 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
7319 local malloc.
7320 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
7321 definitions in xpm.h.
7322 (init_xpm_functions): New function.
f63fd14e 7323 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5d54d177
JR
7324 (init_external_image_libraries): Try to load libXpm.dll.
7325
8b53dc06
JR
7326 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
7327 timestamp.
7328
b222e415
DL
73292003-01-31 Dave Love <fx@gnu.org>
7330
7331 * syntax.c (Fskip_chars_forward)
7332 (open-paren-in-column-0-is-defun-start): Doc fix.
7333
c60ee5e7
JB
73342003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
7335
7336 * fileio.c: Support // at start of name for Cygwin (just added proper
7337 preprocessor tests).
7338
7339 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
7340
7341 * Makefile.in: Use @EXEEXT@ for Cygwin.
7342
7343 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
7344
7345 * s/cygwin.h: Added for Cygwin port.
7346
53b37591
JB
73472003-01-31 Juanma Barranquero <lektu@terra.es>
7348
7349 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
7350 when including gif_lib.h.
fe929957 7351 (init_gif_functions, init_tiff_functions): New functions.
f63fd14e
JB
7352 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
7353 Windows. Disable color table lookups. Call library functions
53b37591 7354 through pointers determined at runtime.
fe929957
JB
7355 (init_external_image_libraries): Try to load libungif.dll and
7356 libtiff.dll.
53b37591 7357
45415a8f
KH
73582003-01-31 Kenichi Handa <handa@m17n.org>
7359
7360 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 7361 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 7362
a97e4138
JD
73632003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7364
e52bd6b7 7365 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 7366
6eed9bed
DL
73672003-01-30 Dave Love <fx@gnu.org>
7368
7369 * alloc.c (Vgc_elapsed, gcs_done): New variables.
7370 (Fgarbage_collect): Use them.
7371 (init_alloc, syms_of_alloc): Set them up.
7372
100dcd40
JB
73732003-01-30 Juanma Barranquero <lektu@terra.es>
7374
7375 * w32fns.c (init_external_image_libraries): Add missing operator.
7376
fbd852af
JR
73772003-01-29 Jason Rumney <jasonr@gnu.org>
7378
7379 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
7380 an alternative name for jpeg.dll.
7381
8a2d8020
KH
73822003-01-29 Kenichi Handa <handa@m17n.org>
7383
7384 * xdisp.c (set_cursor_from_row): Pay attention to string display
7385 properties.
7386
058c18c7
AC
73872003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
7388
7389 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
7390 <escape>.
7391 (keycode_to_xkeysym_table): Reformat and add more comments.
7392 (XTread_socket): Drop special case for backspace.
7393
385f11cf
AC
73942003-01-28 Andrew Choi <akochoi@shaw.ca>
7395
7396 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
7397 values in old-style RGB specs.
7398
c922a224
JB
73992003-01-27 Juanma Barranquero <lektu@terra.es>
7400
7401 * w32fns.c (init_external_image_libraries): Try alternate names for the
7402 jpeg dll.
7403
0a1d6de0
JD
74042003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7405
7406 * gtkutil.c (create_dialog, xg_separator_p)
7407 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
7408 before calling strcmp or strlen.
7409
a97e4138 74102003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
7411
7412 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
7413 and handle image load failure.
7414
28908312
JR
74152003-01-26 Jason Rumney <jasonr@gnu.org>
7416
7417 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
7418 New functions.
f63fd14e
JB
7419 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
7420 Disable color table lookups. Call jpeg library functions
28908312
JR
7421 through pointers determined at runtime.
7422 (init_external_image_libraries): Try to load jpeg.dll.
7423
84e47416
RS
74242003-01-25 Richard M. Stallman <rms@gnu.org>
7425
7426 * lisp.h: Declare format2 instead of format1.
7427
7428 * fileio.c (barf_or_query_if_file_exists):
7429 Call format2 instead of format1.
7430
7431 * editfns.c (format2): New function, replaces format1
7432 but takes exactly two Lisp Objects as format args.
7433
7434 * buffer.c (Fkill_buffer): Call format2 instead of format1.
7435
a97e4138 74362003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
7437
7438 * xterm.h: Change to return value of x_dispatch_event to int.
7439
7440 * xterm.c (x_filter_event): New function.
7441 (event_handler_gdk, XTread_socket): Call x_filter_event.
7442 (x_dispatch_event): Change to return value of finish.
7443 (event_handler_gdk): Use return value from x_dispatch_event.
7444
7445 * xfns.c (x_window): Call create_frame_xic for GTK version to
7446 initialize input methods.
7447
7448 * gtkutil.h: Add (void) prototypes.
7449
7450 * gtkutil.c (create_menus): Remove code that puts the help menu to
7451 the right.
7452
54eefef1
JR
74532003-01-25 Jason Rumney <jasonr@gnu.org>
7454
7455 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
7456 [HAVE_PNG]: Sync with xfns.c version.
f63fd14e
JB
7457 (png_load): Adjust colors for Windows. Use Windows
7458 bitmaps. Disable color table lookups.
c262430d
JR
7459 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
7460 (init_png_functions): New function.
7461 (png_read_from_memory, png_load): Call png library functions
7462 through pointers determined at runtime.
7463 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
7464 (init_external_image_libraries): New function.
7465 (init_xfns): Call it.
54eefef1 7466
1a9e275b
AS
74672003-01-24 Andreas Schwab <schwab@suse.de>
7468
7469 * minibuf.c (Fminibuffer_message): Verify type of parameter.
7470
a97e4138 74712003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
7472
7473 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
7474 of static initializer.
7475
422eec7e
DL
74762003-01-24 Dave Love <fx@gnu.org>
7477
7478 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
7479 architectures.
7480
7481 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
7482 Use __alignof__.
7483
2a026b04
KH
74842003-01-24 Kenichi Handa <handa@m17n.org>
7485
7486 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 7487 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
7488 (command_loop_1): Call adjust_point_for_property with proper
7489 second arg.
7490
a18bb28d
JR
74912003-01-22 Jason Rumney <jasonr@gnu.org>
7492
7493 Sync changes with xterm.c and xfns.c.
7494
7495 * w32term.c (x_draw_glyph_string_foreground)
7496 (x_draw_composite_glyph_string_foreground): Implement overstriking.
7497
7498 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
7499 phys_cursor's hpos is overwritten. This is still not completely
7500 correct, as it doesn't really make sense to use hpos at all to
7501 get the cursor glyph (as that is relative to the width of the
7502 characters on the line, which may have changed during the update).
7503
7504 * w32term.c (notice_overwritten_cursor): Handle the special case
7505 of the cursor being in the first blank non-text line at the
7506 end of a window.
7507
7508 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
7509 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
7510 Compute from the x position returned by x_draw_glyphs.
7511
7512 (x_display_and_set_cursor): Don't set phys_cursor_width here,
7513 except for NO_CURSOR and system caret, to make phys_cursor_width
7514 contain what its name suggests.
7515 (notice_overwritten_cursor): Consider the cursor image erased if
7516 the output area intersects the cursor image in y-direction.
7517
6a097c0c
SM
7518 * w32term.c (note_mode_line_or_margin_highlight): Rename from
7519 note_mode_line_highlight and extend.
a18bb28d
JR
7520
7521 * w32term.c (last_window): New variable.
7522 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
7523 (note_mouse_movement): Remove reimplemented code in #if 0.
7524
7525 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
7526 not update_mode_lines, and always set it to 1.
7527
ac6e47ef
JR
75282003-01-21 Jason Rumney <jasonr@gnu.org>
7529
7530 * w32fns.c (IDC_HAND): Define it if system headers don't.
7531
75322003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
7533
7534 * w32term.h (struct w32_output): New member hand_cursor.
7535 (WM_EMACS_SETCURSOR): New message definition.
7536
7537 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
7538 function w32_define_cursor.
7539 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
7540 position, change member name output_data.x to output_data.w32 and
7541 add function w32_define_cursor.
7542 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
7543 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
7544 (w32_initialize_display_info):
7545 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
7546
7547 * w32fns.c (Vx_hand_shape): New variable.
7548 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
7549 WM_EMACS_SETCURSOR.
7550 (x-create-frame): Setup Cursor types.
7551
ceb39a17
JB
75522003-01-21 David Ponce <david@dponce.com>
7553
ac6e47ef 7554 * w32term.c (w32_encode_char): For DIM=1 charset, set
f63fd14e 7555 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
ac6e47ef 7556 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 7557 2002-09-30.)
ac6e47ef
JR
7558 (w32_draw_relief_rect): Declare all args.
7559 (w32_define_cursor): New.
7560
7561 * w32fns.c (w32_load_cursor): New function.
7562 (w32_init_class): Use it.
7563 (x_put_x_image): Declare all args.
7564
46cf0bed
JB
75652003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
7566
7567 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
7568
a97e4138 75692003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
7570
7571 * gtkutil.c: Must include stdio.h before termhooks.h
7572
83fc9c63
DL
75732003-01-21 Dave Love <fx@gnu.org>
7574
7575 * alloc.c (Fgc_status): Print zombie list.
7576 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
7577 Fix assignment of zombies.
7578 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
7579 Don't take car of non-cons.
7580
7581 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7582
7583 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7584
fe04b8c8
JR
75852003-01-20 David Ponce <david@dponce.com>
7586
7587 * w32menu.c (digest_single_submenu): Declare all args.
7588
7589 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
7590 changes in xmenu.c:
7591
7592 (parse_single_submenu): Use individual keymap's prompt
7593 string as pane name, if there is one.
7594 (set_frame_menubar): Save menu_items_n_panes from each call to
7595 parse_single_submenu and use it when calling digest_single_submenu.
7596
539e69a9
ST
75972003-01-20 Steven Tamm <steventamm@mac.com>
7598
7599 * macterm.c (XTread_socket): Checks for valid, visible window
7600 before sending a scroll-wheel event.
7601
675d000f
RS
76022003-01-20 Richard M. Stallman <rms@gnu.org>
7603
7604 * xdisp.c (redisplay_window): If mini window's buffer is not
7605 a minibuffer, then redisplay it like other windows.
7606
a97e4138 76072003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
7608
7609 * gtkutil.c (xg_create_frame_widgets): Check if there is an
7610 external tool bar before setting tool bar height.
7611
048addec
JD
76122003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7613
7614 * xterm.c (handle_one_xevent): Surround popup_activated
7615 with #ifdef:s for non-toolkit version.
7616
7617 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
7618 (gtkutil.o): New file.
7619 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
7620 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
7621
7622 * gtkutil.c: New file for GTK version.
7623
7624 * gtkutil.h: New file for GTK version.
7625
7626 * xterm.h: Add xt_or_gtk_widget.
7627 Include gtk files for USE_GTK.
7628 (struct x_output): Add toolbar_height.
7629 (struct x_output): Add GTK widgets and Gdk size_hints.
7630 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
7631 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
7632 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
7633
7634 * xterm.c: Include gtkutil.h for USE_GTK.
7635 Declare extern void free_frame_menubar for USE_GTK.
7636 (note_mouse_highlight): Check popup_activated for USE_GTK.
7637 (xt_action_hook): Don't compile if USE_GTK.
7638 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
7639 (xg_scroll_callback): New function.
7640 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
7641 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
7642 for USE_GTK.
7643 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
7644 xg_show_scroll_bar for USE_GTK.
7645 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
7646 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
7647 (event_handler_gdk): New function for USE_GTK.
7648 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
7649 (handle_one_xevent): Make sure widget is mapped before
7650 calling x_real_positions for USE_GTK.
7651 (XTread_socket): Add GTK event loop for USE_GTK.
7652 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
7653 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
7654 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
7655 (x_iconify_frame): Add code for USE_GTK.
7656 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
7657 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
7658 is in gtkutil.c.
7659 (x_term_init): Add initialization for GTK.
7660 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
7661
7662 * xmenu.c: Include gtkutil.h for USE_GTK.
7663 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
7664 (single_menu_item, single_menu_item, Fx_popup_dialog):
7665 Check for USE_GTK.
048addec
JD
7666 (popup_widget_loop): New function for USE_GTK.
7667 (x_activate_menubar): Add code for USE_GTK.
7668 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
7669 (menu_highlight_callback, menubar_selection_callback):
7670 Add USE_GTK versions.
048addec
JD
7671 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
7672 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
7673 (free_frame_menubar): Only compile if not USE_GTK. GTK version
7674 is in gtkutil.c.
7675 (popup_selection_callback): New version for USE_GTK.
7676 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 7677 one USE_X_TOOLKIT version.
048addec
JD
7678 (xmenu_show): Call create_and_show_popup_menu.
7679 (dialog_selection_callback): New version for USE_GTK.
7680 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 7681 one USE_X_TOOLKIT version.
048addec
JD
7682 (xdialog_show): Call create_and_show_dialog.
7683
7684 * xfns.c: Include gtkutil for USE_GTK.
7685 (x_window_to_frame, x_any_window_to_frame)
7686 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
7687 (x_top_window_to_frame): Add code for USE_GTK.
7688 (x_set_background_color): Call xg_set_background_color for GTK.
7689 (x_set_menu_bar_lines): Check for USE_GTK.
7690 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
7691 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
7692 (x_window): Call xg_create_frame_widgets for USE_GTK.
7693 (Fx_create_frame): Check for USE_GTK
7694 (Fx_file_dialog): New implementation for USE_GTK.
7695
7696 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
7697 (update_menu_bar): Add check for USE_GTK.
7698 (update_tool_bar): Add check for USE_GTK and external tool bar.
7699 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
7700 (redisplay_internal): Add check for USE_GTK and popup_activated.
7701 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
7702 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
7703 (display_menu_bar): Add check for USE_GTK
7704
7705 * lisp.h: Declare Vx_resource_name extern.
7706
a64387ee 7707 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
048addec
JD
7708 for USE_GTK.
7709 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
7710
7711 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
7712 (FRAME_EXTERNAL_TOOL_BAR): New macro.
7713 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
7714
7715 * fileio.c (Fread_file_name): Add check for USE_GTK.
7716
6bdb309a
SM
7717 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
7718 Add check for USE_GTK.
048addec
JD
7719
7720 * config.in: Added HAVE_GTK
7721
7722 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
7723
77242003-01-18 Stefan Monnier <monnier@cs.yale.edu>
7725
7726 * charset.h (Funibyte_char_to_multibyte): Export.
7727
77282003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7729
7730 * xmenu.c (mouse_position_for_popup): New function.
7731 (Fx_popup_menu): Call mouse_position_for_popup for X and
7732 mouse_position_hook for others.
7733
77342003-01-17 Kim F. Storm <storm@cua.dk>
7735
7736 * editfns.c (Finsert): Mention `string-make-multibyte' and
7737 `string-as-multibyte' in doc string.
7738
77392003-01-17 Kenichi Handa <handa@m17n.org>
7740
7741 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 7742
048addec
JD
7743 * editfns.c (Fformat): Convert an unibyte char argument that is
7744 formatted by "%c" to multibyte if the total result must be a
7745 multibyte string.
cd7df9c0 7746
048addec 77472003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 7748
048addec
JD
7749 * process.c (set-process-filter): Document unibyte/multibyte-ness
7750 of string argument.
56210ecd 7751
048addec 77522003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 7753
048addec 7754 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 7755
048addec
JD
7756 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
7757 (re_search_2): Likewise.
6df8b9fe 7758
048addec 77592003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 7760
048addec
JD
7761 * xdisp.c (message_dolog): Fix bug of the case that *Message*
7762 buffer is unibyte.
292ddc31 7763
048addec 77642003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 7765
048addec 7766 * fns.c (Fsubstring): Clarify doc string.
292ddc31 7767
048addec
JD
7768 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
7769 (Fprevious_char_property_change)
7770 (Fnext_single_char_property_change)
7771 (Fprevious_single_char_property_change, Fnext_property_change)
7772 (Fnext_single_property_change, Fprevious_property_change)
7773 (Fprevious_single_property_change, Fadd_text_properties)
7774 (Fput_text_property, Fset_text_properties)
7775 (Fremove_text_properties, Fremove_list_of_text_properties)
7776 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 7777
048addec 77782003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 7779
048addec
JD
7780 * process.h (struct Lisp_Process): New member plist replaces old
7781 member private_vars. All uses changed.
63e4e4c6 7782
048addec 7783 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 7784 (QCplist): Rename from QCvars. Change all uses.
048addec 7785 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 7786 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 7787 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 7788 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 7789
048addec 77902003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 7791
6bdb309a 7792 * m/delta.h: Remove (obsolete).
e833850f 7793
048addec 77942003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 7795
048addec
JD
7796 * fileio.c (Fdelete_directory, Fdelete_file): Document the
7797 behaviour in front of symlinks.
7798 (Fdelete_file): Raise an error on directories.
817cb127 7799
048addec 78002003-01-13 Dave Love <fx@gnu.org>
817cb127 7801
048addec 7802 * fns.c (Freverse): Use QUIT.
3e8cf2ea 7803
048addec 78042003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 7805
048addec
JD
7806 * minibuf.c (minibuffer_completion_contents):
7807 Error if point is inside prompt.
3e8cf2ea 7808
048addec
JD
7809 * keyboard.c (command_loop_1): Don't redisplay directly
7810 if there's a post-command-hook.
3e8cf2ea 7811
048addec
JD
7812 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
7813 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 7814
048addec 78152003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 7816
048addec 7817 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 7818
048addec
JD
7819 * process.c (QCvars): New variable.
7820 (syms_of_process): Intern and staticpro it.
7821 (Fset_process_contact): Removed function.
7822 (Fprocess_variable, Fset_process_variable): New functions.
7823 (syms_of_process): Defsubr them.
7824 (Fstart_process): Initialize private_vars plist to nil.
7825 (Fmake_network_process): New arg :vars to setup the private
7826 variables for new network process.
7827 (server_accept_connection): Copy server's private variables to
7828 client process.
2c10f029 7829
048addec
JD
7830 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
7831 crashes). Code rewritten and simplified. Now directly aligns the
7832 pointer and recalculates pure_bytes_used, rather than aligning the
7833 size and adjusting the pointer.
b8a76c6c 7834
048addec 78352003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 7836
048addec
JD
7837 * process.c (Fset_process_contact): New function.
7838 (syms_of_process): defsubr it.
7839 (make-network-process): Update doc.
3a8d0899 7840
048addec 78412003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 7842
048addec
JD
7843 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
7844 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 7845
048addec 78462003-01-10 Dave Love <fx@gnu.org>
4abc7470 7847
048addec 7848 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 7849
048addec 78502003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 7851
048addec
JD
7852 * process.c (Fmake_network_process): Convert new port number
7853 to host byte order for `:service t' case. From Mario Lang.
bf338245 7854
048addec 78552003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 7856
048addec
JD
7857 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
7858 instead of XtAppProcessEvent.
bf338245 7859
048addec
JD
7860 * xterm.c (handle_one_xevent): New function.
7861 (x_dispatch_event): New function.
7862 (XTread_socket): Call handle_one_xevent.
bf338245 7863
048addec 7864 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 7865
048addec
JD
7866 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
7867 call XQueryPointer to get coordinates.
7868 (popup_get_selection): Do not set popup_activated_flag to zero,
7869 let popup_deactivate_callback do that. Needed for Motif.
7870 Call x_dispatch_event instead of XtDispatchEvent.
7871 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 7872
048addec 78732003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 7874
6bdb309a 7875 * process.c (server_accept_connection): Fix recording of new
048addec
JD
7876 connection's local address in :local property of contact info.
7877 (Fmake_network_process): Record local network address for new
7878 client processes in :local property of contact info.
6bdb309a 7879 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 7880
048addec 78812003-01-07 Dave Love <fx@gnu.org>
00e3ab56 7882
048addec 7883 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 7884
048addec 78852003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 7886
048addec 7887 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 7888
048addec
JD
7889 * eval.c (Fuser_variable_p): Doc change. For custom variables,
7890 use the same test as for custom-variable-p.
8c6d74c6 7891
048addec 78922003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 7893
048addec
JD
7894 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
7895 Count LAST_LINE_MISFIT in scroll margin for end of window.
7896 Move label too_near_end before setting SCROLL_MARGIN_POS.
7897 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 7898
048addec
JD
7899 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
7900 scroll_conservatively case. If scrolling that much doesn't change
7901 STARTP, move it down one line.
e833850f 7902
048addec
JD
7903 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
7904 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 7905
048addec
JD
7906 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
7907 selected frame.
8c6d74c6 7908
048addec
JD
7909 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
7910 (syms_of_keymap): staticpro them.
7911 (Fapropos_internal): Initialize them and clear them out.
7912 Don't GCPRO them.
8c6d74c6 7913
048addec
JD
7914 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
7915 Doc fixes.
8c6d74c6 7916
048addec
JD
7917 * lisp.h: New misc type Lisp_Save_Value.
7918 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
7919 (XSAVE_VALUE): New macro.
7920 (struct Lisp_Save_Value): New data type.
7921 (union Lisp_Misc): Add u_save_value alternative.
7922 (make_save_value): Declared.
8c6d74c6 7923
048addec 7924 * alloc.c (make_save_value): New function.
8c6d74c6 7925
048addec
JD
7926 * xterm.c (x_catch_errors): Save dpy using make_save_value.
7927 (x_catch_errors_unwind): Call XSync.
8c6d74c6 7928
048addec 79292003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 7930
048addec 7931 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 7932
048addec
JD
7933 * keyboard.c (command_loop_1): Call adjust_point_for_property
7934 in direct action cases for Qforward_char and Qbackward_char.
7935 Set already_adjusted so it won't be done twice.
8c6d74c6 7936
048addec 79372002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
8c6d74c6 7938
048addec
JD
7939 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
7940 type definition of size_t.
8c609cff 7941
048addec 79422003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 7943
048addec
JD
7944 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
7945 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 7946
048addec 79472002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 7948
048addec
JD
7949 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
7950 to default to t.
fa634a5e 7951
048addec 79522002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 7953
048addec 7954 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 7955
048addec 79562002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 7957
048addec
JD
7958 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
7959 allow building in a different directory than source. Uses some
7960 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 7961
048addec 79622002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 7963
048addec
JD
7964 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
7965 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
7966 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
7967 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 7968
048addec 79692002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 7970
048addec
JD
7971 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
7972 <scroll-down-aggressively>: Doc fix.
2155ecf3 7973
048addec
JD
7974 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
7975 string as pane name, if there is one.
7976 (set_frame_menubar): Save menu_items_n_panes from each call to
7977 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 7978
048addec
JD
7979 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
7980 Don't try to make last line fully visible if it is past end of window.
61f1d295 7981
048addec 79822002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 7983
048addec
JD
7984 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
7985 (mac_menu_show): Add support for hierarchical popup menus.
7986 (add_menu_item): Remove indentation support.
7987 (fill_submenu, fill_menu): Create hierarchical menus
7988 instead of using indentation.
0b17a217 7989
048addec 79902002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 7991
048addec
JD
7992 * xdisp.c (try_cursor_movement): Don't call try_window here.
7993 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 7994
048addec 7995 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 7996
048addec 79972002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 7998
048addec
JD
7999 * macterm.c (XTread_socket): Call KeyTranslate for control and
8000 meta to deal correctly shifted non-alpha characters, like C-S-5
8001 being treated like C-%. Does not look for shift key to deal
8002 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 8003
048addec 80042002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 8005
048addec
JD
8006 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
8007 If it is non-nil, run timers. Use an unwind-protect to requeue
8008 the events that were read ahead.
8009 (popup_get_selection_unwind): New subroutine.
8010 (popup_get_selection_queue): File-scope variable now holds that queue.
8011 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
8012 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
8013 Use an unwind-protect to pop down the dialog box.
8014 (xdialog_show_unwind): New subroutine implements that.
f02cac82 8015
048addec
JD
8016 * xdisp.c (row_containing_pos): Change exit test using last_y.
8017 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 8018
048addec
JD
8019 * lread.c (load_error_handler): New function.
8020 (Fload): Handle errors in Fsubstitute_in_file_name.
8021 Don't expect Fsignal to return.
f02cac82 8022
048addec
JD
8023 * eval.c: Errors and throws work right with interrupt blocking.
8024 (struct catchtag): New elt interrupt_input_blocked.
8025 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
8026 (internal_catch, Fcondition_case, internal_condition_case)
8027 (internal_condition_case_1, internal_condition_case_2): Save it.
8028 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 8029
048addec 8030 * editfns.c (Fformat): Add parens.
f02cac82 8031
048addec
JD
8032 * dired.c (file_name_completion): Fix that change.
8033 Delete special quit-handling code; just use QUIT.
f02cac82 8034
048addec 80352002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
f02cac82 8036
048addec
JD
8037 * dired.c (file_name_completion): Close directory on error
8038 just as in directory_files_internal.
1a590729 8039
048addec 80402002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 8041
048addec
JD
8042 * window.c (Fset_window_configuration): Set old_point to correct
8043 value when new_current_buffer == current_buffer.
f02cac82 8044
048addec 80452002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 8046
048addec
JD
8047 Revisited my earlier fix for the following entry in etc/PROBLEMS:
8048 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
8049 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 8050
048addec
JD
8051 These changes were in part based upon suggestions made by Peter
8052 'Luna' Runestig [peter@runestig.com].
9785d95b 8053
048addec
JD
8054 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
8055 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 8056 g_b_init_get_sid_identifier_authority ): Add several static
048addec 8057 global variables.
9785d95b 8058
048addec
JD
8059 * w32.c (globals_of_w32): New function. Used to initialize those
8060 global variables that must always be initialized on startup even
8061 when the global variable initialized is non zero. Its primary
8062 purpose at this time is to set the global variables
8063 g_b_init_is_windows_9x, g_b_init_open_process_token,
8064 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
8065 g_b_init_get_sid_identifier_authority to 0 on startup.
8066 Called from main.
9785d95b 8067
048addec
JD
8068 * w32.c (is_windows_9x): Perform initialization only if
8069 g_b_init_is_windows_9x is equal to 0. On initialization set
8070 g_b_init_is_windows_9x equal to 1.
2308af15 8071
048addec
JD
8072 * w32.c (open_process_token): Perform initialization only if
8073 g_b_init_open_process_token is equal to 0. On initialization set
8074 g_b_init_open_process_token equal to 1.
2308af15 8075
048addec
JD
8076 * w32.c (get_token_information): Perform initialization only if
8077 g_b_init_get_token_information is equal to 0. On initialization
8078 set g_b_init_get_token_information equal to 1.
9785d95b 8079
048addec
JD
8080 * w32.c (lookup_account_sid): Perform initialization only if
8081 g_b_init_lookup_account_sid is equal to 0. On initialization
8082 set g_b_init_lookup_account_sid equal to 1.
9785d95b 8083
048addec
JD
8084 * w32.c (get_sid_identifier_authority): Perform initialization
8085 only if g_b_init_get_sid_identifier_authority is equal to 0.
8086 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 8087
f63fd14e 8088 * w32fns.c (globals_of_w32fns): New function. Used to initialize
048addec
JD
8089 those global variables that must always be initialized on startup
8090 even when the global variable initialized is non zero.
8091 Its primary purpose at this time is to initialize the global variable
8092 track_mouse_event_fn.
9785d95b 8093
a64387ee 8094 * w32fns.c (w32_wnd_proc): Remove initialization of
048addec 8095 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 8096
048addec 8097 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 8098
f63fd14e 8099 * w32menu.c (globals_of_w32menu): New function. Used to
048addec
JD
8100 initialize those global variables that must always be initialized
8101 on startup even when the global variable initialized is non zero.
8102 Its primary purpose at this time is to initialize the global
8103 variables get_menu_item_info and set_menu_item_info.
9785d95b 8104
048addec
JD
8105 * w32menu.c (initialize_frame_menubar): Remove initialization of
8106 get_menu_item_info and set_menu_item_info.
9785d95b 8107
048addec 8108 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 8109
048addec
JD
8110 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
8111 Declare them.
9785d95b 8112
048addec
JD
8113 * emacs.c (main): Call globals_of_w32 prior to calling
8114 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
8115 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
8116 is defined.
9785d95b 8117
048addec
JD
8118 * w32term.c (x_update_window_begin): Fix Windows API error
8119 detected by BoundsChecker. Test to determine if
8120 w32_system_caret_hwnd is NULL prior to attempting to use
8121 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 8122
048addec
JD
8123 * w32term.c (x_update_window_end): Fix Windows API error
8124 detected by BoundsChecker. Test to determine if
8125 w32_system_caret_hwnd is NULL prior to attempting to use
8126 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 8127
048addec 81282002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 8129
048addec
JD
8130 * coding.c (coding_system_require_warning): New variable.
8131 (syms_of_coding): DEFVAR it.
b6da19ef 8132
048addec 8133 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 8134
048addec
JD
8135 * fileio.c (choose_write_coding_system): Even if
8136 Vcoding_system_for_write is non-nil, if
8137 coding_system_require_warning is nonzero, call
8138 Vselect_safe_coding_system_function.
bfcf6dbe 8139
048addec 81402002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 8141
048addec
JD
8142 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
8143 (lisp): Add font-core.
2c568af5 8144
048addec 81452002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 8146
048addec
JD
8147 * textprop.c (text_read_only): New arg `propval'.
8148 (get_char_property_and_overlay): Remove unused var `next_overlay'.
8149 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 8150
048addec 81512002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 8152
048addec 8153 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 8154
048addec 81552002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 8156
048addec
JD
8157 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
8158 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
8159 Be more careful about when help_events are generated.
96720f09 8160
048addec 81612002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 8162
048addec
JD
8163 * macterm.c (mac_check_for_quit_char): Correctly set the
8164 modifiers of the event to 0.
8165 * mac.c (sys_select): Duplicate rfds before calling select to
8166 ensure that rfds survive the while loop.
e5ae1c49 8167
048addec 81682002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 8169
048addec
JD
8170 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
8171 row_containing_pos returned NULL.
2eb46b2d 8172
048addec 81732002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 8174
6bdb309a 8175 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 8176 non-blocking.
6bdb309a 8177 (sys_select): Fix sys_select to not use a timeout larger than
048addec 8178 the one given.
b11f1d8a 8179
048addec 81802002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 8181
048addec 8182 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 8183
048addec 81842002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 8185
048addec
JD
8186 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
8187 as the last thing.
a4ac5b17 8188
048addec 81892002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 8190
048addec 8191 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 8192
048addec 81932002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 8194
048addec
JD
8195 * editfns.c (Fformat): Handle precision in string conversion
8196 specifiers like libc functions do (ie, print at most that many
8197 characters).
85cce843 8198
048addec 81992002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 8200
048addec
JD
8201 * xdisp.c (row_containing_pos): Check more carefully
8202 whether charpos is really in the row before returning it.
0d4d26a7 8203
048addec 82042002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 8205
048addec 8206 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 8207
048addec
JD
8208 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
8209 each stack frame. This may change as it could be time consuming.
0d4d26a7 8210
048addec
JD
8211 * macterm.c (mac_check_for_quit_char, quit_char_comp)
8212 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 8213 (mac_initialize): Add code to check for pressing of quit_char
048addec 8214 in the OS event queue.
b11f1d8a 8215
048addec
JD
8216 * mac.c (sys_select): Call mac_check_for_quit_char every second
8217 while blocking on select.
0d4d26a7 8218
048addec
JD
8219 * mac.c (sys_read): Use sys_select to test for input first
8220 before calling read, to allow C-g to break.
9252f7bc 8221
048addec 82222002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 8223
048addec 8224 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 8225
048addec 8226 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 8227
048addec 8228 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 8229
048addec
JD
8230 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
8231 autoload.
9252f7bc 8232
048addec 8233 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 8234
048addec 8235 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 8236
048addec 82372002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 8238
048addec 8239 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 8240
048addec 82412002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 8242
048addec 8243 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 8244
048addec 8245 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 8246
048addec 8247 * alloca.c: Don't use #error.
02d588e2 8248
048addec 82492002-12-03 Dave Love <fx@gnu.org>
02d588e2 8250
048addec
JD
8251 * buffer.c (Qucs_set_table_for_input): New.
8252 (Fget_buffer_create): Use it.
8253 (Qset_buffer_major_mode_hook): Deleted.
8254 (Fset_buffer_major_mode): Revert previous change.
8255 (init_buffer_once): Intern ucs-set-table-for-input.
8256 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
8257 Add &Qucs_set_table_for_input.
451e2697 8258
048addec 82592002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 8260
048addec
JD
8261 * callint.c (Fcall_interactively): Use next_event only if less
8262 than key_count.
72742a99 8263
048addec 82642002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 8265
048addec
JD
8266 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
8267 names to 255 characters.
72742a99 8268
048addec
JD
8269 * macterm.c (XTread_socket): If all frames have been collapsed,
8270 expand the first one before handling drag-and-drop events.
72742a99 8271
048addec
JD
8272 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
8273 which is detected by autoconf.
40e6ff95 8274
048addec 82752002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 8276
048addec
JD
8277 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
8278 offset in two hints table to allow prebinding to be redone and
8279 allow the executable to be stripped.
c02138c6 8280
048addec 82812002-11-29 Dave Love <fx@gnu.org>
c02138c6 8282
048addec
JD
8283 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
8284 already provided.
0e47bbf7 8285
048addec 82862002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 8287
048addec
JD
8288 * xdisp.c (start_display): Check more intelligently for
8289 whether the line is continued.
8290 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 8291
048addec 82922002-11-28 Dave Love <fx@gnu.org>
44129dcb 8293
048addec
JD
8294 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
8295 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 8296
048addec 82972002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 8298
048addec
JD
8299 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
8300 more descriptive error output from lread.c:Fload upon most require
8301 cycles during boostrapping.
1637fd2c 8302
048addec 83032002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 8304
048addec
JD
8305 * fileio.c (Finsert_file_contents): Give a more appropriate error
8306 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 8307
048addec
JD
8308 * dired.c (Ffile_attributes): Don't return negative file sizes for
8309 files bigger than 2Gb when off_t is 32 bit.
540c2788 8310
048addec 83112002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 8312
048addec 8313 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 8314
048addec
JD
8315 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
8316 Test GETPGRP_VOID instead.
8317 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 8318
048addec
JD
8319 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
8320 Don't define.
8321 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 8322
048addec 8323 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 8324
048addec 83252002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 8326
048addec
JD
8327 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
8328 supported.
4042a81a 8329
048addec 83302002-11-25 Dave Love <fx@gnu.org>
4042a81a 8331
048addec 8332 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 8333
048addec 8334 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 8335
048addec 83362002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 8337
048addec 8338 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 8339
048addec 83402002-11-24 Steven Tamm <steventamm@mac.com>
82122254 8341
048addec
JD
8342 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
8343 determine the size of pointers alloced in unexed space instead
8344 of using possibly invalid emacs_zone pointers. This fixes the
8345 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 8346
048addec 83472002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 8348
048addec 8349 * search.c (Fstring_match): Doc fix.
c1ee53bc 8350
048addec
JD
8351 * callint.c (Fcall_interactively): If a command fails because
8352 `*' detects a read-only buffer, but RECORD_FLAG is set,
8353 record it anyway if the args don't actually do tty input.
5598c32e 8354
048addec 83552002-11-22 Dave Love <fx@gnu.org>
5598c32e 8356
048addec 8357 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 8358
048addec
JD
8359 * keyboard.c (interrupt_signal): Provide forward declaration.
8360 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 8361
048addec 8362 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 8363
048addec 83642002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 8365
048addec
JD
8366 * eval.c (interactive_p): Skip any number of bytecode
8367 and special form frames, in any order.
516eea8e 8368
048addec 83692002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 8370
048addec
JD
8371 * w32fns.c (convert_mono_to_color_image): New function.
8372 (xbm_load, xbm_load_image): Use it when foreground or background
8373 is explicitly set.
04dbfa08 8374
048addec 83752002-11-19 Dave Love <fx@gnu.org>
04dbfa08 8376
048addec 8377 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 8378
048addec 83792002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 8380
048addec
JD
8381 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
8382 (XPutPixel): Swap blue and red.
8383 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
8384 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
8385 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
8386 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 8387
048addec 83882002-11-18 Dave Love <fx@gnu.org>
d824beee 8389
048addec 8390 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 8391
048addec 8392 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 8393
048addec 8394 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 8395
048addec
JD
8396 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
8397 malloc, realloc, calloc.
d824beee 8398
048addec
JD
8399 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
8400 (bcmp): Don't define.
d824beee 8401
048addec 8402 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 8403
048addec 8404 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 8405
048addec 8406 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 8407
048addec 8408 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 8409
048addec
JD
8410 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
8411 Don't include alloca.h.
d824beee 8412
048addec 8413 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 8414
048addec 8415 * regex.c (_GNU_SOURCE): Don't define.
1998560a 8416
048addec 8417 * process.c (_GNU_SOURCE): Don't define.
1998560a 8418
048addec 8419 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 8420
048addec 84212002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 8422
048addec 8423 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 8424
048addec 84252002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 8426
048addec
JD
8427 * dispextern.h (struct face): Add `overstrike' field.
8428 * xterm.c (x_draw_glyph_string_foreground)
8429 (x_draw_composite_glyph_string_foreground): Implement overstriking.
8430 * xfaces.c (load_face_font): Set `face->overstrike' based on
8431 result from choose_face_font.
8432 (best_matching_font, choose_face_font): Add `needs_overstrike'
8433 argument, and use it to return whether overstriking is desirable
8434 for this face/font combo.
8435 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 8436
048addec 84372002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 8438
048addec
JD
8439 This change is my fix for the following entry in etc/PROBLEMS:
8440 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
8441 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 8442
048addec
JD
8443 * w32.c: Added wrapper functions around the win32 API functions
8444 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
8445 GetSidIdentifierAuthority. These wrapper functions serve two
8446 purposes:
8447 1. They ensure that the wrapped function can never be called
8448 when Emacs is running on an operating system on which they are
8449 not supported (Microsoft Windows 95 / 98 / ME).
8450 2. They call the wrapped functions via function pointers rather
8451 than calling them directly. This avoids taking advantage of the
8452 undocumented fact that although these functions are not supported
8453 in the 9x branch of Microsoft Windows, the functions do exist in
8454 the version of advapi32.dll that is found in the 9x branch of
8455 Microsoft Windows.
f60ae425 8456
6bdb309a 8457 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
8458 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
8459 and GetSidIdentifierAuthority with calls to the newly added
8460 wrapper functions.
f60ae425 8461
048addec
JD
8462 * w32.h: Added extern declarations for the following functions:
8463 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
8464 syms_of_w32menu, and void syms_of_fontset.
f60ae425 8465
6bdb309a 8466 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
8467 function pointer track_mouse_event_fn in the handler for the
8468 WM_SETFOCUS message.
3582b6a3 8469
6bdb309a 8470 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
8471 reinitialize the function pointers set_menu_item_info and
8472 get_menu_item_info.
f60ae425 8473
048addec 84742002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 8475
048addec
JD
8476 * sound.c: Added a partial implementation of play-sound-internal
8477 for Microsoft Windows. Added various #ifdef / #else / #endif
8478 code blocks to separate the code that will compile under
8479 Microsoft Windows from the code that is specific to Gnu/Linux.
8480 Moved several blocks of code around to make this separation of code
8481 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 8482
048addec 8483 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 8484
048addec
JD
8485 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
8486 added support for play-sound-internal under Windows would be
8487 included in the build of Emacs.
517f42a0 8488
048addec 84892002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 8490
048addec 8491 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 8492
048addec 8493 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 8494
048addec 84952002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 8496
048addec
JD
8497 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
8498 (adjust_point_for_property): Move out of display and invisible even if
8499 we were already inside before (in case a property was added while
8500 we weren't looking). Be more careful when handling invisible props.
8501 Skip invisible text as if it really wasn't there at all.
aab83f91 8502
048addec 85032002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 8504
048addec
JD
8505 * w32term.c (x_draw_image_foreground)
8506 (w32_draw_image_foreground_1): Use standard copy and invert
8507 operations to draw images.
aab83f91 8508
048addec
JD
8509 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
8510 depth of 1.
8511 (xbm_read_bitmap_data): Invert bits as xbm is read in.
8512 (XPutPixel): Don't invert bits here.
a4478a76 8513
048addec 85142002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 8515
048addec
JD
8516 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
8517 (w32_draw_image_foreground_1): Handle image masks.
8518 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 8519
048addec
JD
8520 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
8521 (x_from_xcolors): Adjust RGB values for W32.
8522 (image_background, image_background_transparent)
8523 (postprocess_image, x_to_xcolors, x_disable_image)
8524 (x_build_heuristic_mask): Adapt for W32 and enable.
8525 (x_create_x_image_and_pixmap): Mark images with palettes as such.
8526 (xbm_load): Remove unused variable.
03670a65 8527
048addec 85282002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 8529
048addec 8530 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 8531
048addec 85322002-11-14 Dave Love <fx@gnu.org>
59daa29a 8533
048addec 8534 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 8535
048addec
JD
8536 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
8537 * xmenu.c (unuse_menu_items, digest_single_submenu):
8538 * xfns.c (x_put_x_image):
8539 * xdisp.c (message2_nolog, set_message):
8540 * undo.c (record_point):
8541 * terminfo.c (tparam):
8542 * syntax.c (scan_sexps_forward):
8543 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
8544 * composite.c (update_compositions):
8545 * cm.c (calccost, cmgoto):
8546 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 8547
048addec 8548 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 8549
048addec
JD
8550 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
8551 Don't declare.
59daa29a 8552
048addec 8553 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 8554
048addec
JD
8555 * fns.c (Fcopy_sequence): Doc fix.
8556 (Fmap_char_table): Cast `call2'.
3947677c 8557
048addec
JD
85582002-11-14 Francesco Potorti` <pot@gnu.org>
8559
8560 * s/sol2-8.h: New file.
8561
85622002-11-14 Kim F. Storm <storm@cua.dk>
8563
8564 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
8565 dependency on `risky-local-variable' and the :propertize form.
8566
85672002-11-12 Stefan Monnier <monnier@cs.yale.edu>
8568
8569 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
8570
8571 * syntax.c (scan_sexps_forward): Undo last patch.
8572 Use a more obvious fix: check eob before updating the syntax table.
8573
85742002-11-09 Stefan Monnier <monnier@cs.yale.edu>
8575
8576 * syntax.c (scan_sexps_forward): Update syntax table before reading
8577 a char rather than after so we don't update the table past eob.
8578
85792002-11-09 Dave Love <fx@gnu.org>
8580
8581 * buffer.c (Fset_buffer_major_mode): Fix last change.
8582
8583 * regex.c (regexec): Fix pmatch declaration.
8584
8585 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
8586
8587 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
8588 to self-inserting characters.
8589 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
8590
8591 * coding.c (Vtranslation_table_for_input): New.
8592 (syms_of_coding): DEFVAR it.
8593
85942002-11-08 Juanma Barranquero <lektu@terra.es>
8595
8596 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
8597 window.
8598
85992002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8600
6bdb309a 8601 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
8602 cp, and i.
8603
86042002-11-06 Dave Love <fx@gnu.org>
8605
8606 * buffer.c (Qset_buffer_major_mode_hook): New.
8607 (Fset_buffer_major_mode): Use it.
8608
86092002-11-06 Richard M. Stallman <rms@gnu.org>
8610
8611 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
8612 and stop_polling.
8613
8614 * process.c (wait_reading_process_input):
8615 Test POLLING_PROBLEM_IN_SELECT, not hpux.
8616 Avoid initialization for auto Lisp_Object var.
8617
8618 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
8619
8620 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
8621
86222002-11-05 Richard M. Stallman <rms@gnu.org>
8623
8624 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
8625
8626 * callint.c (Fcall_interactively): New local filter_specs.
8627 (Fcall_interactively): Check for progn as well as let.
8628 Add a gcpro.
8629 (Qprogn): New variable.
8630 (syms_of_callint): Staticpro and init Qprogn.
8631
86322002-11-04 John Paul Wallington <jpw@shootybangbang.com>
8633
8634 * lread.c (Feval_buffer): Doc fix.
8635
86362002-11-04 Dave Love <fx@gnu.org>
8637
8638 * keyboard.c (read_char): Always translate iff
8639 Vkeyboard_translate_table is a char table and c is valid.
8640
8641 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
8642 and fix C types.
8643
86442002-11-03 Stefan Monnier <monnier@cs.yale.edu>
8645
8646 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
8647
8648 * editfns.c (get_pos_property): Don't hardcode Qfield.
8649
8650 * keyboard.c (adjust_point_for_property): Handle `display' prop on
8651 overlays. Also handle `invisible' prop.
8652
86532002-11-02 Stefan Monnier <monnier@cs.yale.edu>
8654
8655 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
8656 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
8657
86582002-11-01 Andreas Schwab <schwab@suse.de>
8659
8660 * editfns.c (Fmessage): Revert last change to properly handle %%.
8661
86622002-11-01 Stefan Monnier <monnier@cs.yale.edu>
8663
8664 * xmenu.c (unuse_menu_items): New fun.
8665 (menu_items_inuse): New var.
8666 (syms_of_xmenu): Initialize it.
8667 (init_menu_items): Use it to detect re-entrance.
8668 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
8669 (Fx_popup_menu): Remove spurious XSETFRAME.
8670
8671 * editfns.c (find_field): Make an exception for nil fields.
8672
86732002-11-01 Dave Love <fx@gnu.org>
8674
8675 * m/gec63.h: Deleted.
8676
86772002-10-31 Dave Love <fx@gnu.org>
8678
8679 * xterm.c (XTread_socket): Fix last change.
8680 (xaw_scroll_callback): Cast call_data to long to avoid warning.
8681
86822002-10-31 Stefan Monnier <monnier@cs.yale.edu>
8683
8684 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
8685
86862002-10-30 Stefan Monnier <monnier@cs.yale.edu>
8687
8688 * editfns.c (overlays_around, get_pos_property): New funs.
8689 (find_field): Use them.
8690 Also be careful not to modify POS before its last use.
8691 (Fmessage): Don't Fformat if there's nothing to format.
8692
86932002-10-30 Dave Love <fx@gnu.org>
8694
8695 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
8696 [HAVE_PTY_H]; Include pty.h.
8697
8698 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
8699
8700 * xterm.c (Qeql): Declare.
8701 (Vx_keysym_table): New.
8702 (syms_of_xterm): Initialize it.
8703 (XTread_socket): Use it. Deal with ASCII keysyms.
8704 (XSetIMValues) [HAVE_X11R6]: Prototype.
8705
8706 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
8707 (lispy_kana_keys): Comment out.
8708 (make_lispy_event) [XK_kana_A]: Comment out.
8709 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
8710 Fix sprintf call.
8711
8712 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
8713 regexp.h change).
8714 (TERMINFO, LIBS_TERMCAP): Define.
8715
8716 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
8717 (bcmp): Define conditional on HAVE_BCMP.
8718 (NO_SIOCTL_H): Don't define.
8719 (TIOCSIGSEND): Don't make conditional on IRIX6.
8720
8721 * s/sol2-5.h: Don't include strings.h.
8722 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
8723
8724 * s/irix6-0.h (IRIX6): Don't define.
8725 (bcopy, bcmp, bzero): Don't undef.
8726
8727 * s/irix6-5.h: Don't include strings.h.
8728 (IRIX6): Don't define.
8729 (bcopy, bcmp, bzero): Don't undef.
8730
8731 * syntax.c (Fforward_comment): Doc fix.
8732
87332002-10-29 Kim F. Storm <storm@cua.dk>
8734
8735 * process.c (Fsignal_process): Allow PROCESS to be specified by
8736 name in addition to pid (as integer or string).
8737
87382002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
8739
8740 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
8741 environments.
8742
87432002-10-27 Kim F. Storm <storm@cua.dk>
8744
8745 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
8746
8747 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
8748
8749 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
8750
8751 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
8752
87532002-10-26 Richard M. Stallman <rms@gnu.org>
8754
8755 * editfns.c (Fformat): Detect invalid format letters for floats.
8756
87572002-10-25 Kenichi Handa <handa@m17n.org>
8758
8759 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
8760 (x_set_title): Likewise.
8761
87622002-10-25 Juanma Barranquero <lektu@terra.es>
8763
8764 * macgui.h:
8765 * w32gui.h: Remove definition of XColor.
8766
8767 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
8768
87692002-10-24 Kim F. Storm <storm@cua.dk>
8770
8771 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
8772 Callers changed (supply dummy arg).
8773
8774 * lisp.h (get_window_cursor_type): Update prototype.
8775
8776 * w32term.c (x_display_and_set_cursor): Get active_cursor from
8777 get_window_cursor_type to track system caret.
8778
87792002-10-24 Kim F. Storm <storm@cua.dk>
8780
8781 * process.c (Fformat_network_address): New function.
8782 (syms_of_process): Defsubr it.
8783 (list_processes_1): Use it to format :local/:remote address if
f9711de4 8784 service/host is not set; before Emacs would crash in that case.
048addec
JD
8785 (Fmake_network_process): Don't use Ffind_operation_coding_system
8786 to setup coding system if host or service is not set.
8787
87882002-10-23 Juanma Barranquero <lektu@terra.es>
8789
8790 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
8791
8792 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
8793 COLORREF.
8794
8795 * macgui.h:
8796 * w32gui.h: Add definition of XColor.
8797
8798 * macfns.c:
8799 * w32fns.c:
8800 * xfaces.c: Remove definition of XColor.
8801
88022002-10-22 Stefan Monnier <monnier@cs.yale.edu>
8803
8804 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
8805
8806 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
8807 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
8808 window if it is dedicated.
8809 (Fshrink_window): Add preserve_before as was done for enlarge_window.
8810 (Vspecial_display_function): Update docstring.
8811
8812 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
8813 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
8814 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
8815
88162002-10-21 Stefan Monnier <monnier@cs.yale.edu>
8817
8818 * casefiddle.c (casify_region): Don't treat a prefix char as part
8819 of a word when at the beginning.
8820
88212002-10-17 Juanma Barranquero <lektu@terra.es>
8822
8823 * lread.c (syms_of_lread): Fix typos.
8824
88252002-10-17 Dave Love <fx@gnu.org>
8826
8827 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
8828
88292002-10-16 Richard M. Stallman <rms@gnu.org>
8830
8831 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
8832
88332002-10-14 Juanma Barranquero <lektu@terra.es>
8834
8835 * w16select.c (syms_of_win16select): Fix docstring for
8836 `selection-coding-system'.
8837
8838 * w32select.c (syms_of_w32select): Likewise.
8839
88402002-10-14 Stefan Monnier <monnier@cs.yale.edu>
8841
8842 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
8843 a backslash-quoted char.
8844 (scan_lists, scan_sexps_forward): Pacify the compiler.
8845
88462002-10-13 Richard M. Stallman <rms@gnu.org>
8847
8848 * window.c (window_scroll): Set immediate_quit.
8849
8850 * print.c (print): When backquote form is the car of a list,
8851 output in old style. Use old_backquote_output to output all
8852 comma forms inside it in old style too.
8853
8854 * buffer.h (struct buffer): Move `undo_list' down below `name'.
8855
88562002-10-11 Markus Rost <rost@math.ohio-state.edu>
8857
8858 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
8859 batch mode).
8860
8861 * lread.c (Fload): Doc fix (load-suffixes).
8862
88632002-10-10 Steven Tamm <steventamm@mac.com>
8864
8865 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
8866 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
8867 Also switch the default to Qnil from Qt.
8868
88692002-10-08 Kenichi Handa <handa@m17n.org>
8870
8871 * coding.c (code_convert_region): When we need more GAP for
8872 conversion, pay attention to the case that coding->produced is not
8873 greater than coding->consumed.
8874
88752002-10-07 Richard M. Stallman <rms@gnu.org>
8876
8877 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
8878
88792002-10-06 Andrew Choi <akochoi@shaw.ca>
8880
8881 * macmenu.c (mac_menu_show): Add j to count menu items; match
8882 menu_item_selection to it to find selected item.
8883
88842002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8885
8886 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
8887 cases. The correct fix is to pass ReparentNotify to Xt.
8888 The shell widget interprets ConfigureNotify differently depending
8889 on if it has been reparented or not.
8890
88912002-10-05 Markus Rost <rost@math.ohio-state.edu>
8892
8893 * editfns.c (Fformat_time_string): Doc fix.
8894
88952002-10-05 John Paul Wallington <jpw@shootybangbang.com>
8896
8897 * fns.c (Flength): Doc fix.
8898
88992002-10-04 Stefan Monnier <monnier@cs.yale.edu>
8900
8901 * keyboard.c (keyremap): New struct.
8902 (read_key_sequence): Use it: globally replace keytran_foo with
8903 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
8904 keytran_next and fkey_next to just `next'.
8905
89062002-10-04 Steven Tamm <steventamm@mac.com>
8907
8908 * macterm.c (keycode_to_xkeysym_table): Change return to be
8909 treated like an X keysym.
8910
89112002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8912
8913 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
8914 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
8915 This is to also handle x/y changes that occur because of a resize.
8916
89172002-10-02 John Paul Wallington <jpw@shootybangbang.com>
8918
8919 * frame.c (Vdelete_frame_functions): New variable.
8920 (syms_of_frame): Initialize and defvar it.
8921 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
8922 it when frame's `tooltip' parameter is non-nil.
8923
8924 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
8925
8926 * w32fns.c (x_create_tip_frame): Likewise.
8927
8928 * macfns.c (x_create_tip_frame): Likewise.
8929
89302002-09-30 Kenichi Handa <handa@m17n.org>
8931
8932 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
8933 -1 before calling ccl_driver.
8934
8935 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
8936 Only when it is non-nil, handle composition sequence.
8937 (setup_coding_system) <0>: Don't force composition handling.
8938
8939 * Makefile.in (lisp, shortlisp): Add utf-16.elc
8940
89412002-09-29 Richard M. Stallman <rms@gnu.org>
8942
8943 * search.c (Freplace_match): Adjust match data for the substitution
8944 just made in the buffer.
8945
8946 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
8947 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
8948
89492002-09-27 Richard M. Stallman <rms@gnu.org>
8950
8951 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
8952 (read_char): Use them. Do all exits thru the end of the function.
8953
89542002-09-27 Kenichi Handa <handa@etl.go.jp>
8955
8956 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
8957 is nil.
8958
89592002-09-26 Richard M. Stallman <rms@gnu.org>
8960
8961 * regex.h (__restrict_arr): Don't define if already defined.
8962
8963 * coding.c (run_pre_post_conversion_on_str):
8964 Save and restore Vdeactivate_mark.
8965
89662002-09-26 John Paul Wallington <jpw@shootybangbang.com>
8967
8968 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
8969
89702002-09-26 Kenichi Handa <handa@etl.go.jp>
8971
8972 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
8973 nonzero, try face's family at first. Otherwise try FAMILY at first.
8974 (choose_face_font): If C is a single byte char or latin-1, call
8975 try_font_list with PREFER_FACE_FAMILY 1.
8976
89772002-09-21 Richard M. Stallman <rms@gnu.org>
8978
8979 * window.c (select_window_1): Don't select frame.
8980 Set frame's selected window only when frame itself is selected.
8981 (Fselect_window): Doc fix.
8982
89832002-09-18 Kim F. Storm <storm@cua.dk>
8984
8985 * process.c (make-network-process): Doc fix (there is no
8986 network-server-log-function hook).
8987
89882002-09-18 Richard M. Stallman <rms@gnu.org>
8989
8990 * print.c (print): Clear out the unused parts of Vprint_number_table.
8991 (syms_of_print): Doc fix for `print-number-table'.
8992
8993 * unexelf.c (unexec): Undo previous change.
8994
89952002-09-17 Andreas Schwab <schwab@suse.de>
8996
8997 * m/alpha.h [LINUX]: Don't define DATA_START.
8998
89992002-09-16 Dave Love <fx@gnu.org>
9000
9001 * unexelf.c (unexec): Deal with .got, reinstating change from
9002 25-08-1999.
9003
90042002-09-13 Richard M. Stallman <rms@gnu.org>
9005
9006 * s/sol2-6.h (UNEXEC): Comment out definition.
9007
9008 * unexsol.c (unexec): Don't downcase first letter of error msg.
9009
9010 * xfaces.c (Fcolor_supported_p): Just one arg is required.
9011
90122002-09-12 Markus Rost <rost@math.ohio-state.edu>
9013
9014 * unexsol.c: Include buffer.h, charset.h, coding.h.
9015
90162002-09-11 Richard M. Stallman <rms@gnu.org>
9017
9018 * unexsol.c: Don't use report_file_error; do it by hand
9019 using dlerror.
9020
9021 * process.c (wait_reading_process_input, both versions):
9022 Before calling turn_on_atimers, call stop_polling.
9023
9024 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
9025
9026 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
9027 we go to too_near_end, call clear_glyph_matrix.
9028 (redisplay_window): After make_cursor_line_fully_visible,
9029 call clear_glyph_matrix and bypass `goto done'.
9030
9031 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
9032 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
9033
90342002-09-10 Richard M. Stallman <rms@gnu.org>
9035
9036 * fileio.c (Fdo_auto_save): Catch error making directory.
9037 Only call push_message if we need to.
9038 At the same time, make an unwind-protect to pop it.
9039 Rename local message_p to old_message_p.
9040 (do_auto_save_make_dir, do_auto_save_eh): New functions.
9041 (do_auto_save_unwind): Don't call pop_message.
9042
9043 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
9044
9045 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
9046
9047 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
9048
9049 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
9050
90512002-09-10 Stefan Monnier <monnier@cs.yale.edu>
9052
9053 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
9054 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
9055 (re_match_2_internal): Be more careful with infinite loops.
9056
90572002-09-10 Kim F. Storm <storm@cua.dk>
9058
9059 * macros.c (end_kbd_macro): New function.
9060 (Fend_kbd_macro): Use it.
9061
9062 * macros.h (end_kbd_macro): Declare extern.
9063
9064 * keyboard.c (Fdiscard_input): If defining keyboard macro,
9065 end and save it instead of discarding it.
9066
90672002-09-09 Markus Rost <rost@math.ohio-state.edu>
9068
9069 * s/sol2-6.h: Fix typo. Add comment.
9070
90712002-09-09 Richard M. Stallman <rms@gnu.org>
9072
9073 * regex.c (regnum_t): Use signed int, not unsigned int.
9074
9075 * s/sol2-6.h: New file.
9076
9077 * s/sol2-5.h (UNEXEC): Definition deleted.
9078
90792002-09-08 Kim F. Storm <storm@cua.dk>
9080
9081 * macros.c (executing_macro_index): Change type to EMACS_INT.
9082 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
9083
9084 * macros.h (executing_macro_index): Change type to EMACS_INT.
9085
90862002-09-06 Richard M. Stallman <rms@gnu.org>
9087
9088 * casetab.c (set_case_table): Make canon table point to eqv table.
9089
90902002-09-06 Juanma Barranquero <lektu@terra.es>
9091
9092 * coding.c (syms_of_coding): Fix spacing.
9093
9094 * composite.c (Fcompose_region_internal)
9095 (Fcompose_string_internal): Likewise.
9096
9097 * data.c (Flsh): Likewise.
9098
9099 * fontset.c (Fset_fontset_font): Likewise.
9100
9101 * macfns.c (Fx_server_max_request_size): Likewise.
9102
9103 * w16select.c (syms_of_win16select): Likewise.
9104
9105 * w32select.c (syms_of_w32select): Likewise.
9106
9107 * xselect.c (syms_of_xselect): Likewise.
9108
91092002-09-05 Richard M. Stallman <rms@gnu.org>
9110
9111 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
9112 call EXTEND_RANGE_TABLE and return a proper value.
9113 (set_image_of_range): Don't call set_image_of_range_1
9114 if no TRANSLATE or if range includes all of Latin-1.
9115 Only call it for the Latin-1 part of the range.
9116 For other cases, make two separate ranges,
9117 one for the original specified characters and one for
9118 their case-conversions.
9119
91202002-09-04 Richard M. Stallman <rms@gnu.org>
9121
9122 * s/sol2-5.h (UNEXEC): Use unexsol.o.
9123
9124 * window.c (displayed_window_lines): Correct for one-off bug
9125 in HEIGHT on non-window displays.
9126
9127 * regex.c (set_image_of_range_1): New function.
9128 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
9129 Return a value to indicate running out of memory.
9130 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
9131 (extend_range_table_work_area): New subroutine.
9132 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
9133 Different calling conventions, and used from set_image_of_range{,_1}.
9134 (IMMEDIATE_QUIT_CHECK): Definitions moved.
9135
91362002-09-04 Juanma Barranquero <lektu@terra.es>
9137
9138 * makefile.w32-in: All dependencies updated.
9139
91402002-09-01 Richard M. Stallman <rms@gnu.org>
9141
9142 * unexsol.c: New file.
9143
9144 * xfns.c (Qbox): Declare external, don't define.
9145
9146 * xdisp.c (redisplay_window) <force-start case>:
9147 If point is on semi-visible last line, reposition
9148 it at previous line.
9149
9150 * alloc.c (display_malloc_warning): Use display-warning.
9151 (malloc_warning_1): Function deleted.
9152
9153 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
9154
9155 * lread.c (read1): Handle #! by skipping the line.
9156
91572002-08-31 Richard M. Stallman <rms@gnu.org>
9158
9159 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
9160 Don't include LDFLAGS.
9161 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
9162
91632002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
9164
9165 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
9166 member of x_display_info unless we compile for some window system.
9167
91682002-08-31 Kim F. Storm <storm@cua.dk>
9169
9170 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
9171 (get_window_cursor_type): Don't use them.
9172 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
9173
91742002-08-30 Kenichi Handa <handa@etl.go.jp>
9175
9176 * xdisp.c (get_next_display_element): Fix previous change.
9177
91782002-08-30 Andrew Choi <akochoi@shaw.ca>
9179
9180 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
9181 (expose_window): Use it to fix the display of overlapping
9182 rows (merge code from xterm.c).
9183
9184 * macfns.c (Qbox): Add extern declaration.
9185
91862002-08-30 Juanma Barranquero <lektu@terra.es>
9187
9188 * w32fns.c (Qbox): Make extern.
9189 (syms_of_w32fns): Remove initialization of Qbox.
9190
91912002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
9192
9193 * xfns.c (Fx_open_connection): Fix error message.
9194
91952002-08-30 Kim F. Storm <storm@cua.dk>
9196
9197 The following changes consolidates the handling of the cursor
9198 type in xdisp.c, moving duplicate code and functionality from
9199 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
9200
9201 * frame.h (enum text_cursor_kinds): Consolidated here.
9202 Added DEFAULT_CURSOR value.
9203 (struct frame) <desired_cursor, cursor_width>
9204 <blink_off_cursor, blink_off_cursor_width>: New fields.
9205 Consolidated from output_x, output_w32 and output_mac structs.
9206 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
9207 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
9208
9209 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
9210 Variables consolidated here.
9211 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
9212 (Vcursor_in_non_selected_windows): Renamed from
9213 cursor_in_non_selected_windows and changed to Lisp_Object.
9214 (syms_of_xdisp): Define and staticpro new and moved variables.
9215 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
9216 consolidated here. Recognize Qhollow setting.
9217 (set_frame_cursor_types): New function to set frame cursor types
9218 based on the frame parameters.
9219 (get_window_cursor_type): New function to calculate new cursor
9220 type and width for the specified window. Based on duplicated
9221 code consolidated here.
9222 Enhancements: cursor-in-non-selected-windows may be a cursor type,
9223 check buffer-local alternate-cursor-type and blink-cursor-alist
9224 before using built-in blink off methods.
9225
9226 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
9227
9228 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
9229 (get_specified_cursor_type, get_window_cursor_type)
9230 (set_frame_cursor_types): Added prototypes.
9231
9232 * macfns.c (x_specified_cursor_type): Removed.
9233 (x_set_cursor_type): Use set_frame_cursor_types.
9234 (Qbar, Qbox): Removed.
9235 (syms_of_macfns): Don't intern or staticpro them.
9236
9237 * macterm.c (x_specified_cursor_type): Remove prototype.
9238 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
9239 (x_display_and_set_cursor): Use get_window_cursor_type.
9240 Remove unused local variables cursor_non_selected, active_cursor.
9241 Redraw cursor if hbar cursor width changes.
9242 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
9243
9244 * macterm.h (enum text_cursor_kinds): Removed.
9245 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
9246 <blink_off_cursor, blink_off_cursor_width>: Members removed.
9247 (FRAME_DESIRED_CURSOR): Macro removed.
9248
9249 * w32fns.c (Vblink_cursor_alist): Removed.
9250 (Qbar, Qhbar, Qbox, Qhollow): Removed.
9251 (syms_of_w32fns): Don't intern, staticpro, or define them.
9252 (x_specified_cursor_type): Removed.
9253 (x_set_cursor_type): Use set_frame_cursor_types.
9254
9255 * w32term.c (x_specified_cursor_type): Remove prototype.
9256 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
9257 (x_display_and_set_cursor): Use get_window_cursor_type.
9258 Remove unused local variables cursor_off_state.
9259 Redraw cursor if hbar cursor width changes.
9260 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
9261
9262 * w32term.h (enum text_cursor_kinds): Removed.
9263 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
9264 <blink_off_cursor, blink_off_cursor_width>: Members removed.
9265 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
9266 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
9267 (struct w32_display_info) <x_highlight_frame>: Renamed member from
9268 w32_highlight_frame.
9269
9270 * xfns.c (Vblink_cursor_alist): Removed.
9271 (Qbar, Qhbar, Qbox, Qhollow): Removed.
9272 (syms_of_xfns): Don't intern, staticpro, or define them.
9273 (x_specified_cursor_type): Removed.
9274 (x_set_cursor_type): Use set_frame_cursor_types.
9275
9276 * xterm.c (x_specified_cursor_type): Remove prototype.
9277 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
9278 (x_display_and_set_cursor): Use get_window_cursor_type.
9279 Remove unused local variables cursor_off_state.
9280 Redraw cursor if hbar cursor width changes.
9281
9282 * xterm.h (enum text_cursor_kinds): Removed.
9283 (struct output_x) <current_cursor, desired_cursor, cursor_width>
9284 <blink_off_cursor, blink_off_cursor_width>: Members removed.
9285 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
9286 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
9287 (x_specified_cursor_type): Remove prototype.
9288
92892002-08-28 Richard M. Stallman <rms@gnu.org>
9290
9291 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
9292 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
9293 (Vblink_cursor_alist): New variable.
9294 (syms_of_w32fns): Initialize and defvar it.
9295 (x_specified_cursor_type): Recognize Qbox for filled box.
9296 Exceptions are hollow boxes.
9297 (Qbox, Qhollow): New variables.
9298 (syms_of_w32fns): Initialize and staticpro them.
9299
9300 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
9301 New macros.
9302 (struct w32_output): New fields blink_off_cursor,
9303 blink_off_cursor_width.
9304 (FRAME_CURSOR_WIDTH): New macro.
9305
9306 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
9307 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
9308
9309 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
9310 for bar cursor.
9311
9312 * w32term.c (expose_overlaps): New function.
9313 (expose_window): Use it to fix the display of overlapping rows.
9314
93152002-08-28 Simon Josefsson <jas@extundo.com>
9316
9317 * xfns.c (Fx_open_connection): Improve help when X connection
9318 fails, xhost is insecure and xauth is better.
9319
93202002-08-28 Juanma Barranquero <lektu@terra.es>
9321
9322 * makefile.w32-in: Add missing dependencies on w32term.h and
9323 composite.h.
9324
9325 * emacs.c (USAGE1): Add missing newline.
9326
93272002-08-27 Andrew Choi <akochoi@shaw.ca>
9328
9329 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
9330
93312002-08-27 Richard M. Stallman <rms@gnu.org>
9332
9333 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
9334 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
9335 (Vblink_cursor_alist): New variable.
9336 (syms_of_xfns): Initialize and defvar it.
9337 (x_specified_cursor_type): Recognize Qbox for filled box.
9338 Exceptions are hollow boxes.
9339 (Qbox, Qhollow): New variables.
9340 (syms_of_xfns): Initialize and staticpro them.
9341
9342 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
9343 New macros.
9344 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
9345
9346 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
9347 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
9348
9349 * emacs.c (main): Handle --script.
9350 (USAGE1): Mention --script.
9351 (standard_args): Define sort order for --script.
9352
93532002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
9354
9355 * xdisp.c (redisplay_updating_p): Variable removed.
9356 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
9357 New variables.
9358 (init_iterator): Don't free realized faces if
9359 inhibit_free_realized_faces is set.
9360 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
9361 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
9362 initialize Qinhibit_free_realized_faces.
9363
9364 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
9365 when iterator is adding glyphs to a glyph matrix.
9366
93672002-08-27 Kenichi Handa <handa@etl.go.jp>
9368
9369 * xdisp.c (get_next_display_element): In unibyte case, don't use
9370 octal form for such eight-bit characters that can be converted to
9371 multibyte char.
9372
93732002-08-26 Kim F. Storm <storm@cua.dk>
9374
9375 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
9376 and background colors. From Joe Buehler (tiny change).
9377
93782002-08-26 Miles Bader <miles@gnu.org>
9379
9380 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
9381
93822002-08-25 Andrew Choi <akochoi@shaw.ca>
9383
9384 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
9385 defined instead of MAC_OSX.
9386
9387 * s/darwin.h (select): Define select to sys_select only if
9388 HAVE_CARBON is defined.
9389 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
9390 (DONT_REOPEN_PTY): #def it.
9391
9392 * macterm.c (XTread_socket): Remove code to call
9393 SendEventToEventTarget for keys with command modifiers when
9394 mac_command_key_is_meta is nil.
9395
93962002-08-24 Andreas Schwab <schwab@suse.de>
9397
9398 * eval.c (Fdefvar): Fix last change.
9399
94002002-08-23 Richard M. Stallman <rms@gnu.org>
9401
9402 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
9403 Record variables in load history as (defvar . VAR).
9404 (Fdefvar): Don't record in load history if no initial value.
9405 (Qdefvar): New variable.
9406 (syms_of_eval): Init and staticpro it.
9407
9408 * lread.c (syms_of_lread): Doc fix.
9409 (build_load_history): Use Fmember to see if a definition
9410 is already in the Vload_history element.
9411
9412 * process.c (Fstart_process): Remove /: from program name.
9413
9414 * emacs.c (decode_env_path): Don't add /: if file name handler
9415 has a `safe-magic' property.
9416
9417 * callproc.c (Fcall_process): Remove /: from program name.
9418
94192002-08-23 Stefan Monnier <monnier@cs.yale.edu>
9420
9421 * regex.c (PATFETCH): Remove the translating fetch.
9422 (PATFETCH_RAW): Rename to PATFETCH.
9423 (set_image_of_range): New fun.
9424 (SET_RANGE_TABLE_WORK_AREA): Use it.
9425 (regex_compile): Don't translate the pattern chars so eagerly.
9426 Only do it when inserting an `exactn' bytecode or when handling
9427 a char-range.
9428 (mutually_exclusive_p): Avoid empty statement.
9429
94302002-08-22 Kim F. Storm <storm@cua.dk>
9431
9432 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
9433 end up on a partially visible line; this reverts a specific part
9434 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
9435 display error which has been reported several times now.
9436 However it introduces the problem that changes was supposed to fix.
9437 See my comments in the source if you want to debug this further.
9438
94392002-08-20 Kenichi Handa <handa@etl.go.jp>
9440
9441 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
9442
94432002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
9444
9445 * msdos.c (croak): Add `void' to definition.
9446
c1380aa6 9447 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
048addec
JD
9448 Don't define them, they are defined in msdos.c.
9449
9450 * mem-limits.h [MSDOS]: Declare etext.
9451
9452 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
9453 `const' since CORRECT_DIR_SEPS modifies its target.
9454
94552002-08-19 Kim F. Storm <storm@cua.dk>
9456
2fb0ce67 9457 * keyboard.c (Fclear_this_command_keys): Add optional arg
048addec
JD
9458 KEEP-RECORD to avoid clearing lossage when we just want to clear
9459 the current key sequence (kmacro needs this).
9460
94612002-08-19 Kenichi Handa <handa@localhost>
9462
9463 * composite.c (run_composition_function): Call FUNC if it is fboundp.
9464
9465 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
9466 cons, return Qnil.
9467
94682002-08-17 Richard M. Stallman <rms@gnu.org>
9469
9470 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
9471
9472 * sysdep.c [!VMS]: Include sys/files.h.
9473
9474 * editfns.c (save_restriction_restore): Defend from unchained marker.
9475
9476 * buffer.c (overlays_at): Handle extending vec uniformly.
9477 (overlays_in): Handle extending vec from length 0 as in overlays_at.
9478
94792002-08-15 Andrew Choi <akochoi@shaw.ca>
9480
9481 * mac.c (init_mac_osx_environment): New function.
9482
9483 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
9484
94852002-08-14 Kim F. Storm <storm@cua.dk>
9486
9487 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
9488 executing macro before appending to it (when used from Lisp).
9489 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
9490 which is called prior to each iteration of macro (for kmacro.el).
9491 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
9492
9493 * lisp.h (Fexecute_kbd_macro): Update prototype.
9494
9495 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
9496
94972002-08-14 Kenichi Handa <handa@etl.go.jp>
9498
9499 * xselect.c (QUTF8_STRING): New variable.
9500 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
9501 (x_atom_to_symbol): Likewise.
9502 (x_get_local_selection): New argument local_request. If it is
9503 nonzero, call handler_fn with the second arg nil.
9504 (x_handle_selection_request): Call x_get_local_selection with
9505 local_request 0.
9506 (lisp_data_to_selection_data): Don't encode the string here.
9507 (Fx_get_selection_internal): Call x_get_local_selection with
9508 local_request 1.
9509 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
9510
9511 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
9512
9513 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
9514
95152002-08-13 Richard M. Stallman <rms@gnu.org>
9516
9517 * minibuf.c (Fminibufferp): New function.
9518 (syms_of_minibuf): Defsubr it.
9519 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
9520
95212002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
9522
9523 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
9524
95252002-08-12 Richard M. Stallman <rms@gnu.org>
9526
9527 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
9528 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
9529 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
9530 already.
9531
9532 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
9533
95342002-08-11 Andrew Choi <akochoi@shaw.ca>
9535
9536 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
9537 (Vmac_pass_command_to_system): New variable.
9538 (Vmac_pass_control_to_system): New variable.
9539 (do_mouse_moved): Check wp with is_emacs_window.
9540 (XTread_socket): Check window_ptr with is_emacs_window.
9541 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
9542 events back to Mac Toolbox for processing, depending on values of
9543 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
9544 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
9545 Vmac_pass_control_to_system.
9546
95472002-08-10 Kenichi Handa <handa@etl.go.jp>
9548
9549 * coding.c (unencodable_char_position): New function.
9550 (Funencodable_char_position): New function.
9551 (syms_of_coding): Defsubr Funencodable_char_position.
9552
95532002-08-10 Andrew Choi <akochoi@shaw.ca>
9554
9555 * mac.c (sys_select) [MAC_OSX]: New function.
9556
9557 * macterm.c (MakeMeTheFrontProcess): New function.
9558 (mac_initialize): Call MakeMeTheFrontProcess.
9559
9560 * s/darwin.h: Define select to sys_select.
9561
95622002-08-09 Richard M. Stallman <rms@gnu.org>
9563
9564 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
9565
95662002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
9567
9568 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
9569 end of the buffer.
9570
95712002-08-08 Ken Raeburn <raeburn@mit.edu>
9572
9573 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
9574
9575 * puresize.h (BASE_PURESIZE): Increase to 910000.
9576
95772002-08-08 Kenichi Handa <handa@etl.go.jp>
9578
9579 * coding.c (Ffind_operation_coding_system): For write-region, if
9580 VISIT is a filename, make it the target.
9581
95822002-08-07 Richard M. Stallman <rms@gnu.org>
9583
9584 * alloc.c (mark_object): Detect long lists for debugging.
9585 (mark_object_loop_halt): New variable.
9586
9587 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
9588
9589 * data.c (Fmake_variable_frame_local): Doc fix.
9590
95912002-08-01 David Ponce <david@dponce.com>
9592
9593 * w32menu.c (local_heap, local_alloc, local_free): New macros.
9594 (malloc_widget_value, free_widget_value)
9595 (w32_free_submenu_strings): Use them.
9596
9597 (push_submenu_start, push_submenu_end, push_left_right_boundary)
9598 (push_menu_pane, push_menu_item, single_keymap_panes)
9599 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
9600 (single_submenu, set_frame_menubar)
9601 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
9602
9603 (Fx_popup_menu): Don't show pop up menu until preceding one is
9604 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
9605
9606 * w32menu.c: Changes adapted from xmenu.c
9607 (set_frame_menubar): First parse all submenus,
9608 then make widget_value trees from them.
9609 Don't allocate any widget_value objects
9610 until we are done with the parsing.
9611 (parse_single_submenu): New function.
9612 (digest_single_submenu): New function.
9613 (single_submenu): Function deleted, replaced by those two.
9614
96152002-08-04 Andrew Choi <akochoi@shaw.ca>
9616
9617 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
9618 returns a valid window pointer before proceeding for keyDown and
9619 autoKey events.
9620
96212002-08-03 Andrew Choi <akochoi@shaw.ca>
9622
9623 * macterm.c (USE_CARBON_EVENTS): New macro.
9624 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
9625 (x_iconify_frame): Call CollapseWindow.
9626 (Vmac_reverse_ctrl_meta): New variable.
9627 (Vmac_wheel_button_is_mouse_2): New variable.
9628 (init_mac_drag_n_drop): New function.
9629 (mac_do_receive_drag): New function.
9630 (mac_handle_service_event): New function.
9631 (init_service_handler): New function.
9632 (mac_to_emacs_modifiers): New function.
9633 (mac_event_to_emacs_modifiers): New function.
9634 (mac_get_mouse_btn): New function.
9635 (mac_convert_event_ref): New function.
9636 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
9637 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
9638 mac_get_mouse_btn.
9639 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
9640
9641 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
9642 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
9643 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
9644 TOOL_BAR_EVENT for MAC_OS as well.
9645 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
9646 as for WINDOWS_NT.
9647 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
9648
9649 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
9650
96512002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
9652
9653 * xdisp.c (forward_to_next_line_start): Fix a condition that
9654 lead to a newline being skipped.
9655
96562002-08-02 Andrew Choi <akochoi@shaw.ca>
9657
9658 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
9659
96602002-08-01 Richard M. Stallman <rms@gnu.org>
9661
9662 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
9663
96642002-07-31 Andrew Choi <akochoi@shaw.ca>
9665
9666 * macfns.c: #undef init_process before #define-ing it.
9667
9668 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
9669 HAVE_CARBON is defined.
9670
96712002-07-31 Richard M. Stallman <rms@gnu.org>
9672
9673 * xmenu.c (set_frame_menubar): First parse all submenus,
9674 then make widget_value trees from them.
9675 Don't allocate any widget_value objects
9676 until we are done with the parsing.
9677 (parse_single_submenu): New function.
9678 (digest_single_submenu): New function.
9679 (single_submenu): Function deleted, replaced by those two.
9680
96812002-07-30 Juanma Barranquero <lektu@terra.es>
9682
9683 * w32proc.c (syms_of_ntproc): Fix docstring of
9684 `w32-get-true-file-attributes'.
9685
96862002-07-28 Richard M. Stallman <rms@gnu.org>
9687
9688 * s/hpux8.h (HPUX8): Define this before including hpux.h.
9689 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
9690
9691 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
9692
9693 * keyboard.c (make_lispy_event):
9694 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
9695 Explicitly clear up_modifier in event->modifiers.
9696
96972002-07-27 Richard M. Stallman <rms@gnu.org>
9698
9699 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
9700
9701 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
9702 for bar cursor.
9703
97042002-07-26 Kenichi Handa <handa@etl.go.jp>
9705
9706 * coding.c (detect_coding_iso2022): While checking a byte sequence
9707 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
9708 it in the normal loop.
9709
97102002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
9711
9712 * xterm.c (expose_overlaps): New function.
9713 (expose_window): Use it to fix the display of overlapping rows.
9714
9715 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
9716
97172002-07-23 Ken Raeburn <raeburn@gnu.org>
9718
9719 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
9720 since it only depends on XUINT.
9721
9722 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
9723 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
9724 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
9725 Macros deleted.
3947677c 9726
77d1daf2
AS
9727 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
9728 its value over other approaches.
9729 * sysdep.c (start_of_data): Don't define the function if a macro
9730 form has been defined.
8a8e19a3 9731
048addec
JD
97322002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
9733
9734 * xdisp.c (redisplay_updating_p): New variable.
9735 (init_iterator): Don't free realized faces when
9736 redisplay_updating_p is set.
9737 (redisplay_internal): Set redisplay_updating_p while updating
9738 the display.
9739
97402002-07-23 Richard M. Stallman <rms@gnu.org>
9741
9742 * editfns.c (Fmessage): Treat "" like nil.
9743
97442002-07-23 Kenichi Handa <handa@etl.go.jp>
9745
9746 * xdisp.c (face_before_or_after_it_pos):
9747 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
9748
97492002-07-22 Juanma Barranquero <lektu@terra.es>
9750
9751 * callproc.c (init_callproc) [DOS_NT]:
9752 Initialize Vshared_game_score_directory to nil.
9753 (syms_of_callproc) [DOS_NT]: Likewise.
9754
97552002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
9756
9757 * xdisp.c (display_line): Replace an abort with xassert.
9758
97592002-07-21 Richard M. Stallman <rms@gnu.org>
9760
9761 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
9762 and END_UNCHANGED when setting buffer_unchanged_p.
9763 Use current_matrix_up_to_date_p to decide whether to use
9764 try_cursor_movement.
9765
9766 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
9767
9768 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
9769
9770 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
9771 Set to nil if dir does not exist.
9772 (syms_of_callproc): Init unconditionally and simply.
9773
9774 * buffer.c (Fbuffer_list): Doc fix.
9775
97762002-07-21 Ken Raeburn <raeburn@gnu.org>
9777
9778 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
9779
9780 * buffer.c (mmap_realloc): When shrinking, make sure number of
9781 pages to unmap is rounded towards zero.
9782
9783 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
9784 (XSETINT): Deleted.
9785
9786 * m/att3b.h (XINT): Don't define.
9787 (VALBITS, VALMASK, XTYPE): Deleted.
9788 (DATA_SEG_BITS): Define.
9789 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
9790 ARRAY_MARK_FLAG): Deleted.
9791 (DATA_SEG_BITS): Define.
9792 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
9793 (DATA_SEG_BITS): Define.
9794
97952002-07-20 Richard M. Stallman <rms@gnu.org>
9796
9797 * print.c (print_error_message): New args CONTEXT and CALLER.
9798 Calls changed.
9799
9800 * lisp.h (print_error_message): Declare new args.
9801
9802 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
9803 and CONTEXT to print_error_message, don't print them here.
9804 For a Quit, don't use Vsignaling_function.
9805 Call message_log_maybe_newline.
9806
9807 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
9808
98092002-07-20 Kim F. Storm <storm@cua.dk>
9810
9811 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
9812
98132002-07-19 Ken Raeburn <raeburn@gnu.org>
9814
9815 * bytecode.c (struct byte_stack): Pointers into byte string now
9816 point to const.
9817 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
9818 const.
9819 * charset.h (BCOPY_SHORT): Source pointer now points to const.
9820 * coding.c (encode_eol, detect_coding, detect_eol):
9821 (decode_coding, encode_coding, detect_coding_system):
9822 Source strings now treated as const.
9823 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
9824 modify Lisp string contents.
9825 * coding.h (decode_coding, encode_coding, detect_coding,
9826 detect_eol): Declarations updated.
9827 * composite.c (compose_chars_in_text): Treat Lisp string contents
9828 as const.
9829 * dispnew.c (safe_bcopy): Source pointer now points to const.
9830 * lisp.h (STRING_COPYIN): New macro.
9831 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
9832 (internal_with_output_to_temp_buffer): Declarations updated.
9833 * print.c (temp_output_buffer_setup):
9834 (internal_with_output_to_temp_buffer): Buffer name argument is now
9835 pointer to const.
9836 * sound.c (struct sound_device): Function pointer field "write"
9837 buffer argument now points to const.
9838 (vox_write): Buffer argument points to const.
9839 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
9840 contents as const.
9841 * sysdep.c (emacs_write): Buffer pointer now const.
9842 * term.c (encode_terminal_code): Buffer pointer now const.
9843 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
9844 (x_face_list_fonts, x_update_menu_appearance):
9845 (hash_string_case_insensitive): Treat Lisp string contents as const.
9846
98472002-07-19 Juanma Barranquero <lektu@terra.es>
9848
048addec
JD
9849 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
9850
9851 * fileio.c (syms_of_fileio): Likewise.
c62aec78
JB
9852 (Ffile_name_as_directory): Fix argument name in docstring.
9853 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
048addec
JD
9854
98552002-07-18 Richard M. Stallman <rms@gnu.org>
9856
9857 * data.c (Fdefalias): Doc fix.
9858
98592002-07-17 Dave Love <fx@gnu.org>
9860
9861 * intervals.h (text_property_stickiness): Use P_.
9862
9863 * ccl.c: Remove `emacs' conditionals.
9864 (ccl_backtrace_table): Fix size spec.
9865 (ccl_driver): Fix type errors.
9866
98672002-07-16 Ken Raeburn <raeburn@gnu.org>
9868
9869 * alloc.c (xstrdup, make_string, make_unibyte_string)
9870 (make_multibyte_string, build_string): String pointer args now
9871 point to const.
9872 * charset.c (find_charset_in_text, c_string_width):
9873 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
9874 * fileio.c (report_file_error):
9875 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
9876 (count_combining_before, count_combining_after, insert_1_both):
9877 (insert, insert_and_inherit, insert_string):
9878 (insert_before_markers, insert_before_markers_and_inherit):
9879 * lread.c (intern, oblookup, hash_string):
9880 * minibuf.c (temp_echo_area_glyphs):
9881 * search.c (fast_c_string_match_ignore_case):
9882 * sysdep.c (emacs_open, set_file_times):
9883 * xfaces.c (xstricmp):
9884 * xdisp.c (store_frame_title, string_char_and_length):
9885 (message_dolog, message2, message2_nolog, set_message): Likewise.
9886 (set_message_1): Cast message string argument to const pointer.
9887 * editfns.c (general_insert_function): Insertion function now
9888 takes pointer to const for input data.
9889 * charset.h (find_charset_in_text, c_string_width):
9890 (parse_str_as_multibyte): Declarations updated.
9891 * dispextern.h (xstricmp): Declaration updated.
9892 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
9893 (count_size_as_multibyte, count_combining_before):
9894 (count_combining_after, insert_1, insert_1_both, message_dolog):
9895 (insert, insert_and_inherit, insert_before_markers)
9896 (insert_before_markers_and_inherit, set_message, message2):
9897 (message2_dolog, build_string, make_string, make_unibyte_string):
9898 (make_multibyte_string, intern, oblookup, report_file_error):
9899 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
9900 (emacs_open, xstrdup): Declarations updated.
9901 * systime.h (set_file_times): Declaration updated.
9902
9903 * charset.c (find_charset_in_text, lisp_string_width): Use const
9904 for pointer to lisp string data.
9905 * charset.h (FETCH_STRING_CHAR_ADVANCE):
9906 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
9907 * coding.c (Ffind_coding_systems_region_interval):
9908 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
9909 (Fmake_directory_internal, Fdelete_directory):
9910 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
9911 * fontset.c (font_family_registry, fs_query_fontset):
9912 (list_fontsets):
9913 * frame.c (Fframe_parameter):
9914 * keyboard.c (cmd_error_internal):
9915 * keymap.c (Fdescribe_buffer_bindings):
9916 * lread.c (complete_filename_p, openp):
9917 * minibuf.c (Fminibuffer_complete_word):
9918 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
9919 (face_before_or_after_it_pos, next_element_from_string):
9920 (get_overlay_arrow_glyph_row, display_mode_element):
9921 (decode_mode_spec_coding):
9922 * xterm.c (same_x_server): Likewise.
9923
9924 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
9925 settings of non-existent fields.
9926
9927 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
9928 copy a lisp value.
9929
9930 * lread.c (Fintern_soft): Use string macros instead of
9931 Lisp_String fields.
9932 * keyboard.c (echo_char, parse_modifiers_uncached):
9933 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
9934 * textprop.c (validate_interval_range, interval_of): Likewise.
9935
9936 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
9937
9938 * charset.h (FETCH_STRING_CHAR_ADVANCE)
9939 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
9940 XSTRING()->size_byte.
9941
9942 * lisp.h (SDATA, SREF): Produce rvalue.
9943 (SSET): New macro.
9944 * alloc.c (make_event_array): Use SSET for storing into a string.
9945 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
9946 a string.
9947 * casefiddle.c (casify_object): Use SSET.
9948 * charset.h (FETCH_STRING_CHAR_ADVANCE)
9949 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
9950 address of string contents.
9951 * data.c (Faref): Use SDATA.
9952 (Faset): Use SDATA, SSET.
9953 * dired.c (directory_files_internal): Use SSET.
9954 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
9955 (Fread_file_name): Use SREF, SSET.
9956 * fns.c (concat): Use SSET.
9957 (concat, Fdelete): Use SDATA.
9958 * insdel.c (insert_from_string_1): Use SDATA.
9959 * keyboard.c (Fevent_convert_list): Use SREF.
9960 * lread.c (Fload): Use SDATA, SSET.
9961 * macfns.c (validate_x_resource_name): Use SSET.
9962 * process.c (status_message): Use SSET.
9963 * search.c (wordify): Use SDATA.
9964 (Freplace_match): Use SREF.
9965 * w32fns.c (validate_x_resource_name): Use SSET.
9966 * xfns.c (validate_x_resource_name): Use SSET.
9967 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
9968
99692002-07-16 Richard M. Stallman <rms@gnu.org>
9970
9971 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
9972
9973 * xdisp.c (reconsider_clip_changes):
9974 Don't test prevent_redisplay_optimizations_p.
9975 (redisplay_internal): Test prevent_redisplay_optimizations_p
9976 along with clip_changed in some cases.
9977 (try_window_id): Likewise.
9978 (redisplay_window): New local var buffer_unchanged_p.
9979
9980 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
9981
9982 * process.c (create_process): Test USG_SUBTTY_WORKS.
9983 (process_send_signal): Clean up handling of GID.
9984 Detect errors in ioctls meant to set GID.
9985
9986 * window.c (temp_output_buffer_show):
9987 Don't set prevent_redisplay_optimizations_p.
9988
99892002-07-15 Juanma Barranquero <lektu@terra.es>
9990
9991 * eval.c (Fdefvaralias): Add docstring argument.
9992
99932002-07-15 Ken Raeburn <raeburn@gnu.org>
9994
9995 * lisp.h (STRING_INTERVALS): Produce rvalue.
9996 (STRING_SET_INTERVALS): New macro.
9997 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
9998 * fns.c (Fstring_as_multibyte): Likewise.
9999 * intervals.c (balance_possible_root_interval, delete_interval)
10000 (create_root_interval, copy_intervals_to_string): Likewise.
10001 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
10002 instead of 0.
10003
100042002-07-14 Ken Raeburn <raeburn@gnu.org>
10005
10006 * lisp.h (STRING_SET_CHARS): New macro.
10007 (SCHARS, SBYTES): Produce rvalues.
10008 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
10009 * fns.c (concat): Likewise.
10010 * lread.c (read_vector): Likewise.
10011
10012 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
10013 (STRING_SET_UNIBYTE): New macro.
10014 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
10015 length of -1) changed to use STRING_SET_UNIBYTE.
10016 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
10017 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
10018 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
10019 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
10020 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
10021 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
10022 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
10023 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
10024 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
10025 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
10026 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
10027 STRING_BYTES or indirection changed to SCHARS, SBYTES,
10028 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
10029 unchanged for now.
10030
100312002-07-13 Kim F. Storm <storm@cua.dk>
10032
10033 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
10034
100352002-07-12 Richard M. Stallman <rms@gnu.org>
10036
10037 * fileio.c (Fwrite_region): Doc fix.
10038
10039 * print.c (print_error_message): Don't handle Vsignaling_function here.
10040
10041 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
10042 (command_loop_1): Avoid certain actions after memory-full error.
10043
10044 * eval.c (Fsignal): Don't call cancel_hourglass.
10045 For a memory-full error, don't call Vsignal_hook_function
10046 and don't set Vsignaling_function.
10047
10048 * process.c (process_send_signal): Add abort call.
10049
100502002-07-11 Markus Rost <rost@math.ohio-state.edu>
10051
10052 * keymap.c (Fkey_binding): Fix typo.
10053
100542002-07-11 Richard M. Stallman <rms@gnu.org>
10055
10056 * alloc.c (Vmemory_full): New variable.
10057 (Vmemory_signal_data): Renamed from memory_signal_data.
10058 Uses changed.
10059 (syms_of_alloc): Defvar them.
10060 (memory_full, buffer_memory_full): Set Vmemory_full.
10061
10062 * lisp.h (Vmemory_full): Add declaration.
10063 (current_column, indented_beyond_p): Change declaration.
10064
10065 * indent.c (last_known_column): Declare as double, not float.
10066 (current_column, current_column_1, string_display_width)
10067 (position_indentation): Return `double'.
10068 (indented_beyond_p): Arg `column' is `double'. Callers changed.
10069
10070 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
10071 (back_to_previous_visible_line_start)
10072 (reseat_at_next_visible_line_start, next_element_from_buffer):
10073 Use `double', not `float', when calling indented_beyond_p.
10074
10075 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
10076
10077 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
10078
100792002-07-11 Juanma Barranquero <lektu@terra.es>
10080
10081 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
f9711de4
JB
10082 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
10083 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
10084 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
10085 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
10086 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
048addec
JD
10087
100882002-07-10 Juanma Barranquero <lektu@terra.es>
10089
d814862a
JB
10090 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
10091 All callers changed.
048addec
JD
10092
100932002-07-09 Stefan Monnier <monnier@cs.yale.edu>
10094
10095 * data.c (Fdefalias): Add an optional `docstring' argument.
10096 (set_internal, Fsetq_default): Use XCAR/XCDR.
10097
10098 * composite.c (HASH_VALUE, HASH_KEY):
10099 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
10100
101012002-07-09 Kenichi Handa <handa@etl.go.jp>
10102
10103 * callproc.c (Fcall_process): Fix previous change.
10104
101052002-07-07 Stefan Monnier <monnier@cs.yale.edu>
10106
10107 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
10108 Add support for hash-tables.
10109 (Ftry_completion): Return t even if the string appears multiple times.
10110
10111 * fns.c (Fnconc): Use XCDR.
10112 (Fprovide): Use CONSP and XCDR.
10113 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
10114 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
10115 (Fmake_hash_table): Accept `:size nil'.
10116 (Fmakehash): Delete: moved to subr.el.
10117 (syms_of_fns): Don't defsubr makehash.
10118
10119 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
10120 (HASH_TABLE_SIZE): Move from fns.c.
10121
101222002-07-07 Richard M. Stallman <rms@gnu.org>
10123
10124 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
10125 Instead just return 0 when there is something to be done.
10126 (try_scrolling): If make_cursor_line_fully_visible returns 0,
10127 retry scrolling as if cursor were off the bottom.
10128 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
10129 return CURSOR_MOVEMENT_MUST_SCROLL.
10130 (redisplay_window): If make_cursor_line_fully_visible returns 0,
10131 go to try_to_scroll.
10132
10133 * buffer.c (Fbuffer_local_value): Store current value into its binding
10134 so we get the up-to-date value for the binding that is loaded.
10135
10136 * eval.c (Fdefmacro): Doc fix.
10137
101382002-07-05 Dave Love <fx@gnu.org>
10139
10140 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
10141 correctly.
10142
10143 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
10144 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
10145 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
10146 CCL_LookupCharConstTbl.
10147 (syms_of_ccl): Defvar translation-hash-table-vector.
10148
101492002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10150
10151 * xdisp.c: Remove unused variable `face'.
10152
101532002-07-04 Juanma Barranquero <lektu@terra.es>
10154
10155 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
10156 obsolescence information.
10157
101582002-07-03 Andrew Choi <akochoi@shaw.ca>
10159
10160 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
10161 pattern. Search cache first.
10162 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
10163 for Japanese font.
10164 (XLoadQueryFont): Use it.
10165
101662002-07-02 Richard M. Stallman <rms@gnu.org>
10167
10168 * keymap.c (Fdefine_key): Doc fix.
10169
10170 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
10171
101722002-07-02 Juanma Barranquero <lektu@terra.es>
10173
10174 * keymap.c (syms_of_keymap): Fix typo.
10175
101762002-07-01 Andrew Choi <akochoi@shaw.ca>
10177
10178 * s/darwin.h: Define POSIX_SIGNALS.
10179
10180 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
10181 and FSRefMakePath to convert FSSpec returned with Apple Event to
10182 Posix pathname.
10183 (mac_initialize) [TARGET_API_MAC_CARBON]:
10184 Call init_required_apple_events and disable the `Quit' menu item
10185 provided automatically by the Carbon Toolbox.
10186
101872002-07-01 Dave Love <fx@gnu.org>
10188
10189 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
10190 for K&R.
10191
10192 * xterm.c: Fix prototype for K&R.
10193
10194 * term.c (costs_set): Declare static, non-initialized for pcc.
10195
101962002-07-01 Richard M. Stallman <rms@gnu.org>
10197
10198 * keyboard.c (timer_last_idleness_start_time): New variable.
10199 (timer_start_idle): Set that.
10200 (read_key_sequence): Use that to reset timer_idleness_start_time
10201 to previous value.
10202
10203 * window.c (Frecenter): With arg, set optional_new_start.
10204
10205 * xdisp.c (redisplay_internal): Make optional_new_start really work.
10206
10207 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
10208 buffer for completion.
10209
102102002-06-29 Ken Raeburn <raeburn@gnu.org>
10211
10212 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
10213
102142002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10215
10216 * keyboard.c (readable_filtered_events): New function that filters
10217 FOCUS_IN_EVENT depending on parameter.
10218 (readable_events): Calls readable_filtered_events, not filtering
10219 FOCUS_IN_EVENT.
10220 (get_filtered_input_pending): New function, filtering parameter passed
10221 to readable_filtered_events.
10222 (get_input_pending): Calls get_filtered_input_pending, not filtering
10223 FOCUS_IN_EVENT.
10224 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
10225 FOCUS_IN_EVENT.
10226
10227 * xterm.h (struct x_output): Add focus_state.
10228
10229 * xterm.c (x_focus_changed): New function.
10230 (x_detect_focus_change): New function.
10231 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
10232 EnterNotify and LeaveNotify to track X focus changes.
10233
102342002-06-28 Andreas Schwab <schwab@suse.de>
10235
10236 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
10237
102382002-06-27 Kim F. Storm <storm@cua.dk>
10239
10240 * xdisp.c: (mode_line_string_list, mode_line_string_face)
10241 (mode_line_string_face_prop): New variables.
10242 (store_mode_line_string): New function.
10243 (display_mode_element): Use store_mode_line_string to
10244 add mode-line string elements to mode_line_string_list
10245 when mode_line_string_list is non-nil.
10246 (Fformat_mode_line): Now returns propertized string by
10247 default. New arg NO-PROPS to ignore properties.
10248 (decode_mode_spec): Only add two dashes for %- in propertized
10249 mode-line string.
10250 (syms_of_xdisp): Init and staticpro mode_line_string_list.
10251
102522002-06-27 Stefan Monnier <monnier@cs.yale.edu>
10253
10254 * minibuf.c (minibuffer_completion_contents): Add return type.
10255
102562002-06-27 Juanma Barranquero <lektu@terra.es>
10257
10258 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
10259
102602002-06-26 Juanma Barranquero <lektu@terra.es>
10261
10262 * fileio.c (read_file_name_cleanup): Add missing return.
10263
102642002-06-26 Richard M. Stallman <rms@gnu.org>
10265
10266 * window.c (Frecenter): Don't set force_start flag.
10267
10268 * minibuf.c (do_completion, Fminibuffer_complete_word)
10269 (Fminibuffer_completion_help): Complete just the text before point.
10270 (minibuffer_completion_contents): New function.
10271
10272 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
10273
10274 * frame.c (frames_bury_buffer): Function deleted.
10275
102762002-06-25 Miles Bader <miles@gnu.org>
10277
10278 * callint.c (Fcall_interactively): When checking to see if doprnt hit
10279 the end of callint_message, allow for a terminating '\0'.
10280
102812002-06-24 Juanma Barranquero <lektu@terra.es>
10282
10283 * w32select.c: Include composite.h
10284
10285 * w16select.c: Likewise.
10286
102872002-06-24 Kenichi Handa <handa@etl.go.jp>
10288
10289 * callproc.c (Fcall_process): If code detection is necessary,
10290 call detect_coding directly here.
10291
10292 * coding.c (detect_eol): Preserve coding->cmp_data.
10293
10294 * w16select.c (Fw16_get_clipboard_data):
10295 * w32fns.c (w32_to_x_font):
10296 * w32select.c (Fw32_get_clipboard_data):
10297 * xselect.c (selection_data_to_lisp_data):
10298 * xterm.c (XTread_socket): Disable composition handling.
10299
103002002-06-24 Stefan Monnier <monnier@cs.yale.edu>
10301
10302 * print.c (temp_output_buffer_setup): Kill all local variables.
10303
103042002-06-22 Stefan Monnier <monnier@cs.yale.edu>
10305
10306 * lread.c (Fread): Remove redundant and imprecise declaration.
10307
10308 * xfns.c (check_x_display_info): Use check_x_frame.
10309
10310 * .gdbinit (xprintsym): Use the new `xname' field.
10311 (xsymbol): Use it.
10312
103132002-06-22 Jason Rumney <jasonr@gnu.org>
10314
10315 * w32fns.c (file_dialog_callback): New function.
10316 (Fx_file_dialog): Allow selecting directories as well as files.
10317
103182002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10319
10320 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
f63fd14e 10321 OpenBSD. Add support for mipseb-*-netbsd* machines.
048addec
JD
10322
103232002-06-17 Andrew Choi <akochoi@shaw.ca>
10324
10325 * macterm.c (mac_scroll_area): Set foreground and backcolor to
10326 black and white before scrolling. Restore frame background and
10327 foreground color after scrolling.
10328 (do_window_update): Call XClearWindow before calling expose_frame.
10329 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
10330 FRAME_FOREGROUND_PIXEL of frame.
10331
10332 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
10333 test Mac command key as <ALT> key.
10334
103352002-06-17 Stefan Monnier <monnier@cs.yale.edu>
10336
10337 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
10338
10339 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
10340 Lookup keys in function-key-map immediately so that key-translation-map
10341 can be applied earlier.
10342 Remove function_key_possible and key_translation_possible, replaced
10343 by checking `keytran_start < t'.
10344
10345 * .gdbinit (xsymbol): Use the new `xname' field.
10346
103472002-06-17 Andrew Choi <akochoi@shaw.ca>
10348
10349 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
10350 test Mac command key as <ALT> key.
10351
10352 * mac.c (do_applescript): Call initialize_applescript if necessary
10353 when first called. Dispose of result_desc only when there is no error.
10354 (Fdo_applescript): Use %d format specifier instead of %ld.
10355
103562002-06-16 Andrew Choi <akochoi@shaw.ca>
10357
10358 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
10359 of FrontWindow for cases keyDown and autoKey.
10360
10361 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
10362 Vdefault_fontset to Monaco with mac-roman coding.
10363
10364 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
10365 init_process before and after inclusion of Carbon/Carbon.h, resp.
10366
10367 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
10368 cursor_gc.
10369 (add_font_name_table_entry): New function.
10370 (init_font_name_table): Use add_font_name_table_entry; add italic,
10371 bold, and bold-italic entries for truetype fonts.
10372
10373 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
10374 for Mac too.
10375 (try_font_list) [MAC_OS]: If no font matches given registry, try
10376 fonts with any registry matching face_family.
10377 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
10378
10379 * s/darwin.h: If autoconf detects the Ncurses library, define
10380 LIBS_TERMCAP to -lncurses to use it.
10381
103822002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
10383
10384 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
10385
103862002-06-15 Richard M. Stallman <rms@gnu.org>
10387
10388 * window.c (Fset_window_configuration): Explicitly preserve
10389 the point value that new_current_buffer had at the start.
10390
103912002-06-14 Juanma Barranquero <lektu@terra.es>
10392
10393 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
10394 Fix typos.
10395
103962002-06-14 Kim F. Storm <storm@cua.dk>
10397
10398 * insdel.c (insert_1_both, insert_from_string_1)
10399 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
10400 insert happened in the end_unchanged region. Otherwise, the
10401 redisplay may be confused and duplicate the last line in the
10402 buffer [seen after save-buffer when require-final-newline==t].
10403
104042002-06-13 Jason Rumney <jasonr@gnu.org>
10405
10406 * w32.c (init_environment): Remove EMACSLOCKDIR.
10407 (stat): Swap _S_IFDIR and _S_IFREG.
10408
104092002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10410
10411 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
10412 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
10413 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
10414 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
10415 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
10416 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
10417 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
10418 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
10419 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
10420 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
10421 SELECTION_REQUEST_EVENT, selection_clear_event to
10422 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
10423 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
10424 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
10425 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
10426 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
10427 no_event to NO_EVENT.
10428
104292002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10430
10431 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
10432
104332002-06-12 Stefan Monnier <monnier@cs.yale.edu>
10434
10435 * intervals.c (textget): Don't forget to `return'.
10436 (lookup_char_property): Use XCAR/XCDR.
10437
104382002-06-12 Juanma Barranquero <lektu@terra.es>
10439
10440 * xdisp.c (Fformat_mode_line): Fix typo.
10441
104422002-06-12 Kim F. Storm <storm@cua.dk>
10443
10444 * xdisp.c (Fformat_mode_line): New function.
10445 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
10446 (store_frame_title_char, store_frame_title): Use unconditionally.
10447 (init_xdisp): Defsubr Fformat_mode_line.
10448 Initialize frame_title_buf etc. unconditionally.
10449
104502002-06-11 Stefan Monnier <monnier@cs.yale.edu>
10451
10452 * keyboard.c (read_key_sequence):
10453 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
10454 things through those maps after downcasing events.
10455 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
10456 applies after function-key-map.
10457 Make sure that keytran can be done in the middle in the sequence.
10458 Be careful not to throw away events past the one we downcase.
10459
10460 * lread.c (read_integer): Remove unused var `tem'.
10461 (read1): Fix int/Lisp_Object mixup.
10462
10463 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
10464
104652002-06-11 Richard M. Stallman <rms@gnu.org>
10466
10467 * keyboard.c (readable_events): Ignore any number of
10468 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
10469
104702002-06-09 Miles Bader <miles@gnu.org>
10471
10472 * xfaces.c (Ftty_supports_face_attributes_p): New function.
10473 (parse_rgb_list, tty_lookup_color): New functions.
10474 (tty_defined_color): Use `tty_lookup_color' to do all the work.
10475 (color_distance, Fcolor_distance): New functions.
10476 (TTY_SAME_COLOR_THRESHOLD): New macro.
10477 (Qtty_color_standard_values): New variable.
10478 (syms_of_xfaces): Initialize new vars & functions.
10479
104802002-06-08 Colin Walters <walters@verbum.org>
10481
10482 * textprop.c (Vchar_property_alias_alist): New variable.
10483 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
10484
10485 * intervals.c (lookup_char_property): New function for looking up
10486 overlay and text properties, created from textget.
10487 (textget): Use it.
10488
10489 * intervals.h (lookup_char_property): Declare.
10490 (Vchar_property_alias_alist): Declare.
10491
10492 * buffer.c (Foverlay_get): Use lookup_char_property.
10493
104942002-06-07 Sam Steingold <sds@gnu.org>
10495
10496 * xselect.c (lisp_data_to_selection_data): Fix last change:
10497 *data_ret is not a Lisp string, while unibyte_string is.
10498
104992002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
10500
10501 * xselect.c (lisp_data_to_selection_data): Fix last change:
10502 set size_ret.
10503
105042002-06-07 Andreas Schwab <schwab@suse.de>
10505
10506 * m/amdx86-64.h: New file.
10507
105082002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
10509
10510 * fns.c (Fstring_make_unibyte): Doc fix.
10511
10512 * xselect.c (lisp_data_to_selection_data): If the requested type
10513 is STRING, call string_make_unibyte to encode the selected text
10514 as a string.
10515
10516 * window.c (Fset_window_hscroll): Doc fix.
10517
105182002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10519
10520 * fileio.c (choose_write_coding_system):
10521 Call select-safe-coding-system properly.
10522
105232002-06-03 Richard M. Stallman <rms@gnu.org>
10524
10525 * xdisp.c (message_with_string): Error if STRING is not a string.
10526
10527 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
10528
10529 * fileio.c (choose_write_coding_system): Pass FILE arg to
10530 Vselect_safe_coding_system_function.
10531
105322002-06-03 Ken Raeburn <raeburn@gnu.org>
10533
10534 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
10535
105362002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
10537
10538 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
10539 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
10540 * keymap.c (describe_command): Likewise.
10541 * minibuf.c (read_minibuf): Likewise.
10542
10543 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
10544 Cast `current_column' return value to int.
10545 (back_to_previous_visible_line_start)
10546 (reseat_at_next_visible_line_start, next_element_from_buffer):
10547 Cast `indented_beyond_p' 3rd arg to float.
10548
10549 * indent.c (last_known_column): Now a float.
10550 (current_column_1, position_indentation, current_column)
10551 (string_display_width): Return float.
10552 (Fcurrent_column): Cast `current_column' return value to int.
10553 (Fcurrent_indentation): Cast `position_indentation' retval to int.
10554 (indented_beyond_p): Third arg now a float.
10555 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
10556
10557 * lisp.h (current_column): Now returns float.
10558 (indented_beyond_p): 3rd arg now a float.
10559
105602002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
10561
10562 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
10563 is Qcompound_text_with_extensions.
10564
10565 * xselect.c (lisp_data_to_selection_data): Always set selection
10566 type as string if x_encode_text returns streingp non-NULL.
10567
10568 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
10569
105702002-05-30 Richard M. Stallman <rms@gnu.org>
10571
10572 * window.c (Fset_window_configuration): Correct the handling
10573 of point in current buffer, to work with multiple windows.
10574
105752002-05-29 Colin Walters <walters@verbum.org>
10576
10577 * lread.c (Fread_from_string): Don't depend on order of evaluation
10578 for C function parameters.
10579
105802002-05-28 Richard M. Stallman <rms@gnu.org>
10581
10582 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
10583 way for blinked-off state and for a nonselected window.
10584
10585 * window.c (window_scroll_pixel_based): Don't call Fbolp;
10586 instead, see if the new start pos is at beginning of line.
10587
10588 * fileio.c (Fwrite_region): If START is a string, don't
10589 make any annotations.
10590
10591 * eval.c (syms_of_eval): Doc fix.
10592
105932002-05-28 Colin Walters <walters@debian.org>
10594
10595 * emacs.c (USAGE1): Add --no-splash.
10596 (standard_args): Ditto.
10597
105982002-05-28 Colin Walters <walters@gnu.org>
10599
10600 * lread.c (readchar_count): New variable.
10601 (readchar): Increment it.
10602 (unreadchar): Decrement it.
10603 (read_multibyte): Decrement it.
10604 (Vread_with_symbol_positions): New variable.
10605 (Vread_symbol_positions_list): New variable.
10606 (read_internal_start): New function, created from Fread and
10607 Fread_from_string. Handle Vread_symbol_positions_list and
10608 Vread_with_symbol_positions.
10609 (readevalloop, Fread, Fread_from_string): Use it.
10610 (read1): Use readchar_count to add symbol positions to
10611 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
10612 (syms_of_lread): DEFVAR_LISP and initialize them.
10613
10614 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
10615 (substitute_object_recurse, substitute_object_in_subtree)
10616 (substitute_in_interval): Prototype.
10617 (read_multibyte): Return c if it's less than zero.
10618
106192002-05-28 Kim F. Storm <storm@cua.dk>
10620
10621 * fileio.c (Fread_file_name_internal): Added brute-force
10622 speed up for using predicate file-directory-p.
10623
106242002-05-28 Kim F. Storm <storm@cua.dk>
10625
10626 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
10627 New variables.
10628 (syms_of_fileio): DEFVAR_LISP them.
10629 (read_file_name_cleanup): New unwind function.
10630 (Fread_file_name_internal): Only return completions satifying
10631 Vread_file_name_predicate. Temporarily unwind protect and rebind
10632 default-directory while checking completions against the predicate.
10633 (Fread_file_name): Added PREDICATE argument. Specbind it to
10634 Vread_file_name_predicate during completion.
10635 Call Vread_file_name_function to read the file name if non-nil.
10636
10637 * lisp.h (Fread_file_name): Now has 6 args.
10638
10639 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
10640 predicate for Fread_file_name when reading directory name.
10641 Supply Qnil for predicate in other calls to Fread_file_name.
10642
106432002-05-26 Miles Bader <miles@gnu.org>
10644
10645 * term.c (tty_capable_p): New function.
10646 * dispextern.h (tty_capable_p): New function declaration.
10647 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
10648 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
10649
106502002-05-23 Stefan Monnier <monnier@cs.yale.edu>
10651
10652 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
10653 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
10654 (Vwrite_region_annotate_functions): Docstring fix.
10655
106562002-05-23 Kim F. Storm <storm@cua.dk>
10657
10658 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
10659 phys_cursor's hpos is overwritten. This is still not completely
10660 correct, as it doesn't really make sense to use hpos at all to
10661 get the cursor glyph (as that is relative to the width of the
10662 characters on the line, which may have changed during the update).
10663
106642002-05-22 Jason Rumney <jasonr@gnu.org>
10665
10666 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
10667 Lisp_Object.
10668 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
10669 Use modified enumfont_t struct.
10670
10671 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
10672
10673 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
10674 Handle the `hbar' cursor type.
10675 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
10676
10677 * w32fns.c (Qhbar): New variable.
10678 (x_specified_cursor_type): Use it.
10679
106802002-05-21 Ken Raeburn <raeburn@gnu.org>
10681
10682 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
10683 now, when the address is needed.
10684
106852002-05-21 Colin Walters <walters@gnu.org>
10686
10687 * Makefile.in (shortlisp): Add font-core.el.
10688
106892002-05-20 Richard M. Stallman <rms@gnu.org>
10690
10691 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
10692
10693 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
10694 equivalent key bindings here.
10695
106962002-05-20 Ken Raeburn <raeburn@gnu.org>
10697
10698 Change symbol structure to contain a lisp object for the symbol
10699 name:
10700 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
10701 object field named "xname".
10702 (SYMBOL_NAME): New macro.
10703 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
10704 name field.
10705 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
10706 (mark_object, gc_sweep): Use symbol xname field and XSTRING
10707 instead of name field.
10708 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
10709 SYMBOL_NAME instead of XSYMBOL and name field.
10710 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
10711 instead of XSYMBOL and name field.
10712 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
10713 and SYMBOL_NAME instead of XSYMBOL and name field.
10714 * coding.c (Fread_coding_system, code_convert_region1)
10715 (code_convert_string1, code_convert_string_norecord)
10716 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
10717 XSYMBOL and name field.
10718 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
10719 (Fmake_variable_buffer_local, Fmake_local_variable)
10720 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
10721 of XSYMBOL and name field.
10722 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
10723 XSYMBOL and name field.
10724 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
10725 instead of XSYMBOL and name field.
10726 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
10727 XSYMBOL and name field.
10728 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
10729 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10730 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
10731 instead of XSYMBOL and name field.
10732 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
10733 (parse_modifiers, apply_modifiers, Fevent_convert_list)
10734 (parse_solitary_modifier, Fexecute_extended_command):
10735 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10736 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
10737 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
10738 of XSYMBOL and name field.
10739 (describe_command, describe_translation): Use SYMBOL_NAME and
10740 assignment instead of XSYMBOL and name field and XSETSTRING.
10741 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
10742 instead of XSYMBOL and name field.
10743 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
10744 name field and XSETSTRING.
10745 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
10746 of XSYMBOL and name field.
10747 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
10748 assignment instead of XSYMBOL and name field and XSETSTRING.
10749 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
10750 XSTRING instead of XSYMBOL and name field.
10751 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
10752 and XSTRING instead of XSYMBOL and name field.
10753 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
10754 and XSTRING instead of XSYMBOL and name field.
10755 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
10756 XSTRING instead of XSYMBOL and name field.
10757 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
10758 of XSYMBOL and name field.
10759 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
10760 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10761
107622002-05-19 Ken Raeburn <raeburn@gnu.org>
10763
10764 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
10765 and XCDR real rvalues in most configurations.
10766
10767 * buffer.c (fix_overlays_in_range, fix_overlays_before):
10768 Don't take the address of the cdr part of a cons cell; instead, track
10769 the parent cell and call XSETCDR, or set the variable for the head
10770 of the list if we haven't started down the list yet.
10771
107722002-05-19 Richard M. Stallman <rms@gnu.org>
10773
10774 * doc.c (reread_doc_file): Don't ask for confirmation.
10775
107762002-05-18 Jason Rumney <jasonr@gnu.org>
10777
10778 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
10779 (xbm_load_image): Use it.
10780 (xbm_load): Ditto.
10781 (xbm_read_bitmap_data): Reverted to xfns.c version.
10782 From David Ponce <david@dponce.com>.
10783
107842002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
10785
10786 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
10787 2.02 and later.
10788
107892002-05-16 Juanma Barranquero <lektu@terra.es>
10790
10791 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
10792
107932002-05-15 Stefan Monnier <monnier@cs.yale.edu>
10794
10795 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
10796 meaningful test.
10797 (read_char_minibuf_menu_prompt): Fix typo.
10798
107992002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
10800
10801 * eval.c (Fcommandp): Doc fix.
10802
108032002-05-13 Stefan Monnier <monnier@cs.yale.edu>
10804
10805 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
10806 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
10807 (Fset_keymap_parent): Gcpro a bit more.
10808 (access_keymap): Gcpro around meta_map call and around the main loop.
10809 (get_keyelt): Gcpro when following indirect references.
10810 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
10811 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
10812 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
10813 Remove useless ad-hoc remap code.
10814
108152002-05-13 Richard M. Stallman <rms@gnu.org>
10816
10817 * search.c (search_buffer): Give up boyer moore search if inverse
10818 translation change charset_base.
10819
108202002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
10821
10822 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
10823 characters is carried over from the previous block of text, adjust
10824 coding->produced to account for the extra character.
10825
108262002-05-11 Andreas Schwab <schwab@suse.de>
10827
10828 * coding.c (intersection): Keep the elements of the returned list
10829 in the same order as in the first list.
10830
108312002-05-11 Kim F. Storm <storm@cua.dk>
10832
10833 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
10834 only update cmm_size if realloc actually succeeds.
10835 Testing with initial size of 2 elements revealed that using
10836 realloc on GNU/Linux would cause a random trap in xmalloc
10837 later on, so I rewrote the code to use malloc/bcopy/free instead
10838 of realloc.
10839
108402002-05-10 Jason Rumney <jasonr@gnu.org>
10841
10842 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
10843
108442002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
10845
10846 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
10847 parens, to ensure correct evaluation order.
10848
108492002-05-10 Kim F. Storm <storm@cua.dk>
10850
10851 * keymap.c (Vemulation_mode_map_alists): New variable.
10852 (syms_of_keymap): DEFVAR_LISP it.
10853 (current_minor_maps): Process keymap alists in that list before
10854 minor-mode-overriding-map-alist and minor-mode-map-alist.
10855
108562002-05-09 Richard M. Stallman <rms@gnu.org>
10857
10858 * search.c (Freplace_match): Doc fix.
10859
108602002-05-09 Kim F. Storm <storm@cua.dk>
10861
10862 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
10863 Enlarge cursor rectangle drawn around image with non-zero relief.
10864
10865 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
10866 Enlarge cursor rectangle drawn around image with non-zero relief.
10867
10868 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
10869 Enlarge cursor rectangle drawn around image with non-zero relief.
10870
108712002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
10872
10873 * xselect.c (lisp_data_to_selection_data): Don't set selection
10874 type if comes from the Lisp object's car. If the selection
10875 contains a pure ASCII text, always return QSTRING as its type.
10876
108772002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10878
10879 * mac.c (mac-cut-function): Doc fix.
10880
108812002-05-05 Richard M. Stallman <rms@gnu.org>
10882
10883 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
10884
108852002-05-04 Jason Rumney <jasonr@gnu.org>
10886
10887 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
10888 for event-click-count.
10889
10890 * process.c (init_process): Only add server subfeature if we can
10891 use non-blocking I/O.
10892
108932002-05-04 Andrew Choi <akochoi@shaw.ca>
10894
10895 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
10896 repeatedly.
10897
108982002-05-03 Jason Rumney <jasonr@gnu.org>
10899
10900 * process.c (Fmake_network_process): Only support server sockets
10901 when we can make them non-blocking.
10902
10903 * s/ms-w32.h (HAVE_SELECT): Define.
10904
10905 * w32.h (FILE_NDELAY): New flag.
10906
10907 * w32.c (sys_getpeername, fcntl): New functions.
10908 (_sys_read_ahead): Temporarily block on non-blocking sockets.
10909
10910 * w32proc.c: include sys/file.h.
10911
109122002-05-03 Colin Walters <walters@verbum.org>
10913
10914 * callproc.c (Vgame_score_directory): Renamed to
10915 Vshared_game_score_directory.
10916
109172002-04-30 Richard M. Stallman <rms@gnu.org>
10918
10919 * s/gnu.h [emacs]: Include stdio.h.
10920 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
10921
10922 * eval.c (do_autoload): Error if called while preparing to dump.
10923
10924 * fns.c (Frequire): Error if need to load while preparing to dump.
10925
109262002-04-28 Colin Walters <walters@verbum.org>
10927
10928 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
10929 Default to "~/.emacs.d/games".
10930
109312002-04-29 Stefan Monnier <monnier@cs.yale.edu>
10932
10933 * lread.c (openp): Change arg exec_only to predicate.
10934 (build_load_history): Use XCAR/XCDR.
10935 (Flocate_file_internal): New fun.
10936 (syms_of_lread): Defsubr it.
10937 (Fload): Update call to openp.
10938
10939 * lisp.h (openp): Update prototype.
10940
10941 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
10942 * w32proc.c (sys_spawnve):
10943 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
10944 * w32.c (check_windows_init_file):
10945 * sound.c (Fplay_sound_internal):
10946 * process.c (Fstart_process):
10947 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
10948 * mac.c (run_mac_command):
10949 * emacs.c (init_cmdargs):
10950 * callproc.c (Fcall_process): Update call to openp.
10951
10952 * textprop.c (remove_properties): Don't use XCAR without CONSP.
10953
10954 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
10955
109562002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10957
10958 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
10959 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
10960
109612002-04-28 Richard M. Stallman <rms@gnu.org>
10962
10963 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
10964
10965 * eval.c (Fcommandp): New arg for_call_interactively.
10966 * lisp.h (Fcommandp): Declare new arg.
10967
109682002-04-28 Jason Rumney <jasonr@gnu.org>
10969
10970 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
10971
10972 * w32.c (stat, fstat): Use file index information to generate
10973 inodes for directories where available.
10974
109752002-04-26 Andrew Choi <akochoi@shaw.ca>
10976
10977 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
10978 [HAVE_CARBON]: Include Mac object files.
10979
10980 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
10981 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
10982 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
10983 MAC_OSX, and MAC_OS instead of macintosh.
10984
10985 * editfns.c [MAC_OS8]: Include stdio.h.
10986
10987 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
10988
10989 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
10990 Apple Monaco.
10991
10992 * process.c: Declare QCfamily and QCfilter as extern.
10993 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
10994 calling select.
10995
10996 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
10997
10998 * tparam.c [MAC_OSX]: Don't define BC and UP.
10999
11000 * config.in [HAVE_CARBON]: Add.
11001
11002 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
11003 Move here from mac/src and mac/inc.
11004
11005 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
11006
110072002-04-26 Gerd Moellmann <gerd@gnu.org>
11008
11009 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
11010 Compute phys_cursor_width from the x position returned
11011 by x_draw_glyhs, which is cheaper.
11012 (x_display_and_set_cursor): Compute the buffer-local value
11013 of `cursor-in-non-selected-windows' only when needed.
11014
110152002-04-25 Gerd Moellmann <gerd@gnu.org>
11016
11017 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
11018 cursor on a stretch glyph has a width that depends on
11019 x_stretch_cursor_p.
11020
110212002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11022
11023 * abbrev.c (abbrev-start-location): Doc fix.
11024
11025 * indent.c (Fvertical_motion): Fix last change.
11026
110272002-04-25 Gerd Moellmann <gerd@gnu.org>
11028
11029 * indent.c (Fvertical_motion): Move to the start of the line
11030 containing PT before moving up or down.
11031
110322002-04-24 Gerd Moellmann <gerd@gnu.org>
11033
11034 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
11035 case of writing a whole row, more or less analogous to the case of
11036 writing only parts of a row.
11037
11038 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
11039 0 for NO_CURSOR.
11040
11041 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
11042
110432002-04-23 Colin Walters <walters@verbum.org>
11044
11045 * buffer.c (syms_of_buffer): Doc fix.
11046
110472002-04-23 Gerd Moellmann <gerd@gnu.org>
11048
11049 * xterm.c (notice_overwritten_cursor): Handle the special case
11050 of the cursor being in the first blank non-text line at the
11051 end of a window.
11052
11053 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
11054 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
11055 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
11056 bar cursors only, to make phys_cursor_width contain what its name
11057 suggests.
11058 (notice_overwritten_cursor): Consider the cursor image erased if
11059 the output area intersects the cursor image in y-direction.
11060
110612002-04-23 Simon Marshall <simon@gnu.org>
11062
11063 * xfns.c (x_set_mouse_color): Change default for cross_cursor
11064 to XC_hand2.
11065
110662002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11067
11068 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
11069
110702002-04-22 Kim F. Storm <storm@cua.dk>
11071
11072 * textprop.c (remove_properties): Fixed trap for malformed plist.
11073
110742002-04-22 Richard M. Stallman <rms@gnu.org>
11075
11076 * cmds.c (Fend_of_line): Handle intangible text in mid line.
11077
11078 * window.c (make_window): Initialize height_fixed_p,
11079 last_cursor_off_p, and p->cursor_off_p slots.
11080
110812002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11082
11083 * fns.c (use-dialog-box): Doc fix.
11084
110852002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11086
11087 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
11088 variables `row', `i' and `area'.
11089 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
11090 toolkit library.
11091
110922002-04-19 Stefan Monnier <monnier@cs.yale.edu>
11093
11094 * xfaces.c (clear_font_table): Don't free the default font of
11095 a frame even if it's on another display.
11096 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
11097 that could be Qt.
11098
110992002-04-19 Juanma Barranquero <lektu@terra.es>
11100
11101 * indent.c (Fmove_to_column): Remove unused local variable
11102 `next_boundary_byte'.
11103 (current_column_1): Likewise.
11104
111052002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
11106
11107 * msdos.c (Qhbar): New variable.
11108 (syms_of_msdos): Intern and staticpro it.
11109 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
11110 cursor type.
11111
111122002-04-19 Dave Lambert <dlambert@acm.org>
11113
11114 Theses change implement an underscore-like (`hbar') cursor.
11115
11116 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
11117
11118 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
11119 Handle the `hbar' cursor type.
11120 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
11121
11122 * xfns.c (Qhbar): New variable.
11123 (syms_of_xfns): Intern and staticpro it.
11124 (x_specified_cursor_type): Handle `hbar' cursor.
11125
11126 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
11127 not defined.
11128
111292002-04-18 Richard M. Stallman <rms@gnu.org>
11130
11131 * textprop.c (remove_properties): New arg LIST allows scanning
11132 either a list or a plist.
11133 (interval_has_some_properties_list): New function, like
11134 interval_has_some_properties using list instead of plist.
11135 All callers changed.
11136 (Fremove_list_of_text_properties): New function.
11137 (syms_of_textprop): Defsubr it.
11138
111392002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
11140
11141 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
11142
111432002-04-17 Juanma Barranquero <lektu@terra.es>
11144
11145 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
11146
111472002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
11148
11149 * window.c (coordinates_in_window): Don't report on margin area
11150 if its width is zero.
11151
111522002-04-16 Jason Rumney <jasonr@gnu.org>
11153
11154 * w32fns.c (Fx_file_dialog): Decode file name before using.
11155
11156 * w32term.c (construct_drag_n_drop): Likewise.
11157
111582002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
11159
11160 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
11161 store load-history in pure space.
11162
11163 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
11164
111652002-04-16 Stefan Monnier <monnier@cs.yale.edu>
11166
11167 * xterm.c (Qlatin_1, Qutf_8): New vars.
11168 (syms_of_xterm): Initialize them.
11169 (XTread_socket): Eliminate incorrect optimization that tried to avoid
11170 decoding the output of X*LookupString.
11171 Always use latin-1 to decode the output of XLookupString.
11172 Try Xutf8LookupString if XmbLookupString failed.
11173
11174 * region-cache.c (new_region_cache): Use BEG.
11175
111762002-04-16 Gerd Moellmann <gerd@gnu.org>
11177
11178 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
11179 configuration files.
11180 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
11181 returns 0.
11182
111832002-04-15 Andreas Schwab <schwab@suse.de>
11184
11185 * config.in: Regenerated using autoheader.
11186
11187 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
11188 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
11189 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
11190 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
11191 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
11192 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
11193 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
11194 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
11195 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
11196 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
11197 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
11198 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
11199 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
11200 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
11201 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
11202 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
11203 STACK_DIRECTION, now set by autoconf.
11204
112052002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11206
11207 * dispnew.c (marginal_area_string): Sort arguments.
11208
11209 * dispextern.h (marginal_area_string): Add prototype.
11210
112112002-04-13 Richard M. Stallman <rms@gnu.org>
11212
11213 * fileio.c (Finsert_file_contents):
11214 Don't call temp_output_buffer_setup--do just part, by hand.
11215
11216 * coding.c (run_pre_post_conversion_on_str):
11217 Don't call temp_output_buffer_setup--do just part, by hand.
11218
11219 * keyboard.c (command_loop_1): Don't call start_hourglass
11220 or cancel_hourglass when executing a macro.
11221
11222 * marker.c (count_markers): New function.
11223
11224 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
11225 grow without limit. Move recently used elements to the front.
11226
112272002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
11228
11229 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
11230
112312002-04-12 Gerd Moellmann <gerd@gnu.org>
11232
11233 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
11234 rows marginal areas.
11235 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
11236 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
11237
11238 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
11239
112402002-04-12 Dave Love <fx@gnu.org>
11241
11242 * dispnew.c (marginal_area_string): New.
11243
11244 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
11245 (Qleft_margin, Qright_margin): Declare.
11246 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
11247
11248 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
11249 note_mode_line_highlight and extended.
11250
11251 * keyboard.c (Qleft_margin, Qright_margin): Declare.
11252 (make_lispy_event): Deal with mouse events in margins.
11253
112542002-04-12 Stefan Monnier <monnier@cs.yale.edu>
11255
11256 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
11257
11258 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
11259 than deactivating the mark if tmm is set to `lambda'.
11260 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
11261 Use a single event for HELP_EVENT.
11262 (Fexecute_extended_command): Save last_point_position.
11263
112642002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11265
11266 * lisp.h (Fpropertize): Add prototype.
11267
11268 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
11269
112702002-04-10 Colin Walters <walters@verbum.org>
11271
11272 * config.in: Add HAVE_SHARED_GAME_DIR.
11273
11274 * callproc.c: (Vgame_score_directory): New variable.
11275 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
11276
112772002-04-10 Richard M. Stallman <rms@gnu.org>
11278
11279 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
11280
112812002-04-09 Stefan Monnier <monnier@cs.yale.edu>
11282
11283 * minibuf.c (read_minibuf): Use empty_string.
11284 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
11285 Short-circuit the search as soon as it "failed".
11286 (Fall_completions): Allow lambda forms and lists of strings for alist.
11287 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
11288 when require_match is nil.
11289 (Ftest_completion): Rename from `test_completion' and export to elisp.
11290 Call the predicate also when alist is a list.
11291 Obey Vcompletion_regexp_list.
11292 (do_completion, Fminibuffer_complete_and_exit): Use it.
11293 (Fassoc_string): Rename from `assoc_for_completion'.
11294 Allow list of strings as well and export to elisp.
11295
112962002-04-08 Stefan Monnier <monnier@cs.yale.edu>
11297
11298 * puresize.h (BASE_PURESIZE): Increase to 900KB.
11299
113002002-04-08 Juanma Barranquero <lektu@terra.es>
11301
11302 * w32.c (sys_accept): Don't hide variable `s'.
11303
113042002-04-05 Gerd Moellmann <gerd@gnu.org>
11305
11306 * callint.c (Fcall_interactively): Use INTEGERP instead of
11307 NUMBERP for checking Vhistory_length.
11308
113092002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11310
11311 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
11312 Doc fix to reflect it.
11313
113142002-04-04 Richard M. Stallman <rms@gnu.org>
11315
11316 * xdisp.c (display_mode_element): New arg RISKY.
11317 Disregard text props found or specified within a variable
11318 that isn't marked risky-local-variable.
11319 (Qrisky_local_variable): New variable.
11320 (syms_of_xdisp): Init and staticpro it.
11321
113222002-04-04 Stefan Monnier <monnier@cs.yale.edu>
11323
11324 * undo.c (record_point): New fun.
11325 (record_delete, record_insert): Use it.
11326
113272002-04-03 Juanma Barranquero <lektu@terra.es>
11328
11329 * doc.c (Fdocumentation): Add missing parentheses.
11330 (Fdocumentation_property): Likewise.
11331
113322002-04-03 Stefan Monnier <monnier@cs.yale.edu>
11333
11334 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
11335 data is 0, just return nil.
11336
113372002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
11338
11339 * msdos.c (syms_of_msdos): Fix last change with
11340 mouse_autoselect_window.
11341
113422002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11343
11344 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
11345 mouse_autoselect_window.
11346
113472002-04-02 Stefan Monnier <monnier@cs.yale.edu>
11348
11349 * keyboard.c (make_lispy_event): Handle unknown keysyms together
11350 with system-specific keysyms. Use it also for unknown function keys.
11351
11352 * doc.c (reread_doc_file): Return whether reload was attempted.
11353 (Fdocumentation, Fdocumentation_property): Don't try to reload
11354 if the doc is 0 and only ask once.
11355
11356 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
11357
113582002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
11359
11360 * keyboard.c (read_char): If the event was Qselect_window,
11361 restore timer_idleness_start_time to its previous value.
11362
11363 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
11364
113652002-04-01 Stefan Monnier <monnier@cs.yale.edu>
11366
11367 * region-cache.c (new_region_cache): Use BEG.
11368
11369 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
11370 Use BEG and BEG_BYTE.
11371
11372 * doc.c (get_doc_string): Return nil if the location is wrong.
11373 (reread_doc_file): New fun.
11374 (Fdocumentation, Fdocumentation_property):
11375 Call it if get_doc_string fails.
11376 (Fsnarf_documentation): Make it work for a dumped Emacs.
11377
11378 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
11379 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
11380
11381 * charset.c (Fstring): Allow 0 arguments.
11382
11383 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
11384
11385 * process.c (DATAGRAM_CONN_P, list_processes_1)
11386 (Fprocess_datagram_address, Fset_process_datagram_address)
11387 (Fset_network_process_options, server_accept_connection):
11388 Fix some int/Lisp_Object confusions (thank you union types).
11389
113902002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11391
11392 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
11393
11394 * w32term.c: Likewise.
11395 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
11396
11397 * keyboard.c (Qselect_window): New symbol.
11398 (head_table): Use it.
11399 (keys_of_keyboard): Bound select-window event to handle-select-window.
11400 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
11401
11402 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
11403 (last_window): New variable.
11404 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
11405 (note_mouse_movement): Remove reimplemented code in #if 0.
11406 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
11407 Emacs windows.
11408
11409 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
11410
114112002-03-31 Gerd Moellmann <gerd@gnu.org>
11412
11413 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
11414 Callers changed.
11415
114162002-03-30 Richard M. Stallman <rms@gnu.org>
11417
11418 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
11419 loop whenever it stops making progress.
11420
11421 * widget.c (set_frame_size): Don't call change_frame_size.
11422
114232002-03-30 Gerd Moellmann <gerd@gnu.org>
11424
11425 * dispnew.c (direct_output_for_insert):
11426 Call mark_window_display_accurate.
11427
114282002-03-29 Jason Rumney <jasonr@gnu.org>
11429
11430 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
11431
114322002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
11433
11434 * Makefile.in (lread.o): Depend on coding.h.
11435
11436 * lread.c (openp, Fload): Encode the file name before passing it
11437 to `stat', `access', and `emacs_open'.
11438 (openp): GCPRO the encoded file name. Don't recompute Lisp
11439 strings unnecessarily.
11440
114412002-03-29 Kim F. Storm <storm@cua.dk>
11442
11443 * fns.c (Flax_plist_put): Doc fix.
11444
114452002-03-28 Miles Bader <miles@gnu.org>
11446
11447 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
11448
114492002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11450
11451 * process.c (set-network-process-options): Add usage.
11452 (make-network-process): Doc fix.
11453
114542002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
11455
11456 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
11457
114582002-03-26 Richard M. Stallman <rms@gnu.org>
11459
11460 * fns.c (Fsubstring_no_properties): New function.
11461 (Flax_plist_get, Flax_plist_put): New functions.
11462 (syms_of_fns): defsubr them.
11463
11464 * xdisp.c (update_menu_bar): Test only update_mode_lines;
11465 don't test or alter w->update_mode_line.
11466
11467 * window.c (Fdisplay_buffer): Doc fix.
11468
114692002-03-24 Richard M. Stallman <rms@gnu.org>
11470
11471 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
11472
114732002-03-24 Gerd Moellmann <gerd@gnu.org>
11474
11475 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
11476 (Fdefmacro): Handle `(declare ...)'.
11477 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
11478 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
11479
114802002-03-24 Jason Rumney <jasonr@gnu.org>
11481
11482 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
11483 (xbm_file_p): Add prototypes.
11484 (xbm_format, xbm_image_p): Sync with xfns.c.
11485 (reflect_byte): New function.
11486 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
11487 (xbm_load_image): Create bitmaps with a depth of 1.
11488 (init_xfns): Enable XBM images.
11489
114902002-03-23 Jason Rumney <jasonr@gnu.org>
11491
11492 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
11493 correctly. Do not pass up_modifier to keyboard buffer.
11494
11495 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
11496
114972002-03-22 Stefan Monnier <monnier@cs.yale.edu>
11498
11499 * Makefile.in (bootstrapclean): New target.
11500 (bootstrap-temacs, bootstrap-doc): Remove.
11501 (bootstrap-emacs): Use a bog-standard `temacs'.
11502 Don't bother to build a DOC file.
11503
11504 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
11505
11506 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
11507 in temacs even if !CANNOT_DUMP.
11508 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
11509
11510 * alloc.c (check_pure_size): Only output a warning.
11511
115122002-03-22 Jason Rumney <jasonr@gnu.org>
11513
11514 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
11515 supported.
11516
11517 * w32term.c (zv_bits): Declare as short, for word alignment.
11518 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
11519 (syms_of_w32term): Define x-use-underline-position-properties.
11520
11521 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
11522 (clear_image_cache): Block input, fix logic, clear matrices in
11523 all frames that share this cache.
11524
115252002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
11526
11527 * emacs.c (main): Update the Copyright year in the blurb printed
11528 by "emacs --version".
11529
11530 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
11531
11532 * xterm.c (XTread_socket): If XK_ISO_Lock and
11533 XK_ISO_Last_Group_Lock are defined, handle keysyms between
11534 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
11535
115362002-03-21 Kim F. Storm <storm@cua.dk>
11537
11538 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
11539 menu-bar bindings in keymap and local-map properties _are_ used.
11540 But try keymap property first in accordance with 2002-01-03 patch.
11541 Added comment describing why this is not always reliable.
11542 (tool_bar_items): Ditto for tool-bar.
11543
115442002-03-21 Jason Rumney <jasonr@gnu.org>
11545
11546 * w32fns.c (x_clear_image_1): Disable color table code.
11547
115482002-03-21 Kim F. Storm <storm@cua.dk>
11549
11550 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
11551 removed the wrong version of the DEFUN macro; fixed it.
11552
11553 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
11554 Fmember rather than Fmemq).
11555 (Fprovide): Check that subfeatures is a list.
11556
11557 * process.c (QCfeature, QCdatagram): Removed variables.
11558 (QCtype, Qdatagram): New variables.
11559 (network_process_featurep): Removed function.
11560 (Fmake_network_process): Removed :feature check.
11561 Use :type 'datagram instead of :datagram t to create a datagram
11562 socket. This allows us to add other connection types (e.g. raw
11563 sockets) later in a consistent manner.
11564 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
11565 supported subfeatures for feature make-network-process.
11566 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
11567 Intern and staticpro QCtype and Qdatagram.
11568 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
11569
11570 * xfns.c: (QCtype): Remove duplicate declaration and
11571 initialization (is now declared in process.c).
11572
11573 * w32fns.c: (QCtype): Remove duplicate declaration and
11574 initialization (is now declared in process.c).
11575
115762002-03-21 Richard M. Stallman <rms@gnu.org>
11577
11578 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
11579 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
11580 when jumping to `fail' to avoid undoing reg changes in the
11581 last iteration of the loop.
11582 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
11583
11584 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
11585 Depend on process.h.
11586
115872002-03-20 Jason Rumney <jasonr@gnu.org>
11588
11589 Most of the following changes are still conditional on HAVE_IMAGES
11590 which is not set by default on Windows.
11591
11592 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
11593
11594 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
11595 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
11596 (four_corners_best, x_clear_image_1, x_clear_image)
11597 (x_alloc_image_color, postprocess_image)
11598 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
11599 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
11600 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
11601
11602 * w32gui.h (struct XImage): Define.
11603
11604 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
11605 extract mouse co-ordinates.
11606
116072002-03-20 Jason Rumney <jasonr@gnu.org>
11608
11609 * w32.c (init_winsock): Dynamically load new server and UDP
11610 socket functions.
11611 (socket_to_fd): New function.
11612 (sys_socket): Use it.
11613 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
11614 (sys_recvfrom, sys_sendto): New wrapper functions.
11615
11616 * process.c (QCfamily, QCfilter): Remove duplicate declaration
11617 and initialization.
11618
11619 * makefile.w32-in (LIBS): Remove $(WSOCK32).
11620
116212002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
11622
11623 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
11624 Don't use "sun" as a variable, it's a predefined constant on Sun
11625 machines.
11626
116272002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11628
11629 * bytecode.c (Fbyte_code): Revert last change.
11630
116312002-03-19 Kim F. Storm <storm@cua.dk>
11632
11633 * makefile.w32-in (LIBS): Add $(WSOCK32).
11634 From David Ponce <dponce@voila.fr>.
11635
116362002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11637
11638 * process.c (wait_reading_process_input): Move variables `pname'
11639 and `pnamelen' down where they are used.
11640
11641 * bytecode.c (Fbyte_code): Discard unused computed value to
11642 prevent gcc warning.
11643
11644 * lisp.h (Fplist_member): Add prototype.
11645
116462002-03-18 Kim F. Storm <storm@cua.dk>
11647
11648 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
11649 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
11650
11651 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
11652 Remove explicit GNU_LINUX settings for datagram support.
11653
116542002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11655
11656 * process.c (Fmake_network_process): Remove unused variable `sa'.
11657 Doc fix. Add usage:.
11658 (set_socket_options): Remove unused variables `optnum' and `opttype'.
11659
116602002-03-17 Richard M. Stallman <rms@gnu.org>
11661
11662 * xdisp.c (cursor_type_changed): New variable.
11663 (redisplay_internal): Redisplay all windows if cursor_type_changed.
11664 Clear it when clearing windows_or_buffers_changed.
11665 (try_cursor_movement, redisplay_window, try_window_id)
11666 (try_window_reusing_current_matrix): Test cursor_type_changed
11667 along with windows_or_buffers_changed.
11668
11669 * window.h (cursor_type_changed): New variable.
11670
11671 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
11672 not update_mode_lines, and always set it to 1.
11673
11674 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
11675 if no frames needed redrawing.
11676
116772002-03-17 Kim F. Storm <storm@cua.dk>
11678
11679 The following changes add support for network server processes,
11680 datagram connections, and local (unix) sockets.
11681
11682 * process.h (struct Lisp_Process): New member log.
11683 Doc fix: Member command used to indicate stopped network process.
11684 Doc fix: Member childp contains plist for network process.
11685 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
11686
11687 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
11688 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
11689 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
11690 New variables.
11691 (NETCONN1_P): New macro.
11692 (DATAGRAM_SOCKETS): New conditional symbol.
11693 (datagram_address): New array.
11694 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
11695 (status_message): Use concat3.
11696 (Fprocess_status): Add `listen' status to doc string. Return `stop'
11697 for a stopped network process.
11698 (Fset_process_buffer): Update contact plist for network process.
11699 (Fset_process_filter): Ditto. Don't enable input for stopped
11700 network processes. Server must listen, even if filter is t.
11701 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
11702 New functions.
11703 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
11704 (Fprocess_contact): Added KEY argument. Handle datagrams.
11705 (list_processes_1): Optionally show only processes with the query
11706 on exit flag set. Dynamically adjust column widths. Omit tty
11707 column if not needed. Report stopped network processes.
11708 Identify server and datagram network processes.
11709 (Flist_processes): New optional arg `query-only'.
11710 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
11711 (conv_lisp_to_sockaddr, set_socket_options)
11712 (network_process_featurep, unwind_request_sigio): New helper functions.
11713 (Fprocess_datagram_address, Fset_process_datagram_address):
11714 (Fset_network_process_options): New lisp functions.
11715 (Fopen_network_stream): Removed. Now defined in simple.el.
11716 (Fmake_network_process): New lisp function. Code is based on previous
11717 Fopen_network_stream, but heavily reworked with new property list based
11718 argument list, support for datagrams, server processes, and local
11719 sockets in addition to old client-only functionality.
11720 (server_accept_connection): New function.
11721 (wait_reading_process_input): Use it to handle incoming connects.
11722 Do not enable input on a new connection if process is stopped.
f63fd14e 11723 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
048addec
JD
11724 (send_process): Handle datagram sockets.
11725 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
11726 network process is indicated by setting command field to t .
11727 (Fprocess_send_eof): No-op if datagram connection.
11728 (Fstatus_notify): Don't read input for a stream server socket or a
11729 stopped network process.
11730 (init_process): Initialize datagram_address array.
11731 (syms_of_process): Intern and staticpro new variables, defsubr new
11732 functions.
11733
117342002-03-16 Jason Rumney <jasonr@gnu.org>
11735
11736 * w32fns.c (w32_to_all_x_charsets): Return correct type in
11737 startup case.
11738
117392002-03-16 Richard M. Stallman <rms@gnu.org>
11740
11741 * xdisp.c (redisplay_internal, redisplay_windows):
11742 Use list_of_error to call internal_condition_case_1.
11743 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
11744 so as to catch all errors with no possibility of debugger redisplay.
11745 (list_of_error): New variable.
11746 (syms_of_xdisp): Init and staticpro it.
11747
11748 * print.c (print_object): Delete `\ ' from printed rep of frame.
11749
117502002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
11751
11752 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
11753 until its implementation is fixed.
11754
117552002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11756
11757 * xfns.c (png_load): Remove unused variable `gamma_str'.
11758
117592002-03-14 Richard M. Stallman <rms@gnu.org>
11760
11761 * xfns.c (x_real_positions): Handle failure in XQueryTree.
11762
117632002-03-14 Miles Bader <miles@gnu.org>
11764
11765 * intervals.c (adjust_for_invis_intang): New function.
11766 (set_point_both): Use `adjust_for_invis_intang' to do most of the
11767 work for dealing with invisible+intangible regions. Do so before
11768 and after both forward and backward movements, to handle both
11769 front-sticky and rear-sticky cases.
11770 * textprop.c (text_property_stickiness): Function moved here from
11771 `editfns.c'.
11772 * intervals.h (text_property_stickiness): New declaration.
11773 * editfns.c (char_property_eq): Function removed.
11774 (text_property_stickiness): Function moved to `textprop.c'.
11775
117762002-03-13 Jason Rumney <jasonr@gnu.org>
11777
11778 * config.in: Add STRFTIME_NO_POSIX2.
11779
11780 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
11781 and %OX when underlying strftime does not.
11782
117832002-03-13 Stefan Monnier <monnier@cs.yale.edu>
11784
11785 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
11786 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
11787 line) to avoid annoying flicker.
11788 (xm_scroll_callback): Get rid of the now unnecessary kludge.
11789 (XTread_socket): Mark it static.
11790
11791 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
11792
117932002-03-13 Kim F. Storm <storm@cua.dk>
11794
11795 * puresize.h (BASE_PURESIZE): Increase to 775000.
11796
117972002-03-12 Juanma Barranquero <lektu@terra.es>
11798
11799 * editfns.c (syms_of_editfns): Fix typo.
11800
118012002-03-12 Gerd Moellmann <gerd@gnu.org>
11802
11803 * xsmfns.c: Include stdio.h because termhooks.h needs it.
11804 Include termopt.h for interrupt_input.
11805
118062002-03-11 Andreas Schwab <schwab@suse.de>
11807
11808 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
11809
118102002-03-11 Gerd Moellmann <gerd@gnu.org>
11811
11812 * xterm.c (note_mouse_movement): Put code for
11813 x_autoselect_window_p in #if 0.
11814
11815 * lread.c (Fload): Don't assume that message_with_string uses the
11816 string it is given like a C string.
11817
118182002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11819
11820 * xterm.h (x_session_check_input, x_session_initialize): Declared.
11821
11822 * xterm.c: (XTread_socket): Add call to x_session_check_input and
11823 x_session_have_connection.
11824 (x_initialize): Add call to x_session_initialize.
11825
11826 * termhooks.h (enum event_kind): Add save_session_event.
11827
11828 * keyboard.c: Add Emacs event save_session_event.
11829
11830 * emacs.c (main): Add call to syms_of_xsmfns.
11831
11832 * lisp.h: Declare syms_of_xsmfns as extern.
11833
11834 * config.in: Add HAVE_X_SM.
11835
11836 * Makefile.in (LIBXT): Add -lSM -lICE
11837 if HAVE_X_SM and not USE_X_TOOLKIT.
11838 (XOBJ): New file xsmfns.c added.
11839
11840 * xsmfns.c: New file for X session management.
11841
118422002-03-09 Jason Rumney <jasonr@gnu.org>
11843
11844 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
11845 read-only when setting modified time.
11846
118472002-03-08 Gerd Moellmann <gerd@gnu.org>
11848
11849 * xdisp.c (move_it_vertically_backward): At the end of the function,
11850 when moving forward by lines, treat terminal frames specially.
11851
11852 * keyboard.c (echo_char): Make sure to add a separator between
11853 keys even if echo_dash hasn't been called.
11854
11855 * xdisp.c: Use new string macros.
11856 (update_echo_area): Pass number of bytes to message3 instead of
11857 number of chars.
11858 (set_message_1): Don't access a string's size_byte directly.
11859 (decode_mode_spec_coding): Use number of bytes of eoltype string
11860 instead number of chars.
11861
11862 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
11863
118642002-03-08 Juanma Barranquero <lektu@terra.es>
11865
11866 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
11867 24-bit.
11868
118692002-03-06 Jason Rumney <jasonr@gnu.org>
11870
11871 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
11872
118732002-03-06 Gerd Moellmann <gerd@gnu.org>
11874
11875 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
11876 (cancel_echoing, echo_length, echo_truncate): Changed to
11877 work with new kboard definition.
11878 (echo_now): Use message3_nolog instead of message2_nolog.
11879
11880 * alloc.c (mark_kboards): Mark echo_string.
11881
11882 * keyboard.h (ECHOBUFSIZE): Removed.
11883 (struct kboard): Member echoptr removed, member echobuf renamed
11884 to echo_string.
11885
11886 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
11887 message3 instead of message2 to display the message using STRING's
11888 text properties.
11889
118902002-03-05 Andreas Schwab <schwab@suse.de>
11891
11892 * xdisp.c (hscroll_margin): Change to EMACS_INT.
11893
118942002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
11895
11896 * frame.c (default-frame-alist): Explain that setting it doesn't
11897 affect existing frames.
11898
118992002-03-05 Stefan Monnier <monnier@cs.yale.edu>
11900
11901 * indent.c (skip_invisible): Fix my brain fart.
11902
11903 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
11904
119052002-03-04 Stefan Monnier <monnier@cs.yale.edu>
11906
11907 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
11908 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
11909 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
11910 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
11911 and variables to use EMACS_INT instead of just int.
11912
11913 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
11914
119152002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
11916
11917 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
11918 environment, pass it down with corrected value.
11919
119202002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11921
11922 * lread.c (read_filtered_event): Do not call start_hourglass
11923 before returning.
11924
119252002-03-04 Juanma Barranquero <lektu@terra.es>
11926
11927 * w32term.c (x_display_and_set_cursor): Fix typo.
11928
119292002-03-03 Richard M. Stallman <rms@gnu.org>
11930
11931 * fileio.c (Fmake_temp_name): Doc fix.
11932
119332002-03-03 Gary Wong <gtw@gnu.org>
11934
11935 * termcap.c [!emacs]: Replace ospeed for building standalone
11936 libtermcap, for binary compatibility.
11937
11938 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
11939
119402002-03-03 Richard M. Stallman <rms@gnu.org>
11941
11942 * xrdb.c (file_p): Rename arg `path' to `filename'.
11943
11944 * abbrev.c (Fexpand_abbrev): Increment plist as use count
11945 only if it is an integer.
11946
11947 * xfns.c (png_load): Set screen_gamma based on f->gamma.
11948 If png_get_sRGB gives an answer, call png_set_gamma
11949 using the default image gamma value.
11950
11951 * lread.c (read1): When reading from a file, default string to
11952 multibyte only if it has some multibyte characters.
11953
11954 * print.c (print_object): Output multibyte chars 128...255
11955 using \x even if ! print_escape_multibyte.
11956
11957 * xdisp.c (display_mode_element): Move the places where
11958 bytepos, charpos, this, and lisp_string are set.
11959 Use lisp_string to set bytepos.
11960
11961 * xdisp.c (redisplay_internal):
11962 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
11963
11964 * xdisp.c (display_mode_element): Merge properties specified with
11965 :propertize onto those that come with the string.
11966
119672002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
11968
11969 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
11970 automatic-hscrolling. Users changed.
11971 <hscroll-margin>: Renamed from automatic-hscroll-margin.
11972 Users changed.
11973 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
11974
119752002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
11976
11977 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
11978
119792002-03-02 Kim F. Storm <storm@cua.dk>
11980
11981 * window.c (Fminibuffer_selected_window): New function.
11982 (syms_of_window): Defsubr it.
11983
119842002-03-01 Kim F. Storm <storm@cua.dk>
11985
11986 * window.h (struct window): New member phys_cursor_width.
11987
11988 * window.c (make_window, replace_window): Init phys_cursor_width.
11989
11990 * xterm.c (x_display_and_set_cursor): Blink box cursor using
11991 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
11992
11993 * w32term.c (x_display_and_set_cursor): Blink box cursor using
11994 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
11995
11996 * lisp.h (GCPRO6): New macro.
11997
11998 * process.c (Fopen_network_stream): Use GCPRO6.
11999
120002002-03-01 Kim F. Storm <storm@cua.dk>
12001
12002 * process.c (Qconnect, Qfailed): New variables.
12003 (syms_of_process): Intern and staticpro them.
12004 (Fprocess_status): Document connect and failed return values.
12005 [NON_BLOCKING_CONNECT]: New conditional.
12006 (connect_wait_mask, num_pending_connects): New variables.
12007 (status_message): Convert Qfailed status.
12008 (Fopen_network_stream): Added support for non-blocking connect.
12009 New optional args: filter, sentinel, non_blocking. Doc updated.
12010 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
12011 (deactivate_process): Handle pending non-blocking connect.
12012 (wait_reading_process_input): Poll for status of non-blocking
12013 connects. Exec sentinel directly when connect succeeds.
12014 (status_notify): Don't read process output if not yet connected.
12015
120162002-02-28 Kim F. Storm <storm@cua.dk>
12017
12018 * window.c: (minibuf_selected_window): Renamed from
12019 Vminibuf_selected_window. Users changed.
12020 (syms_of_window): Staticpro it.
12021
120222002-02-26 Kim F. Storm <storm@cua.dk>
12023
12024 The following changes add a new Vminibuf_selected_window variable
12025 which is similar to Vminibuf_scroll_window, but which is only set
12026 on entry to the minibuffer (from a non-minibuffer window):
12027
12028 * window.c: (Vminibuf_selected_window): New variable.
12029 (struct save_window_data): New member minibuf_selected_window.
12030 (Fset_window_configuration): Restore Vminibuf_selected_window.
12031 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
12032 Set minibuf_scroll_window member to nil if minibuf_level is 0.
12033 (compare_window_configurations): Compare minibuf_selected_window.
12034
12035 * window.h: (Vminibuf_selected_window): Declare extern.
12036
12037 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
12038 entry to minibuffer or on entry from a non-minibuffer window.
12039
12040 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
12041 Vminibuf_selected_window instead of Vminibuf_scroll_window.
12042
12043 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
12044 instead of Vminibuf_scroll_window when deciding in which window
12045 the region should be highlighted. Consequently, the region remains
12046 highlighteded even when a completion buffer is also displayed.
12047
120482002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
12049
12050 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
12051
12052 * xselect.c (Qcompound_text_with_extensions): Renamed from
12053 Qcompound_text_no_extensions.
12054 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
12055
120562002-02-26 Juanma Barranquero <lektu@terra.es>
12057
12058 * w32proc.c (syms_of_ntproc): Doc fix.
12059
120602002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12061
12062 * intervals.h: Include "dispextern.h" unconditionally.
12063
120642002-02-24 Jason Rumney <jasonr@gnu.org>
12065
12066 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
12067 and disp-table.elc.
12068 (lisp): Add emacs-lisp/backquote.elc.
12069
120702002-02-24 Kim F. Storm <storm@cua.dk>
12071
12072 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
12073 The validation of the event type was too strict as it didn't
12074 allow string events; buffer names are used in bindings for
12075 menu-bar-select-buffer (see `menu-bar-update-buffers').
12076
120772002-02-23 Kim F. Storm <storm@cua.dk>
12078
12079 The following changes rework my patch of 2002-02-06 which
12080 added command remapping by entering the commands directly into
12081 the keymaps. Now, command remapping uses an explicit `remap'
12082 prefix in the keymaps, i.e. [remap COMMAND].
12083
12084 * keymap.c (Qremap, remap_command_vector): New variables.
12085 (is_command_symbol): Removed function.
12086 (Fdefine_key): No longer accept a symbol for KEY.
12087 Added validation of [remap COMMAND] argument for KEY.
12088 The DEF is no longer required to be a symbol when remapping a command.
12089 (Fremap_command): New function to remap command through keymaps.
12090 (Flookup_key): Perform command remapping initiated by
12091 Fremap_command directly for speed.
12092 (Fkey_binding): Use Fremap_command for command remapping.
12093 (where_is_internal): Handle new command remapping representation.
12094 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
12095 staticpro them. Defsubr Fremap_command.
12096
12097 * keymap.h (Fremap_command): Declare extern.
12098 (is_command_symbol): Remove extern.
12099
12100 * keyboard.c (command_loop_1): Use Fremap_command for command
12101 remapping; now try command remapping for all symbols.
12102
121032002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
12104
12105 * coding.h (run_pre_post_conversion_on_str): Add prototype.
12106
121072002-02-23 Jason Rumney <jasonr@gnu.org>
12108
12109 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
12110 on the string before encoding it.
12111 (Fw32_get_clipboard_data): Run post-read-conversion on the string
12112 after decoding it.
12113
12114 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
12115
121162002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12117
12118 * w32term.c (enter_timestamp): Remove unused static variable to
12119 prevent warning.
12120
12121 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
12122
121232002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
12124
12125 * w16select.c (Fw16_get_clipboard_data): Fix last change.
12126
12127 * xselect.c (selection_data_to_lisp_data): Fix last change.
12128
121292002-02-22 Jason Rumney <jasonr@gnu.org>
12130
12131 * w32term.h (struct w32_output): New member menu_command_in_progress.
12132
12133 * w32menu.c (menubar_selection_callback): Free the menu and
12134 clear the menu_command_in_progress flag.
12135
12136 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
12137 (menu_free_timer): New variable.
12138 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
12139 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
12140 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
12141 menu command is in progress.
12142 <WM_COMMAND>: Set the menu_command_in_progress flag.
12143 Kill any menu_free_timer that is running.
12144
12145 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
12146 Call ExtTextOutA rather than ExtTextOut.
12147
121482002-02-22 Eli Zaretskii <eliz@gnu.org>
12149
12150 * puresize.h (BASE_PURESIZE): Increase to 755000.
12151
121522002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
12153
12154 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
12155 on the string before encoding it.
12156 (Fw16_get_clipboard_data): Run post-read-conversion on the string
12157 after decoding it.
12158
121592002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
12160
12161 Support for ICCCM Extended Segments in X selections:
12162
12163 * xselect.c <Qcompound_text_no_extensions>: New variable.
12164 (syms_of_xselect): Intern and staticpro it.
12165 (selection_data_to_lisp_data): Run post-read-conversion on decoded
12166 selection text.
12167 (lisp_data_to_selection_data): If next-selection-coding-system is
12168 compound-text-no-extensions, set the type of selection to be
12169 compound-text.
12170
12171 * xterm.h (x_encode_text): Update prototype.
12172
12173 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
12174 callers changed. If SELECTIONP is non-zero, run the
12175 pre-write-conversion function before encoding the selection text.
12176
121772002-02-21 Kim F. Storm <storm@cua.dk>
12178
12179 * frame.c (syms_of_frame): Change mouse-highlight default to t.
12180
12181 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
12182 Correct composing of language-change event.
12183
121842002-02-20 Kim F. Storm <storm@cua.dk>
12185
12186 * keyboard.c (menu_bar_items): Don't include keymap or local-map
12187 bindings at PT when building menu (the menu is not updated often
12188 enough for this to work reliable).
12189 (tool_bar_items): Likewise.
12190 (current_active_maps): Removed unused (and buggy) function.
12191
121922002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12193
12194 * xfns.c (gif_load): Use correct width and height for GIF images.
12195
121962002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
12197
12198 * floatfns.c (Fatan): Accept an optional second arg and call
12199 atan2 if passed 2 args.
12200
122012002-02-18 Jason Rumney <jasonr@gnu.org>
12202
12203 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
12204
122052002-02-17 Jason Rumney <jasonr@gnu.org>
12206
12207 * w32term.c (x_autoselect_window_p): New variable.
12208 (syms_of_w32term): DEFVAR_BOOL and initialize it.
12209 (note_mouse_movement): Use it.
12210
12211 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
12212
12213 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
12214
12215 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
12216 New variables.
12217 (syms_of_w32fns): Intern and staticpro them.
12218 (x_frame_parms) <"fullscreen">: New parameter.
12219 (x_fullscreen_move, x_set_fullscreen): New functions.
12220 (x_set_frame_parameters): Support Qfullscreen.
12221 (x_real_positions): Save x/y_pixels_diff frame params.
12222 (x_figure_window_size): Support full-screen frames.
12223 (Fx_create_frame): Default the fullscreen parameter.
12224
12225 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
12226 (x_fullscreen_adjust): New functions.
12227 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
12228 fullscreen. Call x_check_fullscreen_move, and set the
12229 want_fullscreen member of output_data.w32
12230 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
12231
12232 * w32term.h: New enum for FULLSCREEN_* constants.
12233 (struct w32_output): New members want_fullscreen, x_pixels_diff,
12234 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
12235 (x-fullscreen-adjust): New prototype.
12236
122372002-02-17 Kim F. Storm <storm@cua.dk>
12238
12239 * frame.c: (Vmouse_highlight): New variable.
12240 (syms_of_frame): DEFVAR_LISP it.
12241
12242 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 12243
048addec 12244 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 12245
048addec
JD
12246 * xterm.c (disable_mouse_highlight): Removed variable.
12247 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
12248 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
12249 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
12250 and on after keyboard input.
12251 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 12252
048addec 12253 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 12254
048addec
JD
12255 * msdos.c (disable_mouse_highlight): Removed variable.
12256 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
12257 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
12258 (internal_terminal_init): Initialize mouse_face_hidden.
12259 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
12260 and on after keyboard input.
4f1b1854 12261
048addec 12262 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 12263
048addec
JD
12264 * w32term.c (disable_mouse_highlight): Removed variable.
12265 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
12266 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
12267 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
12268 and on after keyboard input.
12269 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 12270
048addec 122712002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 12272
048addec
JD
12273 * msdos.c (last_mouse_window): New variable.
12274 (dos_rawgetc): Fix last change--if the mouse is in the same window
12275 as recorded in last_mouse_window, don't select this window.
5cb6905d 12276
048addec 12277 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 12278
048addec
JD
12279 * msdos.c (x_autoselect_window_p): New variable.
12280 (syms_of_msdos): Defvar it.
12281 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
12282 which the last mouse movement occured, unless it is already selected.
437dfb9f 12283
048addec
JD
12284 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
12285 New variables.
12286 (syms_of_xdisp): DEVFAR them.
12287 (hscroll_window_tree): Use automatic_hscroll_margin and
12288 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 12289
048addec 122902002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 12291
048addec
JD
12292 * xterm.c (x-autoselect-window): New variable.
12293 (note_mouse_movement): Use it.
9f696a00 12294
048addec 12295 * keyboard.c: Do not include "systime.h" twice.
d57966d7 12296
048addec 122972002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 12298
048addec 12299 * puresize.h (BASE_PURESIZE): Increase to 9/5.
d57966d7 12300
048addec 12301 * alloc.c (NSTATICS): Increase to 1280.
74779f52 12302
048addec 123032002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 12304
048addec 12305 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 12306
048addec
JD
12307 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
12308 (Vx_super_keysym): New variables.
12309 (syms_of_xterm): DEFVAR_LISP them.
12310 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
12311 variables to determine which keys to use for the various modifiers.
a474d59c 12312
048addec 123132002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 12314
048addec
JD
12315 * window.c: (Vmode_line_in_non_selected_windows): Removed.
12316 (mode_line_in_non_selected_windows): New variable.
12317 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 12318
048addec
JD
12319 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
12320 Use mode_line_in_non_selected_windows.
12321 (mode_line_in_non_selected_windows): Declare extern.
12322 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 12323
048addec 123242002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 12325
048addec
JD
12326 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
12327 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
12328 (Fclear_this_command_keys): Doc fixes.
2d10309f 12329
048addec
JD
12330 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
12331 (update_face_from_frame_parameter): Increment face_change_count
12332 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 12333
048addec
JD
12334 * xdisp.c (QCpropertize): New variable.
12335 (mode_line_proptrans_alist): New variable.
12336 (display_mode_element): New arg PROPS; all calls changed.
12337 Implement this, for strings.
12338 Handle literal output of strings by sharing the
12339 main-line code for strings, using local var `literal'.
12340 Handle :propertize feature.
12341 (syms_of_xdisp): Initialze and staticpro QCpropertize and
12342 mode_line_proptrans_alist.
0b1e6b54 12343
048addec 123442002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 12345
048addec
JD
12346 * window.c: (Vmode_line_in_non_selected_windows): New variable.
12347 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 12348
048addec
JD
12349 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
12350 (CURRENT_MODE_LINE_FACE_ID): Use it.
12351 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 12352
048addec
JD
12353 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
12354 to get mode line face.
e17144de 12355
048addec 123562002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 12357
048addec
JD
12358 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
12359 variables; cus-start.el doesn't need them anymore.
44368f8f 12360
048addec 123612002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 12362
048addec
JD
12363 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
12364 reduction. This fixes a display problem where stray newlines were
12365 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 12366
048addec 123672002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 12368
048addec 12369 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 12370
048addec 12371 * xdisp.c (display_mode_lines): Fix last change.
453c5510 12372
048addec 123732002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 12374
048addec
JD
12375 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
12376 match each other.
12377 (w32_load_system_font): Prevent Cleartype fonts from loading.
12378 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 12379
048addec 123802002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 12381
048addec
JD
12382 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
12383 (CURRENT_MODE_LINE_HEIGHT): Use it.
12384 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 12385
048addec
JD
12386 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
12387 (pos_visible_p, handle_face_prop): Likewise.
12388 (display_mode_lines): Likewise, but for the real selected window.
12389 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 12390
048addec
JD
12391 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
12392 in non-selected windows.
12393 (realize_basic_faces): Realize it.
12394 (syms_of_term): Intern and staticpro it.
308dd672 12395
048addec 123962002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 12397
048addec
JD
12398 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
12399 Changed mail addresses to emacs-devel@gnu.org.
308dd672 12400
048addec 124012002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 12402
048addec
JD
12403 * fileio.c (Fsubstitute_in_file_name): If the file name includes
12404 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 12405
048addec 12406 * floatfns.c (Fround): Doc fix.
3c1e6b46 12407
048addec 124082002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 12409
048addec 12410 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 12411
048addec 124122002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 12413
048addec 12414 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 12415
048addec 124162002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 12417
048addec
JD
12418 * keymap.c (where_is_internal): Only check whether definition is
12419 remapped if it fulfills is_command_symbol.
0065bb74 12420
048addec 124212002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 12422
048addec 12423 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 12424
048addec 12425 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 12426
048addec 124272002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 12428
048addec
JD
12429 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
12430 defining command remapping. Doc updated.
12431 (Flookup_key): Remap command through keymap if KEY is a symbol.
12432 (is_command_symbol): New function.
12433 (Fkey_binding): Use it. New optional argument NO-REMAP.
12434 Doc updated. Callers changed. Perform command remapping via
12435 recursive call unless that arg is non-nil.
12436 (where_is_internal): New argument no_remap. Callers changed.
12437 Call recursively to find original key bindings for a remapped
12438 comand unless that arg is non-nil.
12439 (Fwhere_is_internal): New optional argument NO-REMAP.
12440 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 12441
048addec
JD
12442 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
12443 (is_command_symbol): Added prototype.
0d8466cc 12444
048addec
JD
12445 * keyboard.c (Vthis_original_command): New variable.
12446 (syms_of_keyboard): DEFVAR_LISP it.
12447 (command_loop_1): Set it, and perform command remapping.
15fff01d 12448
048addec 124492002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 12450
048addec 12451 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 12452
048addec 124532002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 12454
048addec 12455 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 12456
048addec 124572002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 12458
048addec 12459 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 12460
048addec 124612002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 12462
048addec 12463 * filelock.c (S_ISLNK): Define if not defined.
3a232704 12464
048addec 124652002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 12466
048addec 12467 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 12468
048addec
JD
12469 * lread.c (read1): Redesign strategy for force_multibyte and
12470 force_singlebyte. Now is_multibyte records whether read_buffer
12471 is multibyte. Encountering any multibyte character makes it so.
4e02881b 12472
048addec 124732002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 12474
048addec
JD
12475 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
12476 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 12477
048addec 124782002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 12479
048addec
JD
12480 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
12481 latter never being defined on GNU/Linux.
749f499f 12482
048addec 124832002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 12484
048addec
JD
12485 * xfaces.c (realize_default_face): Don't set the weight and slant of
12486 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 12487
048addec 124882002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 12489
048addec
JD
12490 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
12491 Call cancel_hourglass unconditionally.
d0fd26dd 12492
048addec
JD
12493 * eval.c (Fsignal): Remove duplicated declaration of
12494 the variable `display_hourglass_p'.
b4c45162 12495
048addec 124962002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 12497
048addec 12498 * editfns.c (region_limit): Nicer error message.
c95eaa61 12499
048addec
JD
12500 * coding.c (decode_composition_emacs_mule):
12501 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 12502
048addec
JD
12503 * callint.c (check_mark): New arg to specify clearer error message.
12504 Callers changed.
c95eaa61 12505
048addec 125062002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 12507
048addec 12508 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 12509
048addec 125102002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 12511
048addec
JD
12512 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
12513 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
12514 Fix doc-strings.
c95eaa61 12515
048addec 125162002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 12517
048addec 12518 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 12519
048addec
JD
12520 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
12521 and scroll_up_aggressively.
c95eaa61 12522
048addec 125232002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 12524
048addec 12525 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 12526
048addec 125272002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 12528
048addec
JD
12529 * textprop.c (Fnext_property_change, Fnext_single_property_change)
12530 (Fprevious_property_change, Fprevious_single_property_change):
12531 Stay within the narrowed-buffer boundaries.
e2c3786a 12532
048addec 125332002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 12534
048addec
JD
12535 * term.c (Ftty_display_color_cells): New function.
12536 (syms_of_term): Defsubr it.
12537 (Ftty_display_color_cells, Ftty_display_color_p): Change the
12538 argument name to DISPLAY. Doc fix.
bf794306 12539
048addec
JD
12540 * dispextern.h: Add prototype for set_tty_color_mode and
12541 tty_setup_colors.
bf794306 12542
048addec 125432002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 12544
048addec
JD
12545 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
12546 If region left to draw is not what was expected, mark the frame as
12547 garbaged.
62582985 12548
048addec
JD
12549 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
12550 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 12551
048addec 125522002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 12553
048addec
JD
12554 * w32term.c (x_update_window_begin): Only hide caret if
12555 w32_use_visible_system_caret is set.
12556 (x_update_window_end): Only show caret if
12557 w32_use_visible_system_caret is set.
12558 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 12559
048addec 12560 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 12561
048addec 125622002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 12563
048addec
JD
12564 * unexelf.c (unexec): Define n so as to cause compilation error
12565 for the code where people have often written n instead of nn.
1e9a6186 12566
048addec 12567 * .gdbinit (hookpost-run): Defined.
1e9a6186 12568
048addec 125692002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 12570
048addec 12571 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 12572
048addec 125732002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 12574
048addec
JD
12575 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
12576 if fullscreen is being set.
7c75be36 12577
048addec 125782002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 12579
048addec
JD
12580 * minibuf.c (Fminibuffer_contents)
12581 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
12582 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 12583
048addec 125842002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 12585
048addec 12586 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 12587
048addec 125882002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 12589
048addec
JD
12590 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
12591 height before comparison.
12592 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 12593
048addec 125942002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 12595
048addec
JD
12596 * w32term.c (w32_system_caret_width): Remove.
12597 (w32_use_visible_system_caret): New user flag.
12598 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
12599 Windows reports a screen reader running.
12600 (x_update_window_begin): Hide the system caret.
12601 (x_update_window_end): Show the system caret.
12602 (x_display_and_set_cursor): Don't draw a cursor when
12603 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 12604
048addec
JD
12605 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
12606 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
12607 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
12608 the user requests it. Use system default width when creating.
12609 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 12610
048addec
JD
12611 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
12612 New window messages.
905cc05a 12613
048addec 126142002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 12615
048addec 12616 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 12617
048addec 126182002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 12619
048addec 12620 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 12621
048addec 126222002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 12623
048addec 12624 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 12625
048addec 126262002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 12627
048addec
JD
12628 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
12629 that Windows returns. If a double check fails, try to guess how
12630 ExtTextOut is going to act.
4d0fa4f3 12631
048addec
JD
12632 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
12633 in place of stricmp.
12634 (w32_list_synthesized_fonts): Removed.
12635 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
12636 (struct enumfont_t): New element; list.
12637 (enum_font_cb2): List all style and charset variations of a font.
12638 (Fw32_select_font): New optional argument; include_proportional.
12639 Exclude vertical fonts. Exclude proportional fonts unless
12640 include_proportional is non-nil.
12641 (w32_enable_synthesized_fonts): Change to a boolean.
12642 (Fw32_send_sys_command): Doc fix.
493faf20 12643
048addec 126442002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 12645
048addec
JD
12646 * dispnew.c (update_frame): Move the variable `tem' to the block
12647 where it is used.
4971e491 12648
048addec 126492002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 12650
048addec
JD
12651 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
12652 call to face-set-after-frame-default.
4971e491 12653
048addec 126542002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 12655
048addec
JD
12656 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
12657 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 12658
048addec 126592002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 12660
048addec
JD
12661 * window.c (enlarge_window): When exceeding size of parent,
12662 directly delete all the siblings instead of trying to resize it.
201c831a 12663
048addec 126642002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 12665
048addec 12666 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 12667
048addec 126682002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 12669
048addec 12670 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 12671
048addec 126722002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 12673
048addec
JD
12674 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
12675 is invisible. This can happen if cursor is on top line of a
12676 window, and we switch to a buffer with a header line.
d77fbc16 12677
048addec 12678 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 12679
048addec 126802002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 12681
048addec
JD
12682 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
12683 `dont_resize' only when used.
61e3b944 12684
048addec 12685 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 12686
048addec 126872002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 12688
048addec
JD
12689 * xdisp.c (display_mode_element): When computing charpos, depend
12690 on multibyteness of elt, not the text in field.
8af01033 12691
048addec 126922002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 12693
048addec
JD
12694 * buffer.c (Fkill_all_local_variables):
12695 Increment `update_mode_lines' only once.
7363986a 12696
048addec 126972002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 12698
048addec
JD
12699 * lisp.h (adjust_after_replace_noundo)
12700 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 12701
048addec 12702 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 12703
048addec 127042002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 12705
048addec
JD
12706 Support for the --color command-line argument and tty-color-mode
12707 frame parameter:
f1a85b89 12708
048addec
JD
12709 * term.c (tty_default_color_capabilities, tty_setup_colors)
12710 (set_tty_color_mode): New functions.
12711 (term_init): Call tty_default_color_capabilities.
12712 (Qtty_color_mode_alist): New variable.
12713 (syms_of_term): Intern and staticpro it.
f1a85b89 12714
048addec
JD
12715 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
12716 frames.
12717 (do_switch_frame): For termcap frames, switch the tty
12718 color mode as specified by the frame's parameters.
12719 (Qtty_color_mode): New variable.
12720 (syms_of_frame): Intern and staticpro it.
3a62677f 12721
048addec
JD
12722 * emacs.c (USAGE2): Add the --color option.
12723 (standard_args): Ditto.
72244db2 12724
048addec
JD
127252002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12726
12727 * xterm.h (struct x_output): New members want_fullscreen,
12728 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
12729 y_pixels_outer_diff.
12730 New enum for FULLSCREEN_* constants.
12731 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
12732 is NULL.
12733 (x_fullscreen_adjust): Add prototype.
3a62677f 12734
048addec
JD
12735 * emacs.c (USAGE2): Add the new full-screen arguments.
12736 (standard_args): Ditto.
3a62677f 12737
048addec
JD
12738 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
12739 New variables.
12740 (syms_of_xfns): Intern and staticpro them.
12741 (x_frame_parms) <"fullscreen">: New parameter.
12742 (x_fullscreen_move, x_set_fullscreen): New functions.
12743 (x_set_frame_parameters): Support for Qfullscreen.
12744 (x_real_positions): More accurate computation of the frame position.
12745 (x_figure_window_size): Support full-screen frames.
12746 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 12747
048addec
JD
12748 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
12749 (XTread_socket) <Expose>: Call x_check_fullscreen.
12750 <ConfigureNotify>: Don't resize to fullscreen.
12751 Call x_check_fullscreen_move, and set the want_fullscreen member of
12752 output_data.x.
3a62677f 12753
048addec 127542002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 12755
048addec
JD
12756 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
12757 for mice with more than 3 buttons.
b8523839 12758
048addec
JD
12759 * w32term.c (parse_button): New parameter xbutton. Callers changed.
12760 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 12761
048addec
JD
12762 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
12763 (syms_of_w32fns): DEFVAR_BOOL it.
12764 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 12765
048addec 127662002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 12767
048addec 12768 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 12769
048addec 127702002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 12771
048addec 12772 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 12773
048addec 127742002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 12775
048addec
JD
12776 * .gdbinit (xbuffer): Remove address operator since data is now a
12777 pointer.
c93674bb 12778
048addec 127792002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 12780
048addec 12781 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 12782
048addec 12783 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 12784
048addec 127852002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 12786
048addec
JD
12787 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
12788 when checking for multiple frames.
91175673 12789
048addec 127902002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 12791
048addec
JD
12792 * window.c (delete_window): Rewrite the code for changing the
12793 selected window to handle the case where WINDOW is not a leaf.
91175673 12794
048addec 127952002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 12796
048addec
JD
12797 * process.c (send_process): Set src_multibyte to 1 after the call
12798 top setup_coding_system, not before the call.
e0fead5d 12799
048addec 128002002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 12801
048addec
JD
12802 * xmenu.c (set_frame_menubar, xmenu_show):
12803 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 12804
048addec
JD
12805 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
12806 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 12807
048addec 128082002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 12809
048addec 12810 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 12811
048addec 12812 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 12813
048addec 12814 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 12815
048addec 128162002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 12817
048addec
JD
12818 * insdel.c (make_gap_larger): Make sure buffer size does not
12819 overflow range of int.
62854fe2 12820
048addec 128212002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 12822
048addec
JD
12823 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
12824 OVERLAPS_P.
656f46bb 12825
048addec 12826 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 12827
048addec
JD
12828 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
12829 to the left or to the right of the pointer, put it against
12830 the left screen edge.
12831 (x_frame_parms): Add missing braces around initializer.
036e218d 12832
048addec
JD
12833 * w32term.c (x_setup_relief_colors): Don't compute an image's
12834 background color if it doesn't have a Pixmap.
12835 (notice_overwritten_cursor): Don't depend on
12836 output_cursor and updated_area. Compare pixel coordinates with
12837 window's cursor pixel coordinates.
12838 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
12839 Call notice_overwritten_cursor with new arg list.
12840 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
12841 unconditionally.
12842 (x_draw_image_relief): Use predefined macro instead of
12843 constant when the value of `tool_bar_button_relief' is negative.
036e218d 12844
048addec 12845 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 12846
048addec 128472002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 12848
048addec 12849 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 12850
048addec 128512002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 12852
048addec
JD
12853 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
12854 (Fkey_binding): Try the `keymap' property map first.
12855 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
12856 minor mode bindings.
90647b07 12857
048addec 128582002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 12859
048addec 12860 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 12861
048addec 128622002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 12863
048addec
JD
12864 * keyboard.c (read_key_sequence): Handle the keymap property
12865 before minor mode maps.
9fbc32aa 12866
048addec
JD
12867 * editfns.c (Fformat): Update thissize from field_width
12868 based on the actual width, in the string case.
036e218d 12869
048addec 128702002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 12871
048addec
JD
12872 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
12873 when used as truth value to prevent gcc warnings.
9fbc32aa 12874
048addec
JD
12875 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
12876 * w32proc.c: Include <config.h>.
9fbc32aa 12877
048addec 128782002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 12879
048addec
JD
12880 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
12881 not EMACS_INT, to make them compatible with DEFVAR_INT.
12882 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 12883
048addec 128842002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 12885
048addec
JD
12886 * print.c (print_object): Test print_escape_nonascii only for
12887 unibyte strings.
12888 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
12889 when outputting to a multibyte buffer.
9fbc32aa 12890
048addec 128912001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 12892
048addec
JD
12893 * print.c (print_object): In multibyte string, use hex escapes.
12894 Use octal only for unibyte strings.
12895 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 12896
048addec
JD
12897 * lread.c (read_escape): New arg BYTEREP for reporting whether
12898 escape forces unibyte or multibyte.
12899 (read1): When reading a string, take note of that info.
0142178a 12900
048addec 129012001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 12902
048addec
JD
12903 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
12904 comparison to test lisp value returned by Fget.
d4824a5d 12905
048addec 129062001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 12907
048addec 12908 * lisp.h (max_specpdl_size): Add declaration.
b1356234 12909
048addec 12910 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 12911
048addec
JD
12912 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
12913 Handle modifier bits. Correct typo in error message.
99e380ee 12914
048addec 129152001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 12916
048addec
JD
12917 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
12918 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
12919 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
12920 Update calls to Fdefine_abbrev.
12921 (write_abbrev): Update for changed data format.
12922 Don't list "system" abbrevs.
12923 (Fexpand_abbrev): Update use count with new data format.
12924 (describe_abbrev): Update for changed data format.
12925 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 12926
048addec 12927 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 12928
048addec 12929 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 12930
048addec
JD
12931 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
12932 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 12933
048addec
JD
12934 * keymap.c (Flookup_key): Error message if key has wrong data type.
12935 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
12936 (exclude_key): New variable.
59a86c99 12937
048addec 129382001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 12939
048addec
JD
12940 * xterm.c (x_setup_relief_colors): Don't compute an image's
12941 background color if it doesn't have a Pixmap.
eb77a5f4 12942
048addec
JD
12943 * xterm.c (notice_overwritten_cursor): Don't depend on
12944 output_cursor and updated_area. Compare pixel coordinates with
12945 window's cursor pixel coordinates.
12946 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
12947 Call notice_overwritten_cursor with new arg list.
12948 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
12949 unconditionally.
eb77a5f4 12950
048addec
JD
12951 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
12952 height of the cursor line to the amount to scroll.
eb77a5f4 12953
048addec 129542001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 12955
048addec
JD
12956 * intervals.c (set_point_both): The position after an invisible,
12957 intangible character is not an acceptable stopping point.
bb313871 12958
048addec 129592001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 12960
048addec
JD
12961 * window.c (enlarge_window): In new preserve_before code, convert
12962 CURBEG from lisp object to integer before doing arithmetic.
6052529b 12963
048addec 129642001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 12965
048addec 12966 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 12967
048addec 129682001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 12969
048addec
JD
12970 * keyboard.c (record_char): Ignore duplicate help-echo events only
12971 separated by mouse-movement. When tracking mouse, only record
12972 first and last mouse-movement event in same window.
12973 Don't record mouse-movement events in keyboard macros.
3ce081f5 12974
048addec 129752001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 12976
048addec
JD
12977 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
12978 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 12979
048addec
JD
12980 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
12981 instead of Fstring_as_unibyte.
9fabb2f5 12982
048addec 129832001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 12984
048addec 12985 The following changes remove mocklisp support:
9fabb2f5 12986
048addec 12987 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 12988
048addec
JD
12989 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
12990 `Qmocklisp' and `Qmocklisp_arguments'.
12991 Remove prototype of syms_of_mocklisp.
2fa0eedf 12992
048addec 12993 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 12994
048addec
JD
12995 * callint.c: Do not include mocklisp.h.
12996 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 12997
048addec
JD
12998 * eval.c: Remove variables `Qmocklisp_arguments',
12999 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
13000 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
13001 Do not test for mocklisp case.
13002 (Fwhile): Remove unused variable `tem'.
13003 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 13004
048addec 13005 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 13006
048addec 13007 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 13008
048addec 13009 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 13010
048addec 130112001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 13012
048addec
JD
13013 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
13014 to the left or to the right of the pointer, put it against
13015 the left screen edge.
6108b49c 13016
048addec 130172001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 13018
048addec
JD
13019 * Makefile.in (distclean): Remove .gdbinit if we are building
13020 outside the source tree.
5eea19a4 13021
048addec 130222001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 13023
048addec 13024 * w32.c (emacs_root_dir): New function.
5eea19a4 13025
048addec 13026 * msdos.c (emacs_root_dir): New function.
5eea19a4 13027
048addec
JD
13028 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
13029 of the current drive as the fallback for default_directory.
438e57dd 13030
048addec
JD
13031 * dired.c (file_name_completion): Run the elements of
13032 completion-ignored-extensions through ENCODE_FILE.
438e57dd 13033
048addec
JD
13034 * lisp.h (scmp): Remove prototype, since it's now a static
13035 function private to dired.c.
c88e5347 13036
048addec 130372001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 13038
048addec
JD
13039 * dired.c (scmp): Function moved from minibuf.c.
13040 Delete multibyte handling--used only on encoded strings.
59ce1461 13041
048addec 13042 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 13043
048addec 13044 * fns.c (merge): Add QUIT call.
59ce1461 13045
048addec 130462001-12-18 Dave Love <fx@gnu.org>
8727d588 13047
048addec
JD
13048 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
13049 language/georgian.el.
8727d588 13050
048addec 130512001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 13052
048addec
JD
13053 * Makefile.in (lisp, shortlisp): Synchronize with changes to
13054 lisp/Makefile.in:DONTCOMPILE.
cc63037e 13055
048addec 130562001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 13057
048addec
JD
13058 * xdisp.c (window_box_height): Do not return negative values.
13059 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 13060
048addec 13061 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 13062
048addec 13063 * term.c (keys): Likewise.
deece6f5 13064
048addec 13065 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 13066
048addec 130672001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 13068
048addec
JD
13069 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
13070 patch (COMPOSING_P, not COMPOSING).
28ff4293 13071
048addec 130722001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 13073
048addec 13074 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 13075
048addec
JD
13076 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
13077 before calling decode_coding.
9b46de40 13078
048addec 13079 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 13080
048addec
JD
13081 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
13082 instead of only for COMPOSITION_DISABLED.
9b46de40 13083
048addec 130842001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 13085
048addec 13086 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 13087
048addec 13088 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 13089
048addec
JD
13090 * buffer.h (struct buffer): New field `display_error_modiff'.
13091 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 13092
048addec 13093 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 13094
048addec
JD
13095 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
13096 Call redisplay_window, but not if display_error_modiff field says no.
13097 (redisplay_window_error): New function.
13098 (displayed_buffer): New variable.
13099 (redisplay_internal, redisplay_windows): Call the new functions
13100 instead of redisplay_window directly.
2cd23960 13101
048addec 131022001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 13103
048addec 13104 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 13105
048addec 131062001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 13107
048addec 13108 * makefile.w32-in (EMACSLOADPATH): Define.
f9711de4 13109 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
048addec 13110 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 13111
048addec 131122001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 13113
048addec
JD
13114 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
13115 parameter have a numeric value all the time.
f6fa0866 13116
048addec 13117 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 13118
048addec 131192001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 13120
048addec 13121 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 13122
048addec
JD
13123 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
13124 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 13125
048addec 131262001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 13127
048addec
JD
13128 * xdisp.c (move_it_vertically_backward): Change heuristic
13129 for the case that we didn't move far enough initially.
91c153e2 13130
048addec
JD
13131 * window.c (Frecenter): Simplify computation in the case of window
13132 system frames and ARG < 0; use window_box_height.
65b7d3e7 13133
048addec 131342001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 13135
048addec
JD
13136 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
13137 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 13138
048addec 131392001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 13140
048addec
JD
13141 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
13142 arg is negative.
be676094 13143
048addec 131442001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 13145
048addec
JD
13146 * m/hp800.h: Split the __hpux conditional into the parts
13147 that are right for GNU/Linux too and the parts that are not.
13148 Use the former if GNU_LINUX.
13149 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 13150
048addec 13151 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 13152
048addec 131532001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 13154
048addec
JD
13155 * macros.c, msdos.c, w16select.c: Change doc-string comments to
13156 `new style' [w/`doc:' keyword].
032a857d 13157
048addec 131582001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 13159
048addec
JD
13160 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
13161 before using.
b6270150 13162
048addec 131632001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 13164
048addec
JD
13165 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
13166 keyword].
98cbb9fa 13167
048addec 131682001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 13169
048addec 13170 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 13171
048addec 13172 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 13173
048addec 131742001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 13175
048addec
JD
13176 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
13177 Add comment to explain where the struct came from.
13178 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
13179 (add_menu_item): Process pop-up menus first to avoid memory leak.
13180 (add_menu_item, w32_menu_display_help): Use `help' field as
13181 Lisp_Object.
13182 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 13183
048addec 131842001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 13185
048addec 13186 * COPYING: Moved back.
fa336b91 13187
048addec
JD
13188 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
13189 Add parentheses around && within ||.
077907d4 13190
048addec 13191 * indent.c (compute_motion): Likewise.
aa2af83a 13192
048addec 13193 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 13194
048addec
JD
13195 * coding.c (setup_coding_system, shrink_encoding_region)
13196 (Fdecode_sjis_char): Likewise.
60a653f1 13197
048addec 131982001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 13199
048addec
JD
13200 * xdisp.c (display_mode_element): Don't read past end of string if
13201 it ends with '%'.
60a653f1 13202
048addec
JD
13203 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
13204 can hold.
60a653f1 13205
048addec
JD
13206 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
13207 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
13208 type changed to Lisp_Object.
13209 (syms_of_data): DEFVAR_LISP them.
60a653f1 13210
048addec 132112001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 13212
048addec
JD
13213 * callproc.c (init_callproc): Set Vdata_directory based on the source
13214 location whenever Emacs was run uninstalled.
60a653f1 13215
048addec 132162001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 13217
048addec
JD
13218 * config.in (HAVE_WORKING_VFORK): New #undefs.
13219 * process.c (create_process):
13220 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
13221 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
13222 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
13223 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
13224 * m/intel386.h (HAVE_VFORK): Likewise.
13225 * m/mips-siemens.h (HAVE_VFORK): Likewise.
13226 * m/mips.h (HAVE_VFORK): Likewise.
13227 * s/freebsd.h (vfork): Remove #define.
13228 * s/lynxos.h (HAVE_VFORK): Remove #undef.
13229 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 13230
048addec 132312001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 13232
048addec
JD
13233 * s/hpux10.h (random): Add undef.
13234 (HAVE_RANDOM): Define it just once.
60a653f1 13235
048addec 132362001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13237
048addec 13238 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 13239
048addec 132402001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 13241
048addec
JD
13242 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
13243 scroll bars of the frame before deleting the frame itself. If the
13244 frame has a widget, delete the frame with XtDestroyWidget, and do
13245 not call XDestroyWindow before that.
60a653f1 13246
048addec 132472001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 13248
048addec 13249 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 13250
048addec 13251 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 13252
048addec 132532001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 13254
048addec
JD
13255 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
13256 excessively large.
60a653f1 13257
048addec
JD
13258 * insdel.c (make_gap_larger): New function.
13259 (make_gap_smaller): New function.
13260 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
13261 Call make_gap_smaller if arg is negative.
60a653f1 13262
048addec 132632001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13264
048addec
JD
13265 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
13266 Pass a dummy argument when calling interrupt_signal.
13267 (parse_menu_item): Mark disabled items before checking for empty def.
13268 (read_char_minibuf_menu_prompt): Make safety more visible.
13269 (read_key_sequence): Add a `first_unbound' variable.
13270 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
13271 unbound prefix as soon as we can detect it.
60a653f1 13272
048addec
JD
13273 * doc.c (Fsnarf_documentation): Add prototype.
13274 (get_doc_string): Handle negative arguments.
13275 (Fdocumentation): Use AREF and ASIZE.
13276 Move the calls to get_doc_string to a single place.
13277 Don't confuse an interactive-spec for a docstring reference.
13278 (Fdocumentation_property): Take advantage of the fact that
13279 get_doc_string now ignores the sign of the docstring position.
60a653f1 13280
048addec 13281 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 13282
048addec 132832001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13284
a64387ee 13285 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
60a653f1 13286
048addec 132872001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13288
048addec
JD
13289 * xterm.c (x_draw_image_relief): Use predefined macro instead of
13290 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 13291
048addec 132922001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 13293
048addec
JD
13294 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
13295 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 13296
048addec 13297 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 13298
048addec 132992001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13300
048addec 13301 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 13302
048addec 133032001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 13304
048addec 13305 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 13306
048addec 133072001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 13308
f63fd14e 13309 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 13310
048addec
JD
13311 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
13312 [!WM_MOUSELEAVE]: Define.
60a653f1 13313
048addec
JD
13314 * w32menu.c (current_popup_menu, get_menu_item_info):
13315 (set_menu_item_info): New vars.
13316 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
13317 (w32_menu_show): Set current_popup_menu.
13318 (add_menu_item): Allocate new strings for owner-drawn menu items
13319 and help strings.
13320 Use owner-draw for disabled menu items again.
13321 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
13322 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 13323
048addec
JD
13324 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
13325 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
13326 <WM_EXITMENULOOP>: Free menu strings.
13327 <WM_MOUSELEAVE>: Stop tracking mouse.
13328 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 13329
048addec
JD
13330 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
13331 and mouse face.
60a653f1 13332
048addec 133332001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 13334
048addec
JD
13335 The following changes add left-fringe and right-fringe
13336 frame parameters to adjust fringe widths, or remove one or
13337 both fringes.
60a653f1 13338
048addec
JD
13339 * frame.h (struct frame): Remove trunc_area_pixel_width and
13340 trunc_area_cols fields.
13341 (Qleft_fringe, Qright_fringe): Declare.
13342 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 13343
048addec
JD
13344 * frame.c (Qleft_fringe, Qright_fringe): New vars.
13345 (syms_of_frame): Initialize them.
60a653f1 13346
048addec
JD
13347 * window.c (coordinates_in_window): Handle separate left and right
13348 fringe widths.
60a653f1 13349
048addec
JD
13350 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
13351 and fringe_cols fields.
13352 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
13353 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
13354 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
13355 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
13356 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
13357 (x_compute_fringe_widths): Add prototype.
60a653f1 13358
048addec
JD
13359 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
13360 fill fringe evenly with small dashes.
f63fd14e 13361 (x_draw_fringe_bitmap): Clear background if necessary. Align and
048addec
JD
13362 clip the new ZV bitmap to avoid jitter between rows.
13363 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
13364 background. Don't draw fringe bitmaps if fringe width is zero.
13365 (x_compute_fringe_widths): New function.
13366 (x_new_font, x_set_window_size_1): Use it.
60a653f1 13367
048addec
JD
13368 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
13369 (x_set_frame_parameters): Process `font' parameter before other
13370 parameters as fringe widths depend on it.
13371 (x_set_fringe_width): New function.
13372 (x_figure_window_size): Use x_compute_fringe_widths.
13373 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
13374 parameters.
60a653f1 13375
048addec
JD
13376 * widget.c (set_frame_size): Use x_compute_fringe_widths.
13377 (EmacsFrameSetCharSize): Ditto.
60a653f1 13378
048addec
JD
13379 * w32term.h: Merged changes from xterm.h.
13380 * w32term.c: Merged changes from xterm.c.
13381 * w32fns.c: Merged changes from xfns.c.
60a653f1 13382
048addec 133832001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13384
048addec 13385 * COPYING: Removed.
60a653f1 13386
048addec 133872001-11-29 Dave Love <fx@gnu.org>
60a653f1 13388
048addec
JD
13389 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
13390 extra extra slot.
13391 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 13392
048addec 133932001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13394
048addec
JD
13395 * fileio.c (file-name-coding-system)
13396 (default-file-name-coding-system): Doc fix (links to referenced
13397 variables added).
60a653f1 13398
048addec 133992001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13400
048addec
JD
13401 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
13402 Add dummy uses of gcproN variables.
60a653f1 13403
048addec
JD
13404 * category.c (describe_category, describe_category_1)
13405 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
13406 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 13407
048addec 134082001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 13409
048addec 13410 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 13411
048addec
JD
13412 * Makefile.in (lispdir): New variable, referring to build dir.
13413 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 13414
048addec 134152001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 13416
048addec
JD
13417 * w32menu.c (w32_menu_display_help): Actually add the new argument
13418 OWNER.
60a653f1 13419
048addec 134202001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 13421
048addec
JD
13422 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
13423 menu items. From David Ponce <dponce@wanadoo.fr>.
13424 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
13425 conditionally.
f63fd14e 13426 (w32_menu_display_help): New argument OWNER. Rewritten to store a
048addec 13427 help event in the owner frame's keyboard buffer.
60a653f1 13428
048addec
JD
13429 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
13430 (Fx_show_tip): Don't subtract last width from row width.
13431
13432 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
13433 (w32_read_socket): Use EQ to compare frames.
60a653f1 13434
048addec 134352001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 13436
048addec
JD
13437 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
13438 OVERLAPS_P.
60a653f1 13439
048addec 134402001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13441
048addec
JD
13442 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
13443 `gcpro3' and `gcpro4'.
60a653f1 13444
048addec 13445 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 13446
048addec 134472001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13448
048addec 13449 * ccl.c: Use AREF and ASIZE.
60a653f1 13450
048addec 134512001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13452
048addec
JD
13453 * lisp.h (run_hook_list_with_args): Remove.
13454 (LIST_END_P): Fix call to wrong_type_argument.
13455 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 13456
048addec 134572001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13458
048addec
JD
13459 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
13460 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 13461
048addec
JD
13462 * eval.c: Use AREF and ASIZE.
13463 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 13464
048addec
JD
13465 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
13466 which match the end of the file-name.
13467 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
13468 is not a valid env var, but leave it as is instead.
60a653f1 13469
048addec
JD
13470 * keymap.c (access_keymap): Handle t bindings like nil bindings.
13471 Make nil bindings in char-tables transparent.
13472 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 13473
048addec 134742001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 13475
048addec
JD
13476 * textprop.c (set_text_properties_1): Allow START, END in either order.
13477 Do nothing if range is empty.
60a653f1 13478
048addec 13479 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 13480
048addec
JD
13481 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
13482 (clean): Not here.
60a653f1 13483
048addec 134842001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13485
048addec
JD
13486 * textprop.c (set_text_properties_1): Clearly mark that the
13487 interval should not be empty.
60a653f1 13488
048addec
JD
13489 * intervals.c (graft_intervals_into_buffer):
13490 Don't call set_text_properties_1 on an empty interval.
60a653f1 13491
048addec 134922001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 13493
048addec 13494 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 13495
048addec
JD
13496 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
13497 don't lose the data in it.
60a653f1 13498
048addec 134992001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 13500
048addec 13501 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 13502
c62aec78 13503 * buffer.c (Fkill_buffer): Likewise.
60a653f1 13504
c62aec78 13505 * print.c (temp_output_buffer_setup): Likewise.
60a653f1 13506
048addec 135072001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13508
048addec 13509 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 13510
048addec 135112001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 13512
048addec
JD
13513 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
13514 Niemitalo <kon@iki.fi>.
60a653f1 13515
048addec 135162001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 13517
048addec 13518 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 13519
048addec
JD
13520 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
13521 (Fx_show_tip): Block input during frame creation.
13522 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 13523
048addec 135242001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 13525
048addec
JD
13526 * lread.c (Fload): Detect recursive load error for more than 3
13527 nestings of the same file.
13528 (Vrecursive_load_depth_limit): Variable deleted.
13529 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 13530
048addec 135312001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 13532
048addec
JD
13533 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
13534 mouse position if either left or top is not specified.
60a653f1 13535
048addec
JD
13536 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
13537 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
13538 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
13539 (my_create_tip_window): Assign tip_window.
13540 (x_create_tip_frame): Use same defaults as X.
13541 (compute_tip_xy): Remove unused variable. Use full screen width.
f63fd14e 13542 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 13543
048addec
JD
13544 * w32term.c (x_after_update_window_line): Doc fix.
13545 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
13546 frames.
13547 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 13548
048addec
JD
13549 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
13550 for all Windowed systems.
60a653f1 13551
048addec 135522001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 13553
048addec
JD
13554 * msdos.c (IT_clear_screen): If the frame's faces are not yet
13555 realized, use the initial screen colors to clear the screen.
60a653f1 13556
048addec 135572001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13558
048addec
JD
13559 * textprop.c (Fset_text_properties): Remove unused variables
13560 `unchanged', `prev_changed', `s' and `len'.
60a653f1 13561
048addec
JD
13562 * search.c (Freplace_match): Remove unused variable `inslen'.
13563
13564 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
13565
135662001-11-22 Jason Rumney <jasonr@gnu.org>
13567
13568 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
13569 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
13570 (my_create_tip_window): New function.
13571 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
13572 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
13573
135742001-11-20 Jason Rumney <jasonr@gnu.org>
13575
13576 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
13577 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
13578
13579 * w32fns.c (Vw32_system_coding_system): Remove.
13580 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
13581
135822001-11-19 Stefan Monnier <monnier@cs.yale.edu>
13583
13584 * fileio.c (Fwrite_region): Move choose_write_coding_system to
13585 after build_annotations.
13586
13587 * syntax.c (describe_syntax): Add dummy arg.
13588 (describe_syntax_1): Update call to describe_vector.
13589
13590 * category.c (describe_category): Add dummy arg.
13591 (describe_category_1): Update call to describe_vector.
13592
13593 * keymap.c (Fdescribe_vector): Add `describer' parameter.
13594 (describe_command, describe_translation): Add dummy second param.
13595 (describe_map): Call elt_describer with two arguments.
13596 (describe_vector_princ): Add `fun' parameter.
13597 Call it instead of the hardcoded `princ'.
13598 (describe_vector): Add arg `args'.
13599 Pass it as a new second argument to elt_describer.
60a653f1 13600
048addec 13601 * keymap.h (describe_vector): Update prototype.
60a653f1 13602
048addec
JD
13603 * frame.c: Don't include keymap.h any more.
13604 (keys_of_frame): Remove.
60a653f1 13605
048addec 13606 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 13607
048addec 13608 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 13609
048addec 136102001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 13611
048addec
JD
13612 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
13613 if defined, 0 otherwise.
13614 (MAP_FAILED): Define if not defined and use it to test mmap failure.
13615 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 13616
048addec 136172001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 13618
048addec 13619 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 13620
048addec 136212001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 13622
048addec
JD
13623 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
13624 (x_draw_bar_cursor): If the background color of the glyph under
13625 the cursor equals the frame's cursor color, use the glyph's
13626 foreground color for drawing the bar cursor.
13627 (x_after_update_window_line): Clear internal border in different
13628 circumstances.
13629 (w32_set_vertical_scroll_bar): Check for width and height > 0.
13630 (w32_draw_relief_rect): Correct relief by 1 pixel.
13631 (x_set_glyph_string_background_width):
13632 Set extends_to_end_of_line_p if the row's fill_line_p is set and
13633 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
13634 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
13635 if cursor_in_non_selected_windows is false.
13636 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
13637 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
13638 Notice if cursor gets overwritten.
13639 (notice_overwritten_cursor): Renamed from
13640 note_overwritten_text_cursor. Rewritten to take glyph widths
13641 into account, and to take X positions as parameters.
13642 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
13643 around call to x_draw_glyphs.
13644 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
13645 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
13646 color to use for image glyph reliefs.
13647 (x_draw_image_relief): Accept zero tool_bar_button_relief.
13648 (glyph_rect): Remove unused variable `area'.
60a653f1 13649
048addec
JD
13650 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
13651 some items.
13652 (x_set_internal_border_width): Set frame garbaged when window
13653 doesn't exist yet.
13654 (Fx_create_frame): Accept zero tool_bar_button_relief.
13655 (x_clear_image_1, four_corners_best, image_background)
13656 (image_background_transparent): New functions.
13657 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
13658 (gs_format): Add `:background' entry.
13659 (lookup_image): Set IMG's background color if specified.
13660 (pbm_load, xbm_load_image, png_load): Set IMG's background field
13661 when appropriate.
13662 (x_clear_image_1): Reset `background_valid' and
13663 `background_transparent_valid' fields.
13664 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
13665 calculating it here. Set IMG's background_transparent field.
13666 (enum xpm_keyword_index): Add XPM_BACKGROUND.
13667 (enum png_keyword_index): Add PNG_BACKGROUND.
13668 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
13669 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
13670 (enum gif_keyword_index): Add GIF_BACKGROUND.
13671 (enum gs_keyword_index): Add GS_BACKGROUND.
13672 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
13673 Pre-calculate image background color where necessary.
13674 (x_create_x_image_and_pixmap, xbm_load, gs_load):
13675 Use display info's n_cbits entry for screen depth.
13676 (Fx_show_tip): Remove unused variables `buffer', `top',
13677 `left', `max_width' and `max_height'.
60a653f1 13678
048addec 13679 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 13680
048addec 136812001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 13682
048addec 13683 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 13684
048addec 136852001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13686
048addec 13687 * frame.c (Fframe_live_p): Doc fix.
60a653f1 13688
048addec 136892001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 13690
048addec
JD
13691 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
13692 (message_dolog_marker3): New static variables hold three markers.
13693 (syms_of_xdisp): Initialize and staticpro them.
13694 (message_dolog): Use message_dolog_marker1..3 instead of
13695 allocating markers each time. Unchain them when done.
60a653f1 13696
048addec 136972001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 13698
048addec 13699 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 13700
048addec 137012001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 13702
048addec 13703 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 13704
048addec 137052001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 13706
048addec 13707 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 13708
048addec 137092001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 13710
048addec 13711 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 13712
048addec 137132001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 13714
048addec
JD
13715 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
13716 with invalid position.
60a653f1 13717
048addec 137182001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 13719
048addec 13720 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 13721
048addec
JD
13722 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
13723 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
13724 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 13725
048addec 13726 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 13727
048addec 137282001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13729
048addec
JD
13730 * fileio.c (build_annotations): Split off the tail.
13731 (build_annotations_2): New fun. Extracted from build_annotations.
13732 (Fwrite_region): Split the call to build_annotations into two
13733 calls to build_annotations and build_annotations_2.
077907d4 13734
048addec 137352001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 13736
048addec
JD
13737 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
13738 clear_waiting_for_input with argument.
1756e2fb 13739
048addec 13740 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 13741
048addec 13742 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 13743
048addec 13744 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 13745
048addec 13746 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 13747
048addec 137482001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 13749
048addec
JD
13750 * fileio.c (choose_write_coding_system): New fun, extracted
13751 from Fwrite_region.
13752 (Fwrite_region): Use it.
fa336b91 13753
048addec
JD
13754 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
13755 (funcall_lambda, run_hook_with_args): Make static and add prototype.
13756 (ml_apply, find_handler_clause): Add prototype.
fa336b91 13757
048addec 137582001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 13759
048addec 13760 * config.in: Add #undef HAVE_COFF_H.
fa336b91 13761
048addec
JD
13762 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
13763 Required for ISC 4.1.
fa336b91 13764
048addec 137652001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 13766
048addec
JD
13767 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
13768 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 13769
048addec 137702001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 13771
048addec
JD
13772 The following changes are made to clean up the various internal
13773 references to the fringes to actually use the term `fringe' for
13774 them. Previously, they were called `flags areas', `bitmap areas',
13775 `left/right side of windows', or implicitly as `flags' or
13776 `bitmaps':
fa336b91 13777
048addec 13778 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
f63fd14e 13779 Comments fixed. Use renamed symbols.
06e8f738 13780
f63fd14e 13781 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 13782
048addec
JD
13783 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
13784 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
13785 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 13786
048addec 13787 * msdos.c: Comment fix.
9ce647f4 13788
048addec 13789 * w32fns.c: Use renamed symbols.
9b784ab8 13790
f63fd14e 13791 * w32term.c: Comment fixes. Use renamed symbols.
048addec
JD
13792 (fringe_bitmap_type): Renamed from bitmap_type.
13793 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
13794 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
13795 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 13796
f63fd14e 13797 * w32term.h: Comment fixes. Use renamed symbols.
048addec
JD
13798 (fringes_extra): Renamed from flags_areas_extra.
13799 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
13800 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
13801 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
13802 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
13803 (FRAME_X_LEFT_FRINGE_WIDTH):
13804 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
13805 (FRAME_X_RIGHT_FRINGE_WIDTH):
13806 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 13807
048addec 13808 * widget.c: Use renamed symbols.
9f7e52b4 13809
f63fd14e 13810 * window.c: Comment fixes. Use renamed symbols.
048addec 13811 (coordinates-in-window-p): Doc fix.
fa336b91 13812
f63fd14e 13813 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 13814
048addec 13815 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 13816
048addec 13817 * xfns.c: Use renamed symbols.
89512fcd 13818
f63fd14e 13819 * xterm.c: Comment fixes. Use renamed symbols.
048addec
JD
13820 (fringe_bitmap_type): Renamed from bitmap_type.
13821 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
13822 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
13823 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 13824
f63fd14e 13825 * xterm.h: Comment fixes. Use renamed symbols.
048addec
JD
13826 (fringes_extra): Renamed from flags_areas_extra.
13827 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
13828 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
13829 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
13830 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
13831 (FRAME_X_LEFT_FRINGE_WIDTH):
13832 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
13833 (FRAME_X_RIGHT_FRINGE_WIDTH):
13834 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
13835
138362001-11-15 Jason Rumney <jasonr@gnu.org>
13837
13838 * w32menu.c (add-menu-item): Make help_echo and radio buttons
13839 work for most menu items. From David Ponce
13840 <david.ponce@wanadoo.fr>.
13841
138422001-11-15 Gerd Moellmann <gerd@gnu.org>
13843
13844 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
13845 Some x_set_* function expect to be called even if old and new
13846 value are equal.
13847
13848 * xdisp.c (build_desired_tool_bar_string): Accept zero
13849 tool_bar_button_relief.
13850
13851 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
13852
13853 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
13854
13855 * xterm.c (x_draw_bar_cursor): If the background color of the
13856 glyph under the cursor equals the frame's cursor color, use
13857 the glyph's foreground color for drawing the bar cursor.
13858
13859 * dispnew.c (direct_output_forward_char): Fix character/byte
13860 position comparison.
7d18891d 13861
048addec 138622001-11-15 Miles Bader <miles@gnu.org>
d2936d21 13863
048addec
JD
13864 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
13865 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
13866 Update arguments to find_field.
13867 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
13868 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
13869 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
13870 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 13871
048addec 138722001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 13873
048addec 13874 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 13875
048addec
JD
13876 * dispextern.h (image_background, image_background_transparent):
13877 Conditionalize on HAVE_X_WINDOWS.
7d18891d 13878
048addec 138792001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 13880
048addec 13881 * print.c (Fprin1_to_string): Doc fix.
7d18891d 13882
048addec 13883 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 13884
048addec 13885 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 13886
048addec 13887 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 13888
048addec 13889 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 13890
048addec 13891 * eval.c (syms_of_eval): Doc fix.
7d18891d 13892
048addec 13893 * coding.c (syms_of_coding): Doc fix.
7d18891d 13894
048addec 13895 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 13896
048addec 13897 * dispnew.c (syms_of_display): Doc fix.
9474c847 13898
048addec 13899 * category.c (Fget_unused_category): Doc fix.
9474c847 13900
048addec 13901 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 13902
048addec 139032001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 13904
048addec 13905 * print.c (prin1, print): Doc fix.
e3059a5d 13906
048addec 139072001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 13908
048addec
JD
13909 * fontset.h: Remove declarations of variables
13910 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 13911
048addec
JD
13912 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
13913 `Vclip_large_size_font'.
eae936e2 13914
048addec 139152001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 13916
048addec 13917 * w32fns.c: Doc fix.
ddb67bdc 13918
048addec 139192001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 13920
048addec 13921 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 13922
048addec 13923 * fns.c: Doc fix.
6e1b91d7 13924
048addec 13925 * emacs.c: Doc fix.
1c1d3d69 13926
048addec 13927 * coding.c: Doc fix.
1c1d3d69 13928
048addec
JD
13929 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
13930 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
13931 `new style' [w/`doc:' keyword].
b6f4c7ba 13932
048addec 139332001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 13934
048addec
JD
13935 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
13936 LeaveNotify events. Only FocusIn and FocusOut do that now.
13937 (x_display_and_set_cursor): Do display hollow cursors in active
13938 minibuffer windows when they are not selected.
b6f4c7ba 13939
048addec 139402001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 13941
048addec 13942 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
f63fd14e
JB
13943 * w32term.c: Change doc-string comments to `new style'
13944 [w/`doc:' keyword]. Doc fixes.
a89f435d 13945
048addec
JD
13946 * w32fns.c: Don't define max.
13947 (Fx_open_connection): Only execute once.
a4cd0cd7 13948
048addec 139492001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 13950
048addec
JD
13951 * ccl.c: Change macros to use do-while block instead of if-else.
13952 Use braces to follow GNU Coding Standards.
eafb659a 13953
048addec 139542001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 13955
048addec 13956 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 13957
048addec 13958 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 13959
048addec
JD
13960 * insdel.c (replace_range): Use adjust_markers_for_replace
13961 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 13962
048addec 13963 * intervals.h: Declare set_text_properties and set_text_properties_1.
a4cd0cd7 13964
048addec
JD
13965 * textprop.c (set_text_properties_1): New subroutine
13966 broken out of set_text_properties.
13967 (set_text_properties): Use set_text_properties_1.
91823618 13968
048addec
JD
13969 * intervals.c (graft_intervals_into_buffer):
13970 Use set_text_properties_1 to clear out properties.
91823618 13971
048addec
JD
13972 * search.c (Freplace_match): Use replace_range to insert
13973 and delete. Don't request property inheritance from
13974 surrounding text.
86928dfb 13975
048addec 139762001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 13977
048addec 13978 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
f63fd14e 13979 vertical fonts. Allow them if face name is explicitly specified.
048addec 13980 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 13981
048addec 139822001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 13983
048addec
JD
13984 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
13985 instead of malloc/free.
a78e0303 13986
048addec 139872001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 13988
048addec
JD
13989 * xfaces.c (merge_face_vectors): Use braces to follow GNU
13990 Coding Standards.
13991 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 13992
048addec 13993 * buffer.c (Fbury_buffer): Likewise.
0c99b139 13994
048addec 13995 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 13996
048addec
JD
13997 * coding.c (encode_coding): Use precomputed value of `src'.
13998 (encode_coding): Remove unused variable `src_end'.
13999 (code_convert_region): Remove unused variables `count'.
830ddd77 14000
048addec 140012001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 14002
048addec
JD
14003 * w32term.c (x_display_and_set_cursor): Do not move system caret
14004 if cursor_glyph is NULL.
55c6d645 14005
048addec 140062001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 14007
048addec 14008 * keymap.c (access_keymap): Fix compilation error.
5de38842 14009
048addec 140102001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 14011
048addec 14012 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 14013
048addec 140142001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 14015
048addec
JD
14016 * intervals.c (graft_intervals_into_buffer):
14017 Remove #ifdef'd-out code.
14018 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 14019
048addec
JD
14020 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
14021 code (eval-current-buffer).
14022 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 14023
048addec 140242001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 14025
048addec 14026 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 14027
048addec 140282001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 14029
048addec 14030 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 14031
048addec
JD
14032 * keyboard.c (make_lispy_event): Check integerness and fix
14033 Lisp_Object/int mixup.
17893c65 14034
048addec 140352001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 14036
048addec 14037 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 14038
048addec
JD
14039 * fontset.c (fontset_font_pattern): Remove unused variable
14040 `family_registry'.
d5360cc7 14041
048addec 14042 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 14043
048addec 140442001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 14045
048addec 14046 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 14047
048addec
JD
14048 * buffer.c (Fkill_buffer): Don't delete auto save file
14049 if buffer is modified.
d9d54213 14050
048addec 140512001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 14052
048addec
JD
14053 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
14054 CHECK_NUMBER_CDR.
b116830b 14055
048addec 140562001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 14057
048addec 14058 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 14059
048addec 140602001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 14061
048addec 14062 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 14063
048addec 140642001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 14065
048addec 14066 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 14067
048addec 140682001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 14069
048addec
JD
14070 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
14071 the program image directly.
982f6c7e 14072
048addec 140732001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 14074
048addec 14075 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 14076
048addec 140772001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 14078
048addec
JD
14079 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
14080 and CHECK_BUFFER.
d31053f9 14081
048addec
JD
14082 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
14083 (record_char): Likewise.
d31053f9 14084
048addec
JD
14085 * keyboard.c (make_lispy_event): Don't insist a drag event must
14086 move to a different buffer position. Instead, check for moving at
14087 least double_click_fuzz.
982f6c7e 14088
048addec 14089 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 14090
048addec 14091 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 14092
048addec
JD
14093 * indent.c (current_column_1, Fmove_to_column): Separate the code
14094 for display-table glyphs from the code for buffer text, to fix
14095 bugs in the former.
830047fd 14096
048addec 140972001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 14098
048addec
JD
14099 * buffer.c (Fbuffer_local_value): New function.
14100 (syms_of_buffer): Defsubr it.
2df5238c 14101
048addec
JD
14102 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
14103 value of `cursor-in-non-selected-windows'.
4e397688 14104
048addec
JD
14105 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
14106 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
14107 (syms_of_xdisp): Initialize it.
48b0f3ae 14108
048addec 141092001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 14110
048addec 14111 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 14112
048addec
JD
14113 * coding.c: Change doc-string comments to `new style' [w/`doc:'
14114 keyword].
3ecaf7e5 14115
048addec
JD
14116 * eval.c (top_level_value, top_level_set): Remove commented and
14117 #ifdef'd-out code.
14118 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 14119
048addec 141202001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 14121
048addec 14122 * xfns.c: Include unistd.h, if it exists.
8db2e33b 14123
048addec 14124 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 14125
048addec 14126 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 14127
048addec 141282001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 14129
048addec
JD
14130 * lisp.h (CHECK_STRING_CAR): New macro.
14131 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
14132 treating XCAR and XCDR as lvalues.
14133 (openp): Use CHECK_STRING_CAR.
14134 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 14135
048addec 141362001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 14137
048addec
JD
14138 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
14139 (SIGMASKTYPE): Define.
1b1acc13 14140
048addec 14141 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 14142
048addec 141432001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 14144
048addec
JD
14145 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
14146 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
14147 Fix typos in comments.
6cb16f95 14148
048addec
JD
14149 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
14150 and #ifdef'd-out code.
14151 Fix and reindent comments.
6cb16f95 14152
048addec 14153 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 14154
048addec
JD
14155 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
14156 argument `i' in macros.
6cb16f95 14157
048addec
JD
14158 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
14159 `i' in macros.
7e9d3c2f 14160
048addec
JD
14161 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
14162 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
14163 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
14164 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
14165 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
14166 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
14167 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
14168 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
14169 in macros.
7e9d3c2f 14170
048addec
JD
14171 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
14172 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
14173 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
14174 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
14175 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
14176 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
14177 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
14178 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
14179 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
14180 (remove unused second argument).
7e9d3c2f 14181
048addec 141822001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 14183
048addec
JD
14184 * syntax.c (describe_syntax): New wrapper.
14185 (Finternal_describe_syntax_value): Rename from describe_syntax.
14186 Don't insert space at front and \n at the end.
14187 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 14188
048addec
JD
14189 * regex.c (re_wctype): Try to fix some warnings.
14190 (regcomp, regexec): Don't forget the __restrict.
9ba48103 14191
048addec 141922001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 14193
048addec 14194 * textprop.c (Fget_char_property): Doc fix.
9ba48103 14195
048addec 141962001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 14197
048addec 14198 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 14199
048addec 14200 * data.c (Fsetq_default): Ditto.
c22e59e1 14201
048addec 14202 * callint.c (Finteractive): Ditto.
9271ed2c 14203
048addec 142042001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 14205
048addec
JD
14206 * macros.c: Don't include keymap.h any more.
14207
142082001-11-01 Richard M. Stallman <rms@gnu.org>
14209
14210 * data.c (Fmake_local_variable): Doc fix.
14211
14212 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
14213 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 14214
048addec 14215 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
14216 bindings along with or instead of the buffer local map.
14217 Make the overriding maps override what they should.
14218
f00691a3 142192001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
14220
14221 * window.c (grow_mini_window): Fix typo in comment.
14222
27188d11
GM
142232001-11-01 Gerd Moellmann <gerd@gnu.org>
14224
7b49b9d2
GM
14225 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
14226 (XTset_vertical_scroll_bar): Likewise.
14227
43f7c3ea
GM
14228 * xfns.c (x_build_heuristic_mask): Use four_corners_best
14229 instead of IMAGE_BACKGROUND.
c22e59e1 14230
b350c2e5
GM
14231 * xfns.c (four_corners_best): Reindent.
14232
c22e59e1 14233 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
14234 Handle :box so that it is possible to specify sexprs.
14235
bf00d461
EZ
142362001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
14237
14238 * s/hpux11.h: New file.
14239
f00691a3 142402001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 14241
2b209b97
PJ
14242 * emacs.c (USAGE1): Show command line option --no-window-system
14243 instead of --no-windows in usage.
14244 (standard_args): Rename --no-windows to --no-window-system.
14245 (bug_reporting_address): Follow Emacs coding conventions.
14246
9dbc9081
PJ
14247 * eval.c (Fcommandp): Doc fix.
14248 Change doc-string comments to `new style' [w/`doc:' keyword].
14249
4e10df59
PJ
14250 * frame.c (Fframe_live_p): Doc fix.
14251
14252 * buffer.c (selective-display-ellipses): Doc fix.
14253
dd387b25
GM
142542001-10-31 Gerd Moellmann <gerd@gnu.org>
14255
fe957e65
GM
14256 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
14257
dd387b25
GM
14258 * xfaces.c (realize_x_face): If C is not a single-byte character,
14259 set the face's colors_copied_bitwise_p instead of the defaulted_p
14260 members which have a different meaning.
14261 (free_face_colors): Do nothing for a face whose colors have been
14262 copied bitwise.
14263
c22e59e1 14264 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 14265
f00691a3 142662001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 14267
687784e8
PJ
14268 * marker.c, mocklisp.c: Change doc-string comments to `new style'
14269 [w/`doc:' keyword].
2e1280f8 14270
b9d9a9b9
GM
142712001-10-31 Gerd Moellmann <gerd@gnu.org>
14272
14273 * fns.c (require_unwind): Return Lisp_Object.
14274
f00691a3 142752001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 14276
fa1361cb
PJ
14277 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
14278 (last-input-char): Revert doc-string to be the same as the
14279 doc-string of `last-input-event'.
14280
6c465a15 14281 * xdisp.c: Fix typos in comments.
48400103 14282
eafa3196
GM
142832001-10-31 Gerd Moellmann <gerd@gnu.org>
14284
14285 * window.c (grow_mini_window): Handle case that the root
14286 window is already smaller than the nominal mininum height.
14287
747d3f2a
SM
142882001-10-30 Stefan Monnier <monnier@cs.yale.edu>
14289
bf9bb76f
SM
14290 * emacs.c (main): Don't call keys_of_macros any more.
14291
14292 * lisp.h (keys_of_macros): Remove.
14293
14294 * macros.c (keys_of_macros): Remove.
14295
747d3f2a
SM
14296 * xfaces.c (Fface_attribute_relative_p): Declare args.
14297
5e905a57
JR
142982001-10-30 Jason Rumney <jasonr@gnu.org>
14299
14300 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
14301 (enum_font_cb2): Ignore fonts with vertical orientation.
14302
3a426197
RS
143032001-10-30 Richard M. Stallman <rms@gnu.org>
14304
14305 * keyboard.c (Finput_pending_p): Doc fix.
14306
a742d646
GM
143072001-10-30 Gerd Moellmann <gerd@gnu.org>
14308
259cf6bc
GM
14309 * xterm.c (x_after_update_window_line): Don't run the code
14310 clearing in borders for rows whose visible height is 0.
14311
3f99f948
GM
14312 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
14313 resized_p flag is set. If not set, use the much less flickering
14314 method previously used.
14315
14316 * dispnew.c (change_frame_size_1): Set frame's resized_p.
14317
14318 * frame.h (struct frame) <resized_p>: New member.
14319
b4a3be43
GM
14320 * lread.c (to_multibyte): Ensure read_buffer is at least twice
14321 as large as the number of bytes to convert.
747d3f2a 14322
a742d646
GM
14323 * lread.c (to_multibyte): New function.
14324 (read1): Use it.
14325
cacbb9e9
EZ
143262001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
14327
14328 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
14329
99cb6b2f
GM
143302001-10-30 Gerd Moellmann <gerd@gnu.org>
14331
327f42ee 14332 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
14333 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
14334 if the row's fill_line_p is set and drawing the last glyph with
14335 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 14336
99cb6b2f
GM
14337 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
14338
8e8223e2
SM
143392001-10-29 Stefan Monnier <monnier@cs.yale.edu>
14340
14341 * xmenu.c: Include coding.h and charset.h.
14342 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
14343 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
14344 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
14345 Explicitly set wv->help. Use `TRUE' rather than `True'.
14346 (menu_help_callback): Use empty_string.
14347
14348 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
14349 (Fx_popup_dialog): Explicitly init f.
14350 (w32_menu_display_help): Use empty_string.
14351
4d083a8f
RS
143522001-10-29 Richard M. Stallman <rms@gnu.org>
14353
b2304472
RS
14354 * fns.c (Frequire): Detect recursive try to require the same
14355 feature 3 or more levels deep, and get error.
14356 (require_unwind): New subroutine.
14357 (require_nesting_list): New variable.
14358 (syms_of_fns): Init and staticpro it.
14359
4d083a8f
RS
14360 * print.c (print_object): Clarify indication of insertion type.
14361
2fe41216
EZ
143622001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
14363
90480000
EZ
14364 * coding.c (syms_of_coding): Document that locale-coding-system is
14365 used for decoding input on X.
14366
2fe41216
EZ
14367 * window.c (Fscroll_left, Fscroll_right): Doc fix.
14368
f00691a3 143692001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
14370
14371 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
14372 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
14373
60ebcfe8
GM
143742001-10-29 Gerd Moellmann <gerd@gnu.org>
14375
9a7bdceb
GM
14376 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
14377 use NO_CURSOR if cursor_in_non_selected_windows is false.
14378
3f08fcd2
GM
14379 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
14380 the slant attribute if FRAME is t.
14381
0ccfdad2
GM
14382 * xfns.c (x_set_internal_border_width): Set frame garbaged
14383 when X window doesn't exist yet.
14384
ef253080
GM
14385 * xterm.c (x_after_update_window_line): Clear internal border
14386 in different circumstances.
b116830b 14387
60ebcfe8
GM
14388 * xterm.c (XTread_socket) <KeyPress>: Don't use
14389 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
14390 <handa@etl.go.jp>.
14391
73d25f9c
EZ
143922001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
14393
14394 * m/ibms390.h: New file. From Adam Thornton
14395 <athornton@sinenomine.net>.
14396
cac1daf0
GM
143972001-10-28 Gerd Moellmann <gerd@gnu.org>
14398
053b3256 14399 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 14400
cac1daf0
GM
14401 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
14402 a loop counter.
14403
f00691a3 144042001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 14405
f9711de4 14406 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
186486eb 14407
4707d2d0
PJ
14408 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
14409 keyword].
14410 Fix typos in comments.
b116830b 14411
d883731c
PJ
14412 * emacs.c (bug_reporting_address): New function.
14413 Use it when displaying usage message.
14414
04012254
PJ
14415 * minibuf.c (read_minibuf): Remove unused external declaration of
14416 variable `Qread_only'.
14417
13b1a09c
PJ
14418 * keymap.c (access_keymap): Remove unused variable `charset'.
14419
5bbf4378
MB
144202001-10-28 Miles Bader <miles@gnu.org>
14421
14422 * xfaces.c (merge_face_heights): Handle TO being relative as well.
14423 Remove #ifdef'd-out code.
14424 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
14425 (syms_of_xfaces): Initialize them.
14426
1ce1e4ee
JR
144272001-10-27 Jason Rumney <jasonr@gnu.org>
14428
14429 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
14430 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
14431 position using the system caret.
14432
14433 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
14434 (w32_system_caret_height, w32_system_caret_x)
14435 (w32_system_caret_y): New variables for tracking system caret.
14436 (w32_initialize): Initialize them.
c2d53558 14437 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 14438
c2d53558
SM
14439 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
14440 New messages types.
1ce1e4ee
JR
14441
14442 * w32term.c (note_mouse_highlight): Clear old help_echo.
14443
f00691a3 144442001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 14445
bb4600a4
PJ
14446 * xterm.c: Fix typo in a comment.
14447
7db35a48
PJ
14448 * emacs.c: Fix typos in comments.
14449 Remove unnecessary spaces.
14450 Change doc-string comments to `new style' [w/`doc:' keyword].
14451 (USAGE2): Fix typos in usage string.
14452
a7248e4f
PJ
14453 * xterm.c: Fix typo in a comment.
14454
4e30ce42
PJ
14455 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
14456 emacs.c.
14457
62725a92
GM
144582001-10-27 Gerd Moellmann <gerd@gnu.org>
14459
798dbe1f 14460 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 14461 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
14462 farther backward when target_y was not reached.
14463
62725a92
GM
14464 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
14465 Display errno only if non-zero.
14466 (sound_warning): New function.
14467 (vox_configure): Don't treat failing to set sample rate as error.
14468 (various places): Improve error messages.
14469
d4e34d24
EZ
144702001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
14471
944e6f60
EZ
14472 * fileio.c (Faccess_file): Run the argument filename through
14473 Fexpand_file_name, before using it.
14474
d4e34d24
EZ
14475 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
14476 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
14477
38d2af0c
GM
144782001-10-26 Gerd Moellmann <gerd@gnu.org>
14479
da80a8d5
GM
14480 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
14481
38d2af0c
GM
14482 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
14483 Fix clearing in the case of scroll bars on the right.
c2d53558 14484
45de4a6f 144852001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
14486
14487 * w32gui.h (XImage): Add a dummy typedef.
14488
fbd5ceb2
GM
144892001-10-26 Gerd Moellmann <gerd@gnu.org>
14490
c2d53558 14491 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 14492
b23236fb
EZ
144932001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
14494
14495 * frame.c (Fframe_parameter): Fix last change.
14496
5d991fc4
EZ
14497 * fileio.c: Revert last change (which removed old commented-out
14498 version of expand-file-name). Add a comment that explains why
14499 this old version should not be removed.
14500
879eadc3
GM
145012001-10-25 Gerd Moellmann <gerd@gnu.org>
14502
75700ff2
GM
14503 * frame.c (Fframe_parameter): Fix a bug whereby some
14504 ``artificial'' frame parameters, like `minibuffer' were not
14505 obtained by calling Fframe_parameters.
14506
dfe92a6a
GM
14507 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
14508 cursor differently.
14509
879eadc3
GM
14510 * xdisp.c (move_it_vertically_backward): Compute line height
14511 differently. Add heuristic to try to be more compatible to 20.x.
14512
e1010ebe
SM
145132001-10-25 Stefan Monnier <monnier@cs.yale.edu>
14514
d73a471b
SM
14515 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
14516
d6da5a06
GM
14517 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
14518 boolean.
e1010ebe 14519
f66bd220
MB
145202001-10-25 Miles Bader <miles@gnu.org>
14521
14522 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
14523 BG is a pointer to a structure, not a structure.
14524 (gif_format, png_format): Add missing commas.
14525
d436d538
RS
145262001-10-24 Richard M. Stallman <rms@gnu.org>
14527
14528 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 14529 (syms_of_xfaces): Defsubr it.
d436d538 14530
f00691a3 145312001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
14532
14533 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
14534 variable `area'.
14535
f00691a3 145362001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 14537
c2d53558 14538 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 14539
e2a57b34
MB
145402001-10-25 Miles Bader <miles@gnu.org>
14541
14542 * dispextern.h (struct image): Add `background',
14543 `background_valid', and `background_transparent' fields.
14544 (image_background, image_background_transparent): New declarations.
14545 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
14546 * xfns.c (image_background, image_background_transparent)
14547 (four_corners_best): New functions.
c2d53558 14548 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
14549 (gs_format): Add `:background' entry.
14550 (lookup_image): Set IMG's background color if specified.
14551 (pbm_load, xbm_load_image, png_load): Set IMG's background field
14552 when appropriate.
14553 (x_clear_image_1): Reset `background_valid' and
14554 `background_transparent_valid' fields.
14555 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
14556 calculating it here. Set IMG's background_transparent field.
14557 (enum xpm_keyword_index): Add XPM_BACKGROUND.
14558 (enum png_keyword_index): Add PNG_BACKGROUND.
14559 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
14560 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
14561 (enum gif_keyword_index): Add GIF_BACKGROUND.
14562 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 14563 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
14564 Pre-calculate image background color where necessary.
14565 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
14566 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
14567 color to use for image glyph reliefs.
14568
b547b6e8
GM
145692001-10-24 Gerd Moellmann <gerd@gnu.org>
14570
d9e3b8c6
GM
14571 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
14572 in full-width rows.
c2d53558 14573
b547b6e8
GM
14574 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
14575 Fix clearing of area not covered by scroll bar.
14576
f00691a3 145772001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
14578
14579 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
14580 and `real_start'.
c2d53558 14581 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
14582 (glyph_rect): Remove unused variable `area'.
14583
76cb5e06
GM
145842001-10-24 Gerd Moellmann <gerd@gnu.org>
14585
bdbdebff 14586 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
14587
14588 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
14589 (row_containing_pos): Take additional argument DY.
14590 Treat rows ending in middle of char differently.
62e33982
GM
14591 (display_line): Handle tabs on window systems differently.
14592
14593 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
14594 with additional argument.
14595
14596 * dispextern.h (row_containing_pos): Adjust prototype.
14597
76cb5e06
GM
14598 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
14599 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
14600 (try_window_id, try_window_reusing_current_matrix)
14601 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 14602 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 14603
f00691a3 146042001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 14605
c9e60620
PJ
14606 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
14607 gnuemacs).
14608 (HAVE_BOXES): Fix typo in comment.
14609 (push_menu_pane): Fix typo in comment.
14610
3b552d56
PJ
14611 * xdisp.c: (display_prop_string_p): Remove unused local declaration
14612 of `Qwhen'.
14613 (single_display_prop_string_p): Remove unused local declarations
14614 of `Qwhen' and `Qmargin'.
14615 (string_buffer_position): Remove unused variable `around'.
14616 (store_frame_title): Remove unused variable `width'.
14617
15c565ac
PJ
14618 * window.c: Don't define max.
14619 (coordinates_in_window): Remove unused variable `uy'.
14620
a8818eb9
PJ
14621 * widget.c: Don't define max.
14622
996fee11
PJ
14623 * process.c: Don't define max.
14624 (create_process): Remove unused variable `buffer'.
14625
496e1a5b
GM
146262001-10-23 Gerd Moellmann <gerd@gnu.org>
14627
c2d53558 14628 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 14629
5905ae8b
EZ
146302001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
14631
14632 * xfaces.c (Finternal_set_lisp_face_attribute)
14633 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
14634 frame is on a windowed display.
14635
24db49fb
GM
146362001-10-23 Gerd Moellmann <gerd@gnu.org>
14637
c2d53558
SM
14638 * dispnew.c (sync_window_with_frame_matrix_rows):
14639 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
14640 of marginal areas.
14641
c2d53558 14642 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 14643
f0487f05
EZ
146442001-10-23 Andreas Schwab <schwab@suse.de>
14645
14646 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
14647 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
14648
f0a48a01
GM
146492001-10-23 Gerd Moellmann <gerd@gnu.org>
14650
c2d53558 14651 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
14652 REAL_END. Notice if cursor gets overwritten.
14653 (notice_overwritten_cursor): Take X positions as parameters.
14654 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
14655 around call to x_draw_glyphs.
14656
f00691a3 146572001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 14658
fc11dff0
PJ
14659 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
14660 instead of C) and usage.
a50a10a0 14661
fc11dff0
PJ
14662 * editfns.c (char-to-string): Fix argument names (use CHAR instead
14663 of C) and usage.
a50a10a0
PJ
14664
14665 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
14666 `left', `max_width' and `max_height'.
14667
8738febd
GM
146682001-10-23 Gerd Moellmann <gerd@gnu.org>
14669
14670 * xdisp.c (display_line): For a tab continued to the next line,
14671 set row's ends_in_middle_of_char_p.
14672
653c329b
GM
146732001-10-22 Gerd Moellmann <gerd@gnu.org>
14674
14675 * xdisp.c (display_line): Fix computation of continuation lines
14676 width for TABs.
14677
f00691a3 146782001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 14679
7ba51063
PJ
14680 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
14681 `Qlaplace'.
14682
f958c5ac
PJ
14683 * fileio.c: Remove unused code.
14684
eb360291
MB
146852001-10-22 Miles Bader <miles@gnu.org>
14686
14687 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
14688 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
14689 Remove `DOC_STRINGS_IN_COMMENTS' cases.
14690
98515cf0
JR
146912001-10-21 Jason Rumney <jasonr@gnu.org>
14692
14693 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
14694
93026d88
EZ
146952001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
14696
14697 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
14698 (Finsert_string): Avoid the multi-line string literals warning.
14699
c9a95b79
MB
147002001-10-22 Miles Bader <miles@gnu.org>
14701
14702 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
14703 (Fdocumentation): Don't use it.
14704 (syms_of_doc): Don't initialize it.
14705
14706 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
14707 * print.c (Fwith_output_to_temp_buffer): Likewise.
14708 * window.c (Fsave_window_excursion): Likewise.
c2d53558 14709 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 14710 (Fsave_restriction): Likewise.
c2d53558
SM
14711 * eval.c (Frun_hooks, Frun_hook_with_args)
14712 (Frun_hook_with_args_until_failure)
14713 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
14714 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
14715 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
14716 (Funwind_protect, Fcondition_case): Likewise.
14717 * coding.c (Ffind_operation_coding_system): Likewise.
14718 * keyboard.c (Ftrack_mouse): Likewise.
14719
a3b10252
MB
147202001-10-21 Miles Bader <miles@gnu.org>
14721
c2d53558 14722 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
14723 (Fmake_hash_table): Add usage: string to doc string.
14724 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 14725 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
14726 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
14727 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
14728 (Fml_prefix_argument_loop): Likewise.
14729
f00691a3 147302001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 14731
c2d53558 14732 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 14733
c6f73eec
PJ
14734 * sysdep.c (init_sys_modes): Change doc-string comments to `new
14735 style' [w/`doc:' keyword].
14736
14737 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
14738 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
14739 comments to `new style' [w/`doc:' keyword].
14740
3cf3436e
JR
147412001-10-21 Jason Rumney <jasonr@gnu.org>
14742
14743 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
14744
c169b8f1
JR
14745 * w32term.c (remember_mouse_glyph): New function.
14746 (w32_mouse_position): Use it.
14747 (note_mouse_movement): If the mouse moved off the glyph, remember
14748 its new position.
c2d53558 14749
4fdd691b
JR
14750 * w32term.h (struct w32_output): Correct spelling of x_compatible.
14751 (w32_display_info): Add mouse_face_overlay.
14752
c169b8f1
JR
14753 * w32term.c (notice_overwritten_cursor): Renamed from
14754 note_overwritten_text_cursor. Rewritten to take glyph widths into
14755 account.
14756 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
14757 (fast_find_string_pos): New function.
14758 (fast_find_position): Return the correct vpos. Add parameter
14759 STOP. In the final row, stop before glyphs having STOP as object.
14760 Don't consider glyphs that are not from a buffer.
14761 (fast_find_position) [0]: Add a presumably more correct version
14762 for after 21.1.
14763 (expose_window_tree, expose_frame): Don't compute intersections here.
14764 (expose_window): Do it here instead.
14765 (expose_window_tree, expose_window, expose_line): Return 1 when
14766 overwriting mouse-face.
14767 (expose_window): If W is the window currently being updated, mark
14768 the frame garbaged.
14769 (expose_frame): If mouse-face was overwritten, redo it.
14770 (x_use_underline_position_properties): New variable.
14771 (syms_of_xterm): DEFVAR_BOOL it.
14772 (x_draw_glyph_string): Add comment to use it in future.
14773 (x_draw_glyph_string): Restore clipping after drawing box.
14774 Fix a computation of the underline position.
14775 (w32_get_glyph_string_clip_rect): Minor cleanup.
14776 (x_fill_stretch_glyph_string): Remove an assertion.
14777 (x_produce_glyphs): Don't convert multibyte characters
14778 to unibyte characters in unibyte buffers.
14779 (cursor_in_mouse_face_p): New function.
14780 (x_draw_stretch_glyph_string): Use it to choose a different GC
14781 when drawing a cursor within highlighted text. Don't draw
14782 background again if it has already been drawn.
14783 (x_draw_glyph_string_box): Don't draw a full-width
14784 box just because the glyph row's full_width_p flag is set.
14785 (x_draw_glyphs): Fix computation of rightmost x for
14786 full-width rows.
14787 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
14788 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
f63fd14e 14789 change bottom shadow accordingly. Some cleanup.
c169b8f1
JR
14790 (x_update_window_end): Handle overwritten mouse face
14791 also for tool bar windows.
14792 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
14793 DRAW is DRAW_IMAGE_RAISED.
14794 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
14795 actually redrawn. Make the function static.
14796 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
14797 optimize away highlighting if we pass over that same overlay again.
14798 (note_mouse_highlight): Call mouse_face_overlay_overlaps
14799 to detect a case where we have to highlight a different region
14800 despite not having left the currently highlighted region.
14801 Set mouse_face_overlay in the x_display_info. Avoid changing the
14802 mouse pointer shape when show_mouse_face has already done it, or
14803 there is no need. Handle mouse-face and help-echo in strings.
14804 (glyph_rect): New function.
14805 (w32_mouse_position): Use it to raise the threshold for mouse
14806 movement event generation.
14807 (w32_initialize_display_info): Initialize the x_display_info's
14808 mouse_face_overlay.
14809 (w32_set_vertical_scroll_bar): Don't clear a zero height
14810 or width area.
14811 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
14812 a widget to zero height.
14813
3cf3436e 14814 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 14815 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
14816 equivalents in menu_items.
14817 (w32_menu_show): Don't overwrite an item's name with its key
14818 description in case the description is a multibyte string.
14819 (single_submenu): Some cleanup.
14820
14821 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
14822 (postprocess_image): New function.
14823 (lookup_image): Call it for all image types except PostScript.
14824 (x_kill_gs_process): Call postprocess_image.
14825 (tiff_error_handler, tiff_warning_handler): New functions.
14826 (tiff_load): Install them as handlers.
14827 (x_kill_gs_process): Recognize if someone has cleared the image
14828 cache under us.
14829 (valid_image_p): Protect better against invalid image
14830 specifications. Previous code could signal an error.
14831 (Fx_hide_tip, Fshow_tip): Doc fix.
14832 (Fv_max_tooltip_size): New variable.
14833 (syns_of_xfns): DEFVAR_LISP it.
14834 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
f63fd14e 14835 window buffer to *tip* right after creating the frame. Set frame's
3cf3436e
JR
14836 window_width. Use a maximum tooltip size specified by
14837 Vx_max_tooltip_size, if that has valid contents.
14838 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
14839 Make sure the tooltip is completely visible.
14840 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
14841 (Fx_create_frame): Adjust the frame's height for presence
14842 of the tool bar before calling x_figure_window_size.
14843 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
14844 when the window gets smaller.
14845 (x_set_foreground_color): Set frame's cursor_pixel.
14846 (x_set_foreground_color, x_set_background_color): Cleaned up.
14847 (x_set_font): Handle case of x_new_fontset returning the same name
14848 as before, although there was a change in fontsets.
14849
386ca361
MB
148502001-10-21 Miles Bader <miles@gnu.org>
14851
c2d53558 14852 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
14853 (Flogxor): Add usage: string to doc string.
14854 * charset.c (Fstring): Likewise.
14855 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
14856 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
14857
f00691a3 148582001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 14859
03be2694
PJ
14860 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
14861
14862 * alloc.c: Reindent DEFUNs with doc: keywords.
14863
14864 * abbrev.c (Finsert_abbrev_table_description): Reindent.
14865
14ff1ee0
PJ
14866 * frame.c: Change doc-string comments to `new style' [w/`doc:'
14867 keyword].
14868
2f147815 14869See ChangeLog.9 for earlier changes.
6922b018
KH
14870
14871;; Local Variables:
49b3bd82 14872;; coding: iso-2022-7bit
6922b018 14873;; End:
2a34a036 14874
2f147815 14875 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
14876 Copying and distribution of this file, with or without modification,
14877 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
14878
14879;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4