* gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
[bpt/emacs.git] / src / ChangeLog
CommitLineData
5500be54
JD
12004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2
3 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
4 tool bar items is 0.
5
383418e5
ST
62004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7
8 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
9 strings in menu items.
10 (single_submenu): Use ENCODE_MENU_STRING
11 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
12 button release isn't passed to event loop
13 (add_menu_item): Use SetMenuItemWithCFString
14
6eb3ee72
ST
152004-08-26 Steven Tamm <steventamm@mac.com>
16
17 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
18 tool-bar/menu click
19 * macfns.c (Fx_file_dialog): Implemented using NavServices
20
10b43ac3
JD
212004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22
2728b5d0
JD
23 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
24
10b43ac3
JD
25 * xfns.c (x_window_to_frame, x_any_window_to_frame)
26 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
27 (x_top_window_to_frame): Return 0 if wdesc is None.
28
2ee3b79e
RS
292004-08-22 Richard M. Stallman <rms@gnu.org>
30
31 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
32 HAVE_TERMIOS]: If there's no char for this signal, drop through
33 and use system calls.
34
35 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
36
9a1ba2ea
KS
372004-08-20 Kim F. Storm <storm@cua.dk>
38
39 * process.c (wait_reading_process_output): Rename from
40 wait_reading_process_input. All uses changed.
41 (wait_reading_process_output_1): Rename from
42 wait_reading_process_input_1. All uses changed.
43
44 * dispnew.c (Fsleep_for): Remove obsolete code.
45
295f3b30
KH
462004-08-20 Kenichi Handa <handa@m17n.org>
47
48 * syntax.c (skip_chars): Fix for unibyte case.
49
27615979
SM
502004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
51
52 * syntax.c (char_quoted): Mixup byte/char pos.
53 (back_comment): Fixup globals in all cases.
54
00267f94
JD
552004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
56
57 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
58 passing it to gtk_window_set_title.
59
2439909e
KS
602004-08-19 Kim F. Storm <storm@cua.dk>
61
6ba0f14c
KS
62 * process.c (wait_reading_process_input): Clean up.
63 Add wait_for_cell, wait_proc, and just_wait_proc args
64 to avoid overloading `read_kbd' and `do_display' args.
65 Change read_kbd arg to int. All callers changed.
66
2439909e
KS
67 * process.c (process_send_signal): Use CDISABLE.
68
69 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
70
101c421e
KS
712004-08-18 Kim F. Storm <storm@cua.dk>
72
73 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
74 forward to wait_reading_process_input via DO_DISPLAY arg.
75 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
76 object, only process output from that process; also inhibit
77 running timers if DO_DISPLAY==-2.
78
c438dc33
KS
792004-08-17 Kim F. Storm <storm@cua.dk>
80
81 * process.c (process_send_signal): Fix last change--use
82 _POSIX_VDISABLE instead of CVDISABLE when available.
83
8afc13c6
RS
842004-08-16 Richard M. Stallman <rms@gnu.org>
85
86 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
87 Set VQUIT and VINTR chars to the standard ones if they are unset.
88 [AIX]: Don't do that here. And don't force VINTR to standard
89 when SIGNALS_VIA_CHARACTERS.
90
c438dc33 91 * process.c (process_send_signal)
8afc13c6
RS
92 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
93 Do nothing if the character is CVDISABLE.
94
95 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
96
c438dc33 97 * intervals.c (move_if_not_intangible):
8afc13c6
RS
98 Force POSITION to be between BEGV and ZV.
99
6dad1714
JPW
1002004-08-14 John Paul Wallington <jpw@gnu.org>
101
102 * buffer.c (Frestore_buffer_modified_p): Doc fix.
103
104 * fileio.c (Fread_file_name): Doc fix.
105
106 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
107
2bd77330
LT
1082004-08-09 Luc Teirlinck <teirllm@auburn.edu>
109
110 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
111
c90e7e43
LT
1122004-08-08 Luc Teirlinck <teirllm@auburn.edu>
113
114 * keyboard.c: Declare Qdisabled_command_function instead of
8392e138 115 Qdisabled_command_hook.
c90e7e43 116 (Fcommand_execute): Use Qdisabled_command_function instead of
8392e138 117 Qdisabled_command_hook.
c90e7e43
LT
118 (syms_of_keyboard): Ditto.
119
81909a1a
LT
1202004-08-07 Luc Teirlinck <teirllm@auburn.edu>
121
122 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
123 (syms_of_keymap) <key-translation-map>: Doc fixes.
124
0cedd530
SM
1252004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
126
1725a7c9
SM
127 * window.c (window_list_1): YAILOM.
128
0cedd530
SM
129 * fileio.c (make_temp_name): Handle multibyte prefixes.
130
2515a131
LT
1312004-08-06 Luc Teirlinck <teirllm@auburn.edu>
132
133 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
134 Doc fix.
135
c8b20fb7
KH
1362004-08-03 Kenichi Handa <handa@m17n.org>
137
138 * coding.c (decode_coding_string): Adjust coding->consumed, and
139 etc. with shrinked_bytes.
140
fb8b092b
KS
1412004-08-03 Kim F. Storm <storm@cua.dk>
142
143 * indent.c (compute_motion): Fix check for full width window
144 in non-window case. Do not count left truncation glyph on
145 window systems.
146
df133612
LT
1472004-08-02 Luc Teirlinck <teirllm@auburn.edu>
148
149 * data.c (Finteractive_form): Doc fix.
150
0f7a93c1
KS
1512004-08-02 Kim F. Storm <storm@cua.dk>
152
153 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
154 properly accounting for continuation glyph on non-window systems.
155 (Fcompute_motion): Use actual window width if WIDTH is nil, and
156 actual window width/height if TOPOS is nil, properly accounting for
157 continuation glyphs on non-window systems, and optional header lines.
158 (vmotion): Let compute_motion calculate actual window width.
159
160 * window.c (window_scroll_line_based): Let compute_motion
161 calculate actual window width.
162
f491e1ed
KS
1632004-08-02 Kim F. Storm <storm@cua.dk>
164
165 * process.c (read_process_output): Use whole read buffer.
166 Don't trigger adaptive read buffering on errors.
167
83f64226
LT
1682004-07-31 Luc Teirlinck <teirllm@auburn.edu>
169
170 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
171
172 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
173
174 * callint.c (Fcall_interactively): Doc fix.
175
8afc13c6
RS
1762004-07-30 Richard M. Stallman <rms@gnu.org>
177
178 * abbrev.c (Fexpand_abbrev): Undo previous change.
179
7c111482
KS
1802004-07-30 Kim F. Storm <storm@cua.dk>
181
182 * editfns.c (Fformat): Allocate extra (dummy) element in info.
183
ee945d08
LT
1842004-07-28 Luc Teirlinck <teirllm@auburn.edu>
185
186 * eval.c (Fdefvar, Fdefconst): Doc fixes.
187
3f911c94
KS
1882004-07-27 Kim F. Storm <storm@cua.dk>
189
190 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
191 we have ensured that the glyph fits on the current line (or returned
192 MOVE_LINE_CONTINUED otherwise).
193
f29ff8c7
KS
1942004-07-26 Kim F. Storm <storm@cua.dk>
195
196 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
197 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
198 if target position is at end of display line but char is not a newline.
199
81159bb9
RS
2002004-07-25 Richard M. Stallman <rms@gnu.org>
201
ab431b61
RS
202 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
203 instead of ON_VERTICAL_BORDER, when on scroll bar.
204 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
205
206 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
207
f29ff8c7 208 * window.c (Fcoordinates_in_window_p):
81159bb9
RS
209 Take account of FRAME_INTERNAL_BORDER_WIDTH.
210
211 * alloc.c (check_cons_list): New function (contents commented out).
212
fc820cc5
LT
2132004-07-24 Luc Teirlinck <teirllm@auburn.edu>
214
215 * xfaces.c (Fcolor_supported_p): Doc fix.
216
217 * frame.c (Fselect_frame, Fset_frame_selected_window)
218 (Fframe_visible_p, Fraise_frame): Doc fixes.
219
289978b5
LT
2202004-07-24 Richard M. Stallman <rms@gnu.org>
221
7630911d
RS
222 * keyboard.h (not_single_kboard_state): Declared.
223
224 * fileio.c (Fwrite_region): Doc fix.
225
226 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
227
228 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
229 only when a real abbrev is present.
230
289978b5
LT
231 * xfns.c (x_icon_verify): New function.
232 (Fx_create_frame): Use it.
233
63cc10ae
KS
2342004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
235
236 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
237
36f826d4
KS
2382004-07-21 Kim F. Storm <storm@cua.dk>
239
240 * window.h (struct glyph_matrix): New members nrows_scale_factor
241 and ncols_scale_factor.
242
243 * window.c (make_window): Initialize nrows_scale_factor and
244 ncols_scale_factor members.
245
246 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
247 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
248 (required_matrix_height): Apply nrows_scale_factor.
249 (required_matrix_width): Apply ncols_scale_factor.
250
251 * xdisp.c (display_line): Increment nrows_scale_factor and set
252 fonts_changed_p if past last allocated row.
253 (append_glyph, append_composite_glyph, produce_image_glyph)
254 (append_stretch_glyph): Increment ncols_scale_factor and set
255 fonts_changed_p if current area is full.
256
5fc1c546
JD
2572004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
258
259 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
260
cb7516e5
LT
2612004-07-19 Luc Teirlinck <teirllm@auburn.edu>
262
263 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
264 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
265 (Fset_window_start, Fscroll_up, Fscroll_down)
266 (Fother_window_for_scrolling, Fscroll_other_window)
267 (Fsave_window_excursion, Fset_window_vscroll)
268 (syms_of_window) <window-size-fixed>: Doc fixes.
269
dda741ec
JR
2702004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
271
272 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
273 ENCODE_SYSTEM for filenames.
274
bfcf6608
ST
2752004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
276
277 * mac.c (sys_select): Block input around call to
278 ReceiveNextEvent to prevent breakage. Correctly handle
279 blocking on event queue only by calling ReceiveNextEvent
280 instead of select (since GUI events aren't on an fd).
281 (sys_read): Remove function
282 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
283
e082ac9d
ST
2842004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
285
286 * mac.c (sys_select): Redo sys_select to use alarm-based
cb7516e5 287 polling instead of 1 sec timeouts (like solaris).
e082ac9d 288
cb7516e5 289 * macterm.c (x_make_frame_visible): Comment in polling on
e082ac9d
ST
290 frame creation.
291
292 * keyboard.c: Undef SIGIO on Carbon
293
294 * atimer.c (alarm_signal_handler): Call alarm handlers after
295 scheduling.
296
297 * eval.c (Feval): Remove quit_char test
298
299 * process.c (wait_reading_process_input): Remove clearing
300 stdin for select call on process input.
301
4b9da0fb
LT
3022004-07-18 Luc Teirlinck <teirllm@auburn.edu>
303
1204e81c
LT
304 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
305 capitalization error in docstring.
4b9da0fb 306
26503ad2
JB
3072004-07-17 Juanma Barranquero <lektu@terra.es>
308
309 * keyboard.c (not_single_kboard_state): Do nothing unless
310 MULTI_KBOARD is defined.
311
3751eb00
RS
3122004-07-17 Richard M. Stallman <rms@gnu.org>
313
314 * window.c (coordinates_in_window): Inside the window but outside
315 its box to the L or R, return ON_VERTICAL_BORDER.
316 (window_list_1): Rotate the list to start with WINDOW.
317
318 * print.c (print_preprocess): Test for print_depth at limit
319 before entering in being_printed.
320
321 * keyboard.c (not_single_kboard_state): New function.
322 (stuff_buffered_input): Now no-op only if no SIGTSTP.
323
324 * frame.c (Fdelete_frame): If we're in single_bboard_state on
325 this kboard, and we delete its last frame, go to any_kboard_state.
326
327 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
328
62eb6ca9
JR
3292004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
330
331 * w32fns.c (Fx_file_dialog): Encode strings in system coding
332 system before passing them to OS functions for display.
333
0f6af254
DK
3342004-07-15 David Kastrup <dak@gnu.org>
335
f9253326
KS
336 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
337 Apparently fixes an abort condition.
0f6af254 338
386c8f42
LT
3392004-07-14 Luc Teirlinck <teirllm@auburn.edu>
340
341 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
342 instead of a cons.
343
366511da
MB
3442004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
345
346 * keyboard.c (echo_dash): Do nothing if there already is a dash
347 at the end of the echo string.
348
f85409d3
KS
3492004-07-12 Kim F. Storm <storm@cua.dk>
350
351 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
352 if GC_MARK_STACK.
353
0ba2e87b
LT
3542004-07-10 Luc Teirlinck <teirllm@auburn.edu>
355
da38045d
LT
356 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
357
0ba2e87b
LT
358 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
359 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
360 (Freplace_buffer_in_windows, Fset_window_buffer)
361 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
362 (syms_of_window): Expand docstring of `display-buffer-function'.
363
5668fbb8
LT
3642004-07-09 Luc Teirlinck <teirllm@auburn.edu>
365
366 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
367 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
368 that time values of the type (HIGH . LOW) are considered obsolete.
369
a085bf9d
LT
3702004-07-06 Luc Teirlinck <teirllm@auburn.edu>
371
669de2fb
LT
372 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
373 docstring.
374
bac66325 375 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
a085bf9d 376
8e975df9
JPW
3772004-07-06 John Paul Wallington <jpw@gnu.org>
378
379 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
380
fa164e6a
JPW
381 * fns.c (Fclear_string): Signal an error if STRING is not a string.
382
2bac9bb1
JD
3832004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
384
385 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
386 instead of CGMainDisplayID (only in OSX 10.2 and later).
387
316ef0dc
JPW
3882004-07-04 John Paul Wallington <jpw@gnu.org>
389
390 * fileio.c (read_file_name_completion_ignore_case): New variable.
391 (syms_of_fileio): Declare and initialise it.
392 (Fread_file_name): Bind `completion-ignore-case' to respect it.
393
2a1a35c6
EZ
3942004-07-03 Eli Zaretskii <eliz@gnu.org>
395
396 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
397 for event.x and event.y.
398
33a72331
KH
3992004-07-01 Kenichi Handa <handa@m17n.org>
400
401 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
402 after getting a new string by pre-write-conversion.
403
07a6ab76
SM
4042004-06-30 Stefan <monnier@iro.umontreal.ca>
405
406 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
407 (x_calc_absolute_position): Remove unused var `child'.
408
409 * xfaces.c (x_supports_face_attributes_p)
410 (Fdisplay_supports_face_attributes_p): YAILOM.
411 (tty_supports_face_attributes_p): Remove unused var `i'.
412
413 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
414 back_unibyte_ok.
415
416 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
417
418 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
419
420 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
421
f96ec754
AS
4222004-06-30 Andreas Schwab <schwab@suse.de>
423
424 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
425 (Finit_image_library): Pass LIBRARIES through to
426 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
427 (lookup_image_type): Pass Qnil as second argument to
428 Finit_image_library.
429
430 * lisp.h: Declare Finit_image_library.
431
59feca74 4322004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
c8d09ad8 433
31983645
AS
434 * macterm.c (do_window_activate, do_window_deactivate): Remove.
435 (XTread_socket): Send mouse button events to the toolbox
436 dispatcher even when the mouse is grabbed. Don't process window
437 activate events for non-Emacs windows. Replace function calls to
438 do_window_activate and do_window_deactivate with their contents.
439 Reset mouse grabbing status when a window is deactivated.
59feca74 440
c61278bb
ST
4412004-06-29 Steven Tamm <steventamm@mac.com>
442
443 * macterm.c (mac_get_emulated_btn)
444 (mac_event_to_emacs_modifiers): Fix emulated mouse button
445 support to correctly mask out modifiers.
446
c3762cbd
DK
4472004-06-29 David Kastrup <dak@gnu.org>
448
449 * search.c (Fset_match_data): Allow buffer before end of list
450 which can happen if set-match-data is using a pre-consed list.
451
c61278bb 4522004-06-28 Steven Tamm <steventamm@mac.com>
e439b925
ST
453
454 * macterm.c (XTread_socket): Correctly set the frame position
455 after the window is moved.
456
74cdfe05
JD
4572004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
458
459 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
460 gpix and gmask just before return to avoid memory leak.
03ecb80f
JD
461 (xg_get_image_for_pixmap): Add workaround for monochrome displays
462 so insensitive and activated icons look ok.
74cdfe05 463
ef544dc8
JR
4642004-06-27 Jason Rumney <jasonr@gnu.org>
465
466 * w32fns.c (file_dialog_callback): Disable edit control if set
467 to directories only on CDN_INITDONE message.
468 (Fx_file_dialog): Default to directories only when prompt starts
469 with "Dired".
470
7b7990cc
KS
4712004-06-25 Kim F. Storm <storm@cua.dk>
472
473 * alloc.c (allocate_misc): Update total_free_markers.
474 (free_misc): New function.
475 (safe_alloca_unwind, free_marker): Use it.
476
477 * lisp.h (free_misc): Add prototype.
478
479 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
480
d8c379f8
RS
4812004-06-24 Richard M. Stallman <rms@gnu.org>
482
483 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
484 (syms_of_emacs): Lisp variables deleted.
485
559cdd07
DK
4862004-06-23 David Kastrup <dak@gnu.org>
487
94939b84
DK
488 * search.c (Freplace_match): Adjust the match-data more thoroughly
489 when replacing strings in the buffer.
490 (Fmatch_data): When INTEGERS is non-nil and the last match was in
491 a buffer, add the buffer as last element to the match data.
492 (Fset_match_data): If an additional element of the match-data is a
493 buffer, restore it to last_thing_searched.
c8d09ad8 494 (save_search_regs): Save last_thing_searched as part of the match data.
559cdd07
DK
495 (restore_match_data): Restore it again.
496
dce417e7
LT
4972004-06-23 Luc Teirlinck <teirllm@auburn.edu>
498
499 * keymap.c (Ftext_char_description): Doc fix.
500 * doc.c (Fsnarf_documentation): Doc fix.
501
ef54b2d0
KS
5022004-06-22 Kim F. Storm <storm@cua.dk>
503
b5bc4d05
KS
504 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
505
ef54b2d0
KS
506 * lisp.h (struct Lisp_Save_Value): New member dogc.
507 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
508 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
509 (SAFE_FREE_LISP): New macro.
510
511 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
512 (make_save_value): Init new dogc member.
513 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
514
515 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
516 SAFE_FREE_LISP macros.
517
3d33d993
KS
5182004-06-22 Kim F. Storm <storm@cua.dk>
519
520 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
521 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
522 in that memory area are unknown to GC. Add comments.
523
524 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
525
5c917f98
KS
5262004-06-21 Kim F. Storm <storm@cua.dk>
527
528 * lisp.h (MAX_ALLOCA): Define here.
529 (safe_alloca_unwind): Add prototype.
530 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
531
532 * alloc.c (safe_alloca_unwind): New function.
533
534 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
535
536 * charset.c (Fstring): Use SAFE_ALLOCA.
537
538 * coding.c (MAX_ALLOCA): Remove define.
539
540 * data.c (MAX_ALLOCA): Remove define.
541 (Faset): Use SAFE_ALLOCA.
542
543 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
544
545 * fns.c (string_make_multibyte, string_to_multibyte)
546 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
547 (MAX_ALLOCA): Remove define.
548 (Fbase64_encode_region, Fbase64_encode_string)
549 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
550 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
551 memory leak if encoding fails.
552
553 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
554
9a09408e
EZ
5552004-06-21 Eli Zaretskii <eliz@gnu.org>
556
557 * print.c (Fwith_output_to_temp_buffer): Doc fix.
558
376de739
RS
5592004-06-20 Richard M. Stallman <rms@gnu.org>
560
561 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
562
563 * search.c (match_limit): Cleaner err msg when no match data available.
564
565 * window.c (syms_of_window): Doc fix.
566
567 * keyboard.c (command_loop_1): Handle values `only' and `identity'
568 for Vtransient_mark_mode.
569
570 * buffer.c (syms_of_buffer): Doc fix.
571
acd81db9
DK
5722004-06-21 David Kastrup <dak@gnu.org>
573
574 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
575 and unbinding of `case-fold-search' according to
576 `completion-ignore-case' around calls of string-match and
577 predicates, respectively. Should give satisfactory performance
578 in all relevant cases.
579
f303762d
JD
5802004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
581
95911c74
JD
582 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
583 clip_x/y_origin.
584
a6cb6b78
JD
585 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
586
f303762d
JD
587 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
588
589 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
590 on Mac OSX.
591
bbdb2684
LT
5922004-06-16 Luc Teirlinck <teirllm@auburn.edu>
593
594 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
595
5ea48b1c
KS
5962004-06-16 Kim F. Storm <storm@cua.dk>
597
598 * dispextern.h (Vimage_types): Remove extern.
599
803aac3e
MB
6002004-06-16 Miles Bader <miles@gnu.org>
601
602 * image.c (lookup_image_type): Initialize image type if necessary.
603
cdc97764
KS
6042004-06-15 Kim F. Storm <storm@cua.dk>
605
c4a5739c
KS
606 * xdisp.c (try_cursor_movement): Exclude header line from scroll
607 margin at top of window.
608 (try_window_reusing_current_matrix): Calculate proper cursor position
609 after scrolling up with non-zero scroll margin, as the old cursor
610 position corresponds to value of PT before executing this command.
611 (try_window_id): Consider scroll margin at bottom of window too;
612 otherwise we fail to scroll when hl-line-mode is enabled.
613
cdc97764
KS
614 * syntax.c (skip_chars): Only recognize [:class:] when it has the
615 proper format and class is a lower-case word.
616
5b166323
JD
6172004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
618
619 * gtkutil.c (xg_get_image_for_pixmap): New function.
c8d09ad8 620 (xg_get_gdk_pixmap_and_mask): Remove.
5b166323
JD
621 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
622 xg_get_gdk_pixmap_and_mask.
cdc97764 623
5b166323
JD
624 * xterm.h (struct x_display_info): Typo in comment fixed.
625
1ebd4f78
JB
6262004-06-14 Juanma Barranquero <lektu@terra.es>
627
628 * dispextern.h (Vimage_types): Make it conditional on
629 HAVE_WINDOW_SYSTEM.
630
631 * image.c (Vimage_types): Move from xdisp.c.
632 (Vimage_type_cache): New variable.
633 (define_image_type): New argument indicating whether an image
634 library was loaded; cache loaded status and return t on success,
635 nil otherwise.
636 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
637 (w32_delayed_load): New function to load an image library from a
638 list of possible filenames.
639 (init_xpm_functions, init_png_functions, init_jpeg_functions)
640 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
c8d09ad8 641 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
1ebd4f78
JB
642 (Finit_image_library): New function, extracted from `init_image'.
643 Try to initialize an image library on demand and cache whether we
644 were successful or not.
645 (syms_of_image): Initialize `Vimage_types' and
646 `Vimage_type_cache'. Add recognized image types to Vimage_types.
647 Export `init-image-library'.
648 (init_image): Remove initialization of all image types, except xbm
649 and pbm.
650
651 * xdisp.c (Vimage_types): Delete (moved to image.c).
652
904ee128
AS
6532004-06-14 Andreas Schwab <schwab@suse.de>
654
655 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
656 Avoid calling specbind when completion-regexp-list is empty.
657
092de21d
RS
6582004-06-13 Richard M. Stallman <rms@gnu.org>
659
660 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
661 (re_wctype, re_iswctype, re_wctype_to_bit):
662 Non-function definitions moved here from regex.c.
1ebd4f78 663
092de21d
RS
664 * regex.c (re_wctype, re_iswctype): Function defs longer static.
665 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
666 (re_wctype, re_iswctype, re_wctype_to_bit):
667 Non-function definitions moved to regex.h.
668
669 * window.c (Fselect_window): Doc fix.
670
671 * syntax.c: Include regex.h.
672 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
673 If requested, make a list of classes, then check the scanned
674 chars for membership in them.
675 (in_classes): New function.
676 Doc fix.
677
678 * keyboard.c (cmd_error): Don't call any_kboard_state
679 if inside a recursive edit level.
680
6812004-06-13 Lorentey K\e,Aa\e(Broly <lorentey@elte.hu>
682
683 * keyboard.c (command_loop): Call any_kboard_state before
684 command_loop_2 when at top level.
685
3ebc0939
AS
6862004-06-13 Andreas Schwab <schwab@suse.de>
687
cea5d0d4
AS
688 * print.c (print_object): Always use %ld for printing EMACS_INT.
689
690 * keyboard.c (cancel_hourglass_unwind): Return a value.
691 (modify_event_symbol): Always use %ld for printing EMACS_INT.
692 (Fexecute_extended_command): Likewise.
693
694 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
695 avoid clashes.
696 (SYNTAX): Likewise.
697 (SYNTAX_WITH_FLAGS): Likewise.
698 (SYNTAX_MATCH): Likewise.
699
700 * syntax.c (char_quoted): Avoid warning about undefined operation.
701 (find_defun_start): Likewise.
702 (scan_lists): Likewise.
703 (INC_FROM): Likewise.
704 (scan_sexps_forward): Likewise.
705
be8c4ce4
AS
706 * image.c: Include <ctype.h>.
707
3ebc0939
AS
708 * xfaces.c (face_attr_equal_p): Declare parameters.
709
6fb41b5b
KH
7102004-06-13 Kenichi Handa <handa@m17n.org>
711
712 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
713
fc3095ce
EZ
7142004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
715
716 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
717
66189a40
KH
7182004-06-12 Kenichi Handa <handa@m17n.org>
719
720 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
721 ccl_prog_stack_struct and update it.
722 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
723 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
724 ccl->eof_ic on EOF.
725 (ccl_debug_hook): New function.
726 (struct ccl_prog_stack): New member eof_ic.
727 (ccl_driver): Handle EOF in subrountine call correctly.
728
7292004-06-11 Kenichi Handa <handa@m17n.org>
730
731 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
732
1da71023
KS
7332004-06-11 Kim F. Storm <storm@cua.dk>
734
735 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
736
e9efcef4
JB
7372004-06-11 Juanma Barranquero <lektu@terra.es>
738
739 * keyboard.c (Fposn_at_point): Doc fix.
740
9b9ceb61
DK
7412004-06-11 David Kastrup <dak@gnu.org>
742
743 * search.c (match_limit): Don't flag an error if match-data
744 exceeding the allocated search_regs.num_regs gets requested, just
745 return Qnil.
746
6e87ac8f
MB
7472004-06-08 Miles Bader <miles@gnu.org>
748
749 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
750
0b0dea7b
JB
7512004-06-07 Juanma Barranquero <lektu@terra.es>
752
753 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
754 (Fcurrent_time_string, Fcurrent_time_zone)
755 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
756
a0a23346
MB
7572004-06-07 Miles Bader <miles@gnu.org>
758
08384afd 759 * xfaces.c (struct named_merge_point): New type.
a0a23346
MB
760 (push_named_merge_point): New function.
761 (merge_named_face): New function.
762 (merge_face_ref, face_at_buffer_position, face_at_string_position):
763 Use `merge_named_face'.
764 (merge_face_inheritance): Function removed.
c8d09ad8 765 (merge_face_ref): Rename from `merge_face_vector_with_property'.
a0a23346
MB
766 Add new `err_msgs' and `named_merge_points' args. Return error
767 status. Only print error messages if ERR_MSGS is true. Don't try to
768 do :inherit attribute validation.
769 (merge_face_heights): Handle `unspecified' in both directions.
770 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
771 Call `merge_face_ref' instead of `merge_face_inheritance'.
772 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
773 (compute_char_face, face_at_buffer_position)
774 (face_at_string_position): Call `merge_face_ref' instead of
775 `merge_face_vector_with_property'.
776
12d5b185
KH
7772004-06-07 Kenichi Handa <handa@m17n.org>
778
779 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
780 the necessary places.
781
2e2d7ee6
KS
7822004-06-07 Kim F. Storm <storm@cua.dk>
783
784 * process.c (Fdelete_process): Undo 2004-05-28 change.
785 Instead, call status_notify also for network process.
786 (status_message): Use process instead of status as arg.
787 Give messages "deleted" or "connection broken by remote peer" for
788 an exited network process.
789 (status_notify): Change call to status_message.
790 (read_process_output): Increase readmax to 4096. Do not increase
791 buffer size for datagram channels (default is now large enough).
792
fcf0d299
ST
7932004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
794
795 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
796 problem due to newly defined variable.
797
0722292b
MB
7982004-06-06 Miles Bader <miles@gnu.org>
799
800 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
801 immediately if non-interactive or not initialized.
802
ddfb8369
RS
8032004-06-05 Richard M. Stallman <rms@gnu.org>
804
805 * minibuf.c (Fcompleting_read): Doc fix.
806
57015754
AS
8072004-06-05 Andreas Schwab <schwab@suse.de>
808
809 * macfns.c (x_create_tip_frame): Fix declaration after statement.
810
23715ea6
JB
8112004-06-05 Juanma Barranquero <lektu@terra.es>
812
813 * keymap.c (Fdescribe_vector): Fix docstring.
814 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
815
8e330b22
MB
8162004-06-05 Miles Bader <miles@gnu.org>
817
818 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
819 attributes have different values than the default face.
820
9742a3a6
EZ
8212004-06-04 Eli Zaretskii <eliz@gnu.org>
822
823 * xfaces.c (x_supports_face_attributes_p): Make this function
824 conditional on HAVE_WINDOW_SYSTEM.
c8d09ad8
SM
825 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
826 Don't call x_supports_face_attributes_p if it was not compiled in.
9742a3a6 827
9717e36c
MB
8282004-06-04 Miles Bader <miles@gnu.org>
829
830 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
831 from Ftty_supports_face_attributes_p.
832 (x_supports_face_attributes_p): New function.
833 (Ftty_supports_face_attributes_p): Function deleted.
834 (Fdisplay_supports_face_attributes_p): New function.
835 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
f9711de4 836 (face_attr_equal_p): New function.
9717e36c
MB
837 (lface_equal_p): Use it.
838
52deb19f
JB
8392004-06-03 Juanma Barranquero <lektu@terra.es>
840
841 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
842 (Vw32_color_map): Fix typo in docstring.
843 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
844 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
845 Make argument names match their use in docstring.
846
86d373e6
JB
8472004-06-02 Juanma Barranquero <lektu@terra.es>
848
849 Work around bugs/problems with MinGW builds of graphics libraries
850 called from MSVC builds of Emacs.
851
852 * image.c (lookup_image): Make pointer to img static.
853 (png_read_from_memory): Disable "global" optimization.
854
2fb0ce67
SM
8552004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
856
c8d09ad8
SM
857 * eval.c (Fcondition_case): Fix usage. Simplify.
858
2fb0ce67
SM
859 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
860
50bf7673
ST
8612004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
862
863 * macfns.c: Don't include ccl.h.
864 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
86d373e6
JB
865 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
866 TextUtils.h.
c8d09ad8 867 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
50bf7673
ST
868 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
869 display height/width.
870 (compute_tip_xy, Vx_max_tooltip_size): Declare.
871 (unwind_create_tip_frame, compute_tip_xy): New functions.
872 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
873 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
874 and last_show_tip_args.
2fb0ce67 875
50bf7673
ST
876 * macgui.h [!MAC_OSX]: Include Gestalt.h.
877 (Cursor, No_Cursor): New defines.
c8d09ad8 878 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
50bf7673
ST
879 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
880
881 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
882
883 * macterm.c: Don't include Gestalt.h.
884 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
885 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
886 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
887 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
888 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
889 (construct_mouse_click, XTmouse_position)
890 (x_scroll_bar_report_motion, x_calc_absolute_position)
891 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
892 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
893 (note_mouse_movement): Clear the mouse face and reset the pointer
894 shape when the pointer goes outside the frame without grabbing.
895 (mac_front_window): New function.
896 (mac_window_to_frame): New macro.
897 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
898 (do_window_activate, do_window_deactivate, do_app_resume)
899 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
900 (do_zoom_window, mac_do_receive_drag, XTread_socket)
901 (mac_check_for_quit_char): Use mac_front_window and/or
902 mac_window_to_frame.
903 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
904 scroll-bar click event.
905 (mac_define_frame_cursor): Change the pointer shape.
c8d09ad8 906 (x_free_frame_resources): Reset tip_window to NULL when it is disposed.
50bf7673 907 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
c8d09ad8 908 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
50bf7673
ST
909 (do_window_update): Don't do anything if the updated window is the
910 tooltip window.
911 (do_mouse_moved): Handle mouse movement events here (previously in
912 XTread_socket). Clear the mouse face if
913 dpyinfo->mouse_face_hidden is set.
914 (do_os_event, do_events): Remove (now in XTread_socket).
915 (XTread_socket): Immediately return if interrupt_input_blocked.
c8d09ad8
SM
916 Loop until all the events in the queue are processed.
917 Rearrange codes for mouse grabbing. Add tooltip support. Include the
50bf7673
ST
918 contents of do_os_event and do_events. Remove mouse movement
919 handling (now in do_mouse_moved). Add the case where
920 Vmouse_highlight has an integer value.
921 (NewMacWindow): Remove.
922 (make_mac_frame): Do what NewMacWindow previously did. Don't do
923 excess initializations.
924 (make_mac_terminal_frame): Previous initializations in
925 make_mac_frame are moved here.
c8d09ad8
SM
926 (mac_initialize_display_info):
927 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
50bf7673
ST
928
929 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
930 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
931
08fd1251
RS
9322004-05-29 Richard M. Stallman <rms@gnu.org>
933
934 * lisp.h (truncate_undo_list): Update decl.
935
936 * alloc.c (undo_outer_limit): New variable.
937 (syms_of_alloc): Defvar it.
938 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
939
940 * undo.c (truncate_undo_list): New arg LIMITSIZE.
941
942 * alloc.c (lisp_align_malloc): Check for base == 0
943 regardless of HAVE_POSIX_MEMALIGN.
944 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
945
227ef0ff
SM
9462004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
947
948 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
949 (marker_blocks_pending_free): Remove.
950 (Fgarbage_collect): Sweep after cleaning up undo-lists.
951 Mark the undo lists after claning them up.
952 Don't free block in marker_blocks_pending_free.
953 (mark_buffer): Don't mark undo_list.
954 (gc_sweep): Sweep hash-tables and strings first.
955 Do free marker blocks that are empty.
956
034a6113
SM
9572004-05-28 Jim Blandy <jimb@redhat.com>
958
959 * regex.c (print_partial_compiled_pattern): Add missing 'break'
960 after 'case wordend'. For symbeg and symend, print to stderr,
961 like the other cases.
962
33594a8d
NF
9632004-05-28 Noah Friedman <friedman@splode.com>
964
965 * process.c (Fdelete_process): Do not call remove_process.
966
ce50a847
SM
9672004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
968
969 * alloc.c (struct backtrace): Remove.
970 (Fgarbage_collect): Use the new mark_backtrace.
971
972 * eval.c (mark_backtrace): New function.
973
974 * minibuf.c (run_exit_minibuf_hook): New function.
975 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
976 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
977
1e8dae36
KS
9782004-05-27 Kim F. Storm <storm@cua.dk>
979
980 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
981 over display properties, e.g. images, that replace buffer text.
982
846faa3b
KS
9832004-05-25 Kim F. Storm <storm@cua.dk>
984
985 * alloc.c (marker_blocks_pending_free): New var.
986 (gc_sweep): Store free marker blocks on that list.
987 (Fgarbage_collect): Free them after undo-list cleanup.
988
989 * process.c (wait_reading_process_input): Check connect_wait_mask
990 before actually accepting connection in case it has already been
991 accepted due to recursion.
992
6239a668
KH
9932004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu> (tiny change)
994
ce50a847
SM
995 * coding.c (Fset_safe_terminal_coding_system_internal):
996 Set suppress_error in safe_terminal_coding, not terminal_coding.
6239a668 997
71d5a208
RS
9982004-05-22 Richard M. Stallman <rms@gnu.org>
999
1000 * alloc.c (Fmake_string): Doc fix.
1001
1002 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
1003 and the alist pairs too.
1004
1005 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
1006
1007 * emacs.c (main): Update copyright year.
1008
1009 * fileio.c (Fread_file_name): Expand DIR if not absolute.
1010
1011 * insdel.c (del_range_2, replace_range): Don't write an anchor
1012 if the gap is empty.
1013
1014 * xdisp.c (try_scrolling): If scroll-up-aggressively or
1015 scroll-down-aggressively is small but positive, put point
1016 near the screen edge.
1017
f63fd14e
JB
10182004-05-22 Juanma Barranquero <lektu@terra.es>
1019
1020 * keymap.c (Fdefine_key): Doc fix.
1021
4d12067c
KS
10222004-05-22 Kim F. Storm <storm@cua.dk>
1023
1024 * alloc.c (struct backtrace): Add debug_on_exit member.
1025 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
1026 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
1027 the removed cons cells.
1028 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
1029 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
1030 any cons cells pointing to unallocated stings.
1031 Do not lisp_free any marker blocks, as there may still be pointers
1032 to them from buffer undo lists at this stage of GC.
1033
1034 * keyboard.c (struct backtrace): Add debug_on_exit member.
1035 (Fcommand_execute): Clear it.
1036
931285e2
LT
10372004-05-20 Luc Teirlinck <teirllm@auburn.edu>
1038
1039 * intervals.c (lookup_char_property): Do not prematurely return nil.
1040
669fa600
SM
10412004-05-19 Jim Blandy <jimb@redhat.com>
1042
1043 Add support for new '\_<' and '\_>' regexp operators, matching the
f63fd14e 1044 beginning and end of symbols.
4d12067c 1045
669fa600
SM
1046 * regex.c (enum syntaxcode): Add Ssymbol.
1047 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
1048 (re_opcode_t): New opcodes `symbeg' and `symend'.
1049 (print_partial_compiled_pattern): Print the new opcodes properly.
1050 (regex_compile): Parse the new operators.
ce50a847 1051 (analyse_first): Skip sym(beg|end) (they match only the empty string).
669fa600
SM
1052 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
1053 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
1054 (re_match_2_internal): Match symbeg and symend.
1055
1056 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
1057
0d8c2e5c
KS
10582004-05-19 Kim F. Storm <storm@cua.dk>
1059
1060 * .gdbinit (xsymbol): Fix last change.
1061
669fa600
SM
10622004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
1063
1064 * .gdbinit (xprintstr): New fun.
1065 (xstring, xprintsym): Use it.
1066
1067 * w32proc.c (create_child): Use INTMASK.
1068
1069 * alloc.c (Fgarbage_collect): Do all the marking before flushing
1070 unmarked elements of the undo list.
1071
9a6a4c40
DP
10722004-05-18 David Ponce <david@dponce.com>
1073
1074 * print.c (print): Reset print_depth before to call print_object.
1075
f3c4ec74
JR
10762004-05-18 Jason Rumney <jasonr@gnu.org>
1077
1078 * w32console.c: Prefix RIF functions with w32con_ to avoid
1079 namespace clash with functions in term.c and w32term.c.
1080
1081 * w32menu.c (add_menu_item, w32_menu_display_help)
1082 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
1083
0d8c2e5c 1084 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
f3c4ec74 1085
6be49c3a
EZ
10862004-05-18 Eli Zaretskii <eliz@gnu.org>
1087
4d0b9a0a
EZ
1088 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
1089
6be49c3a
EZ
1090 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
1091 with make_number.
1092 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
1093 with XINT.
1094
0bc90bba
KS
10952004-05-18 Kim F. Storm <storm@cua.dk>
1096
89d19988
KS
1097 * blockinput.h (INPUT_BLOCKED_P): New macros.
1098
1099 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
1100 (Ftop_level): Unblock input if blocked.
1101
0bc90bba
KS
1102 * buffer.h (GET_OVERLAYS_AT): New macro.
1103 * msdos.c (IT_note_mouse_highlight): Use it.
1104 * textprop.c (get_char_property_and_overlay): Use it.
1105 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
1106 * xfaces.c (face_at_buffer_position): Use it.
1107
1108 * print.c (print_object): Increase buf size.
1109
653bd0f6
JR
11102004-05-17 Jason Rumney <jasonr@gnu.org>
1111
1112 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
1113 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
1114 Lisp_Object using i member.
1115 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
1116 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
1117 consistently.
1118
1119 * w32proc.c (create_child): Use make_number instead of masking pid.
1120
1121 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
1122 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
1123 Use EQ to compare Lisp_Objects.
1124 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
1125
1126 * w32term.c (w32_num_mouse_buttons): Rename from
1127 Vw32_num_mouse_buttons and make it an int.
1128
1129 * w32.c (init_environment): Use it.
1130
1131 * w32fns.c (w32_wnd_proc): Likewise.
1132
1133 * w32proc.c (w32_pipe_read_delay): Rename from
1134 Vw32_pipe_read_delay and make it an int.
1135
1136 * w32.c (_sys_read_ahead): Use it.
1137
1138 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
1139
1140 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
1141
1142 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
1143 (key_event): Don't mix Lisp_Object and int.
1144
1145 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
1146
1147 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
1148 modifiers in language change event.
1149
54b53ba7
KS
11502004-05-17 Kim F. Storm <storm@cua.dk>
1151
1152 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
1153 Such objects may be freed markers which still exist on an undo list.
1154
6e86a75d
JB
11552004-05-16 Juanma Barranquero <lektu@terra.es>
1156
1157 * data.c (Fset_default): Make argument names match their use in
1158 docstring.
1159
fc80da24
AS
11602004-05-15 Andreas Schwab <schwab@suse.de>
1161
1162 * emacs.c (gdb_array_mark_flag): Define.
1163 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
1164
c1380aa6
EZ
11652004-05-15 Eli Zaretskii <eliz@gnu.org>
1166
1167 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
1168 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
1169 defined for the MS-DOS build.
1170
89458937
SM
11712004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
1172
1173 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
1174
08020f9a
KH
11752004-05-14 Kenichi Handa <handa@m17n.org>
1176
1177 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
1178
a433994a
ST
11792004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1180
1181 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
1182 section to frame.c section.
1183 (Fxw_display_color_p, Fx_file_dialog): Declare if
89458937 1184 HAVE_WINDOW_SYSTEM defined.
0d8c2e5c 1185
a433994a 1186 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
0d8c2e5c 1187
a433994a 1188 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
0d8c2e5c 1189
a433994a
ST
1190 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
1191 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
1192 (XTread_socket): Fix int/Lisp_Object mixup.
1193 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
0d8c2e5c 1194
a433994a
ST
1195 * macterm.h (struct frame, struct face, struct image)
1196 (display_x_get_resource, Fx_display_color_p)
89458937
SM
1197 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
1198 Add prototypes.
a433994a 1199
b51a51b9
KS
12002004-05-14 Kim F. Storm <storm@cua.dk>
1201
1202 * process.c (wait_reading_process_input): Make reentrant.
1203 Make Available and Connecting non-static. Save and restore value
1204 of waiting_for_user_input_p.
1205
2bde1dd8
KS
12062004-05-13 Kim F. Storm <storm@cua.dk>
1207
1208 * keyboard.c (mark_kboards): Don't mark x and y members
1209 that are overloaded in selection request events.
1210
a267ab4d
SM
12112004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
1212
1213 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
1214
eb15ce9e
GM
12152004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
1216
1217 * window.c (Fdisplay_buffer, Fsplit_window)
1218 (split-height-threshold): Doc fix.
1219
7fc92635
JB
12202004-05-13 Juanma Barranquero <lektu@terra.es>
1221
1222 * xfaces.c (Ftty_supports_face_attributes_p)
1223 (Finternal_copy_lisp_face): Fix typo in docstring.
1224 (Finternal_get_lisp_face_attribute): Fix docstring.
1225
1ec2a572
JD
12262004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1227
1228 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
1229
ae9292e0
ST
12302004-05-11 Steven Tamm <steventamm@mac.com>
1231
1232 * macfns.c (Fx_create_frame): Default to using tool-bar by
1233 setting tool-bar-lines to 1 in default-frame-alist.
1234
12352004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ea1aaa6f
ST
1236
1237 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
1238 (xpm_get_color_table_v, xpm_make_color_table_h)
1239 (xpm_put_color_table_h, xpm_get_color_table_h)
1240 (xpm_str_to_color_key, xpm_load_image, xpm_load)
1241 (syms_of_image): Support XPM on Carbon Emacs. Does not
a267ab4d 1242 depend on libXpm, but only supports XPM version 3 without extensions.
ea1aaa6f 1243
fe97e8df
ST
12442004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1245
a267ab4d 1246 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
fe97e8df
ST
1247 instead of FRAME_X_P
1248
b47e779e
KS
12492004-05-11 Kim F. Storm <storm@cua.dk>
1250
1251 * process.c (read_process_output): Grow decoding_buf when needed;
1252 this could cause a crash in allocate_string and compact_small_strings.
1253
cdc9b845
EZ
12542004-04-29 Jim Blandy <jimb@redhat.com>
1255
1256 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
1257 against proper opcode.
1258
aa7094ba
JB
12592004-05-10 Juanma Barranquero <lektu@terra.es>
1260
1261 * process.c (Fstart_process): Fix docstring.
1262
1263 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
1264 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
1265 (Fsplit_char, Fchar_charset): Make argument names match their use
1266 in docstring.
1267
e109331a
RS
12682004-05-10 Richard M. Stallman <rms@gnu.org>
1269
1270 * print.c (print_preprocess): Use being_printed, loop_count and
1271 halftail to detect overdeep nesting and cyclic cdr chains.
1272
9a28b921
AS
12732004-05-10 Andreas Schwab <schwab@suse.de>
1274
1275 * lisp.h: Declare Fmake_symbolic_link.
1276
1277 * fileio.c (Frename_file): Remove extra argument in call to
1278 Fmake_symbolic_link.
1279
e2c02c1a
KS
12802004-05-10 Kim F. Storm <storm@cua.dk>
1281
1282 * xdisp.c (calc_line_height_property): Use string position when
1283 object is a string.
1284
cfe9d13e
KH
12852004-05-10 Kenichi Handa <handa@m17n.org>
1286
a57e8159
KH
1287 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
1288 inhibit-modification-hooks to t temporarily before calling
1289 Ferase_buffer.
1290
1291 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
1292 inhibit-modification-hooks to t temporarily before calling
1293 Ferase_buffer.
1294
1295 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
1296 inhibit-modification-hooks to t temporarily before calling
1297 Ferase_buffer.
1298
cfe9d13e
KH
1299 * fns.c (count_combining): Delete it.
1300 (concat): Don't check combining bytes.
1301
ceb96489
JR
13022004-05-09 Jason Rumney <jasonr@gnu.org>
1303
1304 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
1305 (globals_of_w32fns): Set it.
1306
b1c661c7
JB
13072004-05-09 Piet van Oostrum <piet@cs.uu.nl> (tiny change)
1308
1309 * data.c (Fquo): Simplify.
1310
28712a21
JB
13112004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
1312
1313 * data.c (Fquo): If any argument is float, do the computation in
1314 floating point.
1315
0f0af7a8
JB
13162004-05-08 Juanma Barranquero <lektu@terra.es>
1317
88214ef6
JB
1318 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
1319 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
1320 Fix spelling of Emacs on docstring.
1321 (Fset_process_coding_system, Fprocess_coding_system)
1322 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
1323 Make argument names match their use in docstring.
1324 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
1325 Fix docstring.
1326
0f0af7a8
JB
1327 * editfns.c (Finsert_buffer_substring): Make argument names match their
1328 use in docstring.
1329
1330 * syntax.c (Fmodify_syntax_entry): Fix docstring.
1331
2a316a84
ST
13322004-05-07 Steven Tamm <steventamm@mac.com>
1333
1334 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
1335 around call to ReceiveEvent to avoid certain crashes.
1336
13372004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
0d8c2e5c 1338
2a316a84
ST
1339 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
1340 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
1341 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
1342 Save/restore the current graphics port and device handle when
1343 drawing into an offscreen graphics world.
1344
1345 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
1346 (gif_load): Likewise.
1347
ab80314b
JB
13482004-05-07 Juanma Barranquero <lektu@terra.es>
1349
1350 * window.c (Fset_window_buffer): Fix docstring.
1351
70646bb5
TTN
13522004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
1353
1354 * emacs.c (main) [VMS]: Fix var ref.
1355
b03a4fdd
JB
13562004-05-06 Romain Francoise <romain@orebokech.com> (tiny change)
1357
1358 * data.c (Fsetq_default): Fix docstring.
1359
279d3293
JR
13602004-05-06 Jason Rumney <jasonr@gnu.org>
1361
1362 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
1363 to avoid name clash.
1364
f72b5416
JD
13652004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1366
1367 * fileio.c (barf_or_query_if_file_exists): Use lstat.
1368 (Frename_file): Handle renaming of symlinks across file systems.
440c7d00 1369 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
f72b5416 1370
6ab66799
KS
13712004-05-04 Kim F. Storm <storm@cua.dk>
1372
1373 * xdisp.c (Qtotal): New var.
1374 (syms_of_xdisp): Intern and staticpro it.
1375 (calc_line_height_property): New arg total. Set it if
1376 line-spacing property has format (total . VALUE).
1377 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
1378 Handle total line-spacing property.
1379
ab2d724b
JD
13802004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1381
1382 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
1383 "under" scroll bar when size/position changes.
1384
238add5e
JR
13852004-05-03 Jason Rumney <jasonr@gnu.org>
1386
1387 * makefile.nt: Remove.
1388
1644f4e4
EZ
13892004-05-02 Eli Zaretskii <eliz@gnu.org>
1390
a267ab4d
SM
1391 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
1392 Avoid compiler warnings.
05fdbeb8 1393
1644f4e4
EZ
1394 * Makefile.in (region-cache.o): Depend on config.h.
1395
6cbc951e
SM
13962004-05-02 Romain Francoise <romain@orebokech.com> (tiny change)
1397
1398 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
1399 with continuation lines, too.
1400
2b98b088
TTN
14012004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
1402
1403 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
1404
d9bf7950
SM
14052004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
1406
1407 * xdisp.c (calc_line_height_property): YAILOM (yet another
1408 int/Lisp_Object mixup).
1409
affa509c
EZ
14102004-05-01 Eli Zaretskii <eliz@gnu.org>
1411
1412 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
1413 undo bad effect of pack(4) in some versions of system headers.
1414
07c07cfe
JR
14152004-05-01 Jason Rumney <jasonr@gnu.org>
1416
1417 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
1418
e71caa4e
KS
14192004-04-30 Kim F. Storm <storm@cua.dk>
1420
1421 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
b2b55d03 1422 (syms_of_buffer) <cursor-type>: Doc fix.
e71caa4e
KS
1423
1424 * dispextern.h (struct it): Remove member use_default_face.
1425 Add members override_ascent, override_descent, override_boff.
1426
1427 * xdisp.c (init_iterator): Handle line-spacing float value.
1428 Initialize override_ascent member.
1429 (append_space_for_newline): Reset override_ascent.
1430 Remove use_default_face.
1431 (calc_line_height_property): New function to calculate value of
1432 line-height and line-spacing properties. Look at overlays, too.
1433 Set override_ascent, override_descent, override_boff members when
1434 using another face than the current face. Float values are now
1435 relative to the frame default font, by default; accept a cons
1436 of ratio and face name to specify value relative to a specific face.
1437 (x_produce_glyphs): Use calc_line_height_property.
1438 Use override_ascent etc. when set to handle different face heights.
1439 A negative line-spacing property value is interpreted as a total
1440 line height, rather than inter-line spacing.
1441 (note_mouse_highlight): Allocate room for 40 overlays initially.
1442
0fddae66
SM
14432004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
1444
1445 * data.c (Fsubr_name): New fun.
1446 (syms_of_data): Defsubr it.
1447
712d23dc
KS
14482004-04-29 Kim F. Storm <storm@cua.dk>
1449
1450 * xdisp.c (null_glyph_slice): New var.
1451 (append_glyph, append_composite_glyph, append_stretch_glyph):
1452 Use it to initialize glyph slice.
1453
033ad8c6
SM
14542004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
1455
1456 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
1457 (on_hot_spot_p): Make sure we always return a value.
1458 (Flookup_image_map): Remove unused var ix and iy.
1459 (note_mode_line_or_margin_highlight): Remove unused var `image'.
1460
93397360
EZ
14612004-04-27 Eli Zaretskii <eliz@gnu.org>
1462
1463 * msdos.c (init_environment): If one of the TMP... environment
1464 variables is set to a drive letter without a trailing slash,
1465 append a slash.
1466
0c54865e
EZ
14672004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
1468
1469 * editfns.c (lisp_time_argument): Provide externally.
1470
1471 * fileio.c (Fset_file_times): New function.
1472 (syms_of_fileio): Intern and staticpro it.
1473
d3b111bd
KS
14742004-04-27 Kim F. Storm <storm@cua.dk>
1475
07dc1231
KS
1476 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
1477 header line strings.
1478
360fe9d2
KS
1479 * dispextern.h (struct it): New member use_default_face.
1480
d3b111bd
KS
1481 * xdisp.c (Qline_height): New variable.
1482 (syms_of_xdisp): Intern and staticpro it.
1483 (append_space_for_newline): Partially undo 2004-04-25 change;
1484 add default_face_p arg, and restore callers.
1485 Clear it->use_default_face after use.
1486 (x_produce_glyphs): Set default font for ascii char if
1487 it->use_default_font is set. Change line-spacing property to set
1488 just extra line spacing. Handle new line-height property.
1489
0448588b
AS
14902004-04-26 Andreas Schwab <schwab@suse.de>
1491
1492 * print.c (print_object): Print non-ascii characters in bool
1493 vector representation as octal escapes.
1494
1495 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
1496 * print.c (print_object): Use it instead of BITS_PER_CHAR for
1497 bool vectors.
1498 * lread.c (read1): Likewise.
1499 * alloc.c (Fmake_bool_vector): Likewise.
1500 * data.c (Faref, Faset): Likewise.
1501 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
1502 (mapcar1): Likewise.
d3b111bd 1503
536d6baa
ST
15042004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
1505
1506 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
1507
ae11577a
MB
15082004-04-26 Miles Bader <miles@gnu.org>
1509
1510 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
1511
e198ba87
JB
15122004-04-26 Juanma Barranquero <lektu@terra.es>
1513
1514 * buffer.c (Fpop_to_buffer): Fix docstring.
1515
f3d5f92d 15162004-04-26 Steven Tamm <steventamm@mac.com>
e198ba87 1517
f3d5f92d
ST
1518 * lread.c (init_lread): Don't display missing lisp directory
1519 warnings with Carbon Emacs because self-contained bundled Emacs
e198ba87 1520 may be built without correct installation path.
f3d5f92d 1521
03e35edc
KS
15222004-04-25 Kim F. Storm <storm@cua.dk>
1523
9ff3aa31
KS
1524 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
1525
1526 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
1527
03e35edc
KS
1528 * xdisp.c (append_space_for_newline): Rename from append_space.
1529 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
1530 (x_produce_glyphs): Handle line-spacing property on newline char.
1531 If value is t, adjust ascent and descent to fit current row height.
1532 If value is an integer or float, set extra_line_spacing to integer
1533 value, or to float value x current line height.
1534
f24814e0
KH
15352004-04-23 Kenichi Handa <handa@m17n.org>
1536
1537 * fontset.c (Finternal_char_font): If POSITION is nil, return
1538 font for displaying CH with the default face.
1539
d814862a
JB
15402004-04-23 Juanma Barranquero <lektu@terra.es>
1541
1542 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
1543
063a45c5
SM
15442004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
1545
1546 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
1547 Don't make assumptions about the relative place of i and val.
1548 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
1549
ae7ab2d3
KS
15502004-04-21 Kim F. Storm <storm@cua.dk>
1551
1552 * dispextern.h (struct glyph_slice): New struct.
1553 (struct glyph): New member slice.
1554 (GLYPH_SLICE_EQUAL_P): New macro.
1555 (GLYPH_EQUAL_P): Use it.
1556 (struct glyph_string): New member slice.
1557 (struct it_slice): New struct.
1558 (struct it): New member slice, add member to stack too.
1559 New member constrain_row_ascent_descent_p.
1560 (image_ascent): Add prototype.
1561
1562 * dispnew.c (buffer_posn_from_coords): Return full image width
1563 and height even for image slices (posn is relative to full image).
1564 (marginal_area_string): Adjust x0,y0 for image slice.
1565
1566 * image.c (image_ascent): Add slice arg; calculate ascent for
1567 image slice (or full image).
1568
1569 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
1570 (syms_of_keyboard): Defsubr them.
1571
1572 * lisp.h (pos_visible_p): Fix prototype.
1573
c62aec78 1574 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
ae7ab2d3
KS
1575 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1576 (x_draw_image_foreground, x_draw_image_relief)
1577 (x_draw_image_foreground_1, x_draw_image_glyph_string):
1578 Draw sliced images.
1579
1580 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
1581 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1582 (x_draw_image_foreground, x_draw_image_relief)
1583 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
1584 Draw sliced images.
1585
1586 * w32term.h (image_ascent): Remove prototype.
1587
1588 * window.c (Fpos_visible_in_window_p): Return pixel position if
1589 PARTIALLY arg is non-nil. Simplify. Doc fix.
1590 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
1591 to return/set vscroll in pixels.
1592
1593 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
1594
1595 * xdisp.c (Qslice): New variable.
1596 (syms_of_xdisp): Intern and staticpro it.
1597 (pos_visible_p): Return pixel position in new x and y args.
1598 (init_iterator): Reset it->slice info.
1599 (handle_display_prop): Parse (slice ...) property.
1600 (push_it, pop_it): Save/restore slice info.
1601 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
1602 force repositioning of tall row if window is vscrolled, as that
1603 would reset vscroll.
1604 (append_space): Set it->constrain_row_ascent_descent_p to avoid
1605 increasing row height if row is non-empty.
1606 (fill_image_glyph_string): Copy slice info.
1607 (take_vertical_position_into_account): Simplify.
1608 (produce_image_glyph): Handle iterator slice info, setup glyph
1609 slice info. Do not force minimum line height.
1610 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
1611 do not increase height (ascent/descent) of non-empty row when
1612 adding normal character glyph; instead reduce glyph ascent/descent
1613 appropriately; if row is higher than current glyph, adjust glyph
1614 descent/ascent to reposition glyph within the existing row.
1615 Likewise, when char is newline, only set ascent/descent if row is
1616 currently empty.
1617 (note_mouse_highlight): Handle hotspots with sliced image.
1618
1619 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
1620 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1621 (x_draw_image_foreground, x_draw_image_relief)
1622 (x_draw_image_foreground_1, x_draw_image_glyph_string):
1623 Draw sliced images.
1624
1625 * xterm.h (image_ascent): Remove prototype.
1626
d58f8753
SM
16272004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
1628
1629 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
1630
4ce2719d
JPW
16312004-04-20 John Paul Wallington <jpw@gnu.org>
1632
1633 * fns.c (Fassoc, Feql): Fix indentation.
1634
d58f8753 1635 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
4ce2719d 1636
95f8c3b9
JPW
16372004-04-19 John Paul Wallington <jpw@gnu.org>
1638
1639 * fns.c (Feql): New function.
d58f8753 1640 (syms_of_fns): Defsubr it.
95f8c3b9 1641
b7e85537
JR
16422004-04-18 Jason Rumney <jasonr@gnu.org>
1643
1644 * w32select.c (Fw32_set_clipboard_data): Get sequence number
1645 after closing the clipboard.
1646
5a72efd4
LT
16472004-04-16 Luc Teirlinck <teirllm@auburn.edu>
1648
1649 * buffer.c (Fbuffer_base_buffer): Doc fix.
1650
20dc8583
KS
16512004-04-17 Kim F. Storm <storm@cua.dk>
1652
60962ec4
KS
1653 * keymap.c (Fkey_description): Add optional PREFIX arg.
1654 Combine prefix with KEYS to make up the full key sequence to describe.
1655 Correlate meta_prefix_char and following (simple) key to describe
1656 as meta modifier. All callers changed.
1657 (describe_map): Rename arg `keys' to `prefix'. Remove local
1658 `elt_prefix' var. Use Fkey_description with prefix instead of
1659 elt_prefix combined with Fsingle_key_description.
1660 (describe_vector): Declare static. Replace arg `elt_prefix' with
1661 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
1662 if !KEYMAP_P. Use Fkey_description with prefix instead of
1663 Fsingle_key_description.
1664
1665 * keymap.h (Fkey_description): Fix prototype.
1666 (describe_vector): Remove prototype.
1667
409368b9
KS
1668 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
1669
20dc8583
KS
1670 * image.c (PNG_BG_COLOR_SHIFT): Remove.
1671 (png_load): Fix calculation of transparent background color on X
1672 and W32 platforms.
1673
75c5501b
JB
16742004-04-16 Juanma Barranquero <lektu@terra.es>
1675
1676 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
1677 not too large before computing how much to scroll.
1678
da879ae8
SM
16792004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
1680
1681 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
1682
d01ca4a8
LT
16832004-04-14 Luc Teirlinck <teirllm@auburn.edu>
1684
1685 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
1686 Add hyperlink to Elisp manual to the docstring.
1687
572943b3
SM
16882004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
1689
1690 * callint.c (fix_command): Use XDCR.
1691
5e30a0fb
NR
16922004-04-14 Nick Roberts <nick@nick.uklinux.net>
1693
1694 * window.c (Fget_lru_window): Doc fix.
1695
a27ddfaf
KS
16962004-04-14 Kim F. Storm <storm@cua.dk>
1697
1698 * editfns.c (Fformat): Fix allocation size of precision array.
1699
1700 * dispnew.c (update_window): Only set changed_p if
1701 scrolling_window actually did scroll.
1702 (scrolling_window): Only return 1 if we actually did scroll.
1703
1704 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
1705 height to glyph height when cursor row is not fully visible.
1706 (make_cursor_line_fully_visible): Add FORCE_P arg to return
1707 failure in case row is higher than window. Callers changed.
1708 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
1709 Try to scroll partially visible, higher-than-window cursor row.
1710 (redisplay_window): Always try to scroll partially visible,
1711 higher-than-window cursor row - both initially and again with
1712 centering_position = 0.
1713 Clear desired matrix before retrying with centering_position = 0.
1714
da879ae8
SM
17152004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
1716
1717 * syntax.c (scan_lists): Simplify backward string scan.
1718 Fix off-by-one boundary check for string and comment fences.
1719
5fc16e8e
SM
17202004-04-13 Joe Buehler <jbuehler@hekimian.com>
1721
1722 * sheap.c, unexcw.c: New files.
1723
c9aac8e6
LT
17242004-04-12 Luc Teirlinck <teirllm@auburn.edu>
1725
1726 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
1727 base buffer has been killed. Correct the error message if the
1728 base buffer does not exist.
1729
1e88a355
SM
17302004-04-12 Joe Buehler <jbuehler@hekimian.com>
1731
1732 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
1733 Cygwin itself. Add support for Xaw3d scrollbars.
1734
1735 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
1736
1737 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
1738
1739 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
1740 before Cygwin unexec.
1741
1742 * Makefile.in: Link changes for Cygwin unexec() support.
1743
8dbff9a0
AS
17442004-04-12 Andreas Schwab <schwab@suse.de>
1745
1746 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
1747
54dffe35
LT
17482004-04-11 Luc Teirlinck <teirllm@auburn.edu>
1749
1750 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
1751 IGNORE argument equals NAME. Doc fix.
1752
99a72bdf
MY
17532004-04-11 Masatake YAMATO <jet@gyve.org>
1754
1e88a355 1755 * buffer.c (fix_start_end_in_overlays): Make overlays
99a72bdf
MY
1756 empty if they are backwards.
1757
40899d7b
SM
17582004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
1759
1760 * xfaces.c (face_color_supported_p): Fix compilation without X11.
1761
f8f853de
SM
17622004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
1763
1764 * doc.c (Fsnarf_documentation): Ignore new file name entries.
1765
c953fe1b
KS
17662004-04-06 Kim F. Storm <storm@cua.dk>
1767
661e85c1
KS
1768 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
1769 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
1770
1771 * w32term.c (w32_read_socket): Set mouse_face_hidden after
1772 clearing highlight.
1773
1774 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
1775
1776 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
1777 clearing highlight.
1778
c953fe1b
KS
1779 * indent.c (vmotion): Do not reserve one column for continuation
1780 marks on window frames.
1781
c1994268
EZ
17822004-04-04 Eli Zaretskii <eliz@gnu.org>
1783
1784 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
1785 from GCC.
1786
9f691b0d
SM
17872004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
1788
1789 * .gdbinit-union: Remove.
1790
1791 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
1792 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
1793 ($nonvalbits): Remove.
1794 ($valmask): Set it by calling xreload to avoid redundancy.
1795
1796 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
1797 (gdb_emacs_intbits): Remove.
1798
7a8560d7
JD
17992004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1800
9f691b0d 1801 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
7a8560d7 1802
3c8111fc
KH
18032004-03-30 Kenichi Handa <handa@m17n.org>
1804
1805 * editfns.c (Fformat): Fix initialization of the array info.
1806
48a0bce4
KS
18072004-03-30 Kim F. Storm <storm@cua.dk>
1808
1809 * xterm.c (x_mouse_click_focus_ignore_position): New var.
1810 (syms_of_xterm): DEFVAR_BOOL it.
1811 (ignore_next_mouse_click_timeout): New var.
1812 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
1813 Use it to filter mouse clicks following focus event.
1814
1cd0066c
KS
18152004-03-29 David Ponce <david@dponce.com>
1816
1817 * callint.c (Fcall_interactively): Fix last change.
1818
adb3b353
SM
18192004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
1820
1821 * eval.c (Fcommandp): Simplify.
1822
1823 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
1824 Extend to handle all kinds of functions.
1825
1826 * lisp.h (Finteractive_form): Declare.
1827
1828 * callint.c (Fcall_interactively): Use it.
1829
6fc4c9c9
KS
18302004-03-26 Kim F. Storm <storm@cua.dk>
1831
1832 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
1833 to catch errors in calc_pixel_width_or_height during redisplay.
1834
abdb9b83
MY
18352004-03-26 Masatake YAMATO <jet@gyve.org>
1836
b17856dd 1837 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
abdb9b83 1838
b17856dd 1839 * lisp.h (fix_start_end_in_overlays): Likewise.
abdb9b83 1840
b17856dd 1841 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
abdb9b83 1842
b17856dd 1843 * editfns.c (Ftranspose_regions): Likewise.
abdb9b83 1844
e8a84b6c
JD
18452004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1846
b17856dd 1847 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
e8a84b6c 1848
36a3fd05
RS
18492004-03-19 Richard M. Stallman <rms@gnu.org>
1850
1851 * s/sol2-6.h: Delete previous change.
1852
ab24c127
KS
18532004-03-19 Kim F. Storm <storm@cua.dk>
1854
1855 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
1856 to_charpos corresponds to newline in right fringe. Use local
1857 BUFFER_POS_REACHED_P macro.
1858
992126de
JD
18592004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1860
1861 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
1862 to compile on non-window system.
1863
45dbfc84
KS
18642004-03-19 Kim F. Storm <storm@cua.dk>
1865
1866 * dispextern.h (calc_pixel_width_or_height): Add prototype.
1867
1868 * image.c (Qcenter): Move to xdisp.c.
1869
1870 * xdisp.c (Qcenter): Declare here.
adb3b353 1871 (syms_of_xdisp): Intern and staticpro it.
45dbfc84
KS
1872 (handle_single_display_prop): Allow space display property on all
1873 platforms.
1874 (display_mode_line): Set mode_line_p before displaying line.
1875 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
1876 handling. Remove complex cases for fringes and scroll-bars.
1877 Add left, right, and center alignment positions. Add text (area)
1878 width/height. Return width or height for image specs.
1879 (produce_stretch_glyph): Improve handling of :align-to. Is now
1880 relative to left of text area by default, but other base offsets
1881 can be specified -- also for text lines.
1882
1883 * term.c (produce_glyphs): Handle IT_STRETCH.
1884 (produce_stretch_glyph): New function to handle space width and
1885 align-to display properties on non-window systems.
1886
37264101
SM
18872004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
1888
1889 * fileio.c (Fread_file_name): Set completion-ignore-case for
1890 case-insensitive systems.
1891
73bc43da
MY
18922004-03-14 Masatake YAMATO <jet@gyve.org>
1893
1894 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
1895 when keymap and cursor are setup.
1896
9062aa89
ST
18972004-03-14 Steven Tamm <steventamm@mac.com>
1898
b17856dd 1899 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
9062aa89 1900
e4b1b5ab
KS
19012004-03-14 Kim F. Storm <storm@cua.dk>
1902
1903 * dispextern.h (x_find_image_file): Add prototype.
1904
1905 * image.c (x_find_image_file): Make extern.
1906
1907 * xfns.c (x_find_image_file): Remove prototype.
1908
a6eeaa81 19092004-03-13 Eli Zaretskii <eliz@gnu.org>
5109b06a 1910
37264101 1911 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
5109b06a 1912
37264101 1913 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
5109b06a 1914
e69cfac2
RS
19152004-03-12 Richard M. Stallman <rms@gnu.org>
1916
1917 * fns.c (internal_equal): New arg PROPS controls comparing
1918 text properties. All callers changed.
1919 (Fequal_including_properties): New function.
1920 (syms_of_fns): defsubr it.
1921
45034953
KS
19222004-03-12 Kim F. Storm <storm@cua.dk>
1923
1924 Fix image support on MAC. From YAMAMOTO Mitsuharu.
37264101 1925
45034953
KS
1926 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
1927 (image_background, image_background_transparent): Fix prototypes.
1928
37264101 1929 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
45034953
KS
1930
1931 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
1932 (x_query_font, x_find_ccl_program, x_set_window_size)
1933 (x_make_frame_visible, mac_initialize, XCreatePixmap)
1934 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
1935 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
1936
1937 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
1938 (x_query_font, x_find_ccl_program, x_set_window_size)
1939 (x_make_frame_visible, mac_initialize, XCreatePixmap)
1940 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
1941 (mac_draw_line_to_pixmap): Add prototypes.
1942
19432004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1944
1945 * macterm.c (XTread_socket): Fix mouse click on tool bar.
1946
a12d3d87
KS
19472004-03-11 Kim F. Storm <storm@cua.dk>
1948
d3ab1cf1
KS
1949 * dispextern.h: Move image related prototypes from xfns.c section
1950 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
1951 HAVE_X_WINDOWS.
37264101 1952
37de9f51 1953 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
37264101 1954 Move gtkutil.o to new GTK_OBJ list.
a12d3d87
KS
1955 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
1956 (GTK_OBJ) [USE_GTK]: New declaration.
1957 (obj): Add $(GTK_OBJ) to list.
1958
5243c06a 19592004-03-11 Steven Tamm <steventamm@mac.com>
5109b06a 1960
5243c06a
ST
1961 * image.c [MAC_OSX]: Include sys/stat.h
1962
1963 * macfns.c (syms_of_macfns): Remove definitions of things now
1964 defined in image.c
1965
c0f97789
KS
19662004-03-11 Kim F. Storm <storm@cua.dk>
1967
1968 The following changes consolidates the identical/similar image
1969 support code previously found in xfns.c, w32fns.c, and macfns.c
1970 into a new file image.c.
1971
1972 * makefile.w32-in (OBJ1): Add image.o.
1973 ($(BLD)/image.$(O)): Add dependencies.
1974
1975 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
1976 (image.o): Add dependencies.
37264101 1977
c0f97789
KS
1978 * image.c: New file with consolidated image support code.
1979 (COLOR_TABLE_SUPPORT): New define to control whether
1980 color table support is available (X only).
1981 (Bitmap_Record): Common name for x_bitmap_record,
1982 w32_bitmap_record, and mac_bitmap_record.
1983 (XImagePtr): Common name for pointer to XImage or equivalent.
1984 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
1985 to XImagePtr on X+MAC, and to HDC on W32.
1986 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
1987 (NO_PIXMAP): Common name for "None" or equivalent.
1988 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
1989 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
1990 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
37264101
SM
1991 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
1992 Define with suitable equivalents on W32 and MAC for code sharing.
c0f97789
KS
1993 (XDrawLine): Define on MAC for code sharing.
1994 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
1995 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
1996 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1997 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1998 (x_reference_bitmap, x_create_bitmap_from_data)
1999 (x_create_bitmap_from_file, x_destroy_bitmap)
2000 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2001 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
2002 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2003 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2004 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2005 (define_image_type, lookup_image_type, valid_image_p)
2006 (image_error, enum image_value_type, struct image_keyword)
2007 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2008 (make_image, free_image, prepare_image_for_display, image_ascent)
2009 (four_corners_best, image_background, image_background_transparent)
2010 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2011 (make_image_cache, free_image_cache, clear_image_cache)
2012 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2013 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2014 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2015 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
2016 (init_image_func_pointer, image_load_quartz2d)
2017 (struct ct_color, init_color_table, free_color_table)
2018 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2019 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2020 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2021 (x_disable_image, x_build_heuristic_mask)
2022 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2023 (TIFF support, GIF support, Ghostscript support): Consolidate image
2024 code from xfns.c, w32fns.c, and macfns.c.
2025 (syms_of_image): Consolidate image related symbol setup here.
2026 (init_image): Consolidate image related initializations here.
37264101 2027
c0f97789
KS
2028 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
2029 and init_image. Remove call to init_xfns.
2030
37264101
SM
2031 * macterm.h (struct mac_bitmap_record): Add file member.
2032 Not currently used, but simplifies code sharing.
c0f97789
KS
2033
2034 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2035 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2036 (x_reference_bitmap, x_create_bitmap_from_data)
2037 (x_create_bitmap_from_file, x_destroy_bitmap)
2038 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2039 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
2040 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2041 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2042 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2043 (define_image_type, lookup_image_type, valid_image_p)
2044 (image_error, enum image_value_type, struct image_keyword)
2045 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2046 (make_image, free_image, prepare_image_for_display, image_ascent)
2047 (four_corners_best, image_background, image_background_transparent)
2048 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2049 (make_image_cache, free_image_cache, clear_image_cache)
2050 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2051 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2052 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2053 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
2054 (init_image_func_pointer, image_load_quartz2d)
2055 (struct ct_color, init_color_table, free_color_table)
2056 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2057 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2058 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2059 (x_disable_image, x_build_heuristic_mask)
2060 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2061 (TIFF support, GIF support, Ghostscript support): Merge with image
2062 code from xfns.c and macfns.c into image.c.
2063 (syms_of_xfns): Move image related symbols to image.c.
2064 (init_external_image_libraries, init_xfns): Remove; initialization
2065 moved to init_image in image.c.
2066
2067 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2068 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2069 (x_reference_bitmap, x_create_bitmap_from_data)
2070 (x_create_bitmap_from_file, x_destroy_bitmap)
2071 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2072 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2073 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2074 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2075 (define_image_type, lookup_image_type, valid_image_p)
2076 (image_error, enum image_value_type, struct image_keyword)
2077 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2078 (make_image, free_image, prepare_image_for_display, image_ascent)
2079 (four_corners_best, image_background, image_background_transparent)
2080 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2081 (make_image_cache, free_image_cache, clear_image_cache)
2082 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2083 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2084 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2085 (struct ct_color, init_color_table, free_color_table)
2086 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2087 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2088 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2089 (x_disable_image, x_build_heuristic_mask)
2090 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2091 (TIFF support, GIF support, Ghostscript support): Merge with image
2092 code from xfns.c and macfns.c into image.c.
2093 (syms_of_xfns): Move image related symbols to image.c.
2094 (init_external_image_libraries, init_xfns): Remove; initialization
2095 moved to init_image in image.c.
2096
2097 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2098 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2099 (x_reference_bitmap, x_create_bitmap_from_data)
2100 (x_create_bitmap_from_file, x_destroy_bitmap)
2101 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2102 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2103 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2104 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2105 (define_image_type, lookup_image_type, valid_image_p)
2106 (image_error, enum image_value_type, struct image_keyword)
2107 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2108 (make_image, free_image, prepare_image_for_display, image_ascent)
2109 (four_corners_best, image_background, image_background_transparent)
2110 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2111 (make_image_cache, free_image_cache, clear_image_cache)
2112 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2113 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2114 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2115 (struct ct_color, init_color_table, free_color_table)
2116 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2117 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2118 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2119 (x_disable_image, x_build_heuristic_mask)
2120 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2121 (TIFF support, GIF support, Ghostscript support): Merge with
2122 w32fns.c and macfns.c image code into image.c.
2123 (syms_of_xfns): Move image related symbols to image.c.
2124 (init_xfns): Remove; initialization moved to init_image in image.c.
2125
2126 * lisp.h (syms_of_image, init_image): Add protoypes.
2127 (init_xfns): Remove prototype.
2128
2129 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2130 (x_reference_bitmap, x_create_bitmap_from_data)
2131 (x_create_bitmap_from_file, x_destroy_bitmap)
2132 (x_create_bitmap_mask): Move prototypes from dispextern.h.
2133 (gamma_correct) [MAC_OS]: Add prototype.
2134
2135 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2136 (x_reference_bitmap, x_create_bitmap_from_data)
2137 (x_create_bitmap_from_file, x_destroy_bitmap)
2138 (x_create_bitmap_mask): Move prototypes to dispextern.h.
2139
6eced09c
KH
21402004-03-09 Kenichi Handa <handa@etlken2>
2141
2142 * coding.c (decode_coding_emacs_mule): Handle insufficent source
2143 correctly.
2144
9a7e95f3
RS
21452004-03-04 Richard M. Stallman <rms@gnu.org>
2146
04a6e76b
RS
2147 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
2148
9a7e95f3
RS
2149 * window.c (Fdisplay_buffer): Doc fix.
2150
2151 * buffer.c (Fpop_to_buffer): Doc fix.
2152
6c2488df
KS
21532004-03-03 Kim F. Storm <storm@cua.dk>
2154
2155 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
2156
d8d95bc7
SM
21572004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
2158
2159 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
2160
357589bf
RS
21612004-03-02 Richard M. Stallman <rms@gnu.org>
2162
2163 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
2164
409949b5
KH
21652004-03-02 Kenichi Handa <handa@m17n.org>
2166
2167 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
2168
d24bc50f
KS
21692004-03-02 Kim F. Storm <storm@cua.dk>
2170
2171 * window.h (struct window): New member overlay_arrow_bitmap.
2172
2173 * window.c (make_window): Initialize overlay_arrow_bitmap.
2174
2175 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
2176 implement and integrate multiple overlay arrows with redisplay.
2177 (syms_of_xdisp): DEFVAR_LISP and initialize it.
2178 (last_arrow_position, last_arrow_string): Replace by properties.
2179 (Qlast_arrow_position, Qlast_arrow_string)
2180 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
2181 (syms_of_xdisp): Intern and staticpro them.
2182 (overlay_arrow_string_or_property, update_overlay_arrows)
2183 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
2184 (overlay_arrow_at_row): New functions for multiple overlay arrows.
2185 (redisplay_internal): Use them instead of directly accessing
2186 Voverlay_arrow_position etc. for multiple overlay arrows.
2187 (mark_window_display_accurate): Use update_overlay_arrows.
2188 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
2189 (try_window_id): Use overlay_arrows_changed_p.
2190 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
2191 (display_line): Use overlay_arrow_at_row to check multiple
2192 overlay arrows, and get relevant overlay-arrow-string and
d8d95bc7 2193 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
d24bc50f
KS
2194 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
2195 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
2196
2197 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
2198 (update_window_fringes): Remove unused code.
2199
c1464661
JR
22002004-03-01 Jason Rumney <jasonr@gnu.org>
2201
2202 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
2203
a64387ee
JB
22042004-03-01 Juanma Barranquero <lektu@terra.es>
2205
2206 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
2207
2208 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
2209
334faa08
JD
22102004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2211
2212 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
2213 how many colors can be displayed.
2214
bb62616f
KH
22152004-03-01 Kenichi Handa <handa@m17n.org>
2216
2217 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
2218 correctly.
2219
0fd16104
KS
22202004-02-28 Kim F. Storm <storm@cua.dk>
2221
2222 * dispnew.c (update_window): Update header line also if there are
2223 no other changes in window (move code after set_cursor label).
2224
2225 * lisp.h (mark_window_display_accurate): Remove prototype.
2226
2227 * window.c (window_loop, Fforce_window_update): Force mode line
2228 updates by setting prevent_redisplay_optimizations_p and
2229 update_mode_lines.
2230
b59dd9c8
JD
22312004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2232
d8d95bc7 2233 * xfns.c (x_window): Fix indentation.
b59dd9c8
JD
2234
2235 * xterm.c (x_calc_absolute_position): Call x_real_positions
2236 to get WM window sizes and use those to calculate position.
d8d95bc7 2237 (x_set_offset): Remove code commented out.
b59dd9c8 2238
a874691c
MB
22392004-02-28 Miles Bader <miles@gnu.org>
2240
2241 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
2242
3e0c6482
KS
22432004-02-28 Kim F. Storm <storm@cua.dk>
2244
2245 * keyboard.c (kbd_buffer_store_event_hold): New function to store
2246 an event into kbd fifo, but with special handling of quit event;
2247 a quit event is saved for later, and further events are discarded
2248 until the saved quit event has been processed.
2249 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
2250 (gen_help_event): Store help event in kbd fifo.
2251 (NREAD_INPUT_EVENTS): Remove.
2252 (read_avail_input): Adapt to new read_socket_hook interface.
2253 Remove allocation and initialization of local input_event buffer,
2254 as read_socket_hook stores events directly in fifo. Allocate and
2255 initialize local hold_quit event to handle postponed quit event
2256 (and store it if set by kbd_buffer_store_event_hold).
2257
2258 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
2259 (gen_help_event): Fix prototype.
2260
a64387ee 2261 * macterm.c (XTread_socket): Remove bufp_r and
3e0c6482 2262 numcharsp args. Add hold_quit arg.
f63fd14e 2263 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
2264 directly in fifo using kbd_buffer_store_event_hold.
2265
2266 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
2267 (read_input_waiting): Adapt to new read_socket_hook interface.
2268 Remove allocation and initialization of local input_event buffer,
2269 as read_socket_hook stores events directly in fifo. Allocate and
2270 initialize local hold_quit event to handle postponed quit event
2271 (and store it if set by kbd_buffer_store_event_hold).
2272
a64387ee 2273 * term.c (read_socket_hook): Fix arg list.
3e0c6482
KS
2274
2275 * termhooks.h (read_socket_hook): Fix prototype.
2276
2277 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
2278 numcharsp args. Add hold_quit arg.
f63fd14e 2279 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
2280 directly in fifo using kbd_buffer_store_event_hold.
2281
2282 * w32inevt.h (w32_console_mouse_position): Fix prototype.
2283
2284 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
f63fd14e
JB
2285 Add hold_quit arg. Rework to use just one, local, inev
2286 input_event. Store inev directly in fifo using
3e0c6482
KS
2287 kbd_buffer_store_event_hold. Update count in one place.
2288 Postpone call to gen_help_event until inev is stored; use new
2289 local do_help for this.
2290 Remove local emacs_event in handing of ButtonPress event; just use
2291 inev instead (so no reason to copy it later).
2292
2293 * xsmfns.c (x_session_check_input): Remove numchars arg.
2294
d8d95bc7
SM
2295 * xterm.c (x_focus_changed, x_detect_focus_change):
2296 Remove numchars arg. Always store event into bufp arg.
2297 Return nothing. Callers changed accordingly.
3e0c6482
KS
2298 (glyph_rect): Simplify.
2299 (STORE_KEYSYM_FOR_DEBUG): New macro.
2300 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
2301 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
2302 (current_hold_quit) [USE_GTK]: Add.
2303 (event_handler_gdk): Adapt to new handle_one_xevent.
2304 (handle_one_xevent): Remove bufp_r and numcharsp args.
f63fd14e
JB
2305 Add hold_quit arg. Rework to use just one, local, inev
2306 input_event. Store inev directly in fifo using
3e0c6482
KS
2307 kbd_buffer_store_event_hold. Update count in one place.
2308 Postpone call to gen_help_event until inev is stored; use new
2309 local do_help for this.
2310 Simplify handling of keysyms (consolidate common code). Fix bug
2311 where count was updated with nchars instead of nbytes.
2312 Remove local emacs_event in handing of ButtonPress event; just use
2313 inev instead (so no reason to copy it later).
2314 Remove `out' label. Rename label `ret' to `done'; add various
2315 `goto done' to clarify code flow in deeply nested blocks.
2316 (x_dispatch_event): Simplify as handle_one_xevent now calls
2317 kbd_buffer_store_event itself.
f63fd14e 2318 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
3e0c6482
KS
2319 arg. Call handle_one_xevent with new arglist. Store event from
2320 x_session_check_input in fifo.
2321 [USE_GTK]: Setup current_hold_quit.
2322 Decrement handling_signal before unblocking input.
2323 (x_initialize) [USE_GTK]: Initialize current_count.
2324
2325 * xterm.h (x_session_check_input): Fix prototype.
2326
e3564461 23272004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
a64387ee 2328
d8d95bc7 2329 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
a64387ee 2330
e3564461
ST
2331 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
2332 macgui.h).
a64387ee 2333
e3564461 2334 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
a64387ee 2335
e3564461
ST
2336 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
2337 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
2338 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
2339 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
2340 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
2341 (Bitmap): Remove typedef.
2342 (Pixmap): Change int to GWorldPtr.
2343
d8d95bc7 2344 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
a64387ee 2345
d8d95bc7
SM
2346 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
2347 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
2348 New #define to extract 16-bit depth color components from unsigned
e3564461
ST
2349 long representation.
2350 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
2351 colors used for masks.
2352 (struct mac_display_info): Add color_p. Remove n_cbits.
a64387ee 2353
e3564461
ST
2354 * macfns.c: Include sys/types.h and sys/stat.h.
2355 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
2356 Include QuickTime/QuickTime.h.
2357 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
2358 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
2359 functions defined in macterm.c.
2360 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
2361 (ZPixmap): New #define for compatibility with xfns.c.
2362 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
2363 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
d8d95bc7
SM
2364 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
2365 New functions.
e3564461 2366 (four_corners_best, x_create_x_image_and_pixmap)
d8d95bc7
SM
2367 (x_destroy_x_image, unwind_create_frame, x_disable_image)
2368 (x_edge_detection, init_color_table, colors_in_color_table)
e3564461
ST
2369 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
2370 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
2371 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
2372 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
2373 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
2374 long mixup.
2375 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
2376 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
2377 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
2378 (x_set_cursor_type, Fxw_color_values, valid_image_p)
2379 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
2380 (x_alloc_image_color, clear_image_cache, lookup_image)
2381 (x_find_image_file, xbm_read_bitmap_file_data)
2382 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
2383 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
2384 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
2385 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
2386 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
d8d95bc7 2387 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
e3564461
ST
2388 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
2389 #if 0.
2390 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
2391 #if 0. Free white_relief.gc and black_relief.gc.
d8d95bc7
SM
2392 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
2393 New functions (from xfns.c).
e3564461
ST
2394 (Fx_create_frame): Record unwind_create_frame.
2395 (Fxw_display_color_p): Use dpyinfo->color_p.
2396 (Fx_display_grayscale_p, Fx_display_planes): Don't use
2397 dpyinfo->n_cbits.
2398 (Fx_display_color_cells): Use dpyinfo->n_planes;
2399 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
2400 (Qheuristic, cross_disabled_images, emboss_matrix)
2401 (laplace_matrix): New variables (from xfns.c).
2402 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
2403 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
2404 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
d8d95bc7
SM
2405 (image_background_transparent): New function (from xfns.c).
2406 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
2407 (image_load_quicktime): Add declaration.
2408 [MAC_OSX] (image_load_quartz2d): Likewise.
2409 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
2410 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
d8d95bc7 2411 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
e3564461
ST
2412 (xbm_load_image_from_file, x_laplace_read_row)
2413 (x_laplace_write_row, pbm_read_file): Remove functions.
2414 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
2415 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
2416 (colors_in_color_table): Sync with xfns.c (although not used).
2417 (lookup_rgb_color): Don't lookup color table. Just do gamma
2418 correction.
2419 (COLOR_INTENSITY): New #define (from xfns.c).
d8d95bc7
SM
2420 (x_disable_image): New function (from xfns.c).
2421 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
2422 (x_build_heuristic_mask): Sync with xfns.c.
2423 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
2424 (HAVE_PBM): Remove #ifdef.
2425 (pbm_load): Sync with xfns.c. Set img->width and img->height
2426 before IMAGE_BACKGROUND.
d8d95bc7 2427 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
e3564461
ST
2428 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
2429 Don't enclose with #if HAVE_PNG.
2430 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
d8d95bc7
SM
2431 symbol _CGImageCreateWithPNGDataProvider is defined.
2432 Otherwise use image_load_quicktime.
e3564461 2433 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
d8d95bc7
SM
2434 [HAVE_PNG] (png_load): Sync with xfns.c.
2435 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
2436 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
2437 HAVE_JPEG.
2438 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
2439 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
2440 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
2441 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
2442 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
2443 (tiff_image_p, tiff_load): Don't enclose declarations with #if
2444 HAVE_TIFF.
2445 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
2446 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
2447 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
d8d95bc7
SM
2448 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
2449 New functions (from xfns.c).
e3564461 2450 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
d8d95bc7 2451 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
e3564461
ST
2452 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
2453 Don't enclose with #if HAVE_GIF.
2454 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
2455 animated gif. Otherwise use image_load_quicktime.
2456 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
2457 gif_DrawText to avoid conflict with QuickdrawText.h.
2458 [HAVE_GIF] (gif_load): Sync with xfns.c.
2459 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
2460 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
2461 Ghostscript is not supported yet).
2462 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
2463 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
2464 cross_disabled_images (from xfns.c). Remove #if 0 for supported
2465 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
2466 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
2467 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
d8d95bc7
SM
2468 HAVE_PNG. Call EnterMovies to support animated gifs.
2469 Call init_image_func_pointer to bind a symbol
e3564461 2470 _CGImageCreateWithPNGDataProvider if it is defined.
a64387ee 2471
d8d95bc7 2472 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
e3564461
ST
2473 (x_draw_bar_cursor): Sync declaration with xterm.c.
2474 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
2475 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
2476 graphics).
2477 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
2478 (mac_draw_line_to_pixmap, XCreatePixmap)
2479 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
d8d95bc7
SM
2480 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
2481 New functions.
2482 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
2483 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
2484 Cast bits to char *.
e3564461
ST
2485 (reflect_byte): New function (from w32fns.c).
2486 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
2487 due to byte alignment.
d8d95bc7
SM
2488 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
2489 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
e3564461
ST
2490 (XSetForeground): Remove static (now used in macfns.c).
2491 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
2492 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
2493 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
2494 (x_draw_glyph_string_box, x_draw_image_foreground)
2495 (x_draw_image_foreground_1, x_draw_image_glyph_string)
2496 (x_draw_stretch_glyph_string, x_draw_glyph_string)
2497 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
2498 Sync with xterm.c.
2499 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
2500 than the xterm.c version when a strictly horizontal or vertical
2501 line is drawn.
2502 (XTset_terminal_window): Add static.
2503 (x_make_frame_visible): Add UNBLOCK_INPUT.
2504 (x_free_frame_resources): New funcion (from xterm.c).
2505 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
2506 occurs in tool bar area.
d8d95bc7
SM
2507 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
2508 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
e3564461
ST
2509 Initialize image cache.
2510 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
2511 Enclose unused functions with #if 0.
2512 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
2513 (decode_mac_font_name): New function to apply code conversions
d8d95bc7 2514 from a mac font name to an XLFD font name according to its script code.
e3564461 2515 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
d8d95bc7 2516 font name to a mac font name according to REGISTRY and ENCODING fields.
e3564461
ST
2517 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
2518 whose name starts with `.'.
2519 (init_font_name_table): Use decode_mac_font_name. Add both
2520 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
2521 of a font is smJapanese.
2522 (mac_do_list_fonts): New function to list fonts that match a given
2523 pattern.
2524 (x_list_fonts, XLoadQueryFont): Use it.
2525 (XLoadQueryFont): Set rbearing field for each variable width
2526 character to avoid needless redraw.
2527 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
2528
446f5f3d
KS
25292004-02-26 Kim F. Storm <storm@cua.dk>
2530
af617d0f
KS
2531 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
2532 as read_socket_hook handler on X aborts if buffer is too small
2533 and W32 handler doesn't always check buffer limit.
2534
446f5f3d
KS
2535 * xdisp.c (handle_single_display_prop): Handle left-fringe and
2536 right-fringe similar to a display margin image. Specifically,
2537 the characters having the fringe prop are no longer shown, and
2538 we use IT_IMAGE/next_element_from_image with image_id = -1 to
2539 do this. Set fringe bitmap face_id in it->face_id.
2540 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
2541 still realize it->face (i.e. the fringe bitmap face).
2542
7d8a0b55
MB
25432004-02-25 Miles Bader <miles@gnu.org>
2544
2545 * xdisp.c (check_it): Check string/string_pos consistency.
2546 (init_iterator): Initialize string-related fields properly.
2547
25482004-02-11 Miles Bader <miles@gnu.org>
2549
2550 * xdisp.c (produce_image_glyph): Force negative descents to zero.
2551
25522004-02-10 Miles Bader <miles@gnu.org>
2553
2554 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
2555 BLOCK_INPUT can be nested, so it doesn't make much sense.
2556
a64387ee 25572004-02-24 Michael Mauger <mmaug@yahoo.com>
ce35edd1
JR
2558
2559 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
2560 (xbm_read_bitmap_data): Use unsigned char for image data.
2561
92f5fba2
LT
25622004-02-23 Luc Teirlinck <teirllm@auburn.edu>
2563
2564 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
2565
8565fb3d
JR
25662004-02-22 Jason Rumney <jasonr@gnu.org>
2567
2568 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
2569 correctly over other bitmaps.
2570
a6eeaa81 25712004-02-21 Eli Zaretskii <eliz@gnu.org>
f8125c39
EZ
2572
2573 * emacs.c (USAGE1): Split into two halves.
2574 (USAGE2): Second half of the old USAGE1.
d8d95bc7
SM
2575 (USAGE3): Rename from USAGE2.
2576 (USAGE4): Rename from USAGE3.
f8125c39 2577
4effffca
EZ
25782004-02-21 Juri Linkov <juri@jurta.org>
2579
2580 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
2581 Fix --multibyte. Move --help, --version to USAGE2. Add alias
2582 --file. Fix -f, -l. Sort options. Untabify.
2583 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
2584
923c1e6f
LT
25852004-02-19 Luc Teirlinck <teirllm@auburn.edu>
2586
2587 * category.c (Fdefine_category, Fcategory_docstring)
2588 (Fget_unused_category, Fset_category_table)
2589 (Fcategory_set_mnemonics): Doc fixes.
2590
b0e225fd
KS
25912004-02-20 Kim F. Storm <storm@cua.dk>
2592
2593 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
2594 The following changes are relative to the 2004-01-21 revision.
2595 (NREAD_INPUT_EVENTS): Define as max number of input events to read
2596 in one call to read_socket_hook. Value is 8.
2597 (read_avail_input): Separate and rework handling of read_socket_hook
2598 and non-read_socket_hook cases. Use smaller input_event buffer
d8d95bc7
SM
2599 in read_socket_hook case, and repeat if full buffer is read.
2600 Use new local variable 'discard' to skip input after C-g.
b0e225fd
KS
2601 In non-read_socket_hook case, just use a single input_event, and
2602 call kbd_buffer_store_event on the fly for each character.
2603
b15aa9f9
SM
26042004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
2605
2606 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
2607 Remove unused `gu' alternative.
2608
83c9aa95
AS
26092004-02-19 Andreas Schwab <schwab@suse.de>
2610
2611 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
2612 warning.
2613
cc808173
KS
26142004-02-18 Kim F. Storm <storm@cua.dk>
2615
2616 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
2617 Fix last change.
2618
ab90a54d
KS
26192004-02-17 Kim F. Storm <storm@cua.dk>
2620
b26f249f
KS
2621 * xdisp.c (fast_find_position): Fix return value of new version;
2622 it was inverted compared to the 21.1 version.
2623 (get_window_cursor_type): Don't look at glyph if NULL.
2624 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 2625
ab90a54d
KS
2626 * keyboard.c: Rework previous change; it didn't consider that the
2627 buf array was allocated on the stack.
2628 (prev_read): Remove variable.
2629 (read_avail_input_buf): New static event buffer array.
b9568dfc 2630 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 2631 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
2632 Use in_read_avail_input to handle re-entrance; when re-entered,
2633 fully initialize and use tmp_buf array instead of read_avail_input_buf.
2634 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
2635 is always cleared on entry. To ensure that, we clear (just) the
2636 entries that were used before we return.
2637 (init_keyboard): Initialize read_avail_input_buf here.
2638
4e039f3f
EZ
26392004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change)
2640
2641 * cmds.c (Fend_of_line): Doc fix.
2642
7b5368c1
EZ
26432004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
2644
2645 * keyboard.c (prev_read): New static variable.
2646 (read_avail_input): Use it to zero out only those slots in buf[]
2647 that were used last time we were called.
2648
a6eeaa81 26492004-02-16 Eli Zaretskii <eliz@gnu.org>
ca4bc494
EZ
2650
2651 * Makefile.in (obj): Move fringe.o from here...
2652 (XOBJ, MAC_OBJ): ...to here.
2653
159c348e
SE
26542004-02-16 Stephen Eglen <stephen@gnu.org>
2655
2656 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
2657
d2f14999
SM
26582004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
2659
b15aa9f9
SM
2660 * data.c (Fbyteorder):
2661 * fringe.c (Fdefine_fringe_bitmap):
2662 * xdisp.c (handle_single_display_prop):
d2f14999
SM
2663 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
2664
8d50508a
JR
26652004-02-16 Jason Rumney <jasonr@gnu.org>
2666
2667 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
2668
dd4497dc
ST
26692004-02-15 Steven Tamm <steventamm@mac.com>
2670
2671 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
2672 controlling emulation of a three button mouse with option and
2673 command keys.
2674 (Qreverse, mac_get_enumlated_btn): Handle the emulation
b15aa9f9 2675 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
dd4497dc 2676
c9159cb3
KS
26772004-02-15 Kim F. Storm <storm@cua.dk>
2678
2cc52658
KS
2679 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
2680
c9159cb3
KS
2681 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
2682 Perform byte-swapping.
2683
12fde2dc
KS
26842004-02-14 Kim F. Storm <storm@cua.dk>
2685
2686 * dispextern.h (struct draw_fringe_bitmap_params): Change member
2687 bits from char to short to facilitate wider bitmaps.
2688 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
2689 member.
2690
2691 * fringe.c (struct fringe_bitmap): Change member bits from char to
2692 short to facilitate 16 bits wide bitmaps. Modify all standard
2693 bitmaps accordingly.
2694 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
2695 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
2696 (draw_fringe_bitmap): Ditto.
2697 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
2698 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
2699 handle up to 16 bits wide bitmaps.
2700 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 2701 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
2702
2703 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
2704 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
2705 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
2706
2707 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
2708 so it is no longer necessary to expand them here.
2709
2710 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
2711
9d7271e8
KS
27122004-02-12 Kim F. Storm <storm@cua.dk>
2713
2714 * window.c (Fwindow_fringes): Doc fix.
2715
706c1e4f
JD
27162004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2717
2718 * xselect.c (x_get_foreign_selection): Add new optional parameter
2719 time_stamp.
2720 (Fx_get_selection_internal): Ditto, pass time_stamp to
2721 x_get_foreign_selection.
2722
2723 * data.c (Fbyteorder): New function.
2724
c2d12b5d
JD
27252004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2726
2727 * atimer.c: Move include stdio.h to same place as in other files.
2728
2729 * region-cache.c: Ditto.
2730
2731 * sysdep.c: Ditto.
2732
2733 * xfaces.c: Ditto.
2734
4c1947b9
SS
27352004-02-09 Sam Steingold <sds@gnu.org>
2736
89458937 2737 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
4c1947b9 2738
82722af3
KS
27392004-02-09 Kim F. Storm <storm@cua.dk>
2740
2741 * fringe.c: New file. Move original fringe related declarations
2742 and code from dispextern.h and xdisp.c here.
2743 Rework code to support user defined fringe bitmaps, redefining
2744 standard bitmaps, ability to overlay user defined bitmap with
2745 overlay arrow bitmap, and add faces to bitmaps.
2746 (Voverflow_newline_into_fringe): Declare here.
2747 (enum fringe_bitmap_align): New enum.
2748 (..._bits): All bitmaps are now defined without bitswapping; that
2749 is now done in init_fringe_once (if necessary).
2750 (standard_bitmaps): New array with specifications for the
2751 standard fringe bitmaps.
2752 (fringe_faces): New array.
2753 (valid_fringe_bitmap_id_p): New function.
2754 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
2755 (draw_fringe_bitmap): New function which draws fringe bitmap,
2756 possibly overlaying bitmap with cursor in right fringe or the
2757 overlay arrow in the left fringe.
2758 (update_window_fringes): Do not handle overlay arrow here.
2759 Compare and copy fringe bitmap faces.
2760 (init_fringe_bitmap): New function.
2761 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
2762 define and destroy user defined fringe bitmaps.
2763 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
2764 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
2765 (syms_of_fringe): New function. Defsubr new DEFUNs.
2766 DEFVAR_LISP Voverflow_newline_into_fringe.
2767 (init_fringe_once, init_fringe): New functions.
2768 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 2769
82722af3
KS
2770 * Makefile.in (obj): Add fringe.o.
2771 (fringe.o): New dependencies.
2772
2773 * dispextern.h (FRINGE_ID_BITS): New definition for number of
2774 bits allocated to hold a fringe number. Increase number of bits
2775 from 4 to 8 to allow user defined fringe bitmaps.
2776 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
2777 left_user_fringe_face_id, right_user_fringe_bitmap,
2778 right_user_fringe_face_id.
2779 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
2780 Move to new file fringe.c.
2781 (MAX_FRINGE_BITMAPS): Define here.
2782 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
2783 and overlay_p. Change member which to int.
2784 (struct redisplay_interface): New members define_fringe_bitmap
2785 and destroy_fringe_bitmap.
2786 (valid_fringe_bitmap_id_p): Add prototype.
2787 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
2788
2789 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
2790 arrows.
2791 (update_frame): Do flush_display if force_flush_display_p to
2792 ensure display (specifically fringes) are updated in a timely
2793 manner when resizing the frame by dragging the mouse.
2794 (update_window_line): Update row if overlay arrow changed.
2795 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
2796 or overlay arrow changed.
2797
2798 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
2799 syms_of_fringe, and init_fringe.
2800
2801 * frame.h (struct frame): New member force_flush_display_p.
2802
2803 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
2804 Add prototypes.
2805
a3993cc8 2806 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
a64387ee 2807 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
a3993cc8
KS
2808 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
2809 Use cursor color for displaying cursor in fringe.
82722af3
KS
2810 (x_redisplay_interface): Add null handlers for
2811 define_fringe_bitmap and destroy_fringe_bitmap functions.
2812
2813 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
2814 xterm.c to handle overlayed fringe bitmaps and to use cursor color
2815 for displaying cursor in fringe.
2816 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
2817 specific functions to define and destroy fringe bitmaps in fringe_bmp.
2818 (w32_redisplay_interface): Add them to redisplay_interface.
2819 (w32_term_init): Call w32_init_fringe instead of explicitly
2820 defining fringe bitmaps in fringe_bmp array.
2821 (x_delete_display): Call w32_reset_fringes instead of explicitly
2822 destroying fringe bitmaps in fringe_bmp array.
2823
2824 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
2825 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
2826 (continued_bits, continuation_bits, ov_bits, first_line_bits)
2827 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
2828 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
2829 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
2830 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
2831 Move fringe handling vars and code to new file fringe.c.
2832 (handle_display_prop): Handle left-fringe and right-fringe
2833 display properties; store user fringe bitmaps in iterator.
2834 (move_it_in_display_line_to): Handle cursor in fringe at eob.
2835 (clear_garbaged_frames): Set force_flush_display_p if resized.
2836 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
2837 (display_line): Handle cursor in fringe at eob.
2838 (display_line): Set row user fringe bitmaps from iterator.
2839
2840 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
2841 Use cursor color for displaying cursor in fringe.
2842 (x_redisplay_interface): Add null handlers for
2843 define_fringe_bitmap and destroy_fringe_bitmap functions.
2844
030400eb
JD
28452004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2846
2847 * macfns.c (Fx_change_window_property): Make doc string and
2848 parameters same as for X version.
2849
2850 * w32fns.c (Fx_change_window_property): Ditto.
2851
3af55251
KS
28522004-02-07 Kim F. Storm <storm@cua.dk>
2853
ec110e9e
KS
2854 * xdisp.c (hscroll_window_tree): Position cursor near to right
2855 margin in hscrolled window when jumping to end of line (rather
2856 than centering cursor).
2857
3af55251
KS
2858 * process.c (wait_reading_process_input): Don't do adaptive read
2859 buffering if waiting for a specific process.
2860
b0c138ce
LT
28612004-02-05 Luc Teirlinck <teirllm@auburn.edu>
2862
2863 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
2864 (Fread_minibuffer, Feval_minibuffer)
2865 (Fread_string, Fread_no_blanks_input)
2866 (Fcompleting_read): Doc fixes.
2867 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
2868 completion-regexp-list. Define Qcase_fold_search and staticpro it.
2869 (read_minibuf): Fix initial comment.
2870 (Ftry_completion, Fall_completions, Ftest_completion): Bind
e8eeaed8 2871 case-fold-search to the value of completion-ignore-case when
b0c138ce
LT
2872 checking completion-regexp-list.
2873 (Fdisplay_completion_list): Make it handle arguments that are
2874 symbols. Doc fix.
2875
9676f5ad 28762004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 2877
9676f5ad 2878 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 2879
9676f5ad
JD
2880 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
2881 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 2882 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 2883 format. Remove unused variable cons.
5b698285
JD
2884
2885 * xselect.c: Include stdio,h.
2886
fc1d15f6
KH
28872004-02-05 Kenichi Handa <handa@m17n.org>
2888
ebaff4af
KH
2889 * fns.c (Fset_char_table_range): Fix previous change.
2890
fc1d15f6
KH
2891 * buffer.c (Fset_buffer_multibyte): Fix docstring.
2892
9676f5ad
JD
28932004-02-04 Luc Teirlinck <teirllm@auburn.edu>
2894
2895 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
2896
da75761f
SM
28972004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
2898
2899 * keymap.c (Vmouse_events): Rename from Vmenu_events.
2900 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
2901
13c5d120
KH
29022004-02-04 Kenichi Handa <handa@m17n.org>
2903
2904 * fns.c (Fset_char_table_range): Handle charsets ascii,
2905 eight-bit-control, and eight-bit-graphic correctly.
2906
2883d842
JR
29072004-02-03 Jason Rumney <jasonr@gnu.org>
2908
2909 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
2910
2911 * w32fns.c (x_to_w32_font): Likewise.
2912
69eff41f
JD
29132004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2914
2915 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
2916 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
2917
2918 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
2919 ClientMessages.
2920
2921 * xselect.c: Include termhooks.h and X11/Xproto.h
2922 (x_check_property_data, x_fill_property_data)
2923 (x_property_data_to_lisp, mouse_position_for_drop)
2924 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 2925 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
2926 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
2927
da75761f 2928 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
2929 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
2930 OUTER_P.
2931 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
2932 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
2933 if vector_ret_p is true.
2934 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 2935
a6eeaa81 29362004-02-02 Eli Zaretskii <eliz@gnu.org>
dcdbbb5d
EZ
2937
2938 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
2939 basename of FILE relative to it, not FILE itself.
2940
09721b31
KH
29412004-02-02 Kenichi Handa <handa@m17n.org>
2942
2943 * coding.c (coding_restore_composition): Check invalid
2944 composition data more rigidly.
2945
eb996101
LT
29462004-01-30 Luc Teirlinck <teirllm@auburn.edu>
2947
2948 * fileio.c (Fread_file_name_internal): Correctly handle the case
2949 where insert-default-directory is nil.
2950 (Fread_file_name): Always return an empty string if the user exits
2951 with an empty minibuffer. Adapt the docstring accordingly.
2952 (syms_of_fileio): Adapt the docstring of insert-default-directory
2953 to the change in Fread_file_name.
2954
a6eeaa81 29552004-01-29 Eli Zaretskii <eliz@gnu.org>
a0367d42
EZ
2956
2957 * alloca.c [!alloca]: Fix the prototype for xfree.
2958
13f52ed8
KH
29592004-01-29 Kenichi Handa <handa@m17n.org>
2960
2961 * fns.c (string_char_to_byte): Optimize for ASCII only string.
2962 (string_byte_to_char): Likewise.
2963
d57625a0
JR
29642004-01-28 Peter Runestig <peter@runestig.com>
2965
2966 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
2967
a64387ee 29682004-01-27 Steven Tamm <steventamm@mac.com>
911c78b4
ST
2969
2970 * unexmacosx.c (unexec_copy): Do not copy more than was
2971 requested to prevent overwriting during unexec.
2972
eb37b8fd
JD
29732004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2974
ce38070a
JD
2975 * process.c (sigchld_handler): Add comment about not calling malloc.
2976
eb37b8fd
JD
2977 * process.h: Add extern to synch_process_termsig.
2978
a64387ee 29792004-01-27 Steven Tamm <steventamm@mac.com>
21a3e657 2980
da75761f
SM
2981 * macterm.c (make_mac_frame, make_mac_terminal_frame):
2982 Move setting of scroll bars from make_mac_frame to
2983 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 2984
d62a265d
RS
29852004-01-26 Richard M. Stallman <rms@gnu.org>
2986
2987 * search.c (Freplace_match): Handle nonexistent
2988 back-references properly.
2989
29902004-01-03 Richard M. Stallman <rms@gnu.org>
2991
2992 * window.c (decode_any_window): New function.
2993 (Fwindow_height, Fwindow_width, Fwindow_edges)
2994 (Fwindow_pixel_edges, Fwindow_inside_edges)
2995 (Fwindow_inside_pixel_edges): Use decode_any_window.
2996
ff236419
JD
29972004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2998
2999 * process.h: synch_process_termsig new variable.
3000
3001 * callproc.c: Define synch_process_termsig.
3002 (Fcall_process): Initiate synch_process_termsig to zero and
3003 check if non-zero and get signal name after subprocess has ended.
3004
3005 * process.c (sigchld_handler): Set synch_process_termsig
3006 if terminated by a signal. synch_process_death setting removed.
3007
3008 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
3009
41b867ea
AS
30102004-01-26 Andreas Schwab <schwab@suse.de>
3011
3012 * print.c (print_preprocess): Declare size as EMACS_INT to not
3013 lose bits.
3014 (print_object): Likewise.
3015 * alloc.c (Fpurecopy): Likewise.
3016
a08084ff
LT
30172004-01-25 Luc Teirlinck <teirllm@auburn.edu>
3018
3019 * window.c (Fwindow_minibuffer_p): Doc fix.
3020
b19ac475
JY
30212004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
3022
3023 * editfns.c (Fformat): Make both passes accept the same set of flags.
3024
fe905025
KH
30252004-01-23 Kenichi Handa <handa@m17n.org>
3026
3027 * fns.c (Fmd5): If OBJECT is a buffer different from the current
3028 one, set buffer to OBJECT temporarily.
3029
438fc6c0
SM
30302004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
3031
455316e2
SM
3032 * keyboard.c (kbd_buffer_gcpro): Remove.
3033 (kbd_buffer_store_event, clear_event, Fdiscard_input)
3034 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
3035 Don't initialize and/or maintain the variable any more. It was made
3036 redundant by my commit of 2003-06-15.
3037
438fc6c0
SM
3038 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
3039
5335a4ee
JD
30402004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3041
3042 * lisp.h: Add undef DECL_ALIGN.
3043
dcdaeebc
SM
30442004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
3045
3046 * process.c (wait_reading_process_input) [SYNC_INPUT]:
3047 Check interrupt_input_pending explicitly.
3048
3049 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
3050
3051 * keyboard.c (handle_async_input): New fun,
3052 extracted from input_available_signal.
3053 (input_available_signal, reinvoke_input_signal): Use it.
3054
9076a823
SM
30552004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
3056
d7107586
SM
3057 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
3058
3059 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
3060 manipulation macros for when tags are in the lower bits.
3061 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
3062 (DECL_ALIGN): New macro.
3063 (DEFUN): Use it.
3064
3065 * lisp.h [ENABLE_CHECKING]: Don't force union type.
3066
3067 * s/darwin.h (__attribute__): Remove outdated workaround.
3068
3069 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
3070
3071 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
3072 Don't check range of malloc address.
3073 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
3074
9076a823
SM
3075 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
3076
3077 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
3078
ba029065
KH
30792004-01-19 Kenichi Handa <handa@m17n.org>
3080
3081 * fontset.c (fontset_font_pattern): Fix previous change.
3082
7af0e8d7
MB
30832004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
3084
3085 * xdisp.c (Voverflow_newline_into_fringe)
3086 (move_it_in_display_line_to, redisplay_internal)
3087 (update_window_fringes, redisplay_window, display_line, window):
3088 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
3089 that it compiles without a window-system.
3090 * dispnew.c (direct_output_for_insert, update_window): Likewise.
3091
77a9cf69
KS
30922004-01-16 Kim F. Storm <storm@cua.dk>
3093
3094 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
3095
a64387ee 3096 * buffer.c (init_buffer_once): Set buffer_defaults and
77a9cf69
KS
3097 buffer_local_flags for indicate_buffer_boundaries.
3098 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
3099 default- variable for it.
3100
3101 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
3102 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 3103 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
3104 overflowing newlines into right fringe.
3105 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
3106 and indicate_bottom_line_p for buffer boundaries and scrolling.
3107 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
3108 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
3109 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
3110 and HOLLOW_SQUARE_BITMAP.
3111 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
3112 Add prototypes.
3113
3114 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
3115 instead of related indicator fields.
3116 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
3117 (direct_output_for_insert): Handle exact width lines like
3118 contined lines. Call update_window_fringes.
3119 (update_window): Call update_window_fringes.
3120 (scrolling_window): Don't skip desired rows with changed bitmaps.
3121 Check if fringe bitmaps changes when assigning scrolled rows.
3122
3123 * xdisp.c (Voverflow_newline_into_fringe): New variable.
3124 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
3125 (move_it_in_display_line_to): Overflow newline into fringe for
3126 rows that are exactly as wide as the window.
3127 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
3128 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
3129 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
3130 (fringe_bitmaps): Add new bitmaps.
3131 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
3132 Select proper bitmap for cursor in fringe when appropriate.
3133 Handle alignment of bitmap to top or bottom of row.
3134 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
3135 done by update_window_fringes.
3136 (update_window_fringes, draw_window_fringes): New functions.
3137 (redisplay_internal): Call update_window_fringes in case only
3138 cursor row is updated.
3139 (redisplay_window): Call update_window_fringes.
3140 Explicitly call draw_window_fringes if redisplay was done using
3141 the current matrix or the overlay arrow is in the window.
3142 (try_window_reusing_current_matrix): Mark scrolled rows for
3143 fringe update (to update buffer-boundaries / scrolling icons).
3144 (find_last_unchanged_at_beg_row): Handle exact width lines line
3145 continued lines.
3146 (display_line): Overflow newline into fringe for rows that are
3147 exactly as wide as the window. Don't append space for newline
d7107586 3148 in this case.
77a9cf69
KS
3149 (notice_overwritten_cursor): Explicitly clear cursor bitmap
3150 in fringe as if it had been overwritten.
3151 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 3152 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
3153 void-text-area-pointer as user options.
3154 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 3155
77a9cf69
KS
3156 * xterm.c (x_update_window_end): Call draw_window_fringes.
3157 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
3158 in row instead of actually drawing fringe bitmaps.
3159 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
3160 (x_draw_window_cursor): Draw cursor in fringe.
3161
3162 * w32term.c (x_update_window_end): Call draw_window_fringes.
3163 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
3164 in row instead of actually drawing fringe bitmaps.
3165 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
3166 (w32_draw_window_cursor): Draw cursor in fringe.
3167
3168 * macterm.c (x_update_window_end): Call draw_window_fringes.
3169 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
3170 in row instead of actually drawing fringe bitmaps.
3171 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
3172 (mac_draw_window_cursor): Draw cursor in fringe.
3173
a633a954
JD
31742004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3175
3176 * xterm.c (handle_one_xevent): Don't handle characters that are part
3177 of an old style (XLookupString) compose sequence.
3178
80460525
KH
31792004-01-15 Kenichi Handa <handa@m17n.org>
3180
3181 * search.c (Freplace_match): Use make_multibyte_string or
3182 make_unibyte_string according to the buffer multibyteness.
3183
7fc34f85
SM
31842004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
3185
3186 * alloc.c (struct interval_block, struct string_block)
3187 (struct symbol_block, struct marker_block, live_string_p)
3188 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
3189 Better preserve alignment for objects in blocks.
3190 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
3191
3192 * lread.c (defvar_per_buffer): Remove dead declaration.
3193
3194 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
3195 space size.
3196
66070bd1
JD
31972004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3198
3199 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
3200 if a key press should pop down. Only pop down if a key is pressed
3201 outside the menu/dialog.
3202 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
3203 popup_get_selection.
3204 (create_and_show_dialog): Pass 1 for down_on_keypress to
3205 popup_get_selection.
3206
de7515d6
JD
32072004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3208
3209 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
3210 BLOCK/UNBLOCK_INPUT.
3211
160b1b50
JD
32122004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3213
3214 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
3215 specified.
3216
3a9f36e6
KH
32172004-01-08 Kenichi Handa <handa@m17n.org>
3218
3219 * editfns.c (Fformat): Fix '&' to '&&'.
3220
3803eb32
AS
32212004-01-08 Andreas Schwab <schwab@suse.de>
3222
3223 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
3224 size if PSEUDOVECTOR_FLAG is set.
3225
9da88f37
KH
32262004-01-07 Kenichi Handa <handa@m17n.org>
3227
74ac5074
KH
3228 * charset.c (Fdeclare_equiv_charset): Fix docstring.
3229
9da88f37
KH
3230 * fontset.c (fontset_ref_via_base): Fix previous change.
3231
05faee07
KS
32322004-01-07 Kim F. Storm <storm@cua.dk>
3233
3234 * process.c (read_process_output): Only activate adaptive
3235 buffering if we read less than 256 bytes at a time.
3236
634910c8
KS
32372004-01-06 Kim F. Storm <storm@cua.dk>
3238
3239 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
3240 object and image object. Return glyph width and height.
3241 (mode_line_string, marginal_area_string): Ditto.
3242
3243 * dispextern.h (buffer_posn_from_coords, mode_line_string)
3244 (marginal_area_string): Fix prototypes.
3245
3246 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
f63fd14e 3247 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
634910c8
KS
3248 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
3249
3250 * keyboard.c (make_lispy_position): Use modified mode_line_string,
3251 buffer_posn_from_coords, and marginal_area_string functions to
3252 include both string object and image object in the lispy position.
3253 Also add actual glyph width and height to position.
3254 (read_key_sequence): Use real buffer position from mouse
3255 event to find keymap property even when click is in marginal area.
3256
3257 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
3258 mode_line_string and marginal_area_string functions to handle
3259 both string object and image object properties.
d7107586 3260
57951c2e
AS
32612004-01-06 Andreas Schwab <schwab@suse.de>
3262
3263 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
3264 character.
3265
181e6a61
AS
32662004-01-02 Andreas Schwab <schwab@suse.de>
3267
d7107586
SM
3268 * macterm.c (emacs_options, x_initialized, same_x_server):
3269 Remove unused (and duplicated) definitions.
181e6a61 3270
31e0fbdd
KS
32712004-01-02 Kim F. Storm <storm@cua.dk>
3272
3273 * process.h (struct Lisp_Process): New members for adaptive read
3274 buffering: adaptive_read_buffering, read_output_delay, and
3275 read_output_skip.
3276
3277 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
3278 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
3279 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
3280 (process_output_delay_count, process_output_skip): New vars.
3281 (Vprocess_adaptive_read_buffering): New variable.
3282 (make_process): Initialize adaptive read buffering members.
3283 (Fstart_process): Set adaptive_read_buffering member.
3284 (deactivate_process): Cleanup adaptive read buffering.
3285 (wait_reading_process_input): Temporarily omit delayed
3286 subprocesses from the set of file descriptors to read from;
3287 adjust the select timeout if we skipped any subprocesses.
3288 (read_process_output): Increase adaptive read buffering delay if
3289 we read less than a full buffer; reduce delay when we read a
3290 full buffer.
3291 (send_process): Simplify using local Lisp_Process var.
3292 Reset adaptive read buffering delay after write.
3293 (init_process): Initialize process_output_delay_count and
3294 process_output_skip.
3295 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
3296
68c6a789
JR
32972004-01-01 Jason Rumney <jasonr@gnu.org>
3298
d7107586 3299 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 3300
3f70fe82
LT
33012003-12-30 Luc Teirlinck <teirllm@auburn.edu>
3302
3303 * print.c (Ferror_message_string): Add hyperlink in the docstring
3304 to the definition of `signal' in the Elisp manual.
3305 * eval.c (Fsignal): Ditto.
3306
a64387ee 33072003-12-29 James Clark <jjc@jclark.com> (tiny change)
c2be49ed
EZ
3308
3309 * fns.c (internal_equal): Return t for two NaN arguments.
3310
7abd90ea
RS
33112003-12-29 Richard M. Stallman <rms@gnu.org>
3312
3313 * data.c (store_symval_forwarding): Handle setting
3314 default-fill-column, etc., by changing the value in
3315 buffers that use the default.
3316
3317 * minibuf.c (Fset_minibuffer_window): Doc fix.
3318
3319 * fileio.c (choose_write_coding_system): Ignore auto_saving
3320 if using the visited file for auto saves.
3321 (Fwrite_region): Don't update SAVE_MODIFF
3322 if auto-saving in visited file.
3323
3e7cfcdc
KH
33242003-12-29 Kenichi Handa <handa@m17n.org>
3325
3326 * dispextern.h (face_font_available_p): Extern it.
3327
3328 * fontset.c (Voverriding_fontspec_alist): New variable.
3329 (lookup_overriding_fontspec): New function.
d7107586 3330 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
3331 (fontset_font_pattern): Likewise.
3332 (regulalize_fontname): New function.
3333 (Fset_fontset_font): Call regulalize_fontname.
3334 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
3335 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
3336 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
3337
3338 * xfaces.c (face_font_available_p): New function.
3339
7abd90ea
RS
33402003-12-28 Richard M. Stallman <rms@gnu.org>
3341
3342 * buffer.c (Fother_buffer): Don't crash if BUF is nil
3343 or if its name is nil.
3344
3345 * buffer.c (Fkill_buffer): Don't delete auto-save file
3346 if it's the same as the visited file.
3347
de1d1a40
LT
33482003-12-28 Luc Teirlinck <teirllm@auburn.edu>
3349
3350 * coding.c (Fcheck_coding_system): Doc fix.
3351
204fb75e
KS
33522003-12-28 Kim F. Storm <storm@cua.dk>
3353
3354 * Makefile.in (eval.o): Depend on dispextern.h.
3355
3356 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
3357 image glyph using image's ascent.
3358 (mode_line_string): Return image glyph as object clicked on.
3359 Adjust y0 for image glyph using image's ascent.
3360
3361 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
3362 (struct glyph): New members, ascent and descent. Used to save
3363 this glyph's ascent and descent, instead of having.
3364 (struct glyph): Declare member face_id using FACE_ID_BITS.
3365 (find_hot_spot): Add prototype.
3366
3367 * keyboard.c (Qimage): Remove extern (now in lisp.h).
3368 (QCmap): Declare extern.
3369 (make_lispy_position): When position is inside image hot-spot,
3370 use hot-spot element's id as posn element.
3371
3372 * lisp.h (IMAGEP): New macro to test for image object type.
3373 (Qimage): Declare extern.
3374
3375 * macfns.c (Qimage): Remove extern (now in lisp.h).
3376 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3377
3378 * macterm.c (Qface, Qmouse_face): Remove unused externs.
3379
3380 * w32fns.c (Qimage): Remove extern (now in lisp.h).
3381 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3382
3383 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
3384
3385 * w32term.c (Qface, Qmouse_face): Remove unused externs.
3386
3387 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
3388 pointer types.
3389 (Qrelative_width, Qalign_to): Remove unused variables.
3390 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
3391 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
3392 image maps.
d7107586 3393 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
3394 new dx and dy args.
3395 Remove buffer_only_p arg (always 0). Simplify code accordingly.
3396 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
3397 than row's ascent and height, to get sensible height on tall rows.
3398 (build_desired_tool_bar_string): Remove Qimage extern.
3399 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
3400 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
3401 image glyph is alone on the last line.
3402 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 3403 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 3404 (on_hot_spot_p): New function to check if position is inside an
d7107586 3405 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
3406 (find_hot_spot): New function to search for image hot-spot.
3407 (Flookup_image_map): New defun to search for image hot-spot.
3408 (define_frame_cursor1): New aux function to determine frame pointer.
3409 (note_mode_line_or_margin_highlight, note_mouse_highlight):
3410 Handle `pointer' text property and :pointer image property to
3411 control frame pointer shape. Detect image hot-spots for pointer
3412 and help_echo properties. Use define_frame_cursor1.
3413 (note_mouse_highlight): Use Vvoid_text_area_pointer.
f63fd14e 3414 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
204fb75e
KS
3415 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
3416
3417 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
3418
3419 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
3420 (Qimage): Remove extern (now in lisp.h).
3421 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3422
3423 * xmenu.c (show_help_event): Remove unused code.
3424
3425 * xterm.c (Qface, Qmouse_face): Remove unused externs.
3426 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
3427 row's ascent and descent, to get a sensible height on tall rows.
3428
fc052137
LT
34292003-12-25 Luc Teirlinck <teirllm@auburn.edu>
3430
3431 * minibuf.c (Fcompleting_read): Undo previous change.
3432
a64387ee 34332003-12-25 Lars Hansen <larsh@math.ku.dk>
b9148500
LH
3434
3435 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
3436 Arguments GCPRO'ed in call to file name handler.
3437
56ffd194
TTN
34382003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
3439
3440 * termcap.c (tgetst1): Scan for "%pN"; if all
3441 N are continuous in [1,9], remove all "%pN".
3442
5202d23d
JD
34432003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3444
f26fab36
JD
3445 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
3446
5202d23d
JD
3447 * xfaces.c (lface_fully_specified_p): Take into account that
3448 MAC OS always have unspecified stipple.
3449
8babaa59
TTN
34502003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
3451
3452 * tparam.c (tparam1): Add handling for `%pN', which
3453 means use param N for the next substitution.
3454
2d176448
TTN
34552003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
3456
3457 * xfaces.c (Fcolor_gray_p): Fix omission bug:
3458 In case `frame' is nil, consult the selected frame.
3459 (Fcolor_supported_p): Likewise.
3460
adb0708c
LT
34612003-12-23 Luc Teirlinck <teirllm@auburn.edu>
3462
000eeb15
LT
3463 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
3464 Doc fixes.
0dc72b11
LT
3465
3466 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
3467 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
3468 (Fread_from_minibuffer): Delete code moved into read_minibuf.
3469 Doc fix.
3470 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
3471 read_minibuf.
3472 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 3473 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 3474
2e4d132b
KH
34752003-12-03 Kenichi Handa <handa@m17n.org>
3476
3477 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
3478 encoding sequence.
3479
3999c705
KH
34802003-12-01 Kenichi Handa <handa@m17n.org>
3481
3482 * composite.c (syms_of_composite): Don't make the compostion hash
3483 table week.
3484
d344ecbb
LT
34852003-11-30 Luc Teirlinck <teirllm@auburn.edu>
3486
3487 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
3488 * textprop.c (Fget_char_property_and_overlay): New function.
3489 (syms_of_textprop): Defsubr it.
3490
03d6484e
JD
34912003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3492
019b1f0e
JD
3493 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
3494 to compile on terminal configuration.
3495
03d6484e
JD
3496 * fileio.c (Fread_file_name): Check use_file_dialog also before
3497 calling Fx_file_dialog.
3498
3499 * fns.c: use_file_dialog: New variable.
3500 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
3501
442d3fd0
KS
35022003-11-29 Kim F. Storm <storm@cua.dk>
3503
3504 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
3505 (syms_of_msdos): Don't intern and staticpro them.
3506
0f6a07a8
KS
35072003-11-27 Kim F. Storm <storm@cua.dk>
3508
3509 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
3510 coordinates relative to glyph at posn. If glyph is an image,
3511 return that as object at posn. Callers changed.
3512 (mode_line_string, marginal_area_string): Calculate and return
3513 pixel coordinates relative to glyph. Callers changed.
3514
3515 * dispextern.h (buffer_posn_from_coords, mode_line_string)
3516 (marginal_area_string): Fix prototypes.
3517 (window_box_left_offset, window_box_right_offset): Add prototypes.
3518
3519 * frame.h (get_specified_cursor_type, get_window_cursor_type):
3520 Remove prototypes.
3521
3522 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
3523
3524 * keyboard.c (make_lispy_position): Add x and y coordinates
3525 relative to the current glyph as 7th element of position.
3526 If glyph is an image, return it in the object element.
3527 (read_key_sequence): Skip checks for keymap property in cases
3528 where POSN_STRING is not a string (e.g. an image).
3529
3530 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
3531 (Vshow_text_cursor_in_void): New variable.
3532 (glyph_to_pixel_coords): Don't use negative hpos.
3533 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
3534 (append_stretch_glyph): Change ascent arg to be actual value
f63fd14e 3535 in pixels rather than ratio to height. Callers changed.
0f6a07a8
KS
3536 (calc_pixel_width_or_height): New aux function, implementing
3537 pixel based artihmetic for glyph widths and heights.
3538 (produce_stretch_glyph): Use calc_pixel_width_or_height for
3539 :width, :height, :align-to, and :ascent, thus allowing these to
3540 be specified in pixels as well as multiples of characters.
3541 Don't produce stretch glyphs with zero width or height.
3542 (get_specified_cursor_type): Declare static.
3543 (get_window_cursor_type): Declare static. Add glyph arg to be
3544 able to know when cursor is on an image; always substitute
3545 hollow-box cursor for filled-box cursor on images, to avoid
3546 negative images and flicker when blinking the cursor.
3547 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
3548 (note_mode_line_or_margin_highlight): Use non-text cursor rather
3549 than vertical scroll-bar cursor in display margins.
3550 (note_mouse_highlight): Use non-text cursor rather than text
3551 cursor in fringes and over images in the text area.
3552 Use non-text cursor when mouse pointer is outside editable text,
3553 i.e. in the void after end-of-line or end-of-buffer; this was
3554 already done for W32, but is now standard for all systems --
3555 user can toggle show-text-cursor-in-void to get old behaviour.
3556 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
3557 Vdisplay_pixels_per_inch.
3558
00498bfc
AS
35592003-11-25 Andreas Schwab <schwab@suse.de>
3560
3561 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
3562 EMACS_INT to not lose bits.
3563 (Ffillarray): Don't set bits beyond the size of a bool vector.
3564
edaa824d
KS
35652003-11-25 Kim F. Storm <storm@cua.dk>
3566
3567 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
3568 define this defun on systems that cannot use stderr as lvalue.
3569
74d6f539
GM
35702003-11-24 Gerd Moellmann <gerd@gnu.org>
3571
3572 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
3573 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
3574 ld's default is incompatible with unexec.
3575
6a1ff3ba
KS
35762003-11-23 Kim F. Storm <storm@cua.dk>
3577
63dc7c6b
KS
3578 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
3579 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
3580 (Fforce_window_update): New defun.
3581 (syms_of_window): Defsubr it.
3582 (Fset_window_margins, Fset_window_fringes): Doc fix.
3583
6a1ff3ba
KS
3584 * print.c (Fredirect_debugging_output): New defun.
3585 (syms_of_print): Defsubr it.
3586
aef109b7
LT
35872003-11-22 Luc Teirlinck <teirllm@auburn.edu>
3588
3589 * fns.c (Fset_char_table_parent): Doc fix.
3590
6a1ff3ba 35912003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
3592
3593 * dispnew.c (buffer_posn_from_coords): Return actual row/column
3594 for glyph clicked on, rather than (unused) pixel positions.
3595 (mode_line_string, marginal_area_string): Change X and Y args to
3596 pointers for returning actual row/column for glyph clicked on.
3597 Simplify and optimize loops.
3598
aef109b7
LT
3599 * dispextern.h (mode_line_string, marginal_area_string):
3600 Update prototypes.
63ccbe21
KS
3601
3602 * keyboard.c (make_lispy_position): New function for generating
3603 mouse click positions from frame and pixel coordinates.
3604 Enhanced to return buffer position and actual row/column for
3605 events outside the text area using updated mode_line_string and
3606 marginal_area_string functions.
3607 Return left-fringe and right-fringe clicks as such, rather than
3608 clicks in text area.
3609 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
3610 pixel_to_glyph_coords, as we never use the results.
3611 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
3612 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
3613 Eliminate unused code in WHEEL_EVENT handling.
3614 (make_lispy_movement): Use make_lispy_position.
3615
3616 * window.c (coordinates_in_window): Remove redundant tests.
3617 Fix returned X pixel value for left-margin.
3618
3619 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
3620 mode_line_string and marginal_area_string parameters.
3621
a64387ee 36222003-11-22 Lars Hansen <larsh@math.ku.dk>
930a9995 3623
d7107586
SM
3624 * w32.c (struct the_group, getgrgid): Add.
3625 * mac.c (struct my_group, getgrgid): Add.
aef109b7 3626
3dbf3426
LT
36272003-11-21 Luc Teirlinck <teirllm@auburn.edu>
3628
3629 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
3630
cae8ddbb 36312003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 3632
d7107586
SM
3633 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
3634 include in call to file name handler. Optionally translate numeric
3635 UID and GID to strings. Update docstring.
3636 (directory_files_internal): Add parameter ID-FORMAT.
3637 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
3638 include in call to file name handler and call to
3639 directory_files_internal. Update Docstring.
3640 (Fdirectory_files): Add dummy parameter in call to
3641 directory_files_internal.
3642 * lisp.h (Qinteger): Add.
3643 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
3644 (Ffile_attributes): Add parameter.
3645 * data.c (Qinteger): Export.
cae8ddbb 3646
2550b848
LT
36472003-11-21 Luc Teirlinck <teirllm@auburn.edu>
3648
3dbf3426 3649 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 3650
88380018
KS
36512003-11-19 Kim F. Storm <storm@cua.dk>
3652
3653 * xdisp.c (init_iterator): Initialize it->start to position
3654 before reseating (in case start position is invisible).
3655 (init_to_row_start): Set it->start to row-start.
3656 (redisplay_window): Accept optional_new_start if start position
3657 is invisible (in which case IT_CHARPOS overshoots PT).
3658 (display_line): Setup row->start from it->start (rather than
3659 it->current which is wrong if first char on line is invisible).
3660 When done, reseat it->start to it->current (= start of next row).
3661 (expose_area): Fix exposure of text area when first char (e.g. TAB)
3662 is only partially visible.
3663
3664 * dispextern.h (struct it): New member start.
3665
854c1a59
SM
36662003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
3667
455316e2
SM
3668 * alloc.c (make_float, Fcons): Clear the markbit at init time.
3669 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
3670 of block_index outside of the macro call.
3671 (Fgarbage_collect): Remove null code.
3672
3673 * m/amdx86-64.h: Don't redefine XPNTR.
3674
854c1a59
SM
3675 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
3676 of VALMASK.
3677
3678 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
3679 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
3680 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
3681
3682 * lisp.h (VALMASK): Only define for non-union type.
3683 (MARKBIT): Remove.
3684 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
3685 (XTYPE): Define unconditionally.
3686 (XSETTYPE): Remove one more remnant.
3687 (EQ): Define differently for the union and non-union cases.
3688 (INTMASK): New bit mask.
3689 (struct Lisp_Marker): Move down to prepare for upcoming patch.
3690 (GC_EQ): Delegate to EQ.
3691
3692 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
3693
a0c6ef2d
JD
36942003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3695
3696 * xterm.c (x_window_to_scroll_bar): Move check of display to
3697 where window_id is compared.
3698
859492c4
KS
36992003-11-17 Kim F. Storm <storm@cua.dk>
3700
3701 * dispextern.h (struct it): New member first_vpos.
3702
3703 * xdisp.c (start_display): Set it->first_vpos.
3704 (try_window_id): Use first_vpos to start display in first _text_
3705 line if no reusable lines at start of window with header line.
3706
810f2256
JD
37072003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3708
7c402969 3709 * w32fns.c (XPutPixel):
854c1a59
SM
3710 * w32bdf.c (w32_init_bdf_font):
3711 * sunfns.c (sel_read):
3712 * process.c (Fmake_network_process):
3713 * frame.c (store_frame_param):
3714 * fontset.c (Fset_fontset_font):
3715 * emacs.c (shut_down_emacs):
a64387ee 3716 * ccl.c (ccl_driver): Remove period at end of error message.
7c402969 3717
a32e9bfd
JD
3718 * config.in: Regenerate.
3719
810f2256
JD
3720 * xfns.c (x_window_to_frame, x_any_window_to_frame)
3721 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
3722 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
3723 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
3724 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
3725
3726 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
3727
3728 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
3729 (XTmouse_position, handle_one_xevent): Pass Display* to
3730 x_window_to_scroll_bar.
3731 (x_window_to_scroll_bar): Take a Display* argument.
3732 Check that display for frame is equal to Display* argument.
854c1a59 3733 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
3734 x_display_info_for_display instead. Use Display in xev instead
3735 of GDK_DISPLAY.
3736 (x_dispatch_event): Call x_display_info_for_display.
f63fd14e 3737 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
810f2256
JD
3738 (x_connection_closed): Call xg_display_close for GTK.
3739 (x_term_init): Call xg_display_open for additional displays.
3740 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
3741 for GTK.
3742
3743 * xmenu.c (single_menu_item, mouse_position_for_popup)
3744 (x_activate_menubar): Formatting adjustments.
3745
3746 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
3747 adjustments.
3748
3749 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
3750 (xg_display_close, xg_create_default_cursor)
3751 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
3752 handling.
854c1a59
SM
3753 (xg_left_ptr_cursor): Remove.
3754 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
3755 cursor here.
3756 (xg_win_to_widget): Take Display* argument, call
3757 gdk_xid_table_lookup_for_display.
3758 (xg_create_frame_widgets, xg_get_file_name, create_menus)
3759 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
3760 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
3761 in FRAME_X_DISPLAY_INFO.
3762 (xg_get_scroll_id_for_window): Take Display* argument.
3763 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 3764 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256
JD
3765
3766 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
3767 Display* argument also. Declare xg_display_open,
3768 xg_display_close, xg_create_default_cursor.
3769
0b03cc78
JD
37702003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3771
3772 * xterm.c (x_detect_focus_change): Do not change focus frame for
3773 Enter/LeaveNotify if the current focus frame has explicit focus.
3774
77e688fa
KS
37752003-11-14 Kim F. Storm <storm@cua.dk>
3776
3777 * dispnew.c (update_text_area): Fix redisplay error when hscroll
3778 is active and first glyph is only partially visible.
854c1a59 3779
dd429b03
KH
37802003-11-13 Kenichi Handa <handa@m17n.org>
3781
3782 * xdisp.c (select_frame_for_redisplay): New function.
3783 (redisplay_internal): Record also selected_frame for
3784 unwind_redisplay. Call select_frame_for_redisplay before
3785 redrawing each frame.
3786 (unwind_redisplay): Argument changed to a cons.
3787
6d9266f4
LT
37882003-11-12 Luc Teirlinck <teirllm@auburn.edu>
3789
3790 * fns.c (Fstring_to_multibyte): Doc fix.
3791
80060eb3
KH
37922003-11-11 Kenichi Handa <handa@m17n.org>
3793
3794 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
3795
74305183
JD
37962003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3797
3798 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
3799 program specified positions.
3800
cfda993e
JD
38012003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3802
3803 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
3804
df211069
KH
38052003-11-08 Kenichi Handa <handa@m17n.org>
3806
3807 * Makefile.in (lisp): Add kannada.el.
3808 (shortlisp): Likewise.
3809
4307d534
KH
38102003-11-07 Kenichi Handa <handa@m17n.org>
3811
854c1a59
SM
3812 * coding.c (coding_allocate_composition_data):
3813 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
3814 (coding_restore_composition): Detect invalid composition data.
3815 Give Fstring and Fvector a Lispy integer, not C int.
3816
854c1a59
SM
38172003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
3818
3819 * floatfns.c (Flogb): Don't use VALMASK.
3820
3821 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
3822 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
3823
3824 * lisp.h (XINT): Move the cast to clarify what is going on.
3825 (GCTYPEMASK, XSETTYPE): Remove.
3826 (XGCTYPE): Make it an alias of XTYPE.
3827
d04103a1
JD
38282003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3829
3830 * xterm.c (x_term_init): Fix formatting.
3831
da18b5ac
JD
38322003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3833
3834 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
3835 and xg_did_tearoff.
3836
3837 * gtkutil.c: Remove variable xg_did_tearoff.
3838 (xg_have_tear_offs): New function.
3839 (tearoff_remove): Just decrease xg_detached_menus.
3840 (tearoff_activate): Increase xg_detached_menus and call
3841 tearoff_remove when tearoff is removed.
854c1a59 3842 (xg_keep_popup): Remove function.
da18b5ac
JD
3843 (create_menus): Give add_tearoff_p as argument to recursive
3844 call to create_menus.
3845 (xg_create_widget): Use variables instead of multiple
3846 strcmp. Tell create_menus to create tear off only for
3847 menu bar menus.
3848 (xg_update_menubar): Change title for a detached menu also.
3849 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
3850 of deep_p.
3851 (xg_initialize): Initialize xg_detached_menus, remove
3852 initialization of xg_did_tearoff.
3853
3854 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
3855 xg_have_tear_offs returns non-zero.
3856 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
3857 call to xg_keep_popup.
3858
64d4923e
AC
38592003-11-01 Andrew Choi <akochoi@shaw.ca>
3860
3861 * macterm.c (XTread_socket): Handle menubar selection and grow
3862 window only for mouseDown events.
854c1a59 3863
6cc8bc07
JD
38642003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3865
3866 * xterm.c (x_term_init): For GTK part, increase x_initialized
3867 to check for more than one display. Use error instead of return 0.
3868
043131c4
AC
38692003-10-31 Andrew Choi <akochoi@shaw.ca>
3870
854c1a59 3871 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
3872 (copy_dysymtab): Call it.
3873
bdda99a1
LT
38742003-10-31 Luc Teirlinck <teirllm@auburn.edu>
3875
3876 * eval.c (Fdefvaralias): Doc fix.
3877
800f42ff 38782003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
3879
3880 * data.c (Fsetplist): Doc fix.
3881
ef35b389
LK
38822003-10-14 Lute Kamstra <lute@gnu.org>
3883
3884 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 3885
ef35b389 38862003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 3887
07107abc
KS
3888 * window.c (Fset_window_margins): Simplify arg checking.
3889
f7005886
RS
38902003-10-13 Richard M. Stallman <rms@gnu.org>
3891
3892 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
3893 (print_partial_compiled_pattern): Replace assert with a printout.
3894 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
3895
3896 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
3897
3898 * window.c (Fset_window_margins): Allow only integers as args.
3899 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
3900 Doc fixes.
3901
9c0c2af5
LK
39022003-10-13 Lute Kamstra <lute@gnu.org>
3903
3904 * window.c (Fset_window_fringes): Elaborate docstring.
3905
3f080e4e
AC
39062003-10-12 Andrew Choi <akochoi@shaw.ca>
3907
854c1a59 3908 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 3909
3f080e4e
AC
3910 * s/darwin.h (GC_MARK_STACK): Define.
3911
0aa513ed
JD
39122003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3913
3914 * window.c (shrink_windows): New function.
3915 (size_window): Call shrink_windows to calculate window sizes when
3916 shrinking frame with more than one window.
3917
6aa8858a
KS
39182003-10-12 Kim F. Storm <storm@cua.dk>
3919
3920 * xdisp.c (compute_fringe_widths): Doc fix.
3921
c2164d91
KH
39222003-10-08 Kenichi Handa <handa@m17n.org>
3923
854c1a59 3924 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 3925
f82ac129
KH
39262003-10-07 Kenichi Handa <handa@m17n.org>
3927
3928 * coding.c (Qcoding_system_define_form): New variable.
3929 (syms_of_coding): Intern and staticpro it.
3930 (Fcheck_coding_system): Try to autoload the definition of
3931 CODING-SYSTEM.
3932
9296c947
LT
39332003-10-05 Luc Teirlinck <teirllm@auburn.edu>
3934
3935 * fns.c (Frequire): Doc fix.
3936
c1f0671a
JD
39372003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3938
3d8c3826
JD
3939 * xfns.c (Fx_send_client_event): New function as a base for
3940 manipulating extended window manager hints.
6dc15d98 3941 (Fx_send_client_event): Remove unused variable s.
3d8c3826 3942
068ae0fd
JD
3943 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
3944 that function is removed.
3945
3946 * xterm.c (x_set_offset): Use move_offset_left/top instead of
3947 x/y_pixels_outer_diff.
3948 (x_check_expected_move): Calculate move_offset_left/top.
3949
3950 * xterm.h (struct x_output): New members: move_offset_top/left.
3951
854c1a59 3952 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
3953 call x_set_offset directly.
3954
3955 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
3956
96f09305
JD
3957 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
3958
3959 * xterm.c (x_delete_display): Free font names and font_encoder
3960 in dpyinfo->font_table.
3961
854c1a59
SM
3962 * xfns.c (Fx_close_connection): Only call XFreeFont here.
3963 Move xfree of font names to x_delete_display.
96f09305 3964
c1f0671a
JD
3965 * xterm.h (struct x_display_info): New member, wm_type.
3966 (struct x_output): New members, expected_top/left and
3967 check_expected_move.
3968
3969 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
3970 is received.
854c1a59
SM
3971 (handle_one_xevent): Rename x_check_expected_move from
3972 x_check_fullscreen_move.
c1f0671a
JD
3973 (x_set_offset): Only add WM decoration sizes to modified_top/left
3974 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 3975 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
3976 Removed fullscreen specific code. Use check_expected_move,
3977 expected_left/top instead. Also, set wm_type.
3978 (x_term_init): Initialize wm_type to unknown.
3979
3980 * frame.c (x_fullscreen_move): Remove addition of WM decoration
3981 sizes to move_x/y.
3982
be2fdba9
KH
39832003-10-03 Kenichi Handa <handa@m17n.org>
3984
3985 * macterm.c (x_load_font): Clear all members of FONTP before start
3986 filling them.
3987
39882003-10-02 Kenichi Handa <handa@m17n.org>
3989
3990 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
3991 before calling find_ccl_program_func. Call find_ccl_program_func
3992 only when fontp->font_encoder is not NULL.
3993
3994 * xterm.c (x_load_font): Clear all members of FONTP before start
3995 filling them.
3996
26a6e439
JPW
39972003-10-03 John Paul Wallington <jpw@gnu.org>
3998
3999 * keymap.c (map_keymap): Don't abort when binding is a vector.
4000
0d4c2dc2
JR
40012003-10-02 Jason Rumney <jasonr@gnu.org>
4002
854c1a59
SM
4003 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
4004 Sync dependencies with Makefile.in.
a63cf46f
JR
4005 (alloca.o): Remove.
4006
0d4c2dc2
JR
4007 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
4008 filling them.
4009
4010 * w32bdf.c (w32_load_bdf_font): Likewise.
4011
ab8f7d5c
RS
40122003-09-30 Richard M. Stallman <rms@gnu.org>
4013
4014 * term.c (set_tty_color_mode): Calculate current_mode_spec
4015 regardless of value of VAL.
4016
854c1a59 4017 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
4018 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
4019 Handle over_used when splitting UNDER.
4020
a64387ee 40212003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ab8f7d5c
RS
4022
4023 * regex.c (regex_compile): Free the stack when returning from function.
4024
3413f972
KH
40252003-09-28 Kenichi Handa <handa@m17n.org>
4026
4027 * fontset.c (Finternal_char_font): Change return value to
4028 cons (FONT-NAME . GLYPH-CODE).
4029
a6eeaa81 40302003-09-28 Eli Zaretskii <eliz@gnu.org>
40409f05
EZ
4031
4032 * term.c (tty_setup_colors): Treat any negative argument as -1.
4033
f98ddc99
KH
40342003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
4035
4036 * process.c (send_process): Delete unused temp_buf.
4037
66c8f1a8
DL
40382003-09-26 Dave Love <fx@gnu.org>
4039
4040 * xterm.c (x_bitmap_mask): Declare.
4041
ca716c26
DL
40422003-09-25 Dave Love <fx@gnu.org>
4043
4044 * Makefile.in (fns.o): Depend on md5.h.
4045
fbe57420
KS
40462003-09-25 Kim F. Storm <storm@cua.dk>
4047
4048 * window.c (set_window_buffer): Fix redisplay problems when
4049 switching between buffers with different display margin widths.
4050
ef6ae4ff
KS
40512003-09-23 Kim F. Storm <storm@cua.dk>
4052
4053 * process.c (set_socket_option): Fix :bindtodevice option.
4054 (Fset_network_process_option): Update process contact list when
4055 setting option succeeds.
4056 (Fmake_network_process): Doc fix.
4057
68e03c1c
DL
40582003-09-23 Dave Love <fx@gnu.org>
4059
7146d1c1 4060 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 4061
a6eeaa81 40622003-09-22 Eli Zaretskii <eliz@gnu.org>
2f809aae
EZ
4063
4064 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
4065 color mode is an integer number (it could be -1).
4066
8fe7d8c8
RS
40672003-09-22 Richard M. Stallman <rms@gnu.org>
4068
4069 * intervals.c (graft_intervals_into_buffer): Correct the main loop
4070 in the case where OVER is longer than UNDER.
4071
2f71b5ea
MY
40722003-09-22 Masatake YAMATO <jet@gyve.org>
4073
7146d1c1 4074 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 4075 `vertical_type'.
7146d1c1 4076
0c4da023
KS
40772003-09-21 Kim F. Storm <storm@cua.dk>
4078
4079 * frame.c (Vdefault_frame_scroll_bars): New variable.
4080 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
4081 (syms_of_frame): DEFVAR_LISP it, and initialize according to
4082 window-system default scroll bar position.
4083
b648413b
KS
4084 * window.c (Fwindow_scroll_bars): Doc fix.
4085
8f5b9e34
JD
40862003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4087
854c1a59 4088 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 4089
b0f23edf
RS
40902003-09-19 Richard M. Stallman <rms@gnu.org>
4091
4092 * atimer.h: Don't include lisp.h.
4093 (P_): Define it here (as well as elsewhere).
4094
4095 * print.c (Fprin1_to_string): Move the PRINTPREPARE
4096 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
4097
4098 * data.c (Fvariable_binding_locus): New function.
4099 (syms_of_data): defsubr it.
4100 (Flocal_variable_p): Delete duplicate call to indirect_variable.
4101
e1283999
DL
41022003-09-18 Dave Love <fx@gnu.org>
4103
ad5f3636
DL
4104 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
4105
e1283999
DL
4106 * process.c (Fnetwork_interface_info): Fix type error.
4107 (Fnetwork_interface_list): Doc fix.
4108 (read_process_output, read_process_output): Delete unused var.
4109
b8c7fd71
KS
41102003-09-17 Kim F. Storm <storm@cua.dk>
4111
4112 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
4113 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
4114 (Fnetwork_interface_info): Check that ifreq struct has required
4115 fields before accessing them; this requires that those fields are
4116 defined as macros, which may be too restrictive on some platforms,
4117 but it is better than failing on other platforms.
4118 (syms_of_process): Only defsubr above fns when included.
4119
11e0a411
DL
41202003-09-17 Dave Love <fx@gnu.org>
4121
4122 * unexalpha.c: Don't include varargs.h.
4123
e9c50801
KS
41242003-09-17 Kim F. Storm <storm@cua.dk>
4125
4126 * process.c (Fset_process_sentinel): Add sentinel to childp plist
4127 for network process.
4128 (socket_options): Add `:' prefix to option names. Add optbit field.
4129 (set_socket_option): Remove no_error arg and special handling of s < 0.
4130 Return 1<<optbit for known option, 0 for unknown.
4131 Do not interpret 0 as false for boolean option (only nil).
4132 Pass failed option and value to report_file_error.
7146d1c1 4133 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
4134 (Fset_network_process_option): New function to set just one option.
4135 (Fmake_network_process): Allow :coding arg to be a cons.
4136 Allow :server arg to be an integer specifying backlog size.
4137 Remove :options arg, and allow options to be specified directly
4138 as :KEY, VALUE pairs. Parse these options before binding socket.
4139 As before, :reuseaddr t is default for a server process, but this
4140 can now be disabled by specifying :reuseaddr nil.
4141 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
4142 (init_process): Availability of network options is now checked with
4143 simpler syntax (featurep 'make-network-process :OPTION); use loop to
4144 setup features.
4145 (syms_of_process): Fix defsubr's for the replaced functions.
4146
a0fc3644
DL
41472003-09-16 Dave Love <fx@gnu.org>
4148
4149 * Makefile.in: Depend on coding.h.
4150
6df2a645
KS
41512003-09-14 Kim F. Storm <storm@cua.dk>
4152
4153 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
4154 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
4155 (syms_of_process): Defsubr them.
4156
4157 * config.in: Regenerate.
7146d1c1
SM
4158
41592003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
4160
4161 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
4162 * m/news-r6.h (XUNMARK): Remove.
4163 * m/mips.h (XUNMARK): Remove.
4164 * m/mips-siemens.h (XUNMARK): Remove.
4165 * m/iris4d.h (XUNMARK): Remove.
4166 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
4167
0930c1a1
SM
41682003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
4169
31003b9e
SM
4170 * lisp.h (VALBITS): Don't remove 1 for the markbit.
4171 (union Lisp_Object): Use unsigned int for types. Remove markbit.
4172 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
4173 (XTYPE): Use unsigned right-shift.
4174 (XMARKBIT, XMARK, XUNMARK): Remove.
4175
0930c1a1
SM
4176 * alloc.c (init_intervals, init_symbol, init_marker):
4177 Don't preallocate anything.
4178 (Fgarbage_collect, mark_object): Ignore the markbit.
4179
4180 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
4181
19bb0fcd 41822003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
4183
4184 * xdisp.c (pint2hrstr): New function.
4185 (decode_mode_spec): Add `%i' and `%I' specs.
4186 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
4187 for `mode-line-format'.
4188
03bb6a06
AS
41892003-09-07 Andreas Schwab <schwab@suse.de>
4190
4191 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
4192 avoid warning.
4193
a6eeaa81 41942003-09-07 Eli Zaretskii <eliz@gnu.org>
2063d89c 4195
0930c1a1 4196 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 4197
ed159bbf
KS
41982003-09-03 Kim F. Storm <storm@cua.dk>
4199
4200 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
4201 change (superseded by 2002-08-30 change); the default blink-off
4202 cursor is now again "no cursor".
4203
fe64a394
JR
42042003-09-01 Jason Rumney <jasonr@gnu.org>
4205
4206 * makefile.w32-in (alloca.o): Remove.
4207 (coding.o): Depend on intervals.h
4208 (emacs.o, bytecode.o): Depend on window.h
4209
c0175e24
DL
42102003-09-01 Dave Love <fx@gnu.org>
4211
4212 * Makefile.in (alloca.o): Remove commands.
4213 (coding.o): Depend on intervals.h composite.h window.h.
4214 (emacs.o): Depend on window.h keyboard.h keymap.h.
4215 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
4216 (bytecode.o): Depend on window.h.
4217
a24d4cb2
JR
42182003-08-31 Jason Rumney <jasonr@gnu.org>
4219
4bc2315e
JR
4220 * w32term.c (w32_per_char_metric): Allow cached metrics to be
4221 returned even when font_type is unknown.
4222
a24d4cb2
JR
4223 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
4224
9d35adc7
JD
42252003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4226
4227 * xterm.c (x_term_init): Initialize new fields in x_display_info.
4228
4229 * xterm.h (struct x_display_info): Add red/green/blue_bits and
4230 *_offset.
4231
4232 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
4233 calculate pixel value.
4234
6f68b035
GM
42352003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
4236
0930c1a1
SM
4237 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
4238 Don't tell redisplay display is accurate when it's actually been
4239 paused for pending input.
6f68b035 4240
4828b4d7
RS
42412003-08-29 Richard M. Stallman <rms@gnu.org>
4242
4243 * dispnew.c (adjust_glyph_matrix): Call window_box
4244 whenever W is nonzero.
4245
4246 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
4247 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 4248 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
4249 Use indirect_variable to trace thru variable aliases.
4250
4251 * config.in: Updated.
4252
4253 * callint.c (Fcall_interactively): Save and restore
4254 Vthis_command, Vthis_original_command, real_this_command,
4255 and current_kboard->Vlast_command.
4256
4257 * abbrev.c (Fexpand_abbrev): Insert before deleting.
4258
e019878d
GM
42592003-08-29 Gerd Moellmann <gerd@gnu.org>
4260
4261 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
4262
85478bc6
KH
42632003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
4264
0930c1a1 4265 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
4266 (decode_coding_sjis_big5): Likewise.
4267
07ce82d3
JR
42682003-08-27 Jason Rumney <jasonr@gnu.org>
4269
d3703de3
JR
4270 * w32.c (sys_pipe): Protect against file descriptor overflow.
4271
ee4a01d1
JR
4272 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
4273
07ce82d3
JR
4274 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
4275
a64387ee 42762003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
72d19c66
LK
4277
4278 * xfns.c (Vgtk_version_string): New variable.
4279 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
4280
a6eeaa81 42812003-08-24 Eli Zaretskii <eliz@gnu.org>
5459e42a 4282
0930c1a1 4283 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 4284
5459e42a
EZ
4285 * Makefile.in (msdos.o): Depend on intervals.h.
4286
0930c1a1 4287 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 4288
231d6cfb
JD
42892003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4290
4291 * xterm.h (struct x_display_info): New fields: client_leader_window
4292 and Xatom_wm_client_leader.
4293
4294 * xterm.c (x_initialize): Move call to x_session_initialize to ...
4295 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
4296
4297 * xsmfns.c (create_client_leader_window): New function.
4298 (x_session_initialize): Call create_client_leader_window, take
4299 dpyinfo as argument.
4300
4301 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
4302
4303 * Makefile.in (xsmfns.o): Add more depenedencies.
4304
afa88464
DL
43052003-08-21 Dave Love <fx@gnu.org>
4306
4307 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
4308
f730033e
KH
43092003-08-21 Kenichi Handa <handa@m17n.org>
4310
4311 * term.c (term_init): Fix previous change; don't rely on the
4312 length of `buffer' if TERMINFO is defined.
4313
6dca786c
DL
43142003-08-20 Dave Love <fx@gnu.org>
4315
4316 * atimer.h: Include lisp.h.
4317
4318 * lisp.h (EMACS_LISP_H): New.
4319 (popup_activated_flag): Don't declare.
4320
4321 * alloca.c: Some merging with gnulib. Change logic and doc
4322 concerning (x)malloc/(x)free -- no longer Emacs-specific.
4323 [DO_BLOCK_INPUT]: Don't include lisp.h.
4324 (xmalloc, xfree): Declare.
4325 (malloc): Don't declare.
4326
0930c1a1 4327 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
4328 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
4329 atimer.h, blockinput.h.
4330
4331 * alloc.c (lisp_align_malloc): Change type of `aligned'.
4332
4333 * alloca.s: Removed.
4334
3a06a6d9
RS
43352003-08-19 Gerd Moellmann <gerd@gnu.org>
4336
4337 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
4338 use -lncurses.
4339
4340 * term.c (term_init): Use a buffer of size 4096 for tgetent since
4341 FreeBSD returns something longer than 2044. Abort if the end of
4342 the buffer is overwritten.
4343
27eeee55
MB
43442003-08-19 Miles Bader <miles@gnu.org>
4345
4346 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
4347
2f297815
GM
43482003-08-19 Gerd Moellmann <gerd@gnu.org>
4349
f4446bbf
GM
4350 * alloc.c (lisp_align_malloc): Check for memory full when
4351 allocating ablocks, which also avoids freeing a pointer into an
4352 ablocks structure.
4353
4354 * puresize.h (BASE_PURESIZE): Increase to 1100000.
4355
0930c1a1 4356 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 4357
0e7d7aae
RS
43582003-08-16 Richard M. Stallman <rms@gnu.org>
4359
4360 * editfns.c (Fencode_time): Doc fix.
4361
43622003-08-16 David Ponce <david@dponce.com>
4363
4364 * fileio.c (Fwrite_region): Fix conditional expression to issue
4365 the right message.
4366
43672003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
4368
4369 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 4370 Set default value to 1.
0e7d7aae 4371
5d551295
KH
43722003-08-15 Kenichi Handa <handa@m17n.org>
4373
4374 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
4375 what autoscaled.
4376 (best_matching_font): Once we find a better scalable font, set
4377 non_scalable_has_exact_height_p to 1.
4378 (try_font_list): Call try_alternative_families to try any family
4379 with the given registry.
4380
1661e56b
AS
43812003-08-09 Andreas Schwab <schwab@suse.de>
4382
f29181dc
AS
4383 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
4384
1661e56b
AS
4385 * print.c (print_string): Fix printing of multibyte string with
4386 nontrivial printcharfun.
4387
465aa50a
JD
43882003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4389
4390 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
4391
4392 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
4393
e430e5ba
KH
43942003-07-31 Kenichi Handa <handa@m17n.org>
4395
4396 * process.c (read_process_output): Return the actually read bytes
4397 instead of the result of decoding.
4398
97e7188e
KH
43992003-07-31 Kenichi Handa <handa@m17n.org>
4400
4401 * xterm.h (struct x_bitmap_record): New member have_mask.
4402
4403 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
4404 to 0.
4405 (x_create_bitmap_from_file): Likewise.
4406 (x_destroy_bitmap): Check have_mask member before freeing a mask.
4407 (x_destroy_all_bitmaps): Likewise.
4408 (x_create_bitmap_mask): Set have_mask member to 1.
4409
b53094d6
RS
44102003-07-30 Richard M. Stallman <rms@gnu.org>
4411
4412 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
4413
631f2082
JD
44142003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4415
4416 * gtkutil.c (xg_mark_data): Update calls to mark_object.
4417
c855f2ca
RS
44182003-07-29 Richard M. Stallman <rms@gnu.org>
4419
4420 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
4421 Conditionalize XIM code on HAVE_XIM.
4422
4423 * fns.c (Fclear_string): New function.
4424 (syms_of_fns): defsubr it.
4425
17e6d491
KH
44262003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
4427
0930c1a1 4428 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 4429
29ea8ae9
SM
44302003-07-22 Stefan Monnier <monnier@cs.yale.edu>
4431
4432 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
4433
4434 * buffer.c (delete_all_overlays): New function.
4435 * buffer.h (delete_all_overlays): Declare.
4436 * coding.c (run_pre_post_conversion_on_str):
4437 * print.c (temp_output_buffer_setup):
4438 * fileio.c (Finsert_file_contents):
4439 * minibuf.c (get_minibuffer): Use it.
4440
1dd7ccf2
AC
44412003-07-22 Andrew Choi <akochoi@shaw.ca>
4442
4443 * unexmacosx.c (unexec_regions_sort_compare):
4444 (unexec_regions_merge): New functions. Sort and merge unexec
4445 regions before dumping them.
4446
f57bd967
DL
44472003-07-22 Dave Love <fx@gnu.org>
4448
4449 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
4450
7cdee936
SM
44512003-07-21 Stefan Monnier <monnier@cs.yale.edu>
4452
4453 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
4454 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
4455 MARKBIT as the gcmarkbit for strings.
4456
e50886d3
RS
44572003-07-21 Richard M. Stallman <rms@gnu.org>
4458
4459 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
4460
29ea8ae9 4461 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
4462 (syms_of_fns): Corresponding change.
4463
4464 * alloc.c (syms_of_alloc): Doc fixes.
4465
44662003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
4467
4468 * s/netbsd.h: Use -Wl syntax.
4469
fdc39b59
RS
44702003-07-17 Richard M. Stallman <rms@gnu.org>
4471
4472 * xterm.c (xim_initialize): Redo 6/24 change.
4473
9c53385f
SM
44742003-07-15 Stefan Monnier <monnier@cs.yale.edu>
4475
4476 * buffer.c (copy_overlays): Use EMACS_INT for positions.
4477 (Fswitch_to_buffer): Don't signal an error when switching to the same
4478 buffer in a dedicated window.
4479
4480 * alloc.c: Use bitmaps for cons, as was done for floats.
4481 (init_float, init_cons): Let the normal code allocate the first block.
4482 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
4483 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
4484 New macros.
4485 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
4486 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
4487 (live_cons_p): Check the pointer is not past the `conses' array.
4488 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
4489 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
4490 (survives_gc_p): Use CONS_MARKED_P and simplify.
4491 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
4492
dde13196
PE
44932003-07-13 Paul Eggert <eggert@twinsun.com>
4494
4495 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
4496 puts it into BSS instead, at least on Solaris 8 and 9.
4497 This is a valid optimization, and it may occur on other platforms,
4498 so Emacs should not assume that initializing a static variable to
4499 zero puts it into data.
4500 * alloc.c (pure, staticvec):
4501 Initialize these arrays to nonzero, so that they're not
4502 put into BSS by that optimization.
4503
a801bc34
SM
45042003-07-13 Stefan Monnier <monnier@cs.yale.edu>
4505
4506 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
4507 (lisp_align_malloc): Use posix_memalign is available.
4508 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
4509 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
4510 for consistency. Update users.
4511
0c8b2afa
RS
45122003-07-13 Richard M. Stallman <rms@gnu.org>
4513
4514 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
4515
668c2ab0
JB
45162003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
4517
4518 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
4519 and use the Gtk+ function gtk_window_icon_from_file if available.
4520
4521 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
4522 handle mask of bitmaps.
4523 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
4524 mask property.
4525 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
4526
4527 * xterm.h (xg_set_icon): New function.
4528
800bebe3
RS
45292003-07-12 Paul Eggert <eggert@twinsun.com>
4530
4531 * unexelf.c (unexec): Consider a section to precede the .bss
4532 section if its addresses overlap that of .bss.
4533
69e38995
RS
45342003-07-12 Richard M. Stallman <rms@gnu.org>
4535
4536 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
4537
4538 * config.in (HAVE_CRTIN): Add #undef.
4539 (INLINE): Really inline only if OPTIMIZE is defined.
4540
4541 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
4542 END_FILES_1.
4543 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 4544 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
4545
4546 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
4547 (TERMINFO): Define.
4548 (LIBS_TERMCAP): Define.
4549 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
4550
4551 * xfns.c: Include libpng/png.h instead of png.h.
4552
f1d0c238
AS
45532003-07-11 Andreas Schwab <schwab@suse.de>
4554
4555 * buffer.c (modify_overlay): Update prototype.
4556 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
4557 Likewise.
4558
5f6bf5fe
SM
45592003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4560
4561 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
4562 (struct interval): Move to intervals.h.
4563 (struct Lisp_Marker): Use EMACS_INT for position info.
4564 (forward_point): Remove prototype of defunct function.
4565 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
4566 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
4567 (syms_of_textprop, set_text_properties): Remove prototypes that are
4568 already in intervals.h.
4569
4570 * intervals.h (struct interval): Move from lisp.h.
4571 Use EMACS_INT for position and size info.
4572
4573 * coding.c: Include intervals.h for Fset_text_properties.
4574
4575 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
4576 position and length information.
4577
2765b457
SM
45782003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4579
4580 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
4581 position and length information.
4582
2410d73a
SM
45832003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4584
4585 Change overlays_after and overlays_before so the overlays themselves
4586 are linked into lists, rather than using cons cells. After all each
4587 Lisp_Misc already occupies 5 words, so we can add a `next' field to
4588 Lisp_Overlay for free and save up one cons cell per overlay (not
4589 to mention one indirection when traversing the list of overlay).
4590
4591 * lisp.h (struct Lisp_Overlay): New field `next'.
4592
4593 * buffer.h (struct buffer): Change overlays_before and overlays_after
4594 from Lisp lists of overlays to pointers to overlays.
4595
4596 * buffer.c (overlay_strings, recenter_overlay_lists):
4597 Fix typo in eassert in last commit.
4598 (unchain_overlay): New function.
4599 (add_overlay_mod_hooklist): Use AREF.
4600 (copy_overlays, reset_buffer, overlays_at, overlays_in)
4601 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
4602 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
4603 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
4604 (report_overlay_modification, evaporate_overlays, init_buffer_once):
4605 Adjust to new type of overlays_(before|after).
4606
4607 * alloc.c (mark_object): Mark the new `next' field of overlays.
4608 (mark_buffer): Manually mark the overlays_(after|before) fields.
4609
4610 * coding.c (run_pre_post_conversion_on_str):
4611 * editfns.c (overlays_around):
4612 * xdisp.c (load_overlay_strings):
4613 * fileio.c (Finsert_file_contents):
4614 * indent.c (current_column):
4615 * insdel.c (signal_before_change, signal_after_change):
4616 * intervals.c (set_point_both):
4617 * print.c (temp_output_buffer_setup): Use new type for
4618 overlays_(before|after).
4619
04812929
SM
46202003-07-08 Stefan Monnier <monnier@cs.yale.edu>
4621
4622 * buffer.c (report_overlay_modification): Don't run hooks while
4623 traversing the list of overlays.
4624
4625 * buffer.h (struct buffer): Use an int for overlay_center.
4626 (overlays_at, evaporate_overlays, recenter_overlay_lists)
4627 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
4628
4629 * buffer.c (reset_buffer, recenter_overlay_lists)
4630 (adjust_overlays_for_insert, adjust_overlays_for_delete)
4631 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
4632 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
4633 (overlays_at, evaporate_overlays, recenter_overlay_lists)
4634 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
4635
4636 * xdisp.c (fast_find_position): Remove unused var.
4637
4638 * cmds.c (Qexpand_abbrev): New sym.
4639 (syms_of_cmds): Initialize it.
4640 (internal_self_insert): Use it to call expand-abbrev.
4641
2e7ecf15
KS
46422003-07-09 Kim F. Storm <storm@cua.dk>
4643
f9711de4 4644 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
2e7ecf15 4645 was configured with --without-xim.
42f81f64 4646 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 4647
c6de56a0
RS
46482003-07-07 Richard M. Stallman <rms@gnu.org>
4649
4650 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
4651
4652 * alloc.c (Fgarbage_collect): Doc fix.
4653
b93fb365
KH
46542003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
4655
4656 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
4657
bfe1a3f7
SM
46582003-07-06 Stefan Monnier <monnier@cs.yale.edu>
4659
04812929
SM
4660 * minibuf.c (read_minibuf): UNGCPRO before returning.
4661 (Ftry_completion, Fall_completions): Doc fix.
4662
bfe1a3f7
SM
4663 * alloc.c (live_float_p): Check that p is not past the `floats' array,
4664 now that `floats' is not the last element of the struct any more.
4665
ee79d1aa
JR
46662003-07-06 Jason Rumney <jasonr@gnu.org>
4667
4668 * w32term.h (ClipboardSequence_Proc): New type.
4669
4670 * w32fns.c (clipboard_sequence_fn): New variable.
4671 (globals_of_w32fns): Initialize it.
4672
4673 * w32select.c (last_clipboard_sequence_number): New variable.
4674 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
4675 number if possible.
4676
49723c04
SM
46772003-07-06 Stefan Monnier <monnier@cs.yale.edu>
4678
4698665f
SM
4679 * m/amdx86-64.h (MARKBIT):
4680 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
4681 MARKBIT and ARRAY_MARK_FLAG any more.
4682
4683 * m/hp800.h (XSETMARKBIT):
4684 * m/sr2k.h (XSETMARKBIT):
4685 * lisp.h (XSETMARKBIT): Remove unused macro.
4686
49723c04
SM
4687 * lisp.h (mark_object): Change prototype.
4688
4689 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
4690 (last_marked): Change accordingly.
4691 (mark_interval, mark_maybe_object, mark_maybe_pointer)
4692 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
4693 (mark_buffer): Update calls to mark_object.
4694
4695 * bytecode.c (mark_byte_stack):
4696 * fns.c (sweep_weak_table):
4697 * keyboard.c (mark_kboards): Update calls to mark_object.
4698
1d660eca
JR
46992003-07-06 Jason Rumney <jasonr@gnu.org>
4700
4701 * alloc.c (struct ablock): Only include padding when there is some.
4702
618b5ae4
SM
47032003-07-04 Stefan Monnier <monnier@cs.yale.edu>
4704
4705 * alloc.c (ALIGN): Add casts to simplify usage.
4706 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
4707 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
4708 (struct ablock, struct ablocks): New types.
4709 (free_ablock): New global var.
4710 (lisp_align_malloc, lisp_align_free): New functions.
4711 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
4712 (struct float_block): Reorder and add gcmarkbits.
4713 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
4714 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
4715 (init_float, make_float): Use lisp_align_malloc.
4716 (free_float, live_float_p): Don't use `type' any more.
4717 (make_float): Use FLOAT_UNMARK to access to mark bit.
4718 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
4719 Use FLOAT_MARKED_P to access the mark bit.
4720 (pure_alloc): Simplify use of ALIGN.
4721 (mark_object): Use FLOAT_MARK to access the mark bit.
4722 (gc_sweep): Use new macros to access the float's mark bit.
4723 (init_alloc_once): Init free_ablock.
4724
4725 * lisp.h (struct Lisp_Float): Remove unused field `type'.
4726
3ef06d12
SM
47272003-06-27 Stefan Monnier <monnier@cs.yale.edu>
4728
4729 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
4730 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
4731 (allocate_buffer): Move.
4732 (string_bytes): Don't mask markbit of `size_byte'.
4733 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
4734 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
4735 Use the `size' field of buffers (rather than the `name' field) for
4736 the mark bit, as is done for all other vectorlike objects.
4737 Use the new macros to access the mark bit of vectorlike objects.
4738
e81043aa
RS
47392003-06-26 Richard M. Stallman <rms@gnu.org>
4740
4741 * puresize.h (BASE_PURESIZE): Increment base size.
4742
4743 * xdisp.c (fast_find_position): Enable Gerd's new definition.
4744
4745 * xterm.c (xim_initialize): Undo previous change.
4746
2d0834cc
SM
47472003-06-26 Stefan Monnier <monnier@cs.yale.edu>
4748
4749 * alloc.c (survives_gc_p): Simplify.
4750
4751 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
4752
4753 * window.c (Fset_window_dedicated_p): Simplify.
4754 (display_buffer_1): Don't raise the win from which minibuf was entered.
4755 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
4756 (Fminibuffer_selected_window): Simplify.
4757
4758 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
4759
4760 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
4761 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
4762
4763 * insdel.c (check_markers, adjust_markers_for_delete)
4764 (adjust_markers_for_insert, adjust_markers_for_replace)
4765 (prepare_to_modify_buffer, RESTORE_VALUE):
4766 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
4767 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
4768 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
4769 * alloc.c (Fmake_marker, free_marker, gc_sweep):
4770 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
4771 * editfns.c (save_excursion_restore, transpose_markers):
4772 * window.c (delete_window):
4773 * xdisp.c (message_dolog): Update for new types.
4774
d54ae3d8
JD
47752003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4776
a5f696ac
JD
4777 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
4778 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 4779 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
4780
4781 * frame.c (make_frame): Initialize default_face_done_p.
4782
4783 * frame.h (struct frame): Add default_face_done_p.
4784
d54ae3d8
JD
4785 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
4786 will be defined.
4787
2336fe58
SM
47882003-06-25 Stefan Monnier <monnier@cs.yale.edu>
4789
4790 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
4791 Initialize the new field `gcmarkbit'.
4792 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
4793 (mark_interval_tree): Don't mark the tree separately from the nodes.
4794 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
4795 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
4796 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
4797
4798 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
4799 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
4800 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
4801 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
4802 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
4803
bcea31c2
DL
48042003-06-24 Dave Love <fx@gnu.org>
4805
4806 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
4807
4808 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
4809 from gnulib.
4810
2601f59e
RS
48112003-06-21 Richard M. Stallman <rms@gnu.org>
4812
4813 * fileio.c (Fwrite_region): Alternate messages
4814 for append and partial write.
4815
4816 * keyboard.c (read_key_sequence): When converting upcase fn key to
4817 downcase, update fkey and keytran so `backspace' gets translated.
4818
4819 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
4820
4821 * process.c (wait_reading_process_input): Don't signal SIGIO
4822 in batch mode.
4823
b5d2c621
KH
48242003-06-17 Kenichi Handa <handa@m17n.org>
4825
4826 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
4827 composite.h.
4828
4829 * xselect.c: Don't include charset.h, coding.h, composite.h.
4830 (Qforeign_selection): New variable.
4831 (syms_of_xselect): Intern and static it.
4832 (selection_data_to_lisp_data): Return a unibyte string made from
4833 data with `foreign-selection' text property.
4834
6793bc63
SM
48352003-06-15 Stefan Monnier <monnier@cs.yale.edu>
4836
4837 * termhooks.h (EVENT_INIT): New macro.
4838
4839 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
4840
4841 * alloc.c (mark_kboards): Move to keyboard.c.
4842
4843 * keyboard.c (record_asynch_buffer_change, read_avail_input):
4844 * xterm.c (x_dispatch_event):
4845 * xmenu.c (find_and_call_menu_selection):
4846 * xdisp.c (handle_tool_bar_click):
4847 * w32menu.c (menubar_selection_callback):
4848 * sysdep.c (kbd_input_ast, read_input_waiting):
4849 * msdos.c (dos_rawgetc):
4850 * macterm.c (mac_check_for_quit_char):
4851 * macmenu.c (menubar_selection_callback):
4852 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
4853 data to kbd_buffer_store_event.
4854
b3ea810c
KS
48552003-06-15 Kim F. Storm <storm@cua.dk>
4856
4857 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 4858 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 4859
b8f75eda
KG
48602003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
4861
4862 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
4863
ba92ce48
KH
48642003-06-12 Kenichi Handa <handa@m17n.org>
4865
4866 * fileio.c (Fwrite_region): Save and restore restriction.
4867
b80263be
DL
48682003-06-12 Dave Love <fx@gnu.org>
4869
4870 * alloca.c (alloca): Declare arg as size_t.
4871
6793bc63
SM
4872 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
4873 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 4874
b23c0a83
DL
48752003-06-11 Dave Love <fx@gnu.org>
4876
4877 * search.c (shrink_regexp_cache): Use xrealloc.
4878 (syms_of_search): Use xmalloc.
4879
700e47c2
KS
48802003-06-10 Kim F. Storm <storm@cua.dk>
4881
4882 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
4883 Adjust phys_cursor.x to be relative to window box, rather than
4884 text area before checking -- to ensure cursor is redrawn when
4885 exposing window.
4886 Note: This also fixes a similar (older) bug if display margins
4887 are present.
4888
f11aa0b2
KH
48892003-06-06 Kenichi Handa <handa@m17n.org>
4890
4891 * coding.c (encoding_buffer_size): If coding->type is
4892 coding_type_ccl, double magnification on CRLF encoding.
4893
3d143690
JR
48942003-06-06 Jason Rumney <jasonr@gnu.org>
4895
4896 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
4897 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
4898
4899 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
4900 Mac too.
4901
f16205ca
DL
49022003-06-05 Dave Love <fx@gnu.org>
4903
b23c0a83
DL
4904 * strftime.c: Merge changes from gnulib.
4905
f16205ca
DL
4906 * mktime.c (__mktime_internal): Merge changes from gnulib
4907 involving year 69 and dst2.
4908
4909 Changes to merge with gnulib version and be consistent with the
4910 autoconf test:
4911
6793bc63
SM
4912 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
4913 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
4914 [HAVE_LOCALE_H]: Include locale.h.
4915 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
4916
9b87a0bc
KS
49172003-06-05 Kim F. Storm <storm@cua.dk>
4918
4919 * window.c (coordinates_in_window): Convert X and Y to window
4920 relative coordinates inside mode-line and header-line parts.
4921 Convert X and Y to margin area relative coordinates inside left
4922 and right display margin parts.
4923
5a8a15ec
JR
49242003-06-05 Jason Rumney <jasonr@gnu.org>
4925
4926 * w32fns.c (add_system_logical_colors_to_map): New function.
4927 (Fx_open_connection): Use it.
4928
01ed8ff1
SM
49292003-06-04 Stefan Monnier <monnier@cs.yale.edu>
4930
4931 * process.c (allocate_pty): Revert part of the previous patch.
4932 (Faccept_process_output): Simplify.
4933
b427b65d
JR
49342003-06-04 Jason Rumney <jasonr@gnu.org>
4935
4936 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
4937
4938 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
4939 (lispy_mouse_wheel_names): Remove.
4940 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
4941 Always define drag_and_drop_syms.
4942
4943 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
4944 WHEEL_EVENT events.
4945
914a8c47
SM
49462003-06-03 Stefan Monnier <monnier@cs.yale.edu>
4947
01ed8ff1
SM
4948 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
4949
914a8c47
SM
4950 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
4951
adcb132c
JD
49522003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4953
4954 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
4955 menu item label.
4956
be781fa7
RS
49572003-06-03 Richard M. Stallman <rms@gnu.org>
4958
4959 * window.c (Fwindow_edges): Doc fix.
4960 (Fwindow_pixel_edges, Fwindow_inside_edges)
4961 (Fwindow_inside_pixel_edges): New functions.
4962 (syms_of_window): defsubr them.
4963
4964 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
4965 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
4966
914a8c47
SM
49672003-06-02 Stefan Monnier <monnier@cs.yale.edu>
4968
4969 * dispnew.c (Fsit_for): Don't lie about the number of args.
4970
5b07197a
DL
49712003-06-02 Dave Love <fx@gnu.org>
4972
4973 * callproc.c: Use HAVE_FCNTL_H, not USG5.
4974 (syms_of_callproc) <process-environment>: Doc fix.
4975
4976 * doc.c: Use HAVE_FCNTL_H, not USG5.
4977
4978 * xfaces.c (font_rescale_ratio): Fix for K&R.
4979
4980 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
4981
4982 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
4983
4984 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
4985
4986 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
4987 (xg_create_frame_widgets): Use ENCODE_UTF_8.
4988
d7107586 4989 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
4990
4991 * xmenu.c (ENCODE_MENU_STRING): New.
4992 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
4993 Use it.
4994
4995 * coding.h (ENCODE_UTF_8): New.
4996 (Qutf_8): Declare.
4997
4998 * coding.c (Qutf_8): New.
4999 (syms_of_coding): Intern it.
5000
5001 * fns.c: Doc fixes.
5002
7335b336
KH
50032003-06-02 Kenichi Handa <handa@m17n.org>
5004
5005 * buffer.c (Fset_buffer_multibyte): Fix previous change.
5006
914a8c47
SM
50072003-06-01 Stefan Monnier <monnier@cs.yale.edu>
5008
5009 * lread.c (openp): Make sure STR is a string.
5010
9862c135
JR
50112003-06-01 David Ponce <david@dponce.com>
5012
5013 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
5014 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
5015
5016 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
5017 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
5018 (discard_mouse_events): Discard WHEEL_EVENT events too.
5019 (lispy_wheel_names, wheel_syms): New.
5020 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
5021 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
5022 defined.
914a8c47 5023 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
5024
5025 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
5026 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
5027 WHEEL_EVENT events.
5028
f984e73e
JPW
50292003-05-31 John Paul Wallington <jpw@gnu.org>
5030
5031 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
5032 timer are in lisp/emacs-lisp.
5033
1efcd78f
KH
50342003-05-31 Kenichi Handa <handa@m17n.org>
5035
458c8af4
KH
5036 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
5037 region when a buffer is changed to unibyte.
5038
1efcd78f
KH
5039 * charset.h (VALID_LEADING_CODE_P): New macro.
5040 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
5041
778e2804
KH
5042 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
5043 is nonzero, accept multibyte form of eight-bit-control chars.
5044 (decode_composition_emacs_mule): Likewise.
5045 (decode_coding_emacs_mule): Likewise.
5046 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
5047 multibyte form of eight-bit-control chars.
5048
5049 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
5050 (Finsert_file_contents): If coding-system-for-read is bound to
5051 Qauto_save_coding, use the coding system emacs-mule with special
5052 setting for recovering a file.
5053 (choose_write_coding_system): On auto saving, use the coding
5054 system emacs-mule with special setting for auto saving.
5055 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
5056
034060e4
KH
50572003-05-30 Kenichi Handa <handa@m17n.org>
5058
5059 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
5060 properly before calling ccl_driver.
5061
778e2804 5062 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4
KH
5063
5064 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
5065 nonzero.
5066 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
5067 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
5068
595f5aa5
GM
50692003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
5070
5071 * xfaces.c (realize_default_face): Do not abort if lface is
5072 non-existent - reverts change from 2003-05-19.
5073
103e0180
KH
50742003-05-29 Kenichi Handa <handa@m17n.org>
5075
5076 * coding.c (decode_coding_iso2022): Pay attention to the byte
5077 sequence of CTEXT extended segment, and retain those bytes as is.
5078
50792003-05-28 Kenichi Handa <handa@m17n.org>
5080
5081 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
5082 of CODING_REPLACEMENT_CHARACTER.
5083 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
5084 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
5085 check this flag on encoding.
5086 (encode_coding_sjis_big5): Check
5087 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
5088 (Fset_terminal_coding_system_internal): Set
5089 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
5090 instead of setting CODING_FLAG_ISO_SAFE flag in
5091 terminal_coding.flags.
5092
5093 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
5094 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
5095 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
5096
ff6a3bfb 50972003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 5098
ff6a3bfb
RS
5099 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
5100
5101 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 5102
1963c428
KS
51032003-05-28 Kim F. Storm <storm@cua.dk>
5104
5105 * xdisp.c (expose_window): Fix error in calculation of
5106 window relative coordinates of area to redisplay.
5107
2b5d4601
JR
51082003-05-27 Jason Rumney <jasonr@gnu.org>
5109
5110 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
5111
1c64a4a2
JB
51122003-05-27 David Ponce <david@dponce.com>
5113
5114 Handle W32 mouse wheel events as mouse click events, like in X.
5115
5116 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
5117 MOUSE_WHEEL_EVENT anymore.
5118
5119 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
5120 Scrolling down/up the mouse wheel is respectively mapped to mouse
5121 button 4 and 5.
5122 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
5123 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
5124 WM_MOUSEWHEEL events.
5125
2d031b89
AS
51262003-05-27 Andreas Schwab <schwab@suse.de>
5127
20464fdf
AS
5128 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
5129
2d031b89
AS
5130 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
5131 partially visible line.
5132
5133 * alloc.c (Fgarbage_collect): Fix last change.
5134
97bc76d4
JPW
51352003-05-26 John Paul Wallington <jpw@gnu.org>
5136
5137 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
5138
56613f06
SM
51392003-05-25 Stefan Monnier <monnier@cs.yale.edu>
5140
5141 * window.c (Fset_window_buffer): Add type of `keep_margins'.
5142 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
5143
5144 * window.h (window_box_text_cols): Declare.
5145
5146 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
5147 (x_draw_vertical_border): Remove unused var `f'.
5148
5149 * xfaces.c (build_scalable_font_name): Remove `unused var
5150 pixel_size' warning.
5151
5152 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
5153
5154 * unexelf.c (unexec): Remove `unused var n' warning.
5155
5156 * strftime.c (my_strftime_localtime_r): Remove `defined but
5157 unused' warning.
5158
5159 * process.c (allocate_pty): Remove `unused var stb' and
5160 `cp might be used uninitialized' warnings.
5161
5162 * dispnew.c (mode_line_string): Remove unused var `f'.
5163
5164 * coding.c (find_safe_codings): Remove unused var `i'.
5165
5166 * bytecode.c (Fbyte_code): Remove `unused val' warning.
5167
5168 * buffer.c (Fkill_buffer): Remove unused var `list'.
5169
5170 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
5171
93421a1f
JD
51722003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5173
5174 * frame.c (make_frame): Condition want_fullscreen with
5175 HAVE_WINDOW_SYSTEM.
5176
c4b8aebc
JB
51772003-05-25 Juanma Barranquero <lektu@terra.es>
5178
5179 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
5180 (Fwindow_scroll_bars): Fix typo in docstring.
5181
0416870b
KS
51822003-05-24 Kim F. Storm <storm@cua.dk>
5183
5184 The following changes serve several purposes:
5185
5186 1) Swap the position of fringes and display margins in windows, i.e.
5187 the fringes are now displayed between the margins and the text area
5188 (by default).
5189
5190 2) Allow fringe and scroll bar parameters to be set per-buffer and
5191 per-window (like display margins). Such settings are now stored
5192 in window configurations, preserved when frames are resized, and
9018a88e 5193 copied when windows are split vertically or horizontally.
0416870b
KS
5194 Several bugs related to display margins have been fixed.
5195
5196 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 5197
0416870b
KS
5198 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
5199 rather than FRAME_WIDTH (FRAME_FONT (f)).
5200
5201 5) Introduce a consistent naming of variables, members and macros
5202 depending on whether their value is measured in pixels or in
5203 canonical columns/lines. Pixel dimensions are named *_width and
5204 *_height, while canonical columns/lines are named *_cols and
5205 *_lines. Pixel positions are named *_x and *_y, while column/line
5206 positions are named *_col and *_line.
5207
5208 6) Consolidate more of the X, W32, and MAC gui code by moving
5209 common data into struct frame, and generalize it for the non-gui
5210 case by using suitable defaults.
5211
5212 7) Cleanup and consolidate the macros controlling frame and window
5213 layout into frame.h and window.h, and generalize the use of the
5214 various window_box_* functions (enhanced to handle the new fringe
5215 position and the per-window fringe and scroll bar settings).
5216
5217 * frame.h (struct frame): Rename members height to text_lines,
5218 width to text_cols, window_height to total_lines, window_width to
5219 total_cols, new_height to new_text_lines, new_width to
5220 new_text_cols. All uses changed.
5221 (struct frame): New members which consolidate common members of
5222 x_output, w32_output, and mac_output structures: left_pos,
5223 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
5224 win_gravity, size_hint_flags, border_width, internal_border_width,
5225 line_height, fringe_cols, left_fringe_width, right_fringe_width,
5226 want_fullscreen. All uses changed.
5227 (struct frame): New member column_width contaning the canonical
5228 column width, analogue to line_height. All uses changed.
5229 (struct frame): Rename members scroll_bar_pixel_width to
5230 config_scroll_bar_width, and scroll_bar_cols to
5231 config_scroll_bar_cols. All uses changed.
5232 (struct frame): New member scroll_bar_actual_width which
5233 consolidates and renames the vertical_scroll_bar_extra member of
5234 x_output, w32_output, and mac_output structures. All uses changed.
5235 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
5236 from x/w32/macterm.h files. All uses changed. Also change code
5237 which referred to f->output_data...->pixel_height.
5238 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
f63fd14e 5239 from x/w32/macterm.h files. All uses changed. Also change code
0416870b
KS
5240 which referred to f->output_data...->pixel_width.
5241 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
5242 Also change code which referred to f->height.
5243 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
5244 Also change code which referred to f->width.
5245 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
5246 to update new_text_lines and new_text_cols members directly.
5247 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
5248 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
5249 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
5250 FRAME_SCROLL_BAR_COLS. All uses changed.
5251 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
5252 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
5253 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
5254 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
5255 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
5256 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
5257 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
5258 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
5259 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
5260 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
5261 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
5262 return line_height member (it now has proper value also for
5263 non-window frames).
5264 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
5265 return new column_width member (rather than the default font width).
5266 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
5267 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
5268 from x/w32/macterm.h files. Unconditionally return corresponding
5269 member of frame structure (they now have proper values also for
5270 non-window frames).
5271 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
5272 Calculate return value from left and right widths.
5273 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
5274 internal_border_width member (has proper value for non-window frame).
5275 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
5276 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
5277 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
5278 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
5279 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
5280 consolidated from xterm.h, macterm.h, and w32term.h.
5281 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
5282 consolidated from xterm.h, macterm.h, and w32term.h.
5283 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
5284 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
5285 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
5286 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
5287 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
5288 consolidated from x/mac/w32term.h.
5289 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
5290 consolidated from x/mac/w32term.h.
5291 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
5292 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
5293 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
5294 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
5295
5296 * window.h (struct window): Rename members left to left_col,
5297 top to top_line, height to total_lines, width to total_cols,
5298 left_margin_width to left_margin_cols, right_margin_width to
5299 right_margin_cols, orig_height to orig_total_lines, orig_top to
5300 orig_top_line. All uses changed.
5301 (struct window): New members left_fringe_width, right_fringe_width,
5302 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
5303 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
5304 New macros primarily used to simplify other macros.
5305 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
5306 referred to XINT (w->width).
5307 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
5308 referred to XINT (w->height).
5309 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
5310 referred to XINT (w->width) * canon_x_unit.
5311 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
5312 referred to XINT (w->height) * canon_y_unit.
5313 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
5314 referred to XINT (w->left).
5315 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
5316 all uses and code that referred to XINT (w->left) + XINT (w->width).
5317 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
5318 referred to XINT (w->top).
5319 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
5320 referred to XINT (w->top) + XINT (w->height).
5321 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
5322 referred to XINT (w->left) * canon_x_unit.
5323 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
5324 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
5325 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
5326 referred to XINT (w->top) * canon_y_unit.
5327 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
5328 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
5329 (WINDOW_LEFTMOST_P): New macro.
5330 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
5331 All uses changed.
5332 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
5333 All uses changed.
5334 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
5335 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
5336 Do not exclude left fringe width.
5337 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
5338 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
5339 Do not exclude fringe widths.
5340 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
5341 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
5342 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
5343 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
5344 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
5345 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
5346 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
5347 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
5348 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
5349 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
5350 New macros. Change code which referenced corresponding
5351 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
5352 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
5353 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
5354 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
5355 allow per-window scroll-bar settings.
5356 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
5357 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
5358 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
5359 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
5360 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
5361 FRAME_SCROLL_BAR_WIDTH.
5362 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 5363 (WINDOW_SCROLL_BAR_AREA_X): New macros.
0416870b
KS
5364 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
5365 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
5366 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
5367 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
5368 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
5369 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
5370 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
5371 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
5372 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
5373 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
5374 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
5375 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
5376 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
5377 (window_from_coordinates): Update prototype.
5378 (Fset_window_buffer): Update EXFUN.
5379 (set_window_buffer): Update prototype.
9018a88e 5380
0416870b 5381 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 5382 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
5383 changed.
5384 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
5385 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
5386 internal_border_width is now set to 0 for non-window frames.
5387 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
5388 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
5389 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
5390 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
5391 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
5392 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
5393 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
5394 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
5395 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 5396 Move to window.h and renamed [see window.h changes].
0416870b
KS
5397 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
5398 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
5399 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
5400 Use WINDOW_TOTAL_LINES.
0416870b
KS
5401 (frame_update_line_height): Remove prototype.
5402
5403 * buffer.h (struct buffer): Rename members measured in columns:
5404 left_margin_width to left_margin_cols, right_margin_width to
5405 right_margin_cols. All uses changed.
5406 New members left_fringe_width, right_fringe_width,
5407 fringes_outside_margins for per-buffer fringe settings.
5408 New members scroll_bar_width and vertical_scroll_bar_type for
5409 per-buffer scroll bar settings.
5410
5411 * buffer.c (init_buffer_once): Set buffer_defaults and
5412 buffer_local_flags for new buffer-local variables
5413 left_fringe_width, right_fringe_width, fringes_outside_margins,
5414 scroll_bar_width, and vertical_scroll_bar_type.
5415 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
5416 default-* variables for them.
5417
5418 * dispnew.c: Make (many) trivial substitutions for renamed and
5419 new macros in dispextern.h, frame.h and window.h.
5420 (mode_line_string): No need to adjust width for mode lines, as it
5421 is already adjusted by the caller.
5422 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 5423
0416870b
KS
5424 * frame.c: Make (many) trivial substitutions for renamed and
5425 new macros in dispextern.h, frame.h and window.h.
5426 (make_frame): Initialize left_fringe_width, right_fringe_width,
5427 fringe_cols, scroll_bar_actual_width, border_width,
5428 internal_border_width, column_width, line_height, x_pixels_diff,
5429 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
5430 members with values suitable for a non-window frames.
5431
5432 * gtkutil.c: Make (many) trivial substitutions for renamed and
5433 new macros in dispextern.h, frame.h and window.h.
9018a88e 5434
0416870b
KS
5435 * indent.c: Make (few) trivial substitutions for renamed and
5436 new macros in dispextern.h, frame.h and window.h.
5437
5438 * keyboard.c: Make (many) trivial substitutions for renamed and
5439 new macros in dispextern.h, frame.h and window.h.
5440 (make_lispy_event): Use window positions returned from
5441 window_from_coordinates when constructing the lisp event for
5442 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
5443 (incorrect) values locally.
5444 (make_lispy_movement): Use window positions returned from
5445 window_from_coordinates when constructing the lisp event, rather
5446 than calculating (incorrect) values locally.
5447
5448 * scroll.c: Make (some) trivial substitutions for renamed and
5449 new macros in dispextern.h, frame.h and window.h.
5450
5451 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
5452 scroll-bars.
5453
5454 * sysdep.c: Make (few) trivial substitutions for renamed and
5455 new macros in dispextern.h, frame.h and window.h.
5456
5457 * term.c: Make (some) trivial substitutions for renamed and
5458 new macros in dispextern.h, frame.h and window.h.
5459
5460 * widget.c: Make (few) trivial substitutions for renamed and
5461 new macros in dispextern.h, frame.h and window.h.
5462
5463 * window.c: Make (many) trivial substitutions for renamed and
5464 new macros in dispextern.h, frame.h and window.h.
5465 (make_window): Initialize new members
5466 left_margin_cols, right_margin_cols, left_fringe_width,
5467 right_fringe_width, fringes_outside_margins, scroll_bar_width,
5468 and vertical_scroll_bar_type.
5469 (coordinates_in_window): Adapted to new fringe/margin positions
9018a88e 5470 and per-window fringes and scroll-bars.
0416870b 5471 Fix bug related to incorrectly adjusting coordinates by
9018a88e 5472 frame's internal_border_width (the effect normally negible since
0416870b
KS
5473 the internal_border_width is typically 0 or 1 pixel, but very
5474 noticeable for an internal_border_width of e.g. 25 pixels).
5475 Upon successful return (other than ON_NOTHING), the coordinates
5476 are now always properly converted to window relative for the
5477 given display element.
5478 (window_from_coordinates): Add new parameters wx and wy to
5479 return the window relative x and y position in the returned
5480 window and part. A null arg means, don't return the position.
5481 All callers changed.
5482 (adjust_window_margins): New function which may reduce the width
5483 of the display margins if a window's text area is too small after
5484 resizing or splitting windows.
5485 (size_window): Fix bug that did not account for display margin
5486 widths when checking the minimum width of a window; use
5487 adjust_window_margins.
5488 (set_window_buffer): Call Fset_window_fringes and
5489 Fset_window_scroll_bars to setup per-window elements.
5490 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
5491 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
5492 (e.g. after splitting a window or resizing the frame).
5493 All callers changed.
0416870b
KS
5494 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
5495 (Fsplit_window): Duplicate original window's display margin,
5496 fringe, and scroll-bar settings; then call Fset_window_buffer with
5497 KEEP_MARGINS non-nil. This fixes a bug which caused a split
5498 window to only preserve the display margins in one of the windows.
c4b8aebc 5499 When splitting horizontally, call adjust_window_margins on both
0416870b 5500 windows to ensure that the text area of the new windows is non too
f9711de4 5501 narrow. This fixes a bug which could cause Emacs to trap if the
0416870b
KS
5502 width of the split window was less than the width of the display
5503 margins.
9018a88e
SM
5504 (window_box_text_cols): Renamed from window_internal_width.
5505 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
5506 Fix bug that caused vertical separator to be subtracted also on
5507 window frames. Fix another bug that did not reduce the returned
5508 value by the columns used for display margins.
5509 (window_scroll_line_based): Fix bug related to scrolling too much
5510 when display margins are present (implicitly fixed by the fix to
5511 window_box_text_cols).
5512 (scroll_left, scroll_right): Fix bug related to scrolling too far
5513 by default when display margins are present (implicitly fixed by
5514 the fix to window_box_text_cols).
5515 (struct saved_window): Rename members left to left_col, top to
5516 top_line, width to total_cols, height to total_lines, orig_top to
5517 orig_top_line, orig_height to orig_total_lines. All uses changed.
5518 New members left_margin_cols, right_margin_cols,
5519 left_fringe_width, right_fringe_width, fringes_outside_margins,
5520 scroll_bar_width, and vertical_scroll_bar_type for saving
5521 per-window display elements.
5522 (Fset_window_configuration): Restore display margins, fringes,
5523 and scroll bar settings. This fixes a bug which caused display
5524 margins to be discarded when saving and restoring a window
5525 configuration.
5526 (save_window_save): Save display margins, fringes, and scroll bar
5527 settings. This fixes a bug which caused display margins to be
5528 discarded when saving and restoring a window configuration.
5529 (Fset_window_margins): Do nothing if display margins are not
5530 really changed. Otherwise, call adjust_window_margins to ensure
5531 the text area doesn't get too narrow. This fixes a bug which
f9711de4 5532 could cause Emacs to trap if setting display margins wider than
0416870b
KS
5533 the width of the window.
5534 (Fset_window_fringes): New defun to allow user to specifically set
5535 this window's fringe widths and position vs. display margins.
5536 (Fwindow_fringes): New defun to return window's actual fringe
5537 settings.
5538 (Fset_window_scroll_bars): New defun to allow user to specifically
5539 set this window's scroll bar width and position.
5540 (Fwindow_scroll_bars): New defun to return window's actual scroll
5541 bar settings.
5542 (compare_window_configurations): Also compare display margins,
5543 fringes, and scroll bar settings.
5544 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
5545
5546 * xdisp.c: Make (many) trivial substitutions for renamed and
5547 new macros in dispextern.h, frame.h and window.h.
5548 (window_box_width): Adapt to per-window fringes and scroll bars,
f63fd14e 5549 and new fringe vs. display margin position. Note that returned
0416870b
KS
5550 value is no longer guaranteed to be a whole multiple of the frame
5551 column width, since per-window fringes may now be any width.
5552 (window_box_left_offset): New function like window_box_left, but
5553 value is relative to left border of window (rather than frame).
5554 (window_box_right_offset): New function like window_box_right,
5555 but value is relative to left border of window.
5556 (window_box_left): Adapt to per-window fringes and scroll bars,
5557 and new fringe vs. display margin position. Simplify by using
5558 WINDOW_LEFT_EDGE_X and window_box_left_offset.
5559 (window_box): Allow null args for unnecessary return values;
5560 change/simplify relevant callers.
5561 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
5562 and new fringe vs. display margin position.
5563 Use window_box_left_offset and window_box_right_offset
0416870b 5564 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
5565 scroll bars, and new fringe vs. display margin position.
5566 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
5567 (draw_fringe_bitmap): Rework to handle per-window fringes and new
5568 fringe vs. display margin position.
5569 (hscroll_window_tree): Use window_box_width instead of window_box.
a64387ee
JB
5570 (redisplay_window): Adapt to per-window scroll bars.
5571 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
5572 bars, and new fringe vs. display margin position.
5573 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
a64387ee 5574 (x_clear_end_of_line): Adapt to per-window fringes and scroll
0416870b
KS
5575 bars, and new fringe vs. display margin position. Fix bug which
5576 increased total width of full_width rows by width of scroll bars
5577 although window's total width already includes that.
5578 (x_fix_overlapping_area): Simplify using window_box_left_offset.
5579 (expose_area): Simplify using window_box_left_offset.
5580 (x_draw_vertical_border): Handle per-window scroll bar settings,
5581 mixing windows with left, right and no scroll bars.
5582
5583 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
5584 where it's used in x_list_fonts (for clarity).
5585 (frame_update_line_height): Remove unused function; functionality
5586 is now done directly when setting the default font in x_set_font.
5587
5588 * xfns.c: Make (many) trivial substitutions for renamed and
5589 new macros in dispextern.h, frame.h and window.h.
5590
5591 * xmenu.c: Make (some) trivial substitutions for renamed and
5592 new macros in dispextern.h, frame.h and window.h.
5593
5594 * xterm.h (struct x_output): Move members left_pos, top_pos,
5595 border_width, pixel_height, pixel_width, line_height,
5596 internal_border_width, vertical_scroll_bar_extra,
5597 left_fringe_width, right_fringe_width, fringe_cols,
5598 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5599 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
5600 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5601 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5602 (PIXEL_WIDTH, PIXEL_HEIGHT)
5603 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5604 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5605 frame.h and renamed [see frame.h changes].
5606 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5607 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5608 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5609 and renamed [see frame.h changes].
9018a88e 5610
0416870b
KS
5611 * xterm.c: Make (several) trivial substitutions for renamed and
5612 new macros in dispextern.h, frame.h and window.h.
5613 (x_draw_glyph_string_box): Adapt to per-window fringes and
5614 scroll-bars.
5615 (scroll_run): Adapt to new fringe position.
5616 (glyph_rect): Use window coordinates returned from
5617 window_from_coordinates rather than frame_to_window_pixel_xy.
5618 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5619 scroll-bars.
5620 (handle_one_xevent): Simplify a USE_GTK conditional.
5621 (x_clip_to_row): Remove superfluous whole_line_p arg and code
5622 (fringes are now inside margins, i.e. always in the clipping area).
5623 All callers changed.
5624 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5625 directly, then call compute_fringe_widths. Don't call
5626 frame_update_line_height.
5627
5628 * w32term.h (struct w32_output): Move members left_pos, top_pos,
5629 border_width, pixel_height, pixel_width, line_height,
5630 internal_border_width, vertical_scroll_bar_extra,
5631 left_fringe_width, right_fringe_width, fringe_cols,
5632 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5633 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
5634 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5635 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5636 (PIXEL_WIDTH, PIXEL_HEIGHT)
5637 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5638 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5639 frame.h and renamed [see frame.h changes].
5640 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5641 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5642 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5643 and renamed [see frame.h changes].
9018a88e 5644
0416870b
KS
5645 * w32term.c: Make (several) trivial substitutions for renamed and
5646 new macros in dispextern.h, frame.h and window.h.
5647 (x_draw_glyph_string_box): Adapt to per-window fringes and
5648 scroll-bars.
5649 (glyph_rect): Use window coordinates returned from
5650 window_from_coordinates rather than frame_to_window_pixel_xy.
5651 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5652 scroll-bars.
5653 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
5654 (fringes are now inside margins, i.e. always in the clipping area).
5655 All callers changed.
5656 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5657 directly, then call compute_fringe_widths. Don't call
5658 frame_update_line_height.
5659
5660 * w32console.c: Make (few) trivial substitutions for renamed and
5661 new macros in dispextern.h, frame.h and window.h.
5662
5663 * w32fns.c: Make (many) trivial substitutions for renamed and
5664 new macros in dispextern.h, frame.h and window.h.
5665
5666 * w32menu.c: Make (few) trivial substitutions for renamed and
5667 new macros in dispextern.h, frame.h and window.h.
5668
5669 * macterm.h (struct mac_output): Move members left_pos, top_pos,
5670 border_width, pixel_height, pixel_width, line_height,
5671 internal_border_width, vertical_scroll_bar_extra,
5672 left_fringe_width, right_fringe_width, fringe_cols,
5673 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5674 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
5675 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5676 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5677 (PIXEL_WIDTH, PIXEL_HEIGHT)
5678 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5679 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5680 frame.h and renamed [see frame.h changes].
5681 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5682 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5683 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5684 and renamed [see frame.h changes].
9018a88e 5685
0416870b
KS
5686 * macterm.c: Make (several) trivial substitutions for renamed and
5687 new macros in dispextern.h, frame.h and window.h.
5688 (x_draw_glyph_string_box): Adapt to per-window fringes and
5689 scroll-bars.
5690 (glyph_rect): Use window coordinates returned from
5691 window_from_coordinates rather than frame_to_window_pixel_xy.
5692 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5693 scroll-bars.
5694 (x_clip_to_row): Remove superfluous whole_line_p arg and code
5695 (fringes are now inside margins, i.e. always in the clipping area).
5696 All callers changed.
5697 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5698 directly, then call compute_fringe_widths. Don't call
5699 frame_update_line_height.
5700
5701 * macfns.c: Make (several) trivial substitutions for renamed and
5702 new macros in dispextern.h, frame.h and window.h.
9018a88e 5703 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
5704
5705 * macmenu.c: Make (few) trivial substitutions for renamed and
5706 new macros in dispextern.h, frame.h and window.h.
5707
5708 * msdos.h (struct x_output): Remove members left_pos, top_pos,
5709 and line_height, and use corresponding new members in struct
5710 frame. All uses changed.
5711 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
5712 superseeded by corresponding macros in frame.h.
5713
5714 * msdos.c: Make (several) trivial substitutions for renamed and
5715 new macros in dispextern.h, frame.h and window.h.
5716 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 5717 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
5718 (internal_terminal_init): No need to initialize line_height here;
5719 it now defaults to 1.
5720
9018a88e
SM
57212003-05-24 Stefan Monnier <monnier@cs.yale.edu>
5722
5723 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
5724 dropping `down' events.
5725
016bd3c0
AS
57262003-05-24 Andreas Schwab <schwab@suse.de>
5727
5728 * coding.c (find_safe_codings): Fix last change.
5729
4dacadcc
TTN
57302003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
5731
5732 * xfns.c (x_window): Fix typo from 2003-05-21 change.
5733
319830ce
SM
57342003-05-23 Stefan Monnier <monnier@cs.yale.edu>
5735
9018a88e
SM
5736 * xdisp.c (display_mode_element): Increase max depth.
5737 Simplify the error handling code. Use a different error string
5738 for the case where we hit the depth limit.
5739
319830ce
SM
5740 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
5741
5742 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
5743
57442003-05-21 Stefan Monnier <monnier@cs.yale.edu>
5745
5746 * intervals.c (get_local_map): Don't get char-property of previous
5747 point any more: get_pos_property already does it and better.
5748
c67de8ba
DL
57492003-05-21 Dave Love <fx@gnu.org>
5750
5751 [Merged from unicode branch.]
5752
5753 * xfns.c (x_window, x_window): Use use_xim.
5754
5755 * xterm.c (use_xim): Initialize.
5756 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
5757 (x_term_init): Maybe set use_xim.
5758
5759 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
5760
edd3ff1d
JR
57612003-05-21 Jason Rumney <jasonr@gnu.org>
5762
5763 * unexw32.c (_start): Remove _fmode initialization.
5764
5765 * emacs.c (main) [WINDOWSNT]: Move it here.
5766
463f55ee
DL
57672003-05-20 Dave Love <fx@gnu.org>
5768
5769 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
5770
af253914
RS
57712003-05-19 Richard M. Stallman <rms@gnu.org>
5772
5773 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
5774 as value for QCfont attribute.
5775 (realize_default_face): lface should already exist; crash if not.
5776 Specify 0 for FORCE_P when calling set_lface_from_font_name.
5777
5778 * frame.c (Fignore_event): Doc fix.
5779
1d211019
KH
57802003-05-19 Kenichi Handa <handa@m17n.org>
5781
5782 * coding.c (decode_coding_string): Handle post-read-conversion
5783 even if the coding doesn't require decoding.
5784
4dd68254
RS
57852003-05-18 Richard M. Stallman <rms@gnu.org>
5786
5787 * callproc.c (Fcall_process_region): Doc fix.
5788
14d87dc9
SM
57892003-05-17 Stefan Monnier <monnier@cs.yale.edu>
5790
deca5d96
SM
5791 * lread.c (Fload): Print a message if package is obsolete.
5792
14d87dc9
SM
5793 * window.c (Fselect_window): Add optional `norecord' arg.
5794 (select_window_1): Fold into Fselect_window.
5795 (select_window_norecord): New function.
5796 (temp_output_buffer_show): Use it. Preserve current buffer.
5797
5798 * window.h (Fselect_window): Update declaration.
5799
5800 * window.c (delete_window, Fother_window, Fset_window_configuration):
5801 * minibuf.c (read_minibuf):
5802 * macterm.c (x_new_focus_frame):
5803 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
5804 * callint.c (Fcall_interactively):
5805 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
5806
5807 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
5808
78f52183
DK
58092003-05-17 David Kastrup <dak@gnu.org>
5810
5811 * process.c (read_process_output): Back out change from 2003-03-09.
5812
14d87dc9
SM
58132003-05-17 Stefan Monnier <monnier@cs.yale.edu>
5814
5815 * editfns.c (get_pos_property): Don't assume that `object' = nil.
5816
5817 * textprop.c (text_property_stickiness): New arg `buffer'.
5818
5819 * intervals.h (text_property_stickiness): New arg `buffer'.
5820 (get_pos_property): Declare.
5821
5822 * intervals.c (get_local_map): Use get_pos_property, to obey
5823 stickiness and empty overlays.
5824 (create_root_interval, graft_intervals_into_buffer): Use BEG.
5825 (merge_properties, intervals_equal, merge_properties_sticky):
5826 Use XCAR, XCDR.
5827 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
5828
1fd1cc2f
RS
58292003-05-17 Richard M. Stallman <rms@gnu.org>
5830
4f9f637a
RS
5831 * minibuf.c (read_minibuf): If buffer is empty, record the default
5832 in the history.
5833 (Fminibuffer_complete_word): When deleting the overlap, take account
5834 of its real position.
5835
5836 * fns.c (map_char_table): Fix previous change.
5837
1fd1cc2f
RS
5838 * syntax.c (find_defun_start):
5839 When open_paren_in_column_0_is_defun_start,
5840 return beginning of buffer.
5841
5842 * lisp.h (map_char_table): Declare added arg.
5843
5844 * fns.c (map_char_table): New arg TABLE gets the master table.
5845 All calls changed.
5846 Process default and inheritance, resorting to Faref if necessary.
5847
5848 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
5849 (Faccessible_keymaps): Pass new arg to map_char_table.
5850
5851 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
5852
5853 * casetab.c (set_case_table): Pass new arg to map_char_table.
5854
5855 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
5856
5857 * lisp.h (specbinding_func): New typedef.
5858 (struct specbinding): Use specbinding_func, to put the `volatile'
5859 in the right place.
5860
5861 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
5862 to avoid GCC warning.
14d87dc9 5863
b4bd27c5
RS
58642003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
5865
14d87dc9 5866 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 5867
35fb885d
SM
58682003-05-15 Stefan Monnier <monnier@cs.yale.edu>
5869
5870 * keyboard.c (apply_modifiers): Don't fill the other cache.
5871
9a274fbd
SM
58722003-05-14 Stefan Monnier <monnier@cs.yale.edu>
5873
c55b5fad
SM
5874 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
5875
9a274fbd
SM
5876 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
5877 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
5878 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
5879 (Fset_window_configuration, Fcurrent_window_configuration)
5880 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
5881 (Fpos_visible_in_window_p, mark_window_cursors_off)
5882 (window_internal_height, window_internal_width, Frecenter)
5883 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
5884 (replace_buffer_in_all_windows, init_window_once, init_window)
5885 (syms_of_window, keys_of_window): Move from lisp.h.
5886 * lisp.h: Move window.c declarations to window.h.
5887
5888 * bytecode.c: Include window.h.
5889 * emacs.c: Include window.h.
5890
14d87dc9 5891 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
5892 (keyremap): Add `parent' field.
5893 (keyremap_step): Use it. Remove `parent' argument.
5894 (read_key_sequence): Setup and use the new `parent' field.
5895
fd93e331
SM
58962003-05-11 Stefan Monnier <monnier@cs.yale.edu>
5897
5898 * keyboard.c (adjust_point_for_property): Ensure termination.
5899
1c4001a1
SM
59002003-05-10 Stefan Monnier <monnier@cs.yale.edu>
5901
5902 * keyboard.c (follow_key): Remove dead variable `did_meta'.
5903 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
5904 duplicated handling of function-key-map and key-translation-map
5905 in read_key_sequence.
5906 (read_key_sequence): Use them.
5907
5908 * keyboard.c (adjust_point_for_property): Try harder to move point
5909 to the non-sticky end of an invisible property.
5910
5911 * xdisp.c (single_display_prop_intangible_p): Make `space' display
5912 property intangible as well.
5913
780379b1
AS
59142003-05-10 Andreas Schwab <schwab@suse.de>
5915
5916 * xmenu.c (single_menu_item): Change last parameter to void* to
5917 avoid warning.
5918
ca2de342
RS
59192003-05-09 Richard M. Stallman <rms@gnu.org>
5920
5921 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
5922 Bind Qinhibit_modification_hooks to t so there will be no GC.
5923 Rename local `tem' to `save_deactivate_mark'.
5924
5925 * eval.c (specpdl_ptr): Declare volatile.
5926 (unbind_to): Copy the whole binding and decrement specpdl_ptr
5927 before doing the work of unbinding it.
5928
5929 * lisp.h (struct specbinding): Declare elements volatile.
5930 (specpdl_ptr): Declare volatile.
5931
5932 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
5933
5934 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
5935 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
5936
347003be
DL
59372003-05-08 Dave Love <fx@gnu.org>
5938
5939 * coding.c (Vlast_coding_system_used): Doc fix.
5940
5adcec23
JR
59412003-05-07 Jason Rumney <jasonr@gnu.org>
5942
5943 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
5944 when system does not support them.
5945
5fe3b8a4
SM
59462003-05-05 Stefan Monnier <monnier@cs.yale.edu>
5947
5948 * fileio.c (Qwrite_region_annotate_functions): New var.
5949 (build_annotations): Use it to process the global part of the hook.
5950 (syms_of_fileio): Init and staticpro it.
5951
5952 * keyboard.c (safe_run_hooks_error): Display a message instead of
5953 silently ignoring the error.
5954
59552003-05-03 Stefan Monnier <monnier@cs.yale.edu>
5956
5957 * keyboard.c (input_available_signal): Mark static.
5958 (menu_bar_items): Use map_keymap.
5959 (menu_bar_one_keymap): Remove.
5960 (menu_bar_item): Adjust arglist (for use in map_keymap).
5961 Properly hide a second binding when not both are keymaps.
5962
5963 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
5964 (single_keymap_panes): Use it and map_keymap.
5965 (single_menu_item): Use skp as well.
5966
5967 * keymap.h (map_keymap_function_t): New type.
5968 (map_keymap): Declare.
5969
5970 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
5971 (map_keymap_call, Fmap_keymap): New functions.
5972 (syms_of_keymap): Defsubr map-keymap.
5973
4b1b4443
JD
59742003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5975
5976 * gtkutil.c (create_dialog, make_widget_for_menu_item)
5977 (make_menu_item, create_menus, xg_update_menu_item): Don't call
5978 ..._with_mnemonic functions for menu items.
5979
1f816871
KH
59802003-05-01 Kenichi Handa <handa@m17n.org>
5981
5982 * coding.c (coding_system_accept_latin_extra_p): Delete this
5983 function.
5984 (find_safe_codings): Pay attention to
5985 the property tranlsation-table-for-encode of each codings.
5986 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
5987
5ed6ba5b
SM
59882003-05-01 Stefan Monnier <monnier@cs.yale.edu>
5989
5990 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
5991
32c06229
SM
59922003-04-30 Stefan Monnier <monnier@cs.yale.edu>
5993
5994 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
5995
5996 * lisp.h (CHECK): Wrap args in parenthesis.
5997 (specbind): Fix doc: symbol = Qnil is not supported any more.
5998
5999 * bytecode.c (Fbyte_code) <unwind-protect>:
6000 Use Fprogn rather than 0 and Qnil.
6001
6002 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
6003 `double', and `triple' modifiers as well.
6004
ed3c3314
RS
60052003-04-30 Richard M. Stallman <rms@gnu.org>
6006
6007 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
6008
6009 * alloc.c (abort_on_gc): New variable.
6010 (Fgarbage_collect): Abort if abort_on_gc is set.
6011
6012 * lisp.h (abort_on_gc): Add decl.
6013
6014 * eval.c (Fsignal): Clear abort_on_gc.
6015
6016 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 6017 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
6018
6019 * xdisp.c (move_it_vertically_backward): Do the final big else
6020 even if nlines is 0.
6021
6022 * xdisp.c (redisplay_internal): Finish the per-frame loop
6023 even if redisplay is suspended by input.
6024
0b325c12
AC
60252003-04-24 Andrew Choi <akochoi@shaw.ca>
6026
6027 * macterm.c (x_list_fonts): Return all fonts that match if
6028 maxnames = -1.
6029
4e837cd0
KH
60302003-04-25 Kenichi Handa <handa@m17n.org>
6031
6032 * syntax.c (skip_chars): Fix previous change.
6033
9af7511a
KH
60342003-04-24 Kenichi Handa <handa@m17n.org>
6035
6036 * syntax.c (skip_chars): Make the code faster by using the common
6037 technique of *p, *stop, and *endp.
6038
e3b2c21f
JD
60392003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6040
6041 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 6042 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
6043 being updated.
6044
32c06229
SM
60452003-04-19 Stefan Monnier <monnier@cs.yale.edu>
6046
6047 * eval.c (Fapply): Undo last change and add a comment about why.
6048
c6464167
MB
60492003-04-18 Miles Bader <miles@gnu.org>
6050
6051 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
6052 pickier PARSE_MULTIBYTE_SEQ.
6053
e509f168
SM
60542003-04-17 Stefan Monnier <monnier@cs.yale.edu>
6055
6056 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
6057 Use XCDR, XCAR, CONSP.
6058 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
6059 (Fapply): Remove unnecessary GCPRO.
6060
6061 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
6062
6063 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
6064
6065 * buffer.h: Don't hardcode BEG==1.
6066
6067 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
6068
5ceea398
RS
60692003-04-16 Richard M. Stallman <rms@gnu.org>
6070
6071 * xdisp.c (try_window, try_window_reusing_current_matrix):
6072 When at end of window, set window_end_pos to Z-ZV.
6073
6074 * buffer.c (Foverlay_recenter): Doc fix.
6075
e509f168
SM
60762003-04-14 Stefan Monnier <monnier@cs.yale.edu>
6077
6078 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
6079
d243e605
AC
60802003-04-14 Andrew Choi <akochoi@shaw.ca>
6081
6082 * macterm.c (mac_check_for_quit_char): Don't check more often than
6083 once a second.
6084
6901b111
SM
60852003-04-11 Stefan Monnier <monnier@cs.yale.edu>
6086
6087 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
6088 specially, so that they can't hide an implicit switch-frame event.
6089 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
6090 (head_table): Use switch-frame as event_kind for select-window.
6091 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
6092
6093 * editfns.c (Fformat): Lisp_Object/int mixup.
6094 (format2): Remove unused var numargs.
6095
e301806f 60962003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 6097
6901b111 6098 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
6099 (Qafter_insert_file_set_coding): New variable.
6100 (syms_of_fileio): Initialize and staticpro it. Delete declaration
6101 for after-insert-file-adjust-coding-function.
6102 (Finsert_file_contents): Call Qafter_insert_file_set_coding
6103 instead of Vafter_insert_file_adjust_coding_function.
6104
38914424
KH
61052003-04-11 Kenichi Handa <handa@m17n.org>
6106
6107 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
6108
6109 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
6110 string. Callers changed.
6111
61122003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 6113
6901b111 6114 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 6115 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
6116 (Finsert_file_contents):
6117 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
6118 decode-format.
6119
f979dc05
JD
61202003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6121
6122 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
6123 get GtkAdjustment as widget now is a GtkRange.
6124
6125 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
6126 GtkRange to avoid memory leak.
6127
f8c6b4c2 61282003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 6129
50ebc53d
KH
6130 * xfaces.c (Vface_font_rescale_alist): New variable.
6131 (struct font_name): New member rescale_ratio.
6132 (font_rescale_ratio): New function.
6901b111 6133 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
6134 (better_font_p): On comparing point sized, pay attention to
6135 recale_ratio member of fonts.
6136 (build_scalable_font_name): Reflect font->rescale_ratio in the
6137 font name.
6901b111 6138 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 6139
cb98871c
KH
6140 * lread.c (read1): Before calling index, check if the 2nd
6141 arguemnt is in ASCII range.
6142
4773b8ca
RS
61432003-04-08 Richard M. Stallman <rms@gnu.org>
6144
b0ada147
RS
6145 * fileio.c (Ffile_symlink_p): Doc fix.
6146
6147 * editfns.c (Fformat): Translate positions of text properties
6148 in the format string to apply them to the result.
6149
4773b8ca
RS
6150 * fileio.c (Finsert_file_contents): Doc fix.
6151 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
6152
61532003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 6154
4773b8ca
RS
6155 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
6156
e8f25745 61572003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 6158
e8f25745
ST
6159 * mac.c (init_mac_osx_environment): Switch libexec and bin so
6160 that self-contained application finds libexec files.
6161
f8c6b4c2 61622003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 6163
6901b111
SM
6164 * coding.c (code_convert_region_unwind):
6165 Set Vlast_coding_system_used to the argument.
2310d84c
KH
6166 (code_convert_region): If post-read-conversion function changed
6167 the value of last-coding-sytem, keep the new value in
6168 coding->symbol so that it won't be overridden.
6169 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
6170 (coding_system_accept_latin_extra_p): New function.
6171 (find_safe_codings): Pay attention to characters registered in
6172 latin-extra-code-table.
2310d84c 6173
39c9a034
TTN
61742003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
6175
6176 * Makefile.in (md5.o): Add missing dependency info.
6177
eb67c5d6
RS
61782003-04-06 Richard M. Stallman <rms@gnu.org>
6179
6180 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
6181
6182 * marker.c (verify_bytepos): New function.
6183
6184 * intervals.c (set_intervals_multibyte_1): When becoming
6185 multibyte, adjust right and left child sizes to a whole set of
6186 characters. If an interval gets zero total-length, delete it.
6187 If an interval consists of just its children, delete one of them.
6188
6189 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
6190 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 6191
eb67c5d6
RS
6192 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
6193 All calls deleted.
6194 (lisp_malloc): Do the work here directly.
6195
b1f81fc5
JB
61962003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
6197
6198 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
6199 char tables.
6200
62012003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
6202
6203 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
6204 destructively change "%S" to "%s".
6205
774666fb
MB
62062003-04-03 Miles Bader <miles@gnu.org>
6207
6208 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
6209 always set.
6210
19c37f01
DL
62112003-04-01 Dave Love <fx@gnu.org>
6212
6213 * xfns.c (xpm_lookup_color): Grok "opaque".
6214
2f4b24c3
AC
62152003-03-31 Andrew Choi <akochoi@shaw.ca>
6216
6217 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
6218 parent window ID.
6219
6220 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
6221
6222 * macterm.h (struct mac_output): Define x_pixels_diff and
6223 y_pixels_diff.
b1f81fc5 6224
9443fcf6
JB
62252003-03-31 Juanma Barranquero <lektu@terra.es>
6226
6227 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
6228 blockinput.h and files included from it.
6229
e072891b
KS
62302003-03-31 Kim F. Storm <storm@cua.dk>
6231
6232 The following changes consolidates the common code related to
6233 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
6234 files into frame.c.
9443fcf6 6235
e072891b
KS
6236 * frame.c: Include blockinput.h.
6237 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
6238 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
6239 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
6240 related vars here.
6241 (struct frame_parm_table, frame_parms): New table for describing
6242 frame parameters and their associated Q-variable.
6243 The order of the parameters corresponds to the sequence of the
6244 frame_parm_handlers table in redisplay_interface.
6245 (x_fullscreen_move, x_set_frame_parameters)
6246 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
6247 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
6248 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6249 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
6250 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
6251 Generic functions for processing of frame parameters.
6252 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
6253 (display_x_get_resource, x_get_resource_string): Functions for
6254 generic access to X resources.
6255 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
6256 (x_default_parameter, Fx_parse_geometry): Functions for generic
6257 access to frame parameters.
6901b111
SM
6258 (x_figure_window_size): Generic calculation of frame size.
6259 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
6260 (syms_of_frame): Intern and staticpro frame parameter variables.
6261 Defvar_lisp Vx_resource_class and Vx_resource_name here.
6262 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 6263
e072891b
KS
6264 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
6265 parameter related vars defined in frame.c.
6266 (EMACS_CLASS): Define here.
6267 (enum FULLSCREEN_*): Define here.
6268 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
6269 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
6270 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
6271 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
6272 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
6273 (x_set_visibility, x_set_autoraise, x_set_autolower)
6274 (x_set_unsplittable, x_set_vertical_scroll_bars)
6275 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
6276 (x_figure_window_size): Add prototypes.
6277
6278 * dispextern.h (frame_parm_handler): New typedef.
6279 (struct redisplay_interface): New member frame_parm_handlers.
6280 (enum resource_types): Move declaration here.
6281 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
6282 (x_default_parameter): Add prototypes.
6283
6284 * window.c: Remove extern decl for frame parameter vars.
6285 (change_window_heights): New generic function;
6286 replaces x_change_window_heights. All users changed.
6287
6288 * window.h (change_window_heights): Add prototype.
6289
6290 * xfaces.c: Remove extern decl for frame parameter vars.
6291
6292 * xterm.h (EMACS_CLASS): Remove. Use generic define.
6293 (struct w32_display_info): Fix type of xrdb member.
6294 (enum FULLSCREEN_*): Remove.
6295 Remove prototypes for generic functions (in frame.h).
6296
6297 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
6298 parameters now defined in frame.h and frame.c.
f63fd14e 6299 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
6300 (enum x_frame_parms): Remove (bogus, unused enum).
6301 (check_x_display_info): Make non-static (for frame.c).
6302 (struct x_frame_parm_table, x_frame_parms): Remove.
6303 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
6304 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
6305 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6306 (x_change_window_heights, x_set_autoraise, x_set_autolower)
6307 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
6308 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
6309 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
6310 Remove. Use generic functions instead.
6311 (enum resource_types): Remove.
6312 (x_set_scroll_bar_default_width): New global function (for frame.c).
6313 (Fx_create_frame): Depend on x_figure_window_size to add space for
6314 toolbar and setup size_hint_flags.
6315 (x_frame_parm_handlers): New table for redisplay_interface.
6316 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 6317
e072891b 6318 * xterm.c: Remove unnecessary extern declarations.
f63fd14e 6319 (x_fullscreen_adjust): Remove. Use generic instead.
e072891b
KS
6320 (x_redisplay_interface): Add x_frame_parm_handlers member.
6321
6322 * w32gui.h (XrmDatabase): New (dummy) typedef.
6323
6324 * w32term.h (EMACS_CLASS): Remove. Use generic define.
6325 (struct w32_display_info): Fix type of xrdb member.
6326 (enum FULLSCREEN_*): Remove.
6327 (x_fullscreen_adjust): Remove prototype.
6328
6329 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
6330 parameters now defined in frame.h and frame.c.
f63fd14e 6331 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
6332 (enum x_frame_parms): Remove (bogus, unused enum).
6333 (check_x_display_info): Make non-static (for frame.c).
6334 (struct x_frame_parm_table, x_frame_parms): Remove.
6335 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
6336 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
6337 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6338 (x_change_window_heights, x_set_autoraise, x_set_autolower)
6339 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
6340 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
6341 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
6342 Remove. Use generic functions instead.
6343 (enum resource_types): Remove.
6344 (x_set_scroll_bar_default_width): New global function (for frame.c).
6345 (Fx_create_frame): Depend on x_figure_window_size to add space for
6346 toolbar and setup size_hint_flags.
6347 (w32_frame_parm_handlers): New table for redisplay_interface.
6348 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 6349
e072891b
KS
6350 * w32term.c: Remove unnecessary extern declarations.
6351 (x_fullscreen_adjust): Remove. Use generic instead.
6352 (x_redisplay_interface): Add w32_frame_parm_handlers member.
6353
6354 * w32reg.c (x_get_string_resource): Use XrmDatabase.
6355
6356 * macgui.h (XrmDatabase): New (dummy) typedef.
6357
6358 * macterm.h (EMACS_CLASS): Remove.
6359 (struct mac_display_info): Add xrdb member.
6360 (struct mac_output): Add want_fullscreen member.
6361
6362 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
6363 parameters now defined in frame.h and frame.c.
f63fd14e 6364 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
6365 (check_x_display_info): Make non-static (for frame.c).
6366 (struct x_frame_parm_table, x_frame_parms): Remove.
6367 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
6368 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
6369 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6370 (x_change_window_heights, x_set_autoraise, x_set_autolower)
6371 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
6372 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
6373 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
6374 Remove. Use generic functions instead.
6375 (enum resource_types): Remove.
6376 (x_set_scroll_bar_default_width): New global function (for frame.c).
6377 (mac_frame_parm_handlers): New table for redisplay_interface.
6378 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 6379
e072891b
KS
6380 * macterm.c: Remove unnecessary extern declarations.
6381 (x_redisplay_interface): Add mac_frame_parm_handlers member.
6382
3e6a560b
KS
6383 * Makefile.in (frame.o): Add dependency on blockinput.h and files
6384 included from it (atimer.h and systime.h).
6385
7b7b454e
AS
63862003-03-30 Andreas Schwab <schwab@suse.de>
6387
6388 * xdisp.c (x_insert_glyphs): Fix swapped width and height
6389 parameters for shift_glyphs_for_insert.
6390
6391 * macterm.c (x_redisplay_interface): Add missing entry for
6392 draw_vertical_window_border.
6393
beb402de
KG
63942003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
6395
6396 * fileio.c (Fexpand_file_name): In the no-handler case, after
6397 expanding, look again for a handler and invoke it. This is needed
6398 for filenames like "/foo/../user@host:/bar/../baz" -- the first
6399 expansion produces "/user@host:/bar/../baz" which needs to be
6400 expanded again for the finame result "/user@host:/baz".
6401
b676f356
JD
64022003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6403
6404 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
6405 of area to be redrawn for better performance.
6406
3c671a56
SM
64072003-03-28 Stefan Monnier <monnier@cs.yale.edu>
6408
6409 * xterm.c (take_vertical_position_into_account): Remove.
6410 (xt_action_hook): Call set_vertical_scroll_bar if needed.
6411 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
6412 (xm_scroll_callback, x_create_toolkit_scroll_bar)
6413 (x_set_toolkit_scroll_bar_thumb): Simplify.
6414 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
6415 (XTread_socket): Remove unused var.
6416 (x_make_frame_invisible): Replace goto with else.
6417
6418 * xdisp.c (set_vertical_scroll_bar): New fun.
6419 (redisplay_window): Use it.
6420
84f2e615
RS
64212003-03-26 Richard M. Stallman <rms@gnu.org>
6422
6423 * xdisp.c (update_tool_bar): Recompute tool bar if
6424 update_mode_lines is set. Set w->update_mode_line
6425 only if the tool bar contents actually change.
6426 (update_menu_bar): Undo previous change.
6427
70b6104c
JD
64282003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6429
5fd6f727
JD
6430 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
6431 (xg_frame_set_char_size): Calculate scroll bar width before frame
6432 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
6433 (xg_separator_p): Check for all documented separator types.
6434 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
6435 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
6436
70b6104c
JD
6437 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
6438 so tool bar gets updated.
6439
d9b36d19
SM
64402003-03-26 Stefan Monnier <monnier@cs.yale.edu>
6441
6442 * data.c (store_symval_forwarding): Re-instate part of the code
6443 that was deleted with too much enthusiasm.
6444
64452003-03-25 Stefan Monnier <monnier@cs.yale.edu>
6446
6447 * data.c (store_symval_forwarding): Delete special read-only
6448 hack for type == -1, since we now use ->constant instead.
6449 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
6450
6451 * buffer.c (overlays_in): Declare static.
6452 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
6453 `constant' field rather than the variable's `type' field.
6454
365fa1b3
AC
64552003-03-24 Andrew Choi <akochoi@shaw.ca>
6456
6457 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
6458
6459 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
6460
6461 * fns.c [MAC_OSX]: Do not redefine vector.
6462
6463 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
6464
6465 * macgui.h: Remove definition of No_Cursor.
6466
d9b36d19 6467 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
6468
6469 * xdisp.c: Define No_Cursor.
6470 (x_write_glyphs, notice_overwritten_cursor)
6471 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
6472 (note_mouse_highlight): Remove Mac-specific code.
6473 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 6474
c0bcce6f
JPW
64752003-03-24 John Paul Wallington <jpw@gnu.org>
6476
6477 * xdisp.c (redisplay_window): If mini window's buffer is not
6478 empty, then redisplay it like other windows.
6479
a526b96c
KS
64802003-03-23 Kim F. Storm <storm@cua.dk>
6481
6482 * w32term.c (w32_draw_window_cursor): Fix last change.
6483
37ab321e
KH
64842003-03-23 Kenichi Handa <handa@m17n.org>
6485
a526b96c
KS
6486 * alloc.c (make_string_from_bytes, make_specified_string):
6487 Add `const' for the arg CONTENTS.
37ab321e
KH
6488
6489 * lisp.h (make_string_from_bytes, make_specified_string):
6490 Prototypes adjusted.
6491
7863d625
JD
64922003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6493
a526b96c 6494 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 6495
7863d625
JD
6496 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
6497 (XG_SB_RANGE): New define.
6498
6499 * gtkutil.c (xg_fixed_handle_expose): New function.
6500 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
6501 expose events.
6502 (xg_update_scrollbar_pos): Take two more arguments, left and width
6503 of scroll bar including borders.
6504 Clear left and right part outside scroll bar separately as some
6505 themes have bars that are not an even number of pixels.
d9b36d19 6506 Don't set reallocate_redraws, don't call
7863d625
JD
6507 gdk_window_process_all_updates.
6508 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
6509 so no need to change it. Calculate size and value with XG_SB_RANGE.
6510
d9b36d19
SM
6511 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
6512 Pass left and width of scroll bar including borders to
7863d625
JD
6513 xg_update_scrollbar_pos.
6514
af0ad939
TTN
65152003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
6516
6517 * Makefile.in: Make sure space precedes end-of-line backslashes.
6518
b22139fd
KS
65192003-03-22 Kim F. Storm <storm@cua.dk>
6520
6521 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
6522 Add generic versions here. Remove system specific versions
6523 defined elsewhere.
6524
6525 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
6526 Add prototypes.
6527
6e6410cf
KS
6528 * xterm.h (STORE_NATIVE_RECT): New macro.
6529
5c9cc435
KS
65302003-03-21 Kim F. Storm <storm@cua.dk>
6531
00c64fab
SM
6532 * xdisp.c (get_glyph_string_clip_rect):
6533 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
6534
6535 * dispextern.h (struct redisplay_interface): Add active_p
6536 argument to draw_window_cursor member. All uses changed.
6537
acd37560
KS
65382003-03-21 Kim F. Storm <storm@cua.dk>
6539
6540 The following changes consolidate code related to writing and
6541 inserting glyphs, exposing frame, the tool bar, the mouse face,
6542 the output cursor, and help echo from xterm.c, w32term.c and
6543 macterm.c into xdisp.c. It also generalizes the use of the
6544 window_part enum instead of using numeric values throughout.
af0ad939 6545
acd37560
KS
6546 * xdisp.c: Consolidate gui-independent code here.
6547 Include keymap.h.
6548 (Qhelp_echo): Import.
6549 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
6550 (help_echo_string, help_echo_window, help_echo_object)
6551 (previous_help_echo_string, help_echo_pos): Declare here.
6552 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
6553 (estimate_mode_line_height): Define here. Handle windowing
6554 systems directly (without using estimate_mode_line_height_hook).
6555 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
6556 (update_window_cursor, update_cursor_in_window_tree)
6557 (fast_find_position, fast_find_string_pos)
6558 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
6559 (expose_area, expose_line, expose_overlaps, expose_window)
6560 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
6561 declared static as they are only used locally in xdisp.c.
6562 (draw_glyphs): Rename from x_draw_glyphs and make static.
6563 (tool_bar_item_info, notice_overwritten_cursor): Make static.
6564 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
6565 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 6566 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
6567 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
6568 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
6569 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
6570 (note_mouse_highlight, x_clear_window_mouse_face)
6571 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
6572 (x_intersect_rectangles): New generic functions for use by xdisp.c
6573 and GUI front-ends.
6574 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
6575 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
6576
6577 * dispextern.h (Display_Info): Generic typedef for *_display_info.
6578 (NativeRectangle): Generic typedef for rectangle type.
6579 (enum window_part): Move here from window.c.
6580 (struct redisplay_interface): New members flush_display_optional,
6581 define_frame_cursor, clear_frame_area, draw_window_cursor,
6582 draw_vertical_window_border, shift_glyphs_for_insert.
6583 Rename member clear_mouse_face to clear_window_mouse_face.
6584 (estimate_mode_line_height_hook): Remove hook.
6585 (auto_raise_tool_bar_buttons_p): Don't declare extern.
6586 (tool_bar_item_info): Remove prototype.
6587 (help_echo_string, help_echo_window, help_echo_object)
6588 (previous_help_echo_string, help_echo_pos)
6589 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
6590 (x_stretch_cursor_p, output_cursor): Declare extern.
6591 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
6592 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
6593 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
6594 (display_and_set_cursor, set_output_cursor, x_cursor_to)
6595 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
6596 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
6597 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
6598 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
6599 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
6600 Add prototypes.
6601 (mode_line_string, marginal_area_string): Fix prototypes.
6602
6603 * window.c (enum window_part): Move to dispextern.h.
6604 (coordinates_in_window): Use enum window_part member names
6605 instead of numbers to describe return value.
6606 (struct check_window_data): Change part member to window_part.
6607 (check_window_containing): Return window_part unaltered.
6608 (window_from_coordinates): Change part arg from int to enum
6609 window_part. Allow part arg to be null. All users changed.
6610
6611 * window.h (window_from_coordinates): Fix prototype.
6612
6613 * term.c (estimate_mode_line_height): Move to xdisp.c.
6614
6615 * keyboard.c (make_lispy_event): Use enum window_part.
6616
6617 * dispnew.c (mode_line_string, marginal_area_string): Use enum
6618 window_part instead of int in arg list. Users changed.
6619
6620 * xterm.h (No_Cursor): Declare as None for X.
6621 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 6622
acd37560
KS
6623 * xterm.c: Remove consolidated defines and code.
6624 (BETWEEN): Remove unused macro.
6625 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
6626 (x_define_frame_cursor, x_clear_frame_area)
6627 (x_draw_window_cursor): New X-specific functions for RIF.
6628 (x_redisplay_interface): Add new members.
6629
6630 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
6631
6632 * w32term.h (struct w32_output): Remove cross_cursor member.
6633
6634 * w32term.c: Remove consolidated defines and code.
6635 (BETWEEN): Remove unused macro.
6636 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
6637 (w32_define_frame_cursor, w32_clear_frame_area)
6638 (w32_draw_window_cursor): New W32-specific functions for RIF.
6639 (w32_redisplay_interface): Add new members.
6640
a64387ee 6641 * w32gui.h (No_Cursor): Define as 0 for W32.
acd37560
KS
6642 (XRectangle): Add X compatible rectangle type.
6643 (NativeRectangle): Declare as RECT for W32.
6644 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
6645
6646 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
6647
6648 * w32console.c: Remove consolidated defines and code.
af0ad939 6649
acd37560
KS
6650 * msdos.h (Display_Info): Add generic typedef.
6651
6652 * msdos.c: Remove consolidated defines and code.
6653 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
6654
6655 * macterm.h (struct mac_output): Replace member cross_cursor by
6656 hand_cursor.
6657 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
6658
6659 * macterm.c: Remove consolidated defines and code.
6660 (BETWEEN): Remove unused macro.
6661 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
6662 (mac_define_frame_cursor, mac_clear_frame_area)
6663 (mac_draw_window_cursor): New Mac-specific functions for RIF.
6664 (x_redisplay_interface): Add new members.
6665
6666 * macgui.h (No_Cursor): Define as 0 for Mac.
6667 (XRectangle): Add X compatible rectangle type.
6668 (NativeRectangle): Declare as Rect for Mac.
6669 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
6670
204ccab1
KS
6671 * macfns.c (x_set_mouse_color): Setup hand_cursor.
6672 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 6673
9443fcf6 6674 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
6675 included from it. Add dependency on keymap.h.
6676
6677 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
6678
8ba01a70 66792003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
6680
6681 * fileio.c (Fexpand_file_name): Fix previous change.
6682
8ba01a70 66832003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
6684
6685 * fileio.c (Ffile_name_directory): Reconstruct file name by
6686 make_specified_string.
6687 (Ffile_name_nondirectory, Ffile_name_as_directory)
6688 (Fdirectory_file_name, Fexpand_file_name)
6689 (Fsubstitute_in_file_name): Likewise.
6690 (Fread_file_name): Compare decoded homedir with DIR and
6691 DEFAULT_FILENAME.
6692
6693 * alloc.c (make_specified_string): If NCHARS is negative, count
6694 the number of characters.
6695
19536747
JD
66962003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6697
de38ae5a
JD
6698 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
6699 all widgets.
6700
19536747
JD
6701 * gtkutil.h: Removed xg_ignore_next_thumb.
6702
37ab321e 67032003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
6704
6705 * coding.c (Vchar_coding_system_table): Remove this variable.
6706 (Vcoding_system_safe_chars): New variable.
6707 (intersection): Remove this function.
6708 (find_safe_codings): Don't use Vchar_coding_system_table, but try
6709 all codings in SAFE_CODINGS.
00c64fab 6710 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
6711 find_safe_codings. Get generic coding systems from
6712 Vcoding_system_safe_chars.
6713 (Fdefine_coding_system_internal): New function.
6714 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
6715 Initialize and staticpro Vcoding_system_safe_chars.
6716
17097258
JD
67172003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6718
2a2071c3
JD
6719 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
6720 equal old values before updating.
6721
17097258
JD
6722 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
6723
6724 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
6725
67262003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6727
6728 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
6729 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
6730 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
6731 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
6732 (xg_create_scroll_bar): Pass bar to button event callback.
6733 (xg_find_top_left_in_fixed): New function.
6734 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
6735 whole scroll bar area. Get old position with
6736 xg_find_top_left_in_fixed, calculate and only clear needed areas.
6737 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
6738 dragging is in progress. Calculate whole as for Motif.
6739 Remove code that saved last values. Call gtk_range functions to
6740 set scroll bar sizes.
6741
6742 * gtkutil.h: Removed xg_ignore_next_thumb.
6743
8cb9dfbf
JB
67442003-03-17 Juanma Barranquero <lektu@terra.es>
6745
6746 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
6747 and files included from it.
6748
00c64fab
SM
67492003-03-18 Stefan Monnier <monnier@cs.yale.edu>
6750
6751 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
6752 multiple occurrences of the same keymap under different prefixes.
6753 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
6754
c45bb3b2
JR
67552003-03-16 Jason Rumney <jasonr@gnu.org>
6756
6757 * w32gui.h: Use HDC for Display.
6758
6759 * w32term.c (w32_encode_char): Prevent double-byte chars from
6760 crashing Emacs.
6761
6762 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
6763 as binary.
6764
2a6d0874
JB
67652003-03-16 Juanma Barranquero <lektu@terra.es>
6766
6767 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
6768
03eb5fab
KS
67692003-03-16 Kim F. Storm <storm@cua.dk>
6770
6771 The following changes consolidate some of the gui-independent
6772 parts of the processing and drawing of "glyph strings" from
6773 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 6774
03eb5fab
KS
6775 * dispextern.h (struct glyph): Reduce face_id member from 22 to
6776 21 bits (this reduces number of faces from 4M to 2M).
6777 Replace W32 specific w32_font_type member (2 bits) by generic
6778 font_type member (3 bits) for portability.
6779 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
6780 (enum draw_glyphs_face): Define here.
6781 (struct glyph_string): Define here. Merge W32 and X versions.
6782 (struct redisplay_interface): New members per_char_metric,
6783 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
6784 (VCENTER_BASELINE_OFFSET): Define here.
6785 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
6786 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
6787
6788 * xdisp.c: Consolidate gui-independent "glyph string" code here.
6789 (dump_glyph_string): Moved here.
6790 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
6791 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
6792 (fill_composite_glyph_string, fill_glyph_string)
6793 (fill_image_glyph_string, fill_stretch_glyph_string)
6794 (left_overwritten, left_overwriting, right_overwritten)
6795 (right_overwriting, get_char_face_and_encoding)
6796 (set_glyph_string_background_width, compute_overhangs_and_x)
6797 (append_glyph, append_composite_glyph, produce_image_glyph)
6798 (take_vertical_position_into_account, append_stretch_glyph)
6799 (produce_stretch_glyph): New generic functions (based on X version).
6800 Call platform specific functions through rif.
6801 (INIT_GLYPH_STRING): New macro, hides W32 details.
6802 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
6803 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
6804 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
6805 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
6806 (notice_overwritten_cursor):
6807 Generic functions exported to platform modules. Users changed.
6808
6809 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
6810 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
6811 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 6812 New macros for consolidated code.
2a6d0874 6813
03eb5fab
KS
6814 * xterm.c: Remove consolidated defines and code.
6815 (x_per_char_metric, x_encode_char)
6816 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
6817 (x_redisplay_interface): Add new members.
6818
6819 * w32gui.h (Display): Add dummy typedef for consolidation.
6820 (XChar2b): Define alias for wchar_t for consolidation.
6821 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
6822
6823 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 6824 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
6825 New macros for consolidation.
6826
fad49844 6827 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
6828 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
6829 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
6830 (w32_per_char_metric): Change font_type arg to int for RIF.
6831 (w32_encode_char): Return int according to RIF requirements.
6832 (w32_compute_glyph_string_overhangs): Adapt to RIF.
6833 (w32_get_glyph_overhangs): New function for RIF. Uses generic
6834 x_get_glyph_overhangs.
6835 (w32_redisplay_interface): Add new members.
6836
6837 * macgui.h (XChar2b): Move typedef here for consolidation.
6838 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
6839
6840 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
6841 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
6842 consolidation.
6843
6844 * macterm.c: Remove consolidated defines and code.
6845 (mac_per_char_metric): New function for RIF.
00c64fab 6846 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
6847 (mac_compute_glyph_string_overhangs): Adapt for RIF.
6848 (x_redisplay_interface): Add new members.
6849
00c64fab
SM
68502003-03-15 Stefan Monnier <monnier@cs.yale.edu>
6851
6852 * keymap.c (Vmenu_events): New var.
6853 (syms_of_keymap): Initialize it.
6854 (where_is_internal): Check more carefully what is a menu event.
6855
225c7a07
RS
68562003-03-14 Richard M. Stallman <rms@gnu.org>
6857
6858 * lread.c (read1): After #!, exit loop on eof.
6859
cea9be54
JD
68602003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6861
9ea0e54d
JD
6862 * gtkutil.h: Add declaration for xg_frame_cleared.
6863
0cb35f4e
JD
6864 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
6865
cea9be54
JD
6866 * gtkutil.c (struct xg_last_sb_pos): New structure.
6867 (handle_fixed_child): New function.
6868 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
6869 and force a redraw on them.
6870 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
6871 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
6872 so we can avoid unneeded redraws.
6873 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
6874 and force a redraw on the scroll bar.
6875 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
6876 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 6877 (xg_frame_cleared): New function.
cea9be54 6878
20b853f3
KH
68792003-03-13 Kenichi Handa <handa@m17n.org>
6880
6881 * coding.c (Fdetect_coding_region): Fix docstring.
6882 (Fdetect_coding_string): Fix docstring.
6883
7a555aff
AS
68842003-03-13 Andreas Schwab <schwab@suse.de>
6885
25cc0080
AS
6886 * gtkutil.c: Add prototype for create_menus.
6887
30225431
AS
6888 * data.c (long_to_cons): Fix type of top.
6889
6890 * xselect.c (selection_data_to_lisp_data): Use int instead of
6891 long for an integer of size 4.
6892
7a555aff 6893 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 6894 (xg_tool_bar_help_callback): Likewise.
7a555aff 6895
a3e4741f
AS
68962003-03-12 Andreas Schwab <schwab@suse.de>
6897
6898 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
6899
9668be7c
KS
69002003-03-12 Kim F. Storm <storm@cua.dk>
6901
03eb5fab 6902 The following changes consolidate the fringe handling from
9668be7c 6903 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 6904
9668be7c
KS
6905 * xdisp.c: Consolidate fringe handling code here.
6906 (left_bits, right_bits, continued_bits, continuation_bits)
6907 (ov_bits, zv_bits): Define fringe bitmaps.
6908 (fringe_bitmaps): New array holding fringe bitmaps.
6909 (draw_fringe_bitmap): Draw a specific bitmap; call display
6910 specific drawing routine via rif->draw_fringe_bitmap.
6911 (draw_row_fringe_bitmaps): Generic replacement for
6912 x_draw_row_fringe_bitmaps; all callers changed.
6913 (compute_fringe_widths): Generic replacement for
6914 x_compute_fringe_widths; all callers changed.
6915
6916 * dispextern.h (enum fringe_bitmap_type): Define here.
6917 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
6918 (fringe_bitmaps): Declare extern.
6919 (struct redisplay_interface): New member draw_fringe_bitmap.
6920 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
6921
6922 * xterm.c: Remove generic fringe code.
6923 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
6924 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
6925
6926 * w32term.c: Remove generic fringe code.
6927 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
6928 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 6929
9668be7c
KS
6930 * macterm.c: Remove generic fringe code.
6931 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
6932 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
6933
00a88f32
SM
69342003-03-11 Stefan Monnier <monnier@cs.yale.edu>
6935
6936 * print.c (Fprin1_to_string): Return unibyte string if possible.
6937
1d1de695
DK
69382003-03-09 David Kastrup <dak@gnu.org>
6939
6940 * process.c (read_process_output): We have allocated enough space
6941 for readmax and carryover, so actually use the alloted space.
6942
257f40f2
JD
69432003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6944
6945 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
6946 toolkit scrollbar click.
6947
6948 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
6949 for USE_GTK.
6950 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
6951 also.
6952 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
6953 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 6954
257f40f2
JD
6955 * gtkutil.h: Declare xg_get_scroll_id_for_window.
6956
6957 * gtkutil.c (xg_get_scroll_id_for_window): New function.
6958 (xg_tool_bar_item_expose_callback): New function.
6959 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
6960 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
6961 on the tool bar widget.
6962 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
6963 to expose on the tool bar item widgets.
6964
15213141
JD
69652003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6966
26b74a0b 6967 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 6968 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
6969 deleted from the image cache).
6970
15213141
JD
6971 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
6972 the event isn't for a frame (i.e. for dialogs).
6973
20b853f3 69742003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
6975
6976 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
6977 composition components reaches the limit, terminate composing.
6978 (COMPOSITION_OK): New macro.
00a88f32 6979 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
6980 composition is found.
6981 (coding_restore_composition): Adjust the number of composition
6982 components if it is not sane.
6983
c9029fe5
JB
69842003-03-06 Juanma Barranquero <lektu@terra.es>
6985
6986 * w32term.h (struct w32_display_info): Add xrdb member to support
6987 passing resources via -xrm on Windows.
6988
6989 * w32term.c (w32_make_rdb): New function.
6990 (w32_term_init): Use it to initialize xrdb member of w32_display_info
6991 struct. Delete leftover code.
6992
6993 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
6994 for resources passed on the command line.
6995
6996 * w32reg.c (w32_get_rdb_resource): New function.
6997 (x_get_string_resource): Use it, so resources passed with -xrm
6998 supercede the ones in the registry.
6999
9d00001f
JD
70002003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7001
7002 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
7003 instead of x_top_window_to_frame.
7004
ca2417b9
JD
70052003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7006
7007 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
7008 when restarting Emacs.
7009
5b20caf0
RS
70102003-03-03 Richard M. Stallman <rms@gnu.org>
7011
7012 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
7013 to run kill-buffer-query-functions.
7014 (Qkill_buffer_query_functions): New var.
7015 (syms_of_buffer): Init and staticpro it.
7016
58e91b77
JD
70172003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7018
7019 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
7020
932357b4
KS
70212003-02-25 Kim F. Storm <storm@cua.dk>
7022
7023 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
7024 If centering point failed to make whole line visible and vscroll
7025 is non-zero, disable vscroll and try centering point again.
7026
7027 * lread.c (read1): Accept `single space' syntax like (? x).
7028
bb8db7e1
JD
70292003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7030
7031 * keyboard.c (cancel_hourglass_unwind): Surround with
7032 #ifdef HAVE_X_WINDOWS
7033
47d77aab
KH
70342003-02-25 Kenichi Handa <handa@m17n.org>
7035
7036 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
7037 process only when "subprocesses" is defined.
7038
6a097c0c
SM
70392003-02-24 Stefan Monnier <monnier@cs.yale.edu>
7040
7041 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
7042
0b063c27
JB
70432003-02-24 Juanma Barranquero <lektu@terra.es>
7044
d1135afc
JB
7045 * callint.c (fix_command): Declare as static void and move before
7046 Fcall_interactively.
7047
0b063c27
JB
7048 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
7049 (syms_of_xdisp): Don't initialize Qwhen.
7050
0af912f0
JD
70512003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7052
7053 * keyboard.c (cancel_hourglass_unwind): New function.
7054 (command_loop_1): Cancel hourglass with unwind-protect.
7055
120d0a23
RS
70562003-02-23 Richard M. Stallman <rms@gnu.org>
7057
7058 * callint.c (fix_command): New subroutine, from Fcall_interactively.
7059 Detect (when ... (region-beginning)) etc.
7060 (Fcall_interactively): Call fix_command.
7061 (Qif, Qwhen): New variables.
7062 (syms_of_callint): Init and staticpro them.
0b063c27 7063
120d0a23
RS
7064 * regex.c (print_partial_compiled_pattern): Output to stderr.
7065
4ece81a6
KG
70662003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
7067
7068 * dired.c (directory_files_internal): Don't expand directory.
7069 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
7070 instead. From Lars Hansen <larsh@math.ku.dk>.
7071
e52bd6b7
SM
70722003-02-22 Stefan Monnier <monnier@cs.yale.edu>
7073
7074 * fns.c (string_to_multibyte): Remove unused var i.
7075 (Flanginfo): Fix int/Lisp_Object mixup.
7076 (void_call2): New fun.
7077 (Fmap_char_table): Use it in place of call2.
7078
7079 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
7080
7081 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
7082
7083 * keymap.c (copy_keymap_1): Make it static.
7084
7085 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
7086
c33ef7c4
JB
70872003-02-22 David Ponce <david@dponce.com>
7088
7089 * lread.c (Fload): Don't check STRING_MULTIBYTE.
7090
16782258
JD
70912003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7092
7093 * process.h: Removed subtty field from struct Lisp_Process.
7094
7095 * process.c (create_process): Remove setting of subtty.
7096 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
7097 (Fprocess_running_child_p, process_send_signal):
7098 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
7099 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
7100
3abeca61
KG
71012003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
7102
7103 * keymap.c (Fdefine_key): Doc fix.
7104
92a8ce63
JB
71052003-02-21 Juanma Barranquero <lektu@terra.es>
7106
7107 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
7108
7109 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
7110 POLLING_PROBLEM_IN_SELECT.
7111
7112 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
7113 Delete #undef of POLLING_PROBLEM_IN_SELECT.
7114
7115 * s/hpux10-20.h: New file.
7116
e52bd6b7
SM
7117 * process.c (wait_reading_process_input):
7118 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 7119
20f1ef2e
KH
71202003-02-20 Kenichi Handa <handa@m17n.org>
7121
32d0a9dc
KH
7122 * fontset.c (check_fontset_name): If NAME is nil, return the
7123 default fontset.
7124 (override_font_info): New function.
e52bd6b7 7125 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
7126 (Ffontset_info): If FONTSET is not the default fontset, merge
7127 FONTSET onto the copy of the default fontset, and work on that
7128 copy. Document that NAME nil means the default fontset.
7129 (Ffontset_font): Document that NAME nil means the default fontset.
7130
20f1ef2e
KH
7131 * process.c (setup_process_coding_systems): If the process's
7132 in/out descriptor is -1, do nothing.
7133
77d1daf2
AS
71342003-02-19 Andreas Schwab <schwab@suse.de>
7135
e52bd6b7
SM
7136 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
7137 Add prototypes.
77d1daf2 7138
f9a45bb3
KH
71392003-02-19 Kenichi Handa <handa@m17n.org>
7140
7141 * xfaces.c (try_alternative_families): Try all scalable fonts if
7142 Vscalable_fonts_allowed is not Qt.
7143
72ecb43c
JD
71442003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7145
7146 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
7147
ee5be7c3
JD
71482003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7149
7150 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
7151 names.
7152
7153 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 7154 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
7155 x_face_list_fonts.
7156 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
7157 (Fx_list_fonts): Set maxnames to -1 to get all font names.
7158
4cd519a7
KS
71592003-02-18 Kim F. Storm <storm@cua.dk>
7160
068f9882
KS
7161 * lread.c (read1): Fix last change.
7162 "`" is not always special. Allow "?" after a character constant.
4cd519a7 7163
7290a344
AC
71642003-02-18 Andrew Choi <akochoi@shaw.ca>
7165
7166 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
7167
1f7fa69b
AS
71682003-02-18 Andreas Schwab <schwab@suse.de>
7169
7170 * window.c (window_scroll_pixel_based): Move outside a
7171 multi-glyph character before setting new window start.
7172
7173 * xdisp.c (in_display_vector_p): New function.
7174 * dispextern.h (in_display_vector_p): Declare.
7175
23e21195
KS
71762003-02-18 Kim F. Storm <storm@cua.dk>
7177
7178 * lread.c (read1): Fix and relax read syntax.
7179 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
7180 Only recognize "," after dotted-pair dot if inside backquote.
7181 Never include "`" or "," (inside backquote) in a symbol.
7182 Allow dotted-pair dot after a character constant.
7183 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 7184
f098b121
JD
71852003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7186
7187 * gtkutil.c (xg_tool_bar_expose_callback): New function.
7188 (xg_create_tool_bar): Force style of tool bar to be horizontal with
7189 icons. Set name of tool bar to emacs-toolbar.
7190 (update_frame_tool_bar): Connect expose event to
7191 xg_tool_bar_expose_callback.
7192
63020c46
RS
71932003-02-17 Richard M. Stallman <rms@gnu.org>
7194
7195 * keyboard.c (this_command_key_count_reset): New variable.
7196 Initiatize to 0 where this_command_key_count is set.
7197 (read_char): Save and restore this_command_key_count_reset
7198 around input method code.
7199 (read_char): If this_command_key_count_reset, echo reread commands.
7200 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
7201
fb4452cc
KH
72022003-02-17 Kenichi Handa <handa@m17n.org>
7203
7204 * fns.c (string_to_multibyte): Always return a multibyte string.
7205
bd11cc09
JR
72062003-02-16 Jason Rumney <jasonr@gnu.org>
7207
e52bd6b7
SM
7208 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
7209 Negative max_fonts parameter means list all.
bd11cc09 7210
4cdf4bde
DL
72112003-02-14 Dave Love <fx@gnu.org>
7212
7213 * fns.c (Flanginfo): Doc fix.
7214
023b93f6
KS
72152003-02-13 Kim F. Storm <storm@cua.dk>
7216
37cd4238
KS
7217 * lread.c (read_escape): Interpret \s as a SPACE character, except
7218 for \s-X in a character constant which still is the super modifier.
7219 (read1): Signal an `invalid read syntax' error if a character
7220 constant is immediately followed by a digit or symbol character.
7221
140a6b7e
KS
7222 * search.c (Fmatch_data): Doc fix. Explicitly state that
7223 match-data is undefined if last search failed.
7224
023b93f6
KS
7225 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
7226 All uses changed.
7227
7d5c86e5
JB
72282003-02-12 Juanma Barranquero <lektu@terra.es>
7229
7230 * eval.c (Fdefmacro): Fix typo.
7231
295fff2c
KS
72322003-02-12 Kim F. Storm <storm@cua.dk>
7233
7234 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
7235 macro is a string, convert meta modifiers in string when copying
7236 the string into a vector.
7237
60f3202d
KS
72382003-02-11 Kim F. Storm <storm@cua.dk>
7239
7240 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
7241
61cb0b53
KH
72422003-02-11 Kenichi Handa <handa@m17n.org>
7243
7244 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
7245
7392e23c
KS
72462003-02-10 Kim F. Storm <storm@cua.dk>
7247
7248 * process.c: Doc fixes.
7249 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
7250
ce4254bd
KH
72512003-02-10 Kenichi Handa <handa@m17n.org>
7252
9c7a329a
KH
7253 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
7254
ce4254bd
KH
7255 * process.c (QCfilter_multibyte): New variable.
7256 (setup_process_coding_systems): New function.
e52bd6b7
SM
7257 (Fset_process_buffer, Fset_process_filter):
7258 Call setup_process_coding_systems.
ce4254bd
KH
7259 (Fstart_process): Initialize the member `filter_multibyte' of
7260 struct Lisp_Process.
7261 (create_process): Call setup_process_coding_systems.
7262 (Fmake_network_process): New keyward `:filter-multibyte'.
7263 Initialize the member `filter_multibyte' of struct Lisp_Process.
7264 Call setup_process_coding_systems.
7265 (server_accept_connection): Call setup_process_coding_systems.
7266 (read_process_output): If the process has a filter, decide the
7267 multibyteness of a string to given to the filter by
7268 `filter_multibyte' member of the process. If the process doesn't
7269 have a filter and the result of conversion is unibyte, use
7270 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
7271 multibyte form.
7272 (Fset_process_coding_system): Call setup_process_coding_systems.
7273 (Fset_process_filter_multibyte): New function.
7274 (Fprocess_filter_multibyte_p): New function.
7275 (syms_of_process): Intern and staticpro QCfilter_multibyte.
7276 Defsubr Sset_process_filter_multibyte and
7277 Sprocess_filter_multibyte_p.
7278
7279 * process.h (struct Lisp_Process): New member filter_multibyte.
7280
7281 * lisp.h (setup_process_coding_systems): Add prototype.
7282
7283 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
7284 process, update coding systems for the process.
7285
b08d5f59
KH
72862003-02-09 Kenichi Handa <handa@m17n.org>
7287
7288 * fns.c (string_to_multibyte): New function.
7289 (Fstring_to_multibyte): New function.
7290 (syms_of_fns): Defsubr it.
7291
0dfd93c0
AS
72922003-02-08 Andreas Schwab <schwab@suse.de>
7293
7294 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
7295 instead of the substitution.
7296
7b76ca1c
JD
72972003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7298
7299 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
7300
7301 * xmenu.c (menu_position_func): Adjust menu popup position so that
7302 the menu is fully visible.
7b76ca1c 7303
2436a4e4
JD
73042003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7305
7306 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
7307 (x_make_frame_invisible, x_wm_set_icon_position):
7308 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
7309
7310 * xfns.c (x_set_name, x_set_title): Ditto.
7311
37d1e680
RS
73122003-02-04 Richard M. Stallman <rms@gnu.org>
7313
7314 * keyboard.c (echo_now): Update before_command_echo_length.
7315 (Freset_this_command_lengths): Reset this_command_key_count etc.
7316 immediately rather than arranging to do it later.
7317 (before_command_key_count_1, before_command_echo_length_1)
7318 (before_command_restore_flag): Vars deleted.
7319 (add_command_key): Don't handle before_command_restore_flag.
7320 (read_char, record_menu_key): Don't update before_command_key_count or
7321 before_command_echo_length.
7322 (read_char): Don't handle before_command_restore_flag.
7323
7324 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
7325 in direct-output clauses if it wouldn't be called in the ordinary case.
7326
578846a3
KS
73272003-02-04 Kim F. Storm <storm@cua.dk>
7328
7329 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
7330
49853a4d
JD
73312003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7332
7333 * gtkutil.c (remove_from_container): Copying list is not needed.
7334 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
7335 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
7336 on list returned from gtk_container_get_children to avoid memory leak.
7337
8b53dc06
JR
73382003-02-01 Jason Rumney <jasonr@gnu.org>
7339
5d54d177
JR
7340 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
7341 local malloc.
7342 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
7343 definitions in xpm.h.
7344 (init_xpm_functions): New function.
f63fd14e 7345 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5d54d177
JR
7346 (init_external_image_libraries): Try to load libXpm.dll.
7347
8b53dc06
JR
7348 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
7349 timestamp.
7350
b222e415
DL
73512003-01-31 Dave Love <fx@gnu.org>
7352
7353 * syntax.c (Fskip_chars_forward)
7354 (open-paren-in-column-0-is-defun-start): Doc fix.
7355
c60ee5e7
JB
73562003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
7357
7358 * fileio.c: Support // at start of name for Cygwin (just added proper
7359 preprocessor tests).
7360
7361 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
7362
7363 * Makefile.in: Use @EXEEXT@ for Cygwin.
7364
7365 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
7366
7367 * s/cygwin.h: Added for Cygwin port.
7368
53b37591
JB
73692003-01-31 Juanma Barranquero <lektu@terra.es>
7370
7371 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
7372 when including gif_lib.h.
fe929957 7373 (init_gif_functions, init_tiff_functions): New functions.
f63fd14e
JB
7374 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
7375 Windows. Disable color table lookups. Call library functions
53b37591 7376 through pointers determined at runtime.
fe929957
JB
7377 (init_external_image_libraries): Try to load libungif.dll and
7378 libtiff.dll.
53b37591 7379
45415a8f
KH
73802003-01-31 Kenichi Handa <handa@m17n.org>
7381
7382 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 7383 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 7384
a97e4138
JD
73852003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7386
e52bd6b7 7387 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 7388
6eed9bed
DL
73892003-01-30 Dave Love <fx@gnu.org>
7390
7391 * alloc.c (Vgc_elapsed, gcs_done): New variables.
7392 (Fgarbage_collect): Use them.
7393 (init_alloc, syms_of_alloc): Set them up.
7394
100dcd40
JB
73952003-01-30 Juanma Barranquero <lektu@terra.es>
7396
7397 * w32fns.c (init_external_image_libraries): Add missing operator.
7398
fbd852af
JR
73992003-01-29 Jason Rumney <jasonr@gnu.org>
7400
7401 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
7402 an alternative name for jpeg.dll.
7403
8a2d8020
KH
74042003-01-29 Kenichi Handa <handa@m17n.org>
7405
7406 * xdisp.c (set_cursor_from_row): Pay attention to string display
7407 properties.
7408
058c18c7
AC
74092003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
7410
7411 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
7412 <escape>.
7413 (keycode_to_xkeysym_table): Reformat and add more comments.
7414 (XTread_socket): Drop special case for backspace.
7415
385f11cf
AC
74162003-01-28 Andrew Choi <akochoi@shaw.ca>
7417
7418 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
7419 values in old-style RGB specs.
7420
c922a224
JB
74212003-01-27 Juanma Barranquero <lektu@terra.es>
7422
7423 * w32fns.c (init_external_image_libraries): Try alternate names for the
7424 jpeg dll.
7425
0a1d6de0
JD
74262003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7427
7428 * gtkutil.c (create_dialog, xg_separator_p)
7429 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
7430 before calling strcmp or strlen.
7431
a97e4138 74322003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
7433
7434 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
7435 and handle image load failure.
7436
28908312
JR
74372003-01-26 Jason Rumney <jasonr@gnu.org>
7438
7439 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
7440 New functions.
f63fd14e
JB
7441 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
7442 Disable color table lookups. Call jpeg library functions
28908312
JR
7443 through pointers determined at runtime.
7444 (init_external_image_libraries): Try to load jpeg.dll.
7445
84e47416
RS
74462003-01-25 Richard M. Stallman <rms@gnu.org>
7447
7448 * lisp.h: Declare format2 instead of format1.
7449
7450 * fileio.c (barf_or_query_if_file_exists):
7451 Call format2 instead of format1.
7452
7453 * editfns.c (format2): New function, replaces format1
7454 but takes exactly two Lisp Objects as format args.
7455
7456 * buffer.c (Fkill_buffer): Call format2 instead of format1.
7457
a97e4138 74582003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
7459
7460 * xterm.h: Change to return value of x_dispatch_event to int.
7461
7462 * xterm.c (x_filter_event): New function.
7463 (event_handler_gdk, XTread_socket): Call x_filter_event.
7464 (x_dispatch_event): Change to return value of finish.
7465 (event_handler_gdk): Use return value from x_dispatch_event.
7466
7467 * xfns.c (x_window): Call create_frame_xic for GTK version to
7468 initialize input methods.
7469
7470 * gtkutil.h: Add (void) prototypes.
7471
7472 * gtkutil.c (create_menus): Remove code that puts the help menu to
7473 the right.
7474
54eefef1
JR
74752003-01-25 Jason Rumney <jasonr@gnu.org>
7476
7477 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
7478 [HAVE_PNG]: Sync with xfns.c version.
f63fd14e
JB
7479 (png_load): Adjust colors for Windows. Use Windows
7480 bitmaps. Disable color table lookups.
c262430d
JR
7481 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
7482 (init_png_functions): New function.
7483 (png_read_from_memory, png_load): Call png library functions
7484 through pointers determined at runtime.
7485 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
7486 (init_external_image_libraries): New function.
7487 (init_xfns): Call it.
54eefef1 7488
1a9e275b
AS
74892003-01-24 Andreas Schwab <schwab@suse.de>
7490
7491 * minibuf.c (Fminibuffer_message): Verify type of parameter.
7492
a97e4138 74932003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
7494
7495 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
7496 of static initializer.
7497
422eec7e
DL
74982003-01-24 Dave Love <fx@gnu.org>
7499
7500 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
7501 architectures.
7502
7503 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
7504 Use __alignof__.
7505
2a026b04
KH
75062003-01-24 Kenichi Handa <handa@m17n.org>
7507
7508 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 7509 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
7510 (command_loop_1): Call adjust_point_for_property with proper
7511 second arg.
7512
a18bb28d
JR
75132003-01-22 Jason Rumney <jasonr@gnu.org>
7514
7515 Sync changes with xterm.c and xfns.c.
7516
7517 * w32term.c (x_draw_glyph_string_foreground)
7518 (x_draw_composite_glyph_string_foreground): Implement overstriking.
7519
7520 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
7521 phys_cursor's hpos is overwritten. This is still not completely
7522 correct, as it doesn't really make sense to use hpos at all to
7523 get the cursor glyph (as that is relative to the width of the
7524 characters on the line, which may have changed during the update).
7525
7526 * w32term.c (notice_overwritten_cursor): Handle the special case
7527 of the cursor being in the first blank non-text line at the
7528 end of a window.
7529
7530 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
7531 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
7532 Compute from the x position returned by x_draw_glyphs.
7533
7534 (x_display_and_set_cursor): Don't set phys_cursor_width here,
7535 except for NO_CURSOR and system caret, to make phys_cursor_width
7536 contain what its name suggests.
7537 (notice_overwritten_cursor): Consider the cursor image erased if
7538 the output area intersects the cursor image in y-direction.
7539
6a097c0c
SM
7540 * w32term.c (note_mode_line_or_margin_highlight): Rename from
7541 note_mode_line_highlight and extend.
a18bb28d
JR
7542
7543 * w32term.c (last_window): New variable.
7544 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
7545 (note_mouse_movement): Remove reimplemented code in #if 0.
7546
7547 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
7548 not update_mode_lines, and always set it to 1.
7549
ac6e47ef
JR
75502003-01-21 Jason Rumney <jasonr@gnu.org>
7551
7552 * w32fns.c (IDC_HAND): Define it if system headers don't.
7553
75542003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
7555
7556 * w32term.h (struct w32_output): New member hand_cursor.
7557 (WM_EMACS_SETCURSOR): New message definition.
7558
7559 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
7560 function w32_define_cursor.
7561 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
7562 position, change member name output_data.x to output_data.w32 and
7563 add function w32_define_cursor.
7564 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
7565 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
7566 (w32_initialize_display_info):
7567 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
7568
7569 * w32fns.c (Vx_hand_shape): New variable.
7570 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
7571 WM_EMACS_SETCURSOR.
7572 (x-create-frame): Setup Cursor types.
7573
ceb39a17
JB
75742003-01-21 David Ponce <david@dponce.com>
7575
ac6e47ef 7576 * w32term.c (w32_encode_char): For DIM=1 charset, set
f63fd14e 7577 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
ac6e47ef 7578 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 7579 2002-09-30.)
ac6e47ef
JR
7580 (w32_draw_relief_rect): Declare all args.
7581 (w32_define_cursor): New.
7582
7583 * w32fns.c (w32_load_cursor): New function.
7584 (w32_init_class): Use it.
7585 (x_put_x_image): Declare all args.
7586
46cf0bed
JB
75872003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
7588
7589 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
7590
a97e4138 75912003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
7592
7593 * gtkutil.c: Must include stdio.h before termhooks.h
7594
83fc9c63
DL
75952003-01-21 Dave Love <fx@gnu.org>
7596
7597 * alloc.c (Fgc_status): Print zombie list.
7598 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
7599 Fix assignment of zombies.
7600 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
7601 Don't take car of non-cons.
7602
7603 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7604
7605 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7606
fe04b8c8
JR
76072003-01-20 David Ponce <david@dponce.com>
7608
7609 * w32menu.c (digest_single_submenu): Declare all args.
7610
7611 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
7612 changes in xmenu.c:
7613
7614 (parse_single_submenu): Use individual keymap's prompt
7615 string as pane name, if there is one.
7616 (set_frame_menubar): Save menu_items_n_panes from each call to
7617 parse_single_submenu and use it when calling digest_single_submenu.
7618
539e69a9
ST
76192003-01-20 Steven Tamm <steventamm@mac.com>
7620
7621 * macterm.c (XTread_socket): Checks for valid, visible window
7622 before sending a scroll-wheel event.
7623
675d000f
RS
76242003-01-20 Richard M. Stallman <rms@gnu.org>
7625
7626 * xdisp.c (redisplay_window): If mini window's buffer is not
7627 a minibuffer, then redisplay it like other windows.
7628
a97e4138 76292003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
7630
7631 * gtkutil.c (xg_create_frame_widgets): Check if there is an
7632 external tool bar before setting tool bar height.
7633
048addec
JD
76342003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7635
7636 * xterm.c (handle_one_xevent): Surround popup_activated
7637 with #ifdef:s for non-toolkit version.
7638
7639 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
7640 (gtkutil.o): New file.
7641 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
7642 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
7643
7644 * gtkutil.c: New file for GTK version.
7645
7646 * gtkutil.h: New file for GTK version.
7647
7648 * xterm.h: Add xt_or_gtk_widget.
7649 Include gtk files for USE_GTK.
7650 (struct x_output): Add toolbar_height.
7651 (struct x_output): Add GTK widgets and Gdk size_hints.
7652 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
7653 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
7654 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
7655
7656 * xterm.c: Include gtkutil.h for USE_GTK.
7657 Declare extern void free_frame_menubar for USE_GTK.
7658 (note_mouse_highlight): Check popup_activated for USE_GTK.
7659 (xt_action_hook): Don't compile if USE_GTK.
7660 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
7661 (xg_scroll_callback): New function.
7662 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
7663 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
7664 for USE_GTK.
7665 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
7666 xg_show_scroll_bar for USE_GTK.
7667 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
7668 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
7669 (event_handler_gdk): New function for USE_GTK.
7670 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
7671 (handle_one_xevent): Make sure widget is mapped before
7672 calling x_real_positions for USE_GTK.
7673 (XTread_socket): Add GTK event loop for USE_GTK.
7674 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
7675 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
7676 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
7677 (x_iconify_frame): Add code for USE_GTK.
7678 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
7679 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
7680 is in gtkutil.c.
7681 (x_term_init): Add initialization for GTK.
7682 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
7683
7684 * xmenu.c: Include gtkutil.h for USE_GTK.
7685 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
7686 (single_menu_item, single_menu_item, Fx_popup_dialog):
7687 Check for USE_GTK.
048addec
JD
7688 (popup_widget_loop): New function for USE_GTK.
7689 (x_activate_menubar): Add code for USE_GTK.
7690 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
7691 (menu_highlight_callback, menubar_selection_callback):
7692 Add USE_GTK versions.
048addec
JD
7693 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
7694 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
7695 (free_frame_menubar): Only compile if not USE_GTK. GTK version
7696 is in gtkutil.c.
7697 (popup_selection_callback): New version for USE_GTK.
7698 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 7699 one USE_X_TOOLKIT version.
048addec
JD
7700 (xmenu_show): Call create_and_show_popup_menu.
7701 (dialog_selection_callback): New version for USE_GTK.
7702 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 7703 one USE_X_TOOLKIT version.
048addec
JD
7704 (xdialog_show): Call create_and_show_dialog.
7705
7706 * xfns.c: Include gtkutil for USE_GTK.
7707 (x_window_to_frame, x_any_window_to_frame)
7708 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
7709 (x_top_window_to_frame): Add code for USE_GTK.
7710 (x_set_background_color): Call xg_set_background_color for GTK.
7711 (x_set_menu_bar_lines): Check for USE_GTK.
7712 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
7713 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
7714 (x_window): Call xg_create_frame_widgets for USE_GTK.
7715 (Fx_create_frame): Check for USE_GTK
7716 (Fx_file_dialog): New implementation for USE_GTK.
7717
7718 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
7719 (update_menu_bar): Add check for USE_GTK.
7720 (update_tool_bar): Add check for USE_GTK and external tool bar.
7721 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
7722 (redisplay_internal): Add check for USE_GTK and popup_activated.
7723 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
7724 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
7725 (display_menu_bar): Add check for USE_GTK
7726
7727 * lisp.h: Declare Vx_resource_name extern.
7728
a64387ee 7729 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
048addec
JD
7730 for USE_GTK.
7731 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
7732
7733 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
7734 (FRAME_EXTERNAL_TOOL_BAR): New macro.
7735 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
7736
7737 * fileio.c (Fread_file_name): Add check for USE_GTK.
7738
6bdb309a
SM
7739 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
7740 Add check for USE_GTK.
048addec
JD
7741
7742 * config.in: Added HAVE_GTK
7743
7744 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
7745
77462003-01-18 Stefan Monnier <monnier@cs.yale.edu>
7747
7748 * charset.h (Funibyte_char_to_multibyte): Export.
7749
77502003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7751
7752 * xmenu.c (mouse_position_for_popup): New function.
7753 (Fx_popup_menu): Call mouse_position_for_popup for X and
7754 mouse_position_hook for others.
7755
77562003-01-17 Kim F. Storm <storm@cua.dk>
7757
7758 * editfns.c (Finsert): Mention `string-make-multibyte' and
7759 `string-as-multibyte' in doc string.
7760
77612003-01-17 Kenichi Handa <handa@m17n.org>
7762
7763 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 7764
048addec
JD
7765 * editfns.c (Fformat): Convert an unibyte char argument that is
7766 formatted by "%c" to multibyte if the total result must be a
7767 multibyte string.
cd7df9c0 7768
048addec 77692003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 7770
048addec
JD
7771 * process.c (set-process-filter): Document unibyte/multibyte-ness
7772 of string argument.
56210ecd 7773
048addec 77742003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 7775
048addec 7776 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 7777
048addec
JD
7778 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
7779 (re_search_2): Likewise.
6df8b9fe 7780
048addec 77812003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 7782
048addec
JD
7783 * xdisp.c (message_dolog): Fix bug of the case that *Message*
7784 buffer is unibyte.
292ddc31 7785
048addec 77862003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 7787
048addec 7788 * fns.c (Fsubstring): Clarify doc string.
292ddc31 7789
048addec
JD
7790 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
7791 (Fprevious_char_property_change)
7792 (Fnext_single_char_property_change)
7793 (Fprevious_single_char_property_change, Fnext_property_change)
7794 (Fnext_single_property_change, Fprevious_property_change)
7795 (Fprevious_single_property_change, Fadd_text_properties)
7796 (Fput_text_property, Fset_text_properties)
7797 (Fremove_text_properties, Fremove_list_of_text_properties)
7798 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 7799
048addec 78002003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 7801
048addec
JD
7802 * process.h (struct Lisp_Process): New member plist replaces old
7803 member private_vars. All uses changed.
63e4e4c6 7804
048addec 7805 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 7806 (QCplist): Rename from QCvars. Change all uses.
048addec 7807 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 7808 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 7809 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 7810 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 7811
048addec 78122003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 7813
6bdb309a 7814 * m/delta.h: Remove (obsolete).
e833850f 7815
048addec 78162003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 7817
048addec
JD
7818 * fileio.c (Fdelete_directory, Fdelete_file): Document the
7819 behaviour in front of symlinks.
7820 (Fdelete_file): Raise an error on directories.
817cb127 7821
048addec 78222003-01-13 Dave Love <fx@gnu.org>
817cb127 7823
048addec 7824 * fns.c (Freverse): Use QUIT.
3e8cf2ea 7825
048addec 78262003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 7827
048addec
JD
7828 * minibuf.c (minibuffer_completion_contents):
7829 Error if point is inside prompt.
3e8cf2ea 7830
048addec
JD
7831 * keyboard.c (command_loop_1): Don't redisplay directly
7832 if there's a post-command-hook.
3e8cf2ea 7833
048addec
JD
7834 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
7835 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 7836
048addec 78372003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 7838
048addec 7839 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 7840
048addec
JD
7841 * process.c (QCvars): New variable.
7842 (syms_of_process): Intern and staticpro it.
7843 (Fset_process_contact): Removed function.
7844 (Fprocess_variable, Fset_process_variable): New functions.
7845 (syms_of_process): Defsubr them.
7846 (Fstart_process): Initialize private_vars plist to nil.
7847 (Fmake_network_process): New arg :vars to setup the private
7848 variables for new network process.
7849 (server_accept_connection): Copy server's private variables to
7850 client process.
2c10f029 7851
048addec
JD
7852 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
7853 crashes). Code rewritten and simplified. Now directly aligns the
7854 pointer and recalculates pure_bytes_used, rather than aligning the
7855 size and adjusting the pointer.
b8a76c6c 7856
048addec 78572003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 7858
048addec
JD
7859 * process.c (Fset_process_contact): New function.
7860 (syms_of_process): defsubr it.
7861 (make-network-process): Update doc.
3a8d0899 7862
048addec 78632003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 7864
048addec
JD
7865 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
7866 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 7867
048addec 78682003-01-10 Dave Love <fx@gnu.org>
4abc7470 7869
048addec 7870 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 7871
048addec 78722003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 7873
048addec
JD
7874 * process.c (Fmake_network_process): Convert new port number
7875 to host byte order for `:service t' case. From Mario Lang.
bf338245 7876
048addec 78772003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 7878
048addec
JD
7879 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
7880 instead of XtAppProcessEvent.
bf338245 7881
048addec
JD
7882 * xterm.c (handle_one_xevent): New function.
7883 (x_dispatch_event): New function.
7884 (XTread_socket): Call handle_one_xevent.
bf338245 7885
048addec 7886 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 7887
048addec
JD
7888 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
7889 call XQueryPointer to get coordinates.
7890 (popup_get_selection): Do not set popup_activated_flag to zero,
7891 let popup_deactivate_callback do that. Needed for Motif.
7892 Call x_dispatch_event instead of XtDispatchEvent.
7893 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 7894
048addec 78952003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 7896
6bdb309a 7897 * process.c (server_accept_connection): Fix recording of new
048addec
JD
7898 connection's local address in :local property of contact info.
7899 (Fmake_network_process): Record local network address for new
7900 client processes in :local property of contact info.
6bdb309a 7901 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 7902
048addec 79032003-01-07 Dave Love <fx@gnu.org>
00e3ab56 7904
048addec 7905 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 7906
048addec 79072003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 7908
048addec 7909 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 7910
048addec
JD
7911 * eval.c (Fuser_variable_p): Doc change. For custom variables,
7912 use the same test as for custom-variable-p.
8c6d74c6 7913
048addec 79142003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 7915
048addec
JD
7916 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
7917 Count LAST_LINE_MISFIT in scroll margin for end of window.
7918 Move label too_near_end before setting SCROLL_MARGIN_POS.
7919 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 7920
048addec
JD
7921 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
7922 scroll_conservatively case. If scrolling that much doesn't change
7923 STARTP, move it down one line.
e833850f 7924
048addec
JD
7925 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
7926 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 7927
048addec
JD
7928 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
7929 selected frame.
8c6d74c6 7930
048addec
JD
7931 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
7932 (syms_of_keymap): staticpro them.
7933 (Fapropos_internal): Initialize them and clear them out.
7934 Don't GCPRO them.
8c6d74c6 7935
048addec
JD
7936 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
7937 Doc fixes.
8c6d74c6 7938
048addec
JD
7939 * lisp.h: New misc type Lisp_Save_Value.
7940 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
7941 (XSAVE_VALUE): New macro.
7942 (struct Lisp_Save_Value): New data type.
7943 (union Lisp_Misc): Add u_save_value alternative.
7944 (make_save_value): Declared.
8c6d74c6 7945
048addec 7946 * alloc.c (make_save_value): New function.
8c6d74c6 7947
048addec
JD
7948 * xterm.c (x_catch_errors): Save dpy using make_save_value.
7949 (x_catch_errors_unwind): Call XSync.
8c6d74c6 7950
048addec 79512003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 7952
048addec 7953 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 7954
048addec
JD
7955 * keyboard.c (command_loop_1): Call adjust_point_for_property
7956 in direct action cases for Qforward_char and Qbackward_char.
7957 Set already_adjusted so it won't be done twice.
8c6d74c6 7958
048addec 79592002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
8c6d74c6 7960
048addec
JD
7961 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
7962 type definition of size_t.
8c609cff 7963
048addec 79642003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 7965
048addec
JD
7966 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
7967 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 7968
048addec 79692002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 7970
048addec
JD
7971 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
7972 to default to t.
fa634a5e 7973
048addec 79742002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 7975
048addec 7976 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 7977
048addec 79782002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 7979
048addec
JD
7980 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
7981 allow building in a different directory than source. Uses some
7982 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 7983
048addec 79842002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 7985
048addec
JD
7986 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
7987 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
7988 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
7989 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 7990
048addec 79912002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 7992
048addec
JD
7993 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
7994 <scroll-down-aggressively>: Doc fix.
2155ecf3 7995
048addec
JD
7996 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
7997 string as pane name, if there is one.
7998 (set_frame_menubar): Save menu_items_n_panes from each call to
7999 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 8000
048addec
JD
8001 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
8002 Don't try to make last line fully visible if it is past end of window.
61f1d295 8003
048addec 80042002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 8005
048addec
JD
8006 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
8007 (mac_menu_show): Add support for hierarchical popup menus.
8008 (add_menu_item): Remove indentation support.
8009 (fill_submenu, fill_menu): Create hierarchical menus
8010 instead of using indentation.
0b17a217 8011
048addec 80122002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 8013
048addec
JD
8014 * xdisp.c (try_cursor_movement): Don't call try_window here.
8015 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 8016
048addec 8017 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 8018
048addec 80192002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 8020
048addec
JD
8021 * macterm.c (XTread_socket): Call KeyTranslate for control and
8022 meta to deal correctly shifted non-alpha characters, like C-S-5
8023 being treated like C-%. Does not look for shift key to deal
8024 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 8025
048addec 80262002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 8027
048addec
JD
8028 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
8029 If it is non-nil, run timers. Use an unwind-protect to requeue
8030 the events that were read ahead.
8031 (popup_get_selection_unwind): New subroutine.
8032 (popup_get_selection_queue): File-scope variable now holds that queue.
8033 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
8034 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
8035 Use an unwind-protect to pop down the dialog box.
8036 (xdialog_show_unwind): New subroutine implements that.
f02cac82 8037
048addec
JD
8038 * xdisp.c (row_containing_pos): Change exit test using last_y.
8039 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 8040
048addec
JD
8041 * lread.c (load_error_handler): New function.
8042 (Fload): Handle errors in Fsubstitute_in_file_name.
8043 Don't expect Fsignal to return.
f02cac82 8044
048addec
JD
8045 * eval.c: Errors and throws work right with interrupt blocking.
8046 (struct catchtag): New elt interrupt_input_blocked.
8047 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
8048 (internal_catch, Fcondition_case, internal_condition_case)
8049 (internal_condition_case_1, internal_condition_case_2): Save it.
8050 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 8051
048addec 8052 * editfns.c (Fformat): Add parens.
f02cac82 8053
048addec
JD
8054 * dired.c (file_name_completion): Fix that change.
8055 Delete special quit-handling code; just use QUIT.
f02cac82 8056
048addec 80572002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
f02cac82 8058
048addec
JD
8059 * dired.c (file_name_completion): Close directory on error
8060 just as in directory_files_internal.
1a590729 8061
048addec 80622002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 8063
048addec
JD
8064 * window.c (Fset_window_configuration): Set old_point to correct
8065 value when new_current_buffer == current_buffer.
f02cac82 8066
048addec 80672002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 8068
048addec
JD
8069 Revisited my earlier fix for the following entry in etc/PROBLEMS:
8070 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
8071 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 8072
048addec
JD
8073 These changes were in part based upon suggestions made by Peter
8074 'Luna' Runestig [peter@runestig.com].
9785d95b 8075
048addec
JD
8076 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
8077 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 8078 g_b_init_get_sid_identifier_authority ): Add several static
048addec 8079 global variables.
9785d95b 8080
048addec
JD
8081 * w32.c (globals_of_w32): New function. Used to initialize those
8082 global variables that must always be initialized on startup even
8083 when the global variable initialized is non zero. Its primary
8084 purpose at this time is to set the global variables
8085 g_b_init_is_windows_9x, g_b_init_open_process_token,
8086 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
8087 g_b_init_get_sid_identifier_authority to 0 on startup.
8088 Called from main.
9785d95b 8089
048addec
JD
8090 * w32.c (is_windows_9x): Perform initialization only if
8091 g_b_init_is_windows_9x is equal to 0. On initialization set
8092 g_b_init_is_windows_9x equal to 1.
2308af15 8093
048addec
JD
8094 * w32.c (open_process_token): Perform initialization only if
8095 g_b_init_open_process_token is equal to 0. On initialization set
8096 g_b_init_open_process_token equal to 1.
2308af15 8097
048addec
JD
8098 * w32.c (get_token_information): Perform initialization only if
8099 g_b_init_get_token_information is equal to 0. On initialization
8100 set g_b_init_get_token_information equal to 1.
9785d95b 8101
048addec
JD
8102 * w32.c (lookup_account_sid): Perform initialization only if
8103 g_b_init_lookup_account_sid is equal to 0. On initialization
8104 set g_b_init_lookup_account_sid equal to 1.
9785d95b 8105
048addec
JD
8106 * w32.c (get_sid_identifier_authority): Perform initialization
8107 only if g_b_init_get_sid_identifier_authority is equal to 0.
8108 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 8109
f63fd14e 8110 * w32fns.c (globals_of_w32fns): New function. Used to initialize
048addec
JD
8111 those global variables that must always be initialized on startup
8112 even when the global variable initialized is non zero.
8113 Its primary purpose at this time is to initialize the global variable
8114 track_mouse_event_fn.
9785d95b 8115
a64387ee 8116 * w32fns.c (w32_wnd_proc): Remove initialization of
048addec 8117 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 8118
048addec 8119 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 8120
f63fd14e 8121 * w32menu.c (globals_of_w32menu): New function. Used to
048addec
JD
8122 initialize those global variables that must always be initialized
8123 on startup even when the global variable initialized is non zero.
8124 Its primary purpose at this time is to initialize the global
8125 variables get_menu_item_info and set_menu_item_info.
9785d95b 8126
048addec
JD
8127 * w32menu.c (initialize_frame_menubar): Remove initialization of
8128 get_menu_item_info and set_menu_item_info.
9785d95b 8129
048addec 8130 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 8131
048addec
JD
8132 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
8133 Declare them.
9785d95b 8134
048addec
JD
8135 * emacs.c (main): Call globals_of_w32 prior to calling
8136 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
8137 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
8138 is defined.
9785d95b 8139
048addec
JD
8140 * w32term.c (x_update_window_begin): Fix Windows API error
8141 detected by BoundsChecker. Test to determine if
8142 w32_system_caret_hwnd is NULL prior to attempting to use
8143 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 8144
048addec
JD
8145 * w32term.c (x_update_window_end): Fix Windows API error
8146 detected by BoundsChecker. Test to determine if
8147 w32_system_caret_hwnd is NULL prior to attempting to use
8148 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 8149
048addec 81502002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 8151
048addec
JD
8152 * coding.c (coding_system_require_warning): New variable.
8153 (syms_of_coding): DEFVAR it.
b6da19ef 8154
048addec 8155 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 8156
048addec
JD
8157 * fileio.c (choose_write_coding_system): Even if
8158 Vcoding_system_for_write is non-nil, if
8159 coding_system_require_warning is nonzero, call
8160 Vselect_safe_coding_system_function.
bfcf6dbe 8161
048addec 81622002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 8163
048addec
JD
8164 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
8165 (lisp): Add font-core.
2c568af5 8166
048addec 81672002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 8168
048addec
JD
8169 * textprop.c (text_read_only): New arg `propval'.
8170 (get_char_property_and_overlay): Remove unused var `next_overlay'.
8171 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 8172
048addec 81732002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 8174
048addec 8175 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 8176
048addec 81772002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 8178
048addec
JD
8179 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
8180 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
8181 Be more careful about when help_events are generated.
96720f09 8182
048addec 81832002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 8184
048addec
JD
8185 * macterm.c (mac_check_for_quit_char): Correctly set the
8186 modifiers of the event to 0.
8187 * mac.c (sys_select): Duplicate rfds before calling select to
8188 ensure that rfds survive the while loop.
e5ae1c49 8189
048addec 81902002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 8191
048addec
JD
8192 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
8193 row_containing_pos returned NULL.
2eb46b2d 8194
048addec 81952002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 8196
6bdb309a 8197 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 8198 non-blocking.
6bdb309a 8199 (sys_select): Fix sys_select to not use a timeout larger than
048addec 8200 the one given.
b11f1d8a 8201
048addec 82022002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 8203
048addec 8204 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 8205
048addec 82062002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 8207
048addec
JD
8208 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
8209 as the last thing.
a4ac5b17 8210
048addec 82112002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 8212
048addec 8213 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 8214
048addec 82152002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 8216
048addec
JD
8217 * editfns.c (Fformat): Handle precision in string conversion
8218 specifiers like libc functions do (ie, print at most that many
8219 characters).
85cce843 8220
048addec 82212002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 8222
048addec
JD
8223 * xdisp.c (row_containing_pos): Check more carefully
8224 whether charpos is really in the row before returning it.
0d4d26a7 8225
048addec 82262002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 8227
048addec 8228 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 8229
048addec
JD
8230 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
8231 each stack frame. This may change as it could be time consuming.
0d4d26a7 8232
048addec
JD
8233 * macterm.c (mac_check_for_quit_char, quit_char_comp)
8234 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 8235 (mac_initialize): Add code to check for pressing of quit_char
048addec 8236 in the OS event queue.
b11f1d8a 8237
048addec
JD
8238 * mac.c (sys_select): Call mac_check_for_quit_char every second
8239 while blocking on select.
0d4d26a7 8240
048addec
JD
8241 * mac.c (sys_read): Use sys_select to test for input first
8242 before calling read, to allow C-g to break.
9252f7bc 8243
048addec 82442002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 8245
048addec 8246 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 8247
048addec 8248 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 8249
048addec 8250 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 8251
048addec
JD
8252 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
8253 autoload.
9252f7bc 8254
048addec 8255 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 8256
048addec 8257 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 8258
048addec 82592002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 8260
048addec 8261 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 8262
048addec 82632002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 8264
048addec 8265 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 8266
048addec 8267 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 8268
048addec 8269 * alloca.c: Don't use #error.
02d588e2 8270
048addec 82712002-12-03 Dave Love <fx@gnu.org>
02d588e2 8272
048addec
JD
8273 * buffer.c (Qucs_set_table_for_input): New.
8274 (Fget_buffer_create): Use it.
8275 (Qset_buffer_major_mode_hook): Deleted.
8276 (Fset_buffer_major_mode): Revert previous change.
8277 (init_buffer_once): Intern ucs-set-table-for-input.
8278 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
8279 Add &Qucs_set_table_for_input.
451e2697 8280
048addec 82812002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 8282
048addec
JD
8283 * callint.c (Fcall_interactively): Use next_event only if less
8284 than key_count.
72742a99 8285
048addec 82862002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 8287
048addec
JD
8288 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
8289 names to 255 characters.
72742a99 8290
048addec
JD
8291 * macterm.c (XTread_socket): If all frames have been collapsed,
8292 expand the first one before handling drag-and-drop events.
72742a99 8293
048addec
JD
8294 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
8295 which is detected by autoconf.
40e6ff95 8296
048addec 82972002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 8298
048addec
JD
8299 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
8300 offset in two hints table to allow prebinding to be redone and
8301 allow the executable to be stripped.
c02138c6 8302
048addec 83032002-11-29 Dave Love <fx@gnu.org>
c02138c6 8304
048addec
JD
8305 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
8306 already provided.
0e47bbf7 8307
048addec 83082002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 8309
048addec
JD
8310 * xdisp.c (start_display): Check more intelligently for
8311 whether the line is continued.
8312 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 8313
048addec 83142002-11-28 Dave Love <fx@gnu.org>
44129dcb 8315
048addec
JD
8316 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
8317 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 8318
048addec 83192002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 8320
048addec
JD
8321 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
8322 more descriptive error output from lread.c:Fload upon most require
8323 cycles during boostrapping.
1637fd2c 8324
048addec 83252002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 8326
048addec
JD
8327 * fileio.c (Finsert_file_contents): Give a more appropriate error
8328 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 8329
048addec
JD
8330 * dired.c (Ffile_attributes): Don't return negative file sizes for
8331 files bigger than 2Gb when off_t is 32 bit.
540c2788 8332
048addec 83332002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 8334
048addec 8335 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 8336
048addec
JD
8337 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
8338 Test GETPGRP_VOID instead.
8339 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 8340
048addec
JD
8341 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
8342 Don't define.
8343 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 8344
048addec 8345 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 8346
048addec 83472002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 8348
048addec
JD
8349 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
8350 supported.
4042a81a 8351
048addec 83522002-11-25 Dave Love <fx@gnu.org>
4042a81a 8353
048addec 8354 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 8355
048addec 8356 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 8357
048addec 83582002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 8359
048addec 8360 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 8361
048addec 83622002-11-24 Steven Tamm <steventamm@mac.com>
82122254 8363
048addec
JD
8364 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
8365 determine the size of pointers alloced in unexed space instead
8366 of using possibly invalid emacs_zone pointers. This fixes the
8367 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 8368
048addec 83692002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 8370
048addec 8371 * search.c (Fstring_match): Doc fix.
c1ee53bc 8372
048addec
JD
8373 * callint.c (Fcall_interactively): If a command fails because
8374 `*' detects a read-only buffer, but RECORD_FLAG is set,
8375 record it anyway if the args don't actually do tty input.
5598c32e 8376
048addec 83772002-11-22 Dave Love <fx@gnu.org>
5598c32e 8378
048addec 8379 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 8380
048addec
JD
8381 * keyboard.c (interrupt_signal): Provide forward declaration.
8382 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 8383
048addec 8384 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 8385
048addec 83862002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 8387
048addec
JD
8388 * eval.c (interactive_p): Skip any number of bytecode
8389 and special form frames, in any order.
516eea8e 8390
048addec 83912002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 8392
048addec
JD
8393 * w32fns.c (convert_mono_to_color_image): New function.
8394 (xbm_load, xbm_load_image): Use it when foreground or background
8395 is explicitly set.
04dbfa08 8396
048addec 83972002-11-19 Dave Love <fx@gnu.org>
04dbfa08 8398
048addec 8399 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 8400
048addec 84012002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 8402
048addec
JD
8403 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
8404 (XPutPixel): Swap blue and red.
8405 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
8406 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
8407 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
8408 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 8409
048addec 84102002-11-18 Dave Love <fx@gnu.org>
d824beee 8411
048addec 8412 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 8413
048addec 8414 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 8415
048addec 8416 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 8417
048addec
JD
8418 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
8419 malloc, realloc, calloc.
d824beee 8420
048addec
JD
8421 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
8422 (bcmp): Don't define.
d824beee 8423
048addec 8424 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 8425
048addec 8426 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 8427
048addec 8428 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 8429
048addec 8430 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 8431
048addec
JD
8432 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
8433 Don't include alloca.h.
d824beee 8434
048addec 8435 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 8436
048addec 8437 * regex.c (_GNU_SOURCE): Don't define.
1998560a 8438
048addec 8439 * process.c (_GNU_SOURCE): Don't define.
1998560a 8440
048addec 8441 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 8442
048addec 84432002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 8444
048addec 8445 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 8446
048addec 84472002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 8448
048addec
JD
8449 * dispextern.h (struct face): Add `overstrike' field.
8450 * xterm.c (x_draw_glyph_string_foreground)
8451 (x_draw_composite_glyph_string_foreground): Implement overstriking.
8452 * xfaces.c (load_face_font): Set `face->overstrike' based on
8453 result from choose_face_font.
8454 (best_matching_font, choose_face_font): Add `needs_overstrike'
8455 argument, and use it to return whether overstriking is desirable
8456 for this face/font combo.
8457 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 8458
048addec 84592002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 8460
048addec
JD
8461 This change is my fix for the following entry in etc/PROBLEMS:
8462 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
8463 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 8464
048addec
JD
8465 * w32.c: Added wrapper functions around the win32 API functions
8466 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
8467 GetSidIdentifierAuthority. These wrapper functions serve two
8468 purposes:
8469 1. They ensure that the wrapped function can never be called
8470 when Emacs is running on an operating system on which they are
8471 not supported (Microsoft Windows 95 / 98 / ME).
8472 2. They call the wrapped functions via function pointers rather
8473 than calling them directly. This avoids taking advantage of the
8474 undocumented fact that although these functions are not supported
8475 in the 9x branch of Microsoft Windows, the functions do exist in
8476 the version of advapi32.dll that is found in the 9x branch of
8477 Microsoft Windows.
f60ae425 8478
6bdb309a 8479 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
8480 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
8481 and GetSidIdentifierAuthority with calls to the newly added
8482 wrapper functions.
f60ae425 8483
048addec
JD
8484 * w32.h: Added extern declarations for the following functions:
8485 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
8486 syms_of_w32menu, and void syms_of_fontset.
f60ae425 8487
6bdb309a 8488 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
8489 function pointer track_mouse_event_fn in the handler for the
8490 WM_SETFOCUS message.
3582b6a3 8491
6bdb309a 8492 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
8493 reinitialize the function pointers set_menu_item_info and
8494 get_menu_item_info.
f60ae425 8495
048addec 84962002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 8497
048addec
JD
8498 * sound.c: Added a partial implementation of play-sound-internal
8499 for Microsoft Windows. Added various #ifdef / #else / #endif
8500 code blocks to separate the code that will compile under
8501 Microsoft Windows from the code that is specific to Gnu/Linux.
8502 Moved several blocks of code around to make this separation of code
8503 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 8504
048addec 8505 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 8506
048addec
JD
8507 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
8508 added support for play-sound-internal under Windows would be
8509 included in the build of Emacs.
517f42a0 8510
048addec 85112002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 8512
048addec 8513 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 8514
048addec 8515 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 8516
048addec 85172002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 8518
048addec
JD
8519 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
8520 (adjust_point_for_property): Move out of display and invisible even if
8521 we were already inside before (in case a property was added while
8522 we weren't looking). Be more careful when handling invisible props.
8523 Skip invisible text as if it really wasn't there at all.
aab83f91 8524
048addec 85252002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 8526
048addec
JD
8527 * w32term.c (x_draw_image_foreground)
8528 (w32_draw_image_foreground_1): Use standard copy and invert
8529 operations to draw images.
aab83f91 8530
048addec
JD
8531 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
8532 depth of 1.
8533 (xbm_read_bitmap_data): Invert bits as xbm is read in.
8534 (XPutPixel): Don't invert bits here.
a4478a76 8535
048addec 85362002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 8537
048addec
JD
8538 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
8539 (w32_draw_image_foreground_1): Handle image masks.
8540 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 8541
048addec
JD
8542 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
8543 (x_from_xcolors): Adjust RGB values for W32.
8544 (image_background, image_background_transparent)
8545 (postprocess_image, x_to_xcolors, x_disable_image)
8546 (x_build_heuristic_mask): Adapt for W32 and enable.
8547 (x_create_x_image_and_pixmap): Mark images with palettes as such.
8548 (xbm_load): Remove unused variable.
03670a65 8549
048addec 85502002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 8551
048addec 8552 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 8553
048addec 85542002-11-14 Dave Love <fx@gnu.org>
59daa29a 8555
048addec 8556 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 8557
048addec
JD
8558 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
8559 * xmenu.c (unuse_menu_items, digest_single_submenu):
8560 * xfns.c (x_put_x_image):
8561 * xdisp.c (message2_nolog, set_message):
8562 * undo.c (record_point):
8563 * terminfo.c (tparam):
8564 * syntax.c (scan_sexps_forward):
8565 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
8566 * composite.c (update_compositions):
8567 * cm.c (calccost, cmgoto):
8568 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 8569
048addec 8570 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 8571
048addec
JD
8572 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
8573 Don't declare.
59daa29a 8574
048addec 8575 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 8576
048addec
JD
8577 * fns.c (Fcopy_sequence): Doc fix.
8578 (Fmap_char_table): Cast `call2'.
3947677c 8579
048addec
JD
85802002-11-14 Francesco Potorti` <pot@gnu.org>
8581
8582 * s/sol2-8.h: New file.
8583
85842002-11-14 Kim F. Storm <storm@cua.dk>
8585
8586 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
8587 dependency on `risky-local-variable' and the :propertize form.
8588
85892002-11-12 Stefan Monnier <monnier@cs.yale.edu>
8590
8591 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
8592
8593 * syntax.c (scan_sexps_forward): Undo last patch.
8594 Use a more obvious fix: check eob before updating the syntax table.
8595
85962002-11-09 Stefan Monnier <monnier@cs.yale.edu>
8597
8598 * syntax.c (scan_sexps_forward): Update syntax table before reading
8599 a char rather than after so we don't update the table past eob.
8600
86012002-11-09 Dave Love <fx@gnu.org>
8602
8603 * buffer.c (Fset_buffer_major_mode): Fix last change.
8604
8605 * regex.c (regexec): Fix pmatch declaration.
8606
8607 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
8608
8609 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
8610 to self-inserting characters.
8611 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
8612
8613 * coding.c (Vtranslation_table_for_input): New.
8614 (syms_of_coding): DEFVAR it.
8615
86162002-11-08 Juanma Barranquero <lektu@terra.es>
8617
8618 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
8619 window.
8620
86212002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8622
6bdb309a 8623 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
8624 cp, and i.
8625
86262002-11-06 Dave Love <fx@gnu.org>
8627
8628 * buffer.c (Qset_buffer_major_mode_hook): New.
8629 (Fset_buffer_major_mode): Use it.
8630
86312002-11-06 Richard M. Stallman <rms@gnu.org>
8632
8633 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
8634 and stop_polling.
8635
8636 * process.c (wait_reading_process_input):
8637 Test POLLING_PROBLEM_IN_SELECT, not hpux.
8638 Avoid initialization for auto Lisp_Object var.
8639
8640 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
8641
8642 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
8643
86442002-11-05 Richard M. Stallman <rms@gnu.org>
8645
8646 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
8647
8648 * callint.c (Fcall_interactively): New local filter_specs.
8649 (Fcall_interactively): Check for progn as well as let.
8650 Add a gcpro.
8651 (Qprogn): New variable.
8652 (syms_of_callint): Staticpro and init Qprogn.
8653
86542002-11-04 John Paul Wallington <jpw@shootybangbang.com>
8655
8656 * lread.c (Feval_buffer): Doc fix.
8657
86582002-11-04 Dave Love <fx@gnu.org>
8659
8660 * keyboard.c (read_char): Always translate iff
8661 Vkeyboard_translate_table is a char table and c is valid.
8662
8663 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
8664 and fix C types.
8665
86662002-11-03 Stefan Monnier <monnier@cs.yale.edu>
8667
8668 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
8669
8670 * editfns.c (get_pos_property): Don't hardcode Qfield.
8671
8672 * keyboard.c (adjust_point_for_property): Handle `display' prop on
8673 overlays. Also handle `invisible' prop.
8674
86752002-11-02 Stefan Monnier <monnier@cs.yale.edu>
8676
8677 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
8678 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
8679
86802002-11-01 Andreas Schwab <schwab@suse.de>
8681
8682 * editfns.c (Fmessage): Revert last change to properly handle %%.
8683
86842002-11-01 Stefan Monnier <monnier@cs.yale.edu>
8685
8686 * xmenu.c (unuse_menu_items): New fun.
8687 (menu_items_inuse): New var.
8688 (syms_of_xmenu): Initialize it.
8689 (init_menu_items): Use it to detect re-entrance.
8690 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
8691 (Fx_popup_menu): Remove spurious XSETFRAME.
8692
8693 * editfns.c (find_field): Make an exception for nil fields.
8694
86952002-11-01 Dave Love <fx@gnu.org>
8696
8697 * m/gec63.h: Deleted.
8698
86992002-10-31 Dave Love <fx@gnu.org>
8700
8701 * xterm.c (XTread_socket): Fix last change.
8702 (xaw_scroll_callback): Cast call_data to long to avoid warning.
8703
87042002-10-31 Stefan Monnier <monnier@cs.yale.edu>
8705
8706 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
8707
87082002-10-30 Stefan Monnier <monnier@cs.yale.edu>
8709
8710 * editfns.c (overlays_around, get_pos_property): New funs.
8711 (find_field): Use them.
8712 Also be careful not to modify POS before its last use.
8713 (Fmessage): Don't Fformat if there's nothing to format.
8714
87152002-10-30 Dave Love <fx@gnu.org>
8716
8717 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
8718 [HAVE_PTY_H]; Include pty.h.
8719
8720 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
8721
8722 * xterm.c (Qeql): Declare.
8723 (Vx_keysym_table): New.
8724 (syms_of_xterm): Initialize it.
8725 (XTread_socket): Use it. Deal with ASCII keysyms.
8726 (XSetIMValues) [HAVE_X11R6]: Prototype.
8727
8728 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
8729 (lispy_kana_keys): Comment out.
8730 (make_lispy_event) [XK_kana_A]: Comment out.
8731 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
8732 Fix sprintf call.
8733
8734 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
8735 regexp.h change).
8736 (TERMINFO, LIBS_TERMCAP): Define.
8737
8738 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
8739 (bcmp): Define conditional on HAVE_BCMP.
8740 (NO_SIOCTL_H): Don't define.
8741 (TIOCSIGSEND): Don't make conditional on IRIX6.
8742
8743 * s/sol2-5.h: Don't include strings.h.
8744 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
8745
8746 * s/irix6-0.h (IRIX6): Don't define.
8747 (bcopy, bcmp, bzero): Don't undef.
8748
8749 * s/irix6-5.h: Don't include strings.h.
8750 (IRIX6): Don't define.
8751 (bcopy, bcmp, bzero): Don't undef.
8752
8753 * syntax.c (Fforward_comment): Doc fix.
8754
87552002-10-29 Kim F. Storm <storm@cua.dk>
8756
8757 * process.c (Fsignal_process): Allow PROCESS to be specified by
8758 name in addition to pid (as integer or string).
8759
87602002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
8761
8762 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
8763 environments.
8764
87652002-10-27 Kim F. Storm <storm@cua.dk>
8766
8767 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
8768
8769 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
8770
8771 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
8772
8773 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
8774
87752002-10-26 Richard M. Stallman <rms@gnu.org>
8776
8777 * editfns.c (Fformat): Detect invalid format letters for floats.
8778
87792002-10-25 Kenichi Handa <handa@m17n.org>
8780
8781 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
8782 (x_set_title): Likewise.
8783
87842002-10-25 Juanma Barranquero <lektu@terra.es>
8785
8786 * macgui.h:
8787 * w32gui.h: Remove definition of XColor.
8788
8789 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
8790
87912002-10-24 Kim F. Storm <storm@cua.dk>
8792
8793 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
8794 Callers changed (supply dummy arg).
8795
8796 * lisp.h (get_window_cursor_type): Update prototype.
8797
8798 * w32term.c (x_display_and_set_cursor): Get active_cursor from
8799 get_window_cursor_type to track system caret.
8800
88012002-10-24 Kim F. Storm <storm@cua.dk>
8802
8803 * process.c (Fformat_network_address): New function.
8804 (syms_of_process): Defsubr it.
8805 (list_processes_1): Use it to format :local/:remote address if
f9711de4 8806 service/host is not set; before Emacs would crash in that case.
048addec
JD
8807 (Fmake_network_process): Don't use Ffind_operation_coding_system
8808 to setup coding system if host or service is not set.
8809
88102002-10-23 Juanma Barranquero <lektu@terra.es>
8811
8812 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
8813
8814 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
8815 COLORREF.
8816
8817 * macgui.h:
8818 * w32gui.h: Add definition of XColor.
8819
8820 * macfns.c:
8821 * w32fns.c:
8822 * xfaces.c: Remove definition of XColor.
8823
88242002-10-22 Stefan Monnier <monnier@cs.yale.edu>
8825
8826 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
8827
8828 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
8829 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
8830 window if it is dedicated.
8831 (Fshrink_window): Add preserve_before as was done for enlarge_window.
8832 (Vspecial_display_function): Update docstring.
8833
8834 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
8835 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
8836 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
8837
88382002-10-21 Stefan Monnier <monnier@cs.yale.edu>
8839
8840 * casefiddle.c (casify_region): Don't treat a prefix char as part
8841 of a word when at the beginning.
8842
88432002-10-17 Juanma Barranquero <lektu@terra.es>
8844
8845 * lread.c (syms_of_lread): Fix typos.
8846
88472002-10-17 Dave Love <fx@gnu.org>
8848
8849 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
8850
88512002-10-16 Richard M. Stallman <rms@gnu.org>
8852
8853 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
8854
88552002-10-14 Juanma Barranquero <lektu@terra.es>
8856
8857 * w16select.c (syms_of_win16select): Fix docstring for
8858 `selection-coding-system'.
8859
8860 * w32select.c (syms_of_w32select): Likewise.
8861
88622002-10-14 Stefan Monnier <monnier@cs.yale.edu>
8863
8864 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
8865 a backslash-quoted char.
8866 (scan_lists, scan_sexps_forward): Pacify the compiler.
8867
88682002-10-13 Richard M. Stallman <rms@gnu.org>
8869
8870 * window.c (window_scroll): Set immediate_quit.
8871
8872 * print.c (print): When backquote form is the car of a list,
8873 output in old style. Use old_backquote_output to output all
8874 comma forms inside it in old style too.
8875
8876 * buffer.h (struct buffer): Move `undo_list' down below `name'.
8877
88782002-10-11 Markus Rost <rost@math.ohio-state.edu>
8879
8880 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
8881 batch mode).
8882
8883 * lread.c (Fload): Doc fix (load-suffixes).
8884
88852002-10-10 Steven Tamm <steventamm@mac.com>
8886
8887 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
8888 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
8889 Also switch the default to Qnil from Qt.
8890
88912002-10-08 Kenichi Handa <handa@m17n.org>
8892
8893 * coding.c (code_convert_region): When we need more GAP for
8894 conversion, pay attention to the case that coding->produced is not
8895 greater than coding->consumed.
8896
88972002-10-07 Richard M. Stallman <rms@gnu.org>
8898
8899 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
8900
89012002-10-06 Andrew Choi <akochoi@shaw.ca>
8902
8903 * macmenu.c (mac_menu_show): Add j to count menu items; match
8904 menu_item_selection to it to find selected item.
8905
89062002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8907
8908 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
8909 cases. The correct fix is to pass ReparentNotify to Xt.
8910 The shell widget interprets ConfigureNotify differently depending
8911 on if it has been reparented or not.
8912
89132002-10-05 Markus Rost <rost@math.ohio-state.edu>
8914
8915 * editfns.c (Fformat_time_string): Doc fix.
8916
89172002-10-05 John Paul Wallington <jpw@shootybangbang.com>
8918
8919 * fns.c (Flength): Doc fix.
8920
89212002-10-04 Stefan Monnier <monnier@cs.yale.edu>
8922
8923 * keyboard.c (keyremap): New struct.
8924 (read_key_sequence): Use it: globally replace keytran_foo with
8925 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
8926 keytran_next and fkey_next to just `next'.
8927
89282002-10-04 Steven Tamm <steventamm@mac.com>
8929
8930 * macterm.c (keycode_to_xkeysym_table): Change return to be
8931 treated like an X keysym.
8932
89332002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8934
8935 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
8936 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
8937 This is to also handle x/y changes that occur because of a resize.
8938
89392002-10-02 John Paul Wallington <jpw@shootybangbang.com>
8940
8941 * frame.c (Vdelete_frame_functions): New variable.
8942 (syms_of_frame): Initialize and defvar it.
8943 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
8944 it when frame's `tooltip' parameter is non-nil.
8945
8946 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
8947
8948 * w32fns.c (x_create_tip_frame): Likewise.
8949
8950 * macfns.c (x_create_tip_frame): Likewise.
8951
89522002-09-30 Kenichi Handa <handa@m17n.org>
8953
8954 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
8955 -1 before calling ccl_driver.
8956
8957 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
8958 Only when it is non-nil, handle composition sequence.
8959 (setup_coding_system) <0>: Don't force composition handling.
8960
8961 * Makefile.in (lisp, shortlisp): Add utf-16.elc
8962
89632002-09-29 Richard M. Stallman <rms@gnu.org>
8964
8965 * search.c (Freplace_match): Adjust match data for the substitution
8966 just made in the buffer.
8967
8968 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
8969 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
8970
89712002-09-27 Richard M. Stallman <rms@gnu.org>
8972
8973 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
8974 (read_char): Use them. Do all exits thru the end of the function.
8975
89762002-09-27 Kenichi Handa <handa@etl.go.jp>
8977
8978 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
8979 is nil.
8980
89812002-09-26 Richard M. Stallman <rms@gnu.org>
8982
8983 * regex.h (__restrict_arr): Don't define if already defined.
8984
8985 * coding.c (run_pre_post_conversion_on_str):
8986 Save and restore Vdeactivate_mark.
8987
89882002-09-26 John Paul Wallington <jpw@shootybangbang.com>
8989
8990 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
8991
89922002-09-26 Kenichi Handa <handa@etl.go.jp>
8993
8994 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
8995 nonzero, try face's family at first. Otherwise try FAMILY at first.
8996 (choose_face_font): If C is a single byte char or latin-1, call
8997 try_font_list with PREFER_FACE_FAMILY 1.
8998
89992002-09-21 Richard M. Stallman <rms@gnu.org>
9000
9001 * window.c (select_window_1): Don't select frame.
9002 Set frame's selected window only when frame itself is selected.
9003 (Fselect_window): Doc fix.
9004
90052002-09-18 Kim F. Storm <storm@cua.dk>
9006
9007 * process.c (make-network-process): Doc fix (there is no
9008 network-server-log-function hook).
9009
90102002-09-18 Richard M. Stallman <rms@gnu.org>
9011
9012 * print.c (print): Clear out the unused parts of Vprint_number_table.
9013 (syms_of_print): Doc fix for `print-number-table'.
9014
9015 * unexelf.c (unexec): Undo previous change.
9016
90172002-09-17 Andreas Schwab <schwab@suse.de>
9018
9019 * m/alpha.h [LINUX]: Don't define DATA_START.
9020
90212002-09-16 Dave Love <fx@gnu.org>
9022
9023 * unexelf.c (unexec): Deal with .got, reinstating change from
9024 25-08-1999.
9025
90262002-09-13 Richard M. Stallman <rms@gnu.org>
9027
9028 * s/sol2-6.h (UNEXEC): Comment out definition.
9029
9030 * unexsol.c (unexec): Don't downcase first letter of error msg.
9031
9032 * xfaces.c (Fcolor_supported_p): Just one arg is required.
9033
90342002-09-12 Markus Rost <rost@math.ohio-state.edu>
9035
9036 * unexsol.c: Include buffer.h, charset.h, coding.h.
9037
90382002-09-11 Richard M. Stallman <rms@gnu.org>
9039
9040 * unexsol.c: Don't use report_file_error; do it by hand
9041 using dlerror.
9042
9043 * process.c (wait_reading_process_input, both versions):
9044 Before calling turn_on_atimers, call stop_polling.
9045
9046 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
9047
9048 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
9049 we go to too_near_end, call clear_glyph_matrix.
9050 (redisplay_window): After make_cursor_line_fully_visible,
9051 call clear_glyph_matrix and bypass `goto done'.
9052
9053 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
9054 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
9055
90562002-09-10 Richard M. Stallman <rms@gnu.org>
9057
9058 * fileio.c (Fdo_auto_save): Catch error making directory.
9059 Only call push_message if we need to.
9060 At the same time, make an unwind-protect to pop it.
9061 Rename local message_p to old_message_p.
9062 (do_auto_save_make_dir, do_auto_save_eh): New functions.
9063 (do_auto_save_unwind): Don't call pop_message.
9064
9065 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
9066
9067 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
9068
9069 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
9070
9071 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
9072
90732002-09-10 Stefan Monnier <monnier@cs.yale.edu>
9074
9075 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
9076 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
9077 (re_match_2_internal): Be more careful with infinite loops.
9078
90792002-09-10 Kim F. Storm <storm@cua.dk>
9080
9081 * macros.c (end_kbd_macro): New function.
9082 (Fend_kbd_macro): Use it.
9083
9084 * macros.h (end_kbd_macro): Declare extern.
9085
9086 * keyboard.c (Fdiscard_input): If defining keyboard macro,
9087 end and save it instead of discarding it.
9088
90892002-09-09 Markus Rost <rost@math.ohio-state.edu>
9090
9091 * s/sol2-6.h: Fix typo. Add comment.
9092
90932002-09-09 Richard M. Stallman <rms@gnu.org>
9094
9095 * regex.c (regnum_t): Use signed int, not unsigned int.
9096
9097 * s/sol2-6.h: New file.
9098
9099 * s/sol2-5.h (UNEXEC): Definition deleted.
9100
91012002-09-08 Kim F. Storm <storm@cua.dk>
9102
9103 * macros.c (executing_macro_index): Change type to EMACS_INT.
9104 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
9105
9106 * macros.h (executing_macro_index): Change type to EMACS_INT.
9107
91082002-09-06 Richard M. Stallman <rms@gnu.org>
9109
9110 * casetab.c (set_case_table): Make canon table point to eqv table.
9111
91122002-09-06 Juanma Barranquero <lektu@terra.es>
9113
9114 * coding.c (syms_of_coding): Fix spacing.
9115
9116 * composite.c (Fcompose_region_internal)
9117 (Fcompose_string_internal): Likewise.
9118
9119 * data.c (Flsh): Likewise.
9120
9121 * fontset.c (Fset_fontset_font): Likewise.
9122
9123 * macfns.c (Fx_server_max_request_size): Likewise.
9124
9125 * w16select.c (syms_of_win16select): Likewise.
9126
9127 * w32select.c (syms_of_w32select): Likewise.
9128
9129 * xselect.c (syms_of_xselect): Likewise.
9130
91312002-09-05 Richard M. Stallman <rms@gnu.org>
9132
9133 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
9134 call EXTEND_RANGE_TABLE and return a proper value.
9135 (set_image_of_range): Don't call set_image_of_range_1
9136 if no TRANSLATE or if range includes all of Latin-1.
9137 Only call it for the Latin-1 part of the range.
9138 For other cases, make two separate ranges,
9139 one for the original specified characters and one for
9140 their case-conversions.
9141
91422002-09-04 Richard M. Stallman <rms@gnu.org>
9143
9144 * s/sol2-5.h (UNEXEC): Use unexsol.o.
9145
9146 * window.c (displayed_window_lines): Correct for one-off bug
9147 in HEIGHT on non-window displays.
9148
9149 * regex.c (set_image_of_range_1): New function.
9150 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
9151 Return a value to indicate running out of memory.
9152 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
9153 (extend_range_table_work_area): New subroutine.
9154 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
9155 Different calling conventions, and used from set_image_of_range{,_1}.
9156 (IMMEDIATE_QUIT_CHECK): Definitions moved.
9157
91582002-09-04 Juanma Barranquero <lektu@terra.es>
9159
9160 * makefile.w32-in: All dependencies updated.
9161
91622002-09-01 Richard M. Stallman <rms@gnu.org>
9163
9164 * unexsol.c: New file.
9165
9166 * xfns.c (Qbox): Declare external, don't define.
9167
9168 * xdisp.c (redisplay_window) <force-start case>:
9169 If point is on semi-visible last line, reposition
9170 it at previous line.
9171
9172 * alloc.c (display_malloc_warning): Use display-warning.
9173 (malloc_warning_1): Function deleted.
9174
9175 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
9176
9177 * lread.c (read1): Handle #! by skipping the line.
9178
91792002-08-31 Richard M. Stallman <rms@gnu.org>
9180
9181 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
9182 Don't include LDFLAGS.
9183 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
9184
91852002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
9186
9187 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
9188 member of x_display_info unless we compile for some window system.
9189
91902002-08-31 Kim F. Storm <storm@cua.dk>
9191
9192 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
9193 (get_window_cursor_type): Don't use them.
9194 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
9195
91962002-08-30 Kenichi Handa <handa@etl.go.jp>
9197
9198 * xdisp.c (get_next_display_element): Fix previous change.
9199
92002002-08-30 Andrew Choi <akochoi@shaw.ca>
9201
9202 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
9203 (expose_window): Use it to fix the display of overlapping
9204 rows (merge code from xterm.c).
9205
9206 * macfns.c (Qbox): Add extern declaration.
9207
92082002-08-30 Juanma Barranquero <lektu@terra.es>
9209
9210 * w32fns.c (Qbox): Make extern.
9211 (syms_of_w32fns): Remove initialization of Qbox.
9212
92132002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
9214
9215 * xfns.c (Fx_open_connection): Fix error message.
9216
92172002-08-30 Kim F. Storm <storm@cua.dk>
9218
9219 The following changes consolidates the handling of the cursor
9220 type in xdisp.c, moving duplicate code and functionality from
9221 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
9222
9223 * frame.h (enum text_cursor_kinds): Consolidated here.
9224 Added DEFAULT_CURSOR value.
9225 (struct frame) <desired_cursor, cursor_width>
9226 <blink_off_cursor, blink_off_cursor_width>: New fields.
9227 Consolidated from output_x, output_w32 and output_mac structs.
9228 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
9229 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
9230
9231 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
9232 Variables consolidated here.
9233 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
9234 (Vcursor_in_non_selected_windows): Renamed from
9235 cursor_in_non_selected_windows and changed to Lisp_Object.
9236 (syms_of_xdisp): Define and staticpro new and moved variables.
9237 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
9238 consolidated here. Recognize Qhollow setting.
9239 (set_frame_cursor_types): New function to set frame cursor types
9240 based on the frame parameters.
9241 (get_window_cursor_type): New function to calculate new cursor
9242 type and width for the specified window. Based on duplicated
9243 code consolidated here.
9244 Enhancements: cursor-in-non-selected-windows may be a cursor type,
9245 check buffer-local alternate-cursor-type and blink-cursor-alist
9246 before using built-in blink off methods.
9247
9248 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
9249
9250 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
9251 (get_specified_cursor_type, get_window_cursor_type)
9252 (set_frame_cursor_types): Added prototypes.
9253
9254 * macfns.c (x_specified_cursor_type): Removed.
9255 (x_set_cursor_type): Use set_frame_cursor_types.
9256 (Qbar, Qbox): Removed.
9257 (syms_of_macfns): Don't intern or staticpro them.
9258
9259 * macterm.c (x_specified_cursor_type): Remove prototype.
9260 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
9261 (x_display_and_set_cursor): Use get_window_cursor_type.
9262 Remove unused local variables cursor_non_selected, active_cursor.
9263 Redraw cursor if hbar cursor width changes.
9264 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
9265
9266 * macterm.h (enum text_cursor_kinds): Removed.
9267 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
9268 <blink_off_cursor, blink_off_cursor_width>: Members removed.
9269 (FRAME_DESIRED_CURSOR): Macro removed.
9270
9271 * w32fns.c (Vblink_cursor_alist): Removed.
9272 (Qbar, Qhbar, Qbox, Qhollow): Removed.
9273 (syms_of_w32fns): Don't intern, staticpro, or define them.
9274 (x_specified_cursor_type): Removed.
9275 (x_set_cursor_type): Use set_frame_cursor_types.
9276
9277 * w32term.c (x_specified_cursor_type): Remove prototype.
9278 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
9279 (x_display_and_set_cursor): Use get_window_cursor_type.
9280 Remove unused local variables cursor_off_state.
9281 Redraw cursor if hbar cursor width changes.
9282 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
9283
9284 * w32term.h (enum text_cursor_kinds): Removed.
9285 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
9286 <blink_off_cursor, blink_off_cursor_width>: Members removed.
9287 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
9288 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
9289 (struct w32_display_info) <x_highlight_frame>: Renamed member from
9290 w32_highlight_frame.
9291
9292 * xfns.c (Vblink_cursor_alist): Removed.
9293 (Qbar, Qhbar, Qbox, Qhollow): Removed.
9294 (syms_of_xfns): Don't intern, staticpro, or define them.
9295 (x_specified_cursor_type): Removed.
9296 (x_set_cursor_type): Use set_frame_cursor_types.
9297
9298 * xterm.c (x_specified_cursor_type): Remove prototype.
9299 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
9300 (x_display_and_set_cursor): Use get_window_cursor_type.
9301 Remove unused local variables cursor_off_state.
9302 Redraw cursor if hbar cursor width changes.
9303
9304 * xterm.h (enum text_cursor_kinds): Removed.
9305 (struct output_x) <current_cursor, desired_cursor, cursor_width>
9306 <blink_off_cursor, blink_off_cursor_width>: Members removed.
9307 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
9308 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
9309 (x_specified_cursor_type): Remove prototype.
9310
93112002-08-28 Richard M. Stallman <rms@gnu.org>
9312
9313 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
9314 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
9315 (Vblink_cursor_alist): New variable.
9316 (syms_of_w32fns): Initialize and defvar it.
9317 (x_specified_cursor_type): Recognize Qbox for filled box.
9318 Exceptions are hollow boxes.
9319 (Qbox, Qhollow): New variables.
9320 (syms_of_w32fns): Initialize and staticpro them.
9321
9322 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
9323 New macros.
9324 (struct w32_output): New fields blink_off_cursor,
9325 blink_off_cursor_width.
9326 (FRAME_CURSOR_WIDTH): New macro.
9327
9328 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
9329 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
9330
9331 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
9332 for bar cursor.
9333
9334 * w32term.c (expose_overlaps): New function.
9335 (expose_window): Use it to fix the display of overlapping rows.
9336
93372002-08-28 Simon Josefsson <jas@extundo.com>
9338
9339 * xfns.c (Fx_open_connection): Improve help when X connection
9340 fails, xhost is insecure and xauth is better.
9341
93422002-08-28 Juanma Barranquero <lektu@terra.es>
9343
9344 * makefile.w32-in: Add missing dependencies on w32term.h and
9345 composite.h.
9346
9347 * emacs.c (USAGE1): Add missing newline.
9348
93492002-08-27 Andrew Choi <akochoi@shaw.ca>
9350
9351 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
9352
93532002-08-27 Richard M. Stallman <rms@gnu.org>
9354
9355 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
9356 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
9357 (Vblink_cursor_alist): New variable.
9358 (syms_of_xfns): Initialize and defvar it.
9359 (x_specified_cursor_type): Recognize Qbox for filled box.
9360 Exceptions are hollow boxes.
9361 (Qbox, Qhollow): New variables.
9362 (syms_of_xfns): Initialize and staticpro them.
9363
9364 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
9365 New macros.
9366 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
9367
9368 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
9369 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
9370
9371 * emacs.c (main): Handle --script.
9372 (USAGE1): Mention --script.
9373 (standard_args): Define sort order for --script.
9374
93752002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
9376
9377 * xdisp.c (redisplay_updating_p): Variable removed.
9378 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
9379 New variables.
9380 (init_iterator): Don't free realized faces if
9381 inhibit_free_realized_faces is set.
9382 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
9383 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
9384 initialize Qinhibit_free_realized_faces.
9385
9386 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
9387 when iterator is adding glyphs to a glyph matrix.
9388
93892002-08-27 Kenichi Handa <handa@etl.go.jp>
9390
9391 * xdisp.c (get_next_display_element): In unibyte case, don't use
9392 octal form for such eight-bit characters that can be converted to
9393 multibyte char.
9394
93952002-08-26 Kim F. Storm <storm@cua.dk>
9396
9397 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
9398 and background colors. From Joe Buehler (tiny change).
9399
94002002-08-26 Miles Bader <miles@gnu.org>
9401
9402 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
9403
94042002-08-25 Andrew Choi <akochoi@shaw.ca>
9405
9406 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
9407 defined instead of MAC_OSX.
9408
9409 * s/darwin.h (select): Define select to sys_select only if
9410 HAVE_CARBON is defined.
9411 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
9412 (DONT_REOPEN_PTY): #def it.
9413
9414 * macterm.c (XTread_socket): Remove code to call
9415 SendEventToEventTarget for keys with command modifiers when
9416 mac_command_key_is_meta is nil.
9417
94182002-08-24 Andreas Schwab <schwab@suse.de>
9419
9420 * eval.c (Fdefvar): Fix last change.
9421
94222002-08-23 Richard M. Stallman <rms@gnu.org>
9423
9424 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
9425 Record variables in load history as (defvar . VAR).
9426 (Fdefvar): Don't record in load history if no initial value.
9427 (Qdefvar): New variable.
9428 (syms_of_eval): Init and staticpro it.
9429
9430 * lread.c (syms_of_lread): Doc fix.
9431 (build_load_history): Use Fmember to see if a definition
9432 is already in the Vload_history element.
9433
9434 * process.c (Fstart_process): Remove /: from program name.
9435
9436 * emacs.c (decode_env_path): Don't add /: if file name handler
9437 has a `safe-magic' property.
9438
9439 * callproc.c (Fcall_process): Remove /: from program name.
9440
94412002-08-23 Stefan Monnier <monnier@cs.yale.edu>
9442
9443 * regex.c (PATFETCH): Remove the translating fetch.
9444 (PATFETCH_RAW): Rename to PATFETCH.
9445 (set_image_of_range): New fun.
9446 (SET_RANGE_TABLE_WORK_AREA): Use it.
9447 (regex_compile): Don't translate the pattern chars so eagerly.
9448 Only do it when inserting an `exactn' bytecode or when handling
9449 a char-range.
9450 (mutually_exclusive_p): Avoid empty statement.
9451
94522002-08-22 Kim F. Storm <storm@cua.dk>
9453
9454 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
9455 end up on a partially visible line; this reverts a specific part
9456 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
9457 display error which has been reported several times now.
9458 However it introduces the problem that changes was supposed to fix.
9459 See my comments in the source if you want to debug this further.
9460
94612002-08-20 Kenichi Handa <handa@etl.go.jp>
9462
9463 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
9464
94652002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
9466
9467 * msdos.c (croak): Add `void' to definition.
9468
c1380aa6 9469 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
048addec
JD
9470 Don't define them, they are defined in msdos.c.
9471
9472 * mem-limits.h [MSDOS]: Declare etext.
9473
9474 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
9475 `const' since CORRECT_DIR_SEPS modifies its target.
9476
94772002-08-19 Kim F. Storm <storm@cua.dk>
9478
2fb0ce67 9479 * keyboard.c (Fclear_this_command_keys): Add optional arg
048addec
JD
9480 KEEP-RECORD to avoid clearing lossage when we just want to clear
9481 the current key sequence (kmacro needs this).
9482
94832002-08-19 Kenichi Handa <handa@localhost>
9484
9485 * composite.c (run_composition_function): Call FUNC if it is fboundp.
9486
9487 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
9488 cons, return Qnil.
9489
94902002-08-17 Richard M. Stallman <rms@gnu.org>
9491
9492 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
9493
9494 * sysdep.c [!VMS]: Include sys/files.h.
9495
9496 * editfns.c (save_restriction_restore): Defend from unchained marker.
9497
9498 * buffer.c (overlays_at): Handle extending vec uniformly.
9499 (overlays_in): Handle extending vec from length 0 as in overlays_at.
9500
95012002-08-15 Andrew Choi <akochoi@shaw.ca>
9502
9503 * mac.c (init_mac_osx_environment): New function.
9504
9505 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
9506
95072002-08-14 Kim F. Storm <storm@cua.dk>
9508
9509 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
9510 executing macro before appending to it (when used from Lisp).
9511 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
9512 which is called prior to each iteration of macro (for kmacro.el).
9513 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
9514
9515 * lisp.h (Fexecute_kbd_macro): Update prototype.
9516
9517 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
9518
95192002-08-14 Kenichi Handa <handa@etl.go.jp>
9520
9521 * xselect.c (QUTF8_STRING): New variable.
9522 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
9523 (x_atom_to_symbol): Likewise.
9524 (x_get_local_selection): New argument local_request. If it is
9525 nonzero, call handler_fn with the second arg nil.
9526 (x_handle_selection_request): Call x_get_local_selection with
9527 local_request 0.
9528 (lisp_data_to_selection_data): Don't encode the string here.
9529 (Fx_get_selection_internal): Call x_get_local_selection with
9530 local_request 1.
9531 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
9532
9533 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
9534
9535 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
9536
95372002-08-13 Richard M. Stallman <rms@gnu.org>
9538
9539 * minibuf.c (Fminibufferp): New function.
9540 (syms_of_minibuf): Defsubr it.
9541 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
9542
95432002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
9544
9545 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
9546
95472002-08-12 Richard M. Stallman <rms@gnu.org>
9548
9549 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
9550 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
9551 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
9552 already.
9553
9554 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
9555
95562002-08-11 Andrew Choi <akochoi@shaw.ca>
9557
9558 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
9559 (Vmac_pass_command_to_system): New variable.
9560 (Vmac_pass_control_to_system): New variable.
9561 (do_mouse_moved): Check wp with is_emacs_window.
9562 (XTread_socket): Check window_ptr with is_emacs_window.
9563 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
9564 events back to Mac Toolbox for processing, depending on values of
9565 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
9566 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
9567 Vmac_pass_control_to_system.
9568
95692002-08-10 Kenichi Handa <handa@etl.go.jp>
9570
9571 * coding.c (unencodable_char_position): New function.
9572 (Funencodable_char_position): New function.
9573 (syms_of_coding): Defsubr Funencodable_char_position.
9574
95752002-08-10 Andrew Choi <akochoi@shaw.ca>
9576
9577 * mac.c (sys_select) [MAC_OSX]: New function.
9578
9579 * macterm.c (MakeMeTheFrontProcess): New function.
9580 (mac_initialize): Call MakeMeTheFrontProcess.
9581
9582 * s/darwin.h: Define select to sys_select.
9583
95842002-08-09 Richard M. Stallman <rms@gnu.org>
9585
9586 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
9587
95882002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
9589
9590 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
9591 end of the buffer.
9592
95932002-08-08 Ken Raeburn <raeburn@mit.edu>
9594
9595 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
9596
9597 * puresize.h (BASE_PURESIZE): Increase to 910000.
9598
95992002-08-08 Kenichi Handa <handa@etl.go.jp>
9600
9601 * coding.c (Ffind_operation_coding_system): For write-region, if
9602 VISIT is a filename, make it the target.
9603
96042002-08-07 Richard M. Stallman <rms@gnu.org>
9605
9606 * alloc.c (mark_object): Detect long lists for debugging.
9607 (mark_object_loop_halt): New variable.
9608
9609 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
9610
9611 * data.c (Fmake_variable_frame_local): Doc fix.
9612
96132002-08-01 David Ponce <david@dponce.com>
9614
9615 * w32menu.c (local_heap, local_alloc, local_free): New macros.
9616 (malloc_widget_value, free_widget_value)
9617 (w32_free_submenu_strings): Use them.
9618
9619 (push_submenu_start, push_submenu_end, push_left_right_boundary)
9620 (push_menu_pane, push_menu_item, single_keymap_panes)
9621 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
9622 (single_submenu, set_frame_menubar)
9623 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
9624
9625 (Fx_popup_menu): Don't show pop up menu until preceding one is
9626 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
9627
9628 * w32menu.c: Changes adapted from xmenu.c
9629 (set_frame_menubar): First parse all submenus,
9630 then make widget_value trees from them.
9631 Don't allocate any widget_value objects
9632 until we are done with the parsing.
9633 (parse_single_submenu): New function.
9634 (digest_single_submenu): New function.
9635 (single_submenu): Function deleted, replaced by those two.
9636
96372002-08-04 Andrew Choi <akochoi@shaw.ca>
9638
9639 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
9640 returns a valid window pointer before proceeding for keyDown and
9641 autoKey events.
9642
96432002-08-03 Andrew Choi <akochoi@shaw.ca>
9644
9645 * macterm.c (USE_CARBON_EVENTS): New macro.
9646 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
9647 (x_iconify_frame): Call CollapseWindow.
9648 (Vmac_reverse_ctrl_meta): New variable.
9649 (Vmac_wheel_button_is_mouse_2): New variable.
9650 (init_mac_drag_n_drop): New function.
9651 (mac_do_receive_drag): New function.
9652 (mac_handle_service_event): New function.
9653 (init_service_handler): New function.
9654 (mac_to_emacs_modifiers): New function.
9655 (mac_event_to_emacs_modifiers): New function.
9656 (mac_get_mouse_btn): New function.
9657 (mac_convert_event_ref): New function.
9658 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
9659 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
9660 mac_get_mouse_btn.
9661 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
9662
9663 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
9664 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
9665 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
9666 TOOL_BAR_EVENT for MAC_OS as well.
9667 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
9668 as for WINDOWS_NT.
9669 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
9670
9671 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
9672
96732002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
9674
9675 * xdisp.c (forward_to_next_line_start): Fix a condition that
9676 lead to a newline being skipped.
9677
96782002-08-02 Andrew Choi <akochoi@shaw.ca>
9679
9680 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
9681
96822002-08-01 Richard M. Stallman <rms@gnu.org>
9683
9684 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
9685
96862002-07-31 Andrew Choi <akochoi@shaw.ca>
9687
9688 * macfns.c: #undef init_process before #define-ing it.
9689
9690 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
9691 HAVE_CARBON is defined.
9692
96932002-07-31 Richard M. Stallman <rms@gnu.org>
9694
9695 * xmenu.c (set_frame_menubar): First parse all submenus,
9696 then make widget_value trees from them.
9697 Don't allocate any widget_value objects
9698 until we are done with the parsing.
9699 (parse_single_submenu): New function.
9700 (digest_single_submenu): New function.
9701 (single_submenu): Function deleted, replaced by those two.
9702
97032002-07-30 Juanma Barranquero <lektu@terra.es>
9704
9705 * w32proc.c (syms_of_ntproc): Fix docstring of
9706 `w32-get-true-file-attributes'.
9707
97082002-07-28 Richard M. Stallman <rms@gnu.org>
9709
9710 * s/hpux8.h (HPUX8): Define this before including hpux.h.
9711 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
9712
9713 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
9714
9715 * keyboard.c (make_lispy_event):
9716 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
9717 Explicitly clear up_modifier in event->modifiers.
9718
97192002-07-27 Richard M. Stallman <rms@gnu.org>
9720
9721 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
9722
9723 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
9724 for bar cursor.
9725
97262002-07-26 Kenichi Handa <handa@etl.go.jp>
9727
9728 * coding.c (detect_coding_iso2022): While checking a byte sequence
9729 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
9730 it in the normal loop.
9731
97322002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
9733
9734 * xterm.c (expose_overlaps): New function.
9735 (expose_window): Use it to fix the display of overlapping rows.
9736
9737 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
9738
97392002-07-23 Ken Raeburn <raeburn@gnu.org>
9740
9741 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
9742 since it only depends on XUINT.
9743
9744 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
9745 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
9746 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
9747 Macros deleted.
3947677c 9748
77d1daf2
AS
9749 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
9750 its value over other approaches.
9751 * sysdep.c (start_of_data): Don't define the function if a macro
9752 form has been defined.
8a8e19a3 9753
048addec
JD
97542002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
9755
9756 * xdisp.c (redisplay_updating_p): New variable.
9757 (init_iterator): Don't free realized faces when
9758 redisplay_updating_p is set.
9759 (redisplay_internal): Set redisplay_updating_p while updating
9760 the display.
9761
97622002-07-23 Richard M. Stallman <rms@gnu.org>
9763
9764 * editfns.c (Fmessage): Treat "" like nil.
9765
97662002-07-23 Kenichi Handa <handa@etl.go.jp>
9767
9768 * xdisp.c (face_before_or_after_it_pos):
9769 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
9770
97712002-07-22 Juanma Barranquero <lektu@terra.es>
9772
9773 * callproc.c (init_callproc) [DOS_NT]:
9774 Initialize Vshared_game_score_directory to nil.
9775 (syms_of_callproc) [DOS_NT]: Likewise.
9776
97772002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
9778
9779 * xdisp.c (display_line): Replace an abort with xassert.
9780
97812002-07-21 Richard M. Stallman <rms@gnu.org>
9782
9783 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
9784 and END_UNCHANGED when setting buffer_unchanged_p.
9785 Use current_matrix_up_to_date_p to decide whether to use
9786 try_cursor_movement.
9787
9788 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
9789
9790 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
9791
9792 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
9793 Set to nil if dir does not exist.
9794 (syms_of_callproc): Init unconditionally and simply.
9795
9796 * buffer.c (Fbuffer_list): Doc fix.
9797
97982002-07-21 Ken Raeburn <raeburn@gnu.org>
9799
9800 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
9801
9802 * buffer.c (mmap_realloc): When shrinking, make sure number of
9803 pages to unmap is rounded towards zero.
9804
9805 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
9806 (XSETINT): Deleted.
9807
9808 * m/att3b.h (XINT): Don't define.
9809 (VALBITS, VALMASK, XTYPE): Deleted.
9810 (DATA_SEG_BITS): Define.
9811 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
9812 ARRAY_MARK_FLAG): Deleted.
9813 (DATA_SEG_BITS): Define.
9814 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
9815 (DATA_SEG_BITS): Define.
9816
98172002-07-20 Richard M. Stallman <rms@gnu.org>
9818
9819 * print.c (print_error_message): New args CONTEXT and CALLER.
9820 Calls changed.
9821
9822 * lisp.h (print_error_message): Declare new args.
9823
9824 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
9825 and CONTEXT to print_error_message, don't print them here.
9826 For a Quit, don't use Vsignaling_function.
9827 Call message_log_maybe_newline.
9828
9829 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
9830
98312002-07-20 Kim F. Storm <storm@cua.dk>
9832
9833 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
9834
98352002-07-19 Ken Raeburn <raeburn@gnu.org>
9836
9837 * bytecode.c (struct byte_stack): Pointers into byte string now
9838 point to const.
9839 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
9840 const.
9841 * charset.h (BCOPY_SHORT): Source pointer now points to const.
9842 * coding.c (encode_eol, detect_coding, detect_eol):
9843 (decode_coding, encode_coding, detect_coding_system):
9844 Source strings now treated as const.
9845 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
9846 modify Lisp string contents.
9847 * coding.h (decode_coding, encode_coding, detect_coding,
9848 detect_eol): Declarations updated.
9849 * composite.c (compose_chars_in_text): Treat Lisp string contents
9850 as const.
9851 * dispnew.c (safe_bcopy): Source pointer now points to const.
9852 * lisp.h (STRING_COPYIN): New macro.
9853 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
9854 (internal_with_output_to_temp_buffer): Declarations updated.
9855 * print.c (temp_output_buffer_setup):
9856 (internal_with_output_to_temp_buffer): Buffer name argument is now
9857 pointer to const.
9858 * sound.c (struct sound_device): Function pointer field "write"
9859 buffer argument now points to const.
9860 (vox_write): Buffer argument points to const.
9861 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
9862 contents as const.
9863 * sysdep.c (emacs_write): Buffer pointer now const.
9864 * term.c (encode_terminal_code): Buffer pointer now const.
9865 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
9866 (x_face_list_fonts, x_update_menu_appearance):
9867 (hash_string_case_insensitive): Treat Lisp string contents as const.
9868
98692002-07-19 Juanma Barranquero <lektu@terra.es>
9870
048addec
JD
9871 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
9872
9873 * fileio.c (syms_of_fileio): Likewise.
c62aec78
JB
9874 (Ffile_name_as_directory): Fix argument name in docstring.
9875 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
048addec
JD
9876
98772002-07-18 Richard M. Stallman <rms@gnu.org>
9878
9879 * data.c (Fdefalias): Doc fix.
9880
98812002-07-17 Dave Love <fx@gnu.org>
9882
9883 * intervals.h (text_property_stickiness): Use P_.
9884
9885 * ccl.c: Remove `emacs' conditionals.
9886 (ccl_backtrace_table): Fix size spec.
9887 (ccl_driver): Fix type errors.
9888
98892002-07-16 Ken Raeburn <raeburn@gnu.org>
9890
9891 * alloc.c (xstrdup, make_string, make_unibyte_string)
9892 (make_multibyte_string, build_string): String pointer args now
9893 point to const.
9894 * charset.c (find_charset_in_text, c_string_width):
9895 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
9896 * fileio.c (report_file_error):
9897 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
9898 (count_combining_before, count_combining_after, insert_1_both):
9899 (insert, insert_and_inherit, insert_string):
9900 (insert_before_markers, insert_before_markers_and_inherit):
9901 * lread.c (intern, oblookup, hash_string):
9902 * minibuf.c (temp_echo_area_glyphs):
9903 * search.c (fast_c_string_match_ignore_case):
9904 * sysdep.c (emacs_open, set_file_times):
9905 * xfaces.c (xstricmp):
9906 * xdisp.c (store_frame_title, string_char_and_length):
9907 (message_dolog, message2, message2_nolog, set_message): Likewise.
9908 (set_message_1): Cast message string argument to const pointer.
9909 * editfns.c (general_insert_function): Insertion function now
9910 takes pointer to const for input data.
9911 * charset.h (find_charset_in_text, c_string_width):
9912 (parse_str_as_multibyte): Declarations updated.
9913 * dispextern.h (xstricmp): Declaration updated.
9914 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
9915 (count_size_as_multibyte, count_combining_before):
9916 (count_combining_after, insert_1, insert_1_both, message_dolog):
9917 (insert, insert_and_inherit, insert_before_markers)
9918 (insert_before_markers_and_inherit, set_message, message2):
9919 (message2_dolog, build_string, make_string, make_unibyte_string):
9920 (make_multibyte_string, intern, oblookup, report_file_error):
9921 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
9922 (emacs_open, xstrdup): Declarations updated.
9923 * systime.h (set_file_times): Declaration updated.
9924
9925 * charset.c (find_charset_in_text, lisp_string_width): Use const
9926 for pointer to lisp string data.
9927 * charset.h (FETCH_STRING_CHAR_ADVANCE):
9928 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
9929 * coding.c (Ffind_coding_systems_region_interval):
9930 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
9931 (Fmake_directory_internal, Fdelete_directory):
9932 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
9933 * fontset.c (font_family_registry, fs_query_fontset):
9934 (list_fontsets):
9935 * frame.c (Fframe_parameter):
9936 * keyboard.c (cmd_error_internal):
9937 * keymap.c (Fdescribe_buffer_bindings):
9938 * lread.c (complete_filename_p, openp):
9939 * minibuf.c (Fminibuffer_complete_word):
9940 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
9941 (face_before_or_after_it_pos, next_element_from_string):
9942 (get_overlay_arrow_glyph_row, display_mode_element):
9943 (decode_mode_spec_coding):
9944 * xterm.c (same_x_server): Likewise.
9945
9946 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
9947 settings of non-existent fields.
9948
9949 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
9950 copy a lisp value.
9951
9952 * lread.c (Fintern_soft): Use string macros instead of
9953 Lisp_String fields.
9954 * keyboard.c (echo_char, parse_modifiers_uncached):
9955 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
9956 * textprop.c (validate_interval_range, interval_of): Likewise.
9957
9958 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
9959
9960 * charset.h (FETCH_STRING_CHAR_ADVANCE)
9961 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
9962 XSTRING()->size_byte.
9963
9964 * lisp.h (SDATA, SREF): Produce rvalue.
9965 (SSET): New macro.
9966 * alloc.c (make_event_array): Use SSET for storing into a string.
9967 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
9968 a string.
9969 * casefiddle.c (casify_object): Use SSET.
9970 * charset.h (FETCH_STRING_CHAR_ADVANCE)
9971 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
9972 address of string contents.
9973 * data.c (Faref): Use SDATA.
9974 (Faset): Use SDATA, SSET.
9975 * dired.c (directory_files_internal): Use SSET.
9976 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
9977 (Fread_file_name): Use SREF, SSET.
9978 * fns.c (concat): Use SSET.
9979 (concat, Fdelete): Use SDATA.
9980 * insdel.c (insert_from_string_1): Use SDATA.
9981 * keyboard.c (Fevent_convert_list): Use SREF.
9982 * lread.c (Fload): Use SDATA, SSET.
9983 * macfns.c (validate_x_resource_name): Use SSET.
9984 * process.c (status_message): Use SSET.
9985 * search.c (wordify): Use SDATA.
9986 (Freplace_match): Use SREF.
9987 * w32fns.c (validate_x_resource_name): Use SSET.
9988 * xfns.c (validate_x_resource_name): Use SSET.
9989 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
9990
99912002-07-16 Richard M. Stallman <rms@gnu.org>
9992
9993 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
9994
9995 * xdisp.c (reconsider_clip_changes):
9996 Don't test prevent_redisplay_optimizations_p.
9997 (redisplay_internal): Test prevent_redisplay_optimizations_p
9998 along with clip_changed in some cases.
9999 (try_window_id): Likewise.
10000 (redisplay_window): New local var buffer_unchanged_p.
10001
10002 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
10003
10004 * process.c (create_process): Test USG_SUBTTY_WORKS.
10005 (process_send_signal): Clean up handling of GID.
10006 Detect errors in ioctls meant to set GID.
10007
10008 * window.c (temp_output_buffer_show):
10009 Don't set prevent_redisplay_optimizations_p.
10010
100112002-07-15 Juanma Barranquero <lektu@terra.es>
10012
10013 * eval.c (Fdefvaralias): Add docstring argument.
10014
100152002-07-15 Ken Raeburn <raeburn@gnu.org>
10016
10017 * lisp.h (STRING_INTERVALS): Produce rvalue.
10018 (STRING_SET_INTERVALS): New macro.
10019 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
10020 * fns.c (Fstring_as_multibyte): Likewise.
10021 * intervals.c (balance_possible_root_interval, delete_interval)
10022 (create_root_interval, copy_intervals_to_string): Likewise.
10023 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
10024 instead of 0.
10025
100262002-07-14 Ken Raeburn <raeburn@gnu.org>
10027
10028 * lisp.h (STRING_SET_CHARS): New macro.
10029 (SCHARS, SBYTES): Produce rvalues.
10030 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
10031 * fns.c (concat): Likewise.
10032 * lread.c (read_vector): Likewise.
10033
10034 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
10035 (STRING_SET_UNIBYTE): New macro.
10036 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
10037 length of -1) changed to use STRING_SET_UNIBYTE.
10038 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
10039 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
10040 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
10041 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
10042 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
10043 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
10044 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
10045 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
10046 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
10047 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
10048 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
10049 STRING_BYTES or indirection changed to SCHARS, SBYTES,
10050 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
10051 unchanged for now.
10052
100532002-07-13 Kim F. Storm <storm@cua.dk>
10054
10055 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
10056
100572002-07-12 Richard M. Stallman <rms@gnu.org>
10058
10059 * fileio.c (Fwrite_region): Doc fix.
10060
10061 * print.c (print_error_message): Don't handle Vsignaling_function here.
10062
10063 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
10064 (command_loop_1): Avoid certain actions after memory-full error.
10065
10066 * eval.c (Fsignal): Don't call cancel_hourglass.
10067 For a memory-full error, don't call Vsignal_hook_function
10068 and don't set Vsignaling_function.
10069
10070 * process.c (process_send_signal): Add abort call.
10071
100722002-07-11 Markus Rost <rost@math.ohio-state.edu>
10073
10074 * keymap.c (Fkey_binding): Fix typo.
10075
100762002-07-11 Richard M. Stallman <rms@gnu.org>
10077
10078 * alloc.c (Vmemory_full): New variable.
10079 (Vmemory_signal_data): Renamed from memory_signal_data.
10080 Uses changed.
10081 (syms_of_alloc): Defvar them.
10082 (memory_full, buffer_memory_full): Set Vmemory_full.
10083
10084 * lisp.h (Vmemory_full): Add declaration.
10085 (current_column, indented_beyond_p): Change declaration.
10086
10087 * indent.c (last_known_column): Declare as double, not float.
10088 (current_column, current_column_1, string_display_width)
10089 (position_indentation): Return `double'.
10090 (indented_beyond_p): Arg `column' is `double'. Callers changed.
10091
10092 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
10093 (back_to_previous_visible_line_start)
10094 (reseat_at_next_visible_line_start, next_element_from_buffer):
10095 Use `double', not `float', when calling indented_beyond_p.
10096
10097 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
10098
10099 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
10100
101012002-07-11 Juanma Barranquero <lektu@terra.es>
10102
10103 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
f9711de4
JB
10104 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
10105 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
10106 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
10107 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
10108 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
048addec
JD
10109
101102002-07-10 Juanma Barranquero <lektu@terra.es>
10111
d814862a
JB
10112 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
10113 All callers changed.
048addec
JD
10114
101152002-07-09 Stefan Monnier <monnier@cs.yale.edu>
10116
10117 * data.c (Fdefalias): Add an optional `docstring' argument.
10118 (set_internal, Fsetq_default): Use XCAR/XCDR.
10119
10120 * composite.c (HASH_VALUE, HASH_KEY):
10121 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
10122
101232002-07-09 Kenichi Handa <handa@etl.go.jp>
10124
10125 * callproc.c (Fcall_process): Fix previous change.
10126
101272002-07-07 Stefan Monnier <monnier@cs.yale.edu>
10128
10129 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
10130 Add support for hash-tables.
10131 (Ftry_completion): Return t even if the string appears multiple times.
10132
10133 * fns.c (Fnconc): Use XCDR.
10134 (Fprovide): Use CONSP and XCDR.
10135 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
10136 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
10137 (Fmake_hash_table): Accept `:size nil'.
10138 (Fmakehash): Delete: moved to subr.el.
10139 (syms_of_fns): Don't defsubr makehash.
10140
10141 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
10142 (HASH_TABLE_SIZE): Move from fns.c.
10143
101442002-07-07 Richard M. Stallman <rms@gnu.org>
10145
10146 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
10147 Instead just return 0 when there is something to be done.
10148 (try_scrolling): If make_cursor_line_fully_visible returns 0,
10149 retry scrolling as if cursor were off the bottom.
10150 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
10151 return CURSOR_MOVEMENT_MUST_SCROLL.
10152 (redisplay_window): If make_cursor_line_fully_visible returns 0,
10153 go to try_to_scroll.
10154
10155 * buffer.c (Fbuffer_local_value): Store current value into its binding
10156 so we get the up-to-date value for the binding that is loaded.
10157
10158 * eval.c (Fdefmacro): Doc fix.
10159
101602002-07-05 Dave Love <fx@gnu.org>
10161
10162 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
10163 correctly.
10164
10165 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
10166 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
10167 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
10168 CCL_LookupCharConstTbl.
10169 (syms_of_ccl): Defvar translation-hash-table-vector.
10170
101712002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10172
10173 * xdisp.c: Remove unused variable `face'.
10174
101752002-07-04 Juanma Barranquero <lektu@terra.es>
10176
10177 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
10178 obsolescence information.
10179
101802002-07-03 Andrew Choi <akochoi@shaw.ca>
10181
10182 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
10183 pattern. Search cache first.
10184 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
10185 for Japanese font.
10186 (XLoadQueryFont): Use it.
10187
101882002-07-02 Richard M. Stallman <rms@gnu.org>
10189
10190 * keymap.c (Fdefine_key): Doc fix.
10191
10192 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
10193
101942002-07-02 Juanma Barranquero <lektu@terra.es>
10195
10196 * keymap.c (syms_of_keymap): Fix typo.
10197
101982002-07-01 Andrew Choi <akochoi@shaw.ca>
10199
10200 * s/darwin.h: Define POSIX_SIGNALS.
10201
10202 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
10203 and FSRefMakePath to convert FSSpec returned with Apple Event to
10204 Posix pathname.
10205 (mac_initialize) [TARGET_API_MAC_CARBON]:
10206 Call init_required_apple_events and disable the `Quit' menu item
10207 provided automatically by the Carbon Toolbox.
10208
102092002-07-01 Dave Love <fx@gnu.org>
10210
10211 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
10212 for K&R.
10213
10214 * xterm.c: Fix prototype for K&R.
10215
10216 * term.c (costs_set): Declare static, non-initialized for pcc.
10217
102182002-07-01 Richard M. Stallman <rms@gnu.org>
10219
10220 * keyboard.c (timer_last_idleness_start_time): New variable.
10221 (timer_start_idle): Set that.
10222 (read_key_sequence): Use that to reset timer_idleness_start_time
10223 to previous value.
10224
10225 * window.c (Frecenter): With arg, set optional_new_start.
10226
10227 * xdisp.c (redisplay_internal): Make optional_new_start really work.
10228
10229 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
10230 buffer for completion.
10231
102322002-06-29 Ken Raeburn <raeburn@gnu.org>
10233
10234 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
10235
102362002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10237
10238 * keyboard.c (readable_filtered_events): New function that filters
10239 FOCUS_IN_EVENT depending on parameter.
10240 (readable_events): Calls readable_filtered_events, not filtering
10241 FOCUS_IN_EVENT.
10242 (get_filtered_input_pending): New function, filtering parameter passed
10243 to readable_filtered_events.
10244 (get_input_pending): Calls get_filtered_input_pending, not filtering
10245 FOCUS_IN_EVENT.
10246 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
10247 FOCUS_IN_EVENT.
10248
10249 * xterm.h (struct x_output): Add focus_state.
10250
10251 * xterm.c (x_focus_changed): New function.
10252 (x_detect_focus_change): New function.
10253 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
10254 EnterNotify and LeaveNotify to track X focus changes.
10255
102562002-06-28 Andreas Schwab <schwab@suse.de>
10257
10258 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
10259
102602002-06-27 Kim F. Storm <storm@cua.dk>
10261
10262 * xdisp.c: (mode_line_string_list, mode_line_string_face)
10263 (mode_line_string_face_prop): New variables.
10264 (store_mode_line_string): New function.
10265 (display_mode_element): Use store_mode_line_string to
10266 add mode-line string elements to mode_line_string_list
10267 when mode_line_string_list is non-nil.
10268 (Fformat_mode_line): Now returns propertized string by
10269 default. New arg NO-PROPS to ignore properties.
10270 (decode_mode_spec): Only add two dashes for %- in propertized
10271 mode-line string.
10272 (syms_of_xdisp): Init and staticpro mode_line_string_list.
10273
102742002-06-27 Stefan Monnier <monnier@cs.yale.edu>
10275
10276 * minibuf.c (minibuffer_completion_contents): Add return type.
10277
102782002-06-27 Juanma Barranquero <lektu@terra.es>
10279
10280 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
10281
102822002-06-26 Juanma Barranquero <lektu@terra.es>
10283
10284 * fileio.c (read_file_name_cleanup): Add missing return.
10285
102862002-06-26 Richard M. Stallman <rms@gnu.org>
10287
10288 * window.c (Frecenter): Don't set force_start flag.
10289
10290 * minibuf.c (do_completion, Fminibuffer_complete_word)
10291 (Fminibuffer_completion_help): Complete just the text before point.
10292 (minibuffer_completion_contents): New function.
10293
10294 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
10295
10296 * frame.c (frames_bury_buffer): Function deleted.
10297
102982002-06-25 Miles Bader <miles@gnu.org>
10299
10300 * callint.c (Fcall_interactively): When checking to see if doprnt hit
10301 the end of callint_message, allow for a terminating '\0'.
10302
103032002-06-24 Juanma Barranquero <lektu@terra.es>
10304
10305 * w32select.c: Include composite.h
10306
10307 * w16select.c: Likewise.
10308
103092002-06-24 Kenichi Handa <handa@etl.go.jp>
10310
10311 * callproc.c (Fcall_process): If code detection is necessary,
10312 call detect_coding directly here.
10313
10314 * coding.c (detect_eol): Preserve coding->cmp_data.
10315
10316 * w16select.c (Fw16_get_clipboard_data):
10317 * w32fns.c (w32_to_x_font):
10318 * w32select.c (Fw32_get_clipboard_data):
10319 * xselect.c (selection_data_to_lisp_data):
10320 * xterm.c (XTread_socket): Disable composition handling.
10321
103222002-06-24 Stefan Monnier <monnier@cs.yale.edu>
10323
10324 * print.c (temp_output_buffer_setup): Kill all local variables.
10325
103262002-06-22 Stefan Monnier <monnier@cs.yale.edu>
10327
10328 * lread.c (Fread): Remove redundant and imprecise declaration.
10329
10330 * xfns.c (check_x_display_info): Use check_x_frame.
10331
10332 * .gdbinit (xprintsym): Use the new `xname' field.
10333 (xsymbol): Use it.
10334
103352002-06-22 Jason Rumney <jasonr@gnu.org>
10336
10337 * w32fns.c (file_dialog_callback): New function.
10338 (Fx_file_dialog): Allow selecting directories as well as files.
10339
103402002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10341
10342 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
f63fd14e 10343 OpenBSD. Add support for mipseb-*-netbsd* machines.
048addec
JD
10344
103452002-06-17 Andrew Choi <akochoi@shaw.ca>
10346
10347 * macterm.c (mac_scroll_area): Set foreground and backcolor to
10348 black and white before scrolling. Restore frame background and
10349 foreground color after scrolling.
10350 (do_window_update): Call XClearWindow before calling expose_frame.
10351 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
10352 FRAME_FOREGROUND_PIXEL of frame.
10353
10354 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
10355 test Mac command key as <ALT> key.
10356
103572002-06-17 Stefan Monnier <monnier@cs.yale.edu>
10358
10359 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
10360
10361 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
10362 Lookup keys in function-key-map immediately so that key-translation-map
10363 can be applied earlier.
10364 Remove function_key_possible and key_translation_possible, replaced
10365 by checking `keytran_start < t'.
10366
10367 * .gdbinit (xsymbol): Use the new `xname' field.
10368
103692002-06-17 Andrew Choi <akochoi@shaw.ca>
10370
10371 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
10372 test Mac command key as <ALT> key.
10373
10374 * mac.c (do_applescript): Call initialize_applescript if necessary
10375 when first called. Dispose of result_desc only when there is no error.
10376 (Fdo_applescript): Use %d format specifier instead of %ld.
10377
103782002-06-16 Andrew Choi <akochoi@shaw.ca>
10379
10380 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
10381 of FrontWindow for cases keyDown and autoKey.
10382
10383 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
10384 Vdefault_fontset to Monaco with mac-roman coding.
10385
10386 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
10387 init_process before and after inclusion of Carbon/Carbon.h, resp.
10388
10389 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
10390 cursor_gc.
10391 (add_font_name_table_entry): New function.
10392 (init_font_name_table): Use add_font_name_table_entry; add italic,
10393 bold, and bold-italic entries for truetype fonts.
10394
10395 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
10396 for Mac too.
10397 (try_font_list) [MAC_OS]: If no font matches given registry, try
10398 fonts with any registry matching face_family.
10399 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
10400
10401 * s/darwin.h: If autoconf detects the Ncurses library, define
10402 LIBS_TERMCAP to -lncurses to use it.
10403
104042002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
10405
10406 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
10407
104082002-06-15 Richard M. Stallman <rms@gnu.org>
10409
10410 * window.c (Fset_window_configuration): Explicitly preserve
10411 the point value that new_current_buffer had at the start.
10412
104132002-06-14 Juanma Barranquero <lektu@terra.es>
10414
10415 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
10416 Fix typos.
10417
104182002-06-14 Kim F. Storm <storm@cua.dk>
10419
10420 * insdel.c (insert_1_both, insert_from_string_1)
10421 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
10422 insert happened in the end_unchanged region. Otherwise, the
10423 redisplay may be confused and duplicate the last line in the
10424 buffer [seen after save-buffer when require-final-newline==t].
10425
104262002-06-13 Jason Rumney <jasonr@gnu.org>
10427
10428 * w32.c (init_environment): Remove EMACSLOCKDIR.
10429 (stat): Swap _S_IFDIR and _S_IFREG.
10430
104312002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10432
10433 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
10434 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
10435 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
10436 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
10437 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
10438 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
10439 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
10440 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
10441 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
10442 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
10443 SELECTION_REQUEST_EVENT, selection_clear_event to
10444 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
10445 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
10446 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
10447 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
10448 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
10449 no_event to NO_EVENT.
10450
104512002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10452
10453 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
10454
104552002-06-12 Stefan Monnier <monnier@cs.yale.edu>
10456
10457 * intervals.c (textget): Don't forget to `return'.
10458 (lookup_char_property): Use XCAR/XCDR.
10459
104602002-06-12 Juanma Barranquero <lektu@terra.es>
10461
10462 * xdisp.c (Fformat_mode_line): Fix typo.
10463
104642002-06-12 Kim F. Storm <storm@cua.dk>
10465
10466 * xdisp.c (Fformat_mode_line): New function.
10467 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
10468 (store_frame_title_char, store_frame_title): Use unconditionally.
10469 (init_xdisp): Defsubr Fformat_mode_line.
10470 Initialize frame_title_buf etc. unconditionally.
10471
104722002-06-11 Stefan Monnier <monnier@cs.yale.edu>
10473
10474 * keyboard.c (read_key_sequence):
10475 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
10476 things through those maps after downcasing events.
10477 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
10478 applies after function-key-map.
10479 Make sure that keytran can be done in the middle in the sequence.
10480 Be careful not to throw away events past the one we downcase.
10481
10482 * lread.c (read_integer): Remove unused var `tem'.
10483 (read1): Fix int/Lisp_Object mixup.
10484
10485 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
10486
104872002-06-11 Richard M. Stallman <rms@gnu.org>
10488
10489 * keyboard.c (readable_events): Ignore any number of
10490 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
10491
104922002-06-09 Miles Bader <miles@gnu.org>
10493
10494 * xfaces.c (Ftty_supports_face_attributes_p): New function.
10495 (parse_rgb_list, tty_lookup_color): New functions.
10496 (tty_defined_color): Use `tty_lookup_color' to do all the work.
10497 (color_distance, Fcolor_distance): New functions.
10498 (TTY_SAME_COLOR_THRESHOLD): New macro.
10499 (Qtty_color_standard_values): New variable.
10500 (syms_of_xfaces): Initialize new vars & functions.
10501
105022002-06-08 Colin Walters <walters@verbum.org>
10503
10504 * textprop.c (Vchar_property_alias_alist): New variable.
10505 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
10506
10507 * intervals.c (lookup_char_property): New function for looking up
10508 overlay and text properties, created from textget.
10509 (textget): Use it.
10510
10511 * intervals.h (lookup_char_property): Declare.
10512 (Vchar_property_alias_alist): Declare.
10513
10514 * buffer.c (Foverlay_get): Use lookup_char_property.
10515
105162002-06-07 Sam Steingold <sds@gnu.org>
10517
10518 * xselect.c (lisp_data_to_selection_data): Fix last change:
10519 *data_ret is not a Lisp string, while unibyte_string is.
10520
105212002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
10522
10523 * xselect.c (lisp_data_to_selection_data): Fix last change:
10524 set size_ret.
10525
105262002-06-07 Andreas Schwab <schwab@suse.de>
10527
10528 * m/amdx86-64.h: New file.
10529
105302002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
10531
10532 * fns.c (Fstring_make_unibyte): Doc fix.
10533
10534 * xselect.c (lisp_data_to_selection_data): If the requested type
10535 is STRING, call string_make_unibyte to encode the selected text
10536 as a string.
10537
10538 * window.c (Fset_window_hscroll): Doc fix.
10539
105402002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10541
10542 * fileio.c (choose_write_coding_system):
10543 Call select-safe-coding-system properly.
10544
105452002-06-03 Richard M. Stallman <rms@gnu.org>
10546
10547 * xdisp.c (message_with_string): Error if STRING is not a string.
10548
10549 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
10550
10551 * fileio.c (choose_write_coding_system): Pass FILE arg to
10552 Vselect_safe_coding_system_function.
10553
105542002-06-03 Ken Raeburn <raeburn@gnu.org>
10555
10556 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
10557
105582002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
10559
10560 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
10561 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
10562 * keymap.c (describe_command): Likewise.
10563 * minibuf.c (read_minibuf): Likewise.
10564
10565 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
10566 Cast `current_column' return value to int.
10567 (back_to_previous_visible_line_start)
10568 (reseat_at_next_visible_line_start, next_element_from_buffer):
10569 Cast `indented_beyond_p' 3rd arg to float.
10570
10571 * indent.c (last_known_column): Now a float.
10572 (current_column_1, position_indentation, current_column)
10573 (string_display_width): Return float.
10574 (Fcurrent_column): Cast `current_column' return value to int.
10575 (Fcurrent_indentation): Cast `position_indentation' retval to int.
10576 (indented_beyond_p): Third arg now a float.
10577 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
10578
10579 * lisp.h (current_column): Now returns float.
10580 (indented_beyond_p): 3rd arg now a float.
10581
105822002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
10583
10584 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
10585 is Qcompound_text_with_extensions.
10586
10587 * xselect.c (lisp_data_to_selection_data): Always set selection
10588 type as string if x_encode_text returns streingp non-NULL.
10589
10590 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
10591
105922002-05-30 Richard M. Stallman <rms@gnu.org>
10593
10594 * window.c (Fset_window_configuration): Correct the handling
10595 of point in current buffer, to work with multiple windows.
10596
105972002-05-29 Colin Walters <walters@verbum.org>
10598
10599 * lread.c (Fread_from_string): Don't depend on order of evaluation
10600 for C function parameters.
10601
106022002-05-28 Richard M. Stallman <rms@gnu.org>
10603
10604 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
10605 way for blinked-off state and for a nonselected window.
10606
10607 * window.c (window_scroll_pixel_based): Don't call Fbolp;
10608 instead, see if the new start pos is at beginning of line.
10609
10610 * fileio.c (Fwrite_region): If START is a string, don't
10611 make any annotations.
10612
10613 * eval.c (syms_of_eval): Doc fix.
10614
106152002-05-28 Colin Walters <walters@debian.org>
10616
10617 * emacs.c (USAGE1): Add --no-splash.
10618 (standard_args): Ditto.
10619
106202002-05-28 Colin Walters <walters@gnu.org>
10621
10622 * lread.c (readchar_count): New variable.
10623 (readchar): Increment it.
10624 (unreadchar): Decrement it.
10625 (read_multibyte): Decrement it.
10626 (Vread_with_symbol_positions): New variable.
10627 (Vread_symbol_positions_list): New variable.
10628 (read_internal_start): New function, created from Fread and
10629 Fread_from_string. Handle Vread_symbol_positions_list and
10630 Vread_with_symbol_positions.
10631 (readevalloop, Fread, Fread_from_string): Use it.
10632 (read1): Use readchar_count to add symbol positions to
10633 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
10634 (syms_of_lread): DEFVAR_LISP and initialize them.
10635
10636 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
10637 (substitute_object_recurse, substitute_object_in_subtree)
10638 (substitute_in_interval): Prototype.
10639 (read_multibyte): Return c if it's less than zero.
10640
106412002-05-28 Kim F. Storm <storm@cua.dk>
10642
10643 * fileio.c (Fread_file_name_internal): Added brute-force
10644 speed up for using predicate file-directory-p.
10645
106462002-05-28 Kim F. Storm <storm@cua.dk>
10647
10648 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
10649 New variables.
10650 (syms_of_fileio): DEFVAR_LISP them.
10651 (read_file_name_cleanup): New unwind function.
10652 (Fread_file_name_internal): Only return completions satifying
10653 Vread_file_name_predicate. Temporarily unwind protect and rebind
10654 default-directory while checking completions against the predicate.
10655 (Fread_file_name): Added PREDICATE argument. Specbind it to
10656 Vread_file_name_predicate during completion.
10657 Call Vread_file_name_function to read the file name if non-nil.
10658
10659 * lisp.h (Fread_file_name): Now has 6 args.
10660
10661 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
10662 predicate for Fread_file_name when reading directory name.
10663 Supply Qnil for predicate in other calls to Fread_file_name.
10664
106652002-05-26 Miles Bader <miles@gnu.org>
10666
10667 * term.c (tty_capable_p): New function.
10668 * dispextern.h (tty_capable_p): New function declaration.
10669 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
10670 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
10671
106722002-05-23 Stefan Monnier <monnier@cs.yale.edu>
10673
10674 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
10675 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
10676 (Vwrite_region_annotate_functions): Docstring fix.
10677
106782002-05-23 Kim F. Storm <storm@cua.dk>
10679
10680 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
10681 phys_cursor's hpos is overwritten. This is still not completely
10682 correct, as it doesn't really make sense to use hpos at all to
10683 get the cursor glyph (as that is relative to the width of the
10684 characters on the line, which may have changed during the update).
10685
106862002-05-22 Jason Rumney <jasonr@gnu.org>
10687
10688 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
10689 Lisp_Object.
10690 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
10691 Use modified enumfont_t struct.
10692
10693 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
10694
10695 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
10696 Handle the `hbar' cursor type.
10697 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
10698
10699 * w32fns.c (Qhbar): New variable.
10700 (x_specified_cursor_type): Use it.
10701
107022002-05-21 Ken Raeburn <raeburn@gnu.org>
10703
10704 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
10705 now, when the address is needed.
10706
107072002-05-21 Colin Walters <walters@gnu.org>
10708
10709 * Makefile.in (shortlisp): Add font-core.el.
10710
107112002-05-20 Richard M. Stallman <rms@gnu.org>
10712
10713 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
10714
10715 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
10716 equivalent key bindings here.
10717
107182002-05-20 Ken Raeburn <raeburn@gnu.org>
10719
10720 Change symbol structure to contain a lisp object for the symbol
10721 name:
10722 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
10723 object field named "xname".
10724 (SYMBOL_NAME): New macro.
10725 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
10726 name field.
10727 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
10728 (mark_object, gc_sweep): Use symbol xname field and XSTRING
10729 instead of name field.
10730 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
10731 SYMBOL_NAME instead of XSYMBOL and name field.
10732 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
10733 instead of XSYMBOL and name field.
10734 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
10735 and SYMBOL_NAME instead of XSYMBOL and name field.
10736 * coding.c (Fread_coding_system, code_convert_region1)
10737 (code_convert_string1, code_convert_string_norecord)
10738 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
10739 XSYMBOL and name field.
10740 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
10741 (Fmake_variable_buffer_local, Fmake_local_variable)
10742 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
10743 of XSYMBOL and name field.
10744 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
10745 XSYMBOL and name field.
10746 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
10747 instead of XSYMBOL and name field.
10748 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
10749 XSYMBOL and name field.
10750 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
10751 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10752 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
10753 instead of XSYMBOL and name field.
10754 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
10755 (parse_modifiers, apply_modifiers, Fevent_convert_list)
10756 (parse_solitary_modifier, Fexecute_extended_command):
10757 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10758 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
10759 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
10760 of XSYMBOL and name field.
10761 (describe_command, describe_translation): Use SYMBOL_NAME and
10762 assignment instead of XSYMBOL and name field and XSETSTRING.
10763 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
10764 instead of XSYMBOL and name field.
10765 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
10766 name field and XSETSTRING.
10767 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
10768 of XSYMBOL and name field.
10769 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
10770 assignment instead of XSYMBOL and name field and XSETSTRING.
10771 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
10772 XSTRING instead of XSYMBOL and name field.
10773 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
10774 and XSTRING instead of XSYMBOL and name field.
10775 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
10776 and XSTRING instead of XSYMBOL and name field.
10777 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
10778 XSTRING instead of XSYMBOL and name field.
10779 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
10780 of XSYMBOL and name field.
10781 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
10782 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10783
107842002-05-19 Ken Raeburn <raeburn@gnu.org>
10785
10786 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
10787 and XCDR real rvalues in most configurations.
10788
10789 * buffer.c (fix_overlays_in_range, fix_overlays_before):
10790 Don't take the address of the cdr part of a cons cell; instead, track
10791 the parent cell and call XSETCDR, or set the variable for the head
10792 of the list if we haven't started down the list yet.
10793
107942002-05-19 Richard M. Stallman <rms@gnu.org>
10795
10796 * doc.c (reread_doc_file): Don't ask for confirmation.
10797
107982002-05-18 Jason Rumney <jasonr@gnu.org>
10799
10800 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
10801 (xbm_load_image): Use it.
10802 (xbm_load): Ditto.
10803 (xbm_read_bitmap_data): Reverted to xfns.c version.
10804 From David Ponce <david@dponce.com>.
10805
108062002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
10807
10808 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
10809 2.02 and later.
10810
108112002-05-16 Juanma Barranquero <lektu@terra.es>
10812
10813 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
10814
108152002-05-15 Stefan Monnier <monnier@cs.yale.edu>
10816
10817 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
10818 meaningful test.
10819 (read_char_minibuf_menu_prompt): Fix typo.
10820
108212002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
10822
10823 * eval.c (Fcommandp): Doc fix.
10824
108252002-05-13 Stefan Monnier <monnier@cs.yale.edu>
10826
10827 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
10828 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
10829 (Fset_keymap_parent): Gcpro a bit more.
10830 (access_keymap): Gcpro around meta_map call and around the main loop.
10831 (get_keyelt): Gcpro when following indirect references.
10832 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
10833 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
10834 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
10835 Remove useless ad-hoc remap code.
10836
108372002-05-13 Richard M. Stallman <rms@gnu.org>
10838
10839 * search.c (search_buffer): Give up boyer moore search if inverse
10840 translation change charset_base.
10841
108422002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
10843
10844 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
10845 characters is carried over from the previous block of text, adjust
10846 coding->produced to account for the extra character.
10847
108482002-05-11 Andreas Schwab <schwab@suse.de>
10849
10850 * coding.c (intersection): Keep the elements of the returned list
10851 in the same order as in the first list.
10852
108532002-05-11 Kim F. Storm <storm@cua.dk>
10854
10855 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
10856 only update cmm_size if realloc actually succeeds.
10857 Testing with initial size of 2 elements revealed that using
10858 realloc on GNU/Linux would cause a random trap in xmalloc
10859 later on, so I rewrote the code to use malloc/bcopy/free instead
10860 of realloc.
10861
108622002-05-10 Jason Rumney <jasonr@gnu.org>
10863
10864 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
10865
108662002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
10867
10868 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
10869 parens, to ensure correct evaluation order.
10870
108712002-05-10 Kim F. Storm <storm@cua.dk>
10872
10873 * keymap.c (Vemulation_mode_map_alists): New variable.
10874 (syms_of_keymap): DEFVAR_LISP it.
10875 (current_minor_maps): Process keymap alists in that list before
10876 minor-mode-overriding-map-alist and minor-mode-map-alist.
10877
108782002-05-09 Richard M. Stallman <rms@gnu.org>
10879
10880 * search.c (Freplace_match): Doc fix.
10881
108822002-05-09 Kim F. Storm <storm@cua.dk>
10883
10884 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
10885 Enlarge cursor rectangle drawn around image with non-zero relief.
10886
10887 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
10888 Enlarge cursor rectangle drawn around image with non-zero relief.
10889
10890 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
10891 Enlarge cursor rectangle drawn around image with non-zero relief.
10892
108932002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
10894
10895 * xselect.c (lisp_data_to_selection_data): Don't set selection
10896 type if comes from the Lisp object's car. If the selection
10897 contains a pure ASCII text, always return QSTRING as its type.
10898
108992002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10900
10901 * mac.c (mac-cut-function): Doc fix.
10902
109032002-05-05 Richard M. Stallman <rms@gnu.org>
10904
10905 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
10906
109072002-05-04 Jason Rumney <jasonr@gnu.org>
10908
10909 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
10910 for event-click-count.
10911
10912 * process.c (init_process): Only add server subfeature if we can
10913 use non-blocking I/O.
10914
109152002-05-04 Andrew Choi <akochoi@shaw.ca>
10916
10917 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
10918 repeatedly.
10919
109202002-05-03 Jason Rumney <jasonr@gnu.org>
10921
10922 * process.c (Fmake_network_process): Only support server sockets
10923 when we can make them non-blocking.
10924
10925 * s/ms-w32.h (HAVE_SELECT): Define.
10926
10927 * w32.h (FILE_NDELAY): New flag.
10928
10929 * w32.c (sys_getpeername, fcntl): New functions.
10930 (_sys_read_ahead): Temporarily block on non-blocking sockets.
10931
10932 * w32proc.c: include sys/file.h.
10933
109342002-05-03 Colin Walters <walters@verbum.org>
10935
10936 * callproc.c (Vgame_score_directory): Renamed to
10937 Vshared_game_score_directory.
10938
109392002-04-30 Richard M. Stallman <rms@gnu.org>
10940
10941 * s/gnu.h [emacs]: Include stdio.h.
10942 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
10943
10944 * eval.c (do_autoload): Error if called while preparing to dump.
10945
10946 * fns.c (Frequire): Error if need to load while preparing to dump.
10947
109482002-04-28 Colin Walters <walters@verbum.org>
10949
10950 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
10951 Default to "~/.emacs.d/games".
10952
109532002-04-29 Stefan Monnier <monnier@cs.yale.edu>
10954
10955 * lread.c (openp): Change arg exec_only to predicate.
10956 (build_load_history): Use XCAR/XCDR.
10957 (Flocate_file_internal): New fun.
10958 (syms_of_lread): Defsubr it.
10959 (Fload): Update call to openp.
10960
10961 * lisp.h (openp): Update prototype.
10962
10963 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
10964 * w32proc.c (sys_spawnve):
10965 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
10966 * w32.c (check_windows_init_file):
10967 * sound.c (Fplay_sound_internal):
10968 * process.c (Fstart_process):
10969 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
10970 * mac.c (run_mac_command):
10971 * emacs.c (init_cmdargs):
10972 * callproc.c (Fcall_process): Update call to openp.
10973
10974 * textprop.c (remove_properties): Don't use XCAR without CONSP.
10975
10976 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
10977
109782002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10979
10980 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
10981 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
10982
109832002-04-28 Richard M. Stallman <rms@gnu.org>
10984
10985 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
10986
10987 * eval.c (Fcommandp): New arg for_call_interactively.
10988 * lisp.h (Fcommandp): Declare new arg.
10989
109902002-04-28 Jason Rumney <jasonr@gnu.org>
10991
10992 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
10993
10994 * w32.c (stat, fstat): Use file index information to generate
10995 inodes for directories where available.
10996
109972002-04-26 Andrew Choi <akochoi@shaw.ca>
10998
10999 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
11000 [HAVE_CARBON]: Include Mac object files.
11001
11002 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
11003 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
11004 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
11005 MAC_OSX, and MAC_OS instead of macintosh.
11006
11007 * editfns.c [MAC_OS8]: Include stdio.h.
11008
11009 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
11010
11011 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
11012 Apple Monaco.
11013
11014 * process.c: Declare QCfamily and QCfilter as extern.
11015 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
11016 calling select.
11017
11018 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
11019
11020 * tparam.c [MAC_OSX]: Don't define BC and UP.
11021
11022 * config.in [HAVE_CARBON]: Add.
11023
11024 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
11025 Move here from mac/src and mac/inc.
11026
11027 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
11028
110292002-04-26 Gerd Moellmann <gerd@gnu.org>
11030
11031 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
11032 Compute phys_cursor_width from the x position returned
11033 by x_draw_glyhs, which is cheaper.
11034 (x_display_and_set_cursor): Compute the buffer-local value
11035 of `cursor-in-non-selected-windows' only when needed.
11036
110372002-04-25 Gerd Moellmann <gerd@gnu.org>
11038
11039 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
11040 cursor on a stretch glyph has a width that depends on
11041 x_stretch_cursor_p.
11042
110432002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11044
11045 * abbrev.c (abbrev-start-location): Doc fix.
11046
11047 * indent.c (Fvertical_motion): Fix last change.
11048
110492002-04-25 Gerd Moellmann <gerd@gnu.org>
11050
11051 * indent.c (Fvertical_motion): Move to the start of the line
11052 containing PT before moving up or down.
11053
110542002-04-24 Gerd Moellmann <gerd@gnu.org>
11055
11056 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
11057 case of writing a whole row, more or less analogous to the case of
11058 writing only parts of a row.
11059
11060 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
11061 0 for NO_CURSOR.
11062
11063 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
11064
110652002-04-23 Colin Walters <walters@verbum.org>
11066
11067 * buffer.c (syms_of_buffer): Doc fix.
11068
110692002-04-23 Gerd Moellmann <gerd@gnu.org>
11070
11071 * xterm.c (notice_overwritten_cursor): Handle the special case
11072 of the cursor being in the first blank non-text line at the
11073 end of a window.
11074
11075 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
11076 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
11077 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
11078 bar cursors only, to make phys_cursor_width contain what its name
11079 suggests.
11080 (notice_overwritten_cursor): Consider the cursor image erased if
11081 the output area intersects the cursor image in y-direction.
11082
110832002-04-23 Simon Marshall <simon@gnu.org>
11084
11085 * xfns.c (x_set_mouse_color): Change default for cross_cursor
11086 to XC_hand2.
11087
110882002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11089
11090 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
11091
110922002-04-22 Kim F. Storm <storm@cua.dk>
11093
11094 * textprop.c (remove_properties): Fixed trap for malformed plist.
11095
110962002-04-22 Richard M. Stallman <rms@gnu.org>
11097
11098 * cmds.c (Fend_of_line): Handle intangible text in mid line.
11099
11100 * window.c (make_window): Initialize height_fixed_p,
11101 last_cursor_off_p, and p->cursor_off_p slots.
11102
111032002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11104
11105 * fns.c (use-dialog-box): Doc fix.
11106
111072002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11108
11109 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
11110 variables `row', `i' and `area'.
11111 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
11112 toolkit library.
11113
111142002-04-19 Stefan Monnier <monnier@cs.yale.edu>
11115
11116 * xfaces.c (clear_font_table): Don't free the default font of
11117 a frame even if it's on another display.
11118 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
11119 that could be Qt.
11120
111212002-04-19 Juanma Barranquero <lektu@terra.es>
11122
11123 * indent.c (Fmove_to_column): Remove unused local variable
11124 `next_boundary_byte'.
11125 (current_column_1): Likewise.
11126
111272002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
11128
11129 * msdos.c (Qhbar): New variable.
11130 (syms_of_msdos): Intern and staticpro it.
11131 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
11132 cursor type.
11133
111342002-04-19 Dave Lambert <dlambert@acm.org>
11135
11136 Theses change implement an underscore-like (`hbar') cursor.
11137
11138 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
11139
11140 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
11141 Handle the `hbar' cursor type.
11142 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
11143
11144 * xfns.c (Qhbar): New variable.
11145 (syms_of_xfns): Intern and staticpro it.
11146 (x_specified_cursor_type): Handle `hbar' cursor.
11147
11148 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
11149 not defined.
11150
111512002-04-18 Richard M. Stallman <rms@gnu.org>
11152
11153 * textprop.c (remove_properties): New arg LIST allows scanning
11154 either a list or a plist.
11155 (interval_has_some_properties_list): New function, like
11156 interval_has_some_properties using list instead of plist.
11157 All callers changed.
11158 (Fremove_list_of_text_properties): New function.
11159 (syms_of_textprop): Defsubr it.
11160
111612002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
11162
11163 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
11164
111652002-04-17 Juanma Barranquero <lektu@terra.es>
11166
11167 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
11168
111692002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
11170
11171 * window.c (coordinates_in_window): Don't report on margin area
11172 if its width is zero.
11173
111742002-04-16 Jason Rumney <jasonr@gnu.org>
11175
11176 * w32fns.c (Fx_file_dialog): Decode file name before using.
11177
11178 * w32term.c (construct_drag_n_drop): Likewise.
11179
111802002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
11181
11182 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
11183 store load-history in pure space.
11184
11185 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
11186
111872002-04-16 Stefan Monnier <monnier@cs.yale.edu>
11188
11189 * xterm.c (Qlatin_1, Qutf_8): New vars.
11190 (syms_of_xterm): Initialize them.
11191 (XTread_socket): Eliminate incorrect optimization that tried to avoid
11192 decoding the output of X*LookupString.
11193 Always use latin-1 to decode the output of XLookupString.
11194 Try Xutf8LookupString if XmbLookupString failed.
11195
11196 * region-cache.c (new_region_cache): Use BEG.
11197
111982002-04-16 Gerd Moellmann <gerd@gnu.org>
11199
11200 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
11201 configuration files.
11202 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
11203 returns 0.
11204
112052002-04-15 Andreas Schwab <schwab@suse.de>
11206
11207 * config.in: Regenerated using autoheader.
11208
11209 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
11210 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
11211 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
11212 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
11213 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
11214 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
11215 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
11216 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
11217 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
11218 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
11219 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
11220 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
11221 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
11222 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
11223 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
11224 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
11225 STACK_DIRECTION, now set by autoconf.
11226
112272002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11228
11229 * dispnew.c (marginal_area_string): Sort arguments.
11230
11231 * dispextern.h (marginal_area_string): Add prototype.
11232
112332002-04-13 Richard M. Stallman <rms@gnu.org>
11234
11235 * fileio.c (Finsert_file_contents):
11236 Don't call temp_output_buffer_setup--do just part, by hand.
11237
11238 * coding.c (run_pre_post_conversion_on_str):
11239 Don't call temp_output_buffer_setup--do just part, by hand.
11240
11241 * keyboard.c (command_loop_1): Don't call start_hourglass
11242 or cancel_hourglass when executing a macro.
11243
11244 * marker.c (count_markers): New function.
11245
11246 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
11247 grow without limit. Move recently used elements to the front.
11248
112492002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
11250
11251 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
11252
112532002-04-12 Gerd Moellmann <gerd@gnu.org>
11254
11255 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
11256 rows marginal areas.
11257 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
11258 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
11259
11260 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
11261
112622002-04-12 Dave Love <fx@gnu.org>
11263
11264 * dispnew.c (marginal_area_string): New.
11265
11266 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
11267 (Qleft_margin, Qright_margin): Declare.
11268 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
11269
11270 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
11271 note_mode_line_highlight and extended.
11272
11273 * keyboard.c (Qleft_margin, Qright_margin): Declare.
11274 (make_lispy_event): Deal with mouse events in margins.
11275
112762002-04-12 Stefan Monnier <monnier@cs.yale.edu>
11277
11278 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
11279
11280 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
11281 than deactivating the mark if tmm is set to `lambda'.
11282 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
11283 Use a single event for HELP_EVENT.
11284 (Fexecute_extended_command): Save last_point_position.
11285
112862002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11287
11288 * lisp.h (Fpropertize): Add prototype.
11289
11290 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
11291
112922002-04-10 Colin Walters <walters@verbum.org>
11293
11294 * config.in: Add HAVE_SHARED_GAME_DIR.
11295
11296 * callproc.c: (Vgame_score_directory): New variable.
11297 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
11298
112992002-04-10 Richard M. Stallman <rms@gnu.org>
11300
11301 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
11302
113032002-04-09 Stefan Monnier <monnier@cs.yale.edu>
11304
11305 * minibuf.c (read_minibuf): Use empty_string.
11306 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
11307 Short-circuit the search as soon as it "failed".
11308 (Fall_completions): Allow lambda forms and lists of strings for alist.
11309 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
11310 when require_match is nil.
11311 (Ftest_completion): Rename from `test_completion' and export to elisp.
11312 Call the predicate also when alist is a list.
11313 Obey Vcompletion_regexp_list.
11314 (do_completion, Fminibuffer_complete_and_exit): Use it.
11315 (Fassoc_string): Rename from `assoc_for_completion'.
11316 Allow list of strings as well and export to elisp.
11317
113182002-04-08 Stefan Monnier <monnier@cs.yale.edu>
11319
11320 * puresize.h (BASE_PURESIZE): Increase to 900KB.
11321
113222002-04-08 Juanma Barranquero <lektu@terra.es>
11323
11324 * w32.c (sys_accept): Don't hide variable `s'.
11325
113262002-04-05 Gerd Moellmann <gerd@gnu.org>
11327
11328 * callint.c (Fcall_interactively): Use INTEGERP instead of
11329 NUMBERP for checking Vhistory_length.
11330
113312002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11332
11333 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
11334 Doc fix to reflect it.
11335
113362002-04-04 Richard M. Stallman <rms@gnu.org>
11337
11338 * xdisp.c (display_mode_element): New arg RISKY.
11339 Disregard text props found or specified within a variable
11340 that isn't marked risky-local-variable.
11341 (Qrisky_local_variable): New variable.
11342 (syms_of_xdisp): Init and staticpro it.
11343
113442002-04-04 Stefan Monnier <monnier@cs.yale.edu>
11345
11346 * undo.c (record_point): New fun.
11347 (record_delete, record_insert): Use it.
11348
113492002-04-03 Juanma Barranquero <lektu@terra.es>
11350
11351 * doc.c (Fdocumentation): Add missing parentheses.
11352 (Fdocumentation_property): Likewise.
11353
113542002-04-03 Stefan Monnier <monnier@cs.yale.edu>
11355
11356 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
11357 data is 0, just return nil.
11358
113592002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
11360
11361 * msdos.c (syms_of_msdos): Fix last change with
11362 mouse_autoselect_window.
11363
113642002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11365
11366 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
11367 mouse_autoselect_window.
11368
113692002-04-02 Stefan Monnier <monnier@cs.yale.edu>
11370
11371 * keyboard.c (make_lispy_event): Handle unknown keysyms together
11372 with system-specific keysyms. Use it also for unknown function keys.
11373
11374 * doc.c (reread_doc_file): Return whether reload was attempted.
11375 (Fdocumentation, Fdocumentation_property): Don't try to reload
11376 if the doc is 0 and only ask once.
11377
11378 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
11379
113802002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
11381
11382 * keyboard.c (read_char): If the event was Qselect_window,
11383 restore timer_idleness_start_time to its previous value.
11384
11385 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
11386
113872002-04-01 Stefan Monnier <monnier@cs.yale.edu>
11388
11389 * region-cache.c (new_region_cache): Use BEG.
11390
11391 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
11392 Use BEG and BEG_BYTE.
11393
11394 * doc.c (get_doc_string): Return nil if the location is wrong.
11395 (reread_doc_file): New fun.
11396 (Fdocumentation, Fdocumentation_property):
11397 Call it if get_doc_string fails.
11398 (Fsnarf_documentation): Make it work for a dumped Emacs.
11399
11400 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
11401 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
11402
11403 * charset.c (Fstring): Allow 0 arguments.
11404
11405 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
11406
11407 * process.c (DATAGRAM_CONN_P, list_processes_1)
11408 (Fprocess_datagram_address, Fset_process_datagram_address)
11409 (Fset_network_process_options, server_accept_connection):
11410 Fix some int/Lisp_Object confusions (thank you union types).
11411
114122002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11413
11414 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
11415
11416 * w32term.c: Likewise.
11417 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
11418
11419 * keyboard.c (Qselect_window): New symbol.
11420 (head_table): Use it.
11421 (keys_of_keyboard): Bound select-window event to handle-select-window.
11422 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
11423
11424 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
11425 (last_window): New variable.
11426 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
11427 (note_mouse_movement): Remove reimplemented code in #if 0.
11428 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
11429 Emacs windows.
11430
11431 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
11432
114332002-03-31 Gerd Moellmann <gerd@gnu.org>
11434
11435 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
11436 Callers changed.
11437
114382002-03-30 Richard M. Stallman <rms@gnu.org>
11439
11440 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
11441 loop whenever it stops making progress.
11442
11443 * widget.c (set_frame_size): Don't call change_frame_size.
11444
114452002-03-30 Gerd Moellmann <gerd@gnu.org>
11446
11447 * dispnew.c (direct_output_for_insert):
11448 Call mark_window_display_accurate.
11449
114502002-03-29 Jason Rumney <jasonr@gnu.org>
11451
11452 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
11453
114542002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
11455
11456 * Makefile.in (lread.o): Depend on coding.h.
11457
11458 * lread.c (openp, Fload): Encode the file name before passing it
11459 to `stat', `access', and `emacs_open'.
11460 (openp): GCPRO the encoded file name. Don't recompute Lisp
11461 strings unnecessarily.
11462
114632002-03-29 Kim F. Storm <storm@cua.dk>
11464
11465 * fns.c (Flax_plist_put): Doc fix.
11466
114672002-03-28 Miles Bader <miles@gnu.org>
11468
11469 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
11470
114712002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11472
11473 * process.c (set-network-process-options): Add usage.
11474 (make-network-process): Doc fix.
11475
114762002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
11477
11478 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
11479
114802002-03-26 Richard M. Stallman <rms@gnu.org>
11481
11482 * fns.c (Fsubstring_no_properties): New function.
11483 (Flax_plist_get, Flax_plist_put): New functions.
11484 (syms_of_fns): defsubr them.
11485
11486 * xdisp.c (update_menu_bar): Test only update_mode_lines;
11487 don't test or alter w->update_mode_line.
11488
11489 * window.c (Fdisplay_buffer): Doc fix.
11490
114912002-03-24 Richard M. Stallman <rms@gnu.org>
11492
11493 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
11494
114952002-03-24 Gerd Moellmann <gerd@gnu.org>
11496
11497 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
11498 (Fdefmacro): Handle `(declare ...)'.
11499 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
11500 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
11501
115022002-03-24 Jason Rumney <jasonr@gnu.org>
11503
11504 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
11505 (xbm_file_p): Add prototypes.
11506 (xbm_format, xbm_image_p): Sync with xfns.c.
11507 (reflect_byte): New function.
11508 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
11509 (xbm_load_image): Create bitmaps with a depth of 1.
11510 (init_xfns): Enable XBM images.
11511
115122002-03-23 Jason Rumney <jasonr@gnu.org>
11513
11514 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
11515 correctly. Do not pass up_modifier to keyboard buffer.
11516
11517 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
11518
115192002-03-22 Stefan Monnier <monnier@cs.yale.edu>
11520
11521 * Makefile.in (bootstrapclean): New target.
11522 (bootstrap-temacs, bootstrap-doc): Remove.
11523 (bootstrap-emacs): Use a bog-standard `temacs'.
11524 Don't bother to build a DOC file.
11525
11526 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
11527
11528 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
11529 in temacs even if !CANNOT_DUMP.
11530 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
11531
11532 * alloc.c (check_pure_size): Only output a warning.
11533
115342002-03-22 Jason Rumney <jasonr@gnu.org>
11535
11536 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
11537 supported.
11538
11539 * w32term.c (zv_bits): Declare as short, for word alignment.
11540 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
11541 (syms_of_w32term): Define x-use-underline-position-properties.
11542
11543 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
11544 (clear_image_cache): Block input, fix logic, clear matrices in
11545 all frames that share this cache.
11546
115472002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
11548
11549 * emacs.c (main): Update the Copyright year in the blurb printed
11550 by "emacs --version".
11551
11552 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
11553
11554 * xterm.c (XTread_socket): If XK_ISO_Lock and
11555 XK_ISO_Last_Group_Lock are defined, handle keysyms between
11556 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
11557
115582002-03-21 Kim F. Storm <storm@cua.dk>
11559
11560 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
11561 menu-bar bindings in keymap and local-map properties _are_ used.
11562 But try keymap property first in accordance with 2002-01-03 patch.
11563 Added comment describing why this is not always reliable.
11564 (tool_bar_items): Ditto for tool-bar.
11565
115662002-03-21 Jason Rumney <jasonr@gnu.org>
11567
11568 * w32fns.c (x_clear_image_1): Disable color table code.
11569
115702002-03-21 Kim F. Storm <storm@cua.dk>
11571
11572 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
11573 removed the wrong version of the DEFUN macro; fixed it.
11574
11575 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
11576 Fmember rather than Fmemq).
11577 (Fprovide): Check that subfeatures is a list.
11578
11579 * process.c (QCfeature, QCdatagram): Removed variables.
11580 (QCtype, Qdatagram): New variables.
11581 (network_process_featurep): Removed function.
11582 (Fmake_network_process): Removed :feature check.
11583 Use :type 'datagram instead of :datagram t to create a datagram
11584 socket. This allows us to add other connection types (e.g. raw
11585 sockets) later in a consistent manner.
11586 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
11587 supported subfeatures for feature make-network-process.
11588 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
11589 Intern and staticpro QCtype and Qdatagram.
11590 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
11591
11592 * xfns.c: (QCtype): Remove duplicate declaration and
11593 initialization (is now declared in process.c).
11594
11595 * w32fns.c: (QCtype): Remove duplicate declaration and
11596 initialization (is now declared in process.c).
11597
115982002-03-21 Richard M. Stallman <rms@gnu.org>
11599
11600 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
11601 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
11602 when jumping to `fail' to avoid undoing reg changes in the
11603 last iteration of the loop.
11604 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
11605
11606 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
11607 Depend on process.h.
11608
116092002-03-20 Jason Rumney <jasonr@gnu.org>
11610
11611 Most of the following changes are still conditional on HAVE_IMAGES
11612 which is not set by default on Windows.
11613
11614 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
11615
11616 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
11617 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
11618 (four_corners_best, x_clear_image_1, x_clear_image)
11619 (x_alloc_image_color, postprocess_image)
11620 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
11621 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
11622 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
11623
11624 * w32gui.h (struct XImage): Define.
11625
11626 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
11627 extract mouse co-ordinates.
11628
116292002-03-20 Jason Rumney <jasonr@gnu.org>
11630
11631 * w32.c (init_winsock): Dynamically load new server and UDP
11632 socket functions.
11633 (socket_to_fd): New function.
11634 (sys_socket): Use it.
11635 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
11636 (sys_recvfrom, sys_sendto): New wrapper functions.
11637
11638 * process.c (QCfamily, QCfilter): Remove duplicate declaration
11639 and initialization.
11640
11641 * makefile.w32-in (LIBS): Remove $(WSOCK32).
11642
116432002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
11644
11645 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
11646 Don't use "sun" as a variable, it's a predefined constant on Sun
11647 machines.
11648
116492002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11650
11651 * bytecode.c (Fbyte_code): Revert last change.
11652
116532002-03-19 Kim F. Storm <storm@cua.dk>
11654
11655 * makefile.w32-in (LIBS): Add $(WSOCK32).
11656 From David Ponce <dponce@voila.fr>.
11657
116582002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11659
11660 * process.c (wait_reading_process_input): Move variables `pname'
11661 and `pnamelen' down where they are used.
11662
11663 * bytecode.c (Fbyte_code): Discard unused computed value to
11664 prevent gcc warning.
11665
11666 * lisp.h (Fplist_member): Add prototype.
11667
116682002-03-18 Kim F. Storm <storm@cua.dk>
11669
11670 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
11671 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
11672
11673 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
11674 Remove explicit GNU_LINUX settings for datagram support.
11675
116762002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11677
11678 * process.c (Fmake_network_process): Remove unused variable `sa'.
11679 Doc fix. Add usage:.
11680 (set_socket_options): Remove unused variables `optnum' and `opttype'.
11681
116822002-03-17 Richard M. Stallman <rms@gnu.org>
11683
11684 * xdisp.c (cursor_type_changed): New variable.
11685 (redisplay_internal): Redisplay all windows if cursor_type_changed.
11686 Clear it when clearing windows_or_buffers_changed.
11687 (try_cursor_movement, redisplay_window, try_window_id)
11688 (try_window_reusing_current_matrix): Test cursor_type_changed
11689 along with windows_or_buffers_changed.
11690
11691 * window.h (cursor_type_changed): New variable.
11692
11693 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
11694 not update_mode_lines, and always set it to 1.
11695
11696 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
11697 if no frames needed redrawing.
11698
116992002-03-17 Kim F. Storm <storm@cua.dk>
11700
11701 The following changes add support for network server processes,
11702 datagram connections, and local (unix) sockets.
11703
11704 * process.h (struct Lisp_Process): New member log.
11705 Doc fix: Member command used to indicate stopped network process.
11706 Doc fix: Member childp contains plist for network process.
11707 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
11708
11709 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
11710 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
11711 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
11712 New variables.
11713 (NETCONN1_P): New macro.
11714 (DATAGRAM_SOCKETS): New conditional symbol.
11715 (datagram_address): New array.
11716 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
11717 (status_message): Use concat3.
11718 (Fprocess_status): Add `listen' status to doc string. Return `stop'
11719 for a stopped network process.
11720 (Fset_process_buffer): Update contact plist for network process.
11721 (Fset_process_filter): Ditto. Don't enable input for stopped
11722 network processes. Server must listen, even if filter is t.
11723 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
11724 New functions.
11725 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
11726 (Fprocess_contact): Added KEY argument. Handle datagrams.
11727 (list_processes_1): Optionally show only processes with the query
11728 on exit flag set. Dynamically adjust column widths. Omit tty
11729 column if not needed. Report stopped network processes.
11730 Identify server and datagram network processes.
11731 (Flist_processes): New optional arg `query-only'.
11732 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
11733 (conv_lisp_to_sockaddr, set_socket_options)
11734 (network_process_featurep, unwind_request_sigio): New helper functions.
11735 (Fprocess_datagram_address, Fset_process_datagram_address):
11736 (Fset_network_process_options): New lisp functions.
11737 (Fopen_network_stream): Removed. Now defined in simple.el.
11738 (Fmake_network_process): New lisp function. Code is based on previous
11739 Fopen_network_stream, but heavily reworked with new property list based
11740 argument list, support for datagrams, server processes, and local
11741 sockets in addition to old client-only functionality.
11742 (server_accept_connection): New function.
11743 (wait_reading_process_input): Use it to handle incoming connects.
11744 Do not enable input on a new connection if process is stopped.
f63fd14e 11745 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
048addec
JD
11746 (send_process): Handle datagram sockets.
11747 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
11748 network process is indicated by setting command field to t .
11749 (Fprocess_send_eof): No-op if datagram connection.
11750 (Fstatus_notify): Don't read input for a stream server socket or a
11751 stopped network process.
11752 (init_process): Initialize datagram_address array.
11753 (syms_of_process): Intern and staticpro new variables, defsubr new
11754 functions.
11755
117562002-03-16 Jason Rumney <jasonr@gnu.org>
11757
11758 * w32fns.c (w32_to_all_x_charsets): Return correct type in
11759 startup case.
11760
117612002-03-16 Richard M. Stallman <rms@gnu.org>
11762
11763 * xdisp.c (redisplay_internal, redisplay_windows):
11764 Use list_of_error to call internal_condition_case_1.
11765 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
11766 so as to catch all errors with no possibility of debugger redisplay.
11767 (list_of_error): New variable.
11768 (syms_of_xdisp): Init and staticpro it.
11769
11770 * print.c (print_object): Delete `\ ' from printed rep of frame.
11771
117722002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
11773
11774 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
11775 until its implementation is fixed.
11776
117772002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11778
11779 * xfns.c (png_load): Remove unused variable `gamma_str'.
11780
117812002-03-14 Richard M. Stallman <rms@gnu.org>
11782
11783 * xfns.c (x_real_positions): Handle failure in XQueryTree.
11784
117852002-03-14 Miles Bader <miles@gnu.org>
11786
11787 * intervals.c (adjust_for_invis_intang): New function.
11788 (set_point_both): Use `adjust_for_invis_intang' to do most of the
11789 work for dealing with invisible+intangible regions. Do so before
11790 and after both forward and backward movements, to handle both
11791 front-sticky and rear-sticky cases.
11792 * textprop.c (text_property_stickiness): Function moved here from
11793 `editfns.c'.
11794 * intervals.h (text_property_stickiness): New declaration.
11795 * editfns.c (char_property_eq): Function removed.
11796 (text_property_stickiness): Function moved to `textprop.c'.
11797
117982002-03-13 Jason Rumney <jasonr@gnu.org>
11799
11800 * config.in: Add STRFTIME_NO_POSIX2.
11801
11802 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
11803 and %OX when underlying strftime does not.
11804
118052002-03-13 Stefan Monnier <monnier@cs.yale.edu>
11806
11807 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
11808 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
11809 line) to avoid annoying flicker.
11810 (xm_scroll_callback): Get rid of the now unnecessary kludge.
11811 (XTread_socket): Mark it static.
11812
11813 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
11814
118152002-03-13 Kim F. Storm <storm@cua.dk>
11816
11817 * puresize.h (BASE_PURESIZE): Increase to 775000.
11818
118192002-03-12 Juanma Barranquero <lektu@terra.es>
11820
11821 * editfns.c (syms_of_editfns): Fix typo.
11822
118232002-03-12 Gerd Moellmann <gerd@gnu.org>
11824
11825 * xsmfns.c: Include stdio.h because termhooks.h needs it.
11826 Include termopt.h for interrupt_input.
11827
118282002-03-11 Andreas Schwab <schwab@suse.de>
11829
11830 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
11831
118322002-03-11 Gerd Moellmann <gerd@gnu.org>
11833
11834 * xterm.c (note_mouse_movement): Put code for
11835 x_autoselect_window_p in #if 0.
11836
11837 * lread.c (Fload): Don't assume that message_with_string uses the
11838 string it is given like a C string.
11839
118402002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11841
11842 * xterm.h (x_session_check_input, x_session_initialize): Declared.
11843
11844 * xterm.c: (XTread_socket): Add call to x_session_check_input and
11845 x_session_have_connection.
11846 (x_initialize): Add call to x_session_initialize.
11847
11848 * termhooks.h (enum event_kind): Add save_session_event.
11849
11850 * keyboard.c: Add Emacs event save_session_event.
11851
11852 * emacs.c (main): Add call to syms_of_xsmfns.
11853
11854 * lisp.h: Declare syms_of_xsmfns as extern.
11855
11856 * config.in: Add HAVE_X_SM.
11857
11858 * Makefile.in (LIBXT): Add -lSM -lICE
11859 if HAVE_X_SM and not USE_X_TOOLKIT.
11860 (XOBJ): New file xsmfns.c added.
11861
11862 * xsmfns.c: New file for X session management.
11863
118642002-03-09 Jason Rumney <jasonr@gnu.org>
11865
11866 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
11867 read-only when setting modified time.
11868
118692002-03-08 Gerd Moellmann <gerd@gnu.org>
11870
11871 * xdisp.c (move_it_vertically_backward): At the end of the function,
11872 when moving forward by lines, treat terminal frames specially.
11873
11874 * keyboard.c (echo_char): Make sure to add a separator between
11875 keys even if echo_dash hasn't been called.
11876
11877 * xdisp.c: Use new string macros.
11878 (update_echo_area): Pass number of bytes to message3 instead of
11879 number of chars.
11880 (set_message_1): Don't access a string's size_byte directly.
11881 (decode_mode_spec_coding): Use number of bytes of eoltype string
11882 instead number of chars.
11883
11884 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
11885
118862002-03-08 Juanma Barranquero <lektu@terra.es>
11887
11888 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
11889 24-bit.
11890
118912002-03-06 Jason Rumney <jasonr@gnu.org>
11892
11893 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
11894
118952002-03-06 Gerd Moellmann <gerd@gnu.org>
11896
11897 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
11898 (cancel_echoing, echo_length, echo_truncate): Changed to
11899 work with new kboard definition.
11900 (echo_now): Use message3_nolog instead of message2_nolog.
11901
11902 * alloc.c (mark_kboards): Mark echo_string.
11903
11904 * keyboard.h (ECHOBUFSIZE): Removed.
11905 (struct kboard): Member echoptr removed, member echobuf renamed
11906 to echo_string.
11907
11908 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
11909 message3 instead of message2 to display the message using STRING's
11910 text properties.
11911
119122002-03-05 Andreas Schwab <schwab@suse.de>
11913
11914 * xdisp.c (hscroll_margin): Change to EMACS_INT.
11915
119162002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
11917
11918 * frame.c (default-frame-alist): Explain that setting it doesn't
11919 affect existing frames.
11920
119212002-03-05 Stefan Monnier <monnier@cs.yale.edu>
11922
11923 * indent.c (skip_invisible): Fix my brain fart.
11924
11925 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
11926
119272002-03-04 Stefan Monnier <monnier@cs.yale.edu>
11928
11929 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
11930 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
11931 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
11932 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
11933 and variables to use EMACS_INT instead of just int.
11934
11935 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
11936
119372002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
11938
11939 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
11940 environment, pass it down with corrected value.
11941
119422002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11943
11944 * lread.c (read_filtered_event): Do not call start_hourglass
11945 before returning.
11946
119472002-03-04 Juanma Barranquero <lektu@terra.es>
11948
11949 * w32term.c (x_display_and_set_cursor): Fix typo.
11950
119512002-03-03 Richard M. Stallman <rms@gnu.org>
11952
11953 * fileio.c (Fmake_temp_name): Doc fix.
11954
119552002-03-03 Gary Wong <gtw@gnu.org>
11956
11957 * termcap.c [!emacs]: Replace ospeed for building standalone
11958 libtermcap, for binary compatibility.
11959
11960 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
11961
119622002-03-03 Richard M. Stallman <rms@gnu.org>
11963
11964 * xrdb.c (file_p): Rename arg `path' to `filename'.
11965
11966 * abbrev.c (Fexpand_abbrev): Increment plist as use count
11967 only if it is an integer.
11968
11969 * xfns.c (png_load): Set screen_gamma based on f->gamma.
11970 If png_get_sRGB gives an answer, call png_set_gamma
11971 using the default image gamma value.
11972
11973 * lread.c (read1): When reading from a file, default string to
11974 multibyte only if it has some multibyte characters.
11975
11976 * print.c (print_object): Output multibyte chars 128...255
11977 using \x even if ! print_escape_multibyte.
11978
11979 * xdisp.c (display_mode_element): Move the places where
11980 bytepos, charpos, this, and lisp_string are set.
11981 Use lisp_string to set bytepos.
11982
11983 * xdisp.c (redisplay_internal):
11984 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
11985
11986 * xdisp.c (display_mode_element): Merge properties specified with
11987 :propertize onto those that come with the string.
11988
119892002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
11990
11991 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
11992 automatic-hscrolling. Users changed.
11993 <hscroll-margin>: Renamed from automatic-hscroll-margin.
11994 Users changed.
11995 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
11996
119972002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
11998
11999 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
12000
120012002-03-02 Kim F. Storm <storm@cua.dk>
12002
12003 * window.c (Fminibuffer_selected_window): New function.
12004 (syms_of_window): Defsubr it.
12005
120062002-03-01 Kim F. Storm <storm@cua.dk>
12007
12008 * window.h (struct window): New member phys_cursor_width.
12009
12010 * window.c (make_window, replace_window): Init phys_cursor_width.
12011
12012 * xterm.c (x_display_and_set_cursor): Blink box cursor using
12013 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
12014
12015 * w32term.c (x_display_and_set_cursor): Blink box cursor using
12016 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
12017
12018 * lisp.h (GCPRO6): New macro.
12019
12020 * process.c (Fopen_network_stream): Use GCPRO6.
12021
120222002-03-01 Kim F. Storm <storm@cua.dk>
12023
12024 * process.c (Qconnect, Qfailed): New variables.
12025 (syms_of_process): Intern and staticpro them.
12026 (Fprocess_status): Document connect and failed return values.
12027 [NON_BLOCKING_CONNECT]: New conditional.
12028 (connect_wait_mask, num_pending_connects): New variables.
12029 (status_message): Convert Qfailed status.
12030 (Fopen_network_stream): Added support for non-blocking connect.
12031 New optional args: filter, sentinel, non_blocking. Doc updated.
12032 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
12033 (deactivate_process): Handle pending non-blocking connect.
12034 (wait_reading_process_input): Poll for status of non-blocking
12035 connects. Exec sentinel directly when connect succeeds.
12036 (status_notify): Don't read process output if not yet connected.
12037
120382002-02-28 Kim F. Storm <storm@cua.dk>
12039
12040 * window.c: (minibuf_selected_window): Renamed from
12041 Vminibuf_selected_window. Users changed.
12042 (syms_of_window): Staticpro it.
12043
120442002-02-26 Kim F. Storm <storm@cua.dk>
12045
12046 The following changes add a new Vminibuf_selected_window variable
12047 which is similar to Vminibuf_scroll_window, but which is only set
12048 on entry to the minibuffer (from a non-minibuffer window):
12049
12050 * window.c: (Vminibuf_selected_window): New variable.
12051 (struct save_window_data): New member minibuf_selected_window.
12052 (Fset_window_configuration): Restore Vminibuf_selected_window.
12053 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
12054 Set minibuf_scroll_window member to nil if minibuf_level is 0.
12055 (compare_window_configurations): Compare minibuf_selected_window.
12056
12057 * window.h: (Vminibuf_selected_window): Declare extern.
12058
12059 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
12060 entry to minibuffer or on entry from a non-minibuffer window.
12061
12062 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
12063 Vminibuf_selected_window instead of Vminibuf_scroll_window.
12064
12065 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
12066 instead of Vminibuf_scroll_window when deciding in which window
12067 the region should be highlighted. Consequently, the region remains
12068 highlighteded even when a completion buffer is also displayed.
12069
120702002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
12071
12072 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
12073
12074 * xselect.c (Qcompound_text_with_extensions): Renamed from
12075 Qcompound_text_no_extensions.
12076 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
12077
120782002-02-26 Juanma Barranquero <lektu@terra.es>
12079
12080 * w32proc.c (syms_of_ntproc): Doc fix.
12081
120822002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12083
12084 * intervals.h: Include "dispextern.h" unconditionally.
12085
120862002-02-24 Jason Rumney <jasonr@gnu.org>
12087
12088 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
12089 and disp-table.elc.
12090 (lisp): Add emacs-lisp/backquote.elc.
12091
120922002-02-24 Kim F. Storm <storm@cua.dk>
12093
12094 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
12095 The validation of the event type was too strict as it didn't
12096 allow string events; buffer names are used in bindings for
12097 menu-bar-select-buffer (see `menu-bar-update-buffers').
12098
120992002-02-23 Kim F. Storm <storm@cua.dk>
12100
12101 The following changes rework my patch of 2002-02-06 which
12102 added command remapping by entering the commands directly into
12103 the keymaps. Now, command remapping uses an explicit `remap'
12104 prefix in the keymaps, i.e. [remap COMMAND].
12105
12106 * keymap.c (Qremap, remap_command_vector): New variables.
12107 (is_command_symbol): Removed function.
12108 (Fdefine_key): No longer accept a symbol for KEY.
12109 Added validation of [remap COMMAND] argument for KEY.
12110 The DEF is no longer required to be a symbol when remapping a command.
12111 (Fremap_command): New function to remap command through keymaps.
12112 (Flookup_key): Perform command remapping initiated by
12113 Fremap_command directly for speed.
12114 (Fkey_binding): Use Fremap_command for command remapping.
12115 (where_is_internal): Handle new command remapping representation.
12116 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
12117 staticpro them. Defsubr Fremap_command.
12118
12119 * keymap.h (Fremap_command): Declare extern.
12120 (is_command_symbol): Remove extern.
12121
12122 * keyboard.c (command_loop_1): Use Fremap_command for command
12123 remapping; now try command remapping for all symbols.
12124
121252002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
12126
12127 * coding.h (run_pre_post_conversion_on_str): Add prototype.
12128
121292002-02-23 Jason Rumney <jasonr@gnu.org>
12130
12131 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
12132 on the string before encoding it.
12133 (Fw32_get_clipboard_data): Run post-read-conversion on the string
12134 after decoding it.
12135
12136 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
12137
121382002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12139
12140 * w32term.c (enter_timestamp): Remove unused static variable to
12141 prevent warning.
12142
12143 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
12144
121452002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
12146
12147 * w16select.c (Fw16_get_clipboard_data): Fix last change.
12148
12149 * xselect.c (selection_data_to_lisp_data): Fix last change.
12150
121512002-02-22 Jason Rumney <jasonr@gnu.org>
12152
12153 * w32term.h (struct w32_output): New member menu_command_in_progress.
12154
12155 * w32menu.c (menubar_selection_callback): Free the menu and
12156 clear the menu_command_in_progress flag.
12157
12158 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
12159 (menu_free_timer): New variable.
12160 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
12161 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
12162 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
12163 menu command is in progress.
12164 <WM_COMMAND>: Set the menu_command_in_progress flag.
12165 Kill any menu_free_timer that is running.
12166
12167 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
12168 Call ExtTextOutA rather than ExtTextOut.
12169
121702002-02-22 Eli Zaretskii <eliz@gnu.org>
12171
12172 * puresize.h (BASE_PURESIZE): Increase to 755000.
12173
121742002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
12175
12176 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
12177 on the string before encoding it.
12178 (Fw16_get_clipboard_data): Run post-read-conversion on the string
12179 after decoding it.
12180
121812002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
12182
12183 Support for ICCCM Extended Segments in X selections:
12184
12185 * xselect.c <Qcompound_text_no_extensions>: New variable.
12186 (syms_of_xselect): Intern and staticpro it.
12187 (selection_data_to_lisp_data): Run post-read-conversion on decoded
12188 selection text.
12189 (lisp_data_to_selection_data): If next-selection-coding-system is
12190 compound-text-no-extensions, set the type of selection to be
12191 compound-text.
12192
12193 * xterm.h (x_encode_text): Update prototype.
12194
12195 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
12196 callers changed. If SELECTIONP is non-zero, run the
12197 pre-write-conversion function before encoding the selection text.
12198
121992002-02-21 Kim F. Storm <storm@cua.dk>
12200
12201 * frame.c (syms_of_frame): Change mouse-highlight default to t.
12202
12203 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
12204 Correct composing of language-change event.
12205
122062002-02-20 Kim F. Storm <storm@cua.dk>
12207
12208 * keyboard.c (menu_bar_items): Don't include keymap or local-map
12209 bindings at PT when building menu (the menu is not updated often
12210 enough for this to work reliable).
12211 (tool_bar_items): Likewise.
12212 (current_active_maps): Removed unused (and buggy) function.
12213
122142002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12215
12216 * xfns.c (gif_load): Use correct width and height for GIF images.
12217
122182002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
12219
12220 * floatfns.c (Fatan): Accept an optional second arg and call
12221 atan2 if passed 2 args.
12222
122232002-02-18 Jason Rumney <jasonr@gnu.org>
12224
12225 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
12226
122272002-02-17 Jason Rumney <jasonr@gnu.org>
12228
12229 * w32term.c (x_autoselect_window_p): New variable.
12230 (syms_of_w32term): DEFVAR_BOOL and initialize it.
12231 (note_mouse_movement): Use it.
12232
12233 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
12234
12235 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
12236
12237 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
12238 New variables.
12239 (syms_of_w32fns): Intern and staticpro them.
12240 (x_frame_parms) <"fullscreen">: New parameter.
12241 (x_fullscreen_move, x_set_fullscreen): New functions.
12242 (x_set_frame_parameters): Support Qfullscreen.
12243 (x_real_positions): Save x/y_pixels_diff frame params.
12244 (x_figure_window_size): Support full-screen frames.
12245 (Fx_create_frame): Default the fullscreen parameter.
12246
12247 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
12248 (x_fullscreen_adjust): New functions.
12249 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
12250 fullscreen. Call x_check_fullscreen_move, and set the
12251 want_fullscreen member of output_data.w32
12252 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
12253
12254 * w32term.h: New enum for FULLSCREEN_* constants.
12255 (struct w32_output): New members want_fullscreen, x_pixels_diff,
12256 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
12257 (x-fullscreen-adjust): New prototype.
12258
122592002-02-17 Kim F. Storm <storm@cua.dk>
12260
12261 * frame.c: (Vmouse_highlight): New variable.
12262 (syms_of_frame): DEFVAR_LISP it.
12263
12264 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 12265
048addec 12266 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 12267
048addec
JD
12268 * xterm.c (disable_mouse_highlight): Removed variable.
12269 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
12270 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
12271 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
12272 and on after keyboard input.
12273 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 12274
048addec 12275 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 12276
048addec
JD
12277 * msdos.c (disable_mouse_highlight): Removed variable.
12278 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
12279 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
12280 (internal_terminal_init): Initialize mouse_face_hidden.
12281 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
12282 and on after keyboard input.
4f1b1854 12283
048addec 12284 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 12285
048addec
JD
12286 * w32term.c (disable_mouse_highlight): Removed variable.
12287 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
12288 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
12289 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
12290 and on after keyboard input.
12291 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 12292
048addec 122932002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 12294
048addec
JD
12295 * msdos.c (last_mouse_window): New variable.
12296 (dos_rawgetc): Fix last change--if the mouse is in the same window
12297 as recorded in last_mouse_window, don't select this window.
5cb6905d 12298
048addec 12299 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 12300
048addec
JD
12301 * msdos.c (x_autoselect_window_p): New variable.
12302 (syms_of_msdos): Defvar it.
12303 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
12304 which the last mouse movement occured, unless it is already selected.
437dfb9f 12305
048addec
JD
12306 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
12307 New variables.
12308 (syms_of_xdisp): DEVFAR them.
12309 (hscroll_window_tree): Use automatic_hscroll_margin and
12310 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 12311
048addec 123122002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 12313
048addec
JD
12314 * xterm.c (x-autoselect-window): New variable.
12315 (note_mouse_movement): Use it.
9f696a00 12316
048addec 12317 * keyboard.c: Do not include "systime.h" twice.
d57966d7 12318
048addec 123192002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 12320
048addec 12321 * puresize.h (BASE_PURESIZE): Increase to 9/5.
d57966d7 12322
048addec 12323 * alloc.c (NSTATICS): Increase to 1280.
74779f52 12324
048addec 123252002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 12326
048addec 12327 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 12328
048addec
JD
12329 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
12330 (Vx_super_keysym): New variables.
12331 (syms_of_xterm): DEFVAR_LISP them.
12332 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
12333 variables to determine which keys to use for the various modifiers.
a474d59c 12334
048addec 123352002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 12336
048addec
JD
12337 * window.c: (Vmode_line_in_non_selected_windows): Removed.
12338 (mode_line_in_non_selected_windows): New variable.
12339 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 12340
048addec
JD
12341 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
12342 Use mode_line_in_non_selected_windows.
12343 (mode_line_in_non_selected_windows): Declare extern.
12344 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 12345
048addec 123462002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 12347
048addec
JD
12348 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
12349 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
12350 (Fclear_this_command_keys): Doc fixes.
2d10309f 12351
048addec
JD
12352 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
12353 (update_face_from_frame_parameter): Increment face_change_count
12354 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 12355
048addec
JD
12356 * xdisp.c (QCpropertize): New variable.
12357 (mode_line_proptrans_alist): New variable.
12358 (display_mode_element): New arg PROPS; all calls changed.
12359 Implement this, for strings.
12360 Handle literal output of strings by sharing the
12361 main-line code for strings, using local var `literal'.
12362 Handle :propertize feature.
12363 (syms_of_xdisp): Initialze and staticpro QCpropertize and
12364 mode_line_proptrans_alist.
0b1e6b54 12365
048addec 123662002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 12367
048addec
JD
12368 * window.c: (Vmode_line_in_non_selected_windows): New variable.
12369 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 12370
048addec
JD
12371 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
12372 (CURRENT_MODE_LINE_FACE_ID): Use it.
12373 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 12374
048addec
JD
12375 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
12376 to get mode line face.
e17144de 12377
048addec 123782002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 12379
048addec
JD
12380 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
12381 variables; cus-start.el doesn't need them anymore.
44368f8f 12382
048addec 123832002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 12384
048addec
JD
12385 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
12386 reduction. This fixes a display problem where stray newlines were
12387 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 12388
048addec 123892002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 12390
048addec 12391 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 12392
048addec 12393 * xdisp.c (display_mode_lines): Fix last change.
453c5510 12394
048addec 123952002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 12396
048addec
JD
12397 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
12398 match each other.
12399 (w32_load_system_font): Prevent Cleartype fonts from loading.
12400 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 12401
048addec 124022002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 12403
048addec
JD
12404 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
12405 (CURRENT_MODE_LINE_HEIGHT): Use it.
12406 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 12407
048addec
JD
12408 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
12409 (pos_visible_p, handle_face_prop): Likewise.
12410 (display_mode_lines): Likewise, but for the real selected window.
12411 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 12412
048addec
JD
12413 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
12414 in non-selected windows.
12415 (realize_basic_faces): Realize it.
12416 (syms_of_term): Intern and staticpro it.
308dd672 12417
048addec 124182002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 12419
048addec
JD
12420 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
12421 Changed mail addresses to emacs-devel@gnu.org.
308dd672 12422
048addec 124232002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 12424
048addec
JD
12425 * fileio.c (Fsubstitute_in_file_name): If the file name includes
12426 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 12427
048addec 12428 * floatfns.c (Fround): Doc fix.
3c1e6b46 12429
048addec 124302002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 12431
048addec 12432 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 12433
048addec 124342002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 12435
048addec 12436 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 12437
048addec 124382002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 12439
048addec
JD
12440 * keymap.c (where_is_internal): Only check whether definition is
12441 remapped if it fulfills is_command_symbol.
0065bb74 12442
048addec 124432002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 12444
048addec 12445 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 12446
048addec 12447 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 12448
048addec 124492002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 12450
048addec
JD
12451 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
12452 defining command remapping. Doc updated.
12453 (Flookup_key): Remap command through keymap if KEY is a symbol.
12454 (is_command_symbol): New function.
12455 (Fkey_binding): Use it. New optional argument NO-REMAP.
12456 Doc updated. Callers changed. Perform command remapping via
12457 recursive call unless that arg is non-nil.
12458 (where_is_internal): New argument no_remap. Callers changed.
12459 Call recursively to find original key bindings for a remapped
12460 comand unless that arg is non-nil.
12461 (Fwhere_is_internal): New optional argument NO-REMAP.
12462 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 12463
048addec
JD
12464 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
12465 (is_command_symbol): Added prototype.
0d8466cc 12466
048addec
JD
12467 * keyboard.c (Vthis_original_command): New variable.
12468 (syms_of_keyboard): DEFVAR_LISP it.
12469 (command_loop_1): Set it, and perform command remapping.
15fff01d 12470
048addec 124712002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 12472
048addec 12473 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 12474
048addec 124752002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 12476
048addec 12477 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 12478
048addec 124792002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 12480
048addec 12481 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 12482
048addec 124832002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 12484
048addec 12485 * filelock.c (S_ISLNK): Define if not defined.
3a232704 12486
048addec 124872002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 12488
048addec 12489 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 12490
048addec
JD
12491 * lread.c (read1): Redesign strategy for force_multibyte and
12492 force_singlebyte. Now is_multibyte records whether read_buffer
12493 is multibyte. Encountering any multibyte character makes it so.
4e02881b 12494
048addec 124952002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 12496
048addec
JD
12497 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
12498 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 12499
048addec 125002002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 12501
048addec
JD
12502 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
12503 latter never being defined on GNU/Linux.
749f499f 12504
048addec 125052002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 12506
048addec
JD
12507 * xfaces.c (realize_default_face): Don't set the weight and slant of
12508 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 12509
048addec 125102002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 12511
048addec
JD
12512 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
12513 Call cancel_hourglass unconditionally.
d0fd26dd 12514
048addec
JD
12515 * eval.c (Fsignal): Remove duplicated declaration of
12516 the variable `display_hourglass_p'.
b4c45162 12517
048addec 125182002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 12519
048addec 12520 * editfns.c (region_limit): Nicer error message.
c95eaa61 12521
048addec
JD
12522 * coding.c (decode_composition_emacs_mule):
12523 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 12524
048addec
JD
12525 * callint.c (check_mark): New arg to specify clearer error message.
12526 Callers changed.
c95eaa61 12527
048addec 125282002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 12529
048addec 12530 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 12531
048addec 125322002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 12533
048addec
JD
12534 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
12535 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
12536 Fix doc-strings.
c95eaa61 12537
048addec 125382002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 12539
048addec 12540 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 12541
048addec
JD
12542 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
12543 and scroll_up_aggressively.
c95eaa61 12544
048addec 125452002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 12546
048addec 12547 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 12548
048addec 125492002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 12550
048addec
JD
12551 * textprop.c (Fnext_property_change, Fnext_single_property_change)
12552 (Fprevious_property_change, Fprevious_single_property_change):
12553 Stay within the narrowed-buffer boundaries.
e2c3786a 12554
048addec 125552002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 12556
048addec
JD
12557 * term.c (Ftty_display_color_cells): New function.
12558 (syms_of_term): Defsubr it.
12559 (Ftty_display_color_cells, Ftty_display_color_p): Change the
12560 argument name to DISPLAY. Doc fix.
bf794306 12561
048addec
JD
12562 * dispextern.h: Add prototype for set_tty_color_mode and
12563 tty_setup_colors.
bf794306 12564
048addec 125652002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 12566
048addec
JD
12567 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
12568 If region left to draw is not what was expected, mark the frame as
12569 garbaged.
62582985 12570
048addec
JD
12571 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
12572 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 12573
048addec 125742002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 12575
048addec
JD
12576 * w32term.c (x_update_window_begin): Only hide caret if
12577 w32_use_visible_system_caret is set.
12578 (x_update_window_end): Only show caret if
12579 w32_use_visible_system_caret is set.
12580 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 12581
048addec 12582 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 12583
048addec 125842002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 12585
048addec
JD
12586 * unexelf.c (unexec): Define n so as to cause compilation error
12587 for the code where people have often written n instead of nn.
1e9a6186 12588
048addec 12589 * .gdbinit (hookpost-run): Defined.
1e9a6186 12590
048addec 125912002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 12592
048addec 12593 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 12594
048addec 125952002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 12596
048addec
JD
12597 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
12598 if fullscreen is being set.
7c75be36 12599
048addec 126002002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 12601
048addec
JD
12602 * minibuf.c (Fminibuffer_contents)
12603 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
12604 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 12605
048addec 126062002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 12607
048addec 12608 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 12609
048addec 126102002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 12611
048addec
JD
12612 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
12613 height before comparison.
12614 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 12615
048addec 126162002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 12617
048addec
JD
12618 * w32term.c (w32_system_caret_width): Remove.
12619 (w32_use_visible_system_caret): New user flag.
12620 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
12621 Windows reports a screen reader running.
12622 (x_update_window_begin): Hide the system caret.
12623 (x_update_window_end): Show the system caret.
12624 (x_display_and_set_cursor): Don't draw a cursor when
12625 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 12626
048addec
JD
12627 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
12628 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
12629 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
12630 the user requests it. Use system default width when creating.
12631 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 12632
048addec
JD
12633 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
12634 New window messages.
905cc05a 12635
048addec 126362002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 12637
048addec 12638 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 12639
048addec 126402002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 12641
048addec 12642 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 12643
048addec 126442002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 12645
048addec 12646 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 12647
048addec 126482002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 12649
048addec
JD
12650 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
12651 that Windows returns. If a double check fails, try to guess how
12652 ExtTextOut is going to act.
4d0fa4f3 12653
048addec
JD
12654 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
12655 in place of stricmp.
12656 (w32_list_synthesized_fonts): Removed.
12657 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
12658 (struct enumfont_t): New element; list.
12659 (enum_font_cb2): List all style and charset variations of a font.
12660 (Fw32_select_font): New optional argument; include_proportional.
12661 Exclude vertical fonts. Exclude proportional fonts unless
12662 include_proportional is non-nil.
12663 (w32_enable_synthesized_fonts): Change to a boolean.
12664 (Fw32_send_sys_command): Doc fix.
493faf20 12665
048addec 126662002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 12667
048addec
JD
12668 * dispnew.c (update_frame): Move the variable `tem' to the block
12669 where it is used.
4971e491 12670
048addec 126712002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 12672
048addec
JD
12673 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
12674 call to face-set-after-frame-default.
4971e491 12675
048addec 126762002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 12677
048addec
JD
12678 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
12679 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 12680
048addec 126812002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 12682
048addec
JD
12683 * window.c (enlarge_window): When exceeding size of parent,
12684 directly delete all the siblings instead of trying to resize it.
201c831a 12685
048addec 126862002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 12687
048addec 12688 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 12689
048addec 126902002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 12691
048addec 12692 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 12693
048addec 126942002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 12695
048addec
JD
12696 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
12697 is invisible. This can happen if cursor is on top line of a
12698 window, and we switch to a buffer with a header line.
d77fbc16 12699
048addec 12700 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 12701
048addec 127022002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 12703
048addec
JD
12704 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
12705 `dont_resize' only when used.
61e3b944 12706
048addec 12707 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 12708
048addec 127092002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 12710
048addec
JD
12711 * xdisp.c (display_mode_element): When computing charpos, depend
12712 on multibyteness of elt, not the text in field.
8af01033 12713
048addec 127142002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 12715
048addec
JD
12716 * buffer.c (Fkill_all_local_variables):
12717 Increment `update_mode_lines' only once.
7363986a 12718
048addec 127192002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 12720
048addec
JD
12721 * lisp.h (adjust_after_replace_noundo)
12722 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 12723
048addec 12724 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 12725
048addec 127262002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 12727
048addec
JD
12728 Support for the --color command-line argument and tty-color-mode
12729 frame parameter:
f1a85b89 12730
048addec
JD
12731 * term.c (tty_default_color_capabilities, tty_setup_colors)
12732 (set_tty_color_mode): New functions.
12733 (term_init): Call tty_default_color_capabilities.
12734 (Qtty_color_mode_alist): New variable.
12735 (syms_of_term): Intern and staticpro it.
f1a85b89 12736
048addec
JD
12737 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
12738 frames.
12739 (do_switch_frame): For termcap frames, switch the tty
12740 color mode as specified by the frame's parameters.
12741 (Qtty_color_mode): New variable.
12742 (syms_of_frame): Intern and staticpro it.
3a62677f 12743
048addec
JD
12744 * emacs.c (USAGE2): Add the --color option.
12745 (standard_args): Ditto.
72244db2 12746
048addec
JD
127472002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12748
12749 * xterm.h (struct x_output): New members want_fullscreen,
12750 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
12751 y_pixels_outer_diff.
12752 New enum for FULLSCREEN_* constants.
12753 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
12754 is NULL.
12755 (x_fullscreen_adjust): Add prototype.
3a62677f 12756
048addec
JD
12757 * emacs.c (USAGE2): Add the new full-screen arguments.
12758 (standard_args): Ditto.
3a62677f 12759
048addec
JD
12760 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
12761 New variables.
12762 (syms_of_xfns): Intern and staticpro them.
12763 (x_frame_parms) <"fullscreen">: New parameter.
12764 (x_fullscreen_move, x_set_fullscreen): New functions.
12765 (x_set_frame_parameters): Support for Qfullscreen.
12766 (x_real_positions): More accurate computation of the frame position.
12767 (x_figure_window_size): Support full-screen frames.
12768 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 12769
048addec
JD
12770 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
12771 (XTread_socket) <Expose>: Call x_check_fullscreen.
12772 <ConfigureNotify>: Don't resize to fullscreen.
12773 Call x_check_fullscreen_move, and set the want_fullscreen member of
12774 output_data.x.
3a62677f 12775
048addec 127762002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 12777
048addec
JD
12778 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
12779 for mice with more than 3 buttons.
b8523839 12780
048addec
JD
12781 * w32term.c (parse_button): New parameter xbutton. Callers changed.
12782 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 12783
048addec
JD
12784 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
12785 (syms_of_w32fns): DEFVAR_BOOL it.
12786 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 12787
048addec 127882002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 12789
048addec 12790 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 12791
048addec 127922002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 12793
048addec 12794 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 12795
048addec 127962002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 12797
048addec
JD
12798 * .gdbinit (xbuffer): Remove address operator since data is now a
12799 pointer.
c93674bb 12800
048addec 128012002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 12802
048addec 12803 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 12804
048addec 12805 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 12806
048addec 128072002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 12808
048addec
JD
12809 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
12810 when checking for multiple frames.
91175673 12811
048addec 128122002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 12813
048addec
JD
12814 * window.c (delete_window): Rewrite the code for changing the
12815 selected window to handle the case where WINDOW is not a leaf.
91175673 12816
048addec 128172002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 12818
048addec
JD
12819 * process.c (send_process): Set src_multibyte to 1 after the call
12820 top setup_coding_system, not before the call.
e0fead5d 12821
048addec 128222002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 12823
048addec
JD
12824 * xmenu.c (set_frame_menubar, xmenu_show):
12825 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 12826
048addec
JD
12827 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
12828 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 12829
048addec 128302002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 12831
048addec 12832 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 12833
048addec 12834 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 12835
048addec 12836 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 12837
048addec 128382002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 12839
048addec
JD
12840 * insdel.c (make_gap_larger): Make sure buffer size does not
12841 overflow range of int.
62854fe2 12842
048addec 128432002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 12844
048addec
JD
12845 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
12846 OVERLAPS_P.
656f46bb 12847
048addec 12848 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 12849
048addec
JD
12850 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
12851 to the left or to the right of the pointer, put it against
12852 the left screen edge.
12853 (x_frame_parms): Add missing braces around initializer.
036e218d 12854
048addec
JD
12855 * w32term.c (x_setup_relief_colors): Don't compute an image's
12856 background color if it doesn't have a Pixmap.
12857 (notice_overwritten_cursor): Don't depend on
12858 output_cursor and updated_area. Compare pixel coordinates with
12859 window's cursor pixel coordinates.
12860 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
12861 Call notice_overwritten_cursor with new arg list.
12862 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
12863 unconditionally.
12864 (x_draw_image_relief): Use predefined macro instead of
12865 constant when the value of `tool_bar_button_relief' is negative.
036e218d 12866
048addec 12867 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 12868
048addec 128692002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 12870
048addec 12871 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 12872
048addec 128732002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 12874
048addec
JD
12875 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
12876 (Fkey_binding): Try the `keymap' property map first.
12877 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
12878 minor mode bindings.
90647b07 12879
048addec 128802002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 12881
048addec 12882 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 12883
048addec 128842002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 12885
048addec
JD
12886 * keyboard.c (read_key_sequence): Handle the keymap property
12887 before minor mode maps.
9fbc32aa 12888
048addec
JD
12889 * editfns.c (Fformat): Update thissize from field_width
12890 based on the actual width, in the string case.
036e218d 12891
048addec 128922002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 12893
048addec
JD
12894 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
12895 when used as truth value to prevent gcc warnings.
9fbc32aa 12896
048addec
JD
12897 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
12898 * w32proc.c: Include <config.h>.
9fbc32aa 12899
048addec 129002002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 12901
048addec
JD
12902 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
12903 not EMACS_INT, to make them compatible with DEFVAR_INT.
12904 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 12905
048addec 129062002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 12907
048addec
JD
12908 * print.c (print_object): Test print_escape_nonascii only for
12909 unibyte strings.
12910 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
12911 when outputting to a multibyte buffer.
9fbc32aa 12912
048addec 129132001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 12914
048addec
JD
12915 * print.c (print_object): In multibyte string, use hex escapes.
12916 Use octal only for unibyte strings.
12917 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 12918
048addec
JD
12919 * lread.c (read_escape): New arg BYTEREP for reporting whether
12920 escape forces unibyte or multibyte.
12921 (read1): When reading a string, take note of that info.
0142178a 12922
048addec 129232001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 12924
048addec
JD
12925 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
12926 comparison to test lisp value returned by Fget.
d4824a5d 12927
048addec 129282001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 12929
048addec 12930 * lisp.h (max_specpdl_size): Add declaration.
b1356234 12931
048addec 12932 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 12933
048addec
JD
12934 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
12935 Handle modifier bits. Correct typo in error message.
99e380ee 12936
048addec 129372001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 12938
048addec
JD
12939 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
12940 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
12941 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
12942 Update calls to Fdefine_abbrev.
12943 (write_abbrev): Update for changed data format.
12944 Don't list "system" abbrevs.
12945 (Fexpand_abbrev): Update use count with new data format.
12946 (describe_abbrev): Update for changed data format.
12947 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 12948
048addec 12949 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 12950
048addec 12951 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 12952
048addec
JD
12953 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
12954 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 12955
048addec
JD
12956 * keymap.c (Flookup_key): Error message if key has wrong data type.
12957 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
12958 (exclude_key): New variable.
59a86c99 12959
048addec 129602001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 12961
048addec
JD
12962 * xterm.c (x_setup_relief_colors): Don't compute an image's
12963 background color if it doesn't have a Pixmap.
eb77a5f4 12964
048addec
JD
12965 * xterm.c (notice_overwritten_cursor): Don't depend on
12966 output_cursor and updated_area. Compare pixel coordinates with
12967 window's cursor pixel coordinates.
12968 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
12969 Call notice_overwritten_cursor with new arg list.
12970 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
12971 unconditionally.
eb77a5f4 12972
048addec
JD
12973 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
12974 height of the cursor line to the amount to scroll.
eb77a5f4 12975
048addec 129762001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 12977
048addec
JD
12978 * intervals.c (set_point_both): The position after an invisible,
12979 intangible character is not an acceptable stopping point.
bb313871 12980
048addec 129812001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 12982
048addec
JD
12983 * window.c (enlarge_window): In new preserve_before code, convert
12984 CURBEG from lisp object to integer before doing arithmetic.
6052529b 12985
048addec 129862001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 12987
048addec 12988 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 12989
048addec 129902001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 12991
048addec
JD
12992 * keyboard.c (record_char): Ignore duplicate help-echo events only
12993 separated by mouse-movement. When tracking mouse, only record
12994 first and last mouse-movement event in same window.
12995 Don't record mouse-movement events in keyboard macros.
3ce081f5 12996
048addec 129972001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 12998
048addec
JD
12999 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
13000 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 13001
048addec
JD
13002 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
13003 instead of Fstring_as_unibyte.
9fabb2f5 13004
048addec 130052001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 13006
048addec 13007 The following changes remove mocklisp support:
9fabb2f5 13008
048addec 13009 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 13010
048addec
JD
13011 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
13012 `Qmocklisp' and `Qmocklisp_arguments'.
13013 Remove prototype of syms_of_mocklisp.
2fa0eedf 13014
048addec 13015 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 13016
048addec
JD
13017 * callint.c: Do not include mocklisp.h.
13018 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 13019
048addec
JD
13020 * eval.c: Remove variables `Qmocklisp_arguments',
13021 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
13022 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
13023 Do not test for mocklisp case.
13024 (Fwhile): Remove unused variable `tem'.
13025 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 13026
048addec 13027 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 13028
048addec 13029 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 13030
048addec 13031 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 13032
048addec 130332001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 13034
048addec
JD
13035 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
13036 to the left or to the right of the pointer, put it against
13037 the left screen edge.
6108b49c 13038
048addec 130392001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 13040
048addec
JD
13041 * Makefile.in (distclean): Remove .gdbinit if we are building
13042 outside the source tree.
5eea19a4 13043
048addec 130442001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 13045
048addec 13046 * w32.c (emacs_root_dir): New function.
5eea19a4 13047
048addec 13048 * msdos.c (emacs_root_dir): New function.
5eea19a4 13049
048addec
JD
13050 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
13051 of the current drive as the fallback for default_directory.
438e57dd 13052
048addec
JD
13053 * dired.c (file_name_completion): Run the elements of
13054 completion-ignored-extensions through ENCODE_FILE.
438e57dd 13055
048addec
JD
13056 * lisp.h (scmp): Remove prototype, since it's now a static
13057 function private to dired.c.
c88e5347 13058
048addec 130592001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 13060
048addec
JD
13061 * dired.c (scmp): Function moved from minibuf.c.
13062 Delete multibyte handling--used only on encoded strings.
59ce1461 13063
048addec 13064 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 13065
048addec 13066 * fns.c (merge): Add QUIT call.
59ce1461 13067
048addec 130682001-12-18 Dave Love <fx@gnu.org>
8727d588 13069
048addec
JD
13070 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
13071 language/georgian.el.
8727d588 13072
048addec 130732001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 13074
048addec
JD
13075 * Makefile.in (lisp, shortlisp): Synchronize with changes to
13076 lisp/Makefile.in:DONTCOMPILE.
cc63037e 13077
048addec 130782001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 13079
048addec
JD
13080 * xdisp.c (window_box_height): Do not return negative values.
13081 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 13082
048addec 13083 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 13084
048addec 13085 * term.c (keys): Likewise.
deece6f5 13086
048addec 13087 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 13088
048addec 130892001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 13090
048addec
JD
13091 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
13092 patch (COMPOSING_P, not COMPOSING).
28ff4293 13093
048addec 130942001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 13095
048addec 13096 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 13097
048addec
JD
13098 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
13099 before calling decode_coding.
9b46de40 13100
048addec 13101 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 13102
048addec
JD
13103 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
13104 instead of only for COMPOSITION_DISABLED.
9b46de40 13105
048addec 131062001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 13107
048addec 13108 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 13109
048addec 13110 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 13111
048addec
JD
13112 * buffer.h (struct buffer): New field `display_error_modiff'.
13113 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 13114
048addec 13115 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 13116
048addec
JD
13117 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
13118 Call redisplay_window, but not if display_error_modiff field says no.
13119 (redisplay_window_error): New function.
13120 (displayed_buffer): New variable.
13121 (redisplay_internal, redisplay_windows): Call the new functions
13122 instead of redisplay_window directly.
2cd23960 13123
048addec 131242001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 13125
048addec 13126 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 13127
048addec 131282001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 13129
048addec 13130 * makefile.w32-in (EMACSLOADPATH): Define.
f9711de4 13131 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
048addec 13132 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 13133
048addec 131342001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 13135
048addec
JD
13136 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
13137 parameter have a numeric value all the time.
f6fa0866 13138
048addec 13139 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 13140
048addec 131412001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 13142
048addec 13143 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 13144
048addec
JD
13145 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
13146 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 13147
048addec 131482001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 13149
048addec
JD
13150 * xdisp.c (move_it_vertically_backward): Change heuristic
13151 for the case that we didn't move far enough initially.
91c153e2 13152
048addec
JD
13153 * window.c (Frecenter): Simplify computation in the case of window
13154 system frames and ARG < 0; use window_box_height.
65b7d3e7 13155
048addec 131562001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 13157
048addec
JD
13158 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
13159 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 13160
048addec 131612001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 13162
048addec
JD
13163 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
13164 arg is negative.
be676094 13165
048addec 131662001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 13167
048addec
JD
13168 * m/hp800.h: Split the __hpux conditional into the parts
13169 that are right for GNU/Linux too and the parts that are not.
13170 Use the former if GNU_LINUX.
13171 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 13172
048addec 13173 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 13174
048addec 131752001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 13176
048addec
JD
13177 * macros.c, msdos.c, w16select.c: Change doc-string comments to
13178 `new style' [w/`doc:' keyword].
032a857d 13179
048addec 131802001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 13181
048addec
JD
13182 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
13183 before using.
b6270150 13184
048addec 131852001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 13186
048addec
JD
13187 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
13188 keyword].
98cbb9fa 13189
048addec 131902001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 13191
048addec 13192 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 13193
048addec 13194 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 13195
048addec 131962001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 13197
048addec
JD
13198 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
13199 Add comment to explain where the struct came from.
13200 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
13201 (add_menu_item): Process pop-up menus first to avoid memory leak.
13202 (add_menu_item, w32_menu_display_help): Use `help' field as
13203 Lisp_Object.
13204 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 13205
048addec 132062001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 13207
048addec 13208 * COPYING: Moved back.
fa336b91 13209
048addec
JD
13210 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
13211 Add parentheses around && within ||.
077907d4 13212
048addec 13213 * indent.c (compute_motion): Likewise.
aa2af83a 13214
048addec 13215 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 13216
048addec
JD
13217 * coding.c (setup_coding_system, shrink_encoding_region)
13218 (Fdecode_sjis_char): Likewise.
60a653f1 13219
048addec 132202001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 13221
048addec
JD
13222 * xdisp.c (display_mode_element): Don't read past end of string if
13223 it ends with '%'.
60a653f1 13224
048addec
JD
13225 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
13226 can hold.
60a653f1 13227
048addec
JD
13228 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
13229 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
13230 type changed to Lisp_Object.
13231 (syms_of_data): DEFVAR_LISP them.
60a653f1 13232
048addec 132332001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 13234
048addec
JD
13235 * callproc.c (init_callproc): Set Vdata_directory based on the source
13236 location whenever Emacs was run uninstalled.
60a653f1 13237
048addec 132382001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 13239
048addec
JD
13240 * config.in (HAVE_WORKING_VFORK): New #undefs.
13241 * process.c (create_process):
13242 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
13243 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
13244 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
13245 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
13246 * m/intel386.h (HAVE_VFORK): Likewise.
13247 * m/mips-siemens.h (HAVE_VFORK): Likewise.
13248 * m/mips.h (HAVE_VFORK): Likewise.
13249 * s/freebsd.h (vfork): Remove #define.
13250 * s/lynxos.h (HAVE_VFORK): Remove #undef.
13251 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 13252
048addec 132532001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 13254
048addec
JD
13255 * s/hpux10.h (random): Add undef.
13256 (HAVE_RANDOM): Define it just once.
60a653f1 13257
048addec 132582001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13259
048addec 13260 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 13261
048addec 132622001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 13263
048addec
JD
13264 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
13265 scroll bars of the frame before deleting the frame itself. If the
13266 frame has a widget, delete the frame with XtDestroyWidget, and do
13267 not call XDestroyWindow before that.
60a653f1 13268
048addec 132692001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 13270
048addec 13271 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 13272
048addec 13273 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 13274
048addec 132752001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 13276
048addec
JD
13277 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
13278 excessively large.
60a653f1 13279
048addec
JD
13280 * insdel.c (make_gap_larger): New function.
13281 (make_gap_smaller): New function.
13282 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
13283 Call make_gap_smaller if arg is negative.
60a653f1 13284
048addec 132852001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13286
048addec
JD
13287 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
13288 Pass a dummy argument when calling interrupt_signal.
13289 (parse_menu_item): Mark disabled items before checking for empty def.
13290 (read_char_minibuf_menu_prompt): Make safety more visible.
13291 (read_key_sequence): Add a `first_unbound' variable.
13292 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
13293 unbound prefix as soon as we can detect it.
60a653f1 13294
048addec
JD
13295 * doc.c (Fsnarf_documentation): Add prototype.
13296 (get_doc_string): Handle negative arguments.
13297 (Fdocumentation): Use AREF and ASIZE.
13298 Move the calls to get_doc_string to a single place.
13299 Don't confuse an interactive-spec for a docstring reference.
13300 (Fdocumentation_property): Take advantage of the fact that
13301 get_doc_string now ignores the sign of the docstring position.
60a653f1 13302
048addec 13303 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 13304
048addec 133052001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13306
a64387ee 13307 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
60a653f1 13308
048addec 133092001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13310
048addec
JD
13311 * xterm.c (x_draw_image_relief): Use predefined macro instead of
13312 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 13313
048addec 133142001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 13315
048addec
JD
13316 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
13317 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 13318
048addec 13319 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 13320
048addec 133212001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13322
048addec 13323 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 13324
048addec 133252001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 13326
048addec 13327 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 13328
048addec 133292001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 13330
f63fd14e 13331 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 13332
048addec
JD
13333 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
13334 [!WM_MOUSELEAVE]: Define.
60a653f1 13335
048addec
JD
13336 * w32menu.c (current_popup_menu, get_menu_item_info):
13337 (set_menu_item_info): New vars.
13338 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
13339 (w32_menu_show): Set current_popup_menu.
13340 (add_menu_item): Allocate new strings for owner-drawn menu items
13341 and help strings.
13342 Use owner-draw for disabled menu items again.
13343 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
13344 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 13345
048addec
JD
13346 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
13347 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
13348 <WM_EXITMENULOOP>: Free menu strings.
13349 <WM_MOUSELEAVE>: Stop tracking mouse.
13350 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 13351
048addec
JD
13352 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
13353 and mouse face.
60a653f1 13354
048addec 133552001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 13356
048addec
JD
13357 The following changes add left-fringe and right-fringe
13358 frame parameters to adjust fringe widths, or remove one or
13359 both fringes.
60a653f1 13360
048addec
JD
13361 * frame.h (struct frame): Remove trunc_area_pixel_width and
13362 trunc_area_cols fields.
13363 (Qleft_fringe, Qright_fringe): Declare.
13364 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 13365
048addec
JD
13366 * frame.c (Qleft_fringe, Qright_fringe): New vars.
13367 (syms_of_frame): Initialize them.
60a653f1 13368
048addec
JD
13369 * window.c (coordinates_in_window): Handle separate left and right
13370 fringe widths.
60a653f1 13371
048addec
JD
13372 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
13373 and fringe_cols fields.
13374 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
13375 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
13376 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
13377 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
13378 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
13379 (x_compute_fringe_widths): Add prototype.
60a653f1 13380
048addec
JD
13381 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
13382 fill fringe evenly with small dashes.
f63fd14e 13383 (x_draw_fringe_bitmap): Clear background if necessary. Align and
048addec
JD
13384 clip the new ZV bitmap to avoid jitter between rows.
13385 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
13386 background. Don't draw fringe bitmaps if fringe width is zero.
13387 (x_compute_fringe_widths): New function.
13388 (x_new_font, x_set_window_size_1): Use it.
60a653f1 13389
048addec
JD
13390 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
13391 (x_set_frame_parameters): Process `font' parameter before other
13392 parameters as fringe widths depend on it.
13393 (x_set_fringe_width): New function.
13394 (x_figure_window_size): Use x_compute_fringe_widths.
13395 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
13396 parameters.
60a653f1 13397
048addec
JD
13398 * widget.c (set_frame_size): Use x_compute_fringe_widths.
13399 (EmacsFrameSetCharSize): Ditto.
60a653f1 13400
048addec
JD
13401 * w32term.h: Merged changes from xterm.h.
13402 * w32term.c: Merged changes from xterm.c.
13403 * w32fns.c: Merged changes from xfns.c.
60a653f1 13404
048addec 134052001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13406
048addec 13407 * COPYING: Removed.
60a653f1 13408
048addec 134092001-11-29 Dave Love <fx@gnu.org>
60a653f1 13410
048addec
JD
13411 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
13412 extra extra slot.
13413 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 13414
048addec 134152001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13416
048addec
JD
13417 * fileio.c (file-name-coding-system)
13418 (default-file-name-coding-system): Doc fix (links to referenced
13419 variables added).
60a653f1 13420
048addec 134212001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13422
048addec
JD
13423 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
13424 Add dummy uses of gcproN variables.
60a653f1 13425
048addec
JD
13426 * category.c (describe_category, describe_category_1)
13427 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
13428 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 13429
048addec 134302001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 13431
048addec 13432 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 13433
048addec
JD
13434 * Makefile.in (lispdir): New variable, referring to build dir.
13435 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 13436
048addec 134372001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 13438
048addec
JD
13439 * w32menu.c (w32_menu_display_help): Actually add the new argument
13440 OWNER.
60a653f1 13441
048addec 134422001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 13443
048addec
JD
13444 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
13445 menu items. From David Ponce <dponce@wanadoo.fr>.
13446 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
13447 conditionally.
f63fd14e 13448 (w32_menu_display_help): New argument OWNER. Rewritten to store a
048addec 13449 help event in the owner frame's keyboard buffer.
60a653f1 13450
048addec
JD
13451 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
13452 (Fx_show_tip): Don't subtract last width from row width.
13453
13454 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
13455 (w32_read_socket): Use EQ to compare frames.
60a653f1 13456
048addec 134572001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 13458
048addec
JD
13459 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
13460 OVERLAPS_P.
60a653f1 13461
048addec 134622001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13463
048addec
JD
13464 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
13465 `gcpro3' and `gcpro4'.
60a653f1 13466
048addec 13467 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 13468
048addec 134692001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13470
048addec 13471 * ccl.c: Use AREF and ASIZE.
60a653f1 13472
048addec 134732001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13474
048addec
JD
13475 * lisp.h (run_hook_list_with_args): Remove.
13476 (LIST_END_P): Fix call to wrong_type_argument.
13477 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 13478
048addec 134792001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13480
048addec
JD
13481 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
13482 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 13483
048addec
JD
13484 * eval.c: Use AREF and ASIZE.
13485 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 13486
048addec
JD
13487 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
13488 which match the end of the file-name.
13489 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
13490 is not a valid env var, but leave it as is instead.
60a653f1 13491
048addec
JD
13492 * keymap.c (access_keymap): Handle t bindings like nil bindings.
13493 Make nil bindings in char-tables transparent.
13494 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 13495
048addec 134962001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 13497
048addec
JD
13498 * textprop.c (set_text_properties_1): Allow START, END in either order.
13499 Do nothing if range is empty.
60a653f1 13500
048addec 13501 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 13502
048addec
JD
13503 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
13504 (clean): Not here.
60a653f1 13505
048addec 135062001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13507
048addec
JD
13508 * textprop.c (set_text_properties_1): Clearly mark that the
13509 interval should not be empty.
60a653f1 13510
048addec
JD
13511 * intervals.c (graft_intervals_into_buffer):
13512 Don't call set_text_properties_1 on an empty interval.
60a653f1 13513
048addec 135142001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 13515
048addec 13516 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 13517
048addec
JD
13518 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
13519 don't lose the data in it.
60a653f1 13520
048addec 135212001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 13522
048addec 13523 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 13524
c62aec78 13525 * buffer.c (Fkill_buffer): Likewise.
60a653f1 13526
c62aec78 13527 * print.c (temp_output_buffer_setup): Likewise.
60a653f1 13528
048addec 135292001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13530
048addec 13531 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 13532
048addec 135332001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 13534
048addec
JD
13535 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
13536 Niemitalo <kon@iki.fi>.
60a653f1 13537
048addec 135382001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 13539
048addec 13540 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 13541
048addec
JD
13542 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
13543 (Fx_show_tip): Block input during frame creation.
13544 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 13545
048addec 135462001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 13547
048addec
JD
13548 * lread.c (Fload): Detect recursive load error for more than 3
13549 nestings of the same file.
13550 (Vrecursive_load_depth_limit): Variable deleted.
13551 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 13552
048addec 135532001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 13554
048addec
JD
13555 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
13556 mouse position if either left or top is not specified.
60a653f1 13557
048addec
JD
13558 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
13559 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
13560 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
13561 (my_create_tip_window): Assign tip_window.
13562 (x_create_tip_frame): Use same defaults as X.
13563 (compute_tip_xy): Remove unused variable. Use full screen width.
f63fd14e 13564 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 13565
048addec
JD
13566 * w32term.c (x_after_update_window_line): Doc fix.
13567 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
13568 frames.
13569 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 13570
048addec
JD
13571 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
13572 for all Windowed systems.
60a653f1 13573
048addec 135742001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 13575
048addec
JD
13576 * msdos.c (IT_clear_screen): If the frame's faces are not yet
13577 realized, use the initial screen colors to clear the screen.
60a653f1 13578
048addec 135792001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13580
048addec
JD
13581 * textprop.c (Fset_text_properties): Remove unused variables
13582 `unchanged', `prev_changed', `s' and `len'.
60a653f1 13583
048addec
JD
13584 * search.c (Freplace_match): Remove unused variable `inslen'.
13585
13586 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
13587
135882001-11-22 Jason Rumney <jasonr@gnu.org>
13589
13590 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
13591 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
13592 (my_create_tip_window): New function.
13593 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
13594 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
13595
135962001-11-20 Jason Rumney <jasonr@gnu.org>
13597
13598 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
13599 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
13600
13601 * w32fns.c (Vw32_system_coding_system): Remove.
13602 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
13603
136042001-11-19 Stefan Monnier <monnier@cs.yale.edu>
13605
13606 * fileio.c (Fwrite_region): Move choose_write_coding_system to
13607 after build_annotations.
13608
13609 * syntax.c (describe_syntax): Add dummy arg.
13610 (describe_syntax_1): Update call to describe_vector.
13611
13612 * category.c (describe_category): Add dummy arg.
13613 (describe_category_1): Update call to describe_vector.
13614
13615 * keymap.c (Fdescribe_vector): Add `describer' parameter.
13616 (describe_command, describe_translation): Add dummy second param.
13617 (describe_map): Call elt_describer with two arguments.
13618 (describe_vector_princ): Add `fun' parameter.
13619 Call it instead of the hardcoded `princ'.
13620 (describe_vector): Add arg `args'.
13621 Pass it as a new second argument to elt_describer.
60a653f1 13622
048addec 13623 * keymap.h (describe_vector): Update prototype.
60a653f1 13624
048addec
JD
13625 * frame.c: Don't include keymap.h any more.
13626 (keys_of_frame): Remove.
60a653f1 13627
048addec 13628 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 13629
048addec 13630 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 13631
048addec 136322001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 13633
048addec
JD
13634 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
13635 if defined, 0 otherwise.
13636 (MAP_FAILED): Define if not defined and use it to test mmap failure.
13637 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 13638
048addec 136392001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 13640
048addec 13641 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 13642
048addec 136432001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 13644
048addec
JD
13645 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
13646 (x_draw_bar_cursor): If the background color of the glyph under
13647 the cursor equals the frame's cursor color, use the glyph's
13648 foreground color for drawing the bar cursor.
13649 (x_after_update_window_line): Clear internal border in different
13650 circumstances.
13651 (w32_set_vertical_scroll_bar): Check for width and height > 0.
13652 (w32_draw_relief_rect): Correct relief by 1 pixel.
13653 (x_set_glyph_string_background_width):
13654 Set extends_to_end_of_line_p if the row's fill_line_p is set and
13655 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
13656 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
13657 if cursor_in_non_selected_windows is false.
13658 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
13659 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
13660 Notice if cursor gets overwritten.
13661 (notice_overwritten_cursor): Renamed from
13662 note_overwritten_text_cursor. Rewritten to take glyph widths
13663 into account, and to take X positions as parameters.
13664 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
13665 around call to x_draw_glyphs.
13666 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
13667 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
13668 color to use for image glyph reliefs.
13669 (x_draw_image_relief): Accept zero tool_bar_button_relief.
13670 (glyph_rect): Remove unused variable `area'.
60a653f1 13671
048addec
JD
13672 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
13673 some items.
13674 (x_set_internal_border_width): Set frame garbaged when window
13675 doesn't exist yet.
13676 (Fx_create_frame): Accept zero tool_bar_button_relief.
13677 (x_clear_image_1, four_corners_best, image_background)
13678 (image_background_transparent): New functions.
13679 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
13680 (gs_format): Add `:background' entry.
13681 (lookup_image): Set IMG's background color if specified.
13682 (pbm_load, xbm_load_image, png_load): Set IMG's background field
13683 when appropriate.
13684 (x_clear_image_1): Reset `background_valid' and
13685 `background_transparent_valid' fields.
13686 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
13687 calculating it here. Set IMG's background_transparent field.
13688 (enum xpm_keyword_index): Add XPM_BACKGROUND.
13689 (enum png_keyword_index): Add PNG_BACKGROUND.
13690 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
13691 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
13692 (enum gif_keyword_index): Add GIF_BACKGROUND.
13693 (enum gs_keyword_index): Add GS_BACKGROUND.
13694 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
13695 Pre-calculate image background color where necessary.
13696 (x_create_x_image_and_pixmap, xbm_load, gs_load):
13697 Use display info's n_cbits entry for screen depth.
13698 (Fx_show_tip): Remove unused variables `buffer', `top',
13699 `left', `max_width' and `max_height'.
60a653f1 13700
048addec 13701 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 13702
048addec 137032001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 13704
048addec 13705 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 13706
048addec 137072001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13708
048addec 13709 * frame.c (Fframe_live_p): Doc fix.
60a653f1 13710
048addec 137112001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 13712
048addec
JD
13713 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
13714 (message_dolog_marker3): New static variables hold three markers.
13715 (syms_of_xdisp): Initialize and staticpro them.
13716 (message_dolog): Use message_dolog_marker1..3 instead of
13717 allocating markers each time. Unchain them when done.
60a653f1 13718
048addec 137192001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 13720
048addec 13721 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 13722
048addec 137232001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 13724
048addec 13725 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 13726
048addec 137272001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 13728
048addec 13729 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 13730
048addec 137312001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 13732
048addec 13733 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 13734
048addec 137352001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 13736
048addec
JD
13737 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
13738 with invalid position.
60a653f1 13739
048addec 137402001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 13741
048addec 13742 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 13743
048addec
JD
13744 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
13745 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
13746 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 13747
048addec 13748 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 13749
048addec 137502001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13751
048addec
JD
13752 * fileio.c (build_annotations): Split off the tail.
13753 (build_annotations_2): New fun. Extracted from build_annotations.
13754 (Fwrite_region): Split the call to build_annotations into two
13755 calls to build_annotations and build_annotations_2.
077907d4 13756
048addec 137572001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 13758
048addec
JD
13759 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
13760 clear_waiting_for_input with argument.
1756e2fb 13761
048addec 13762 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 13763
048addec 13764 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 13765
048addec 13766 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 13767
048addec 13768 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 13769
048addec 137702001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 13771
048addec
JD
13772 * fileio.c (choose_write_coding_system): New fun, extracted
13773 from Fwrite_region.
13774 (Fwrite_region): Use it.
fa336b91 13775
048addec
JD
13776 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
13777 (funcall_lambda, run_hook_with_args): Make static and add prototype.
13778 (ml_apply, find_handler_clause): Add prototype.
fa336b91 13779
048addec 137802001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 13781
048addec 13782 * config.in: Add #undef HAVE_COFF_H.
fa336b91 13783
048addec
JD
13784 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
13785 Required for ISC 4.1.
fa336b91 13786
048addec 137872001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 13788
048addec
JD
13789 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
13790 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 13791
048addec 137922001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 13793
048addec
JD
13794 The following changes are made to clean up the various internal
13795 references to the fringes to actually use the term `fringe' for
13796 them. Previously, they were called `flags areas', `bitmap areas',
13797 `left/right side of windows', or implicitly as `flags' or
13798 `bitmaps':
fa336b91 13799
048addec 13800 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
f63fd14e 13801 Comments fixed. Use renamed symbols.
06e8f738 13802
f63fd14e 13803 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 13804
048addec
JD
13805 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
13806 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
13807 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 13808
048addec 13809 * msdos.c: Comment fix.
9ce647f4 13810
048addec 13811 * w32fns.c: Use renamed symbols.
9b784ab8 13812
f63fd14e 13813 * w32term.c: Comment fixes. Use renamed symbols.
048addec
JD
13814 (fringe_bitmap_type): Renamed from bitmap_type.
13815 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
13816 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
13817 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 13818
f63fd14e 13819 * w32term.h: Comment fixes. Use renamed symbols.
048addec
JD
13820 (fringes_extra): Renamed from flags_areas_extra.
13821 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
13822 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
13823 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
13824 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
13825 (FRAME_X_LEFT_FRINGE_WIDTH):
13826 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
13827 (FRAME_X_RIGHT_FRINGE_WIDTH):
13828 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 13829
048addec 13830 * widget.c: Use renamed symbols.
9f7e52b4 13831
f63fd14e 13832 * window.c: Comment fixes. Use renamed symbols.
048addec 13833 (coordinates-in-window-p): Doc fix.
fa336b91 13834
f63fd14e 13835 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 13836
048addec 13837 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 13838
048addec 13839 * xfns.c: Use renamed symbols.
89512fcd 13840
f63fd14e 13841 * xterm.c: Comment fixes. Use renamed symbols.
048addec
JD
13842 (fringe_bitmap_type): Renamed from bitmap_type.
13843 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
13844 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
13845 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 13846
f63fd14e 13847 * xterm.h: Comment fixes. Use renamed symbols.
048addec
JD
13848 (fringes_extra): Renamed from flags_areas_extra.
13849 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
13850 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
13851 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
13852 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
13853 (FRAME_X_LEFT_FRINGE_WIDTH):
13854 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
13855 (FRAME_X_RIGHT_FRINGE_WIDTH):
13856 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
13857
138582001-11-15 Jason Rumney <jasonr@gnu.org>
13859
13860 * w32menu.c (add-menu-item): Make help_echo and radio buttons
13861 work for most menu items. From David Ponce
13862 <david.ponce@wanadoo.fr>.
13863
138642001-11-15 Gerd Moellmann <gerd@gnu.org>
13865
13866 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
13867 Some x_set_* function expect to be called even if old and new
13868 value are equal.
13869
13870 * xdisp.c (build_desired_tool_bar_string): Accept zero
13871 tool_bar_button_relief.
13872
13873 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
13874
13875 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
13876
13877 * xterm.c (x_draw_bar_cursor): If the background color of the
13878 glyph under the cursor equals the frame's cursor color, use
13879 the glyph's foreground color for drawing the bar cursor.
13880
13881 * dispnew.c (direct_output_forward_char): Fix character/byte
13882 position comparison.
7d18891d 13883
048addec 138842001-11-15 Miles Bader <miles@gnu.org>
d2936d21 13885
048addec
JD
13886 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
13887 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
13888 Update arguments to find_field.
13889 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
13890 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
13891 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
13892 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 13893
048addec 138942001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 13895
048addec 13896 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 13897
048addec
JD
13898 * dispextern.h (image_background, image_background_transparent):
13899 Conditionalize on HAVE_X_WINDOWS.
7d18891d 13900
048addec 139012001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 13902
048addec 13903 * print.c (Fprin1_to_string): Doc fix.
7d18891d 13904
048addec 13905 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 13906
048addec 13907 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 13908
048addec 13909 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 13910
048addec 13911 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 13912
048addec 13913 * eval.c (syms_of_eval): Doc fix.
7d18891d 13914
048addec 13915 * coding.c (syms_of_coding): Doc fix.
7d18891d 13916
048addec 13917 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 13918
048addec 13919 * dispnew.c (syms_of_display): Doc fix.
9474c847 13920
048addec 13921 * category.c (Fget_unused_category): Doc fix.
9474c847 13922
048addec 13923 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 13924
048addec 139252001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 13926
048addec 13927 * print.c (prin1, print): Doc fix.
e3059a5d 13928
048addec 139292001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 13930
048addec
JD
13931 * fontset.h: Remove declarations of variables
13932 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 13933
048addec
JD
13934 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
13935 `Vclip_large_size_font'.
eae936e2 13936
048addec 139372001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 13938
048addec 13939 * w32fns.c: Doc fix.
ddb67bdc 13940
048addec 139412001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 13942
048addec 13943 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 13944
048addec 13945 * fns.c: Doc fix.
6e1b91d7 13946
048addec 13947 * emacs.c: Doc fix.
1c1d3d69 13948
048addec 13949 * coding.c: Doc fix.
1c1d3d69 13950
048addec
JD
13951 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
13952 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
13953 `new style' [w/`doc:' keyword].
b6f4c7ba 13954
048addec 139552001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 13956
048addec
JD
13957 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
13958 LeaveNotify events. Only FocusIn and FocusOut do that now.
13959 (x_display_and_set_cursor): Do display hollow cursors in active
13960 minibuffer windows when they are not selected.
b6f4c7ba 13961
048addec 139622001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 13963
048addec 13964 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
f63fd14e
JB
13965 * w32term.c: Change doc-string comments to `new style'
13966 [w/`doc:' keyword]. Doc fixes.
a89f435d 13967
048addec
JD
13968 * w32fns.c: Don't define max.
13969 (Fx_open_connection): Only execute once.
a4cd0cd7 13970
048addec 139712001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 13972
048addec
JD
13973 * ccl.c: Change macros to use do-while block instead of if-else.
13974 Use braces to follow GNU Coding Standards.
eafb659a 13975
048addec 139762001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 13977
048addec 13978 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 13979
048addec 13980 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 13981
048addec
JD
13982 * insdel.c (replace_range): Use adjust_markers_for_replace
13983 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 13984
048addec 13985 * intervals.h: Declare set_text_properties and set_text_properties_1.
a4cd0cd7 13986
048addec
JD
13987 * textprop.c (set_text_properties_1): New subroutine
13988 broken out of set_text_properties.
13989 (set_text_properties): Use set_text_properties_1.
91823618 13990
048addec
JD
13991 * intervals.c (graft_intervals_into_buffer):
13992 Use set_text_properties_1 to clear out properties.
91823618 13993
048addec
JD
13994 * search.c (Freplace_match): Use replace_range to insert
13995 and delete. Don't request property inheritance from
13996 surrounding text.
86928dfb 13997
048addec 139982001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 13999
048addec 14000 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
f63fd14e 14001 vertical fonts. Allow them if face name is explicitly specified.
048addec 14002 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 14003
048addec 140042001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 14005
048addec
JD
14006 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
14007 instead of malloc/free.
a78e0303 14008
048addec 140092001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 14010
048addec
JD
14011 * xfaces.c (merge_face_vectors): Use braces to follow GNU
14012 Coding Standards.
14013 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 14014
048addec 14015 * buffer.c (Fbury_buffer): Likewise.
0c99b139 14016
048addec 14017 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 14018
048addec
JD
14019 * coding.c (encode_coding): Use precomputed value of `src'.
14020 (encode_coding): Remove unused variable `src_end'.
14021 (code_convert_region): Remove unused variables `count'.
830ddd77 14022
048addec 140232001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 14024
048addec
JD
14025 * w32term.c (x_display_and_set_cursor): Do not move system caret
14026 if cursor_glyph is NULL.
55c6d645 14027
048addec 140282001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 14029
048addec 14030 * keymap.c (access_keymap): Fix compilation error.
5de38842 14031
048addec 140322001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 14033
048addec 14034 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 14035
048addec 140362001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 14037
048addec
JD
14038 * intervals.c (graft_intervals_into_buffer):
14039 Remove #ifdef'd-out code.
14040 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 14041
048addec
JD
14042 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
14043 code (eval-current-buffer).
14044 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 14045
048addec 140462001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 14047
048addec 14048 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 14049
048addec 140502001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 14051
048addec 14052 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 14053
048addec
JD
14054 * keyboard.c (make_lispy_event): Check integerness and fix
14055 Lisp_Object/int mixup.
17893c65 14056
048addec 140572001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 14058
048addec 14059 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 14060
048addec
JD
14061 * fontset.c (fontset_font_pattern): Remove unused variable
14062 `family_registry'.
d5360cc7 14063
048addec 14064 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 14065
048addec 140662001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 14067
048addec 14068 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 14069
048addec
JD
14070 * buffer.c (Fkill_buffer): Don't delete auto save file
14071 if buffer is modified.
d9d54213 14072
048addec 140732001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 14074
048addec
JD
14075 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
14076 CHECK_NUMBER_CDR.
b116830b 14077
048addec 140782001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 14079
048addec 14080 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 14081
048addec 140822001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 14083
048addec 14084 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 14085
048addec 140862001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 14087
048addec 14088 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 14089
048addec 140902001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 14091
048addec
JD
14092 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
14093 the program image directly.
982f6c7e 14094
048addec 140952001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 14096
048addec 14097 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 14098
048addec 140992001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 14100
048addec
JD
14101 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
14102 and CHECK_BUFFER.
d31053f9 14103
048addec
JD
14104 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
14105 (record_char): Likewise.
d31053f9 14106
048addec
JD
14107 * keyboard.c (make_lispy_event): Don't insist a drag event must
14108 move to a different buffer position. Instead, check for moving at
14109 least double_click_fuzz.
982f6c7e 14110
048addec 14111 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 14112
048addec 14113 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 14114
048addec
JD
14115 * indent.c (current_column_1, Fmove_to_column): Separate the code
14116 for display-table glyphs from the code for buffer text, to fix
14117 bugs in the former.
830047fd 14118
048addec 141192001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 14120
048addec
JD
14121 * buffer.c (Fbuffer_local_value): New function.
14122 (syms_of_buffer): Defsubr it.
2df5238c 14123
048addec
JD
14124 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
14125 value of `cursor-in-non-selected-windows'.
4e397688 14126
048addec
JD
14127 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
14128 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
14129 (syms_of_xdisp): Initialize it.
48b0f3ae 14130
048addec 141312001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 14132
048addec 14133 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 14134
048addec
JD
14135 * coding.c: Change doc-string comments to `new style' [w/`doc:'
14136 keyword].
3ecaf7e5 14137
048addec
JD
14138 * eval.c (top_level_value, top_level_set): Remove commented and
14139 #ifdef'd-out code.
14140 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 14141
048addec 141422001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 14143
048addec 14144 * xfns.c: Include unistd.h, if it exists.
8db2e33b 14145
048addec 14146 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 14147
048addec 14148 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 14149
048addec 141502001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 14151
048addec
JD
14152 * lisp.h (CHECK_STRING_CAR): New macro.
14153 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
14154 treating XCAR and XCDR as lvalues.
14155 (openp): Use CHECK_STRING_CAR.
14156 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 14157
048addec 141582001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 14159
048addec
JD
14160 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
14161 (SIGMASKTYPE): Define.
1b1acc13 14162
048addec 14163 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 14164
048addec 141652001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 14166
048addec
JD
14167 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
14168 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
14169 Fix typos in comments.
6cb16f95 14170
048addec
JD
14171 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
14172 and #ifdef'd-out code.
14173 Fix and reindent comments.
6cb16f95 14174
048addec 14175 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 14176
048addec
JD
14177 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
14178 argument `i' in macros.
6cb16f95 14179
048addec
JD
14180 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
14181 `i' in macros.
7e9d3c2f 14182
048addec
JD
14183 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
14184 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
14185 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
14186 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
14187 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
14188 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
14189 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
14190 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
14191 in macros.
7e9d3c2f 14192
048addec
JD
14193 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
14194 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
14195 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
14196 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
14197 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
14198 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
14199 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
14200 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
14201 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
14202 (remove unused second argument).
7e9d3c2f 14203
048addec 142042001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 14205
048addec
JD
14206 * syntax.c (describe_syntax): New wrapper.
14207 (Finternal_describe_syntax_value): Rename from describe_syntax.
14208 Don't insert space at front and \n at the end.
14209 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 14210
048addec
JD
14211 * regex.c (re_wctype): Try to fix some warnings.
14212 (regcomp, regexec): Don't forget the __restrict.
9ba48103 14213
048addec 142142001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 14215
048addec 14216 * textprop.c (Fget_char_property): Doc fix.
9ba48103 14217
048addec 142182001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 14219
048addec 14220 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 14221
048addec 14222 * data.c (Fsetq_default): Ditto.
c22e59e1 14223
048addec 14224 * callint.c (Finteractive): Ditto.
9271ed2c 14225
048addec 142262001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 14227
048addec
JD
14228 * macros.c: Don't include keymap.h any more.
14229
142302001-11-01 Richard M. Stallman <rms@gnu.org>
14231
14232 * data.c (Fmake_local_variable): Doc fix.
14233
14234 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
14235 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 14236
048addec 14237 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
14238 bindings along with or instead of the buffer local map.
14239 Make the overriding maps override what they should.
14240
f00691a3 142412001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
14242
14243 * window.c (grow_mini_window): Fix typo in comment.
14244
27188d11
GM
142452001-11-01 Gerd Moellmann <gerd@gnu.org>
14246
7b49b9d2
GM
14247 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
14248 (XTset_vertical_scroll_bar): Likewise.
14249
43f7c3ea
GM
14250 * xfns.c (x_build_heuristic_mask): Use four_corners_best
14251 instead of IMAGE_BACKGROUND.
c22e59e1 14252
b350c2e5
GM
14253 * xfns.c (four_corners_best): Reindent.
14254
c22e59e1 14255 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
14256 Handle :box so that it is possible to specify sexprs.
14257
bf00d461
EZ
142582001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
14259
14260 * s/hpux11.h: New file.
14261
f00691a3 142622001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 14263
2b209b97
PJ
14264 * emacs.c (USAGE1): Show command line option --no-window-system
14265 instead of --no-windows in usage.
14266 (standard_args): Rename --no-windows to --no-window-system.
14267 (bug_reporting_address): Follow Emacs coding conventions.
14268
9dbc9081
PJ
14269 * eval.c (Fcommandp): Doc fix.
14270 Change doc-string comments to `new style' [w/`doc:' keyword].
14271
4e10df59
PJ
14272 * frame.c (Fframe_live_p): Doc fix.
14273
14274 * buffer.c (selective-display-ellipses): Doc fix.
14275
dd387b25
GM
142762001-10-31 Gerd Moellmann <gerd@gnu.org>
14277
fe957e65
GM
14278 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
14279
dd387b25
GM
14280 * xfaces.c (realize_x_face): If C is not a single-byte character,
14281 set the face's colors_copied_bitwise_p instead of the defaulted_p
14282 members which have a different meaning.
14283 (free_face_colors): Do nothing for a face whose colors have been
14284 copied bitwise.
14285
c22e59e1 14286 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 14287
f00691a3 142882001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 14289
687784e8
PJ
14290 * marker.c, mocklisp.c: Change doc-string comments to `new style'
14291 [w/`doc:' keyword].
2e1280f8 14292
b9d9a9b9
GM
142932001-10-31 Gerd Moellmann <gerd@gnu.org>
14294
14295 * fns.c (require_unwind): Return Lisp_Object.
14296
f00691a3 142972001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 14298
fa1361cb
PJ
14299 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
14300 (last-input-char): Revert doc-string to be the same as the
14301 doc-string of `last-input-event'.
14302
6c465a15 14303 * xdisp.c: Fix typos in comments.
48400103 14304
eafa3196
GM
143052001-10-31 Gerd Moellmann <gerd@gnu.org>
14306
14307 * window.c (grow_mini_window): Handle case that the root
14308 window is already smaller than the nominal mininum height.
14309
747d3f2a
SM
143102001-10-30 Stefan Monnier <monnier@cs.yale.edu>
14311
bf9bb76f
SM
14312 * emacs.c (main): Don't call keys_of_macros any more.
14313
14314 * lisp.h (keys_of_macros): Remove.
14315
14316 * macros.c (keys_of_macros): Remove.
14317
747d3f2a
SM
14318 * xfaces.c (Fface_attribute_relative_p): Declare args.
14319
5e905a57
JR
143202001-10-30 Jason Rumney <jasonr@gnu.org>
14321
14322 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
14323 (enum_font_cb2): Ignore fonts with vertical orientation.
14324
3a426197
RS
143252001-10-30 Richard M. Stallman <rms@gnu.org>
14326
14327 * keyboard.c (Finput_pending_p): Doc fix.
14328
a742d646
GM
143292001-10-30 Gerd Moellmann <gerd@gnu.org>
14330
259cf6bc
GM
14331 * xterm.c (x_after_update_window_line): Don't run the code
14332 clearing in borders for rows whose visible height is 0.
14333
3f99f948
GM
14334 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
14335 resized_p flag is set. If not set, use the much less flickering
14336 method previously used.
14337
14338 * dispnew.c (change_frame_size_1): Set frame's resized_p.
14339
14340 * frame.h (struct frame) <resized_p>: New member.
14341
b4a3be43
GM
14342 * lread.c (to_multibyte): Ensure read_buffer is at least twice
14343 as large as the number of bytes to convert.
747d3f2a 14344
a742d646
GM
14345 * lread.c (to_multibyte): New function.
14346 (read1): Use it.
14347
cacbb9e9
EZ
143482001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
14349
14350 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
14351
99cb6b2f
GM
143522001-10-30 Gerd Moellmann <gerd@gnu.org>
14353
327f42ee 14354 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
14355 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
14356 if the row's fill_line_p is set and drawing the last glyph with
14357 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 14358
99cb6b2f
GM
14359 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
14360
8e8223e2
SM
143612001-10-29 Stefan Monnier <monnier@cs.yale.edu>
14362
14363 * xmenu.c: Include coding.h and charset.h.
14364 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
14365 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
14366 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
14367 Explicitly set wv->help. Use `TRUE' rather than `True'.
14368 (menu_help_callback): Use empty_string.
14369
14370 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
14371 (Fx_popup_dialog): Explicitly init f.
14372 (w32_menu_display_help): Use empty_string.
14373
4d083a8f
RS
143742001-10-29 Richard M. Stallman <rms@gnu.org>
14375
b2304472
RS
14376 * fns.c (Frequire): Detect recursive try to require the same
14377 feature 3 or more levels deep, and get error.
14378 (require_unwind): New subroutine.
14379 (require_nesting_list): New variable.
14380 (syms_of_fns): Init and staticpro it.
14381
4d083a8f
RS
14382 * print.c (print_object): Clarify indication of insertion type.
14383
2fe41216
EZ
143842001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
14385
90480000
EZ
14386 * coding.c (syms_of_coding): Document that locale-coding-system is
14387 used for decoding input on X.
14388
2fe41216
EZ
14389 * window.c (Fscroll_left, Fscroll_right): Doc fix.
14390
f00691a3 143912001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
14392
14393 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
14394 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
14395
60ebcfe8
GM
143962001-10-29 Gerd Moellmann <gerd@gnu.org>
14397
9a7bdceb
GM
14398 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
14399 use NO_CURSOR if cursor_in_non_selected_windows is false.
14400
3f08fcd2
GM
14401 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
14402 the slant attribute if FRAME is t.
14403
0ccfdad2
GM
14404 * xfns.c (x_set_internal_border_width): Set frame garbaged
14405 when X window doesn't exist yet.
14406
ef253080
GM
14407 * xterm.c (x_after_update_window_line): Clear internal border
14408 in different circumstances.
b116830b 14409
60ebcfe8
GM
14410 * xterm.c (XTread_socket) <KeyPress>: Don't use
14411 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
14412 <handa@etl.go.jp>.
14413
73d25f9c
EZ
144142001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
14415
14416 * m/ibms390.h: New file. From Adam Thornton
14417 <athornton@sinenomine.net>.
14418
cac1daf0
GM
144192001-10-28 Gerd Moellmann <gerd@gnu.org>
14420
053b3256 14421 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 14422
cac1daf0
GM
14423 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
14424 a loop counter.
14425
f00691a3 144262001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 14427
f9711de4 14428 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
186486eb 14429
4707d2d0
PJ
14430 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
14431 keyword].
14432 Fix typos in comments.
b116830b 14433
d883731c
PJ
14434 * emacs.c (bug_reporting_address): New function.
14435 Use it when displaying usage message.
14436
04012254
PJ
14437 * minibuf.c (read_minibuf): Remove unused external declaration of
14438 variable `Qread_only'.
14439
13b1a09c
PJ
14440 * keymap.c (access_keymap): Remove unused variable `charset'.
14441
5bbf4378
MB
144422001-10-28 Miles Bader <miles@gnu.org>
14443
14444 * xfaces.c (merge_face_heights): Handle TO being relative as well.
14445 Remove #ifdef'd-out code.
14446 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
14447 (syms_of_xfaces): Initialize them.
14448
1ce1e4ee
JR
144492001-10-27 Jason Rumney <jasonr@gnu.org>
14450
14451 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
14452 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
14453 position using the system caret.
14454
14455 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
14456 (w32_system_caret_height, w32_system_caret_x)
14457 (w32_system_caret_y): New variables for tracking system caret.
14458 (w32_initialize): Initialize them.
c2d53558 14459 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 14460
c2d53558
SM
14461 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
14462 New messages types.
1ce1e4ee
JR
14463
14464 * w32term.c (note_mouse_highlight): Clear old help_echo.
14465
f00691a3 144662001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 14467
bb4600a4
PJ
14468 * xterm.c: Fix typo in a comment.
14469
7db35a48
PJ
14470 * emacs.c: Fix typos in comments.
14471 Remove unnecessary spaces.
14472 Change doc-string comments to `new style' [w/`doc:' keyword].
14473 (USAGE2): Fix typos in usage string.
14474
a7248e4f
PJ
14475 * xterm.c: Fix typo in a comment.
14476
4e30ce42
PJ
14477 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
14478 emacs.c.
14479
62725a92
GM
144802001-10-27 Gerd Moellmann <gerd@gnu.org>
14481
798dbe1f 14482 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 14483 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
14484 farther backward when target_y was not reached.
14485
62725a92
GM
14486 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
14487 Display errno only if non-zero.
14488 (sound_warning): New function.
14489 (vox_configure): Don't treat failing to set sample rate as error.
14490 (various places): Improve error messages.
14491
d4e34d24
EZ
144922001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
14493
944e6f60
EZ
14494 * fileio.c (Faccess_file): Run the argument filename through
14495 Fexpand_file_name, before using it.
14496
d4e34d24
EZ
14497 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
14498 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
14499
38d2af0c
GM
145002001-10-26 Gerd Moellmann <gerd@gnu.org>
14501
da80a8d5
GM
14502 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
14503
38d2af0c
GM
14504 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
14505 Fix clearing in the case of scroll bars on the right.
c2d53558 14506
45de4a6f 145072001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
14508
14509 * w32gui.h (XImage): Add a dummy typedef.
14510
fbd5ceb2
GM
145112001-10-26 Gerd Moellmann <gerd@gnu.org>
14512
c2d53558 14513 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 14514
b23236fb
EZ
145152001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
14516
14517 * frame.c (Fframe_parameter): Fix last change.
14518
5d991fc4
EZ
14519 * fileio.c: Revert last change (which removed old commented-out
14520 version of expand-file-name). Add a comment that explains why
14521 this old version should not be removed.
14522
879eadc3
GM
145232001-10-25 Gerd Moellmann <gerd@gnu.org>
14524
75700ff2
GM
14525 * frame.c (Fframe_parameter): Fix a bug whereby some
14526 ``artificial'' frame parameters, like `minibuffer' were not
14527 obtained by calling Fframe_parameters.
14528
dfe92a6a
GM
14529 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
14530 cursor differently.
14531
879eadc3
GM
14532 * xdisp.c (move_it_vertically_backward): Compute line height
14533 differently. Add heuristic to try to be more compatible to 20.x.
14534
e1010ebe
SM
145352001-10-25 Stefan Monnier <monnier@cs.yale.edu>
14536
d73a471b
SM
14537 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
14538
d6da5a06
GM
14539 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
14540 boolean.
e1010ebe 14541
f66bd220
MB
145422001-10-25 Miles Bader <miles@gnu.org>
14543
14544 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
14545 BG is a pointer to a structure, not a structure.
14546 (gif_format, png_format): Add missing commas.
14547
d436d538
RS
145482001-10-24 Richard M. Stallman <rms@gnu.org>
14549
14550 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 14551 (syms_of_xfaces): Defsubr it.
d436d538 14552
f00691a3 145532001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
14554
14555 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
14556 variable `area'.
14557
f00691a3 145582001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 14559
c2d53558 14560 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 14561
e2a57b34
MB
145622001-10-25 Miles Bader <miles@gnu.org>
14563
14564 * dispextern.h (struct image): Add `background',
14565 `background_valid', and `background_transparent' fields.
14566 (image_background, image_background_transparent): New declarations.
14567 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
14568 * xfns.c (image_background, image_background_transparent)
14569 (four_corners_best): New functions.
c2d53558 14570 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
14571 (gs_format): Add `:background' entry.
14572 (lookup_image): Set IMG's background color if specified.
14573 (pbm_load, xbm_load_image, png_load): Set IMG's background field
14574 when appropriate.
14575 (x_clear_image_1): Reset `background_valid' and
14576 `background_transparent_valid' fields.
14577 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
14578 calculating it here. Set IMG's background_transparent field.
14579 (enum xpm_keyword_index): Add XPM_BACKGROUND.
14580 (enum png_keyword_index): Add PNG_BACKGROUND.
14581 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
14582 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
14583 (enum gif_keyword_index): Add GIF_BACKGROUND.
14584 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 14585 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
14586 Pre-calculate image background color where necessary.
14587 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
14588 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
14589 color to use for image glyph reliefs.
14590
b547b6e8
GM
145912001-10-24 Gerd Moellmann <gerd@gnu.org>
14592
d9e3b8c6
GM
14593 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
14594 in full-width rows.
c2d53558 14595
b547b6e8
GM
14596 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
14597 Fix clearing of area not covered by scroll bar.
14598
f00691a3 145992001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
14600
14601 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
14602 and `real_start'.
c2d53558 14603 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
14604 (glyph_rect): Remove unused variable `area'.
14605
76cb5e06
GM
146062001-10-24 Gerd Moellmann <gerd@gnu.org>
14607
bdbdebff 14608 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
14609
14610 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
14611 (row_containing_pos): Take additional argument DY.
14612 Treat rows ending in middle of char differently.
62e33982
GM
14613 (display_line): Handle tabs on window systems differently.
14614
14615 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
14616 with additional argument.
14617
14618 * dispextern.h (row_containing_pos): Adjust prototype.
14619
76cb5e06
GM
14620 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
14621 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
14622 (try_window_id, try_window_reusing_current_matrix)
14623 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 14624 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 14625
f00691a3 146262001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 14627
c9e60620
PJ
14628 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
14629 gnuemacs).
14630 (HAVE_BOXES): Fix typo in comment.
14631 (push_menu_pane): Fix typo in comment.
14632
3b552d56
PJ
14633 * xdisp.c: (display_prop_string_p): Remove unused local declaration
14634 of `Qwhen'.
14635 (single_display_prop_string_p): Remove unused local declarations
14636 of `Qwhen' and `Qmargin'.
14637 (string_buffer_position): Remove unused variable `around'.
14638 (store_frame_title): Remove unused variable `width'.
14639
15c565ac
PJ
14640 * window.c: Don't define max.
14641 (coordinates_in_window): Remove unused variable `uy'.
14642
a8818eb9
PJ
14643 * widget.c: Don't define max.
14644
996fee11
PJ
14645 * process.c: Don't define max.
14646 (create_process): Remove unused variable `buffer'.
14647
496e1a5b
GM
146482001-10-23 Gerd Moellmann <gerd@gnu.org>
14649
c2d53558 14650 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 14651
5905ae8b
EZ
146522001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
14653
14654 * xfaces.c (Finternal_set_lisp_face_attribute)
14655 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
14656 frame is on a windowed display.
14657
24db49fb
GM
146582001-10-23 Gerd Moellmann <gerd@gnu.org>
14659
c2d53558
SM
14660 * dispnew.c (sync_window_with_frame_matrix_rows):
14661 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
14662 of marginal areas.
14663
c2d53558 14664 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 14665
f0487f05
EZ
146662001-10-23 Andreas Schwab <schwab@suse.de>
14667
14668 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
14669 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
14670
f0a48a01
GM
146712001-10-23 Gerd Moellmann <gerd@gnu.org>
14672
c2d53558 14673 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
14674 REAL_END. Notice if cursor gets overwritten.
14675 (notice_overwritten_cursor): Take X positions as parameters.
14676 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
14677 around call to x_draw_glyphs.
14678
f00691a3 146792001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 14680
fc11dff0
PJ
14681 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
14682 instead of C) and usage.
a50a10a0 14683
fc11dff0
PJ
14684 * editfns.c (char-to-string): Fix argument names (use CHAR instead
14685 of C) and usage.
a50a10a0
PJ
14686
14687 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
14688 `left', `max_width' and `max_height'.
14689
8738febd
GM
146902001-10-23 Gerd Moellmann <gerd@gnu.org>
14691
14692 * xdisp.c (display_line): For a tab continued to the next line,
14693 set row's ends_in_middle_of_char_p.
14694
653c329b
GM
146952001-10-22 Gerd Moellmann <gerd@gnu.org>
14696
14697 * xdisp.c (display_line): Fix computation of continuation lines
14698 width for TABs.
14699
f00691a3 147002001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 14701
7ba51063
PJ
14702 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
14703 `Qlaplace'.
14704
f958c5ac
PJ
14705 * fileio.c: Remove unused code.
14706
eb360291
MB
147072001-10-22 Miles Bader <miles@gnu.org>
14708
14709 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
14710 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
14711 Remove `DOC_STRINGS_IN_COMMENTS' cases.
14712
98515cf0
JR
147132001-10-21 Jason Rumney <jasonr@gnu.org>
14714
14715 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
14716
93026d88
EZ
147172001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
14718
14719 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
14720 (Finsert_string): Avoid the multi-line string literals warning.
14721
c9a95b79
MB
147222001-10-22 Miles Bader <miles@gnu.org>
14723
14724 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
14725 (Fdocumentation): Don't use it.
14726 (syms_of_doc): Don't initialize it.
14727
14728 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
14729 * print.c (Fwith_output_to_temp_buffer): Likewise.
14730 * window.c (Fsave_window_excursion): Likewise.
c2d53558 14731 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 14732 (Fsave_restriction): Likewise.
c2d53558
SM
14733 * eval.c (Frun_hooks, Frun_hook_with_args)
14734 (Frun_hook_with_args_until_failure)
14735 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
14736 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
14737 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
14738 (Funwind_protect, Fcondition_case): Likewise.
14739 * coding.c (Ffind_operation_coding_system): Likewise.
14740 * keyboard.c (Ftrack_mouse): Likewise.
14741
a3b10252
MB
147422001-10-21 Miles Bader <miles@gnu.org>
14743
c2d53558 14744 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
14745 (Fmake_hash_table): Add usage: string to doc string.
14746 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 14747 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
14748 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
14749 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
14750 (Fml_prefix_argument_loop): Likewise.
14751
f00691a3 147522001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 14753
c2d53558 14754 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 14755
c6f73eec
PJ
14756 * sysdep.c (init_sys_modes): Change doc-string comments to `new
14757 style' [w/`doc:' keyword].
14758
14759 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
14760 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
14761 comments to `new style' [w/`doc:' keyword].
14762
3cf3436e
JR
147632001-10-21 Jason Rumney <jasonr@gnu.org>
14764
14765 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
14766
c169b8f1
JR
14767 * w32term.c (remember_mouse_glyph): New function.
14768 (w32_mouse_position): Use it.
14769 (note_mouse_movement): If the mouse moved off the glyph, remember
14770 its new position.
c2d53558 14771
4fdd691b
JR
14772 * w32term.h (struct w32_output): Correct spelling of x_compatible.
14773 (w32_display_info): Add mouse_face_overlay.
14774
c169b8f1
JR
14775 * w32term.c (notice_overwritten_cursor): Renamed from
14776 note_overwritten_text_cursor. Rewritten to take glyph widths into
14777 account.
14778 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
14779 (fast_find_string_pos): New function.
14780 (fast_find_position): Return the correct vpos. Add parameter
14781 STOP. In the final row, stop before glyphs having STOP as object.
14782 Don't consider glyphs that are not from a buffer.
14783 (fast_find_position) [0]: Add a presumably more correct version
14784 for after 21.1.
14785 (expose_window_tree, expose_frame): Don't compute intersections here.
14786 (expose_window): Do it here instead.
14787 (expose_window_tree, expose_window, expose_line): Return 1 when
14788 overwriting mouse-face.
14789 (expose_window): If W is the window currently being updated, mark
14790 the frame garbaged.
14791 (expose_frame): If mouse-face was overwritten, redo it.
14792 (x_use_underline_position_properties): New variable.
14793 (syms_of_xterm): DEFVAR_BOOL it.
14794 (x_draw_glyph_string): Add comment to use it in future.
14795 (x_draw_glyph_string): Restore clipping after drawing box.
14796 Fix a computation of the underline position.
14797 (w32_get_glyph_string_clip_rect): Minor cleanup.
14798 (x_fill_stretch_glyph_string): Remove an assertion.
14799 (x_produce_glyphs): Don't convert multibyte characters
14800 to unibyte characters in unibyte buffers.
14801 (cursor_in_mouse_face_p): New function.
14802 (x_draw_stretch_glyph_string): Use it to choose a different GC
14803 when drawing a cursor within highlighted text. Don't draw
14804 background again if it has already been drawn.
14805 (x_draw_glyph_string_box): Don't draw a full-width
14806 box just because the glyph row's full_width_p flag is set.
14807 (x_draw_glyphs): Fix computation of rightmost x for
14808 full-width rows.
14809 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
14810 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
f63fd14e 14811 change bottom shadow accordingly. Some cleanup.
c169b8f1
JR
14812 (x_update_window_end): Handle overwritten mouse face
14813 also for tool bar windows.
14814 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
14815 DRAW is DRAW_IMAGE_RAISED.
14816 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
14817 actually redrawn. Make the function static.
14818 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
14819 optimize away highlighting if we pass over that same overlay again.
14820 (note_mouse_highlight): Call mouse_face_overlay_overlaps
14821 to detect a case where we have to highlight a different region
14822 despite not having left the currently highlighted region.
14823 Set mouse_face_overlay in the x_display_info. Avoid changing the
14824 mouse pointer shape when show_mouse_face has already done it, or
14825 there is no need. Handle mouse-face and help-echo in strings.
14826 (glyph_rect): New function.
14827 (w32_mouse_position): Use it to raise the threshold for mouse
14828 movement event generation.
14829 (w32_initialize_display_info): Initialize the x_display_info's
14830 mouse_face_overlay.
14831 (w32_set_vertical_scroll_bar): Don't clear a zero height
14832 or width area.
14833 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
14834 a widget to zero height.
14835
3cf3436e 14836 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 14837 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
14838 equivalents in menu_items.
14839 (w32_menu_show): Don't overwrite an item's name with its key
14840 description in case the description is a multibyte string.
14841 (single_submenu): Some cleanup.
14842
14843 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
14844 (postprocess_image): New function.
14845 (lookup_image): Call it for all image types except PostScript.
14846 (x_kill_gs_process): Call postprocess_image.
14847 (tiff_error_handler, tiff_warning_handler): New functions.
14848 (tiff_load): Install them as handlers.
14849 (x_kill_gs_process): Recognize if someone has cleared the image
14850 cache under us.
14851 (valid_image_p): Protect better against invalid image
14852 specifications. Previous code could signal an error.
14853 (Fx_hide_tip, Fshow_tip): Doc fix.
14854 (Fv_max_tooltip_size): New variable.
14855 (syns_of_xfns): DEFVAR_LISP it.
14856 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
f63fd14e 14857 window buffer to *tip* right after creating the frame. Set frame's
3cf3436e
JR
14858 window_width. Use a maximum tooltip size specified by
14859 Vx_max_tooltip_size, if that has valid contents.
14860 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
14861 Make sure the tooltip is completely visible.
14862 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
14863 (Fx_create_frame): Adjust the frame's height for presence
14864 of the tool bar before calling x_figure_window_size.
14865 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
14866 when the window gets smaller.
14867 (x_set_foreground_color): Set frame's cursor_pixel.
14868 (x_set_foreground_color, x_set_background_color): Cleaned up.
14869 (x_set_font): Handle case of x_new_fontset returning the same name
14870 as before, although there was a change in fontsets.
14871
386ca361
MB
148722001-10-21 Miles Bader <miles@gnu.org>
14873
c2d53558 14874 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
14875 (Flogxor): Add usage: string to doc string.
14876 * charset.c (Fstring): Likewise.
14877 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
14878 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
14879
f00691a3 148802001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 14881
03be2694
PJ
14882 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
14883
14884 * alloc.c: Reindent DEFUNs with doc: keywords.
14885
14886 * abbrev.c (Finsert_abbrev_table_description): Reindent.
14887
14ff1ee0
PJ
14888 * frame.c: Change doc-string comments to `new style' [w/`doc:'
14889 keyword].
14890
2f147815 14891See ChangeLog.9 for earlier changes.
6922b018
KH
14892
14893;; Local Variables:
49b3bd82 14894;; coding: iso-2022-7bit
6922b018 14895;; End:
2a34a036 14896
2f147815 14897 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
14898 Copying and distribution of this file, with or without modification,
14899 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
14900
14901;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4