Fix typo in comment string.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
2bf436c3
JD
12004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2
3 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
4 instead of name and key.
5 (update_submenu_strings): New function.
6 (set_frame_menubar): Remove call to inhibit_garbage_collection,
ec867797 7 call update_submenu_strings.
2bf436c3
JD
8
9 * gtkutil.h (_widget_value): Added lname and lkey.
10
11715f92
ST
112004-08-30 Steven Tamm <steventamm@mac.com>
12
13 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
14 by using different names for inner loop variables.
15
5500be54
JD
162004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17
059cd329
JD
18 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
19 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
20
5500be54
JD
21 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
22 tool bar items is 0.
23
383418e5
ST
242004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
25
26 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
27 strings in menu items.
28 (single_submenu): Use ENCODE_MENU_STRING
29 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
30 button release isn't passed to event loop
31 (add_menu_item): Use SetMenuItemWithCFString
32
6eb3ee72
ST
332004-08-26 Steven Tamm <steventamm@mac.com>
34
35 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
36 tool-bar/menu click
37 * macfns.c (Fx_file_dialog): Implemented using NavServices
38
10b43ac3
JD
392004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
40
2728b5d0
JD
41 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
42
10b43ac3
JD
43 * xfns.c (x_window_to_frame, x_any_window_to_frame)
44 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
45 (x_top_window_to_frame): Return 0 if wdesc is None.
46
2ee3b79e
RS
472004-08-22 Richard M. Stallman <rms@gnu.org>
48
49 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
50 HAVE_TERMIOS]: If there's no char for this signal, drop through
51 and use system calls.
52
53 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
54
9a1ba2ea
KS
552004-08-20 Kim F. Storm <storm@cua.dk>
56
57 * process.c (wait_reading_process_output): Rename from
58 wait_reading_process_input. All uses changed.
59 (wait_reading_process_output_1): Rename from
60 wait_reading_process_input_1. All uses changed.
61
62 * dispnew.c (Fsleep_for): Remove obsolete code.
63
295f3b30
KH
642004-08-20 Kenichi Handa <handa@m17n.org>
65
66 * syntax.c (skip_chars): Fix for unibyte case.
67
27615979
SM
682004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
69
70 * syntax.c (char_quoted): Mixup byte/char pos.
71 (back_comment): Fixup globals in all cases.
72
00267f94
JD
732004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
74
75 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
76 passing it to gtk_window_set_title.
77
2439909e
KS
782004-08-19 Kim F. Storm <storm@cua.dk>
79
6ba0f14c
KS
80 * process.c (wait_reading_process_input): Clean up.
81 Add wait_for_cell, wait_proc, and just_wait_proc args
82 to avoid overloading `read_kbd' and `do_display' args.
83 Change read_kbd arg to int. All callers changed.
84
2439909e
KS
85 * process.c (process_send_signal): Use CDISABLE.
86
87 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
88
101c421e
KS
892004-08-18 Kim F. Storm <storm@cua.dk>
90
91 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
92 forward to wait_reading_process_input via DO_DISPLAY arg.
93 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
94 object, only process output from that process; also inhibit
95 running timers if DO_DISPLAY==-2.
96
c438dc33
KS
972004-08-17 Kim F. Storm <storm@cua.dk>
98
99 * process.c (process_send_signal): Fix last change--use
100 _POSIX_VDISABLE instead of CVDISABLE when available.
101
8afc13c6
RS
1022004-08-16 Richard M. Stallman <rms@gnu.org>
103
104 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
105 Set VQUIT and VINTR chars to the standard ones if they are unset.
106 [AIX]: Don't do that here. And don't force VINTR to standard
107 when SIGNALS_VIA_CHARACTERS.
108
c438dc33 109 * process.c (process_send_signal)
8afc13c6
RS
110 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
111 Do nothing if the character is CVDISABLE.
112
113 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
114
c438dc33 115 * intervals.c (move_if_not_intangible):
8afc13c6
RS
116 Force POSITION to be between BEGV and ZV.
117
6dad1714
JPW
1182004-08-14 John Paul Wallington <jpw@gnu.org>
119
120 * buffer.c (Frestore_buffer_modified_p): Doc fix.
121
122 * fileio.c (Fread_file_name): Doc fix.
123
124 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
125
2bd77330
LT
1262004-08-09 Luc Teirlinck <teirllm@auburn.edu>
127
128 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
129
c90e7e43
LT
1302004-08-08 Luc Teirlinck <teirllm@auburn.edu>
131
132 * keyboard.c: Declare Qdisabled_command_function instead of
8392e138 133 Qdisabled_command_hook.
c90e7e43 134 (Fcommand_execute): Use Qdisabled_command_function instead of
8392e138 135 Qdisabled_command_hook.
c90e7e43
LT
136 (syms_of_keyboard): Ditto.
137
81909a1a
LT
1382004-08-07 Luc Teirlinck <teirllm@auburn.edu>
139
140 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
141 (syms_of_keymap) <key-translation-map>: Doc fixes.
142
0cedd530
SM
1432004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
144
1725a7c9
SM
145 * window.c (window_list_1): YAILOM.
146
0cedd530
SM
147 * fileio.c (make_temp_name): Handle multibyte prefixes.
148
2515a131
LT
1492004-08-06 Luc Teirlinck <teirllm@auburn.edu>
150
151 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
152 Doc fix.
153
c8b20fb7
KH
1542004-08-03 Kenichi Handa <handa@m17n.org>
155
156 * coding.c (decode_coding_string): Adjust coding->consumed, and
157 etc. with shrinked_bytes.
158
fb8b092b
KS
1592004-08-03 Kim F. Storm <storm@cua.dk>
160
161 * indent.c (compute_motion): Fix check for full width window
162 in non-window case. Do not count left truncation glyph on
163 window systems.
164
df133612
LT
1652004-08-02 Luc Teirlinck <teirllm@auburn.edu>
166
167 * data.c (Finteractive_form): Doc fix.
168
0f7a93c1
KS
1692004-08-02 Kim F. Storm <storm@cua.dk>
170
171 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
172 properly accounting for continuation glyph on non-window systems.
173 (Fcompute_motion): Use actual window width if WIDTH is nil, and
174 actual window width/height if TOPOS is nil, properly accounting for
175 continuation glyphs on non-window systems, and optional header lines.
176 (vmotion): Let compute_motion calculate actual window width.
177
178 * window.c (window_scroll_line_based): Let compute_motion
179 calculate actual window width.
180
f491e1ed
KS
1812004-08-02 Kim F. Storm <storm@cua.dk>
182
183 * process.c (read_process_output): Use whole read buffer.
184 Don't trigger adaptive read buffering on errors.
185
83f64226
LT
1862004-07-31 Luc Teirlinck <teirllm@auburn.edu>
187
188 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
189
190 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
191
192 * callint.c (Fcall_interactively): Doc fix.
193
8afc13c6
RS
1942004-07-30 Richard M. Stallman <rms@gnu.org>
195
196 * abbrev.c (Fexpand_abbrev): Undo previous change.
197
7c111482
KS
1982004-07-30 Kim F. Storm <storm@cua.dk>
199
200 * editfns.c (Fformat): Allocate extra (dummy) element in info.
201
ee945d08
LT
2022004-07-28 Luc Teirlinck <teirllm@auburn.edu>
203
204 * eval.c (Fdefvar, Fdefconst): Doc fixes.
205
3f911c94
KS
2062004-07-27 Kim F. Storm <storm@cua.dk>
207
208 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
209 we have ensured that the glyph fits on the current line (or returned
210 MOVE_LINE_CONTINUED otherwise).
211
f29ff8c7
KS
2122004-07-26 Kim F. Storm <storm@cua.dk>
213
214 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
215 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
216 if target position is at end of display line but char is not a newline.
217
81159bb9
RS
2182004-07-25 Richard M. Stallman <rms@gnu.org>
219
ab431b61
RS
220 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
221 instead of ON_VERTICAL_BORDER, when on scroll bar.
222 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
223
224 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
225
f29ff8c7 226 * window.c (Fcoordinates_in_window_p):
81159bb9
RS
227 Take account of FRAME_INTERNAL_BORDER_WIDTH.
228
229 * alloc.c (check_cons_list): New function (contents commented out).
230
fc820cc5
LT
2312004-07-24 Luc Teirlinck <teirllm@auburn.edu>
232
233 * xfaces.c (Fcolor_supported_p): Doc fix.
234
235 * frame.c (Fselect_frame, Fset_frame_selected_window)
236 (Fframe_visible_p, Fraise_frame): Doc fixes.
237
289978b5
LT
2382004-07-24 Richard M. Stallman <rms@gnu.org>
239
7630911d
RS
240 * keyboard.h (not_single_kboard_state): Declared.
241
242 * fileio.c (Fwrite_region): Doc fix.
243
244 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
245
246 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
247 only when a real abbrev is present.
248
289978b5
LT
249 * xfns.c (x_icon_verify): New function.
250 (Fx_create_frame): Use it.
251
63cc10ae
KS
2522004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
253
254 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
255
36f826d4
KS
2562004-07-21 Kim F. Storm <storm@cua.dk>
257
258 * window.h (struct glyph_matrix): New members nrows_scale_factor
259 and ncols_scale_factor.
260
261 * window.c (make_window): Initialize nrows_scale_factor and
262 ncols_scale_factor members.
263
264 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
265 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
266 (required_matrix_height): Apply nrows_scale_factor.
267 (required_matrix_width): Apply ncols_scale_factor.
268
269 * xdisp.c (display_line): Increment nrows_scale_factor and set
270 fonts_changed_p if past last allocated row.
271 (append_glyph, append_composite_glyph, produce_image_glyph)
272 (append_stretch_glyph): Increment ncols_scale_factor and set
273 fonts_changed_p if current area is full.
274
5fc1c546
JD
2752004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
276
277 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
278
cb7516e5
LT
2792004-07-19 Luc Teirlinck <teirllm@auburn.edu>
280
281 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
282 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
283 (Fset_window_start, Fscroll_up, Fscroll_down)
284 (Fother_window_for_scrolling, Fscroll_other_window)
285 (Fsave_window_excursion, Fset_window_vscroll)
286 (syms_of_window) <window-size-fixed>: Doc fixes.
287
dda741ec
JR
2882004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
289
290 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
291 ENCODE_SYSTEM for filenames.
292
bfcf6608
ST
2932004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
294
295 * mac.c (sys_select): Block input around call to
296 ReceiveNextEvent to prevent breakage. Correctly handle
297 blocking on event queue only by calling ReceiveNextEvent
298 instead of select (since GUI events aren't on an fd).
299 (sys_read): Remove function
300 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
301
e082ac9d
ST
3022004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
303
304 * mac.c (sys_select): Redo sys_select to use alarm-based
cb7516e5 305 polling instead of 1 sec timeouts (like solaris).
e082ac9d 306
cb7516e5 307 * macterm.c (x_make_frame_visible): Comment in polling on
e082ac9d
ST
308 frame creation.
309
310 * keyboard.c: Undef SIGIO on Carbon
311
312 * atimer.c (alarm_signal_handler): Call alarm handlers after
313 scheduling.
314
315 * eval.c (Feval): Remove quit_char test
316
317 * process.c (wait_reading_process_input): Remove clearing
318 stdin for select call on process input.
319
4b9da0fb
LT
3202004-07-18 Luc Teirlinck <teirllm@auburn.edu>
321
1204e81c
LT
322 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
323 capitalization error in docstring.
4b9da0fb 324
26503ad2
JB
3252004-07-17 Juanma Barranquero <lektu@terra.es>
326
327 * keyboard.c (not_single_kboard_state): Do nothing unless
328 MULTI_KBOARD is defined.
329
3751eb00
RS
3302004-07-17 Richard M. Stallman <rms@gnu.org>
331
332 * window.c (coordinates_in_window): Inside the window but outside
333 its box to the L or R, return ON_VERTICAL_BORDER.
334 (window_list_1): Rotate the list to start with WINDOW.
335
336 * print.c (print_preprocess): Test for print_depth at limit
337 before entering in being_printed.
338
339 * keyboard.c (not_single_kboard_state): New function.
340 (stuff_buffered_input): Now no-op only if no SIGTSTP.
341
342 * frame.c (Fdelete_frame): If we're in single_bboard_state on
343 this kboard, and we delete its last frame, go to any_kboard_state.
344
345 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
346
62eb6ca9
JR
3472004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
348
349 * w32fns.c (Fx_file_dialog): Encode strings in system coding
350 system before passing them to OS functions for display.
351
0f6af254
DK
3522004-07-15 David Kastrup <dak@gnu.org>
353
f9253326
KS
354 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
355 Apparently fixes an abort condition.
0f6af254 356
386c8f42
LT
3572004-07-14 Luc Teirlinck <teirllm@auburn.edu>
358
359 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
360 instead of a cons.
361
366511da
MB
3622004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
363
364 * keyboard.c (echo_dash): Do nothing if there already is a dash
365 at the end of the echo string.
366
f85409d3
KS
3672004-07-12 Kim F. Storm <storm@cua.dk>
368
369 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
370 if GC_MARK_STACK.
371
0ba2e87b
LT
3722004-07-10 Luc Teirlinck <teirllm@auburn.edu>
373
da38045d
LT
374 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
375
0ba2e87b
LT
376 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
377 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
378 (Freplace_buffer_in_windows, Fset_window_buffer)
379 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
380 (syms_of_window): Expand docstring of `display-buffer-function'.
381
5668fbb8
LT
3822004-07-09 Luc Teirlinck <teirllm@auburn.edu>
383
384 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
385 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
386 that time values of the type (HIGH . LOW) are considered obsolete.
387
a085bf9d
LT
3882004-07-06 Luc Teirlinck <teirllm@auburn.edu>
389
669de2fb
LT
390 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
391 docstring.
392
bac66325 393 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
a085bf9d 394
8e975df9
JPW
3952004-07-06 John Paul Wallington <jpw@gnu.org>
396
397 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
398
fa164e6a
JPW
399 * fns.c (Fclear_string): Signal an error if STRING is not a string.
400
2bac9bb1
JD
4012004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
402
403 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
404 instead of CGMainDisplayID (only in OSX 10.2 and later).
405
316ef0dc
JPW
4062004-07-04 John Paul Wallington <jpw@gnu.org>
407
408 * fileio.c (read_file_name_completion_ignore_case): New variable.
409 (syms_of_fileio): Declare and initialise it.
410 (Fread_file_name): Bind `completion-ignore-case' to respect it.
411
2a1a35c6
EZ
4122004-07-03 Eli Zaretskii <eliz@gnu.org>
413
414 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
415 for event.x and event.y.
416
33a72331
KH
4172004-07-01 Kenichi Handa <handa@m17n.org>
418
419 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
420 after getting a new string by pre-write-conversion.
421
07a6ab76
SM
4222004-06-30 Stefan <monnier@iro.umontreal.ca>
423
424 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
425 (x_calc_absolute_position): Remove unused var `child'.
426
427 * xfaces.c (x_supports_face_attributes_p)
428 (Fdisplay_supports_face_attributes_p): YAILOM.
429 (tty_supports_face_attributes_p): Remove unused var `i'.
430
431 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
432 back_unibyte_ok.
433
434 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
435
436 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
437
438 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
439
f96ec754
AS
4402004-06-30 Andreas Schwab <schwab@suse.de>
441
442 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
443 (Finit_image_library): Pass LIBRARIES through to
444 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
445 (lookup_image_type): Pass Qnil as second argument to
446 Finit_image_library.
447
448 * lisp.h: Declare Finit_image_library.
449
59feca74 4502004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
c8d09ad8 451
31983645
AS
452 * macterm.c (do_window_activate, do_window_deactivate): Remove.
453 (XTread_socket): Send mouse button events to the toolbox
454 dispatcher even when the mouse is grabbed. Don't process window
455 activate events for non-Emacs windows. Replace function calls to
456 do_window_activate and do_window_deactivate with their contents.
457 Reset mouse grabbing status when a window is deactivated.
59feca74 458
c61278bb
ST
4592004-06-29 Steven Tamm <steventamm@mac.com>
460
461 * macterm.c (mac_get_emulated_btn)
462 (mac_event_to_emacs_modifiers): Fix emulated mouse button
463 support to correctly mask out modifiers.
464
c3762cbd
DK
4652004-06-29 David Kastrup <dak@gnu.org>
466
467 * search.c (Fset_match_data): Allow buffer before end of list
468 which can happen if set-match-data is using a pre-consed list.
469
c61278bb 4702004-06-28 Steven Tamm <steventamm@mac.com>
e439b925
ST
471
472 * macterm.c (XTread_socket): Correctly set the frame position
473 after the window is moved.
474
74cdfe05
JD
4752004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
476
477 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
478 gpix and gmask just before return to avoid memory leak.
03ecb80f
JD
479 (xg_get_image_for_pixmap): Add workaround for monochrome displays
480 so insensitive and activated icons look ok.
74cdfe05 481
ef544dc8
JR
4822004-06-27 Jason Rumney <jasonr@gnu.org>
483
484 * w32fns.c (file_dialog_callback): Disable edit control if set
485 to directories only on CDN_INITDONE message.
486 (Fx_file_dialog): Default to directories only when prompt starts
487 with "Dired".
488
7b7990cc
KS
4892004-06-25 Kim F. Storm <storm@cua.dk>
490
491 * alloc.c (allocate_misc): Update total_free_markers.
492 (free_misc): New function.
493 (safe_alloca_unwind, free_marker): Use it.
494
495 * lisp.h (free_misc): Add prototype.
496
497 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
498
d8c379f8
RS
4992004-06-24 Richard M. Stallman <rms@gnu.org>
500
501 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
502 (syms_of_emacs): Lisp variables deleted.
503
559cdd07
DK
5042004-06-23 David Kastrup <dak@gnu.org>
505
94939b84
DK
506 * search.c (Freplace_match): Adjust the match-data more thoroughly
507 when replacing strings in the buffer.
508 (Fmatch_data): When INTEGERS is non-nil and the last match was in
509 a buffer, add the buffer as last element to the match data.
510 (Fset_match_data): If an additional element of the match-data is a
511 buffer, restore it to last_thing_searched.
c8d09ad8 512 (save_search_regs): Save last_thing_searched as part of the match data.
559cdd07
DK
513 (restore_match_data): Restore it again.
514
dce417e7
LT
5152004-06-23 Luc Teirlinck <teirllm@auburn.edu>
516
517 * keymap.c (Ftext_char_description): Doc fix.
518 * doc.c (Fsnarf_documentation): Doc fix.
519
ef54b2d0
KS
5202004-06-22 Kim F. Storm <storm@cua.dk>
521
b5bc4d05
KS
522 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
523
ef54b2d0
KS
524 * lisp.h (struct Lisp_Save_Value): New member dogc.
525 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
526 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
527 (SAFE_FREE_LISP): New macro.
528
529 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
530 (make_save_value): Init new dogc member.
531 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
532
533 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
534 SAFE_FREE_LISP macros.
535
3d33d993
KS
5362004-06-22 Kim F. Storm <storm@cua.dk>
537
538 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
539 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
540 in that memory area are unknown to GC. Add comments.
541
542 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
543
5c917f98
KS
5442004-06-21 Kim F. Storm <storm@cua.dk>
545
546 * lisp.h (MAX_ALLOCA): Define here.
547 (safe_alloca_unwind): Add prototype.
548 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
549
550 * alloc.c (safe_alloca_unwind): New function.
551
552 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
553
554 * charset.c (Fstring): Use SAFE_ALLOCA.
555
556 * coding.c (MAX_ALLOCA): Remove define.
557
558 * data.c (MAX_ALLOCA): Remove define.
559 (Faset): Use SAFE_ALLOCA.
560
561 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
562
563 * fns.c (string_make_multibyte, string_to_multibyte)
564 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
565 (MAX_ALLOCA): Remove define.
566 (Fbase64_encode_region, Fbase64_encode_string)
567 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
568 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
569 memory leak if encoding fails.
570
571 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
572
9a09408e
EZ
5732004-06-21 Eli Zaretskii <eliz@gnu.org>
574
575 * print.c (Fwith_output_to_temp_buffer): Doc fix.
576
376de739
RS
5772004-06-20 Richard M. Stallman <rms@gnu.org>
578
579 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
580
581 * search.c (match_limit): Cleaner err msg when no match data available.
582
583 * window.c (syms_of_window): Doc fix.
584
585 * keyboard.c (command_loop_1): Handle values `only' and `identity'
586 for Vtransient_mark_mode.
587
588 * buffer.c (syms_of_buffer): Doc fix.
589
acd81db9
DK
5902004-06-21 David Kastrup <dak@gnu.org>
591
592 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
593 and unbinding of `case-fold-search' according to
594 `completion-ignore-case' around calls of string-match and
595 predicates, respectively. Should give satisfactory performance
596 in all relevant cases.
597
f303762d
JD
5982004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
599
95911c74
JD
600 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
601 clip_x/y_origin.
602
a6cb6b78
JD
603 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
604
f303762d
JD
605 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
606
607 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
608 on Mac OSX.
609
bbdb2684
LT
6102004-06-16 Luc Teirlinck <teirllm@auburn.edu>
611
612 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
613
5ea48b1c
KS
6142004-06-16 Kim F. Storm <storm@cua.dk>
615
616 * dispextern.h (Vimage_types): Remove extern.
617
803aac3e
MB
6182004-06-16 Miles Bader <miles@gnu.org>
619
620 * image.c (lookup_image_type): Initialize image type if necessary.
621
cdc97764
KS
6222004-06-15 Kim F. Storm <storm@cua.dk>
623
c4a5739c
KS
624 * xdisp.c (try_cursor_movement): Exclude header line from scroll
625 margin at top of window.
626 (try_window_reusing_current_matrix): Calculate proper cursor position
627 after scrolling up with non-zero scroll margin, as the old cursor
628 position corresponds to value of PT before executing this command.
629 (try_window_id): Consider scroll margin at bottom of window too;
630 otherwise we fail to scroll when hl-line-mode is enabled.
631
cdc97764
KS
632 * syntax.c (skip_chars): Only recognize [:class:] when it has the
633 proper format and class is a lower-case word.
634
5b166323
JD
6352004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
636
637 * gtkutil.c (xg_get_image_for_pixmap): New function.
c8d09ad8 638 (xg_get_gdk_pixmap_and_mask): Remove.
5b166323
JD
639 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
640 xg_get_gdk_pixmap_and_mask.
cdc97764 641
5b166323
JD
642 * xterm.h (struct x_display_info): Typo in comment fixed.
643
1ebd4f78
JB
6442004-06-14 Juanma Barranquero <lektu@terra.es>
645
646 * dispextern.h (Vimage_types): Make it conditional on
647 HAVE_WINDOW_SYSTEM.
648
649 * image.c (Vimage_types): Move from xdisp.c.
650 (Vimage_type_cache): New variable.
651 (define_image_type): New argument indicating whether an image
652 library was loaded; cache loaded status and return t on success,
653 nil otherwise.
654 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
655 (w32_delayed_load): New function to load an image library from a
656 list of possible filenames.
657 (init_xpm_functions, init_png_functions, init_jpeg_functions)
658 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
c8d09ad8 659 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
1ebd4f78
JB
660 (Finit_image_library): New function, extracted from `init_image'.
661 Try to initialize an image library on demand and cache whether we
662 were successful or not.
663 (syms_of_image): Initialize `Vimage_types' and
664 `Vimage_type_cache'. Add recognized image types to Vimage_types.
665 Export `init-image-library'.
666 (init_image): Remove initialization of all image types, except xbm
667 and pbm.
668
669 * xdisp.c (Vimage_types): Delete (moved to image.c).
670
904ee128
AS
6712004-06-14 Andreas Schwab <schwab@suse.de>
672
673 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
674 Avoid calling specbind when completion-regexp-list is empty.
675
092de21d
RS
6762004-06-13 Richard M. Stallman <rms@gnu.org>
677
678 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
679 (re_wctype, re_iswctype, re_wctype_to_bit):
680 Non-function definitions moved here from regex.c.
1ebd4f78 681
092de21d
RS
682 * regex.c (re_wctype, re_iswctype): Function defs longer static.
683 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
684 (re_wctype, re_iswctype, re_wctype_to_bit):
685 Non-function definitions moved to regex.h.
686
687 * window.c (Fselect_window): Doc fix.
688
689 * syntax.c: Include regex.h.
690 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
691 If requested, make a list of classes, then check the scanned
692 chars for membership in them.
693 (in_classes): New function.
694 Doc fix.
695
696 * keyboard.c (cmd_error): Don't call any_kboard_state
697 if inside a recursive edit level.
698
6992004-06-13 Lorentey K\e,Aa\e(Broly <lorentey@elte.hu>
700
701 * keyboard.c (command_loop): Call any_kboard_state before
702 command_loop_2 when at top level.
703
3ebc0939
AS
7042004-06-13 Andreas Schwab <schwab@suse.de>
705
cea5d0d4
AS
706 * print.c (print_object): Always use %ld for printing EMACS_INT.
707
708 * keyboard.c (cancel_hourglass_unwind): Return a value.
709 (modify_event_symbol): Always use %ld for printing EMACS_INT.
710 (Fexecute_extended_command): Likewise.
711
712 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
713 avoid clashes.
714 (SYNTAX): Likewise.
715 (SYNTAX_WITH_FLAGS): Likewise.
716 (SYNTAX_MATCH): Likewise.
717
718 * syntax.c (char_quoted): Avoid warning about undefined operation.
719 (find_defun_start): Likewise.
720 (scan_lists): Likewise.
721 (INC_FROM): Likewise.
722 (scan_sexps_forward): Likewise.
723
be8c4ce4
AS
724 * image.c: Include <ctype.h>.
725
3ebc0939
AS
726 * xfaces.c (face_attr_equal_p): Declare parameters.
727
6fb41b5b
KH
7282004-06-13 Kenichi Handa <handa@m17n.org>
729
730 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
731
fc3095ce
EZ
7322004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
733
734 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
735
66189a40
KH
7362004-06-12 Kenichi Handa <handa@m17n.org>
737
738 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
739 ccl_prog_stack_struct and update it.
740 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
741 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
742 ccl->eof_ic on EOF.
743 (ccl_debug_hook): New function.
744 (struct ccl_prog_stack): New member eof_ic.
745 (ccl_driver): Handle EOF in subrountine call correctly.
746
7472004-06-11 Kenichi Handa <handa@m17n.org>
748
749 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
750
1da71023
KS
7512004-06-11 Kim F. Storm <storm@cua.dk>
752
753 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
754
e9efcef4
JB
7552004-06-11 Juanma Barranquero <lektu@terra.es>
756
757 * keyboard.c (Fposn_at_point): Doc fix.
758
9b9ceb61
DK
7592004-06-11 David Kastrup <dak@gnu.org>
760
761 * search.c (match_limit): Don't flag an error if match-data
762 exceeding the allocated search_regs.num_regs gets requested, just
763 return Qnil.
764
6e87ac8f
MB
7652004-06-08 Miles Bader <miles@gnu.org>
766
767 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
768
0b0dea7b
JB
7692004-06-07 Juanma Barranquero <lektu@terra.es>
770
771 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
772 (Fcurrent_time_string, Fcurrent_time_zone)
773 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
774
a0a23346
MB
7752004-06-07 Miles Bader <miles@gnu.org>
776
08384afd 777 * xfaces.c (struct named_merge_point): New type.
a0a23346
MB
778 (push_named_merge_point): New function.
779 (merge_named_face): New function.
780 (merge_face_ref, face_at_buffer_position, face_at_string_position):
781 Use `merge_named_face'.
782 (merge_face_inheritance): Function removed.
c8d09ad8 783 (merge_face_ref): Rename from `merge_face_vector_with_property'.
a0a23346
MB
784 Add new `err_msgs' and `named_merge_points' args. Return error
785 status. Only print error messages if ERR_MSGS is true. Don't try to
786 do :inherit attribute validation.
787 (merge_face_heights): Handle `unspecified' in both directions.
788 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
789 Call `merge_face_ref' instead of `merge_face_inheritance'.
790 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
791 (compute_char_face, face_at_buffer_position)
792 (face_at_string_position): Call `merge_face_ref' instead of
793 `merge_face_vector_with_property'.
794
12d5b185
KH
7952004-06-07 Kenichi Handa <handa@m17n.org>
796
797 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
798 the necessary places.
799
2e2d7ee6
KS
8002004-06-07 Kim F. Storm <storm@cua.dk>
801
802 * process.c (Fdelete_process): Undo 2004-05-28 change.
803 Instead, call status_notify also for network process.
804 (status_message): Use process instead of status as arg.
805 Give messages "deleted" or "connection broken by remote peer" for
806 an exited network process.
807 (status_notify): Change call to status_message.
808 (read_process_output): Increase readmax to 4096. Do not increase
809 buffer size for datagram channels (default is now large enough).
810
fcf0d299
ST
8112004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
812
813 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
814 problem due to newly defined variable.
815
0722292b
MB
8162004-06-06 Miles Bader <miles@gnu.org>
817
818 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
819 immediately if non-interactive or not initialized.
820
ddfb8369
RS
8212004-06-05 Richard M. Stallman <rms@gnu.org>
822
823 * minibuf.c (Fcompleting_read): Doc fix.
824
57015754
AS
8252004-06-05 Andreas Schwab <schwab@suse.de>
826
827 * macfns.c (x_create_tip_frame): Fix declaration after statement.
828
23715ea6
JB
8292004-06-05 Juanma Barranquero <lektu@terra.es>
830
831 * keymap.c (Fdescribe_vector): Fix docstring.
832 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
833
8e330b22
MB
8342004-06-05 Miles Bader <miles@gnu.org>
835
836 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
837 attributes have different values than the default face.
838
9742a3a6
EZ
8392004-06-04 Eli Zaretskii <eliz@gnu.org>
840
841 * xfaces.c (x_supports_face_attributes_p): Make this function
842 conditional on HAVE_WINDOW_SYSTEM.
c8d09ad8
SM
843 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
844 Don't call x_supports_face_attributes_p if it was not compiled in.
9742a3a6 845
9717e36c
MB
8462004-06-04 Miles Bader <miles@gnu.org>
847
848 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
849 from Ftty_supports_face_attributes_p.
850 (x_supports_face_attributes_p): New function.
851 (Ftty_supports_face_attributes_p): Function deleted.
852 (Fdisplay_supports_face_attributes_p): New function.
853 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
f9711de4 854 (face_attr_equal_p): New function.
9717e36c
MB
855 (lface_equal_p): Use it.
856
52deb19f
JB
8572004-06-03 Juanma Barranquero <lektu@terra.es>
858
859 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
860 (Vw32_color_map): Fix typo in docstring.
861 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
862 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
863 Make argument names match their use in docstring.
864
86d373e6
JB
8652004-06-02 Juanma Barranquero <lektu@terra.es>
866
867 Work around bugs/problems with MinGW builds of graphics libraries
868 called from MSVC builds of Emacs.
869
870 * image.c (lookup_image): Make pointer to img static.
871 (png_read_from_memory): Disable "global" optimization.
872
2fb0ce67
SM
8732004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
874
c8d09ad8
SM
875 * eval.c (Fcondition_case): Fix usage. Simplify.
876
2fb0ce67
SM
877 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
878
50bf7673
ST
8792004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
880
881 * macfns.c: Don't include ccl.h.
882 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
86d373e6
JB
883 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
884 TextUtils.h.
c8d09ad8 885 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
50bf7673
ST
886 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
887 display height/width.
888 (compute_tip_xy, Vx_max_tooltip_size): Declare.
889 (unwind_create_tip_frame, compute_tip_xy): New functions.
890 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
891 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
892 and last_show_tip_args.
2fb0ce67 893
50bf7673
ST
894 * macgui.h [!MAC_OSX]: Include Gestalt.h.
895 (Cursor, No_Cursor): New defines.
c8d09ad8 896 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
50bf7673
ST
897 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
898
899 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
900
901 * macterm.c: Don't include Gestalt.h.
902 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
903 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
904 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
905 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
906 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
907 (construct_mouse_click, XTmouse_position)
908 (x_scroll_bar_report_motion, x_calc_absolute_position)
909 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
910 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
911 (note_mouse_movement): Clear the mouse face and reset the pointer
912 shape when the pointer goes outside the frame without grabbing.
913 (mac_front_window): New function.
914 (mac_window_to_frame): New macro.
915 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
916 (do_window_activate, do_window_deactivate, do_app_resume)
917 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
918 (do_zoom_window, mac_do_receive_drag, XTread_socket)
919 (mac_check_for_quit_char): Use mac_front_window and/or
920 mac_window_to_frame.
921 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
922 scroll-bar click event.
923 (mac_define_frame_cursor): Change the pointer shape.
c8d09ad8 924 (x_free_frame_resources): Reset tip_window to NULL when it is disposed.
50bf7673 925 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
c8d09ad8 926 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
50bf7673
ST
927 (do_window_update): Don't do anything if the updated window is the
928 tooltip window.
929 (do_mouse_moved): Handle mouse movement events here (previously in
930 XTread_socket). Clear the mouse face if
931 dpyinfo->mouse_face_hidden is set.
932 (do_os_event, do_events): Remove (now in XTread_socket).
933 (XTread_socket): Immediately return if interrupt_input_blocked.
c8d09ad8
SM
934 Loop until all the events in the queue are processed.
935 Rearrange codes for mouse grabbing. Add tooltip support. Include the
50bf7673
ST
936 contents of do_os_event and do_events. Remove mouse movement
937 handling (now in do_mouse_moved). Add the case where
938 Vmouse_highlight has an integer value.
939 (NewMacWindow): Remove.
940 (make_mac_frame): Do what NewMacWindow previously did. Don't do
941 excess initializations.
942 (make_mac_terminal_frame): Previous initializations in
943 make_mac_frame are moved here.
c8d09ad8
SM
944 (mac_initialize_display_info):
945 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
50bf7673
ST
946
947 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
948 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
949
08fd1251
RS
9502004-05-29 Richard M. Stallman <rms@gnu.org>
951
952 * lisp.h (truncate_undo_list): Update decl.
953
954 * alloc.c (undo_outer_limit): New variable.
955 (syms_of_alloc): Defvar it.
956 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
957
958 * undo.c (truncate_undo_list): New arg LIMITSIZE.
959
960 * alloc.c (lisp_align_malloc): Check for base == 0
961 regardless of HAVE_POSIX_MEMALIGN.
962 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
963
227ef0ff
SM
9642004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
965
966 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
967 (marker_blocks_pending_free): Remove.
968 (Fgarbage_collect): Sweep after cleaning up undo-lists.
969 Mark the undo lists after claning them up.
970 Don't free block in marker_blocks_pending_free.
971 (mark_buffer): Don't mark undo_list.
972 (gc_sweep): Sweep hash-tables and strings first.
973 Do free marker blocks that are empty.
974
034a6113
SM
9752004-05-28 Jim Blandy <jimb@redhat.com>
976
977 * regex.c (print_partial_compiled_pattern): Add missing 'break'
978 after 'case wordend'. For symbeg and symend, print to stderr,
979 like the other cases.
980
33594a8d
NF
9812004-05-28 Noah Friedman <friedman@splode.com>
982
983 * process.c (Fdelete_process): Do not call remove_process.
984
ce50a847
SM
9852004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
986
987 * alloc.c (struct backtrace): Remove.
988 (Fgarbage_collect): Use the new mark_backtrace.
989
990 * eval.c (mark_backtrace): New function.
991
992 * minibuf.c (run_exit_minibuf_hook): New function.
993 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
994 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
995
1e8dae36
KS
9962004-05-27 Kim F. Storm <storm@cua.dk>
997
998 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
999 over display properties, e.g. images, that replace buffer text.
1000
846faa3b
KS
10012004-05-25 Kim F. Storm <storm@cua.dk>
1002
1003 * alloc.c (marker_blocks_pending_free): New var.
1004 (gc_sweep): Store free marker blocks on that list.
1005 (Fgarbage_collect): Free them after undo-list cleanup.
1006
1007 * process.c (wait_reading_process_input): Check connect_wait_mask
1008 before actually accepting connection in case it has already been
1009 accepted due to recursion.
1010
6239a668
KH
10112004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu> (tiny change)
1012
ce50a847
SM
1013 * coding.c (Fset_safe_terminal_coding_system_internal):
1014 Set suppress_error in safe_terminal_coding, not terminal_coding.
6239a668 1015
71d5a208
RS
10162004-05-22 Richard M. Stallman <rms@gnu.org>
1017
1018 * alloc.c (Fmake_string): Doc fix.
1019
1020 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
1021 and the alist pairs too.
1022
1023 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
1024
1025 * emacs.c (main): Update copyright year.
1026
1027 * fileio.c (Fread_file_name): Expand DIR if not absolute.
1028
1029 * insdel.c (del_range_2, replace_range): Don't write an anchor
1030 if the gap is empty.
1031
1032 * xdisp.c (try_scrolling): If scroll-up-aggressively or
1033 scroll-down-aggressively is small but positive, put point
1034 near the screen edge.
1035
f63fd14e
JB
10362004-05-22 Juanma Barranquero <lektu@terra.es>
1037
1038 * keymap.c (Fdefine_key): Doc fix.
1039
4d12067c
KS
10402004-05-22 Kim F. Storm <storm@cua.dk>
1041
1042 * alloc.c (struct backtrace): Add debug_on_exit member.
1043 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
1044 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
1045 the removed cons cells.
1046 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
1047 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
1048 any cons cells pointing to unallocated stings.
1049 Do not lisp_free any marker blocks, as there may still be pointers
1050 to them from buffer undo lists at this stage of GC.
1051
1052 * keyboard.c (struct backtrace): Add debug_on_exit member.
1053 (Fcommand_execute): Clear it.
1054
931285e2
LT
10552004-05-20 Luc Teirlinck <teirllm@auburn.edu>
1056
1057 * intervals.c (lookup_char_property): Do not prematurely return nil.
1058
669fa600
SM
10592004-05-19 Jim Blandy <jimb@redhat.com>
1060
1061 Add support for new '\_<' and '\_>' regexp operators, matching the
f63fd14e 1062 beginning and end of symbols.
4d12067c 1063
669fa600
SM
1064 * regex.c (enum syntaxcode): Add Ssymbol.
1065 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
1066 (re_opcode_t): New opcodes `symbeg' and `symend'.
1067 (print_partial_compiled_pattern): Print the new opcodes properly.
1068 (regex_compile): Parse the new operators.
ce50a847 1069 (analyse_first): Skip sym(beg|end) (they match only the empty string).
669fa600
SM
1070 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
1071 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
1072 (re_match_2_internal): Match symbeg and symend.
1073
1074 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
1075
0d8c2e5c
KS
10762004-05-19 Kim F. Storm <storm@cua.dk>
1077
1078 * .gdbinit (xsymbol): Fix last change.
1079
669fa600
SM
10802004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
1081
1082 * .gdbinit (xprintstr): New fun.
1083 (xstring, xprintsym): Use it.
1084
1085 * w32proc.c (create_child): Use INTMASK.
1086
1087 * alloc.c (Fgarbage_collect): Do all the marking before flushing
1088 unmarked elements of the undo list.
1089
9a6a4c40
DP
10902004-05-18 David Ponce <david@dponce.com>
1091
1092 * print.c (print): Reset print_depth before to call print_object.
1093
f3c4ec74
JR
10942004-05-18 Jason Rumney <jasonr@gnu.org>
1095
1096 * w32console.c: Prefix RIF functions with w32con_ to avoid
1097 namespace clash with functions in term.c and w32term.c.
1098
1099 * w32menu.c (add_menu_item, w32_menu_display_help)
1100 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
1101
0d8c2e5c 1102 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
f3c4ec74 1103
6be49c3a
EZ
11042004-05-18 Eli Zaretskii <eliz@gnu.org>
1105
4d0b9a0a
EZ
1106 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
1107
6be49c3a
EZ
1108 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
1109 with make_number.
1110 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
1111 with XINT.
1112
0bc90bba
KS
11132004-05-18 Kim F. Storm <storm@cua.dk>
1114
89d19988
KS
1115 * blockinput.h (INPUT_BLOCKED_P): New macros.
1116
1117 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
1118 (Ftop_level): Unblock input if blocked.
1119
0bc90bba
KS
1120 * buffer.h (GET_OVERLAYS_AT): New macro.
1121 * msdos.c (IT_note_mouse_highlight): Use it.
1122 * textprop.c (get_char_property_and_overlay): Use it.
1123 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
1124 * xfaces.c (face_at_buffer_position): Use it.
1125
1126 * print.c (print_object): Increase buf size.
1127
653bd0f6
JR
11282004-05-17 Jason Rumney <jasonr@gnu.org>
1129
1130 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
1131 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
1132 Lisp_Object using i member.
1133 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
1134 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
1135 consistently.
1136
1137 * w32proc.c (create_child): Use make_number instead of masking pid.
1138
1139 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
1140 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
1141 Use EQ to compare Lisp_Objects.
1142 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
1143
1144 * w32term.c (w32_num_mouse_buttons): Rename from
1145 Vw32_num_mouse_buttons and make it an int.
1146
1147 * w32.c (init_environment): Use it.
1148
1149 * w32fns.c (w32_wnd_proc): Likewise.
1150
1151 * w32proc.c (w32_pipe_read_delay): Rename from
1152 Vw32_pipe_read_delay and make it an int.
1153
1154 * w32.c (_sys_read_ahead): Use it.
1155
1156 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
1157
1158 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
1159
1160 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
1161 (key_event): Don't mix Lisp_Object and int.
1162
1163 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
1164
1165 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
1166 modifiers in language change event.
1167
54b53ba7
KS
11682004-05-17 Kim F. Storm <storm@cua.dk>
1169
1170 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
1171 Such objects may be freed markers which still exist on an undo list.
1172
6e86a75d
JB
11732004-05-16 Juanma Barranquero <lektu@terra.es>
1174
1175 * data.c (Fset_default): Make argument names match their use in
1176 docstring.
1177
fc80da24
AS
11782004-05-15 Andreas Schwab <schwab@suse.de>
1179
1180 * emacs.c (gdb_array_mark_flag): Define.
1181 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
1182
c1380aa6
EZ
11832004-05-15 Eli Zaretskii <eliz@gnu.org>
1184
1185 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
1186 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
1187 defined for the MS-DOS build.
1188
89458937
SM
11892004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
1190
1191 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
1192
08020f9a
KH
11932004-05-14 Kenichi Handa <handa@m17n.org>
1194
1195 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
1196
a433994a
ST
11972004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1198
1199 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
1200 section to frame.c section.
1201 (Fxw_display_color_p, Fx_file_dialog): Declare if
89458937 1202 HAVE_WINDOW_SYSTEM defined.
0d8c2e5c 1203
a433994a 1204 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
0d8c2e5c 1205
a433994a 1206 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
0d8c2e5c 1207
a433994a
ST
1208 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
1209 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
1210 (XTread_socket): Fix int/Lisp_Object mixup.
1211 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
0d8c2e5c 1212
a433994a
ST
1213 * macterm.h (struct frame, struct face, struct image)
1214 (display_x_get_resource, Fx_display_color_p)
89458937
SM
1215 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
1216 Add prototypes.
a433994a 1217
b51a51b9
KS
12182004-05-14 Kim F. Storm <storm@cua.dk>
1219
1220 * process.c (wait_reading_process_input): Make reentrant.
1221 Make Available and Connecting non-static. Save and restore value
1222 of waiting_for_user_input_p.
1223
2bde1dd8
KS
12242004-05-13 Kim F. Storm <storm@cua.dk>
1225
1226 * keyboard.c (mark_kboards): Don't mark x and y members
1227 that are overloaded in selection request events.
1228
a267ab4d
SM
12292004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
1230
1231 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
1232
eb15ce9e
GM
12332004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
1234
1235 * window.c (Fdisplay_buffer, Fsplit_window)
1236 (split-height-threshold): Doc fix.
1237
7fc92635
JB
12382004-05-13 Juanma Barranquero <lektu@terra.es>
1239
1240 * xfaces.c (Ftty_supports_face_attributes_p)
1241 (Finternal_copy_lisp_face): Fix typo in docstring.
1242 (Finternal_get_lisp_face_attribute): Fix docstring.
1243
1ec2a572
JD
12442004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1245
1246 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
1247
ae9292e0
ST
12482004-05-11 Steven Tamm <steventamm@mac.com>
1249
1250 * macfns.c (Fx_create_frame): Default to using tool-bar by
1251 setting tool-bar-lines to 1 in default-frame-alist.
1252
12532004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ea1aaa6f
ST
1254
1255 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
1256 (xpm_get_color_table_v, xpm_make_color_table_h)
1257 (xpm_put_color_table_h, xpm_get_color_table_h)
1258 (xpm_str_to_color_key, xpm_load_image, xpm_load)
1259 (syms_of_image): Support XPM on Carbon Emacs. Does not
a267ab4d 1260 depend on libXpm, but only supports XPM version 3 without extensions.
ea1aaa6f 1261
fe97e8df
ST
12622004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1263
a267ab4d 1264 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
fe97e8df
ST
1265 instead of FRAME_X_P
1266
b47e779e
KS
12672004-05-11 Kim F. Storm <storm@cua.dk>
1268
1269 * process.c (read_process_output): Grow decoding_buf when needed;
1270 this could cause a crash in allocate_string and compact_small_strings.
1271
cdc9b845
EZ
12722004-04-29 Jim Blandy <jimb@redhat.com>
1273
1274 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
1275 against proper opcode.
1276
aa7094ba
JB
12772004-05-10 Juanma Barranquero <lektu@terra.es>
1278
1279 * process.c (Fstart_process): Fix docstring.
1280
1281 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
1282 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
1283 (Fsplit_char, Fchar_charset): Make argument names match their use
1284 in docstring.
1285
e109331a
RS
12862004-05-10 Richard M. Stallman <rms@gnu.org>
1287
1288 * print.c (print_preprocess): Use being_printed, loop_count and
1289 halftail to detect overdeep nesting and cyclic cdr chains.
1290
9a28b921
AS
12912004-05-10 Andreas Schwab <schwab@suse.de>
1292
1293 * lisp.h: Declare Fmake_symbolic_link.
1294
1295 * fileio.c (Frename_file): Remove extra argument in call to
1296 Fmake_symbolic_link.
1297
e2c02c1a
KS
12982004-05-10 Kim F. Storm <storm@cua.dk>
1299
1300 * xdisp.c (calc_line_height_property): Use string position when
1301 object is a string.
1302
cfe9d13e
KH
13032004-05-10 Kenichi Handa <handa@m17n.org>
1304
a57e8159
KH
1305 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
1306 inhibit-modification-hooks to t temporarily before calling
1307 Ferase_buffer.
1308
1309 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
1310 inhibit-modification-hooks to t temporarily before calling
1311 Ferase_buffer.
1312
1313 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
1314 inhibit-modification-hooks to t temporarily before calling
1315 Ferase_buffer.
1316
cfe9d13e
KH
1317 * fns.c (count_combining): Delete it.
1318 (concat): Don't check combining bytes.
1319
ceb96489
JR
13202004-05-09 Jason Rumney <jasonr@gnu.org>
1321
1322 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
1323 (globals_of_w32fns): Set it.
1324
b1c661c7
JB
13252004-05-09 Piet van Oostrum <piet@cs.uu.nl> (tiny change)
1326
1327 * data.c (Fquo): Simplify.
1328
28712a21
JB
13292004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
1330
1331 * data.c (Fquo): If any argument is float, do the computation in
1332 floating point.
1333
0f0af7a8
JB
13342004-05-08 Juanma Barranquero <lektu@terra.es>
1335
88214ef6
JB
1336 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
1337 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
1338 Fix spelling of Emacs on docstring.
1339 (Fset_process_coding_system, Fprocess_coding_system)
1340 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
1341 Make argument names match their use in docstring.
1342 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
1343 Fix docstring.
1344
0f0af7a8
JB
1345 * editfns.c (Finsert_buffer_substring): Make argument names match their
1346 use in docstring.
1347
1348 * syntax.c (Fmodify_syntax_entry): Fix docstring.
1349
2a316a84
ST
13502004-05-07 Steven Tamm <steventamm@mac.com>
1351
1352 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
1353 around call to ReceiveEvent to avoid certain crashes.
1354
13552004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
0d8c2e5c 1356
2a316a84
ST
1357 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
1358 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
1359 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
1360 Save/restore the current graphics port and device handle when
1361 drawing into an offscreen graphics world.
1362
1363 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
1364 (gif_load): Likewise.
1365
ab80314b
JB
13662004-05-07 Juanma Barranquero <lektu@terra.es>
1367
1368 * window.c (Fset_window_buffer): Fix docstring.
1369
70646bb5
TTN
13702004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
1371
1372 * emacs.c (main) [VMS]: Fix var ref.
1373
b03a4fdd
JB
13742004-05-06 Romain Francoise <romain@orebokech.com> (tiny change)
1375
1376 * data.c (Fsetq_default): Fix docstring.
1377
279d3293
JR
13782004-05-06 Jason Rumney <jasonr@gnu.org>
1379
1380 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
1381 to avoid name clash.
1382
f72b5416
JD
13832004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1384
1385 * fileio.c (barf_or_query_if_file_exists): Use lstat.
1386 (Frename_file): Handle renaming of symlinks across file systems.
440c7d00 1387 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
f72b5416 1388
6ab66799
KS
13892004-05-04 Kim F. Storm <storm@cua.dk>
1390
1391 * xdisp.c (Qtotal): New var.
1392 (syms_of_xdisp): Intern and staticpro it.
1393 (calc_line_height_property): New arg total. Set it if
1394 line-spacing property has format (total . VALUE).
1395 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
1396 Handle total line-spacing property.
1397
ab2d724b
JD
13982004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1399
1400 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
1401 "under" scroll bar when size/position changes.
1402
238add5e
JR
14032004-05-03 Jason Rumney <jasonr@gnu.org>
1404
1405 * makefile.nt: Remove.
1406
1644f4e4
EZ
14072004-05-02 Eli Zaretskii <eliz@gnu.org>
1408
a267ab4d
SM
1409 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
1410 Avoid compiler warnings.
05fdbeb8 1411
1644f4e4
EZ
1412 * Makefile.in (region-cache.o): Depend on config.h.
1413
6cbc951e
SM
14142004-05-02 Romain Francoise <romain@orebokech.com> (tiny change)
1415
1416 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
1417 with continuation lines, too.
1418
2b98b088
TTN
14192004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
1420
1421 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
1422
d9bf7950
SM
14232004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
1424
1425 * xdisp.c (calc_line_height_property): YAILOM (yet another
1426 int/Lisp_Object mixup).
1427
affa509c
EZ
14282004-05-01 Eli Zaretskii <eliz@gnu.org>
1429
1430 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
1431 undo bad effect of pack(4) in some versions of system headers.
1432
07c07cfe
JR
14332004-05-01 Jason Rumney <jasonr@gnu.org>
1434
1435 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
1436
e71caa4e
KS
14372004-04-30 Kim F. Storm <storm@cua.dk>
1438
1439 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
b2b55d03 1440 (syms_of_buffer) <cursor-type>: Doc fix.
e71caa4e
KS
1441
1442 * dispextern.h (struct it): Remove member use_default_face.
1443 Add members override_ascent, override_descent, override_boff.
1444
1445 * xdisp.c (init_iterator): Handle line-spacing float value.
1446 Initialize override_ascent member.
1447 (append_space_for_newline): Reset override_ascent.
1448 Remove use_default_face.
1449 (calc_line_height_property): New function to calculate value of
1450 line-height and line-spacing properties. Look at overlays, too.
1451 Set override_ascent, override_descent, override_boff members when
1452 using another face than the current face. Float values are now
1453 relative to the frame default font, by default; accept a cons
1454 of ratio and face name to specify value relative to a specific face.
1455 (x_produce_glyphs): Use calc_line_height_property.
1456 Use override_ascent etc. when set to handle different face heights.
1457 A negative line-spacing property value is interpreted as a total
1458 line height, rather than inter-line spacing.
1459 (note_mouse_highlight): Allocate room for 40 overlays initially.
1460
0fddae66
SM
14612004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
1462
1463 * data.c (Fsubr_name): New fun.
1464 (syms_of_data): Defsubr it.
1465
712d23dc
KS
14662004-04-29 Kim F. Storm <storm@cua.dk>
1467
1468 * xdisp.c (null_glyph_slice): New var.
1469 (append_glyph, append_composite_glyph, append_stretch_glyph):
1470 Use it to initialize glyph slice.
1471
033ad8c6
SM
14722004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
1473
1474 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
1475 (on_hot_spot_p): Make sure we always return a value.
1476 (Flookup_image_map): Remove unused var ix and iy.
1477 (note_mode_line_or_margin_highlight): Remove unused var `image'.
1478
93397360
EZ
14792004-04-27 Eli Zaretskii <eliz@gnu.org>
1480
1481 * msdos.c (init_environment): If one of the TMP... environment
1482 variables is set to a drive letter without a trailing slash,
1483 append a slash.
1484
0c54865e
EZ
14852004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
1486
1487 * editfns.c (lisp_time_argument): Provide externally.
1488
1489 * fileio.c (Fset_file_times): New function.
1490 (syms_of_fileio): Intern and staticpro it.
1491
d3b111bd
KS
14922004-04-27 Kim F. Storm <storm@cua.dk>
1493
07dc1231
KS
1494 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
1495 header line strings.
1496
360fe9d2
KS
1497 * dispextern.h (struct it): New member use_default_face.
1498
d3b111bd
KS
1499 * xdisp.c (Qline_height): New variable.
1500 (syms_of_xdisp): Intern and staticpro it.
1501 (append_space_for_newline): Partially undo 2004-04-25 change;
1502 add default_face_p arg, and restore callers.
1503 Clear it->use_default_face after use.
1504 (x_produce_glyphs): Set default font for ascii char if
1505 it->use_default_font is set. Change line-spacing property to set
1506 just extra line spacing. Handle new line-height property.
1507
0448588b
AS
15082004-04-26 Andreas Schwab <schwab@suse.de>
1509
1510 * print.c (print_object): Print non-ascii characters in bool
1511 vector representation as octal escapes.
1512
1513 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
1514 * print.c (print_object): Use it instead of BITS_PER_CHAR for
1515 bool vectors.
1516 * lread.c (read1): Likewise.
1517 * alloc.c (Fmake_bool_vector): Likewise.
1518 * data.c (Faref, Faset): Likewise.
1519 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
1520 (mapcar1): Likewise.
d3b111bd 1521
536d6baa
ST
15222004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
1523
1524 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
1525
ae11577a
MB
15262004-04-26 Miles Bader <miles@gnu.org>
1527
1528 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
1529
e198ba87
JB
15302004-04-26 Juanma Barranquero <lektu@terra.es>
1531
1532 * buffer.c (Fpop_to_buffer): Fix docstring.
1533
f3d5f92d 15342004-04-26 Steven Tamm <steventamm@mac.com>
e198ba87 1535
f3d5f92d
ST
1536 * lread.c (init_lread): Don't display missing lisp directory
1537 warnings with Carbon Emacs because self-contained bundled Emacs
e198ba87 1538 may be built without correct installation path.
f3d5f92d 1539
03e35edc
KS
15402004-04-25 Kim F. Storm <storm@cua.dk>
1541
9ff3aa31
KS
1542 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
1543
1544 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
1545
03e35edc
KS
1546 * xdisp.c (append_space_for_newline): Rename from append_space.
1547 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
1548 (x_produce_glyphs): Handle line-spacing property on newline char.
1549 If value is t, adjust ascent and descent to fit current row height.
1550 If value is an integer or float, set extra_line_spacing to integer
1551 value, or to float value x current line height.
1552
f24814e0
KH
15532004-04-23 Kenichi Handa <handa@m17n.org>
1554
1555 * fontset.c (Finternal_char_font): If POSITION is nil, return
1556 font for displaying CH with the default face.
1557
d814862a
JB
15582004-04-23 Juanma Barranquero <lektu@terra.es>
1559
1560 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
1561
063a45c5
SM
15622004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
1563
1564 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
1565 Don't make assumptions about the relative place of i and val.
1566 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
1567
ae7ab2d3
KS
15682004-04-21 Kim F. Storm <storm@cua.dk>
1569
1570 * dispextern.h (struct glyph_slice): New struct.
1571 (struct glyph): New member slice.
1572 (GLYPH_SLICE_EQUAL_P): New macro.
1573 (GLYPH_EQUAL_P): Use it.
1574 (struct glyph_string): New member slice.
1575 (struct it_slice): New struct.
1576 (struct it): New member slice, add member to stack too.
1577 New member constrain_row_ascent_descent_p.
1578 (image_ascent): Add prototype.
1579
1580 * dispnew.c (buffer_posn_from_coords): Return full image width
1581 and height even for image slices (posn is relative to full image).
1582 (marginal_area_string): Adjust x0,y0 for image slice.
1583
1584 * image.c (image_ascent): Add slice arg; calculate ascent for
1585 image slice (or full image).
1586
1587 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
1588 (syms_of_keyboard): Defsubr them.
1589
1590 * lisp.h (pos_visible_p): Fix prototype.
1591
c62aec78 1592 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
ae7ab2d3
KS
1593 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1594 (x_draw_image_foreground, x_draw_image_relief)
1595 (x_draw_image_foreground_1, x_draw_image_glyph_string):
1596 Draw sliced images.
1597
1598 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
1599 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1600 (x_draw_image_foreground, x_draw_image_relief)
1601 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
1602 Draw sliced images.
1603
1604 * w32term.h (image_ascent): Remove prototype.
1605
1606 * window.c (Fpos_visible_in_window_p): Return pixel position if
1607 PARTIALLY arg is non-nil. Simplify. Doc fix.
1608 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
1609 to return/set vscroll in pixels.
1610
1611 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
1612
1613 * xdisp.c (Qslice): New variable.
1614 (syms_of_xdisp): Intern and staticpro it.
1615 (pos_visible_p): Return pixel position in new x and y args.
1616 (init_iterator): Reset it->slice info.
1617 (handle_display_prop): Parse (slice ...) property.
1618 (push_it, pop_it): Save/restore slice info.
1619 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
1620 force repositioning of tall row if window is vscrolled, as that
1621 would reset vscroll.
1622 (append_space): Set it->constrain_row_ascent_descent_p to avoid
1623 increasing row height if row is non-empty.
1624 (fill_image_glyph_string): Copy slice info.
1625 (take_vertical_position_into_account): Simplify.
1626 (produce_image_glyph): Handle iterator slice info, setup glyph
1627 slice info. Do not force minimum line height.
1628 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
1629 do not increase height (ascent/descent) of non-empty row when
1630 adding normal character glyph; instead reduce glyph ascent/descent
1631 appropriately; if row is higher than current glyph, adjust glyph
1632 descent/ascent to reposition glyph within the existing row.
1633 Likewise, when char is newline, only set ascent/descent if row is
1634 currently empty.
1635 (note_mouse_highlight): Handle hotspots with sliced image.
1636
1637 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
1638 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1639 (x_draw_image_foreground, x_draw_image_relief)
1640 (x_draw_image_foreground_1, x_draw_image_glyph_string):
1641 Draw sliced images.
1642
1643 * xterm.h (image_ascent): Remove prototype.
1644
d58f8753
SM
16452004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
1646
1647 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
1648
4ce2719d
JPW
16492004-04-20 John Paul Wallington <jpw@gnu.org>
1650
1651 * fns.c (Fassoc, Feql): Fix indentation.
1652
d58f8753 1653 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
4ce2719d 1654
95f8c3b9
JPW
16552004-04-19 John Paul Wallington <jpw@gnu.org>
1656
1657 * fns.c (Feql): New function.
d58f8753 1658 (syms_of_fns): Defsubr it.
95f8c3b9 1659
b7e85537
JR
16602004-04-18 Jason Rumney <jasonr@gnu.org>
1661
1662 * w32select.c (Fw32_set_clipboard_data): Get sequence number
1663 after closing the clipboard.
1664
5a72efd4
LT
16652004-04-16 Luc Teirlinck <teirllm@auburn.edu>
1666
1667 * buffer.c (Fbuffer_base_buffer): Doc fix.
1668
20dc8583
KS
16692004-04-17 Kim F. Storm <storm@cua.dk>
1670
60962ec4
KS
1671 * keymap.c (Fkey_description): Add optional PREFIX arg.
1672 Combine prefix with KEYS to make up the full key sequence to describe.
1673 Correlate meta_prefix_char and following (simple) key to describe
1674 as meta modifier. All callers changed.
1675 (describe_map): Rename arg `keys' to `prefix'. Remove local
1676 `elt_prefix' var. Use Fkey_description with prefix instead of
1677 elt_prefix combined with Fsingle_key_description.
1678 (describe_vector): Declare static. Replace arg `elt_prefix' with
1679 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
1680 if !KEYMAP_P. Use Fkey_description with prefix instead of
1681 Fsingle_key_description.
1682
1683 * keymap.h (Fkey_description): Fix prototype.
1684 (describe_vector): Remove prototype.
1685
409368b9
KS
1686 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
1687
20dc8583
KS
1688 * image.c (PNG_BG_COLOR_SHIFT): Remove.
1689 (png_load): Fix calculation of transparent background color on X
1690 and W32 platforms.
1691
75c5501b
JB
16922004-04-16 Juanma Barranquero <lektu@terra.es>
1693
1694 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
1695 not too large before computing how much to scroll.
1696
da879ae8
SM
16972004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
1698
1699 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
1700
d01ca4a8
LT
17012004-04-14 Luc Teirlinck <teirllm@auburn.edu>
1702
1703 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
1704 Add hyperlink to Elisp manual to the docstring.
1705
572943b3
SM
17062004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
1707
1708 * callint.c (fix_command): Use XDCR.
1709
5e30a0fb
NR
17102004-04-14 Nick Roberts <nick@nick.uklinux.net>
1711
1712 * window.c (Fget_lru_window): Doc fix.
1713
a27ddfaf
KS
17142004-04-14 Kim F. Storm <storm@cua.dk>
1715
1716 * editfns.c (Fformat): Fix allocation size of precision array.
1717
1718 * dispnew.c (update_window): Only set changed_p if
1719 scrolling_window actually did scroll.
1720 (scrolling_window): Only return 1 if we actually did scroll.
1721
1722 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
1723 height to glyph height when cursor row is not fully visible.
1724 (make_cursor_line_fully_visible): Add FORCE_P arg to return
1725 failure in case row is higher than window. Callers changed.
1726 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
1727 Try to scroll partially visible, higher-than-window cursor row.
1728 (redisplay_window): Always try to scroll partially visible,
1729 higher-than-window cursor row - both initially and again with
1730 centering_position = 0.
1731 Clear desired matrix before retrying with centering_position = 0.
1732
da879ae8
SM
17332004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
1734
1735 * syntax.c (scan_lists): Simplify backward string scan.
1736 Fix off-by-one boundary check for string and comment fences.
1737
5fc16e8e
SM
17382004-04-13 Joe Buehler <jbuehler@hekimian.com>
1739
1740 * sheap.c, unexcw.c: New files.
1741
c9aac8e6
LT
17422004-04-12 Luc Teirlinck <teirllm@auburn.edu>
1743
1744 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
1745 base buffer has been killed. Correct the error message if the
1746 base buffer does not exist.
1747
1e88a355
SM
17482004-04-12 Joe Buehler <jbuehler@hekimian.com>
1749
1750 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
1751 Cygwin itself. Add support for Xaw3d scrollbars.
1752
1753 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
1754
1755 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
1756
1757 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
1758 before Cygwin unexec.
1759
1760 * Makefile.in: Link changes for Cygwin unexec() support.
1761
8dbff9a0
AS
17622004-04-12 Andreas Schwab <schwab@suse.de>
1763
1764 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
1765
54dffe35
LT
17662004-04-11 Luc Teirlinck <teirllm@auburn.edu>
1767
1768 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
1769 IGNORE argument equals NAME. Doc fix.
1770
99a72bdf
MY
17712004-04-11 Masatake YAMATO <jet@gyve.org>
1772
1e88a355 1773 * buffer.c (fix_start_end_in_overlays): Make overlays
99a72bdf
MY
1774 empty if they are backwards.
1775
40899d7b
SM
17762004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
1777
1778 * xfaces.c (face_color_supported_p): Fix compilation without X11.
1779
f8f853de
SM
17802004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
1781
1782 * doc.c (Fsnarf_documentation): Ignore new file name entries.
1783
c953fe1b
KS
17842004-04-06 Kim F. Storm <storm@cua.dk>
1785
661e85c1
KS
1786 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
1787 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
1788
1789 * w32term.c (w32_read_socket): Set mouse_face_hidden after
1790 clearing highlight.
1791
1792 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
1793
1794 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
1795 clearing highlight.
1796
c953fe1b
KS
1797 * indent.c (vmotion): Do not reserve one column for continuation
1798 marks on window frames.
1799
c1994268
EZ
18002004-04-04 Eli Zaretskii <eliz@gnu.org>
1801
1802 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
1803 from GCC.
1804
9f691b0d
SM
18052004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
1806
1807 * .gdbinit-union: Remove.
1808
1809 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
1810 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
1811 ($nonvalbits): Remove.
1812 ($valmask): Set it by calling xreload to avoid redundancy.
1813
1814 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
1815 (gdb_emacs_intbits): Remove.
1816
7a8560d7
JD
18172004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1818
9f691b0d 1819 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
7a8560d7 1820
3c8111fc
KH
18212004-03-30 Kenichi Handa <handa@m17n.org>
1822
1823 * editfns.c (Fformat): Fix initialization of the array info.
1824
48a0bce4
KS
18252004-03-30 Kim F. Storm <storm@cua.dk>
1826
1827 * xterm.c (x_mouse_click_focus_ignore_position): New var.
1828 (syms_of_xterm): DEFVAR_BOOL it.
1829 (ignore_next_mouse_click_timeout): New var.
1830 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
1831 Use it to filter mouse clicks following focus event.
1832
1cd0066c
KS
18332004-03-29 David Ponce <david@dponce.com>
1834
1835 * callint.c (Fcall_interactively): Fix last change.
1836
adb3b353
SM
18372004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
1838
1839 * eval.c (Fcommandp): Simplify.
1840
1841 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
1842 Extend to handle all kinds of functions.
1843
1844 * lisp.h (Finteractive_form): Declare.
1845
1846 * callint.c (Fcall_interactively): Use it.
1847
6fc4c9c9
KS
18482004-03-26 Kim F. Storm <storm@cua.dk>
1849
1850 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
1851 to catch errors in calc_pixel_width_or_height during redisplay.
1852
abdb9b83
MY
18532004-03-26 Masatake YAMATO <jet@gyve.org>
1854
b17856dd 1855 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
abdb9b83 1856
b17856dd 1857 * lisp.h (fix_start_end_in_overlays): Likewise.
abdb9b83 1858
b17856dd 1859 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
abdb9b83 1860
b17856dd 1861 * editfns.c (Ftranspose_regions): Likewise.
abdb9b83 1862
e8a84b6c
JD
18632004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1864
b17856dd 1865 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
e8a84b6c 1866
36a3fd05
RS
18672004-03-19 Richard M. Stallman <rms@gnu.org>
1868
1869 * s/sol2-6.h: Delete previous change.
1870
ab24c127
KS
18712004-03-19 Kim F. Storm <storm@cua.dk>
1872
1873 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
1874 to_charpos corresponds to newline in right fringe. Use local
1875 BUFFER_POS_REACHED_P macro.
1876
992126de
JD
18772004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1878
1879 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
1880 to compile on non-window system.
1881
45dbfc84
KS
18822004-03-19 Kim F. Storm <storm@cua.dk>
1883
1884 * dispextern.h (calc_pixel_width_or_height): Add prototype.
1885
1886 * image.c (Qcenter): Move to xdisp.c.
1887
1888 * xdisp.c (Qcenter): Declare here.
adb3b353 1889 (syms_of_xdisp): Intern and staticpro it.
45dbfc84
KS
1890 (handle_single_display_prop): Allow space display property on all
1891 platforms.
1892 (display_mode_line): Set mode_line_p before displaying line.
1893 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
1894 handling. Remove complex cases for fringes and scroll-bars.
1895 Add left, right, and center alignment positions. Add text (area)
1896 width/height. Return width or height for image specs.
1897 (produce_stretch_glyph): Improve handling of :align-to. Is now
1898 relative to left of text area by default, but other base offsets
1899 can be specified -- also for text lines.
1900
1901 * term.c (produce_glyphs): Handle IT_STRETCH.
1902 (produce_stretch_glyph): New function to handle space width and
1903 align-to display properties on non-window systems.
1904
37264101
SM
19052004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
1906
1907 * fileio.c (Fread_file_name): Set completion-ignore-case for
1908 case-insensitive systems.
1909
73bc43da
MY
19102004-03-14 Masatake YAMATO <jet@gyve.org>
1911
1912 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
1913 when keymap and cursor are setup.
1914
9062aa89
ST
19152004-03-14 Steven Tamm <steventamm@mac.com>
1916
b17856dd 1917 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
9062aa89 1918
e4b1b5ab
KS
19192004-03-14 Kim F. Storm <storm@cua.dk>
1920
1921 * dispextern.h (x_find_image_file): Add prototype.
1922
1923 * image.c (x_find_image_file): Make extern.
1924
1925 * xfns.c (x_find_image_file): Remove prototype.
1926
a6eeaa81 19272004-03-13 Eli Zaretskii <eliz@gnu.org>
5109b06a 1928
37264101 1929 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
5109b06a 1930
37264101 1931 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
5109b06a 1932
e69cfac2
RS
19332004-03-12 Richard M. Stallman <rms@gnu.org>
1934
1935 * fns.c (internal_equal): New arg PROPS controls comparing
1936 text properties. All callers changed.
1937 (Fequal_including_properties): New function.
1938 (syms_of_fns): defsubr it.
1939
45034953
KS
19402004-03-12 Kim F. Storm <storm@cua.dk>
1941
1942 Fix image support on MAC. From YAMAMOTO Mitsuharu.
37264101 1943
45034953
KS
1944 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
1945 (image_background, image_background_transparent): Fix prototypes.
1946
37264101 1947 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
45034953
KS
1948
1949 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
1950 (x_query_font, x_find_ccl_program, x_set_window_size)
1951 (x_make_frame_visible, mac_initialize, XCreatePixmap)
1952 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
1953 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
1954
1955 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
1956 (x_query_font, x_find_ccl_program, x_set_window_size)
1957 (x_make_frame_visible, mac_initialize, XCreatePixmap)
1958 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
1959 (mac_draw_line_to_pixmap): Add prototypes.
1960
19612004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1962
1963 * macterm.c (XTread_socket): Fix mouse click on tool bar.
1964
a12d3d87
KS
19652004-03-11 Kim F. Storm <storm@cua.dk>
1966
d3ab1cf1
KS
1967 * dispextern.h: Move image related prototypes from xfns.c section
1968 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
1969 HAVE_X_WINDOWS.
37264101 1970
37de9f51 1971 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
37264101 1972 Move gtkutil.o to new GTK_OBJ list.
a12d3d87
KS
1973 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
1974 (GTK_OBJ) [USE_GTK]: New declaration.
1975 (obj): Add $(GTK_OBJ) to list.
1976
5243c06a 19772004-03-11 Steven Tamm <steventamm@mac.com>
5109b06a 1978
5243c06a
ST
1979 * image.c [MAC_OSX]: Include sys/stat.h
1980
1981 * macfns.c (syms_of_macfns): Remove definitions of things now
1982 defined in image.c
1983
c0f97789
KS
19842004-03-11 Kim F. Storm <storm@cua.dk>
1985
1986 The following changes consolidates the identical/similar image
1987 support code previously found in xfns.c, w32fns.c, and macfns.c
1988 into a new file image.c.
1989
1990 * makefile.w32-in (OBJ1): Add image.o.
1991 ($(BLD)/image.$(O)): Add dependencies.
1992
1993 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
1994 (image.o): Add dependencies.
37264101 1995
c0f97789
KS
1996 * image.c: New file with consolidated image support code.
1997 (COLOR_TABLE_SUPPORT): New define to control whether
1998 color table support is available (X only).
1999 (Bitmap_Record): Common name for x_bitmap_record,
2000 w32_bitmap_record, and mac_bitmap_record.
2001 (XImagePtr): Common name for pointer to XImage or equivalent.
2002 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
2003 to XImagePtr on X+MAC, and to HDC on W32.
2004 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
2005 (NO_PIXMAP): Common name for "None" or equivalent.
2006 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
2007 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
2008 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
37264101
SM
2009 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
2010 Define with suitable equivalents on W32 and MAC for code sharing.
c0f97789
KS
2011 (XDrawLine): Define on MAC for code sharing.
2012 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
2013 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
2014 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2015 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2016 (x_reference_bitmap, x_create_bitmap_from_data)
2017 (x_create_bitmap_from_file, x_destroy_bitmap)
2018 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2019 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
2020 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2021 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2022 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2023 (define_image_type, lookup_image_type, valid_image_p)
2024 (image_error, enum image_value_type, struct image_keyword)
2025 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2026 (make_image, free_image, prepare_image_for_display, image_ascent)
2027 (four_corners_best, image_background, image_background_transparent)
2028 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2029 (make_image_cache, free_image_cache, clear_image_cache)
2030 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2031 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2032 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2033 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
2034 (init_image_func_pointer, image_load_quartz2d)
2035 (struct ct_color, init_color_table, free_color_table)
2036 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2037 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2038 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2039 (x_disable_image, x_build_heuristic_mask)
2040 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2041 (TIFF support, GIF support, Ghostscript support): Consolidate image
2042 code from xfns.c, w32fns.c, and macfns.c.
2043 (syms_of_image): Consolidate image related symbol setup here.
2044 (init_image): Consolidate image related initializations here.
37264101 2045
c0f97789
KS
2046 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
2047 and init_image. Remove call to init_xfns.
2048
37264101
SM
2049 * macterm.h (struct mac_bitmap_record): Add file member.
2050 Not currently used, but simplifies code sharing.
c0f97789
KS
2051
2052 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2053 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2054 (x_reference_bitmap, x_create_bitmap_from_data)
2055 (x_create_bitmap_from_file, x_destroy_bitmap)
2056 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2057 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
2058 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2059 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2060 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2061 (define_image_type, lookup_image_type, valid_image_p)
2062 (image_error, enum image_value_type, struct image_keyword)
2063 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2064 (make_image, free_image, prepare_image_for_display, image_ascent)
2065 (four_corners_best, image_background, image_background_transparent)
2066 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2067 (make_image_cache, free_image_cache, clear_image_cache)
2068 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2069 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2070 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2071 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
2072 (init_image_func_pointer, image_load_quartz2d)
2073 (struct ct_color, init_color_table, free_color_table)
2074 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2075 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2076 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2077 (x_disable_image, x_build_heuristic_mask)
2078 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2079 (TIFF support, GIF support, Ghostscript support): Merge with image
2080 code from xfns.c and macfns.c into image.c.
2081 (syms_of_xfns): Move image related symbols to image.c.
2082 (init_external_image_libraries, init_xfns): Remove; initialization
2083 moved to init_image in image.c.
2084
2085 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2086 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2087 (x_reference_bitmap, x_create_bitmap_from_data)
2088 (x_create_bitmap_from_file, x_destroy_bitmap)
2089 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2090 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2091 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2092 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2093 (define_image_type, lookup_image_type, valid_image_p)
2094 (image_error, enum image_value_type, struct image_keyword)
2095 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2096 (make_image, free_image, prepare_image_for_display, image_ascent)
2097 (four_corners_best, image_background, image_background_transparent)
2098 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2099 (make_image_cache, free_image_cache, clear_image_cache)
2100 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2101 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2102 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2103 (struct ct_color, init_color_table, free_color_table)
2104 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2105 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2106 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2107 (x_disable_image, x_build_heuristic_mask)
2108 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2109 (TIFF support, GIF support, Ghostscript support): Merge with image
2110 code from xfns.c and macfns.c into image.c.
2111 (syms_of_xfns): Move image related symbols to image.c.
2112 (init_external_image_libraries, init_xfns): Remove; initialization
2113 moved to init_image in image.c.
2114
2115 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2116 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2117 (x_reference_bitmap, x_create_bitmap_from_data)
2118 (x_create_bitmap_from_file, x_destroy_bitmap)
2119 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2120 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2121 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2122 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2123 (define_image_type, lookup_image_type, valid_image_p)
2124 (image_error, enum image_value_type, struct image_keyword)
2125 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2126 (make_image, free_image, prepare_image_for_display, image_ascent)
2127 (four_corners_best, image_background, image_background_transparent)
2128 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2129 (make_image_cache, free_image_cache, clear_image_cache)
2130 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2131 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2132 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2133 (struct ct_color, init_color_table, free_color_table)
2134 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2135 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2136 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2137 (x_disable_image, x_build_heuristic_mask)
2138 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2139 (TIFF support, GIF support, Ghostscript support): Merge with
2140 w32fns.c and macfns.c image code into image.c.
2141 (syms_of_xfns): Move image related symbols to image.c.
2142 (init_xfns): Remove; initialization moved to init_image in image.c.
2143
2144 * lisp.h (syms_of_image, init_image): Add protoypes.
2145 (init_xfns): Remove prototype.
2146
2147 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2148 (x_reference_bitmap, x_create_bitmap_from_data)
2149 (x_create_bitmap_from_file, x_destroy_bitmap)
2150 (x_create_bitmap_mask): Move prototypes from dispextern.h.
2151 (gamma_correct) [MAC_OS]: Add prototype.
2152
2153 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2154 (x_reference_bitmap, x_create_bitmap_from_data)
2155 (x_create_bitmap_from_file, x_destroy_bitmap)
2156 (x_create_bitmap_mask): Move prototypes to dispextern.h.
2157
6eced09c
KH
21582004-03-09 Kenichi Handa <handa@etlken2>
2159
2160 * coding.c (decode_coding_emacs_mule): Handle insufficent source
2161 correctly.
2162
9a7e95f3
RS
21632004-03-04 Richard M. Stallman <rms@gnu.org>
2164
04a6e76b
RS
2165 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
2166
9a7e95f3
RS
2167 * window.c (Fdisplay_buffer): Doc fix.
2168
2169 * buffer.c (Fpop_to_buffer): Doc fix.
2170
6c2488df
KS
21712004-03-03 Kim F. Storm <storm@cua.dk>
2172
2173 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
2174
d8d95bc7
SM
21752004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
2176
2177 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
2178
357589bf
RS
21792004-03-02 Richard M. Stallman <rms@gnu.org>
2180
2181 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
2182
409949b5
KH
21832004-03-02 Kenichi Handa <handa@m17n.org>
2184
2185 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
2186
d24bc50f
KS
21872004-03-02 Kim F. Storm <storm@cua.dk>
2188
2189 * window.h (struct window): New member overlay_arrow_bitmap.
2190
2191 * window.c (make_window): Initialize overlay_arrow_bitmap.
2192
2193 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
2194 implement and integrate multiple overlay arrows with redisplay.
2195 (syms_of_xdisp): DEFVAR_LISP and initialize it.
2196 (last_arrow_position, last_arrow_string): Replace by properties.
2197 (Qlast_arrow_position, Qlast_arrow_string)
2198 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
2199 (syms_of_xdisp): Intern and staticpro them.
2200 (overlay_arrow_string_or_property, update_overlay_arrows)
2201 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
2202 (overlay_arrow_at_row): New functions for multiple overlay arrows.
2203 (redisplay_internal): Use them instead of directly accessing
2204 Voverlay_arrow_position etc. for multiple overlay arrows.
2205 (mark_window_display_accurate): Use update_overlay_arrows.
2206 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
2207 (try_window_id): Use overlay_arrows_changed_p.
2208 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
2209 (display_line): Use overlay_arrow_at_row to check multiple
2210 overlay arrows, and get relevant overlay-arrow-string and
d8d95bc7 2211 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
d24bc50f
KS
2212 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
2213 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
2214
2215 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
2216 (update_window_fringes): Remove unused code.
2217
c1464661
JR
22182004-03-01 Jason Rumney <jasonr@gnu.org>
2219
2220 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
2221
a64387ee
JB
22222004-03-01 Juanma Barranquero <lektu@terra.es>
2223
2224 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
2225
2226 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
2227
334faa08
JD
22282004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2229
2230 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
2231 how many colors can be displayed.
2232
bb62616f
KH
22332004-03-01 Kenichi Handa <handa@m17n.org>
2234
2235 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
2236 correctly.
2237
0fd16104
KS
22382004-02-28 Kim F. Storm <storm@cua.dk>
2239
2240 * dispnew.c (update_window): Update header line also if there are
2241 no other changes in window (move code after set_cursor label).
2242
2243 * lisp.h (mark_window_display_accurate): Remove prototype.
2244
2245 * window.c (window_loop, Fforce_window_update): Force mode line
2246 updates by setting prevent_redisplay_optimizations_p and
2247 update_mode_lines.
2248
b59dd9c8
JD
22492004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2250
d8d95bc7 2251 * xfns.c (x_window): Fix indentation.
b59dd9c8
JD
2252
2253 * xterm.c (x_calc_absolute_position): Call x_real_positions
2254 to get WM window sizes and use those to calculate position.
d8d95bc7 2255 (x_set_offset): Remove code commented out.
b59dd9c8 2256
a874691c
MB
22572004-02-28 Miles Bader <miles@gnu.org>
2258
2259 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
2260
3e0c6482
KS
22612004-02-28 Kim F. Storm <storm@cua.dk>
2262
2263 * keyboard.c (kbd_buffer_store_event_hold): New function to store
2264 an event into kbd fifo, but with special handling of quit event;
2265 a quit event is saved for later, and further events are discarded
2266 until the saved quit event has been processed.
2267 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
2268 (gen_help_event): Store help event in kbd fifo.
2269 (NREAD_INPUT_EVENTS): Remove.
2270 (read_avail_input): Adapt to new read_socket_hook interface.
2271 Remove allocation and initialization of local input_event buffer,
2272 as read_socket_hook stores events directly in fifo. Allocate and
2273 initialize local hold_quit event to handle postponed quit event
2274 (and store it if set by kbd_buffer_store_event_hold).
2275
2276 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
2277 (gen_help_event): Fix prototype.
2278
a64387ee 2279 * macterm.c (XTread_socket): Remove bufp_r and
3e0c6482 2280 numcharsp args. Add hold_quit arg.
f63fd14e 2281 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
2282 directly in fifo using kbd_buffer_store_event_hold.
2283
2284 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
2285 (read_input_waiting): Adapt to new read_socket_hook interface.
2286 Remove allocation and initialization of local input_event buffer,
2287 as read_socket_hook stores events directly in fifo. Allocate and
2288 initialize local hold_quit event to handle postponed quit event
2289 (and store it if set by kbd_buffer_store_event_hold).
2290
a64387ee 2291 * term.c (read_socket_hook): Fix arg list.
3e0c6482
KS
2292
2293 * termhooks.h (read_socket_hook): Fix prototype.
2294
2295 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
2296 numcharsp args. Add hold_quit arg.
f63fd14e 2297 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
2298 directly in fifo using kbd_buffer_store_event_hold.
2299
2300 * w32inevt.h (w32_console_mouse_position): Fix prototype.
2301
2302 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
f63fd14e
JB
2303 Add hold_quit arg. Rework to use just one, local, inev
2304 input_event. Store inev directly in fifo using
3e0c6482
KS
2305 kbd_buffer_store_event_hold. Update count in one place.
2306 Postpone call to gen_help_event until inev is stored; use new
2307 local do_help for this.
2308 Remove local emacs_event in handing of ButtonPress event; just use
2309 inev instead (so no reason to copy it later).
2310
2311 * xsmfns.c (x_session_check_input): Remove numchars arg.
2312
d8d95bc7
SM
2313 * xterm.c (x_focus_changed, x_detect_focus_change):
2314 Remove numchars arg. Always store event into bufp arg.
2315 Return nothing. Callers changed accordingly.
3e0c6482
KS
2316 (glyph_rect): Simplify.
2317 (STORE_KEYSYM_FOR_DEBUG): New macro.
2318 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
2319 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
2320 (current_hold_quit) [USE_GTK]: Add.
2321 (event_handler_gdk): Adapt to new handle_one_xevent.
2322 (handle_one_xevent): Remove bufp_r and numcharsp args.
f63fd14e
JB
2323 Add hold_quit arg. Rework to use just one, local, inev
2324 input_event. Store inev directly in fifo using
3e0c6482
KS
2325 kbd_buffer_store_event_hold. Update count in one place.
2326 Postpone call to gen_help_event until inev is stored; use new
2327 local do_help for this.
2328 Simplify handling of keysyms (consolidate common code). Fix bug
2329 where count was updated with nchars instead of nbytes.
2330 Remove local emacs_event in handing of ButtonPress event; just use
2331 inev instead (so no reason to copy it later).
2332 Remove `out' label. Rename label `ret' to `done'; add various
2333 `goto done' to clarify code flow in deeply nested blocks.
2334 (x_dispatch_event): Simplify as handle_one_xevent now calls
2335 kbd_buffer_store_event itself.
f63fd14e 2336 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
3e0c6482
KS
2337 arg. Call handle_one_xevent with new arglist. Store event from
2338 x_session_check_input in fifo.
2339 [USE_GTK]: Setup current_hold_quit.
2340 Decrement handling_signal before unblocking input.
2341 (x_initialize) [USE_GTK]: Initialize current_count.
2342
2343 * xterm.h (x_session_check_input): Fix prototype.
2344
e3564461 23452004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
a64387ee 2346
d8d95bc7 2347 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
a64387ee 2348
e3564461
ST
2349 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
2350 macgui.h).
a64387ee 2351
e3564461 2352 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
a64387ee 2353
e3564461
ST
2354 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
2355 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
2356 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
2357 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
2358 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
2359 (Bitmap): Remove typedef.
2360 (Pixmap): Change int to GWorldPtr.
2361
d8d95bc7 2362 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
a64387ee 2363
d8d95bc7
SM
2364 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
2365 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
2366 New #define to extract 16-bit depth color components from unsigned
e3564461
ST
2367 long representation.
2368 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
2369 colors used for masks.
2370 (struct mac_display_info): Add color_p. Remove n_cbits.
a64387ee 2371
e3564461
ST
2372 * macfns.c: Include sys/types.h and sys/stat.h.
2373 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
2374 Include QuickTime/QuickTime.h.
2375 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
2376 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
2377 functions defined in macterm.c.
2378 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
2379 (ZPixmap): New #define for compatibility with xfns.c.
2380 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
2381 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
d8d95bc7
SM
2382 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
2383 New functions.
e3564461 2384 (four_corners_best, x_create_x_image_and_pixmap)
d8d95bc7
SM
2385 (x_destroy_x_image, unwind_create_frame, x_disable_image)
2386 (x_edge_detection, init_color_table, colors_in_color_table)
e3564461
ST
2387 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
2388 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
2389 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
2390 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
2391 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
2392 long mixup.
2393 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
2394 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
2395 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
2396 (x_set_cursor_type, Fxw_color_values, valid_image_p)
2397 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
2398 (x_alloc_image_color, clear_image_cache, lookup_image)
2399 (x_find_image_file, xbm_read_bitmap_file_data)
2400 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
2401 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
2402 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
2403 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
2404 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
d8d95bc7 2405 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
e3564461
ST
2406 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
2407 #if 0.
2408 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
2409 #if 0. Free white_relief.gc and black_relief.gc.
d8d95bc7
SM
2410 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
2411 New functions (from xfns.c).
e3564461
ST
2412 (Fx_create_frame): Record unwind_create_frame.
2413 (Fxw_display_color_p): Use dpyinfo->color_p.
2414 (Fx_display_grayscale_p, Fx_display_planes): Don't use
2415 dpyinfo->n_cbits.
2416 (Fx_display_color_cells): Use dpyinfo->n_planes;
2417 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
2418 (Qheuristic, cross_disabled_images, emboss_matrix)
2419 (laplace_matrix): New variables (from xfns.c).
2420 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
2421 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
2422 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
d8d95bc7
SM
2423 (image_background_transparent): New function (from xfns.c).
2424 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
2425 (image_load_quicktime): Add declaration.
2426 [MAC_OSX] (image_load_quartz2d): Likewise.
2427 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
2428 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
d8d95bc7 2429 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
e3564461
ST
2430 (xbm_load_image_from_file, x_laplace_read_row)
2431 (x_laplace_write_row, pbm_read_file): Remove functions.
2432 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
2433 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
2434 (colors_in_color_table): Sync with xfns.c (although not used).
2435 (lookup_rgb_color): Don't lookup color table. Just do gamma
2436 correction.
2437 (COLOR_INTENSITY): New #define (from xfns.c).
d8d95bc7
SM
2438 (x_disable_image): New function (from xfns.c).
2439 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
2440 (x_build_heuristic_mask): Sync with xfns.c.
2441 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
2442 (HAVE_PBM): Remove #ifdef.
2443 (pbm_load): Sync with xfns.c. Set img->width and img->height
2444 before IMAGE_BACKGROUND.
d8d95bc7 2445 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
e3564461
ST
2446 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
2447 Don't enclose with #if HAVE_PNG.
2448 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
d8d95bc7
SM
2449 symbol _CGImageCreateWithPNGDataProvider is defined.
2450 Otherwise use image_load_quicktime.
e3564461 2451 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
d8d95bc7
SM
2452 [HAVE_PNG] (png_load): Sync with xfns.c.
2453 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
2454 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
2455 HAVE_JPEG.
2456 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
2457 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
2458 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
2459 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
2460 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
2461 (tiff_image_p, tiff_load): Don't enclose declarations with #if
2462 HAVE_TIFF.
2463 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
2464 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
2465 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
d8d95bc7
SM
2466 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
2467 New functions (from xfns.c).
e3564461 2468 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
d8d95bc7 2469 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
e3564461
ST
2470 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
2471 Don't enclose with #if HAVE_GIF.
2472 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
2473 animated gif. Otherwise use image_load_quicktime.
2474 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
2475 gif_DrawText to avoid conflict with QuickdrawText.h.
2476 [HAVE_GIF] (gif_load): Sync with xfns.c.
2477 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
2478 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
2479 Ghostscript is not supported yet).
2480 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
2481 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
2482 cross_disabled_images (from xfns.c). Remove #if 0 for supported
2483 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
2484 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
2485 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
d8d95bc7
SM
2486 HAVE_PNG. Call EnterMovies to support animated gifs.
2487 Call init_image_func_pointer to bind a symbol
e3564461 2488 _CGImageCreateWithPNGDataProvider if it is defined.
a64387ee 2489
d8d95bc7 2490 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
e3564461
ST
2491 (x_draw_bar_cursor): Sync declaration with xterm.c.
2492 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
2493 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
2494 graphics).
2495 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
2496 (mac_draw_line_to_pixmap, XCreatePixmap)
2497 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
d8d95bc7
SM
2498 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
2499 New functions.
2500 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
2501 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
2502 Cast bits to char *.
e3564461
ST
2503 (reflect_byte): New function (from w32fns.c).
2504 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
2505 due to byte alignment.
d8d95bc7
SM
2506 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
2507 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
e3564461
ST
2508 (XSetForeground): Remove static (now used in macfns.c).
2509 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
2510 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
2511 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
2512 (x_draw_glyph_string_box, x_draw_image_foreground)
2513 (x_draw_image_foreground_1, x_draw_image_glyph_string)
2514 (x_draw_stretch_glyph_string, x_draw_glyph_string)
2515 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
2516 Sync with xterm.c.
2517 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
2518 than the xterm.c version when a strictly horizontal or vertical
2519 line is drawn.
2520 (XTset_terminal_window): Add static.
2521 (x_make_frame_visible): Add UNBLOCK_INPUT.
2522 (x_free_frame_resources): New funcion (from xterm.c).
2523 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
2524 occurs in tool bar area.
d8d95bc7
SM
2525 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
2526 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
e3564461
ST
2527 Initialize image cache.
2528 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
2529 Enclose unused functions with #if 0.
2530 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
2531 (decode_mac_font_name): New function to apply code conversions
d8d95bc7 2532 from a mac font name to an XLFD font name according to its script code.
e3564461 2533 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
d8d95bc7 2534 font name to a mac font name according to REGISTRY and ENCODING fields.
e3564461
ST
2535 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
2536 whose name starts with `.'.
2537 (init_font_name_table): Use decode_mac_font_name. Add both
2538 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
2539 of a font is smJapanese.
2540 (mac_do_list_fonts): New function to list fonts that match a given
2541 pattern.
2542 (x_list_fonts, XLoadQueryFont): Use it.
2543 (XLoadQueryFont): Set rbearing field for each variable width
2544 character to avoid needless redraw.
2545 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
2546
446f5f3d
KS
25472004-02-26 Kim F. Storm <storm@cua.dk>
2548
af617d0f
KS
2549 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
2550 as read_socket_hook handler on X aborts if buffer is too small
2551 and W32 handler doesn't always check buffer limit.
2552
446f5f3d
KS
2553 * xdisp.c (handle_single_display_prop): Handle left-fringe and
2554 right-fringe similar to a display margin image. Specifically,
2555 the characters having the fringe prop are no longer shown, and
2556 we use IT_IMAGE/next_element_from_image with image_id = -1 to
2557 do this. Set fringe bitmap face_id in it->face_id.
2558 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
2559 still realize it->face (i.e. the fringe bitmap face).
2560
7d8a0b55
MB
25612004-02-25 Miles Bader <miles@gnu.org>
2562
2563 * xdisp.c (check_it): Check string/string_pos consistency.
2564 (init_iterator): Initialize string-related fields properly.
2565
25662004-02-11 Miles Bader <miles@gnu.org>
2567
2568 * xdisp.c (produce_image_glyph): Force negative descents to zero.
2569
25702004-02-10 Miles Bader <miles@gnu.org>
2571
2572 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
2573 BLOCK_INPUT can be nested, so it doesn't make much sense.
2574
a64387ee 25752004-02-24 Michael Mauger <mmaug@yahoo.com>
ce35edd1
JR
2576
2577 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
2578 (xbm_read_bitmap_data): Use unsigned char for image data.
2579
92f5fba2
LT
25802004-02-23 Luc Teirlinck <teirllm@auburn.edu>
2581
2582 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
2583
8565fb3d
JR
25842004-02-22 Jason Rumney <jasonr@gnu.org>
2585
2586 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
2587 correctly over other bitmaps.
2588
a6eeaa81 25892004-02-21 Eli Zaretskii <eliz@gnu.org>
f8125c39
EZ
2590
2591 * emacs.c (USAGE1): Split into two halves.
2592 (USAGE2): Second half of the old USAGE1.
d8d95bc7
SM
2593 (USAGE3): Rename from USAGE2.
2594 (USAGE4): Rename from USAGE3.
f8125c39 2595
4effffca
EZ
25962004-02-21 Juri Linkov <juri@jurta.org>
2597
2598 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
2599 Fix --multibyte. Move --help, --version to USAGE2. Add alias
2600 --file. Fix -f, -l. Sort options. Untabify.
2601 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
2602
923c1e6f
LT
26032004-02-19 Luc Teirlinck <teirllm@auburn.edu>
2604
2605 * category.c (Fdefine_category, Fcategory_docstring)
2606 (Fget_unused_category, Fset_category_table)
2607 (Fcategory_set_mnemonics): Doc fixes.
2608
b0e225fd
KS
26092004-02-20 Kim F. Storm <storm@cua.dk>
2610
2611 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
2612 The following changes are relative to the 2004-01-21 revision.
2613 (NREAD_INPUT_EVENTS): Define as max number of input events to read
2614 in one call to read_socket_hook. Value is 8.
2615 (read_avail_input): Separate and rework handling of read_socket_hook
2616 and non-read_socket_hook cases. Use smaller input_event buffer
d8d95bc7
SM
2617 in read_socket_hook case, and repeat if full buffer is read.
2618 Use new local variable 'discard' to skip input after C-g.
b0e225fd
KS
2619 In non-read_socket_hook case, just use a single input_event, and
2620 call kbd_buffer_store_event on the fly for each character.
2621
b15aa9f9
SM
26222004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
2623
2624 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
2625 Remove unused `gu' alternative.
2626
83c9aa95
AS
26272004-02-19 Andreas Schwab <schwab@suse.de>
2628
2629 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
2630 warning.
2631
cc808173
KS
26322004-02-18 Kim F. Storm <storm@cua.dk>
2633
2634 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
2635 Fix last change.
2636
ab90a54d
KS
26372004-02-17 Kim F. Storm <storm@cua.dk>
2638
b26f249f
KS
2639 * xdisp.c (fast_find_position): Fix return value of new version;
2640 it was inverted compared to the 21.1 version.
2641 (get_window_cursor_type): Don't look at glyph if NULL.
2642 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 2643
ab90a54d
KS
2644 * keyboard.c: Rework previous change; it didn't consider that the
2645 buf array was allocated on the stack.
2646 (prev_read): Remove variable.
2647 (read_avail_input_buf): New static event buffer array.
b9568dfc 2648 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 2649 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
2650 Use in_read_avail_input to handle re-entrance; when re-entered,
2651 fully initialize and use tmp_buf array instead of read_avail_input_buf.
2652 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
2653 is always cleared on entry. To ensure that, we clear (just) the
2654 entries that were used before we return.
2655 (init_keyboard): Initialize read_avail_input_buf here.
2656
4e039f3f
EZ
26572004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change)
2658
2659 * cmds.c (Fend_of_line): Doc fix.
2660
7b5368c1
EZ
26612004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
2662
2663 * keyboard.c (prev_read): New static variable.
2664 (read_avail_input): Use it to zero out only those slots in buf[]
2665 that were used last time we were called.
2666
a6eeaa81 26672004-02-16 Eli Zaretskii <eliz@gnu.org>
ca4bc494
EZ
2668
2669 * Makefile.in (obj): Move fringe.o from here...
2670 (XOBJ, MAC_OBJ): ...to here.
2671
159c348e
SE
26722004-02-16 Stephen Eglen <stephen@gnu.org>
2673
2674 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
2675
d2f14999
SM
26762004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
2677
b15aa9f9
SM
2678 * data.c (Fbyteorder):
2679 * fringe.c (Fdefine_fringe_bitmap):
2680 * xdisp.c (handle_single_display_prop):
d2f14999
SM
2681 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
2682
8d50508a
JR
26832004-02-16 Jason Rumney <jasonr@gnu.org>
2684
2685 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
2686
dd4497dc
ST
26872004-02-15 Steven Tamm <steventamm@mac.com>
2688
2689 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
2690 controlling emulation of a three button mouse with option and
2691 command keys.
2692 (Qreverse, mac_get_enumlated_btn): Handle the emulation
b15aa9f9 2693 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
dd4497dc 2694
c9159cb3
KS
26952004-02-15 Kim F. Storm <storm@cua.dk>
2696
2cc52658
KS
2697 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
2698
c9159cb3
KS
2699 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
2700 Perform byte-swapping.
2701
12fde2dc
KS
27022004-02-14 Kim F. Storm <storm@cua.dk>
2703
2704 * dispextern.h (struct draw_fringe_bitmap_params): Change member
2705 bits from char to short to facilitate wider bitmaps.
2706 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
2707 member.
2708
2709 * fringe.c (struct fringe_bitmap): Change member bits from char to
2710 short to facilitate 16 bits wide bitmaps. Modify all standard
2711 bitmaps accordingly.
2712 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
2713 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
2714 (draw_fringe_bitmap): Ditto.
2715 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
2716 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
2717 handle up to 16 bits wide bitmaps.
2718 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 2719 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
2720
2721 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
2722 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
2723 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
2724
2725 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
2726 so it is no longer necessary to expand them here.
2727
2728 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
2729
9d7271e8
KS
27302004-02-12 Kim F. Storm <storm@cua.dk>
2731
2732 * window.c (Fwindow_fringes): Doc fix.
2733
706c1e4f
JD
27342004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2735
2736 * xselect.c (x_get_foreign_selection): Add new optional parameter
2737 time_stamp.
2738 (Fx_get_selection_internal): Ditto, pass time_stamp to
2739 x_get_foreign_selection.
2740
2741 * data.c (Fbyteorder): New function.
2742
c2d12b5d
JD
27432004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2744
2745 * atimer.c: Move include stdio.h to same place as in other files.
2746
2747 * region-cache.c: Ditto.
2748
2749 * sysdep.c: Ditto.
2750
2751 * xfaces.c: Ditto.
2752
4c1947b9
SS
27532004-02-09 Sam Steingold <sds@gnu.org>
2754
89458937 2755 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
4c1947b9 2756
82722af3
KS
27572004-02-09 Kim F. Storm <storm@cua.dk>
2758
2759 * fringe.c: New file. Move original fringe related declarations
2760 and code from dispextern.h and xdisp.c here.
2761 Rework code to support user defined fringe bitmaps, redefining
2762 standard bitmaps, ability to overlay user defined bitmap with
2763 overlay arrow bitmap, and add faces to bitmaps.
2764 (Voverflow_newline_into_fringe): Declare here.
2765 (enum fringe_bitmap_align): New enum.
2766 (..._bits): All bitmaps are now defined without bitswapping; that
2767 is now done in init_fringe_once (if necessary).
2768 (standard_bitmaps): New array with specifications for the
2769 standard fringe bitmaps.
2770 (fringe_faces): New array.
2771 (valid_fringe_bitmap_id_p): New function.
2772 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
2773 (draw_fringe_bitmap): New function which draws fringe bitmap,
2774 possibly overlaying bitmap with cursor in right fringe or the
2775 overlay arrow in the left fringe.
2776 (update_window_fringes): Do not handle overlay arrow here.
2777 Compare and copy fringe bitmap faces.
2778 (init_fringe_bitmap): New function.
2779 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
2780 define and destroy user defined fringe bitmaps.
2781 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
2782 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
2783 (syms_of_fringe): New function. Defsubr new DEFUNs.
2784 DEFVAR_LISP Voverflow_newline_into_fringe.
2785 (init_fringe_once, init_fringe): New functions.
2786 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 2787
82722af3
KS
2788 * Makefile.in (obj): Add fringe.o.
2789 (fringe.o): New dependencies.
2790
2791 * dispextern.h (FRINGE_ID_BITS): New definition for number of
2792 bits allocated to hold a fringe number. Increase number of bits
2793 from 4 to 8 to allow user defined fringe bitmaps.
2794 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
2795 left_user_fringe_face_id, right_user_fringe_bitmap,
2796 right_user_fringe_face_id.
2797 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
2798 Move to new file fringe.c.
2799 (MAX_FRINGE_BITMAPS): Define here.
2800 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
2801 and overlay_p. Change member which to int.
2802 (struct redisplay_interface): New members define_fringe_bitmap
2803 and destroy_fringe_bitmap.
2804 (valid_fringe_bitmap_id_p): Add prototype.
2805 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
2806
2807 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
2808 arrows.
2809 (update_frame): Do flush_display if force_flush_display_p to
2810 ensure display (specifically fringes) are updated in a timely
2811 manner when resizing the frame by dragging the mouse.
2812 (update_window_line): Update row if overlay arrow changed.
2813 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
2814 or overlay arrow changed.
2815
2816 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
2817 syms_of_fringe, and init_fringe.
2818
2819 * frame.h (struct frame): New member force_flush_display_p.
2820
2821 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
2822 Add prototypes.
2823
a3993cc8 2824 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
a64387ee 2825 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
a3993cc8
KS
2826 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
2827 Use cursor color for displaying cursor in fringe.
82722af3
KS
2828 (x_redisplay_interface): Add null handlers for
2829 define_fringe_bitmap and destroy_fringe_bitmap functions.
2830
2831 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
2832 xterm.c to handle overlayed fringe bitmaps and to use cursor color
2833 for displaying cursor in fringe.
2834 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
2835 specific functions to define and destroy fringe bitmaps in fringe_bmp.
2836 (w32_redisplay_interface): Add them to redisplay_interface.
2837 (w32_term_init): Call w32_init_fringe instead of explicitly
2838 defining fringe bitmaps in fringe_bmp array.
2839 (x_delete_display): Call w32_reset_fringes instead of explicitly
2840 destroying fringe bitmaps in fringe_bmp array.
2841
2842 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
2843 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
2844 (continued_bits, continuation_bits, ov_bits, first_line_bits)
2845 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
2846 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
2847 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
2848 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
2849 Move fringe handling vars and code to new file fringe.c.
2850 (handle_display_prop): Handle left-fringe and right-fringe
2851 display properties; store user fringe bitmaps in iterator.
2852 (move_it_in_display_line_to): Handle cursor in fringe at eob.
2853 (clear_garbaged_frames): Set force_flush_display_p if resized.
2854 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
2855 (display_line): Handle cursor in fringe at eob.
2856 (display_line): Set row user fringe bitmaps from iterator.
2857
2858 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
2859 Use cursor color for displaying cursor in fringe.
2860 (x_redisplay_interface): Add null handlers for
2861 define_fringe_bitmap and destroy_fringe_bitmap functions.
2862
030400eb
JD
28632004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2864
2865 * macfns.c (Fx_change_window_property): Make doc string and
2866 parameters same as for X version.
2867
2868 * w32fns.c (Fx_change_window_property): Ditto.
2869
3af55251
KS
28702004-02-07 Kim F. Storm <storm@cua.dk>
2871
ec110e9e
KS
2872 * xdisp.c (hscroll_window_tree): Position cursor near to right
2873 margin in hscrolled window when jumping to end of line (rather
2874 than centering cursor).
2875
3af55251
KS
2876 * process.c (wait_reading_process_input): Don't do adaptive read
2877 buffering if waiting for a specific process.
2878
b0c138ce
LT
28792004-02-05 Luc Teirlinck <teirllm@auburn.edu>
2880
2881 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
2882 (Fread_minibuffer, Feval_minibuffer)
2883 (Fread_string, Fread_no_blanks_input)
2884 (Fcompleting_read): Doc fixes.
2885 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
2886 completion-regexp-list. Define Qcase_fold_search and staticpro it.
2887 (read_minibuf): Fix initial comment.
2888 (Ftry_completion, Fall_completions, Ftest_completion): Bind
e8eeaed8 2889 case-fold-search to the value of completion-ignore-case when
b0c138ce
LT
2890 checking completion-regexp-list.
2891 (Fdisplay_completion_list): Make it handle arguments that are
2892 symbols. Doc fix.
2893
9676f5ad 28942004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 2895
9676f5ad 2896 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 2897
9676f5ad
JD
2898 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
2899 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 2900 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 2901 format. Remove unused variable cons.
5b698285
JD
2902
2903 * xselect.c: Include stdio,h.
2904
fc1d15f6
KH
29052004-02-05 Kenichi Handa <handa@m17n.org>
2906
ebaff4af
KH
2907 * fns.c (Fset_char_table_range): Fix previous change.
2908
fc1d15f6
KH
2909 * buffer.c (Fset_buffer_multibyte): Fix docstring.
2910
9676f5ad
JD
29112004-02-04 Luc Teirlinck <teirllm@auburn.edu>
2912
2913 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
2914
da75761f
SM
29152004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
2916
2917 * keymap.c (Vmouse_events): Rename from Vmenu_events.
2918 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
2919
13c5d120
KH
29202004-02-04 Kenichi Handa <handa@m17n.org>
2921
2922 * fns.c (Fset_char_table_range): Handle charsets ascii,
2923 eight-bit-control, and eight-bit-graphic correctly.
2924
2883d842
JR
29252004-02-03 Jason Rumney <jasonr@gnu.org>
2926
2927 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
2928
2929 * w32fns.c (x_to_w32_font): Likewise.
2930
69eff41f
JD
29312004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2932
2933 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
2934 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
2935
2936 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
2937 ClientMessages.
2938
2939 * xselect.c: Include termhooks.h and X11/Xproto.h
2940 (x_check_property_data, x_fill_property_data)
2941 (x_property_data_to_lisp, mouse_position_for_drop)
2942 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 2943 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
2944 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
2945
da75761f 2946 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
2947 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
2948 OUTER_P.
2949 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
2950 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
2951 if vector_ret_p is true.
2952 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 2953
a6eeaa81 29542004-02-02 Eli Zaretskii <eliz@gnu.org>
dcdbbb5d
EZ
2955
2956 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
2957 basename of FILE relative to it, not FILE itself.
2958
09721b31
KH
29592004-02-02 Kenichi Handa <handa@m17n.org>
2960
2961 * coding.c (coding_restore_composition): Check invalid
2962 composition data more rigidly.
2963
eb996101
LT
29642004-01-30 Luc Teirlinck <teirllm@auburn.edu>
2965
2966 * fileio.c (Fread_file_name_internal): Correctly handle the case
2967 where insert-default-directory is nil.
2968 (Fread_file_name): Always return an empty string if the user exits
2969 with an empty minibuffer. Adapt the docstring accordingly.
2970 (syms_of_fileio): Adapt the docstring of insert-default-directory
2971 to the change in Fread_file_name.
2972
a6eeaa81 29732004-01-29 Eli Zaretskii <eliz@gnu.org>
a0367d42
EZ
2974
2975 * alloca.c [!alloca]: Fix the prototype for xfree.
2976
13f52ed8
KH
29772004-01-29 Kenichi Handa <handa@m17n.org>
2978
2979 * fns.c (string_char_to_byte): Optimize for ASCII only string.
2980 (string_byte_to_char): Likewise.
2981
d57625a0
JR
29822004-01-28 Peter Runestig <peter@runestig.com>
2983
2984 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
2985
a64387ee 29862004-01-27 Steven Tamm <steventamm@mac.com>
911c78b4
ST
2987
2988 * unexmacosx.c (unexec_copy): Do not copy more than was
2989 requested to prevent overwriting during unexec.
2990
eb37b8fd
JD
29912004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2992
ce38070a
JD
2993 * process.c (sigchld_handler): Add comment about not calling malloc.
2994
eb37b8fd
JD
2995 * process.h: Add extern to synch_process_termsig.
2996
a64387ee 29972004-01-27 Steven Tamm <steventamm@mac.com>
21a3e657 2998
da75761f
SM
2999 * macterm.c (make_mac_frame, make_mac_terminal_frame):
3000 Move setting of scroll bars from make_mac_frame to
3001 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 3002
d62a265d
RS
30032004-01-26 Richard M. Stallman <rms@gnu.org>
3004
3005 * search.c (Freplace_match): Handle nonexistent
3006 back-references properly.
3007
30082004-01-03 Richard M. Stallman <rms@gnu.org>
3009
3010 * window.c (decode_any_window): New function.
3011 (Fwindow_height, Fwindow_width, Fwindow_edges)
3012 (Fwindow_pixel_edges, Fwindow_inside_edges)
3013 (Fwindow_inside_pixel_edges): Use decode_any_window.
3014
ff236419
JD
30152004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3016
3017 * process.h: synch_process_termsig new variable.
3018
3019 * callproc.c: Define synch_process_termsig.
3020 (Fcall_process): Initiate synch_process_termsig to zero and
3021 check if non-zero and get signal name after subprocess has ended.
3022
3023 * process.c (sigchld_handler): Set synch_process_termsig
3024 if terminated by a signal. synch_process_death setting removed.
3025
3026 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
3027
41b867ea
AS
30282004-01-26 Andreas Schwab <schwab@suse.de>
3029
3030 * print.c (print_preprocess): Declare size as EMACS_INT to not
3031 lose bits.
3032 (print_object): Likewise.
3033 * alloc.c (Fpurecopy): Likewise.
3034
a08084ff
LT
30352004-01-25 Luc Teirlinck <teirllm@auburn.edu>
3036
3037 * window.c (Fwindow_minibuffer_p): Doc fix.
3038
b19ac475
JY
30392004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
3040
3041 * editfns.c (Fformat): Make both passes accept the same set of flags.
3042
fe905025
KH
30432004-01-23 Kenichi Handa <handa@m17n.org>
3044
3045 * fns.c (Fmd5): If OBJECT is a buffer different from the current
3046 one, set buffer to OBJECT temporarily.
3047
438fc6c0
SM
30482004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
3049
455316e2
SM
3050 * keyboard.c (kbd_buffer_gcpro): Remove.
3051 (kbd_buffer_store_event, clear_event, Fdiscard_input)
3052 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
3053 Don't initialize and/or maintain the variable any more. It was made
3054 redundant by my commit of 2003-06-15.
3055
438fc6c0
SM
3056 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
3057
5335a4ee
JD
30582004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3059
3060 * lisp.h: Add undef DECL_ALIGN.
3061
dcdaeebc
SM
30622004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
3063
3064 * process.c (wait_reading_process_input) [SYNC_INPUT]:
3065 Check interrupt_input_pending explicitly.
3066
3067 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
3068
3069 * keyboard.c (handle_async_input): New fun,
3070 extracted from input_available_signal.
3071 (input_available_signal, reinvoke_input_signal): Use it.
3072
9076a823
SM
30732004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
3074
d7107586
SM
3075 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
3076
3077 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
3078 manipulation macros for when tags are in the lower bits.
3079 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
3080 (DECL_ALIGN): New macro.
3081 (DEFUN): Use it.
3082
3083 * lisp.h [ENABLE_CHECKING]: Don't force union type.
3084
3085 * s/darwin.h (__attribute__): Remove outdated workaround.
3086
3087 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
3088
3089 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
3090 Don't check range of malloc address.
3091 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
3092
9076a823
SM
3093 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
3094
3095 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
3096
ba029065
KH
30972004-01-19 Kenichi Handa <handa@m17n.org>
3098
3099 * fontset.c (fontset_font_pattern): Fix previous change.
3100
7af0e8d7
MB
31012004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
3102
3103 * xdisp.c (Voverflow_newline_into_fringe)
3104 (move_it_in_display_line_to, redisplay_internal)
3105 (update_window_fringes, redisplay_window, display_line, window):
3106 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
3107 that it compiles without a window-system.
3108 * dispnew.c (direct_output_for_insert, update_window): Likewise.
3109
77a9cf69
KS
31102004-01-16 Kim F. Storm <storm@cua.dk>
3111
3112 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
3113
a64387ee 3114 * buffer.c (init_buffer_once): Set buffer_defaults and
77a9cf69
KS
3115 buffer_local_flags for indicate_buffer_boundaries.
3116 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
3117 default- variable for it.
3118
3119 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
3120 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 3121 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
3122 overflowing newlines into right fringe.
3123 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
3124 and indicate_bottom_line_p for buffer boundaries and scrolling.
3125 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
3126 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
3127 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
3128 and HOLLOW_SQUARE_BITMAP.
3129 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
3130 Add prototypes.
3131
3132 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
3133 instead of related indicator fields.
3134 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
3135 (direct_output_for_insert): Handle exact width lines like
3136 contined lines. Call update_window_fringes.
3137 (update_window): Call update_window_fringes.
3138 (scrolling_window): Don't skip desired rows with changed bitmaps.
3139 Check if fringe bitmaps changes when assigning scrolled rows.
3140
3141 * xdisp.c (Voverflow_newline_into_fringe): New variable.
3142 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
3143 (move_it_in_display_line_to): Overflow newline into fringe for
3144 rows that are exactly as wide as the window.
3145 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
3146 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
3147 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
3148 (fringe_bitmaps): Add new bitmaps.
3149 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
3150 Select proper bitmap for cursor in fringe when appropriate.
3151 Handle alignment of bitmap to top or bottom of row.
3152 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
3153 done by update_window_fringes.
3154 (update_window_fringes, draw_window_fringes): New functions.
3155 (redisplay_internal): Call update_window_fringes in case only
3156 cursor row is updated.
3157 (redisplay_window): Call update_window_fringes.
3158 Explicitly call draw_window_fringes if redisplay was done using
3159 the current matrix or the overlay arrow is in the window.
3160 (try_window_reusing_current_matrix): Mark scrolled rows for
3161 fringe update (to update buffer-boundaries / scrolling icons).
3162 (find_last_unchanged_at_beg_row): Handle exact width lines line
3163 continued lines.
3164 (display_line): Overflow newline into fringe for rows that are
3165 exactly as wide as the window. Don't append space for newline
d7107586 3166 in this case.
77a9cf69
KS
3167 (notice_overwritten_cursor): Explicitly clear cursor bitmap
3168 in fringe as if it had been overwritten.
3169 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 3170 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
3171 void-text-area-pointer as user options.
3172 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 3173
77a9cf69
KS
3174 * xterm.c (x_update_window_end): Call draw_window_fringes.
3175 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
3176 in row instead of actually drawing fringe bitmaps.
3177 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
3178 (x_draw_window_cursor): Draw cursor in fringe.
3179
3180 * w32term.c (x_update_window_end): Call draw_window_fringes.
3181 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
3182 in row instead of actually drawing fringe bitmaps.
3183 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
3184 (w32_draw_window_cursor): Draw cursor in fringe.
3185
3186 * macterm.c (x_update_window_end): Call draw_window_fringes.
3187 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
3188 in row instead of actually drawing fringe bitmaps.
3189 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
3190 (mac_draw_window_cursor): Draw cursor in fringe.
3191
a633a954
JD
31922004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3193
3194 * xterm.c (handle_one_xevent): Don't handle characters that are part
3195 of an old style (XLookupString) compose sequence.
3196
80460525
KH
31972004-01-15 Kenichi Handa <handa@m17n.org>
3198
3199 * search.c (Freplace_match): Use make_multibyte_string or
3200 make_unibyte_string according to the buffer multibyteness.
3201
7fc34f85
SM
32022004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
3203
3204 * alloc.c (struct interval_block, struct string_block)
3205 (struct symbol_block, struct marker_block, live_string_p)
3206 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
3207 Better preserve alignment for objects in blocks.
3208 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
3209
3210 * lread.c (defvar_per_buffer): Remove dead declaration.
3211
3212 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
3213 space size.
3214
66070bd1
JD
32152004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3216
3217 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
3218 if a key press should pop down. Only pop down if a key is pressed
3219 outside the menu/dialog.
3220 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
3221 popup_get_selection.
3222 (create_and_show_dialog): Pass 1 for down_on_keypress to
3223 popup_get_selection.
3224
de7515d6
JD
32252004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3226
3227 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
3228 BLOCK/UNBLOCK_INPUT.
3229
160b1b50
JD
32302004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3231
3232 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
3233 specified.
3234
3a9f36e6
KH
32352004-01-08 Kenichi Handa <handa@m17n.org>
3236
3237 * editfns.c (Fformat): Fix '&' to '&&'.
3238
3803eb32
AS
32392004-01-08 Andreas Schwab <schwab@suse.de>
3240
3241 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
3242 size if PSEUDOVECTOR_FLAG is set.
3243
9da88f37
KH
32442004-01-07 Kenichi Handa <handa@m17n.org>
3245
74ac5074
KH
3246 * charset.c (Fdeclare_equiv_charset): Fix docstring.
3247
9da88f37
KH
3248 * fontset.c (fontset_ref_via_base): Fix previous change.
3249
05faee07
KS
32502004-01-07 Kim F. Storm <storm@cua.dk>
3251
3252 * process.c (read_process_output): Only activate adaptive
3253 buffering if we read less than 256 bytes at a time.
3254
634910c8
KS
32552004-01-06 Kim F. Storm <storm@cua.dk>
3256
3257 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
3258 object and image object. Return glyph width and height.
3259 (mode_line_string, marginal_area_string): Ditto.
3260
3261 * dispextern.h (buffer_posn_from_coords, mode_line_string)
3262 (marginal_area_string): Fix prototypes.
3263
3264 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
f63fd14e 3265 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
634910c8
KS
3266 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
3267
3268 * keyboard.c (make_lispy_position): Use modified mode_line_string,
3269 buffer_posn_from_coords, and marginal_area_string functions to
3270 include both string object and image object in the lispy position.
3271 Also add actual glyph width and height to position.
3272 (read_key_sequence): Use real buffer position from mouse
3273 event to find keymap property even when click is in marginal area.
3274
3275 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
3276 mode_line_string and marginal_area_string functions to handle
3277 both string object and image object properties.
d7107586 3278
57951c2e
AS
32792004-01-06 Andreas Schwab <schwab@suse.de>
3280
3281 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
3282 character.
3283
181e6a61
AS
32842004-01-02 Andreas Schwab <schwab@suse.de>
3285
d7107586
SM
3286 * macterm.c (emacs_options, x_initialized, same_x_server):
3287 Remove unused (and duplicated) definitions.
181e6a61 3288
31e0fbdd
KS
32892004-01-02 Kim F. Storm <storm@cua.dk>
3290
3291 * process.h (struct Lisp_Process): New members for adaptive read
3292 buffering: adaptive_read_buffering, read_output_delay, and
3293 read_output_skip.
3294
3295 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
3296 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
3297 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
3298 (process_output_delay_count, process_output_skip): New vars.
3299 (Vprocess_adaptive_read_buffering): New variable.
3300 (make_process): Initialize adaptive read buffering members.
3301 (Fstart_process): Set adaptive_read_buffering member.
3302 (deactivate_process): Cleanup adaptive read buffering.
3303 (wait_reading_process_input): Temporarily omit delayed
3304 subprocesses from the set of file descriptors to read from;
3305 adjust the select timeout if we skipped any subprocesses.
3306 (read_process_output): Increase adaptive read buffering delay if
3307 we read less than a full buffer; reduce delay when we read a
3308 full buffer.
3309 (send_process): Simplify using local Lisp_Process var.
3310 Reset adaptive read buffering delay after write.
3311 (init_process): Initialize process_output_delay_count and
3312 process_output_skip.
3313 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
3314
68c6a789
JR
33152004-01-01 Jason Rumney <jasonr@gnu.org>
3316
d7107586 3317 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 3318
3f70fe82
LT
33192003-12-30 Luc Teirlinck <teirllm@auburn.edu>
3320
3321 * print.c (Ferror_message_string): Add hyperlink in the docstring
3322 to the definition of `signal' in the Elisp manual.
3323 * eval.c (Fsignal): Ditto.
3324
a64387ee 33252003-12-29 James Clark <jjc@jclark.com> (tiny change)
c2be49ed
EZ
3326
3327 * fns.c (internal_equal): Return t for two NaN arguments.
3328
7abd90ea
RS
33292003-12-29 Richard M. Stallman <rms@gnu.org>
3330
3331 * data.c (store_symval_forwarding): Handle setting
3332 default-fill-column, etc., by changing the value in
3333 buffers that use the default.
3334
3335 * minibuf.c (Fset_minibuffer_window): Doc fix.
3336
3337 * fileio.c (choose_write_coding_system): Ignore auto_saving
3338 if using the visited file for auto saves.
3339 (Fwrite_region): Don't update SAVE_MODIFF
3340 if auto-saving in visited file.
3341
3e7cfcdc
KH
33422003-12-29 Kenichi Handa <handa@m17n.org>
3343
3344 * dispextern.h (face_font_available_p): Extern it.
3345
3346 * fontset.c (Voverriding_fontspec_alist): New variable.
3347 (lookup_overriding_fontspec): New function.
d7107586 3348 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
3349 (fontset_font_pattern): Likewise.
3350 (regulalize_fontname): New function.
3351 (Fset_fontset_font): Call regulalize_fontname.
3352 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
3353 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
3354 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
3355
3356 * xfaces.c (face_font_available_p): New function.
3357
7abd90ea
RS
33582003-12-28 Richard M. Stallman <rms@gnu.org>
3359
3360 * buffer.c (Fother_buffer): Don't crash if BUF is nil
3361 or if its name is nil.
3362
3363 * buffer.c (Fkill_buffer): Don't delete auto-save file
3364 if it's the same as the visited file.
3365
de1d1a40
LT
33662003-12-28 Luc Teirlinck <teirllm@auburn.edu>
3367
3368 * coding.c (Fcheck_coding_system): Doc fix.
3369
204fb75e
KS
33702003-12-28 Kim F. Storm <storm@cua.dk>
3371
3372 * Makefile.in (eval.o): Depend on dispextern.h.
3373
3374 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
3375 image glyph using image's ascent.
3376 (mode_line_string): Return image glyph as object clicked on.
3377 Adjust y0 for image glyph using image's ascent.
3378
3379 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
3380 (struct glyph): New members, ascent and descent. Used to save
3381 this glyph's ascent and descent, instead of having.
3382 (struct glyph): Declare member face_id using FACE_ID_BITS.
3383 (find_hot_spot): Add prototype.
3384
3385 * keyboard.c (Qimage): Remove extern (now in lisp.h).
3386 (QCmap): Declare extern.
3387 (make_lispy_position): When position is inside image hot-spot,
3388 use hot-spot element's id as posn element.
3389
3390 * lisp.h (IMAGEP): New macro to test for image object type.
3391 (Qimage): Declare extern.
3392
3393 * macfns.c (Qimage): Remove extern (now in lisp.h).
3394 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3395
3396 * macterm.c (Qface, Qmouse_face): Remove unused externs.
3397
3398 * w32fns.c (Qimage): Remove extern (now in lisp.h).
3399 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3400
3401 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
3402
3403 * w32term.c (Qface, Qmouse_face): Remove unused externs.
3404
3405 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
3406 pointer types.
3407 (Qrelative_width, Qalign_to): Remove unused variables.
3408 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
3409 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
3410 image maps.
d7107586 3411 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
3412 new dx and dy args.
3413 Remove buffer_only_p arg (always 0). Simplify code accordingly.
3414 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
3415 than row's ascent and height, to get sensible height on tall rows.
3416 (build_desired_tool_bar_string): Remove Qimage extern.
3417 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
3418 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
3419 image glyph is alone on the last line.
3420 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 3421 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 3422 (on_hot_spot_p): New function to check if position is inside an
d7107586 3423 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
3424 (find_hot_spot): New function to search for image hot-spot.
3425 (Flookup_image_map): New defun to search for image hot-spot.
3426 (define_frame_cursor1): New aux function to determine frame pointer.
3427 (note_mode_line_or_margin_highlight, note_mouse_highlight):
3428 Handle `pointer' text property and :pointer image property to
3429 control frame pointer shape. Detect image hot-spots for pointer
3430 and help_echo properties. Use define_frame_cursor1.
3431 (note_mouse_highlight): Use Vvoid_text_area_pointer.
f63fd14e 3432 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
204fb75e
KS
3433 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
3434
3435 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
3436
3437 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
3438 (Qimage): Remove extern (now in lisp.h).
3439 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3440
3441 * xmenu.c (show_help_event): Remove unused code.
3442
3443 * xterm.c (Qface, Qmouse_face): Remove unused externs.
3444 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
3445 row's ascent and descent, to get a sensible height on tall rows.
3446
fc052137
LT
34472003-12-25 Luc Teirlinck <teirllm@auburn.edu>
3448
3449 * minibuf.c (Fcompleting_read): Undo previous change.
3450
a64387ee 34512003-12-25 Lars Hansen <larsh@math.ku.dk>
b9148500
LH
3452
3453 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
3454 Arguments GCPRO'ed in call to file name handler.
3455
56ffd194
TTN
34562003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
3457
3458 * termcap.c (tgetst1): Scan for "%pN"; if all
3459 N are continuous in [1,9], remove all "%pN".
3460
5202d23d
JD
34612003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3462
f26fab36
JD
3463 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
3464
5202d23d
JD
3465 * xfaces.c (lface_fully_specified_p): Take into account that
3466 MAC OS always have unspecified stipple.
3467
8babaa59
TTN
34682003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
3469
3470 * tparam.c (tparam1): Add handling for `%pN', which
3471 means use param N for the next substitution.
3472
2d176448
TTN
34732003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
3474
3475 * xfaces.c (Fcolor_gray_p): Fix omission bug:
3476 In case `frame' is nil, consult the selected frame.
3477 (Fcolor_supported_p): Likewise.
3478
adb0708c
LT
34792003-12-23 Luc Teirlinck <teirllm@auburn.edu>
3480
000eeb15
LT
3481 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
3482 Doc fixes.
0dc72b11
LT
3483
3484 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
3485 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
3486 (Fread_from_minibuffer): Delete code moved into read_minibuf.
3487 Doc fix.
3488 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
3489 read_minibuf.
3490 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 3491 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 3492
2e4d132b
KH
34932003-12-03 Kenichi Handa <handa@m17n.org>
3494
3495 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
3496 encoding sequence.
3497
3999c705
KH
34982003-12-01 Kenichi Handa <handa@m17n.org>
3499
3500 * composite.c (syms_of_composite): Don't make the compostion hash
3501 table week.
3502
d344ecbb
LT
35032003-11-30 Luc Teirlinck <teirllm@auburn.edu>
3504
3505 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
3506 * textprop.c (Fget_char_property_and_overlay): New function.
3507 (syms_of_textprop): Defsubr it.
3508
03d6484e
JD
35092003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3510
019b1f0e
JD
3511 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
3512 to compile on terminal configuration.
3513
03d6484e
JD
3514 * fileio.c (Fread_file_name): Check use_file_dialog also before
3515 calling Fx_file_dialog.
3516
3517 * fns.c: use_file_dialog: New variable.
3518 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
3519
442d3fd0
KS
35202003-11-29 Kim F. Storm <storm@cua.dk>
3521
3522 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
3523 (syms_of_msdos): Don't intern and staticpro them.
3524
0f6a07a8
KS
35252003-11-27 Kim F. Storm <storm@cua.dk>
3526
3527 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
3528 coordinates relative to glyph at posn. If glyph is an image,
3529 return that as object at posn. Callers changed.
3530 (mode_line_string, marginal_area_string): Calculate and return
3531 pixel coordinates relative to glyph. Callers changed.
3532
3533 * dispextern.h (buffer_posn_from_coords, mode_line_string)
3534 (marginal_area_string): Fix prototypes.
3535 (window_box_left_offset, window_box_right_offset): Add prototypes.
3536
3537 * frame.h (get_specified_cursor_type, get_window_cursor_type):
3538 Remove prototypes.
3539
3540 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
3541
3542 * keyboard.c (make_lispy_position): Add x and y coordinates
3543 relative to the current glyph as 7th element of position.
3544 If glyph is an image, return it in the object element.
3545 (read_key_sequence): Skip checks for keymap property in cases
3546 where POSN_STRING is not a string (e.g. an image).
3547
3548 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
3549 (Vshow_text_cursor_in_void): New variable.
3550 (glyph_to_pixel_coords): Don't use negative hpos.
3551 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
3552 (append_stretch_glyph): Change ascent arg to be actual value
f63fd14e 3553 in pixels rather than ratio to height. Callers changed.
0f6a07a8
KS
3554 (calc_pixel_width_or_height): New aux function, implementing
3555 pixel based artihmetic for glyph widths and heights.
3556 (produce_stretch_glyph): Use calc_pixel_width_or_height for
3557 :width, :height, :align-to, and :ascent, thus allowing these to
3558 be specified in pixels as well as multiples of characters.
3559 Don't produce stretch glyphs with zero width or height.
3560 (get_specified_cursor_type): Declare static.
3561 (get_window_cursor_type): Declare static. Add glyph arg to be
3562 able to know when cursor is on an image; always substitute
3563 hollow-box cursor for filled-box cursor on images, to avoid
3564 negative images and flicker when blinking the cursor.
3565 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
3566 (note_mode_line_or_margin_highlight): Use non-text cursor rather
3567 than vertical scroll-bar cursor in display margins.
3568 (note_mouse_highlight): Use non-text cursor rather than text
3569 cursor in fringes and over images in the text area.
3570 Use non-text cursor when mouse pointer is outside editable text,
3571 i.e. in the void after end-of-line or end-of-buffer; this was
3572 already done for W32, but is now standard for all systems --
3573 user can toggle show-text-cursor-in-void to get old behaviour.
3574 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
3575 Vdisplay_pixels_per_inch.
3576
00498bfc
AS
35772003-11-25 Andreas Schwab <schwab@suse.de>
3578
3579 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
3580 EMACS_INT to not lose bits.
3581 (Ffillarray): Don't set bits beyond the size of a bool vector.
3582
edaa824d
KS
35832003-11-25 Kim F. Storm <storm@cua.dk>
3584
3585 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
3586 define this defun on systems that cannot use stderr as lvalue.
3587
74d6f539
GM
35882003-11-24 Gerd Moellmann <gerd@gnu.org>
3589
3590 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
3591 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
3592 ld's default is incompatible with unexec.
3593
6a1ff3ba
KS
35942003-11-23 Kim F. Storm <storm@cua.dk>
3595
63dc7c6b
KS
3596 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
3597 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
3598 (Fforce_window_update): New defun.
3599 (syms_of_window): Defsubr it.
3600 (Fset_window_margins, Fset_window_fringes): Doc fix.
3601
6a1ff3ba
KS
3602 * print.c (Fredirect_debugging_output): New defun.
3603 (syms_of_print): Defsubr it.
3604
aef109b7
LT
36052003-11-22 Luc Teirlinck <teirllm@auburn.edu>
3606
3607 * fns.c (Fset_char_table_parent): Doc fix.
3608
6a1ff3ba 36092003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
3610
3611 * dispnew.c (buffer_posn_from_coords): Return actual row/column
3612 for glyph clicked on, rather than (unused) pixel positions.
3613 (mode_line_string, marginal_area_string): Change X and Y args to
3614 pointers for returning actual row/column for glyph clicked on.
3615 Simplify and optimize loops.
3616
aef109b7
LT
3617 * dispextern.h (mode_line_string, marginal_area_string):
3618 Update prototypes.
63ccbe21
KS
3619
3620 * keyboard.c (make_lispy_position): New function for generating
3621 mouse click positions from frame and pixel coordinates.
3622 Enhanced to return buffer position and actual row/column for
3623 events outside the text area using updated mode_line_string and
3624 marginal_area_string functions.
3625 Return left-fringe and right-fringe clicks as such, rather than
3626 clicks in text area.
3627 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
3628 pixel_to_glyph_coords, as we never use the results.
3629 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
3630 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
3631 Eliminate unused code in WHEEL_EVENT handling.
3632 (make_lispy_movement): Use make_lispy_position.
3633
3634 * window.c (coordinates_in_window): Remove redundant tests.
3635 Fix returned X pixel value for left-margin.
3636
3637 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
3638 mode_line_string and marginal_area_string parameters.
3639
a64387ee 36402003-11-22 Lars Hansen <larsh@math.ku.dk>
930a9995 3641
d7107586
SM
3642 * w32.c (struct the_group, getgrgid): Add.
3643 * mac.c (struct my_group, getgrgid): Add.
aef109b7 3644
3dbf3426
LT
36452003-11-21 Luc Teirlinck <teirllm@auburn.edu>
3646
3647 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
3648
cae8ddbb 36492003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 3650
d7107586
SM
3651 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
3652 include in call to file name handler. Optionally translate numeric
3653 UID and GID to strings. Update docstring.
3654 (directory_files_internal): Add parameter ID-FORMAT.
3655 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
3656 include in call to file name handler and call to
3657 directory_files_internal. Update Docstring.
3658 (Fdirectory_files): Add dummy parameter in call to
3659 directory_files_internal.
3660 * lisp.h (Qinteger): Add.
3661 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
3662 (Ffile_attributes): Add parameter.
3663 * data.c (Qinteger): Export.
cae8ddbb 3664
2550b848
LT
36652003-11-21 Luc Teirlinck <teirllm@auburn.edu>
3666
3dbf3426 3667 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 3668
88380018
KS
36692003-11-19 Kim F. Storm <storm@cua.dk>
3670
3671 * xdisp.c (init_iterator): Initialize it->start to position
3672 before reseating (in case start position is invisible).
3673 (init_to_row_start): Set it->start to row-start.
3674 (redisplay_window): Accept optional_new_start if start position
3675 is invisible (in which case IT_CHARPOS overshoots PT).
3676 (display_line): Setup row->start from it->start (rather than
3677 it->current which is wrong if first char on line is invisible).
3678 When done, reseat it->start to it->current (= start of next row).
3679 (expose_area): Fix exposure of text area when first char (e.g. TAB)
3680 is only partially visible.
3681
3682 * dispextern.h (struct it): New member start.
3683
854c1a59
SM
36842003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
3685
455316e2
SM
3686 * alloc.c (make_float, Fcons): Clear the markbit at init time.
3687 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
3688 of block_index outside of the macro call.
3689 (Fgarbage_collect): Remove null code.
3690
3691 * m/amdx86-64.h: Don't redefine XPNTR.
3692
854c1a59
SM
3693 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
3694 of VALMASK.
3695
3696 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
3697 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
3698 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
3699
3700 * lisp.h (VALMASK): Only define for non-union type.
3701 (MARKBIT): Remove.
3702 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
3703 (XTYPE): Define unconditionally.
3704 (XSETTYPE): Remove one more remnant.
3705 (EQ): Define differently for the union and non-union cases.
3706 (INTMASK): New bit mask.
3707 (struct Lisp_Marker): Move down to prepare for upcoming patch.
3708 (GC_EQ): Delegate to EQ.
3709
3710 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
3711
a0c6ef2d
JD
37122003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3713
3714 * xterm.c (x_window_to_scroll_bar): Move check of display to
3715 where window_id is compared.
3716
859492c4
KS
37172003-11-17 Kim F. Storm <storm@cua.dk>
3718
3719 * dispextern.h (struct it): New member first_vpos.
3720
3721 * xdisp.c (start_display): Set it->first_vpos.
3722 (try_window_id): Use first_vpos to start display in first _text_
3723 line if no reusable lines at start of window with header line.
3724
810f2256
JD
37252003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3726
7c402969 3727 * w32fns.c (XPutPixel):
854c1a59
SM
3728 * w32bdf.c (w32_init_bdf_font):
3729 * sunfns.c (sel_read):
3730 * process.c (Fmake_network_process):
3731 * frame.c (store_frame_param):
3732 * fontset.c (Fset_fontset_font):
3733 * emacs.c (shut_down_emacs):
a64387ee 3734 * ccl.c (ccl_driver): Remove period at end of error message.
7c402969 3735
a32e9bfd
JD
3736 * config.in: Regenerate.
3737
810f2256
JD
3738 * xfns.c (x_window_to_frame, x_any_window_to_frame)
3739 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
3740 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
3741 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
3742 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
3743
3744 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
3745
3746 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
3747 (XTmouse_position, handle_one_xevent): Pass Display* to
3748 x_window_to_scroll_bar.
3749 (x_window_to_scroll_bar): Take a Display* argument.
3750 Check that display for frame is equal to Display* argument.
854c1a59 3751 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
3752 x_display_info_for_display instead. Use Display in xev instead
3753 of GDK_DISPLAY.
3754 (x_dispatch_event): Call x_display_info_for_display.
f63fd14e 3755 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
810f2256
JD
3756 (x_connection_closed): Call xg_display_close for GTK.
3757 (x_term_init): Call xg_display_open for additional displays.
3758 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
3759 for GTK.
3760
3761 * xmenu.c (single_menu_item, mouse_position_for_popup)
3762 (x_activate_menubar): Formatting adjustments.
3763
3764 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
3765 adjustments.
3766
3767 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
3768 (xg_display_close, xg_create_default_cursor)
3769 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
3770 handling.
854c1a59
SM
3771 (xg_left_ptr_cursor): Remove.
3772 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
3773 cursor here.
3774 (xg_win_to_widget): Take Display* argument, call
3775 gdk_xid_table_lookup_for_display.
3776 (xg_create_frame_widgets, xg_get_file_name, create_menus)
3777 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
3778 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
3779 in FRAME_X_DISPLAY_INFO.
3780 (xg_get_scroll_id_for_window): Take Display* argument.
3781 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 3782 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256
JD
3783
3784 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
3785 Display* argument also. Declare xg_display_open,
3786 xg_display_close, xg_create_default_cursor.
3787
0b03cc78
JD
37882003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3789
3790 * xterm.c (x_detect_focus_change): Do not change focus frame for
3791 Enter/LeaveNotify if the current focus frame has explicit focus.
3792
77e688fa
KS
37932003-11-14 Kim F. Storm <storm@cua.dk>
3794
3795 * dispnew.c (update_text_area): Fix redisplay error when hscroll
3796 is active and first glyph is only partially visible.
854c1a59 3797
dd429b03
KH
37982003-11-13 Kenichi Handa <handa@m17n.org>
3799
3800 * xdisp.c (select_frame_for_redisplay): New function.
3801 (redisplay_internal): Record also selected_frame for
3802 unwind_redisplay. Call select_frame_for_redisplay before
3803 redrawing each frame.
3804 (unwind_redisplay): Argument changed to a cons.
3805
6d9266f4
LT
38062003-11-12 Luc Teirlinck <teirllm@auburn.edu>
3807
3808 * fns.c (Fstring_to_multibyte): Doc fix.
3809
80060eb3
KH
38102003-11-11 Kenichi Handa <handa@m17n.org>
3811
3812 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
3813
74305183
JD
38142003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3815
3816 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
3817 program specified positions.
3818
cfda993e
JD
38192003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3820
3821 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
3822
df211069
KH
38232003-11-08 Kenichi Handa <handa@m17n.org>
3824
3825 * Makefile.in (lisp): Add kannada.el.
3826 (shortlisp): Likewise.
3827
4307d534
KH
38282003-11-07 Kenichi Handa <handa@m17n.org>
3829
854c1a59
SM
3830 * coding.c (coding_allocate_composition_data):
3831 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
3832 (coding_restore_composition): Detect invalid composition data.
3833 Give Fstring and Fvector a Lispy integer, not C int.
3834
854c1a59
SM
38352003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
3836
3837 * floatfns.c (Flogb): Don't use VALMASK.
3838
3839 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
3840 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
3841
3842 * lisp.h (XINT): Move the cast to clarify what is going on.
3843 (GCTYPEMASK, XSETTYPE): Remove.
3844 (XGCTYPE): Make it an alias of XTYPE.
3845
d04103a1
JD
38462003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3847
3848 * xterm.c (x_term_init): Fix formatting.
3849
da18b5ac
JD
38502003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3851
3852 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
3853 and xg_did_tearoff.
3854
3855 * gtkutil.c: Remove variable xg_did_tearoff.
3856 (xg_have_tear_offs): New function.
3857 (tearoff_remove): Just decrease xg_detached_menus.
3858 (tearoff_activate): Increase xg_detached_menus and call
3859 tearoff_remove when tearoff is removed.
854c1a59 3860 (xg_keep_popup): Remove function.
da18b5ac
JD
3861 (create_menus): Give add_tearoff_p as argument to recursive
3862 call to create_menus.
3863 (xg_create_widget): Use variables instead of multiple
3864 strcmp. Tell create_menus to create tear off only for
3865 menu bar menus.
3866 (xg_update_menubar): Change title for a detached menu also.
3867 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
3868 of deep_p.
3869 (xg_initialize): Initialize xg_detached_menus, remove
3870 initialization of xg_did_tearoff.
3871
3872 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
3873 xg_have_tear_offs returns non-zero.
3874 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
3875 call to xg_keep_popup.
3876
64d4923e
AC
38772003-11-01 Andrew Choi <akochoi@shaw.ca>
3878
3879 * macterm.c (XTread_socket): Handle menubar selection and grow
3880 window only for mouseDown events.
854c1a59 3881
6cc8bc07
JD
38822003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3883
3884 * xterm.c (x_term_init): For GTK part, increase x_initialized
3885 to check for more than one display. Use error instead of return 0.
3886
043131c4
AC
38872003-10-31 Andrew Choi <akochoi@shaw.ca>
3888
854c1a59 3889 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
3890 (copy_dysymtab): Call it.
3891
bdda99a1
LT
38922003-10-31 Luc Teirlinck <teirllm@auburn.edu>
3893
3894 * eval.c (Fdefvaralias): Doc fix.
3895
800f42ff 38962003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
3897
3898 * data.c (Fsetplist): Doc fix.
3899
ef35b389
LK
39002003-10-14 Lute Kamstra <lute@gnu.org>
3901
3902 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 3903
ef35b389 39042003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 3905
07107abc
KS
3906 * window.c (Fset_window_margins): Simplify arg checking.
3907
f7005886
RS
39082003-10-13 Richard M. Stallman <rms@gnu.org>
3909
3910 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
3911 (print_partial_compiled_pattern): Replace assert with a printout.
3912 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
3913
3914 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
3915
3916 * window.c (Fset_window_margins): Allow only integers as args.
3917 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
3918 Doc fixes.
3919
9c0c2af5
LK
39202003-10-13 Lute Kamstra <lute@gnu.org>
3921
3922 * window.c (Fset_window_fringes): Elaborate docstring.
3923
3f080e4e
AC
39242003-10-12 Andrew Choi <akochoi@shaw.ca>
3925
854c1a59 3926 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 3927
3f080e4e
AC
3928 * s/darwin.h (GC_MARK_STACK): Define.
3929
0aa513ed
JD
39302003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3931
3932 * window.c (shrink_windows): New function.
3933 (size_window): Call shrink_windows to calculate window sizes when
3934 shrinking frame with more than one window.
3935
6aa8858a
KS
39362003-10-12 Kim F. Storm <storm@cua.dk>
3937
3938 * xdisp.c (compute_fringe_widths): Doc fix.
3939
c2164d91
KH
39402003-10-08 Kenichi Handa <handa@m17n.org>
3941
854c1a59 3942 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 3943
f82ac129
KH
39442003-10-07 Kenichi Handa <handa@m17n.org>
3945
3946 * coding.c (Qcoding_system_define_form): New variable.
3947 (syms_of_coding): Intern and staticpro it.
3948 (Fcheck_coding_system): Try to autoload the definition of
3949 CODING-SYSTEM.
3950
9296c947
LT
39512003-10-05 Luc Teirlinck <teirllm@auburn.edu>
3952
3953 * fns.c (Frequire): Doc fix.
3954
c1f0671a
JD
39552003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3956
3d8c3826
JD
3957 * xfns.c (Fx_send_client_event): New function as a base for
3958 manipulating extended window manager hints.
6dc15d98 3959 (Fx_send_client_event): Remove unused variable s.
3d8c3826 3960
068ae0fd
JD
3961 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
3962 that function is removed.
3963
3964 * xterm.c (x_set_offset): Use move_offset_left/top instead of
3965 x/y_pixels_outer_diff.
3966 (x_check_expected_move): Calculate move_offset_left/top.
3967
3968 * xterm.h (struct x_output): New members: move_offset_top/left.
3969
854c1a59 3970 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
3971 call x_set_offset directly.
3972
3973 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
3974
96f09305
JD
3975 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
3976
3977 * xterm.c (x_delete_display): Free font names and font_encoder
3978 in dpyinfo->font_table.
3979
854c1a59
SM
3980 * xfns.c (Fx_close_connection): Only call XFreeFont here.
3981 Move xfree of font names to x_delete_display.
96f09305 3982
c1f0671a
JD
3983 * xterm.h (struct x_display_info): New member, wm_type.
3984 (struct x_output): New members, expected_top/left and
3985 check_expected_move.
3986
3987 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
3988 is received.
854c1a59
SM
3989 (handle_one_xevent): Rename x_check_expected_move from
3990 x_check_fullscreen_move.
c1f0671a
JD
3991 (x_set_offset): Only add WM decoration sizes to modified_top/left
3992 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 3993 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
3994 Removed fullscreen specific code. Use check_expected_move,
3995 expected_left/top instead. Also, set wm_type.
3996 (x_term_init): Initialize wm_type to unknown.
3997
3998 * frame.c (x_fullscreen_move): Remove addition of WM decoration
3999 sizes to move_x/y.
4000
be2fdba9
KH
40012003-10-03 Kenichi Handa <handa@m17n.org>
4002
4003 * macterm.c (x_load_font): Clear all members of FONTP before start
4004 filling them.
4005
40062003-10-02 Kenichi Handa <handa@m17n.org>
4007
4008 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
4009 before calling find_ccl_program_func. Call find_ccl_program_func
4010 only when fontp->font_encoder is not NULL.
4011
4012 * xterm.c (x_load_font): Clear all members of FONTP before start
4013 filling them.
4014
26a6e439
JPW
40152003-10-03 John Paul Wallington <jpw@gnu.org>
4016
4017 * keymap.c (map_keymap): Don't abort when binding is a vector.
4018
0d4c2dc2
JR
40192003-10-02 Jason Rumney <jasonr@gnu.org>
4020
854c1a59
SM
4021 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
4022 Sync dependencies with Makefile.in.
a63cf46f
JR
4023 (alloca.o): Remove.
4024
0d4c2dc2
JR
4025 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
4026 filling them.
4027
4028 * w32bdf.c (w32_load_bdf_font): Likewise.
4029
ab8f7d5c
RS
40302003-09-30 Richard M. Stallman <rms@gnu.org>
4031
4032 * term.c (set_tty_color_mode): Calculate current_mode_spec
4033 regardless of value of VAL.
4034
854c1a59 4035 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
4036 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
4037 Handle over_used when splitting UNDER.
4038
a64387ee 40392003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ab8f7d5c
RS
4040
4041 * regex.c (regex_compile): Free the stack when returning from function.
4042
3413f972
KH
40432003-09-28 Kenichi Handa <handa@m17n.org>
4044
4045 * fontset.c (Finternal_char_font): Change return value to
4046 cons (FONT-NAME . GLYPH-CODE).
4047
a6eeaa81 40482003-09-28 Eli Zaretskii <eliz@gnu.org>
40409f05
EZ
4049
4050 * term.c (tty_setup_colors): Treat any negative argument as -1.
4051
f98ddc99
KH
40522003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
4053
4054 * process.c (send_process): Delete unused temp_buf.
4055
66c8f1a8
DL
40562003-09-26 Dave Love <fx@gnu.org>
4057
4058 * xterm.c (x_bitmap_mask): Declare.
4059
ca716c26
DL
40602003-09-25 Dave Love <fx@gnu.org>
4061
4062 * Makefile.in (fns.o): Depend on md5.h.
4063
fbe57420
KS
40642003-09-25 Kim F. Storm <storm@cua.dk>
4065
4066 * window.c (set_window_buffer): Fix redisplay problems when
4067 switching between buffers with different display margin widths.
4068
ef6ae4ff
KS
40692003-09-23 Kim F. Storm <storm@cua.dk>
4070
4071 * process.c (set_socket_option): Fix :bindtodevice option.
4072 (Fset_network_process_option): Update process contact list when
4073 setting option succeeds.
4074 (Fmake_network_process): Doc fix.
4075
68e03c1c
DL
40762003-09-23 Dave Love <fx@gnu.org>
4077
7146d1c1 4078 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 4079
a6eeaa81 40802003-09-22 Eli Zaretskii <eliz@gnu.org>
2f809aae
EZ
4081
4082 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
4083 color mode is an integer number (it could be -1).
4084
8fe7d8c8
RS
40852003-09-22 Richard M. Stallman <rms@gnu.org>
4086
4087 * intervals.c (graft_intervals_into_buffer): Correct the main loop
4088 in the case where OVER is longer than UNDER.
4089
2f71b5ea
MY
40902003-09-22 Masatake YAMATO <jet@gyve.org>
4091
7146d1c1 4092 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 4093 `vertical_type'.
7146d1c1 4094
0c4da023
KS
40952003-09-21 Kim F. Storm <storm@cua.dk>
4096
4097 * frame.c (Vdefault_frame_scroll_bars): New variable.
4098 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
4099 (syms_of_frame): DEFVAR_LISP it, and initialize according to
4100 window-system default scroll bar position.
4101
b648413b
KS
4102 * window.c (Fwindow_scroll_bars): Doc fix.
4103
8f5b9e34
JD
41042003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4105
854c1a59 4106 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 4107
b0f23edf
RS
41082003-09-19 Richard M. Stallman <rms@gnu.org>
4109
4110 * atimer.h: Don't include lisp.h.
4111 (P_): Define it here (as well as elsewhere).
4112
4113 * print.c (Fprin1_to_string): Move the PRINTPREPARE
4114 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
4115
4116 * data.c (Fvariable_binding_locus): New function.
4117 (syms_of_data): defsubr it.
4118 (Flocal_variable_p): Delete duplicate call to indirect_variable.
4119
e1283999
DL
41202003-09-18 Dave Love <fx@gnu.org>
4121
ad5f3636
DL
4122 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
4123
e1283999
DL
4124 * process.c (Fnetwork_interface_info): Fix type error.
4125 (Fnetwork_interface_list): Doc fix.
4126 (read_process_output, read_process_output): Delete unused var.
4127
b8c7fd71
KS
41282003-09-17 Kim F. Storm <storm@cua.dk>
4129
4130 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
4131 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
4132 (Fnetwork_interface_info): Check that ifreq struct has required
4133 fields before accessing them; this requires that those fields are
4134 defined as macros, which may be too restrictive on some platforms,
4135 but it is better than failing on other platforms.
4136 (syms_of_process): Only defsubr above fns when included.
4137
11e0a411
DL
41382003-09-17 Dave Love <fx@gnu.org>
4139
4140 * unexalpha.c: Don't include varargs.h.
4141
e9c50801
KS
41422003-09-17 Kim F. Storm <storm@cua.dk>
4143
4144 * process.c (Fset_process_sentinel): Add sentinel to childp plist
4145 for network process.
4146 (socket_options): Add `:' prefix to option names. Add optbit field.
4147 (set_socket_option): Remove no_error arg and special handling of s < 0.
4148 Return 1<<optbit for known option, 0 for unknown.
4149 Do not interpret 0 as false for boolean option (only nil).
4150 Pass failed option and value to report_file_error.
7146d1c1 4151 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
4152 (Fset_network_process_option): New function to set just one option.
4153 (Fmake_network_process): Allow :coding arg to be a cons.
4154 Allow :server arg to be an integer specifying backlog size.
4155 Remove :options arg, and allow options to be specified directly
4156 as :KEY, VALUE pairs. Parse these options before binding socket.
4157 As before, :reuseaddr t is default for a server process, but this
4158 can now be disabled by specifying :reuseaddr nil.
4159 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
4160 (init_process): Availability of network options is now checked with
4161 simpler syntax (featurep 'make-network-process :OPTION); use loop to
4162 setup features.
4163 (syms_of_process): Fix defsubr's for the replaced functions.
4164
a0fc3644
DL
41652003-09-16 Dave Love <fx@gnu.org>
4166
4167 * Makefile.in: Depend on coding.h.
4168
6df2a645
KS
41692003-09-14 Kim F. Storm <storm@cua.dk>
4170
4171 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
4172 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
4173 (syms_of_process): Defsubr them.
4174
4175 * config.in: Regenerate.
7146d1c1
SM
4176
41772003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
4178
4179 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
4180 * m/news-r6.h (XUNMARK): Remove.
4181 * m/mips.h (XUNMARK): Remove.
4182 * m/mips-siemens.h (XUNMARK): Remove.
4183 * m/iris4d.h (XUNMARK): Remove.
4184 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
4185
0930c1a1
SM
41862003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
4187
31003b9e
SM
4188 * lisp.h (VALBITS): Don't remove 1 for the markbit.
4189 (union Lisp_Object): Use unsigned int for types. Remove markbit.
4190 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
4191 (XTYPE): Use unsigned right-shift.
4192 (XMARKBIT, XMARK, XUNMARK): Remove.
4193
0930c1a1
SM
4194 * alloc.c (init_intervals, init_symbol, init_marker):
4195 Don't preallocate anything.
4196 (Fgarbage_collect, mark_object): Ignore the markbit.
4197
4198 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
4199
19bb0fcd 42002003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
4201
4202 * xdisp.c (pint2hrstr): New function.
4203 (decode_mode_spec): Add `%i' and `%I' specs.
4204 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
4205 for `mode-line-format'.
4206
03bb6a06
AS
42072003-09-07 Andreas Schwab <schwab@suse.de>
4208
4209 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
4210 avoid warning.
4211
a6eeaa81 42122003-09-07 Eli Zaretskii <eliz@gnu.org>
2063d89c 4213
0930c1a1 4214 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 4215
ed159bbf
KS
42162003-09-03 Kim F. Storm <storm@cua.dk>
4217
4218 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
4219 change (superseded by 2002-08-30 change); the default blink-off
4220 cursor is now again "no cursor".
4221
fe64a394
JR
42222003-09-01 Jason Rumney <jasonr@gnu.org>
4223
4224 * makefile.w32-in (alloca.o): Remove.
4225 (coding.o): Depend on intervals.h
4226 (emacs.o, bytecode.o): Depend on window.h
4227
c0175e24
DL
42282003-09-01 Dave Love <fx@gnu.org>
4229
4230 * Makefile.in (alloca.o): Remove commands.
4231 (coding.o): Depend on intervals.h composite.h window.h.
4232 (emacs.o): Depend on window.h keyboard.h keymap.h.
4233 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
4234 (bytecode.o): Depend on window.h.
4235
a24d4cb2
JR
42362003-08-31 Jason Rumney <jasonr@gnu.org>
4237
4bc2315e
JR
4238 * w32term.c (w32_per_char_metric): Allow cached metrics to be
4239 returned even when font_type is unknown.
4240
a24d4cb2
JR
4241 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
4242
9d35adc7
JD
42432003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4244
4245 * xterm.c (x_term_init): Initialize new fields in x_display_info.
4246
4247 * xterm.h (struct x_display_info): Add red/green/blue_bits and
4248 *_offset.
4249
4250 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
4251 calculate pixel value.
4252
6f68b035
GM
42532003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
4254
0930c1a1
SM
4255 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
4256 Don't tell redisplay display is accurate when it's actually been
4257 paused for pending input.
6f68b035 4258
4828b4d7
RS
42592003-08-29 Richard M. Stallman <rms@gnu.org>
4260
4261 * dispnew.c (adjust_glyph_matrix): Call window_box
4262 whenever W is nonzero.
4263
4264 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
4265 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 4266 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
4267 Use indirect_variable to trace thru variable aliases.
4268
4269 * config.in: Updated.
4270
4271 * callint.c (Fcall_interactively): Save and restore
4272 Vthis_command, Vthis_original_command, real_this_command,
4273 and current_kboard->Vlast_command.
4274
4275 * abbrev.c (Fexpand_abbrev): Insert before deleting.
4276
e019878d
GM
42772003-08-29 Gerd Moellmann <gerd@gnu.org>
4278
4279 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
4280
85478bc6
KH
42812003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
4282
0930c1a1 4283 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
4284 (decode_coding_sjis_big5): Likewise.
4285
07ce82d3
JR
42862003-08-27 Jason Rumney <jasonr@gnu.org>
4287
d3703de3
JR
4288 * w32.c (sys_pipe): Protect against file descriptor overflow.
4289
ee4a01d1
JR
4290 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
4291
07ce82d3
JR
4292 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
4293
a64387ee 42942003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
72d19c66
LK
4295
4296 * xfns.c (Vgtk_version_string): New variable.
4297 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
4298
a6eeaa81 42992003-08-24 Eli Zaretskii <eliz@gnu.org>
5459e42a 4300
0930c1a1 4301 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 4302
5459e42a
EZ
4303 * Makefile.in (msdos.o): Depend on intervals.h.
4304
0930c1a1 4305 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 4306
231d6cfb
JD
43072003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4308
4309 * xterm.h (struct x_display_info): New fields: client_leader_window
4310 and Xatom_wm_client_leader.
4311
4312 * xterm.c (x_initialize): Move call to x_session_initialize to ...
4313 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
4314
4315 * xsmfns.c (create_client_leader_window): New function.
4316 (x_session_initialize): Call create_client_leader_window, take
4317 dpyinfo as argument.
4318
4319 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
4320
4321 * Makefile.in (xsmfns.o): Add more depenedencies.
4322
afa88464
DL
43232003-08-21 Dave Love <fx@gnu.org>
4324
4325 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
4326
f730033e
KH
43272003-08-21 Kenichi Handa <handa@m17n.org>
4328
4329 * term.c (term_init): Fix previous change; don't rely on the
4330 length of `buffer' if TERMINFO is defined.
4331
6dca786c
DL
43322003-08-20 Dave Love <fx@gnu.org>
4333
4334 * atimer.h: Include lisp.h.
4335
4336 * lisp.h (EMACS_LISP_H): New.
4337 (popup_activated_flag): Don't declare.
4338
4339 * alloca.c: Some merging with gnulib. Change logic and doc
4340 concerning (x)malloc/(x)free -- no longer Emacs-specific.
4341 [DO_BLOCK_INPUT]: Don't include lisp.h.
4342 (xmalloc, xfree): Declare.
4343 (malloc): Don't declare.
4344
0930c1a1 4345 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
4346 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
4347 atimer.h, blockinput.h.
4348
4349 * alloc.c (lisp_align_malloc): Change type of `aligned'.
4350
4351 * alloca.s: Removed.
4352
3a06a6d9
RS
43532003-08-19 Gerd Moellmann <gerd@gnu.org>
4354
4355 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
4356 use -lncurses.
4357
4358 * term.c (term_init): Use a buffer of size 4096 for tgetent since
4359 FreeBSD returns something longer than 2044. Abort if the end of
4360 the buffer is overwritten.
4361
27eeee55
MB
43622003-08-19 Miles Bader <miles@gnu.org>
4363
4364 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
4365
2f297815
GM
43662003-08-19 Gerd Moellmann <gerd@gnu.org>
4367
f4446bbf
GM
4368 * alloc.c (lisp_align_malloc): Check for memory full when
4369 allocating ablocks, which also avoids freeing a pointer into an
4370 ablocks structure.
4371
4372 * puresize.h (BASE_PURESIZE): Increase to 1100000.
4373
0930c1a1 4374 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 4375
0e7d7aae
RS
43762003-08-16 Richard M. Stallman <rms@gnu.org>
4377
4378 * editfns.c (Fencode_time): Doc fix.
4379
43802003-08-16 David Ponce <david@dponce.com>
4381
4382 * fileio.c (Fwrite_region): Fix conditional expression to issue
4383 the right message.
4384
43852003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
4386
4387 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 4388 Set default value to 1.
0e7d7aae 4389
5d551295
KH
43902003-08-15 Kenichi Handa <handa@m17n.org>
4391
4392 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
4393 what autoscaled.
4394 (best_matching_font): Once we find a better scalable font, set
4395 non_scalable_has_exact_height_p to 1.
4396 (try_font_list): Call try_alternative_families to try any family
4397 with the given registry.
4398
1661e56b
AS
43992003-08-09 Andreas Schwab <schwab@suse.de>
4400
f29181dc
AS
4401 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
4402
1661e56b
AS
4403 * print.c (print_string): Fix printing of multibyte string with
4404 nontrivial printcharfun.
4405
465aa50a
JD
44062003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4407
4408 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
4409
4410 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
4411
e430e5ba
KH
44122003-07-31 Kenichi Handa <handa@m17n.org>
4413
4414 * process.c (read_process_output): Return the actually read bytes
4415 instead of the result of decoding.
4416
97e7188e
KH
44172003-07-31 Kenichi Handa <handa@m17n.org>
4418
4419 * xterm.h (struct x_bitmap_record): New member have_mask.
4420
4421 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
4422 to 0.
4423 (x_create_bitmap_from_file): Likewise.
4424 (x_destroy_bitmap): Check have_mask member before freeing a mask.
4425 (x_destroy_all_bitmaps): Likewise.
4426 (x_create_bitmap_mask): Set have_mask member to 1.
4427
b53094d6
RS
44282003-07-30 Richard M. Stallman <rms@gnu.org>
4429
4430 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
4431
631f2082
JD
44322003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4433
4434 * gtkutil.c (xg_mark_data): Update calls to mark_object.
4435
c855f2ca
RS
44362003-07-29 Richard M. Stallman <rms@gnu.org>
4437
4438 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
4439 Conditionalize XIM code on HAVE_XIM.
4440
4441 * fns.c (Fclear_string): New function.
4442 (syms_of_fns): defsubr it.
4443
17e6d491
KH
44442003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
4445
0930c1a1 4446 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 4447
29ea8ae9
SM
44482003-07-22 Stefan Monnier <monnier@cs.yale.edu>
4449
4450 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
4451
4452 * buffer.c (delete_all_overlays): New function.
4453 * buffer.h (delete_all_overlays): Declare.
4454 * coding.c (run_pre_post_conversion_on_str):
4455 * print.c (temp_output_buffer_setup):
4456 * fileio.c (Finsert_file_contents):
4457 * minibuf.c (get_minibuffer): Use it.
4458
1dd7ccf2
AC
44592003-07-22 Andrew Choi <akochoi@shaw.ca>
4460
4461 * unexmacosx.c (unexec_regions_sort_compare):
4462 (unexec_regions_merge): New functions. Sort and merge unexec
4463 regions before dumping them.
4464
f57bd967
DL
44652003-07-22 Dave Love <fx@gnu.org>
4466
4467 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
4468
7cdee936
SM
44692003-07-21 Stefan Monnier <monnier@cs.yale.edu>
4470
4471 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
4472 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
4473 MARKBIT as the gcmarkbit for strings.
4474
e50886d3
RS
44752003-07-21 Richard M. Stallman <rms@gnu.org>
4476
4477 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
4478
29ea8ae9 4479 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
4480 (syms_of_fns): Corresponding change.
4481
4482 * alloc.c (syms_of_alloc): Doc fixes.
4483
44842003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
4485
4486 * s/netbsd.h: Use -Wl syntax.
4487
fdc39b59
RS
44882003-07-17 Richard M. Stallman <rms@gnu.org>
4489
4490 * xterm.c (xim_initialize): Redo 6/24 change.
4491
9c53385f
SM
44922003-07-15 Stefan Monnier <monnier@cs.yale.edu>
4493
4494 * buffer.c (copy_overlays): Use EMACS_INT for positions.
4495 (Fswitch_to_buffer): Don't signal an error when switching to the same
4496 buffer in a dedicated window.
4497
4498 * alloc.c: Use bitmaps for cons, as was done for floats.
4499 (init_float, init_cons): Let the normal code allocate the first block.
4500 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
4501 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
4502 New macros.
4503 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
4504 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
4505 (live_cons_p): Check the pointer is not past the `conses' array.
4506 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
4507 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
4508 (survives_gc_p): Use CONS_MARKED_P and simplify.
4509 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
4510
dde13196
PE
45112003-07-13 Paul Eggert <eggert@twinsun.com>
4512
4513 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
4514 puts it into BSS instead, at least on Solaris 8 and 9.
4515 This is a valid optimization, and it may occur on other platforms,
4516 so Emacs should not assume that initializing a static variable to
4517 zero puts it into data.
4518 * alloc.c (pure, staticvec):
4519 Initialize these arrays to nonzero, so that they're not
4520 put into BSS by that optimization.
4521
a801bc34
SM
45222003-07-13 Stefan Monnier <monnier@cs.yale.edu>
4523
4524 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
4525 (lisp_align_malloc): Use posix_memalign is available.
4526 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
4527 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
4528 for consistency. Update users.
4529
0c8b2afa
RS
45302003-07-13 Richard M. Stallman <rms@gnu.org>
4531
4532 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
4533
668c2ab0
JB
45342003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
4535
4536 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
4537 and use the Gtk+ function gtk_window_icon_from_file if available.
4538
4539 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
4540 handle mask of bitmaps.
4541 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
4542 mask property.
4543 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
4544
4545 * xterm.h (xg_set_icon): New function.
4546
800bebe3
RS
45472003-07-12 Paul Eggert <eggert@twinsun.com>
4548
4549 * unexelf.c (unexec): Consider a section to precede the .bss
4550 section if its addresses overlap that of .bss.
4551
69e38995
RS
45522003-07-12 Richard M. Stallman <rms@gnu.org>
4553
4554 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
4555
4556 * config.in (HAVE_CRTIN): Add #undef.
4557 (INLINE): Really inline only if OPTIMIZE is defined.
4558
4559 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
4560 END_FILES_1.
4561 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 4562 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
4563
4564 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
4565 (TERMINFO): Define.
4566 (LIBS_TERMCAP): Define.
4567 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
4568
4569 * xfns.c: Include libpng/png.h instead of png.h.
4570
f1d0c238
AS
45712003-07-11 Andreas Schwab <schwab@suse.de>
4572
4573 * buffer.c (modify_overlay): Update prototype.
4574 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
4575 Likewise.
4576
5f6bf5fe
SM
45772003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4578
4579 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
4580 (struct interval): Move to intervals.h.
4581 (struct Lisp_Marker): Use EMACS_INT for position info.
4582 (forward_point): Remove prototype of defunct function.
4583 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
4584 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
4585 (syms_of_textprop, set_text_properties): Remove prototypes that are
4586 already in intervals.h.
4587
4588 * intervals.h (struct interval): Move from lisp.h.
4589 Use EMACS_INT for position and size info.
4590
4591 * coding.c: Include intervals.h for Fset_text_properties.
4592
4593 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
4594 position and length information.
4595
2765b457
SM
45962003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4597
4598 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
4599 position and length information.
4600
2410d73a
SM
46012003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4602
4603 Change overlays_after and overlays_before so the overlays themselves
4604 are linked into lists, rather than using cons cells. After all each
4605 Lisp_Misc already occupies 5 words, so we can add a `next' field to
4606 Lisp_Overlay for free and save up one cons cell per overlay (not
4607 to mention one indirection when traversing the list of overlay).
4608
4609 * lisp.h (struct Lisp_Overlay): New field `next'.
4610
4611 * buffer.h (struct buffer): Change overlays_before and overlays_after
4612 from Lisp lists of overlays to pointers to overlays.
4613
4614 * buffer.c (overlay_strings, recenter_overlay_lists):
4615 Fix typo in eassert in last commit.
4616 (unchain_overlay): New function.
4617 (add_overlay_mod_hooklist): Use AREF.
4618 (copy_overlays, reset_buffer, overlays_at, overlays_in)
4619 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
4620 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
4621 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
4622 (report_overlay_modification, evaporate_overlays, init_buffer_once):
4623 Adjust to new type of overlays_(before|after).
4624
4625 * alloc.c (mark_object): Mark the new `next' field of overlays.
4626 (mark_buffer): Manually mark the overlays_(after|before) fields.
4627
4628 * coding.c (run_pre_post_conversion_on_str):
4629 * editfns.c (overlays_around):
4630 * xdisp.c (load_overlay_strings):
4631 * fileio.c (Finsert_file_contents):
4632 * indent.c (current_column):
4633 * insdel.c (signal_before_change, signal_after_change):
4634 * intervals.c (set_point_both):
4635 * print.c (temp_output_buffer_setup): Use new type for
4636 overlays_(before|after).
4637
04812929
SM
46382003-07-08 Stefan Monnier <monnier@cs.yale.edu>
4639
4640 * buffer.c (report_overlay_modification): Don't run hooks while
4641 traversing the list of overlays.
4642
4643 * buffer.h (struct buffer): Use an int for overlay_center.
4644 (overlays_at, evaporate_overlays, recenter_overlay_lists)
4645 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
4646
4647 * buffer.c (reset_buffer, recenter_overlay_lists)
4648 (adjust_overlays_for_insert, adjust_overlays_for_delete)
4649 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
4650 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
4651 (overlays_at, evaporate_overlays, recenter_overlay_lists)
4652 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
4653
4654 * xdisp.c (fast_find_position): Remove unused var.
4655
4656 * cmds.c (Qexpand_abbrev): New sym.
4657 (syms_of_cmds): Initialize it.
4658 (internal_self_insert): Use it to call expand-abbrev.
4659
2e7ecf15
KS
46602003-07-09 Kim F. Storm <storm@cua.dk>
4661
f9711de4 4662 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
2e7ecf15 4663 was configured with --without-xim.
42f81f64 4664 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 4665
c6de56a0
RS
46662003-07-07 Richard M. Stallman <rms@gnu.org>
4667
4668 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
4669
4670 * alloc.c (Fgarbage_collect): Doc fix.
4671
b93fb365
KH
46722003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
4673
4674 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
4675
bfe1a3f7
SM
46762003-07-06 Stefan Monnier <monnier@cs.yale.edu>
4677
04812929
SM
4678 * minibuf.c (read_minibuf): UNGCPRO before returning.
4679 (Ftry_completion, Fall_completions): Doc fix.
4680
bfe1a3f7
SM
4681 * alloc.c (live_float_p): Check that p is not past the `floats' array,
4682 now that `floats' is not the last element of the struct any more.
4683
ee79d1aa
JR
46842003-07-06 Jason Rumney <jasonr@gnu.org>
4685
4686 * w32term.h (ClipboardSequence_Proc): New type.
4687
4688 * w32fns.c (clipboard_sequence_fn): New variable.
4689 (globals_of_w32fns): Initialize it.
4690
4691 * w32select.c (last_clipboard_sequence_number): New variable.
4692 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
4693 number if possible.
4694
49723c04
SM
46952003-07-06 Stefan Monnier <monnier@cs.yale.edu>
4696
4698665f
SM
4697 * m/amdx86-64.h (MARKBIT):
4698 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
4699 MARKBIT and ARRAY_MARK_FLAG any more.
4700
4701 * m/hp800.h (XSETMARKBIT):
4702 * m/sr2k.h (XSETMARKBIT):
4703 * lisp.h (XSETMARKBIT): Remove unused macro.
4704
49723c04
SM
4705 * lisp.h (mark_object): Change prototype.
4706
4707 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
4708 (last_marked): Change accordingly.
4709 (mark_interval, mark_maybe_object, mark_maybe_pointer)
4710 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
4711 (mark_buffer): Update calls to mark_object.
4712
4713 * bytecode.c (mark_byte_stack):
4714 * fns.c (sweep_weak_table):
4715 * keyboard.c (mark_kboards): Update calls to mark_object.
4716
1d660eca
JR
47172003-07-06 Jason Rumney <jasonr@gnu.org>
4718
4719 * alloc.c (struct ablock): Only include padding when there is some.
4720
618b5ae4
SM
47212003-07-04 Stefan Monnier <monnier@cs.yale.edu>
4722
4723 * alloc.c (ALIGN): Add casts to simplify usage.
4724 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
4725 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
4726 (struct ablock, struct ablocks): New types.
4727 (free_ablock): New global var.
4728 (lisp_align_malloc, lisp_align_free): New functions.
4729 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
4730 (struct float_block): Reorder and add gcmarkbits.
4731 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
4732 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
4733 (init_float, make_float): Use lisp_align_malloc.
4734 (free_float, live_float_p): Don't use `type' any more.
4735 (make_float): Use FLOAT_UNMARK to access to mark bit.
4736 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
4737 Use FLOAT_MARKED_P to access the mark bit.
4738 (pure_alloc): Simplify use of ALIGN.
4739 (mark_object): Use FLOAT_MARK to access the mark bit.
4740 (gc_sweep): Use new macros to access the float's mark bit.
4741 (init_alloc_once): Init free_ablock.
4742
4743 * lisp.h (struct Lisp_Float): Remove unused field `type'.
4744
3ef06d12
SM
47452003-06-27 Stefan Monnier <monnier@cs.yale.edu>
4746
4747 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
4748 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
4749 (allocate_buffer): Move.
4750 (string_bytes): Don't mask markbit of `size_byte'.
4751 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
4752 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
4753 Use the `size' field of buffers (rather than the `name' field) for
4754 the mark bit, as is done for all other vectorlike objects.
4755 Use the new macros to access the mark bit of vectorlike objects.
4756
e81043aa
RS
47572003-06-26 Richard M. Stallman <rms@gnu.org>
4758
4759 * puresize.h (BASE_PURESIZE): Increment base size.
4760
4761 * xdisp.c (fast_find_position): Enable Gerd's new definition.
4762
4763 * xterm.c (xim_initialize): Undo previous change.
4764
2d0834cc
SM
47652003-06-26 Stefan Monnier <monnier@cs.yale.edu>
4766
4767 * alloc.c (survives_gc_p): Simplify.
4768
4769 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
4770
4771 * window.c (Fset_window_dedicated_p): Simplify.
4772 (display_buffer_1): Don't raise the win from which minibuf was entered.
4773 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
4774 (Fminibuffer_selected_window): Simplify.
4775
4776 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
4777
4778 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
4779 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
4780
4781 * insdel.c (check_markers, adjust_markers_for_delete)
4782 (adjust_markers_for_insert, adjust_markers_for_replace)
4783 (prepare_to_modify_buffer, RESTORE_VALUE):
4784 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
4785 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
4786 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
4787 * alloc.c (Fmake_marker, free_marker, gc_sweep):
4788 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
4789 * editfns.c (save_excursion_restore, transpose_markers):
4790 * window.c (delete_window):
4791 * xdisp.c (message_dolog): Update for new types.
4792
d54ae3d8
JD
47932003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4794
a5f696ac
JD
4795 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
4796 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 4797 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
4798
4799 * frame.c (make_frame): Initialize default_face_done_p.
4800
4801 * frame.h (struct frame): Add default_face_done_p.
4802
d54ae3d8
JD
4803 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
4804 will be defined.
4805
2336fe58
SM
48062003-06-25 Stefan Monnier <monnier@cs.yale.edu>
4807
4808 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
4809 Initialize the new field `gcmarkbit'.
4810 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
4811 (mark_interval_tree): Don't mark the tree separately from the nodes.
4812 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
4813 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
4814 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
4815
4816 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
4817 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
4818 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
4819 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
4820 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
4821
bcea31c2
DL
48222003-06-24 Dave Love <fx@gnu.org>
4823
4824 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
4825
4826 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
4827 from gnulib.
4828
2601f59e
RS
48292003-06-21 Richard M. Stallman <rms@gnu.org>
4830
4831 * fileio.c (Fwrite_region): Alternate messages
4832 for append and partial write.
4833
4834 * keyboard.c (read_key_sequence): When converting upcase fn key to
4835 downcase, update fkey and keytran so `backspace' gets translated.
4836
4837 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
4838
4839 * process.c (wait_reading_process_input): Don't signal SIGIO
4840 in batch mode.
4841
b5d2c621
KH
48422003-06-17 Kenichi Handa <handa@m17n.org>
4843
4844 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
4845 composite.h.
4846
4847 * xselect.c: Don't include charset.h, coding.h, composite.h.
4848 (Qforeign_selection): New variable.
4849 (syms_of_xselect): Intern and static it.
4850 (selection_data_to_lisp_data): Return a unibyte string made from
4851 data with `foreign-selection' text property.
4852
6793bc63
SM
48532003-06-15 Stefan Monnier <monnier@cs.yale.edu>
4854
4855 * termhooks.h (EVENT_INIT): New macro.
4856
4857 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
4858
4859 * alloc.c (mark_kboards): Move to keyboard.c.
4860
4861 * keyboard.c (record_asynch_buffer_change, read_avail_input):
4862 * xterm.c (x_dispatch_event):
4863 * xmenu.c (find_and_call_menu_selection):
4864 * xdisp.c (handle_tool_bar_click):
4865 * w32menu.c (menubar_selection_callback):
4866 * sysdep.c (kbd_input_ast, read_input_waiting):
4867 * msdos.c (dos_rawgetc):
4868 * macterm.c (mac_check_for_quit_char):
4869 * macmenu.c (menubar_selection_callback):
4870 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
4871 data to kbd_buffer_store_event.
4872
b3ea810c
KS
48732003-06-15 Kim F. Storm <storm@cua.dk>
4874
4875 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 4876 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 4877
b8f75eda
KG
48782003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
4879
4880 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
4881
ba92ce48
KH
48822003-06-12 Kenichi Handa <handa@m17n.org>
4883
4884 * fileio.c (Fwrite_region): Save and restore restriction.
4885
b80263be
DL
48862003-06-12 Dave Love <fx@gnu.org>
4887
4888 * alloca.c (alloca): Declare arg as size_t.
4889
6793bc63
SM
4890 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
4891 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 4892
b23c0a83
DL
48932003-06-11 Dave Love <fx@gnu.org>
4894
4895 * search.c (shrink_regexp_cache): Use xrealloc.
4896 (syms_of_search): Use xmalloc.
4897
700e47c2
KS
48982003-06-10 Kim F. Storm <storm@cua.dk>
4899
4900 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
4901 Adjust phys_cursor.x to be relative to window box, rather than
4902 text area before checking -- to ensure cursor is redrawn when
4903 exposing window.
4904 Note: This also fixes a similar (older) bug if display margins
4905 are present.
4906
f11aa0b2
KH
49072003-06-06 Kenichi Handa <handa@m17n.org>
4908
4909 * coding.c (encoding_buffer_size): If coding->type is
4910 coding_type_ccl, double magnification on CRLF encoding.
4911
3d143690
JR
49122003-06-06 Jason Rumney <jasonr@gnu.org>
4913
4914 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
4915 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
4916
4917 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
4918 Mac too.
4919
f16205ca
DL
49202003-06-05 Dave Love <fx@gnu.org>
4921
b23c0a83
DL
4922 * strftime.c: Merge changes from gnulib.
4923
f16205ca
DL
4924 * mktime.c (__mktime_internal): Merge changes from gnulib
4925 involving year 69 and dst2.
4926
4927 Changes to merge with gnulib version and be consistent with the
4928 autoconf test:
4929
6793bc63
SM
4930 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
4931 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
4932 [HAVE_LOCALE_H]: Include locale.h.
4933 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
4934
9b87a0bc
KS
49352003-06-05 Kim F. Storm <storm@cua.dk>
4936
4937 * window.c (coordinates_in_window): Convert X and Y to window
4938 relative coordinates inside mode-line and header-line parts.
4939 Convert X and Y to margin area relative coordinates inside left
4940 and right display margin parts.
4941
5a8a15ec
JR
49422003-06-05 Jason Rumney <jasonr@gnu.org>
4943
4944 * w32fns.c (add_system_logical_colors_to_map): New function.
4945 (Fx_open_connection): Use it.
4946
01ed8ff1
SM
49472003-06-04 Stefan Monnier <monnier@cs.yale.edu>
4948
4949 * process.c (allocate_pty): Revert part of the previous patch.
4950 (Faccept_process_output): Simplify.
4951
b427b65d
JR
49522003-06-04 Jason Rumney <jasonr@gnu.org>
4953
4954 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
4955
4956 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
4957 (lispy_mouse_wheel_names): Remove.
4958 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
4959 Always define drag_and_drop_syms.
4960
4961 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
4962 WHEEL_EVENT events.
4963
914a8c47
SM
49642003-06-03 Stefan Monnier <monnier@cs.yale.edu>
4965
01ed8ff1
SM
4966 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
4967
914a8c47
SM
4968 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
4969
adcb132c
JD
49702003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4971
4972 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
4973 menu item label.
4974
be781fa7
RS
49752003-06-03 Richard M. Stallman <rms@gnu.org>
4976
4977 * window.c (Fwindow_edges): Doc fix.
4978 (Fwindow_pixel_edges, Fwindow_inside_edges)
4979 (Fwindow_inside_pixel_edges): New functions.
4980 (syms_of_window): defsubr them.
4981
4982 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
4983 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
4984
914a8c47
SM
49852003-06-02 Stefan Monnier <monnier@cs.yale.edu>
4986
4987 * dispnew.c (Fsit_for): Don't lie about the number of args.
4988
5b07197a
DL
49892003-06-02 Dave Love <fx@gnu.org>
4990
4991 * callproc.c: Use HAVE_FCNTL_H, not USG5.
4992 (syms_of_callproc) <process-environment>: Doc fix.
4993
4994 * doc.c: Use HAVE_FCNTL_H, not USG5.
4995
4996 * xfaces.c (font_rescale_ratio): Fix for K&R.
4997
4998 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
4999
5000 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
5001
5002 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
5003
5004 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
5005 (xg_create_frame_widgets): Use ENCODE_UTF_8.
5006
d7107586 5007 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
5008
5009 * xmenu.c (ENCODE_MENU_STRING): New.
5010 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
5011 Use it.
5012
5013 * coding.h (ENCODE_UTF_8): New.
5014 (Qutf_8): Declare.
5015
5016 * coding.c (Qutf_8): New.
5017 (syms_of_coding): Intern it.
5018
5019 * fns.c: Doc fixes.
5020
7335b336
KH
50212003-06-02 Kenichi Handa <handa@m17n.org>
5022
5023 * buffer.c (Fset_buffer_multibyte): Fix previous change.
5024
914a8c47
SM
50252003-06-01 Stefan Monnier <monnier@cs.yale.edu>
5026
5027 * lread.c (openp): Make sure STR is a string.
5028
9862c135
JR
50292003-06-01 David Ponce <david@dponce.com>
5030
5031 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
5032 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
5033
5034 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
5035 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
5036 (discard_mouse_events): Discard WHEEL_EVENT events too.
5037 (lispy_wheel_names, wheel_syms): New.
5038 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
5039 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
5040 defined.
914a8c47 5041 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
5042
5043 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
5044 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
5045 WHEEL_EVENT events.
5046
f984e73e
JPW
50472003-05-31 John Paul Wallington <jpw@gnu.org>
5048
5049 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
5050 timer are in lisp/emacs-lisp.
5051
1efcd78f
KH
50522003-05-31 Kenichi Handa <handa@m17n.org>
5053
458c8af4
KH
5054 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
5055 region when a buffer is changed to unibyte.
5056
1efcd78f
KH
5057 * charset.h (VALID_LEADING_CODE_P): New macro.
5058 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
5059
778e2804
KH
5060 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
5061 is nonzero, accept multibyte form of eight-bit-control chars.
5062 (decode_composition_emacs_mule): Likewise.
5063 (decode_coding_emacs_mule): Likewise.
5064 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
5065 multibyte form of eight-bit-control chars.
5066
5067 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
5068 (Finsert_file_contents): If coding-system-for-read is bound to
5069 Qauto_save_coding, use the coding system emacs-mule with special
5070 setting for recovering a file.
5071 (choose_write_coding_system): On auto saving, use the coding
5072 system emacs-mule with special setting for auto saving.
5073 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
5074
034060e4
KH
50752003-05-30 Kenichi Handa <handa@m17n.org>
5076
5077 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
5078 properly before calling ccl_driver.
5079
778e2804 5080 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4
KH
5081
5082 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
5083 nonzero.
5084 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
5085 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
5086
595f5aa5
GM
50872003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
5088
5089 * xfaces.c (realize_default_face): Do not abort if lface is
5090 non-existent - reverts change from 2003-05-19.
5091
103e0180
KH
50922003-05-29 Kenichi Handa <handa@m17n.org>
5093
5094 * coding.c (decode_coding_iso2022): Pay attention to the byte
5095 sequence of CTEXT extended segment, and retain those bytes as is.
5096
50972003-05-28 Kenichi Handa <handa@m17n.org>
5098
5099 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
5100 of CODING_REPLACEMENT_CHARACTER.
5101 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
5102 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
5103 check this flag on encoding.
5104 (encode_coding_sjis_big5): Check
5105 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
5106 (Fset_terminal_coding_system_internal): Set
5107 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
5108 instead of setting CODING_FLAG_ISO_SAFE flag in
5109 terminal_coding.flags.
5110
5111 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
5112 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
5113 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
5114
ff6a3bfb 51152003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 5116
ff6a3bfb
RS
5117 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
5118
5119 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 5120
1963c428
KS
51212003-05-28 Kim F. Storm <storm@cua.dk>
5122
5123 * xdisp.c (expose_window): Fix error in calculation of
5124 window relative coordinates of area to redisplay.
5125
2b5d4601
JR
51262003-05-27 Jason Rumney <jasonr@gnu.org>
5127
5128 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
5129
1c64a4a2
JB
51302003-05-27 David Ponce <david@dponce.com>
5131
5132 Handle W32 mouse wheel events as mouse click events, like in X.
5133
5134 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
5135 MOUSE_WHEEL_EVENT anymore.
5136
5137 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
5138 Scrolling down/up the mouse wheel is respectively mapped to mouse
5139 button 4 and 5.
5140 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
5141 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
5142 WM_MOUSEWHEEL events.
5143
2d031b89
AS
51442003-05-27 Andreas Schwab <schwab@suse.de>
5145
20464fdf
AS
5146 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
5147
2d031b89
AS
5148 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
5149 partially visible line.
5150
5151 * alloc.c (Fgarbage_collect): Fix last change.
5152
97bc76d4
JPW
51532003-05-26 John Paul Wallington <jpw@gnu.org>
5154
5155 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
5156
56613f06
SM
51572003-05-25 Stefan Monnier <monnier@cs.yale.edu>
5158
5159 * window.c (Fset_window_buffer): Add type of `keep_margins'.
5160 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
5161
5162 * window.h (window_box_text_cols): Declare.
5163
5164 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
5165 (x_draw_vertical_border): Remove unused var `f'.
5166
5167 * xfaces.c (build_scalable_font_name): Remove `unused var
5168 pixel_size' warning.
5169
5170 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
5171
5172 * unexelf.c (unexec): Remove `unused var n' warning.
5173
5174 * strftime.c (my_strftime_localtime_r): Remove `defined but
5175 unused' warning.
5176
5177 * process.c (allocate_pty): Remove `unused var stb' and
5178 `cp might be used uninitialized' warnings.
5179
5180 * dispnew.c (mode_line_string): Remove unused var `f'.
5181
5182 * coding.c (find_safe_codings): Remove unused var `i'.
5183
5184 * bytecode.c (Fbyte_code): Remove `unused val' warning.
5185
5186 * buffer.c (Fkill_buffer): Remove unused var `list'.
5187
5188 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
5189
93421a1f
JD
51902003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5191
5192 * frame.c (make_frame): Condition want_fullscreen with
5193 HAVE_WINDOW_SYSTEM.
5194
c4b8aebc
JB
51952003-05-25 Juanma Barranquero <lektu@terra.es>
5196
5197 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
5198 (Fwindow_scroll_bars): Fix typo in docstring.
5199
0416870b
KS
52002003-05-24 Kim F. Storm <storm@cua.dk>
5201
5202 The following changes serve several purposes:
5203
5204 1) Swap the position of fringes and display margins in windows, i.e.
5205 the fringes are now displayed between the margins and the text area
5206 (by default).
5207
5208 2) Allow fringe and scroll bar parameters to be set per-buffer and
5209 per-window (like display margins). Such settings are now stored
5210 in window configurations, preserved when frames are resized, and
9018a88e 5211 copied when windows are split vertically or horizontally.
0416870b
KS
5212 Several bugs related to display margins have been fixed.
5213
5214 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 5215
0416870b
KS
5216 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
5217 rather than FRAME_WIDTH (FRAME_FONT (f)).
5218
5219 5) Introduce a consistent naming of variables, members and macros
5220 depending on whether their value is measured in pixels or in
5221 canonical columns/lines. Pixel dimensions are named *_width and
5222 *_height, while canonical columns/lines are named *_cols and
5223 *_lines. Pixel positions are named *_x and *_y, while column/line
5224 positions are named *_col and *_line.
5225
5226 6) Consolidate more of the X, W32, and MAC gui code by moving
5227 common data into struct frame, and generalize it for the non-gui
5228 case by using suitable defaults.
5229
5230 7) Cleanup and consolidate the macros controlling frame and window
5231 layout into frame.h and window.h, and generalize the use of the
5232 various window_box_* functions (enhanced to handle the new fringe
5233 position and the per-window fringe and scroll bar settings).
5234
5235 * frame.h (struct frame): Rename members height to text_lines,
5236 width to text_cols, window_height to total_lines, window_width to
5237 total_cols, new_height to new_text_lines, new_width to
5238 new_text_cols. All uses changed.
5239 (struct frame): New members which consolidate common members of
5240 x_output, w32_output, and mac_output structures: left_pos,
5241 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
5242 win_gravity, size_hint_flags, border_width, internal_border_width,
5243 line_height, fringe_cols, left_fringe_width, right_fringe_width,
5244 want_fullscreen. All uses changed.
5245 (struct frame): New member column_width contaning the canonical
5246 column width, analogue to line_height. All uses changed.
5247 (struct frame): Rename members scroll_bar_pixel_width to
5248 config_scroll_bar_width, and scroll_bar_cols to
5249 config_scroll_bar_cols. All uses changed.
5250 (struct frame): New member scroll_bar_actual_width which
5251 consolidates and renames the vertical_scroll_bar_extra member of
5252 x_output, w32_output, and mac_output structures. All uses changed.
5253 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
5254 from x/w32/macterm.h files. All uses changed. Also change code
5255 which referred to f->output_data...->pixel_height.
5256 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
f63fd14e 5257 from x/w32/macterm.h files. All uses changed. Also change code
0416870b
KS
5258 which referred to f->output_data...->pixel_width.
5259 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
5260 Also change code which referred to f->height.
5261 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
5262 Also change code which referred to f->width.
5263 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
5264 to update new_text_lines and new_text_cols members directly.
5265 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
5266 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
5267 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
5268 FRAME_SCROLL_BAR_COLS. All uses changed.
5269 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
5270 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
5271 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
5272 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
5273 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
5274 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
5275 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
5276 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
5277 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
5278 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
5279 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
5280 return line_height member (it now has proper value also for
5281 non-window frames).
5282 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
5283 return new column_width member (rather than the default font width).
5284 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
5285 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
5286 from x/w32/macterm.h files. Unconditionally return corresponding
5287 member of frame structure (they now have proper values also for
5288 non-window frames).
5289 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
5290 Calculate return value from left and right widths.
5291 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
5292 internal_border_width member (has proper value for non-window frame).
5293 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
5294 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
5295 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
5296 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
5297 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
5298 consolidated from xterm.h, macterm.h, and w32term.h.
5299 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
5300 consolidated from xterm.h, macterm.h, and w32term.h.
5301 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
5302 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
5303 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
5304 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
5305 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
5306 consolidated from x/mac/w32term.h.
5307 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
5308 consolidated from x/mac/w32term.h.
5309 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
5310 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
5311 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
5312 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
5313
5314 * window.h (struct window): Rename members left to left_col,
5315 top to top_line, height to total_lines, width to total_cols,
5316 left_margin_width to left_margin_cols, right_margin_width to
5317 right_margin_cols, orig_height to orig_total_lines, orig_top to
5318 orig_top_line. All uses changed.
5319 (struct window): New members left_fringe_width, right_fringe_width,
5320 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
5321 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
5322 New macros primarily used to simplify other macros.
5323 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
5324 referred to XINT (w->width).
5325 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
5326 referred to XINT (w->height).
5327 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
5328 referred to XINT (w->width) * canon_x_unit.
5329 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
5330 referred to XINT (w->height) * canon_y_unit.
5331 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
5332 referred to XINT (w->left).
5333 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
5334 all uses and code that referred to XINT (w->left) + XINT (w->width).
5335 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
5336 referred to XINT (w->top).
5337 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
5338 referred to XINT (w->top) + XINT (w->height).
5339 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
5340 referred to XINT (w->left) * canon_x_unit.
5341 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
5342 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
5343 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
5344 referred to XINT (w->top) * canon_y_unit.
5345 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
5346 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
5347 (WINDOW_LEFTMOST_P): New macro.
5348 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
5349 All uses changed.
5350 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
5351 All uses changed.
5352 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
5353 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
5354 Do not exclude left fringe width.
5355 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
5356 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
5357 Do not exclude fringe widths.
5358 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
5359 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
5360 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
5361 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
5362 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
5363 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
5364 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
5365 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
5366 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
5367 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
5368 New macros. Change code which referenced corresponding
5369 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
5370 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
5371 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
5372 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
5373 allow per-window scroll-bar settings.
5374 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
5375 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
5376 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
5377 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
5378 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
5379 FRAME_SCROLL_BAR_WIDTH.
5380 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 5381 (WINDOW_SCROLL_BAR_AREA_X): New macros.
0416870b
KS
5382 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
5383 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
5384 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
5385 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
5386 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
5387 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
5388 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
5389 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
5390 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
5391 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
5392 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
5393 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
5394 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
5395 (window_from_coordinates): Update prototype.
5396 (Fset_window_buffer): Update EXFUN.
5397 (set_window_buffer): Update prototype.
9018a88e 5398
0416870b 5399 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 5400 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
5401 changed.
5402 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
5403 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
5404 internal_border_width is now set to 0 for non-window frames.
5405 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
5406 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
5407 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
5408 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
5409 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
5410 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
5411 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
5412 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
5413 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 5414 Move to window.h and renamed [see window.h changes].
0416870b
KS
5415 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
5416 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
5417 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
5418 Use WINDOW_TOTAL_LINES.
0416870b
KS
5419 (frame_update_line_height): Remove prototype.
5420
5421 * buffer.h (struct buffer): Rename members measured in columns:
5422 left_margin_width to left_margin_cols, right_margin_width to
5423 right_margin_cols. All uses changed.
5424 New members left_fringe_width, right_fringe_width,
5425 fringes_outside_margins for per-buffer fringe settings.
5426 New members scroll_bar_width and vertical_scroll_bar_type for
5427 per-buffer scroll bar settings.
5428
5429 * buffer.c (init_buffer_once): Set buffer_defaults and
5430 buffer_local_flags for new buffer-local variables
5431 left_fringe_width, right_fringe_width, fringes_outside_margins,
5432 scroll_bar_width, and vertical_scroll_bar_type.
5433 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
5434 default-* variables for them.
5435
5436 * dispnew.c: Make (many) trivial substitutions for renamed and
5437 new macros in dispextern.h, frame.h and window.h.
5438 (mode_line_string): No need to adjust width for mode lines, as it
5439 is already adjusted by the caller.
5440 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 5441
0416870b
KS
5442 * frame.c: Make (many) trivial substitutions for renamed and
5443 new macros in dispextern.h, frame.h and window.h.
5444 (make_frame): Initialize left_fringe_width, right_fringe_width,
5445 fringe_cols, scroll_bar_actual_width, border_width,
5446 internal_border_width, column_width, line_height, x_pixels_diff,
5447 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
5448 members with values suitable for a non-window frames.
5449
5450 * gtkutil.c: Make (many) trivial substitutions for renamed and
5451 new macros in dispextern.h, frame.h and window.h.
9018a88e 5452
0416870b
KS
5453 * indent.c: Make (few) trivial substitutions for renamed and
5454 new macros in dispextern.h, frame.h and window.h.
5455
5456 * keyboard.c: Make (many) trivial substitutions for renamed and
5457 new macros in dispextern.h, frame.h and window.h.
5458 (make_lispy_event): Use window positions returned from
5459 window_from_coordinates when constructing the lisp event for
5460 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
5461 (incorrect) values locally.
5462 (make_lispy_movement): Use window positions returned from
5463 window_from_coordinates when constructing the lisp event, rather
5464 than calculating (incorrect) values locally.
5465
5466 * scroll.c: Make (some) trivial substitutions for renamed and
5467 new macros in dispextern.h, frame.h and window.h.
5468
5469 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
5470 scroll-bars.
5471
5472 * sysdep.c: Make (few) trivial substitutions for renamed and
5473 new macros in dispextern.h, frame.h and window.h.
5474
5475 * term.c: Make (some) trivial substitutions for renamed and
5476 new macros in dispextern.h, frame.h and window.h.
5477
5478 * widget.c: Make (few) trivial substitutions for renamed and
5479 new macros in dispextern.h, frame.h and window.h.
5480
5481 * window.c: Make (many) trivial substitutions for renamed and
5482 new macros in dispextern.h, frame.h and window.h.
5483 (make_window): Initialize new members
5484 left_margin_cols, right_margin_cols, left_fringe_width,
5485 right_fringe_width, fringes_outside_margins, scroll_bar_width,
5486 and vertical_scroll_bar_type.
5487 (coordinates_in_window): Adapted to new fringe/margin positions
9018a88e 5488 and per-window fringes and scroll-bars.
0416870b 5489 Fix bug related to incorrectly adjusting coordinates by
9018a88e 5490 frame's internal_border_width (the effect normally negible since
0416870b
KS
5491 the internal_border_width is typically 0 or 1 pixel, but very
5492 noticeable for an internal_border_width of e.g. 25 pixels).
5493 Upon successful return (other than ON_NOTHING), the coordinates
5494 are now always properly converted to window relative for the
5495 given display element.
5496 (window_from_coordinates): Add new parameters wx and wy to
5497 return the window relative x and y position in the returned
5498 window and part. A null arg means, don't return the position.
5499 All callers changed.
5500 (adjust_window_margins): New function which may reduce the width
5501 of the display margins if a window's text area is too small after
5502 resizing or splitting windows.
5503 (size_window): Fix bug that did not account for display margin
5504 widths when checking the minimum width of a window; use
5505 adjust_window_margins.
5506 (set_window_buffer): Call Fset_window_fringes and
5507 Fset_window_scroll_bars to setup per-window elements.
5508 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
5509 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
5510 (e.g. after splitting a window or resizing the frame).
5511 All callers changed.
0416870b
KS
5512 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
5513 (Fsplit_window): Duplicate original window's display margin,
5514 fringe, and scroll-bar settings; then call Fset_window_buffer with
5515 KEEP_MARGINS non-nil. This fixes a bug which caused a split
5516 window to only preserve the display margins in one of the windows.
c4b8aebc 5517 When splitting horizontally, call adjust_window_margins on both
0416870b 5518 windows to ensure that the text area of the new windows is non too
f9711de4 5519 narrow. This fixes a bug which could cause Emacs to trap if the
0416870b
KS
5520 width of the split window was less than the width of the display
5521 margins.
9018a88e
SM
5522 (window_box_text_cols): Renamed from window_internal_width.
5523 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
5524 Fix bug that caused vertical separator to be subtracted also on
5525 window frames. Fix another bug that did not reduce the returned
5526 value by the columns used for display margins.
5527 (window_scroll_line_based): Fix bug related to scrolling too much
5528 when display margins are present (implicitly fixed by the fix to
5529 window_box_text_cols).
5530 (scroll_left, scroll_right): Fix bug related to scrolling too far
5531 by default when display margins are present (implicitly fixed by
5532 the fix to window_box_text_cols).
5533 (struct saved_window): Rename members left to left_col, top to
5534 top_line, width to total_cols, height to total_lines, orig_top to
5535 orig_top_line, orig_height to orig_total_lines. All uses changed.
5536 New members left_margin_cols, right_margin_cols,
5537 left_fringe_width, right_fringe_width, fringes_outside_margins,
5538 scroll_bar_width, and vertical_scroll_bar_type for saving
5539 per-window display elements.
5540 (Fset_window_configuration): Restore display margins, fringes,
5541 and scroll bar settings. This fixes a bug which caused display
5542 margins to be discarded when saving and restoring a window
5543 configuration.
5544 (save_window_save): Save display margins, fringes, and scroll bar
5545 settings. This fixes a bug which caused display margins to be
5546 discarded when saving and restoring a window configuration.
5547 (Fset_window_margins): Do nothing if display margins are not
5548 really changed. Otherwise, call adjust_window_margins to ensure
5549 the text area doesn't get too narrow. This fixes a bug which
f9711de4 5550 could cause Emacs to trap if setting display margins wider than
0416870b
KS
5551 the width of the window.
5552 (Fset_window_fringes): New defun to allow user to specifically set
5553 this window's fringe widths and position vs. display margins.
5554 (Fwindow_fringes): New defun to return window's actual fringe
5555 settings.
5556 (Fset_window_scroll_bars): New defun to allow user to specifically
5557 set this window's scroll bar width and position.
5558 (Fwindow_scroll_bars): New defun to return window's actual scroll
5559 bar settings.
5560 (compare_window_configurations): Also compare display margins,
5561 fringes, and scroll bar settings.
5562 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
5563
5564 * xdisp.c: Make (many) trivial substitutions for renamed and
5565 new macros in dispextern.h, frame.h and window.h.
5566 (window_box_width): Adapt to per-window fringes and scroll bars,
f63fd14e 5567 and new fringe vs. display margin position. Note that returned
0416870b
KS
5568 value is no longer guaranteed to be a whole multiple of the frame
5569 column width, since per-window fringes may now be any width.
5570 (window_box_left_offset): New function like window_box_left, but
5571 value is relative to left border of window (rather than frame).
5572 (window_box_right_offset): New function like window_box_right,
5573 but value is relative to left border of window.
5574 (window_box_left): Adapt to per-window fringes and scroll bars,
5575 and new fringe vs. display margin position. Simplify by using
5576 WINDOW_LEFT_EDGE_X and window_box_left_offset.
5577 (window_box): Allow null args for unnecessary return values;
5578 change/simplify relevant callers.
5579 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
5580 and new fringe vs. display margin position.
5581 Use window_box_left_offset and window_box_right_offset
0416870b 5582 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
5583 scroll bars, and new fringe vs. display margin position.
5584 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
5585 (draw_fringe_bitmap): Rework to handle per-window fringes and new
5586 fringe vs. display margin position.
5587 (hscroll_window_tree): Use window_box_width instead of window_box.
a64387ee
JB
5588 (redisplay_window): Adapt to per-window scroll bars.
5589 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
5590 bars, and new fringe vs. display margin position.
5591 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
a64387ee 5592 (x_clear_end_of_line): Adapt to per-window fringes and scroll
0416870b
KS
5593 bars, and new fringe vs. display margin position. Fix bug which
5594 increased total width of full_width rows by width of scroll bars
5595 although window's total width already includes that.
5596 (x_fix_overlapping_area): Simplify using window_box_left_offset.
5597 (expose_area): Simplify using window_box_left_offset.
5598 (x_draw_vertical_border): Handle per-window scroll bar settings,
5599 mixing windows with left, right and no scroll bars.
5600
5601 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
5602 where it's used in x_list_fonts (for clarity).
5603 (frame_update_line_height): Remove unused function; functionality
5604 is now done directly when setting the default font in x_set_font.
5605
5606 * xfns.c: Make (many) trivial substitutions for renamed and
5607 new macros in dispextern.h, frame.h and window.h.
5608
5609 * xmenu.c: Make (some) trivial substitutions for renamed and
5610 new macros in dispextern.h, frame.h and window.h.
5611
5612 * xterm.h (struct x_output): Move members left_pos, top_pos,
5613 border_width, pixel_height, pixel_width, line_height,
5614 internal_border_width, vertical_scroll_bar_extra,
5615 left_fringe_width, right_fringe_width, fringe_cols,
5616 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5617 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
5618 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5619 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5620 (PIXEL_WIDTH, PIXEL_HEIGHT)
5621 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5622 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5623 frame.h and renamed [see frame.h changes].
5624 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5625 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5626 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5627 and renamed [see frame.h changes].
9018a88e 5628
0416870b
KS
5629 * xterm.c: Make (several) trivial substitutions for renamed and
5630 new macros in dispextern.h, frame.h and window.h.
5631 (x_draw_glyph_string_box): Adapt to per-window fringes and
5632 scroll-bars.
5633 (scroll_run): Adapt to new fringe position.
5634 (glyph_rect): Use window coordinates returned from
5635 window_from_coordinates rather than frame_to_window_pixel_xy.
5636 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5637 scroll-bars.
5638 (handle_one_xevent): Simplify a USE_GTK conditional.
5639 (x_clip_to_row): Remove superfluous whole_line_p arg and code
5640 (fringes are now inside margins, i.e. always in the clipping area).
5641 All callers changed.
5642 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5643 directly, then call compute_fringe_widths. Don't call
5644 frame_update_line_height.
5645
5646 * w32term.h (struct w32_output): Move members left_pos, top_pos,
5647 border_width, pixel_height, pixel_width, line_height,
5648 internal_border_width, vertical_scroll_bar_extra,
5649 left_fringe_width, right_fringe_width, fringe_cols,
5650 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5651 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
5652 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5653 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5654 (PIXEL_WIDTH, PIXEL_HEIGHT)
5655 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5656 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5657 frame.h and renamed [see frame.h changes].
5658 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5659 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5660 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5661 and renamed [see frame.h changes].
9018a88e 5662
0416870b
KS
5663 * w32term.c: Make (several) trivial substitutions for renamed and
5664 new macros in dispextern.h, frame.h and window.h.
5665 (x_draw_glyph_string_box): Adapt to per-window fringes and
5666 scroll-bars.
5667 (glyph_rect): Use window coordinates returned from
5668 window_from_coordinates rather than frame_to_window_pixel_xy.
5669 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5670 scroll-bars.
5671 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
5672 (fringes are now inside margins, i.e. always in the clipping area).
5673 All callers changed.
5674 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5675 directly, then call compute_fringe_widths. Don't call
5676 frame_update_line_height.
5677
5678 * w32console.c: Make (few) trivial substitutions for renamed and
5679 new macros in dispextern.h, frame.h and window.h.
5680
5681 * w32fns.c: Make (many) trivial substitutions for renamed and
5682 new macros in dispextern.h, frame.h and window.h.
5683
5684 * w32menu.c: Make (few) trivial substitutions for renamed and
5685 new macros in dispextern.h, frame.h and window.h.
5686
5687 * macterm.h (struct mac_output): Move members left_pos, top_pos,
5688 border_width, pixel_height, pixel_width, line_height,
5689 internal_border_width, vertical_scroll_bar_extra,
5690 left_fringe_width, right_fringe_width, fringe_cols,
5691 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5692 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
5693 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5694 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5695 (PIXEL_WIDTH, PIXEL_HEIGHT)
5696 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5697 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5698 frame.h and renamed [see frame.h changes].
5699 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5700 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5701 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5702 and renamed [see frame.h changes].
9018a88e 5703
0416870b
KS
5704 * macterm.c: Make (several) trivial substitutions for renamed and
5705 new macros in dispextern.h, frame.h and window.h.
5706 (x_draw_glyph_string_box): Adapt to per-window fringes and
5707 scroll-bars.
5708 (glyph_rect): Use window coordinates returned from
5709 window_from_coordinates rather than frame_to_window_pixel_xy.
5710 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5711 scroll-bars.
5712 (x_clip_to_row): Remove superfluous whole_line_p arg and code
5713 (fringes are now inside margins, i.e. always in the clipping area).
5714 All callers changed.
5715 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5716 directly, then call compute_fringe_widths. Don't call
5717 frame_update_line_height.
5718
5719 * macfns.c: Make (several) trivial substitutions for renamed and
5720 new macros in dispextern.h, frame.h and window.h.
9018a88e 5721 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
5722
5723 * macmenu.c: Make (few) trivial substitutions for renamed and
5724 new macros in dispextern.h, frame.h and window.h.
5725
5726 * msdos.h (struct x_output): Remove members left_pos, top_pos,
5727 and line_height, and use corresponding new members in struct
5728 frame. All uses changed.
5729 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
5730 superseeded by corresponding macros in frame.h.
5731
5732 * msdos.c: Make (several) trivial substitutions for renamed and
5733 new macros in dispextern.h, frame.h and window.h.
5734 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 5735 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
5736 (internal_terminal_init): No need to initialize line_height here;
5737 it now defaults to 1.
5738
9018a88e
SM
57392003-05-24 Stefan Monnier <monnier@cs.yale.edu>
5740
5741 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
5742 dropping `down' events.
5743
016bd3c0
AS
57442003-05-24 Andreas Schwab <schwab@suse.de>
5745
5746 * coding.c (find_safe_codings): Fix last change.
5747
4dacadcc
TTN
57482003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
5749
5750 * xfns.c (x_window): Fix typo from 2003-05-21 change.
5751
319830ce
SM
57522003-05-23 Stefan Monnier <monnier@cs.yale.edu>
5753
9018a88e
SM
5754 * xdisp.c (display_mode_element): Increase max depth.
5755 Simplify the error handling code. Use a different error string
5756 for the case where we hit the depth limit.
5757
319830ce
SM
5758 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
5759
5760 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
5761
57622003-05-21 Stefan Monnier <monnier@cs.yale.edu>
5763
5764 * intervals.c (get_local_map): Don't get char-property of previous
5765 point any more: get_pos_property already does it and better.
5766
c67de8ba
DL
57672003-05-21 Dave Love <fx@gnu.org>
5768
5769 [Merged from unicode branch.]
5770
5771 * xfns.c (x_window, x_window): Use use_xim.
5772
5773 * xterm.c (use_xim): Initialize.
5774 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
5775 (x_term_init): Maybe set use_xim.
5776
5777 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
5778
edd3ff1d
JR
57792003-05-21 Jason Rumney <jasonr@gnu.org>
5780
5781 * unexw32.c (_start): Remove _fmode initialization.
5782
5783 * emacs.c (main) [WINDOWSNT]: Move it here.
5784
463f55ee
DL
57852003-05-20 Dave Love <fx@gnu.org>
5786
5787 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
5788
af253914
RS
57892003-05-19 Richard M. Stallman <rms@gnu.org>
5790
5791 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
5792 as value for QCfont attribute.
5793 (realize_default_face): lface should already exist; crash if not.
5794 Specify 0 for FORCE_P when calling set_lface_from_font_name.
5795
5796 * frame.c (Fignore_event): Doc fix.
5797
1d211019
KH
57982003-05-19 Kenichi Handa <handa@m17n.org>
5799
5800 * coding.c (decode_coding_string): Handle post-read-conversion
5801 even if the coding doesn't require decoding.
5802
4dd68254
RS
58032003-05-18 Richard M. Stallman <rms@gnu.org>
5804
5805 * callproc.c (Fcall_process_region): Doc fix.
5806
14d87dc9
SM
58072003-05-17 Stefan Monnier <monnier@cs.yale.edu>
5808
deca5d96
SM
5809 * lread.c (Fload): Print a message if package is obsolete.
5810
14d87dc9
SM
5811 * window.c (Fselect_window): Add optional `norecord' arg.
5812 (select_window_1): Fold into Fselect_window.
5813 (select_window_norecord): New function.
5814 (temp_output_buffer_show): Use it. Preserve current buffer.
5815
5816 * window.h (Fselect_window): Update declaration.
5817
5818 * window.c (delete_window, Fother_window, Fset_window_configuration):
5819 * minibuf.c (read_minibuf):
5820 * macterm.c (x_new_focus_frame):
5821 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
5822 * callint.c (Fcall_interactively):
5823 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
5824
5825 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
5826
78f52183
DK
58272003-05-17 David Kastrup <dak@gnu.org>
5828
5829 * process.c (read_process_output): Back out change from 2003-03-09.
5830
14d87dc9
SM
58312003-05-17 Stefan Monnier <monnier@cs.yale.edu>
5832
5833 * editfns.c (get_pos_property): Don't assume that `object' = nil.
5834
5835 * textprop.c (text_property_stickiness): New arg `buffer'.
5836
5837 * intervals.h (text_property_stickiness): New arg `buffer'.
5838 (get_pos_property): Declare.
5839
5840 * intervals.c (get_local_map): Use get_pos_property, to obey
5841 stickiness and empty overlays.
5842 (create_root_interval, graft_intervals_into_buffer): Use BEG.
5843 (merge_properties, intervals_equal, merge_properties_sticky):
5844 Use XCAR, XCDR.
5845 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
5846
1fd1cc2f
RS
58472003-05-17 Richard M. Stallman <rms@gnu.org>
5848
4f9f637a
RS
5849 * minibuf.c (read_minibuf): If buffer is empty, record the default
5850 in the history.
5851 (Fminibuffer_complete_word): When deleting the overlap, take account
5852 of its real position.
5853
5854 * fns.c (map_char_table): Fix previous change.
5855
1fd1cc2f
RS
5856 * syntax.c (find_defun_start):
5857 When open_paren_in_column_0_is_defun_start,
5858 return beginning of buffer.
5859
5860 * lisp.h (map_char_table): Declare added arg.
5861
5862 * fns.c (map_char_table): New arg TABLE gets the master table.
5863 All calls changed.
5864 Process default and inheritance, resorting to Faref if necessary.
5865
5866 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
5867 (Faccessible_keymaps): Pass new arg to map_char_table.
5868
5869 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
5870
5871 * casetab.c (set_case_table): Pass new arg to map_char_table.
5872
5873 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
5874
5875 * lisp.h (specbinding_func): New typedef.
5876 (struct specbinding): Use specbinding_func, to put the `volatile'
5877 in the right place.
5878
5879 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
5880 to avoid GCC warning.
14d87dc9 5881
b4bd27c5
RS
58822003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
5883
14d87dc9 5884 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 5885
35fb885d
SM
58862003-05-15 Stefan Monnier <monnier@cs.yale.edu>
5887
5888 * keyboard.c (apply_modifiers): Don't fill the other cache.
5889
9a274fbd
SM
58902003-05-14 Stefan Monnier <monnier@cs.yale.edu>
5891
c55b5fad
SM
5892 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
5893
9a274fbd
SM
5894 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
5895 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
5896 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
5897 (Fset_window_configuration, Fcurrent_window_configuration)
5898 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
5899 (Fpos_visible_in_window_p, mark_window_cursors_off)
5900 (window_internal_height, window_internal_width, Frecenter)
5901 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
5902 (replace_buffer_in_all_windows, init_window_once, init_window)
5903 (syms_of_window, keys_of_window): Move from lisp.h.
5904 * lisp.h: Move window.c declarations to window.h.
5905
5906 * bytecode.c: Include window.h.
5907 * emacs.c: Include window.h.
5908
14d87dc9 5909 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
5910 (keyremap): Add `parent' field.
5911 (keyremap_step): Use it. Remove `parent' argument.
5912 (read_key_sequence): Setup and use the new `parent' field.
5913
fd93e331
SM
59142003-05-11 Stefan Monnier <monnier@cs.yale.edu>
5915
5916 * keyboard.c (adjust_point_for_property): Ensure termination.
5917
1c4001a1
SM
59182003-05-10 Stefan Monnier <monnier@cs.yale.edu>
5919
5920 * keyboard.c (follow_key): Remove dead variable `did_meta'.
5921 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
5922 duplicated handling of function-key-map and key-translation-map
5923 in read_key_sequence.
5924 (read_key_sequence): Use them.
5925
5926 * keyboard.c (adjust_point_for_property): Try harder to move point
5927 to the non-sticky end of an invisible property.
5928
5929 * xdisp.c (single_display_prop_intangible_p): Make `space' display
5930 property intangible as well.
5931
780379b1
AS
59322003-05-10 Andreas Schwab <schwab@suse.de>
5933
5934 * xmenu.c (single_menu_item): Change last parameter to void* to
5935 avoid warning.
5936
ca2de342
RS
59372003-05-09 Richard M. Stallman <rms@gnu.org>
5938
5939 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
5940 Bind Qinhibit_modification_hooks to t so there will be no GC.
5941 Rename local `tem' to `save_deactivate_mark'.
5942
5943 * eval.c (specpdl_ptr): Declare volatile.
5944 (unbind_to): Copy the whole binding and decrement specpdl_ptr
5945 before doing the work of unbinding it.
5946
5947 * lisp.h (struct specbinding): Declare elements volatile.
5948 (specpdl_ptr): Declare volatile.
5949
5950 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
5951
5952 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
5953 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
5954
347003be
DL
59552003-05-08 Dave Love <fx@gnu.org>
5956
5957 * coding.c (Vlast_coding_system_used): Doc fix.
5958
5adcec23
JR
59592003-05-07 Jason Rumney <jasonr@gnu.org>
5960
5961 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
5962 when system does not support them.
5963
5fe3b8a4
SM
59642003-05-05 Stefan Monnier <monnier@cs.yale.edu>
5965
5966 * fileio.c (Qwrite_region_annotate_functions): New var.
5967 (build_annotations): Use it to process the global part of the hook.
5968 (syms_of_fileio): Init and staticpro it.
5969
5970 * keyboard.c (safe_run_hooks_error): Display a message instead of
5971 silently ignoring the error.
5972
59732003-05-03 Stefan Monnier <monnier@cs.yale.edu>
5974
5975 * keyboard.c (input_available_signal): Mark static.
5976 (menu_bar_items): Use map_keymap.
5977 (menu_bar_one_keymap): Remove.
5978 (menu_bar_item): Adjust arglist (for use in map_keymap).
5979 Properly hide a second binding when not both are keymaps.
5980
5981 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
5982 (single_keymap_panes): Use it and map_keymap.
5983 (single_menu_item): Use skp as well.
5984
5985 * keymap.h (map_keymap_function_t): New type.
5986 (map_keymap): Declare.
5987
5988 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
5989 (map_keymap_call, Fmap_keymap): New functions.
5990 (syms_of_keymap): Defsubr map-keymap.
5991
4b1b4443
JD
59922003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5993
5994 * gtkutil.c (create_dialog, make_widget_for_menu_item)
5995 (make_menu_item, create_menus, xg_update_menu_item): Don't call
5996 ..._with_mnemonic functions for menu items.
5997
1f816871
KH
59982003-05-01 Kenichi Handa <handa@m17n.org>
5999
6000 * coding.c (coding_system_accept_latin_extra_p): Delete this
6001 function.
6002 (find_safe_codings): Pay attention to
6003 the property tranlsation-table-for-encode of each codings.
6004 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
6005
5ed6ba5b
SM
60062003-05-01 Stefan Monnier <monnier@cs.yale.edu>
6007
6008 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
6009
32c06229
SM
60102003-04-30 Stefan Monnier <monnier@cs.yale.edu>
6011
6012 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
6013
6014 * lisp.h (CHECK): Wrap args in parenthesis.
6015 (specbind): Fix doc: symbol = Qnil is not supported any more.
6016
6017 * bytecode.c (Fbyte_code) <unwind-protect>:
6018 Use Fprogn rather than 0 and Qnil.
6019
6020 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
6021 `double', and `triple' modifiers as well.
6022
ed3c3314
RS
60232003-04-30 Richard M. Stallman <rms@gnu.org>
6024
6025 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
6026
6027 * alloc.c (abort_on_gc): New variable.
6028 (Fgarbage_collect): Abort if abort_on_gc is set.
6029
6030 * lisp.h (abort_on_gc): Add decl.
6031
6032 * eval.c (Fsignal): Clear abort_on_gc.
6033
6034 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 6035 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
6036
6037 * xdisp.c (move_it_vertically_backward): Do the final big else
6038 even if nlines is 0.
6039
6040 * xdisp.c (redisplay_internal): Finish the per-frame loop
6041 even if redisplay is suspended by input.
6042
0b325c12
AC
60432003-04-24 Andrew Choi <akochoi@shaw.ca>
6044
6045 * macterm.c (x_list_fonts): Return all fonts that match if
6046 maxnames = -1.
6047
4e837cd0
KH
60482003-04-25 Kenichi Handa <handa@m17n.org>
6049
6050 * syntax.c (skip_chars): Fix previous change.
6051
9af7511a
KH
60522003-04-24 Kenichi Handa <handa@m17n.org>
6053
6054 * syntax.c (skip_chars): Make the code faster by using the common
6055 technique of *p, *stop, and *endp.
6056
e3b2c21f
JD
60572003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6058
6059 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 6060 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
6061 being updated.
6062
32c06229
SM
60632003-04-19 Stefan Monnier <monnier@cs.yale.edu>
6064
6065 * eval.c (Fapply): Undo last change and add a comment about why.
6066
c6464167
MB
60672003-04-18 Miles Bader <miles@gnu.org>
6068
6069 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
6070 pickier PARSE_MULTIBYTE_SEQ.
6071
e509f168
SM
60722003-04-17 Stefan Monnier <monnier@cs.yale.edu>
6073
6074 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
6075 Use XCDR, XCAR, CONSP.
6076 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
6077 (Fapply): Remove unnecessary GCPRO.
6078
6079 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
6080
6081 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
6082
6083 * buffer.h: Don't hardcode BEG==1.
6084
6085 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
6086
5ceea398
RS
60872003-04-16 Richard M. Stallman <rms@gnu.org>
6088
6089 * xdisp.c (try_window, try_window_reusing_current_matrix):
6090 When at end of window, set window_end_pos to Z-ZV.
6091
6092 * buffer.c (Foverlay_recenter): Doc fix.
6093
e509f168
SM
60942003-04-14 Stefan Monnier <monnier@cs.yale.edu>
6095
6096 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
6097
d243e605
AC
60982003-04-14 Andrew Choi <akochoi@shaw.ca>
6099
6100 * macterm.c (mac_check_for_quit_char): Don't check more often than
6101 once a second.
6102
6901b111
SM
61032003-04-11 Stefan Monnier <monnier@cs.yale.edu>
6104
6105 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
6106 specially, so that they can't hide an implicit switch-frame event.
6107 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
6108 (head_table): Use switch-frame as event_kind for select-window.
6109 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
6110
6111 * editfns.c (Fformat): Lisp_Object/int mixup.
6112 (format2): Remove unused var numargs.
6113
e301806f 61142003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 6115
6901b111 6116 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
6117 (Qafter_insert_file_set_coding): New variable.
6118 (syms_of_fileio): Initialize and staticpro it. Delete declaration
6119 for after-insert-file-adjust-coding-function.
6120 (Finsert_file_contents): Call Qafter_insert_file_set_coding
6121 instead of Vafter_insert_file_adjust_coding_function.
6122
38914424
KH
61232003-04-11 Kenichi Handa <handa@m17n.org>
6124
6125 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
6126
6127 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
6128 string. Callers changed.
6129
61302003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 6131
6901b111 6132 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 6133 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
6134 (Finsert_file_contents):
6135 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
6136 decode-format.
6137
f979dc05
JD
61382003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6139
6140 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
6141 get GtkAdjustment as widget now is a GtkRange.
6142
6143 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
6144 GtkRange to avoid memory leak.
6145
f8c6b4c2 61462003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 6147
50ebc53d
KH
6148 * xfaces.c (Vface_font_rescale_alist): New variable.
6149 (struct font_name): New member rescale_ratio.
6150 (font_rescale_ratio): New function.
6901b111 6151 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
6152 (better_font_p): On comparing point sized, pay attention to
6153 recale_ratio member of fonts.
6154 (build_scalable_font_name): Reflect font->rescale_ratio in the
6155 font name.
6901b111 6156 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 6157
cb98871c
KH
6158 * lread.c (read1): Before calling index, check if the 2nd
6159 arguemnt is in ASCII range.
6160
4773b8ca
RS
61612003-04-08 Richard M. Stallman <rms@gnu.org>
6162
b0ada147
RS
6163 * fileio.c (Ffile_symlink_p): Doc fix.
6164
6165 * editfns.c (Fformat): Translate positions of text properties
6166 in the format string to apply them to the result.
6167
4773b8ca
RS
6168 * fileio.c (Finsert_file_contents): Doc fix.
6169 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
6170
61712003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 6172
4773b8ca
RS
6173 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
6174
e8f25745 61752003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 6176
e8f25745
ST
6177 * mac.c (init_mac_osx_environment): Switch libexec and bin so
6178 that self-contained application finds libexec files.
6179
f8c6b4c2 61802003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 6181
6901b111
SM
6182 * coding.c (code_convert_region_unwind):
6183 Set Vlast_coding_system_used to the argument.
2310d84c
KH
6184 (code_convert_region): If post-read-conversion function changed
6185 the value of last-coding-sytem, keep the new value in
6186 coding->symbol so that it won't be overridden.
6187 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
6188 (coding_system_accept_latin_extra_p): New function.
6189 (find_safe_codings): Pay attention to characters registered in
6190 latin-extra-code-table.
2310d84c 6191
39c9a034
TTN
61922003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
6193
6194 * Makefile.in (md5.o): Add missing dependency info.
6195
eb67c5d6
RS
61962003-04-06 Richard M. Stallman <rms@gnu.org>
6197
6198 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
6199
6200 * marker.c (verify_bytepos): New function.
6201
6202 * intervals.c (set_intervals_multibyte_1): When becoming
6203 multibyte, adjust right and left child sizes to a whole set of
6204 characters. If an interval gets zero total-length, delete it.
6205 If an interval consists of just its children, delete one of them.
6206
6207 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
6208 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 6209
eb67c5d6
RS
6210 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
6211 All calls deleted.
6212 (lisp_malloc): Do the work here directly.
6213
b1f81fc5
JB
62142003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
6215
6216 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
6217 char tables.
6218
62192003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
6220
6221 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
6222 destructively change "%S" to "%s".
6223
774666fb
MB
62242003-04-03 Miles Bader <miles@gnu.org>
6225
6226 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
6227 always set.
6228
19c37f01
DL
62292003-04-01 Dave Love <fx@gnu.org>
6230
6231 * xfns.c (xpm_lookup_color): Grok "opaque".
6232
2f4b24c3
AC
62332003-03-31 Andrew Choi <akochoi@shaw.ca>
6234
6235 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
6236 parent window ID.
6237
6238 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
6239
6240 * macterm.h (struct mac_output): Define x_pixels_diff and
6241 y_pixels_diff.
b1f81fc5 6242
9443fcf6
JB
62432003-03-31 Juanma Barranquero <lektu@terra.es>
6244
6245 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
6246 blockinput.h and files included from it.
6247
e072891b
KS
62482003-03-31 Kim F. Storm <storm@cua.dk>
6249
6250 The following changes consolidates the common code related to
6251 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
6252 files into frame.c.
9443fcf6 6253
e072891b
KS
6254 * frame.c: Include blockinput.h.
6255 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
6256 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
6257 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
6258 related vars here.
6259 (struct frame_parm_table, frame_parms): New table for describing
6260 frame parameters and their associated Q-variable.
6261 The order of the parameters corresponds to the sequence of the
6262 frame_parm_handlers table in redisplay_interface.
6263 (x_fullscreen_move, x_set_frame_parameters)
6264 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
6265 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
6266 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6267 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
6268 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
6269 Generic functions for processing of frame parameters.
6270 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
6271 (display_x_get_resource, x_get_resource_string): Functions for
6272 generic access to X resources.
6273 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
6274 (x_default_parameter, Fx_parse_geometry): Functions for generic
6275 access to frame parameters.
6901b111
SM
6276 (x_figure_window_size): Generic calculation of frame size.
6277 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
6278 (syms_of_frame): Intern and staticpro frame parameter variables.
6279 Defvar_lisp Vx_resource_class and Vx_resource_name here.
6280 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 6281
e072891b
KS
6282 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
6283 parameter related vars defined in frame.c.
6284 (EMACS_CLASS): Define here.
6285 (enum FULLSCREEN_*): Define here.
6286 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
6287 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
6288 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
6289 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
6290 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
6291 (x_set_visibility, x_set_autoraise, x_set_autolower)
6292 (x_set_unsplittable, x_set_vertical_scroll_bars)
6293 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
6294 (x_figure_window_size): Add prototypes.
6295
6296 * dispextern.h (frame_parm_handler): New typedef.
6297 (struct redisplay_interface): New member frame_parm_handlers.
6298 (enum resource_types): Move declaration here.
6299 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
6300 (x_default_parameter): Add prototypes.
6301
6302 * window.c: Remove extern decl for frame parameter vars.
6303 (change_window_heights): New generic function;
6304 replaces x_change_window_heights. All users changed.
6305
6306 * window.h (change_window_heights): Add prototype.
6307
6308 * xfaces.c: Remove extern decl for frame parameter vars.
6309
6310 * xterm.h (EMACS_CLASS): Remove. Use generic define.
6311 (struct w32_display_info): Fix type of xrdb member.
6312 (enum FULLSCREEN_*): Remove.
6313 Remove prototypes for generic functions (in frame.h).
6314
6315 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
6316 parameters now defined in frame.h and frame.c.
f63fd14e 6317 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
6318 (enum x_frame_parms): Remove (bogus, unused enum).
6319 (check_x_display_info): Make non-static (for frame.c).
6320 (struct x_frame_parm_table, x_frame_parms): Remove.
6321 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
6322 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
6323 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6324 (x_change_window_heights, x_set_autoraise, x_set_autolower)
6325 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
6326 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
6327 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
6328 Remove. Use generic functions instead.
6329 (enum resource_types): Remove.
6330 (x_set_scroll_bar_default_width): New global function (for frame.c).
6331 (Fx_create_frame): Depend on x_figure_window_size to add space for
6332 toolbar and setup size_hint_flags.
6333 (x_frame_parm_handlers): New table for redisplay_interface.
6334 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 6335
e072891b 6336 * xterm.c: Remove unnecessary extern declarations.
f63fd14e 6337 (x_fullscreen_adjust): Remove. Use generic instead.
e072891b
KS
6338 (x_redisplay_interface): Add x_frame_parm_handlers member.
6339
6340 * w32gui.h (XrmDatabase): New (dummy) typedef.
6341
6342 * w32term.h (EMACS_CLASS): Remove. Use generic define.
6343 (struct w32_display_info): Fix type of xrdb member.
6344 (enum FULLSCREEN_*): Remove.
6345 (x_fullscreen_adjust): Remove prototype.
6346
6347 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
6348 parameters now defined in frame.h and frame.c.
f63fd14e 6349 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
6350 (enum x_frame_parms): Remove (bogus, unused enum).
6351 (check_x_display_info): Make non-static (for frame.c).
6352 (struct x_frame_parm_table, x_frame_parms): Remove.
6353 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
6354 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
6355 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6356 (x_change_window_heights, x_set_autoraise, x_set_autolower)
6357 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
6358 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
6359 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
6360 Remove. Use generic functions instead.
6361 (enum resource_types): Remove.
6362 (x_set_scroll_bar_default_width): New global function (for frame.c).
6363 (Fx_create_frame): Depend on x_figure_window_size to add space for
6364 toolbar and setup size_hint_flags.
6365 (w32_frame_parm_handlers): New table for redisplay_interface.
6366 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 6367
e072891b
KS
6368 * w32term.c: Remove unnecessary extern declarations.
6369 (x_fullscreen_adjust): Remove. Use generic instead.
6370 (x_redisplay_interface): Add w32_frame_parm_handlers member.
6371
6372 * w32reg.c (x_get_string_resource): Use XrmDatabase.
6373
6374 * macgui.h (XrmDatabase): New (dummy) typedef.
6375
6376 * macterm.h (EMACS_CLASS): Remove.
6377 (struct mac_display_info): Add xrdb member.
6378 (struct mac_output): Add want_fullscreen member.
6379
6380 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
6381 parameters now defined in frame.h and frame.c.
f63fd14e 6382 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
6383 (check_x_display_info): Make non-static (for frame.c).
6384 (struct x_frame_parm_table, x_frame_parms): Remove.
6385 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
6386 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
6387 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6388 (x_change_window_heights, x_set_autoraise, x_set_autolower)
6389 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
6390 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
6391 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
6392 Remove. Use generic functions instead.
6393 (enum resource_types): Remove.
6394 (x_set_scroll_bar_default_width): New global function (for frame.c).
6395 (mac_frame_parm_handlers): New table for redisplay_interface.
6396 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 6397
e072891b
KS
6398 * macterm.c: Remove unnecessary extern declarations.
6399 (x_redisplay_interface): Add mac_frame_parm_handlers member.
6400
3e6a560b
KS
6401 * Makefile.in (frame.o): Add dependency on blockinput.h and files
6402 included from it (atimer.h and systime.h).
6403
7b7b454e
AS
64042003-03-30 Andreas Schwab <schwab@suse.de>
6405
6406 * xdisp.c (x_insert_glyphs): Fix swapped width and height
6407 parameters for shift_glyphs_for_insert.
6408
6409 * macterm.c (x_redisplay_interface): Add missing entry for
6410 draw_vertical_window_border.
6411
beb402de
KG
64122003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
6413
6414 * fileio.c (Fexpand_file_name): In the no-handler case, after
6415 expanding, look again for a handler and invoke it. This is needed
6416 for filenames like "/foo/../user@host:/bar/../baz" -- the first
6417 expansion produces "/user@host:/bar/../baz" which needs to be
6418 expanded again for the finame result "/user@host:/baz".
6419
b676f356
JD
64202003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6421
6422 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
6423 of area to be redrawn for better performance.
6424
3c671a56
SM
64252003-03-28 Stefan Monnier <monnier@cs.yale.edu>
6426
6427 * xterm.c (take_vertical_position_into_account): Remove.
6428 (xt_action_hook): Call set_vertical_scroll_bar if needed.
6429 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
6430 (xm_scroll_callback, x_create_toolkit_scroll_bar)
6431 (x_set_toolkit_scroll_bar_thumb): Simplify.
6432 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
6433 (XTread_socket): Remove unused var.
6434 (x_make_frame_invisible): Replace goto with else.
6435
6436 * xdisp.c (set_vertical_scroll_bar): New fun.
6437 (redisplay_window): Use it.
6438
84f2e615
RS
64392003-03-26 Richard M. Stallman <rms@gnu.org>
6440
6441 * xdisp.c (update_tool_bar): Recompute tool bar if
6442 update_mode_lines is set. Set w->update_mode_line
6443 only if the tool bar contents actually change.
6444 (update_menu_bar): Undo previous change.
6445
70b6104c
JD
64462003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6447
5fd6f727
JD
6448 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
6449 (xg_frame_set_char_size): Calculate scroll bar width before frame
6450 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
6451 (xg_separator_p): Check for all documented separator types.
6452 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
6453 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
6454
70b6104c
JD
6455 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
6456 so tool bar gets updated.
6457
d9b36d19
SM
64582003-03-26 Stefan Monnier <monnier@cs.yale.edu>
6459
6460 * data.c (store_symval_forwarding): Re-instate part of the code
6461 that was deleted with too much enthusiasm.
6462
64632003-03-25 Stefan Monnier <monnier@cs.yale.edu>
6464
6465 * data.c (store_symval_forwarding): Delete special read-only
6466 hack for type == -1, since we now use ->constant instead.
6467 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
6468
6469 * buffer.c (overlays_in): Declare static.
6470 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
6471 `constant' field rather than the variable's `type' field.
6472
365fa1b3
AC
64732003-03-24 Andrew Choi <akochoi@shaw.ca>
6474
6475 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
6476
6477 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
6478
6479 * fns.c [MAC_OSX]: Do not redefine vector.
6480
6481 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
6482
6483 * macgui.h: Remove definition of No_Cursor.
6484
d9b36d19 6485 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
6486
6487 * xdisp.c: Define No_Cursor.
6488 (x_write_glyphs, notice_overwritten_cursor)
6489 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
6490 (note_mouse_highlight): Remove Mac-specific code.
6491 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 6492
c0bcce6f
JPW
64932003-03-24 John Paul Wallington <jpw@gnu.org>
6494
6495 * xdisp.c (redisplay_window): If mini window's buffer is not
6496 empty, then redisplay it like other windows.
6497
a526b96c
KS
64982003-03-23 Kim F. Storm <storm@cua.dk>
6499
6500 * w32term.c (w32_draw_window_cursor): Fix last change.
6501
37ab321e
KH
65022003-03-23 Kenichi Handa <handa@m17n.org>
6503
a526b96c
KS
6504 * alloc.c (make_string_from_bytes, make_specified_string):
6505 Add `const' for the arg CONTENTS.
37ab321e
KH
6506
6507 * lisp.h (make_string_from_bytes, make_specified_string):
6508 Prototypes adjusted.
6509
7863d625
JD
65102003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6511
a526b96c 6512 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 6513
7863d625
JD
6514 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
6515 (XG_SB_RANGE): New define.
6516
6517 * gtkutil.c (xg_fixed_handle_expose): New function.
6518 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
6519 expose events.
6520 (xg_update_scrollbar_pos): Take two more arguments, left and width
6521 of scroll bar including borders.
6522 Clear left and right part outside scroll bar separately as some
6523 themes have bars that are not an even number of pixels.
d9b36d19 6524 Don't set reallocate_redraws, don't call
7863d625
JD
6525 gdk_window_process_all_updates.
6526 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
6527 so no need to change it. Calculate size and value with XG_SB_RANGE.
6528
d9b36d19
SM
6529 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
6530 Pass left and width of scroll bar including borders to
7863d625
JD
6531 xg_update_scrollbar_pos.
6532
af0ad939
TTN
65332003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
6534
6535 * Makefile.in: Make sure space precedes end-of-line backslashes.
6536
b22139fd
KS
65372003-03-22 Kim F. Storm <storm@cua.dk>
6538
6539 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
6540 Add generic versions here. Remove system specific versions
6541 defined elsewhere.
6542
6543 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
6544 Add prototypes.
6545
6e6410cf
KS
6546 * xterm.h (STORE_NATIVE_RECT): New macro.
6547
5c9cc435
KS
65482003-03-21 Kim F. Storm <storm@cua.dk>
6549
00c64fab
SM
6550 * xdisp.c (get_glyph_string_clip_rect):
6551 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
6552
6553 * dispextern.h (struct redisplay_interface): Add active_p
6554 argument to draw_window_cursor member. All uses changed.
6555
acd37560
KS
65562003-03-21 Kim F. Storm <storm@cua.dk>
6557
6558 The following changes consolidate code related to writing and
6559 inserting glyphs, exposing frame, the tool bar, the mouse face,
6560 the output cursor, and help echo from xterm.c, w32term.c and
6561 macterm.c into xdisp.c. It also generalizes the use of the
6562 window_part enum instead of using numeric values throughout.
af0ad939 6563
acd37560
KS
6564 * xdisp.c: Consolidate gui-independent code here.
6565 Include keymap.h.
6566 (Qhelp_echo): Import.
6567 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
6568 (help_echo_string, help_echo_window, help_echo_object)
6569 (previous_help_echo_string, help_echo_pos): Declare here.
6570 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
6571 (estimate_mode_line_height): Define here. Handle windowing
6572 systems directly (without using estimate_mode_line_height_hook).
6573 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
6574 (update_window_cursor, update_cursor_in_window_tree)
6575 (fast_find_position, fast_find_string_pos)
6576 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
6577 (expose_area, expose_line, expose_overlaps, expose_window)
6578 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
6579 declared static as they are only used locally in xdisp.c.
6580 (draw_glyphs): Rename from x_draw_glyphs and make static.
6581 (tool_bar_item_info, notice_overwritten_cursor): Make static.
6582 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
6583 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 6584 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
6585 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
6586 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
6587 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
6588 (note_mouse_highlight, x_clear_window_mouse_face)
6589 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
6590 (x_intersect_rectangles): New generic functions for use by xdisp.c
6591 and GUI front-ends.
6592 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
6593 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
6594
6595 * dispextern.h (Display_Info): Generic typedef for *_display_info.
6596 (NativeRectangle): Generic typedef for rectangle type.
6597 (enum window_part): Move here from window.c.
6598 (struct redisplay_interface): New members flush_display_optional,
6599 define_frame_cursor, clear_frame_area, draw_window_cursor,
6600 draw_vertical_window_border, shift_glyphs_for_insert.
6601 Rename member clear_mouse_face to clear_window_mouse_face.
6602 (estimate_mode_line_height_hook): Remove hook.
6603 (auto_raise_tool_bar_buttons_p): Don't declare extern.
6604 (tool_bar_item_info): Remove prototype.
6605 (help_echo_string, help_echo_window, help_echo_object)
6606 (previous_help_echo_string, help_echo_pos)
6607 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
6608 (x_stretch_cursor_p, output_cursor): Declare extern.
6609 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
6610 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
6611 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
6612 (display_and_set_cursor, set_output_cursor, x_cursor_to)
6613 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
6614 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
6615 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
6616 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
6617 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
6618 Add prototypes.
6619 (mode_line_string, marginal_area_string): Fix prototypes.
6620
6621 * window.c (enum window_part): Move to dispextern.h.
6622 (coordinates_in_window): Use enum window_part member names
6623 instead of numbers to describe return value.
6624 (struct check_window_data): Change part member to window_part.
6625 (check_window_containing): Return window_part unaltered.
6626 (window_from_coordinates): Change part arg from int to enum
6627 window_part. Allow part arg to be null. All users changed.
6628
6629 * window.h (window_from_coordinates): Fix prototype.
6630
6631 * term.c (estimate_mode_line_height): Move to xdisp.c.
6632
6633 * keyboard.c (make_lispy_event): Use enum window_part.
6634
6635 * dispnew.c (mode_line_string, marginal_area_string): Use enum
6636 window_part instead of int in arg list. Users changed.
6637
6638 * xterm.h (No_Cursor): Declare as None for X.
6639 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 6640
acd37560
KS
6641 * xterm.c: Remove consolidated defines and code.
6642 (BETWEEN): Remove unused macro.
6643 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
6644 (x_define_frame_cursor, x_clear_frame_area)
6645 (x_draw_window_cursor): New X-specific functions for RIF.
6646 (x_redisplay_interface): Add new members.
6647
6648 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
6649
6650 * w32term.h (struct w32_output): Remove cross_cursor member.
6651
6652 * w32term.c: Remove consolidated defines and code.
6653 (BETWEEN): Remove unused macro.
6654 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
6655 (w32_define_frame_cursor, w32_clear_frame_area)
6656 (w32_draw_window_cursor): New W32-specific functions for RIF.
6657 (w32_redisplay_interface): Add new members.
6658
a64387ee 6659 * w32gui.h (No_Cursor): Define as 0 for W32.
acd37560
KS
6660 (XRectangle): Add X compatible rectangle type.
6661 (NativeRectangle): Declare as RECT for W32.
6662 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
6663
6664 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
6665
6666 * w32console.c: Remove consolidated defines and code.
af0ad939 6667
acd37560
KS
6668 * msdos.h (Display_Info): Add generic typedef.
6669
6670 * msdos.c: Remove consolidated defines and code.
6671 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
6672
6673 * macterm.h (struct mac_output): Replace member cross_cursor by
6674 hand_cursor.
6675 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
6676
6677 * macterm.c: Remove consolidated defines and code.
6678 (BETWEEN): Remove unused macro.
6679 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
6680 (mac_define_frame_cursor, mac_clear_frame_area)
6681 (mac_draw_window_cursor): New Mac-specific functions for RIF.
6682 (x_redisplay_interface): Add new members.
6683
6684 * macgui.h (No_Cursor): Define as 0 for Mac.
6685 (XRectangle): Add X compatible rectangle type.
6686 (NativeRectangle): Declare as Rect for Mac.
6687 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
6688
204ccab1
KS
6689 * macfns.c (x_set_mouse_color): Setup hand_cursor.
6690 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 6691
9443fcf6 6692 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
6693 included from it. Add dependency on keymap.h.
6694
6695 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
6696
8ba01a70 66972003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
6698
6699 * fileio.c (Fexpand_file_name): Fix previous change.
6700
8ba01a70 67012003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
6702
6703 * fileio.c (Ffile_name_directory): Reconstruct file name by
6704 make_specified_string.
6705 (Ffile_name_nondirectory, Ffile_name_as_directory)
6706 (Fdirectory_file_name, Fexpand_file_name)
6707 (Fsubstitute_in_file_name): Likewise.
6708 (Fread_file_name): Compare decoded homedir with DIR and
6709 DEFAULT_FILENAME.
6710
6711 * alloc.c (make_specified_string): If NCHARS is negative, count
6712 the number of characters.
6713
19536747
JD
67142003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6715
de38ae5a
JD
6716 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
6717 all widgets.
6718
19536747
JD
6719 * gtkutil.h: Removed xg_ignore_next_thumb.
6720
37ab321e 67212003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
6722
6723 * coding.c (Vchar_coding_system_table): Remove this variable.
6724 (Vcoding_system_safe_chars): New variable.
6725 (intersection): Remove this function.
6726 (find_safe_codings): Don't use Vchar_coding_system_table, but try
6727 all codings in SAFE_CODINGS.
00c64fab 6728 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
6729 find_safe_codings. Get generic coding systems from
6730 Vcoding_system_safe_chars.
6731 (Fdefine_coding_system_internal): New function.
6732 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
6733 Initialize and staticpro Vcoding_system_safe_chars.
6734
17097258
JD
67352003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6736
2a2071c3
JD
6737 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
6738 equal old values before updating.
6739
17097258
JD
6740 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
6741
6742 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
6743
67442003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6745
6746 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
6747 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
6748 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
6749 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
6750 (xg_create_scroll_bar): Pass bar to button event callback.
6751 (xg_find_top_left_in_fixed): New function.
6752 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
6753 whole scroll bar area. Get old position with
6754 xg_find_top_left_in_fixed, calculate and only clear needed areas.
6755 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
6756 dragging is in progress. Calculate whole as for Motif.
6757 Remove code that saved last values. Call gtk_range functions to
6758 set scroll bar sizes.
6759
6760 * gtkutil.h: Removed xg_ignore_next_thumb.
6761
8cb9dfbf
JB
67622003-03-17 Juanma Barranquero <lektu@terra.es>
6763
6764 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
6765 and files included from it.
6766
00c64fab
SM
67672003-03-18 Stefan Monnier <monnier@cs.yale.edu>
6768
6769 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
6770 multiple occurrences of the same keymap under different prefixes.
6771 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
6772
c45bb3b2
JR
67732003-03-16 Jason Rumney <jasonr@gnu.org>
6774
6775 * w32gui.h: Use HDC for Display.
6776
6777 * w32term.c (w32_encode_char): Prevent double-byte chars from
6778 crashing Emacs.
6779
6780 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
6781 as binary.
6782
2a6d0874
JB
67832003-03-16 Juanma Barranquero <lektu@terra.es>
6784
6785 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
6786
03eb5fab
KS
67872003-03-16 Kim F. Storm <storm@cua.dk>
6788
6789 The following changes consolidate some of the gui-independent
6790 parts of the processing and drawing of "glyph strings" from
6791 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 6792
03eb5fab
KS
6793 * dispextern.h (struct glyph): Reduce face_id member from 22 to
6794 21 bits (this reduces number of faces from 4M to 2M).
6795 Replace W32 specific w32_font_type member (2 bits) by generic
6796 font_type member (3 bits) for portability.
6797 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
6798 (enum draw_glyphs_face): Define here.
6799 (struct glyph_string): Define here. Merge W32 and X versions.
6800 (struct redisplay_interface): New members per_char_metric,
6801 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
6802 (VCENTER_BASELINE_OFFSET): Define here.
6803 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
6804 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
6805
6806 * xdisp.c: Consolidate gui-independent "glyph string" code here.
6807 (dump_glyph_string): Moved here.
6808 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
6809 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
6810 (fill_composite_glyph_string, fill_glyph_string)
6811 (fill_image_glyph_string, fill_stretch_glyph_string)
6812 (left_overwritten, left_overwriting, right_overwritten)
6813 (right_overwriting, get_char_face_and_encoding)
6814 (set_glyph_string_background_width, compute_overhangs_and_x)
6815 (append_glyph, append_composite_glyph, produce_image_glyph)
6816 (take_vertical_position_into_account, append_stretch_glyph)
6817 (produce_stretch_glyph): New generic functions (based on X version).
6818 Call platform specific functions through rif.
6819 (INIT_GLYPH_STRING): New macro, hides W32 details.
6820 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
6821 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
6822 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
6823 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
6824 (notice_overwritten_cursor):
6825 Generic functions exported to platform modules. Users changed.
6826
6827 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
6828 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
6829 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 6830 New macros for consolidated code.
2a6d0874 6831
03eb5fab
KS
6832 * xterm.c: Remove consolidated defines and code.
6833 (x_per_char_metric, x_encode_char)
6834 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
6835 (x_redisplay_interface): Add new members.
6836
6837 * w32gui.h (Display): Add dummy typedef for consolidation.
6838 (XChar2b): Define alias for wchar_t for consolidation.
6839 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
6840
6841 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 6842 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
6843 New macros for consolidation.
6844
fad49844 6845 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
6846 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
6847 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
6848 (w32_per_char_metric): Change font_type arg to int for RIF.
6849 (w32_encode_char): Return int according to RIF requirements.
6850 (w32_compute_glyph_string_overhangs): Adapt to RIF.
6851 (w32_get_glyph_overhangs): New function for RIF. Uses generic
6852 x_get_glyph_overhangs.
6853 (w32_redisplay_interface): Add new members.
6854
6855 * macgui.h (XChar2b): Move typedef here for consolidation.
6856 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
6857
6858 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
6859 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
6860 consolidation.
6861
6862 * macterm.c: Remove consolidated defines and code.
6863 (mac_per_char_metric): New function for RIF.
00c64fab 6864 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
6865 (mac_compute_glyph_string_overhangs): Adapt for RIF.
6866 (x_redisplay_interface): Add new members.
6867
00c64fab
SM
68682003-03-15 Stefan Monnier <monnier@cs.yale.edu>
6869
6870 * keymap.c (Vmenu_events): New var.
6871 (syms_of_keymap): Initialize it.
6872 (where_is_internal): Check more carefully what is a menu event.
6873
225c7a07
RS
68742003-03-14 Richard M. Stallman <rms@gnu.org>
6875
6876 * lread.c (read1): After #!, exit loop on eof.
6877
cea9be54
JD
68782003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6879
9ea0e54d
JD
6880 * gtkutil.h: Add declaration for xg_frame_cleared.
6881
0cb35f4e
JD
6882 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
6883
cea9be54
JD
6884 * gtkutil.c (struct xg_last_sb_pos): New structure.
6885 (handle_fixed_child): New function.
6886 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
6887 and force a redraw on them.
6888 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
6889 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
6890 so we can avoid unneeded redraws.
6891 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
6892 and force a redraw on the scroll bar.
6893 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
6894 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 6895 (xg_frame_cleared): New function.
cea9be54 6896
20b853f3
KH
68972003-03-13 Kenichi Handa <handa@m17n.org>
6898
6899 * coding.c (Fdetect_coding_region): Fix docstring.
6900 (Fdetect_coding_string): Fix docstring.
6901
7a555aff
AS
69022003-03-13 Andreas Schwab <schwab@suse.de>
6903
25cc0080
AS
6904 * gtkutil.c: Add prototype for create_menus.
6905
30225431
AS
6906 * data.c (long_to_cons): Fix type of top.
6907
6908 * xselect.c (selection_data_to_lisp_data): Use int instead of
6909 long for an integer of size 4.
6910
7a555aff 6911 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 6912 (xg_tool_bar_help_callback): Likewise.
7a555aff 6913
a3e4741f
AS
69142003-03-12 Andreas Schwab <schwab@suse.de>
6915
6916 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
6917
9668be7c
KS
69182003-03-12 Kim F. Storm <storm@cua.dk>
6919
03eb5fab 6920 The following changes consolidate the fringe handling from
9668be7c 6921 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 6922
9668be7c
KS
6923 * xdisp.c: Consolidate fringe handling code here.
6924 (left_bits, right_bits, continued_bits, continuation_bits)
6925 (ov_bits, zv_bits): Define fringe bitmaps.
6926 (fringe_bitmaps): New array holding fringe bitmaps.
6927 (draw_fringe_bitmap): Draw a specific bitmap; call display
6928 specific drawing routine via rif->draw_fringe_bitmap.
6929 (draw_row_fringe_bitmaps): Generic replacement for
6930 x_draw_row_fringe_bitmaps; all callers changed.
6931 (compute_fringe_widths): Generic replacement for
6932 x_compute_fringe_widths; all callers changed.
6933
6934 * dispextern.h (enum fringe_bitmap_type): Define here.
6935 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
6936 (fringe_bitmaps): Declare extern.
6937 (struct redisplay_interface): New member draw_fringe_bitmap.
6938 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
6939
6940 * xterm.c: Remove generic fringe code.
6941 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
6942 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
6943
6944 * w32term.c: Remove generic fringe code.
6945 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
6946 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 6947
9668be7c
KS
6948 * macterm.c: Remove generic fringe code.
6949 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
6950 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
6951
00a88f32
SM
69522003-03-11 Stefan Monnier <monnier@cs.yale.edu>
6953
6954 * print.c (Fprin1_to_string): Return unibyte string if possible.
6955
1d1de695
DK
69562003-03-09 David Kastrup <dak@gnu.org>
6957
6958 * process.c (read_process_output): We have allocated enough space
6959 for readmax and carryover, so actually use the alloted space.
6960
257f40f2
JD
69612003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6962
6963 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
6964 toolkit scrollbar click.
6965
6966 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
6967 for USE_GTK.
6968 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
6969 also.
6970 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
6971 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 6972
257f40f2
JD
6973 * gtkutil.h: Declare xg_get_scroll_id_for_window.
6974
6975 * gtkutil.c (xg_get_scroll_id_for_window): New function.
6976 (xg_tool_bar_item_expose_callback): New function.
6977 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
6978 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
6979 on the tool bar widget.
6980 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
6981 to expose on the tool bar item widgets.
6982
15213141
JD
69832003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6984
26b74a0b 6985 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 6986 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
6987 deleted from the image cache).
6988
15213141
JD
6989 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
6990 the event isn't for a frame (i.e. for dialogs).
6991
20b853f3 69922003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
6993
6994 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
6995 composition components reaches the limit, terminate composing.
6996 (COMPOSITION_OK): New macro.
00a88f32 6997 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
6998 composition is found.
6999 (coding_restore_composition): Adjust the number of composition
7000 components if it is not sane.
7001
c9029fe5
JB
70022003-03-06 Juanma Barranquero <lektu@terra.es>
7003
7004 * w32term.h (struct w32_display_info): Add xrdb member to support
7005 passing resources via -xrm on Windows.
7006
7007 * w32term.c (w32_make_rdb): New function.
7008 (w32_term_init): Use it to initialize xrdb member of w32_display_info
7009 struct. Delete leftover code.
7010
7011 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
7012 for resources passed on the command line.
7013
7014 * w32reg.c (w32_get_rdb_resource): New function.
7015 (x_get_string_resource): Use it, so resources passed with -xrm
7016 supercede the ones in the registry.
7017
9d00001f
JD
70182003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7019
7020 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
7021 instead of x_top_window_to_frame.
7022
ca2417b9
JD
70232003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7024
7025 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
7026 when restarting Emacs.
7027
5b20caf0
RS
70282003-03-03 Richard M. Stallman <rms@gnu.org>
7029
7030 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
7031 to run kill-buffer-query-functions.
7032 (Qkill_buffer_query_functions): New var.
7033 (syms_of_buffer): Init and staticpro it.
7034
58e91b77
JD
70352003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7036
7037 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
7038
932357b4
KS
70392003-02-25 Kim F. Storm <storm@cua.dk>
7040
7041 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
7042 If centering point failed to make whole line visible and vscroll
7043 is non-zero, disable vscroll and try centering point again.
7044
7045 * lread.c (read1): Accept `single space' syntax like (? x).
7046
bb8db7e1
JD
70472003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7048
7049 * keyboard.c (cancel_hourglass_unwind): Surround with
7050 #ifdef HAVE_X_WINDOWS
7051
47d77aab
KH
70522003-02-25 Kenichi Handa <handa@m17n.org>
7053
7054 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
7055 process only when "subprocesses" is defined.
7056
6a097c0c
SM
70572003-02-24 Stefan Monnier <monnier@cs.yale.edu>
7058
7059 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
7060
0b063c27
JB
70612003-02-24 Juanma Barranquero <lektu@terra.es>
7062
d1135afc
JB
7063 * callint.c (fix_command): Declare as static void and move before
7064 Fcall_interactively.
7065
0b063c27
JB
7066 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
7067 (syms_of_xdisp): Don't initialize Qwhen.
7068
0af912f0
JD
70692003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7070
7071 * keyboard.c (cancel_hourglass_unwind): New function.
7072 (command_loop_1): Cancel hourglass with unwind-protect.
7073
120d0a23
RS
70742003-02-23 Richard M. Stallman <rms@gnu.org>
7075
7076 * callint.c (fix_command): New subroutine, from Fcall_interactively.
7077 Detect (when ... (region-beginning)) etc.
7078 (Fcall_interactively): Call fix_command.
7079 (Qif, Qwhen): New variables.
7080 (syms_of_callint): Init and staticpro them.
0b063c27 7081
120d0a23
RS
7082 * regex.c (print_partial_compiled_pattern): Output to stderr.
7083
4ece81a6
KG
70842003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
7085
7086 * dired.c (directory_files_internal): Don't expand directory.
7087 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
7088 instead. From Lars Hansen <larsh@math.ku.dk>.
7089
e52bd6b7
SM
70902003-02-22 Stefan Monnier <monnier@cs.yale.edu>
7091
7092 * fns.c (string_to_multibyte): Remove unused var i.
7093 (Flanginfo): Fix int/Lisp_Object mixup.
7094 (void_call2): New fun.
7095 (Fmap_char_table): Use it in place of call2.
7096
7097 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
7098
7099 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
7100
7101 * keymap.c (copy_keymap_1): Make it static.
7102
7103 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
7104
c33ef7c4
JB
71052003-02-22 David Ponce <david@dponce.com>
7106
7107 * lread.c (Fload): Don't check STRING_MULTIBYTE.
7108
16782258
JD
71092003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7110
7111 * process.h: Removed subtty field from struct Lisp_Process.
7112
7113 * process.c (create_process): Remove setting of subtty.
7114 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
7115 (Fprocess_running_child_p, process_send_signal):
7116 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
7117 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
7118
3abeca61
KG
71192003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
7120
7121 * keymap.c (Fdefine_key): Doc fix.
7122
92a8ce63
JB
71232003-02-21 Juanma Barranquero <lektu@terra.es>
7124
7125 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
7126
7127 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
7128 POLLING_PROBLEM_IN_SELECT.
7129
7130 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
7131 Delete #undef of POLLING_PROBLEM_IN_SELECT.
7132
7133 * s/hpux10-20.h: New file.
7134
e52bd6b7
SM
7135 * process.c (wait_reading_process_input):
7136 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 7137
20f1ef2e
KH
71382003-02-20 Kenichi Handa <handa@m17n.org>
7139
32d0a9dc
KH
7140 * fontset.c (check_fontset_name): If NAME is nil, return the
7141 default fontset.
7142 (override_font_info): New function.
e52bd6b7 7143 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
7144 (Ffontset_info): If FONTSET is not the default fontset, merge
7145 FONTSET onto the copy of the default fontset, and work on that
7146 copy. Document that NAME nil means the default fontset.
7147 (Ffontset_font): Document that NAME nil means the default fontset.
7148
20f1ef2e
KH
7149 * process.c (setup_process_coding_systems): If the process's
7150 in/out descriptor is -1, do nothing.
7151
77d1daf2
AS
71522003-02-19 Andreas Schwab <schwab@suse.de>
7153
e52bd6b7
SM
7154 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
7155 Add prototypes.
77d1daf2 7156
f9a45bb3
KH
71572003-02-19 Kenichi Handa <handa@m17n.org>
7158
7159 * xfaces.c (try_alternative_families): Try all scalable fonts if
7160 Vscalable_fonts_allowed is not Qt.
7161
72ecb43c
JD
71622003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7163
7164 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
7165
ee5be7c3
JD
71662003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7167
7168 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
7169 names.
7170
7171 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 7172 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
7173 x_face_list_fonts.
7174 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
7175 (Fx_list_fonts): Set maxnames to -1 to get all font names.
7176
4cd519a7
KS
71772003-02-18 Kim F. Storm <storm@cua.dk>
7178
068f9882
KS
7179 * lread.c (read1): Fix last change.
7180 "`" is not always special. Allow "?" after a character constant.
4cd519a7 7181
7290a344
AC
71822003-02-18 Andrew Choi <akochoi@shaw.ca>
7183
7184 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
7185
1f7fa69b
AS
71862003-02-18 Andreas Schwab <schwab@suse.de>
7187
7188 * window.c (window_scroll_pixel_based): Move outside a
7189 multi-glyph character before setting new window start.
7190
7191 * xdisp.c (in_display_vector_p): New function.
7192 * dispextern.h (in_display_vector_p): Declare.
7193
23e21195
KS
71942003-02-18 Kim F. Storm <storm@cua.dk>
7195
7196 * lread.c (read1): Fix and relax read syntax.
7197 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
7198 Only recognize "," after dotted-pair dot if inside backquote.
7199 Never include "`" or "," (inside backquote) in a symbol.
7200 Allow dotted-pair dot after a character constant.
7201 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 7202
f098b121
JD
72032003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7204
7205 * gtkutil.c (xg_tool_bar_expose_callback): New function.
7206 (xg_create_tool_bar): Force style of tool bar to be horizontal with
7207 icons. Set name of tool bar to emacs-toolbar.
7208 (update_frame_tool_bar): Connect expose event to
7209 xg_tool_bar_expose_callback.
7210
63020c46
RS
72112003-02-17 Richard M. Stallman <rms@gnu.org>
7212
7213 * keyboard.c (this_command_key_count_reset): New variable.
7214 Initiatize to 0 where this_command_key_count is set.
7215 (read_char): Save and restore this_command_key_count_reset
7216 around input method code.
7217 (read_char): If this_command_key_count_reset, echo reread commands.
7218 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
7219
fb4452cc
KH
72202003-02-17 Kenichi Handa <handa@m17n.org>
7221
7222 * fns.c (string_to_multibyte): Always return a multibyte string.
7223
bd11cc09
JR
72242003-02-16 Jason Rumney <jasonr@gnu.org>
7225
e52bd6b7
SM
7226 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
7227 Negative max_fonts parameter means list all.
bd11cc09 7228
4cdf4bde
DL
72292003-02-14 Dave Love <fx@gnu.org>
7230
7231 * fns.c (Flanginfo): Doc fix.
7232
023b93f6
KS
72332003-02-13 Kim F. Storm <storm@cua.dk>
7234
37cd4238
KS
7235 * lread.c (read_escape): Interpret \s as a SPACE character, except
7236 for \s-X in a character constant which still is the super modifier.
7237 (read1): Signal an `invalid read syntax' error if a character
7238 constant is immediately followed by a digit or symbol character.
7239
140a6b7e
KS
7240 * search.c (Fmatch_data): Doc fix. Explicitly state that
7241 match-data is undefined if last search failed.
7242
023b93f6
KS
7243 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
7244 All uses changed.
7245
7d5c86e5
JB
72462003-02-12 Juanma Barranquero <lektu@terra.es>
7247
7248 * eval.c (Fdefmacro): Fix typo.
7249
295fff2c
KS
72502003-02-12 Kim F. Storm <storm@cua.dk>
7251
7252 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
7253 macro is a string, convert meta modifiers in string when copying
7254 the string into a vector.
7255
60f3202d
KS
72562003-02-11 Kim F. Storm <storm@cua.dk>
7257
7258 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
7259
61cb0b53
KH
72602003-02-11 Kenichi Handa <handa@m17n.org>
7261
7262 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
7263
7392e23c
KS
72642003-02-10 Kim F. Storm <storm@cua.dk>
7265
7266 * process.c: Doc fixes.
7267 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
7268
ce4254bd
KH
72692003-02-10 Kenichi Handa <handa@m17n.org>
7270
9c7a329a
KH
7271 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
7272
ce4254bd
KH
7273 * process.c (QCfilter_multibyte): New variable.
7274 (setup_process_coding_systems): New function.
e52bd6b7
SM
7275 (Fset_process_buffer, Fset_process_filter):
7276 Call setup_process_coding_systems.
ce4254bd
KH
7277 (Fstart_process): Initialize the member `filter_multibyte' of
7278 struct Lisp_Process.
7279 (create_process): Call setup_process_coding_systems.
7280 (Fmake_network_process): New keyward `:filter-multibyte'.
7281 Initialize the member `filter_multibyte' of struct Lisp_Process.
7282 Call setup_process_coding_systems.
7283 (server_accept_connection): Call setup_process_coding_systems.
7284 (read_process_output): If the process has a filter, decide the
7285 multibyteness of a string to given to the filter by
7286 `filter_multibyte' member of the process. If the process doesn't
7287 have a filter and the result of conversion is unibyte, use
7288 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
7289 multibyte form.
7290 (Fset_process_coding_system): Call setup_process_coding_systems.
7291 (Fset_process_filter_multibyte): New function.
7292 (Fprocess_filter_multibyte_p): New function.
7293 (syms_of_process): Intern and staticpro QCfilter_multibyte.
7294 Defsubr Sset_process_filter_multibyte and
7295 Sprocess_filter_multibyte_p.
7296
7297 * process.h (struct Lisp_Process): New member filter_multibyte.
7298
7299 * lisp.h (setup_process_coding_systems): Add prototype.
7300
7301 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
7302 process, update coding systems for the process.
7303
b08d5f59
KH
73042003-02-09 Kenichi Handa <handa@m17n.org>
7305
7306 * fns.c (string_to_multibyte): New function.
7307 (Fstring_to_multibyte): New function.
7308 (syms_of_fns): Defsubr it.
7309
0dfd93c0
AS
73102003-02-08 Andreas Schwab <schwab@suse.de>
7311
7312 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
7313 instead of the substitution.
7314
7b76ca1c
JD
73152003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7316
7317 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
7318
7319 * xmenu.c (menu_position_func): Adjust menu popup position so that
7320 the menu is fully visible.
7b76ca1c 7321
2436a4e4
JD
73222003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7323
7324 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
7325 (x_make_frame_invisible, x_wm_set_icon_position):
7326 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
7327
7328 * xfns.c (x_set_name, x_set_title): Ditto.
7329
37d1e680
RS
73302003-02-04 Richard M. Stallman <rms@gnu.org>
7331
7332 * keyboard.c (echo_now): Update before_command_echo_length.
7333 (Freset_this_command_lengths): Reset this_command_key_count etc.
7334 immediately rather than arranging to do it later.
7335 (before_command_key_count_1, before_command_echo_length_1)
7336 (before_command_restore_flag): Vars deleted.
7337 (add_command_key): Don't handle before_command_restore_flag.
7338 (read_char, record_menu_key): Don't update before_command_key_count or
7339 before_command_echo_length.
7340 (read_char): Don't handle before_command_restore_flag.
7341
7342 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
7343 in direct-output clauses if it wouldn't be called in the ordinary case.
7344
578846a3
KS
73452003-02-04 Kim F. Storm <storm@cua.dk>
7346
7347 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
7348
49853a4d
JD
73492003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7350
7351 * gtkutil.c (remove_from_container): Copying list is not needed.
7352 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
7353 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
7354 on list returned from gtk_container_get_children to avoid memory leak.
7355
8b53dc06
JR
73562003-02-01 Jason Rumney <jasonr@gnu.org>
7357
5d54d177
JR
7358 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
7359 local malloc.
7360 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
7361 definitions in xpm.h.
7362 (init_xpm_functions): New function.
f63fd14e 7363 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5d54d177
JR
7364 (init_external_image_libraries): Try to load libXpm.dll.
7365
8b53dc06
JR
7366 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
7367 timestamp.
7368
b222e415
DL
73692003-01-31 Dave Love <fx@gnu.org>
7370
7371 * syntax.c (Fskip_chars_forward)
7372 (open-paren-in-column-0-is-defun-start): Doc fix.
7373
c60ee5e7
JB
73742003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
7375
7376 * fileio.c: Support // at start of name for Cygwin (just added proper
7377 preprocessor tests).
7378
7379 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
7380
7381 * Makefile.in: Use @EXEEXT@ for Cygwin.
7382
7383 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
7384
7385 * s/cygwin.h: Added for Cygwin port.
7386
53b37591
JB
73872003-01-31 Juanma Barranquero <lektu@terra.es>
7388
7389 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
7390 when including gif_lib.h.
fe929957 7391 (init_gif_functions, init_tiff_functions): New functions.
f63fd14e
JB
7392 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
7393 Windows. Disable color table lookups. Call library functions
53b37591 7394 through pointers determined at runtime.
fe929957
JB
7395 (init_external_image_libraries): Try to load libungif.dll and
7396 libtiff.dll.
53b37591 7397
45415a8f
KH
73982003-01-31 Kenichi Handa <handa@m17n.org>
7399
7400 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 7401 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 7402
a97e4138
JD
74032003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7404
e52bd6b7 7405 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 7406
6eed9bed
DL
74072003-01-30 Dave Love <fx@gnu.org>
7408
7409 * alloc.c (Vgc_elapsed, gcs_done): New variables.
7410 (Fgarbage_collect): Use them.
7411 (init_alloc, syms_of_alloc): Set them up.
7412
100dcd40
JB
74132003-01-30 Juanma Barranquero <lektu@terra.es>
7414
7415 * w32fns.c (init_external_image_libraries): Add missing operator.
7416
fbd852af
JR
74172003-01-29 Jason Rumney <jasonr@gnu.org>
7418
7419 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
7420 an alternative name for jpeg.dll.
7421
8a2d8020
KH
74222003-01-29 Kenichi Handa <handa@m17n.org>
7423
7424 * xdisp.c (set_cursor_from_row): Pay attention to string display
7425 properties.
7426
058c18c7
AC
74272003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
7428
7429 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
7430 <escape>.
7431 (keycode_to_xkeysym_table): Reformat and add more comments.
7432 (XTread_socket): Drop special case for backspace.
7433
385f11cf
AC
74342003-01-28 Andrew Choi <akochoi@shaw.ca>
7435
7436 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
7437 values in old-style RGB specs.
7438
c922a224
JB
74392003-01-27 Juanma Barranquero <lektu@terra.es>
7440
7441 * w32fns.c (init_external_image_libraries): Try alternate names for the
7442 jpeg dll.
7443
0a1d6de0
JD
74442003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7445
7446 * gtkutil.c (create_dialog, xg_separator_p)
7447 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
7448 before calling strcmp or strlen.
7449
a97e4138 74502003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
7451
7452 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
7453 and handle image load failure.
7454
28908312
JR
74552003-01-26 Jason Rumney <jasonr@gnu.org>
7456
7457 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
7458 New functions.
f63fd14e
JB
7459 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
7460 Disable color table lookups. Call jpeg library functions
28908312
JR
7461 through pointers determined at runtime.
7462 (init_external_image_libraries): Try to load jpeg.dll.
7463
84e47416
RS
74642003-01-25 Richard M. Stallman <rms@gnu.org>
7465
7466 * lisp.h: Declare format2 instead of format1.
7467
7468 * fileio.c (barf_or_query_if_file_exists):
7469 Call format2 instead of format1.
7470
7471 * editfns.c (format2): New function, replaces format1
7472 but takes exactly two Lisp Objects as format args.
7473
7474 * buffer.c (Fkill_buffer): Call format2 instead of format1.
7475
a97e4138 74762003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
7477
7478 * xterm.h: Change to return value of x_dispatch_event to int.
7479
7480 * xterm.c (x_filter_event): New function.
7481 (event_handler_gdk, XTread_socket): Call x_filter_event.
7482 (x_dispatch_event): Change to return value of finish.
7483 (event_handler_gdk): Use return value from x_dispatch_event.
7484
7485 * xfns.c (x_window): Call create_frame_xic for GTK version to
7486 initialize input methods.
7487
7488 * gtkutil.h: Add (void) prototypes.
7489
7490 * gtkutil.c (create_menus): Remove code that puts the help menu to
7491 the right.
7492
54eefef1
JR
74932003-01-25 Jason Rumney <jasonr@gnu.org>
7494
7495 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
7496 [HAVE_PNG]: Sync with xfns.c version.
f63fd14e
JB
7497 (png_load): Adjust colors for Windows. Use Windows
7498 bitmaps. Disable color table lookups.
c262430d
JR
7499 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
7500 (init_png_functions): New function.
7501 (png_read_from_memory, png_load): Call png library functions
7502 through pointers determined at runtime.
7503 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
7504 (init_external_image_libraries): New function.
7505 (init_xfns): Call it.
54eefef1 7506
1a9e275b
AS
75072003-01-24 Andreas Schwab <schwab@suse.de>
7508
7509 * minibuf.c (Fminibuffer_message): Verify type of parameter.
7510
a97e4138 75112003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
7512
7513 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
7514 of static initializer.
7515
422eec7e
DL
75162003-01-24 Dave Love <fx@gnu.org>
7517
7518 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
7519 architectures.
7520
7521 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
7522 Use __alignof__.
7523
2a026b04
KH
75242003-01-24 Kenichi Handa <handa@m17n.org>
7525
7526 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 7527 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
7528 (command_loop_1): Call adjust_point_for_property with proper
7529 second arg.
7530
a18bb28d
JR
75312003-01-22 Jason Rumney <jasonr@gnu.org>
7532
7533 Sync changes with xterm.c and xfns.c.
7534
7535 * w32term.c (x_draw_glyph_string_foreground)
7536 (x_draw_composite_glyph_string_foreground): Implement overstriking.
7537
7538 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
7539 phys_cursor's hpos is overwritten. This is still not completely
7540 correct, as it doesn't really make sense to use hpos at all to
7541 get the cursor glyph (as that is relative to the width of the
7542 characters on the line, which may have changed during the update).
7543
7544 * w32term.c (notice_overwritten_cursor): Handle the special case
7545 of the cursor being in the first blank non-text line at the
7546 end of a window.
7547
7548 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
7549 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
7550 Compute from the x position returned by x_draw_glyphs.
7551
7552 (x_display_and_set_cursor): Don't set phys_cursor_width here,
7553 except for NO_CURSOR and system caret, to make phys_cursor_width
7554 contain what its name suggests.
7555 (notice_overwritten_cursor): Consider the cursor image erased if
7556 the output area intersects the cursor image in y-direction.
7557
6a097c0c
SM
7558 * w32term.c (note_mode_line_or_margin_highlight): Rename from
7559 note_mode_line_highlight and extend.
a18bb28d
JR
7560
7561 * w32term.c (last_window): New variable.
7562 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
7563 (note_mouse_movement): Remove reimplemented code in #if 0.
7564
7565 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
7566 not update_mode_lines, and always set it to 1.
7567
ac6e47ef
JR
75682003-01-21 Jason Rumney <jasonr@gnu.org>
7569
7570 * w32fns.c (IDC_HAND): Define it if system headers don't.
7571
75722003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
7573
7574 * w32term.h (struct w32_output): New member hand_cursor.
7575 (WM_EMACS_SETCURSOR): New message definition.
7576
7577 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
7578 function w32_define_cursor.
7579 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
7580 position, change member name output_data.x to output_data.w32 and
7581 add function w32_define_cursor.
7582 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
7583 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
7584 (w32_initialize_display_info):
7585 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
7586
7587 * w32fns.c (Vx_hand_shape): New variable.
7588 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
7589 WM_EMACS_SETCURSOR.
7590 (x-create-frame): Setup Cursor types.
7591
ceb39a17
JB
75922003-01-21 David Ponce <david@dponce.com>
7593
ac6e47ef 7594 * w32term.c (w32_encode_char): For DIM=1 charset, set
f63fd14e 7595 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
ac6e47ef 7596 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 7597 2002-09-30.)
ac6e47ef
JR
7598 (w32_draw_relief_rect): Declare all args.
7599 (w32_define_cursor): New.
7600
7601 * w32fns.c (w32_load_cursor): New function.
7602 (w32_init_class): Use it.
7603 (x_put_x_image): Declare all args.
7604
46cf0bed
JB
76052003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
7606
7607 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
7608
a97e4138 76092003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
7610
7611 * gtkutil.c: Must include stdio.h before termhooks.h
7612
83fc9c63
DL
76132003-01-21 Dave Love <fx@gnu.org>
7614
7615 * alloc.c (Fgc_status): Print zombie list.
7616 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
7617 Fix assignment of zombies.
7618 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
7619 Don't take car of non-cons.
7620
7621 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7622
7623 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7624
fe04b8c8
JR
76252003-01-20 David Ponce <david@dponce.com>
7626
7627 * w32menu.c (digest_single_submenu): Declare all args.
7628
7629 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
7630 changes in xmenu.c:
7631
7632 (parse_single_submenu): Use individual keymap's prompt
7633 string as pane name, if there is one.
7634 (set_frame_menubar): Save menu_items_n_panes from each call to
7635 parse_single_submenu and use it when calling digest_single_submenu.
7636
539e69a9
ST
76372003-01-20 Steven Tamm <steventamm@mac.com>
7638
7639 * macterm.c (XTread_socket): Checks for valid, visible window
7640 before sending a scroll-wheel event.
7641
675d000f
RS
76422003-01-20 Richard M. Stallman <rms@gnu.org>
7643
7644 * xdisp.c (redisplay_window): If mini window's buffer is not
7645 a minibuffer, then redisplay it like other windows.
7646
a97e4138 76472003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
7648
7649 * gtkutil.c (xg_create_frame_widgets): Check if there is an
7650 external tool bar before setting tool bar height.
7651
048addec
JD
76522003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7653
7654 * xterm.c (handle_one_xevent): Surround popup_activated
7655 with #ifdef:s for non-toolkit version.
7656
7657 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
7658 (gtkutil.o): New file.
7659 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
7660 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
7661
7662 * gtkutil.c: New file for GTK version.
7663
7664 * gtkutil.h: New file for GTK version.
7665
7666 * xterm.h: Add xt_or_gtk_widget.
7667 Include gtk files for USE_GTK.
7668 (struct x_output): Add toolbar_height.
7669 (struct x_output): Add GTK widgets and Gdk size_hints.
7670 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
7671 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
7672 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
7673
7674 * xterm.c: Include gtkutil.h for USE_GTK.
7675 Declare extern void free_frame_menubar for USE_GTK.
7676 (note_mouse_highlight): Check popup_activated for USE_GTK.
7677 (xt_action_hook): Don't compile if USE_GTK.
7678 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
7679 (xg_scroll_callback): New function.
7680 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
7681 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
7682 for USE_GTK.
7683 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
7684 xg_show_scroll_bar for USE_GTK.
7685 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
7686 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
7687 (event_handler_gdk): New function for USE_GTK.
7688 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
7689 (handle_one_xevent): Make sure widget is mapped before
7690 calling x_real_positions for USE_GTK.
7691 (XTread_socket): Add GTK event loop for USE_GTK.
7692 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
7693 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
7694 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
7695 (x_iconify_frame): Add code for USE_GTK.
7696 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
7697 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
7698 is in gtkutil.c.
7699 (x_term_init): Add initialization for GTK.
7700 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
7701
7702 * xmenu.c: Include gtkutil.h for USE_GTK.
7703 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
7704 (single_menu_item, single_menu_item, Fx_popup_dialog):
7705 Check for USE_GTK.
048addec
JD
7706 (popup_widget_loop): New function for USE_GTK.
7707 (x_activate_menubar): Add code for USE_GTK.
7708 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
7709 (menu_highlight_callback, menubar_selection_callback):
7710 Add USE_GTK versions.
048addec
JD
7711 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
7712 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
7713 (free_frame_menubar): Only compile if not USE_GTK. GTK version
7714 is in gtkutil.c.
7715 (popup_selection_callback): New version for USE_GTK.
7716 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 7717 one USE_X_TOOLKIT version.
048addec
JD
7718 (xmenu_show): Call create_and_show_popup_menu.
7719 (dialog_selection_callback): New version for USE_GTK.
7720 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 7721 one USE_X_TOOLKIT version.
048addec
JD
7722 (xdialog_show): Call create_and_show_dialog.
7723
7724 * xfns.c: Include gtkutil for USE_GTK.
7725 (x_window_to_frame, x_any_window_to_frame)
7726 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
7727 (x_top_window_to_frame): Add code for USE_GTK.
7728 (x_set_background_color): Call xg_set_background_color for GTK.
7729 (x_set_menu_bar_lines): Check for USE_GTK.
7730 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
7731 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
7732 (x_window): Call xg_create_frame_widgets for USE_GTK.
7733 (Fx_create_frame): Check for USE_GTK
7734 (Fx_file_dialog): New implementation for USE_GTK.
7735
7736 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
7737 (update_menu_bar): Add check for USE_GTK.
7738 (update_tool_bar): Add check for USE_GTK and external tool bar.
7739 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
7740 (redisplay_internal): Add check for USE_GTK and popup_activated.
7741 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
7742 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
7743 (display_menu_bar): Add check for USE_GTK
7744
7745 * lisp.h: Declare Vx_resource_name extern.
7746
a64387ee 7747 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
048addec
JD
7748 for USE_GTK.
7749 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
7750
7751 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
7752 (FRAME_EXTERNAL_TOOL_BAR): New macro.
7753 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
7754
7755 * fileio.c (Fread_file_name): Add check for USE_GTK.
7756
6bdb309a
SM
7757 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
7758 Add check for USE_GTK.
048addec
JD
7759
7760 * config.in: Added HAVE_GTK
7761
7762 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
7763
77642003-01-18 Stefan Monnier <monnier@cs.yale.edu>
7765
7766 * charset.h (Funibyte_char_to_multibyte): Export.
7767
77682003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7769
7770 * xmenu.c (mouse_position_for_popup): New function.
7771 (Fx_popup_menu): Call mouse_position_for_popup for X and
7772 mouse_position_hook for others.
7773
77742003-01-17 Kim F. Storm <storm@cua.dk>
7775
7776 * editfns.c (Finsert): Mention `string-make-multibyte' and
7777 `string-as-multibyte' in doc string.
7778
77792003-01-17 Kenichi Handa <handa@m17n.org>
7780
7781 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 7782
048addec
JD
7783 * editfns.c (Fformat): Convert an unibyte char argument that is
7784 formatted by "%c" to multibyte if the total result must be a
7785 multibyte string.
cd7df9c0 7786
048addec 77872003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 7788
048addec
JD
7789 * process.c (set-process-filter): Document unibyte/multibyte-ness
7790 of string argument.
56210ecd 7791
048addec 77922003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 7793
048addec 7794 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 7795
048addec
JD
7796 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
7797 (re_search_2): Likewise.
6df8b9fe 7798
048addec 77992003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 7800
048addec
JD
7801 * xdisp.c (message_dolog): Fix bug of the case that *Message*
7802 buffer is unibyte.
292ddc31 7803
048addec 78042003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 7805
048addec 7806 * fns.c (Fsubstring): Clarify doc string.
292ddc31 7807
048addec
JD
7808 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
7809 (Fprevious_char_property_change)
7810 (Fnext_single_char_property_change)
7811 (Fprevious_single_char_property_change, Fnext_property_change)
7812 (Fnext_single_property_change, Fprevious_property_change)
7813 (Fprevious_single_property_change, Fadd_text_properties)
7814 (Fput_text_property, Fset_text_properties)
7815 (Fremove_text_properties, Fremove_list_of_text_properties)
7816 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 7817
048addec 78182003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 7819
048addec
JD
7820 * process.h (struct Lisp_Process): New member plist replaces old
7821 member private_vars. All uses changed.
63e4e4c6 7822
048addec 7823 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 7824 (QCplist): Rename from QCvars. Change all uses.
048addec 7825 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 7826 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 7827 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 7828 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 7829
048addec 78302003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 7831
6bdb309a 7832 * m/delta.h: Remove (obsolete).
e833850f 7833
048addec 78342003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 7835
048addec
JD
7836 * fileio.c (Fdelete_directory, Fdelete_file): Document the
7837 behaviour in front of symlinks.
7838 (Fdelete_file): Raise an error on directories.
817cb127 7839
048addec 78402003-01-13 Dave Love <fx@gnu.org>
817cb127 7841
048addec 7842 * fns.c (Freverse): Use QUIT.
3e8cf2ea 7843
048addec 78442003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 7845
048addec
JD
7846 * minibuf.c (minibuffer_completion_contents):
7847 Error if point is inside prompt.
3e8cf2ea 7848
048addec
JD
7849 * keyboard.c (command_loop_1): Don't redisplay directly
7850 if there's a post-command-hook.
3e8cf2ea 7851
048addec
JD
7852 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
7853 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 7854
048addec 78552003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 7856
048addec 7857 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 7858
048addec
JD
7859 * process.c (QCvars): New variable.
7860 (syms_of_process): Intern and staticpro it.
7861 (Fset_process_contact): Removed function.
7862 (Fprocess_variable, Fset_process_variable): New functions.
7863 (syms_of_process): Defsubr them.
7864 (Fstart_process): Initialize private_vars plist to nil.
7865 (Fmake_network_process): New arg :vars to setup the private
7866 variables for new network process.
7867 (server_accept_connection): Copy server's private variables to
7868 client process.
2c10f029 7869
048addec
JD
7870 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
7871 crashes). Code rewritten and simplified. Now directly aligns the
7872 pointer and recalculates pure_bytes_used, rather than aligning the
7873 size and adjusting the pointer.
b8a76c6c 7874
048addec 78752003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 7876
048addec
JD
7877 * process.c (Fset_process_contact): New function.
7878 (syms_of_process): defsubr it.
7879 (make-network-process): Update doc.
3a8d0899 7880
048addec 78812003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 7882
048addec
JD
7883 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
7884 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 7885
048addec 78862003-01-10 Dave Love <fx@gnu.org>
4abc7470 7887
048addec 7888 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 7889
048addec 78902003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 7891
048addec
JD
7892 * process.c (Fmake_network_process): Convert new port number
7893 to host byte order for `:service t' case. From Mario Lang.
bf338245 7894
048addec 78952003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 7896
048addec
JD
7897 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
7898 instead of XtAppProcessEvent.
bf338245 7899
048addec
JD
7900 * xterm.c (handle_one_xevent): New function.
7901 (x_dispatch_event): New function.
7902 (XTread_socket): Call handle_one_xevent.
bf338245 7903
048addec 7904 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 7905
048addec
JD
7906 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
7907 call XQueryPointer to get coordinates.
7908 (popup_get_selection): Do not set popup_activated_flag to zero,
7909 let popup_deactivate_callback do that. Needed for Motif.
7910 Call x_dispatch_event instead of XtDispatchEvent.
7911 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 7912
048addec 79132003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 7914
6bdb309a 7915 * process.c (server_accept_connection): Fix recording of new
048addec
JD
7916 connection's local address in :local property of contact info.
7917 (Fmake_network_process): Record local network address for new
7918 client processes in :local property of contact info.
6bdb309a 7919 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 7920
048addec 79212003-01-07 Dave Love <fx@gnu.org>
00e3ab56 7922
048addec 7923 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 7924
048addec 79252003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 7926
048addec 7927 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 7928
048addec
JD
7929 * eval.c (Fuser_variable_p): Doc change. For custom variables,
7930 use the same test as for custom-variable-p.
8c6d74c6 7931
048addec 79322003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 7933
048addec
JD
7934 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
7935 Count LAST_LINE_MISFIT in scroll margin for end of window.
7936 Move label too_near_end before setting SCROLL_MARGIN_POS.
7937 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 7938
048addec
JD
7939 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
7940 scroll_conservatively case. If scrolling that much doesn't change
7941 STARTP, move it down one line.
e833850f 7942
048addec
JD
7943 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
7944 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 7945
048addec
JD
7946 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
7947 selected frame.
8c6d74c6 7948
048addec
JD
7949 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
7950 (syms_of_keymap): staticpro them.
7951 (Fapropos_internal): Initialize them and clear them out.
7952 Don't GCPRO them.
8c6d74c6 7953
048addec
JD
7954 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
7955 Doc fixes.
8c6d74c6 7956
048addec
JD
7957 * lisp.h: New misc type Lisp_Save_Value.
7958 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
7959 (XSAVE_VALUE): New macro.
7960 (struct Lisp_Save_Value): New data type.
7961 (union Lisp_Misc): Add u_save_value alternative.
7962 (make_save_value): Declared.
8c6d74c6 7963
048addec 7964 * alloc.c (make_save_value): New function.
8c6d74c6 7965
048addec
JD
7966 * xterm.c (x_catch_errors): Save dpy using make_save_value.
7967 (x_catch_errors_unwind): Call XSync.
8c6d74c6 7968
048addec 79692003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 7970
048addec 7971 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 7972
048addec
JD
7973 * keyboard.c (command_loop_1): Call adjust_point_for_property
7974 in direct action cases for Qforward_char and Qbackward_char.
7975 Set already_adjusted so it won't be done twice.
8c6d74c6 7976
048addec 79772002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
8c6d74c6 7978
048addec
JD
7979 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
7980 type definition of size_t.
8c609cff 7981
048addec 79822003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 7983
048addec
JD
7984 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
7985 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 7986
048addec 79872002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 7988
048addec
JD
7989 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
7990 to default to t.
fa634a5e 7991
048addec 79922002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 7993
048addec 7994 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 7995
048addec 79962002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 7997
048addec
JD
7998 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
7999 allow building in a different directory than source. Uses some
8000 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 8001
048addec 80022002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 8003
048addec
JD
8004 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
8005 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
8006 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
8007 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 8008
048addec 80092002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 8010
048addec
JD
8011 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
8012 <scroll-down-aggressively>: Doc fix.
2155ecf3 8013
048addec
JD
8014 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
8015 string as pane name, if there is one.
8016 (set_frame_menubar): Save menu_items_n_panes from each call to
8017 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 8018
048addec
JD
8019 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
8020 Don't try to make last line fully visible if it is past end of window.
61f1d295 8021
048addec 80222002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 8023
048addec
JD
8024 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
8025 (mac_menu_show): Add support for hierarchical popup menus.
8026 (add_menu_item): Remove indentation support.
8027 (fill_submenu, fill_menu): Create hierarchical menus
8028 instead of using indentation.
0b17a217 8029
048addec 80302002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 8031
048addec
JD
8032 * xdisp.c (try_cursor_movement): Don't call try_window here.
8033 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 8034
048addec 8035 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 8036
048addec 80372002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 8038
048addec
JD
8039 * macterm.c (XTread_socket): Call KeyTranslate for control and
8040 meta to deal correctly shifted non-alpha characters, like C-S-5
8041 being treated like C-%. Does not look for shift key to deal
8042 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 8043
048addec 80442002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 8045
048addec
JD
8046 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
8047 If it is non-nil, run timers. Use an unwind-protect to requeue
8048 the events that were read ahead.
8049 (popup_get_selection_unwind): New subroutine.
8050 (popup_get_selection_queue): File-scope variable now holds that queue.
8051 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
8052 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
8053 Use an unwind-protect to pop down the dialog box.
8054 (xdialog_show_unwind): New subroutine implements that.
f02cac82 8055
048addec
JD
8056 * xdisp.c (row_containing_pos): Change exit test using last_y.
8057 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 8058
048addec
JD
8059 * lread.c (load_error_handler): New function.
8060 (Fload): Handle errors in Fsubstitute_in_file_name.
8061 Don't expect Fsignal to return.
f02cac82 8062
048addec
JD
8063 * eval.c: Errors and throws work right with interrupt blocking.
8064 (struct catchtag): New elt interrupt_input_blocked.
8065 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
8066 (internal_catch, Fcondition_case, internal_condition_case)
8067 (internal_condition_case_1, internal_condition_case_2): Save it.
8068 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 8069
048addec 8070 * editfns.c (Fformat): Add parens.
f02cac82 8071
048addec
JD
8072 * dired.c (file_name_completion): Fix that change.
8073 Delete special quit-handling code; just use QUIT.
f02cac82 8074
048addec 80752002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
f02cac82 8076
048addec
JD
8077 * dired.c (file_name_completion): Close directory on error
8078 just as in directory_files_internal.
1a590729 8079
048addec 80802002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 8081
048addec
JD
8082 * window.c (Fset_window_configuration): Set old_point to correct
8083 value when new_current_buffer == current_buffer.
f02cac82 8084
048addec 80852002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 8086
048addec
JD
8087 Revisited my earlier fix for the following entry in etc/PROBLEMS:
8088 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
8089 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 8090
048addec
JD
8091 These changes were in part based upon suggestions made by Peter
8092 'Luna' Runestig [peter@runestig.com].
9785d95b 8093
048addec
JD
8094 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
8095 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 8096 g_b_init_get_sid_identifier_authority ): Add several static
048addec 8097 global variables.
9785d95b 8098
048addec
JD
8099 * w32.c (globals_of_w32): New function. Used to initialize those
8100 global variables that must always be initialized on startup even
8101 when the global variable initialized is non zero. Its primary
8102 purpose at this time is to set the global variables
8103 g_b_init_is_windows_9x, g_b_init_open_process_token,
8104 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
8105 g_b_init_get_sid_identifier_authority to 0 on startup.
8106 Called from main.
9785d95b 8107
048addec
JD
8108 * w32.c (is_windows_9x): Perform initialization only if
8109 g_b_init_is_windows_9x is equal to 0. On initialization set
8110 g_b_init_is_windows_9x equal to 1.
2308af15 8111
048addec
JD
8112 * w32.c (open_process_token): Perform initialization only if
8113 g_b_init_open_process_token is equal to 0. On initialization set
8114 g_b_init_open_process_token equal to 1.
2308af15 8115
048addec
JD
8116 * w32.c (get_token_information): Perform initialization only if
8117 g_b_init_get_token_information is equal to 0. On initialization
8118 set g_b_init_get_token_information equal to 1.
9785d95b 8119
048addec
JD
8120 * w32.c (lookup_account_sid): Perform initialization only if
8121 g_b_init_lookup_account_sid is equal to 0. On initialization
8122 set g_b_init_lookup_account_sid equal to 1.
9785d95b 8123
048addec
JD
8124 * w32.c (get_sid_identifier_authority): Perform initialization
8125 only if g_b_init_get_sid_identifier_authority is equal to 0.
8126 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 8127
f63fd14e 8128 * w32fns.c (globals_of_w32fns): New function. Used to initialize
048addec
JD
8129 those global variables that must always be initialized on startup
8130 even when the global variable initialized is non zero.
8131 Its primary purpose at this time is to initialize the global variable
8132 track_mouse_event_fn.
9785d95b 8133
a64387ee 8134 * w32fns.c (w32_wnd_proc): Remove initialization of
048addec 8135 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 8136
048addec 8137 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 8138
f63fd14e 8139 * w32menu.c (globals_of_w32menu): New function. Used to
048addec
JD
8140 initialize those global variables that must always be initialized
8141 on startup even when the global variable initialized is non zero.
8142 Its primary purpose at this time is to initialize the global
8143 variables get_menu_item_info and set_menu_item_info.
9785d95b 8144
048addec
JD
8145 * w32menu.c (initialize_frame_menubar): Remove initialization of
8146 get_menu_item_info and set_menu_item_info.
9785d95b 8147
048addec 8148 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 8149
048addec
JD
8150 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
8151 Declare them.
9785d95b 8152
048addec
JD
8153 * emacs.c (main): Call globals_of_w32 prior to calling
8154 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
8155 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
8156 is defined.
9785d95b 8157
048addec
JD
8158 * w32term.c (x_update_window_begin): Fix Windows API error
8159 detected by BoundsChecker. Test to determine if
8160 w32_system_caret_hwnd is NULL prior to attempting to use
8161 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 8162
048addec
JD
8163 * w32term.c (x_update_window_end): Fix Windows API error
8164 detected by BoundsChecker. Test to determine if
8165 w32_system_caret_hwnd is NULL prior to attempting to use
8166 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 8167
048addec 81682002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 8169
048addec
JD
8170 * coding.c (coding_system_require_warning): New variable.
8171 (syms_of_coding): DEFVAR it.
b6da19ef 8172
048addec 8173 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 8174
048addec
JD
8175 * fileio.c (choose_write_coding_system): Even if
8176 Vcoding_system_for_write is non-nil, if
8177 coding_system_require_warning is nonzero, call
8178 Vselect_safe_coding_system_function.
bfcf6dbe 8179
048addec 81802002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 8181
048addec
JD
8182 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
8183 (lisp): Add font-core.
2c568af5 8184
048addec 81852002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 8186
048addec
JD
8187 * textprop.c (text_read_only): New arg `propval'.
8188 (get_char_property_and_overlay): Remove unused var `next_overlay'.
8189 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 8190
048addec 81912002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 8192
048addec 8193 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 8194
048addec 81952002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 8196
048addec
JD
8197 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
8198 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
8199 Be more careful about when help_events are generated.
96720f09 8200
048addec 82012002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 8202
048addec
JD
8203 * macterm.c (mac_check_for_quit_char): Correctly set the
8204 modifiers of the event to 0.
8205 * mac.c (sys_select): Duplicate rfds before calling select to
8206 ensure that rfds survive the while loop.
e5ae1c49 8207
048addec 82082002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 8209
048addec
JD
8210 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
8211 row_containing_pos returned NULL.
2eb46b2d 8212
048addec 82132002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 8214
6bdb309a 8215 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 8216 non-blocking.
6bdb309a 8217 (sys_select): Fix sys_select to not use a timeout larger than
048addec 8218 the one given.
b11f1d8a 8219
048addec 82202002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 8221
048addec 8222 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 8223
048addec 82242002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 8225
048addec
JD
8226 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
8227 as the last thing.
a4ac5b17 8228
048addec 82292002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 8230
048addec 8231 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 8232
048addec 82332002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 8234
048addec
JD
8235 * editfns.c (Fformat): Handle precision in string conversion
8236 specifiers like libc functions do (ie, print at most that many
8237 characters).
85cce843 8238
048addec 82392002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 8240
048addec
JD
8241 * xdisp.c (row_containing_pos): Check more carefully
8242 whether charpos is really in the row before returning it.
0d4d26a7 8243
048addec 82442002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 8245
048addec 8246 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 8247
048addec
JD
8248 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
8249 each stack frame. This may change as it could be time consuming.
0d4d26a7 8250
048addec
JD
8251 * macterm.c (mac_check_for_quit_char, quit_char_comp)
8252 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 8253 (mac_initialize): Add code to check for pressing of quit_char
048addec 8254 in the OS event queue.
b11f1d8a 8255
048addec
JD
8256 * mac.c (sys_select): Call mac_check_for_quit_char every second
8257 while blocking on select.
0d4d26a7 8258
048addec
JD
8259 * mac.c (sys_read): Use sys_select to test for input first
8260 before calling read, to allow C-g to break.
9252f7bc 8261
048addec 82622002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 8263
048addec 8264 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 8265
048addec 8266 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 8267
048addec 8268 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 8269
048addec
JD
8270 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
8271 autoload.
9252f7bc 8272
048addec 8273 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 8274
048addec 8275 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 8276
048addec 82772002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 8278
048addec 8279 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 8280
048addec 82812002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 8282
048addec 8283 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 8284
048addec 8285 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 8286
048addec 8287 * alloca.c: Don't use #error.
02d588e2 8288
048addec 82892002-12-03 Dave Love <fx@gnu.org>
02d588e2 8290
048addec
JD
8291 * buffer.c (Qucs_set_table_for_input): New.
8292 (Fget_buffer_create): Use it.
8293 (Qset_buffer_major_mode_hook): Deleted.
8294 (Fset_buffer_major_mode): Revert previous change.
8295 (init_buffer_once): Intern ucs-set-table-for-input.
8296 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
8297 Add &Qucs_set_table_for_input.
451e2697 8298
048addec 82992002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 8300
048addec
JD
8301 * callint.c (Fcall_interactively): Use next_event only if less
8302 than key_count.
72742a99 8303
048addec 83042002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 8305
048addec
JD
8306 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
8307 names to 255 characters.
72742a99 8308
048addec
JD
8309 * macterm.c (XTread_socket): If all frames have been collapsed,
8310 expand the first one before handling drag-and-drop events.
72742a99 8311
048addec
JD
8312 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
8313 which is detected by autoconf.
40e6ff95 8314
048addec 83152002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 8316
048addec
JD
8317 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
8318 offset in two hints table to allow prebinding to be redone and
8319 allow the executable to be stripped.
c02138c6 8320
048addec 83212002-11-29 Dave Love <fx@gnu.org>
c02138c6 8322
048addec
JD
8323 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
8324 already provided.
0e47bbf7 8325
048addec 83262002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 8327
048addec
JD
8328 * xdisp.c (start_display): Check more intelligently for
8329 whether the line is continued.
8330 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 8331
048addec 83322002-11-28 Dave Love <fx@gnu.org>
44129dcb 8333
048addec
JD
8334 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
8335 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 8336
048addec 83372002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 8338
048addec
JD
8339 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
8340 more descriptive error output from lread.c:Fload upon most require
8341 cycles during boostrapping.
1637fd2c 8342
048addec 83432002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 8344
048addec
JD
8345 * fileio.c (Finsert_file_contents): Give a more appropriate error
8346 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 8347
048addec
JD
8348 * dired.c (Ffile_attributes): Don't return negative file sizes for
8349 files bigger than 2Gb when off_t is 32 bit.
540c2788 8350
048addec 83512002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 8352
048addec 8353 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 8354
048addec
JD
8355 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
8356 Test GETPGRP_VOID instead.
8357 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 8358
048addec
JD
8359 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
8360 Don't define.
8361 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 8362
048addec 8363 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 8364
048addec 83652002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 8366
048addec
JD
8367 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
8368 supported.
4042a81a 8369
048addec 83702002-11-25 Dave Love <fx@gnu.org>
4042a81a 8371
048addec 8372 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 8373
048addec 8374 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 8375
048addec 83762002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 8377
048addec 8378 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 8379
048addec 83802002-11-24 Steven Tamm <steventamm@mac.com>
82122254 8381
048addec
JD
8382 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
8383 determine the size of pointers alloced in unexed space instead
8384 of using possibly invalid emacs_zone pointers. This fixes the
8385 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 8386
048addec 83872002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 8388
048addec 8389 * search.c (Fstring_match): Doc fix.
c1ee53bc 8390
048addec
JD
8391 * callint.c (Fcall_interactively): If a command fails because
8392 `*' detects a read-only buffer, but RECORD_FLAG is set,
8393 record it anyway if the args don't actually do tty input.
5598c32e 8394
048addec 83952002-11-22 Dave Love <fx@gnu.org>
5598c32e 8396
048addec 8397 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 8398
048addec
JD
8399 * keyboard.c (interrupt_signal): Provide forward declaration.
8400 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 8401
048addec 8402 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 8403
048addec 84042002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 8405
048addec
JD
8406 * eval.c (interactive_p): Skip any number of bytecode
8407 and special form frames, in any order.
516eea8e 8408
048addec 84092002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 8410
048addec
JD
8411 * w32fns.c (convert_mono_to_color_image): New function.
8412 (xbm_load, xbm_load_image): Use it when foreground or background
8413 is explicitly set.
04dbfa08 8414
048addec 84152002-11-19 Dave Love <fx@gnu.org>
04dbfa08 8416
048addec 8417 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 8418
048addec 84192002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 8420
048addec
JD
8421 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
8422 (XPutPixel): Swap blue and red.
8423 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
8424 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
8425 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
8426 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 8427
048addec 84282002-11-18 Dave Love <fx@gnu.org>
d824beee 8429
048addec 8430 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 8431
048addec 8432 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 8433
048addec 8434 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 8435
048addec
JD
8436 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
8437 malloc, realloc, calloc.
d824beee 8438
048addec
JD
8439 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
8440 (bcmp): Don't define.
d824beee 8441
048addec 8442 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 8443
048addec 8444 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 8445
048addec 8446 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 8447
048addec 8448 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 8449
048addec
JD
8450 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
8451 Don't include alloca.h.
d824beee 8452
048addec 8453 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 8454
048addec 8455 * regex.c (_GNU_SOURCE): Don't define.
1998560a 8456
048addec 8457 * process.c (_GNU_SOURCE): Don't define.
1998560a 8458
048addec 8459 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 8460
048addec 84612002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 8462
048addec 8463 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 8464
048addec 84652002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 8466
048addec
JD
8467 * dispextern.h (struct face): Add `overstrike' field.
8468 * xterm.c (x_draw_glyph_string_foreground)
8469 (x_draw_composite_glyph_string_foreground): Implement overstriking.
8470 * xfaces.c (load_face_font): Set `face->overstrike' based on
8471 result from choose_face_font.
8472 (best_matching_font, choose_face_font): Add `needs_overstrike'
8473 argument, and use it to return whether overstriking is desirable
8474 for this face/font combo.
8475 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 8476
048addec 84772002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 8478
048addec
JD
8479 This change is my fix for the following entry in etc/PROBLEMS:
8480 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
8481 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 8482
048addec
JD
8483 * w32.c: Added wrapper functions around the win32 API functions
8484 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
8485 GetSidIdentifierAuthority. These wrapper functions serve two
8486 purposes:
8487 1. They ensure that the wrapped function can never be called
8488 when Emacs is running on an operating system on which they are
8489 not supported (Microsoft Windows 95 / 98 / ME).
8490 2. They call the wrapped functions via function pointers rather
8491 than calling them directly. This avoids taking advantage of the
8492 undocumented fact that although these functions are not supported
8493 in the 9x branch of Microsoft Windows, the functions do exist in
8494 the version of advapi32.dll that is found in the 9x branch of
8495 Microsoft Windows.
f60ae425 8496
6bdb309a 8497 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
8498 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
8499 and GetSidIdentifierAuthority with calls to the newly added
8500 wrapper functions.
f60ae425 8501
048addec
JD
8502 * w32.h: Added extern declarations for the following functions:
8503 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
8504 syms_of_w32menu, and void syms_of_fontset.
f60ae425 8505
6bdb309a 8506 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
8507 function pointer track_mouse_event_fn in the handler for the
8508 WM_SETFOCUS message.
3582b6a3 8509
6bdb309a 8510 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
8511 reinitialize the function pointers set_menu_item_info and
8512 get_menu_item_info.
f60ae425 8513
048addec 85142002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 8515
048addec
JD
8516 * sound.c: Added a partial implementation of play-sound-internal
8517 for Microsoft Windows. Added various #ifdef / #else / #endif
8518 code blocks to separate the code that will compile under
8519 Microsoft Windows from the code that is specific to Gnu/Linux.
8520 Moved several blocks of code around to make this separation of code
8521 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 8522
048addec 8523 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 8524
048addec
JD
8525 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
8526 added support for play-sound-internal under Windows would be
8527 included in the build of Emacs.
517f42a0 8528
048addec 85292002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 8530
048addec 8531 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 8532
048addec 8533 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 8534
048addec 85352002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 8536
048addec
JD
8537 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
8538 (adjust_point_for_property): Move out of display and invisible even if
8539 we were already inside before (in case a property was added while
8540 we weren't looking). Be more careful when handling invisible props.
8541 Skip invisible text as if it really wasn't there at all.
aab83f91 8542
048addec 85432002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 8544
048addec
JD
8545 * w32term.c (x_draw_image_foreground)
8546 (w32_draw_image_foreground_1): Use standard copy and invert
8547 operations to draw images.
aab83f91 8548
048addec
JD
8549 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
8550 depth of 1.
8551 (xbm_read_bitmap_data): Invert bits as xbm is read in.
8552 (XPutPixel): Don't invert bits here.
a4478a76 8553
048addec 85542002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 8555
048addec
JD
8556 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
8557 (w32_draw_image_foreground_1): Handle image masks.
8558 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 8559
048addec
JD
8560 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
8561 (x_from_xcolors): Adjust RGB values for W32.
8562 (image_background, image_background_transparent)
8563 (postprocess_image, x_to_xcolors, x_disable_image)
8564 (x_build_heuristic_mask): Adapt for W32 and enable.
8565 (x_create_x_image_and_pixmap): Mark images with palettes as such.
8566 (xbm_load): Remove unused variable.
03670a65 8567
048addec 85682002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 8569
048addec 8570 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 8571
048addec 85722002-11-14 Dave Love <fx@gnu.org>
59daa29a 8573
048addec 8574 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 8575
048addec
JD
8576 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
8577 * xmenu.c (unuse_menu_items, digest_single_submenu):
8578 * xfns.c (x_put_x_image):
8579 * xdisp.c (message2_nolog, set_message):
8580 * undo.c (record_point):
8581 * terminfo.c (tparam):
8582 * syntax.c (scan_sexps_forward):
8583 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
8584 * composite.c (update_compositions):
8585 * cm.c (calccost, cmgoto):
8586 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 8587
048addec 8588 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 8589
048addec
JD
8590 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
8591 Don't declare.
59daa29a 8592
048addec 8593 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 8594
048addec
JD
8595 * fns.c (Fcopy_sequence): Doc fix.
8596 (Fmap_char_table): Cast `call2'.
3947677c 8597
048addec
JD
85982002-11-14 Francesco Potorti` <pot@gnu.org>
8599
8600 * s/sol2-8.h: New file.
8601
86022002-11-14 Kim F. Storm <storm@cua.dk>
8603
8604 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
8605 dependency on `risky-local-variable' and the :propertize form.
8606
86072002-11-12 Stefan Monnier <monnier@cs.yale.edu>
8608
8609 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
8610
8611 * syntax.c (scan_sexps_forward): Undo last patch.
8612 Use a more obvious fix: check eob before updating the syntax table.
8613
86142002-11-09 Stefan Monnier <monnier@cs.yale.edu>
8615
8616 * syntax.c (scan_sexps_forward): Update syntax table before reading
8617 a char rather than after so we don't update the table past eob.
8618
86192002-11-09 Dave Love <fx@gnu.org>
8620
8621 * buffer.c (Fset_buffer_major_mode): Fix last change.
8622
8623 * regex.c (regexec): Fix pmatch declaration.
8624
8625 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
8626
8627 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
8628 to self-inserting characters.
8629 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
8630
8631 * coding.c (Vtranslation_table_for_input): New.
8632 (syms_of_coding): DEFVAR it.
8633
86342002-11-08 Juanma Barranquero <lektu@terra.es>
8635
8636 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
8637 window.
8638
86392002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8640
6bdb309a 8641 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
8642 cp, and i.
8643
86442002-11-06 Dave Love <fx@gnu.org>
8645
8646 * buffer.c (Qset_buffer_major_mode_hook): New.
8647 (Fset_buffer_major_mode): Use it.
8648
86492002-11-06 Richard M. Stallman <rms@gnu.org>
8650
8651 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
8652 and stop_polling.
8653
8654 * process.c (wait_reading_process_input):
8655 Test POLLING_PROBLEM_IN_SELECT, not hpux.
8656 Avoid initialization for auto Lisp_Object var.
8657
8658 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
8659
8660 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
8661
86622002-11-05 Richard M. Stallman <rms@gnu.org>
8663
8664 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
8665
8666 * callint.c (Fcall_interactively): New local filter_specs.
8667 (Fcall_interactively): Check for progn as well as let.
8668 Add a gcpro.
8669 (Qprogn): New variable.
8670 (syms_of_callint): Staticpro and init Qprogn.
8671
86722002-11-04 John Paul Wallington <jpw@shootybangbang.com>
8673
8674 * lread.c (Feval_buffer): Doc fix.
8675
86762002-11-04 Dave Love <fx@gnu.org>
8677
8678 * keyboard.c (read_char): Always translate iff
8679 Vkeyboard_translate_table is a char table and c is valid.
8680
8681 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
8682 and fix C types.
8683
86842002-11-03 Stefan Monnier <monnier@cs.yale.edu>
8685
8686 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
8687
8688 * editfns.c (get_pos_property): Don't hardcode Qfield.
8689
8690 * keyboard.c (adjust_point_for_property): Handle `display' prop on
8691 overlays. Also handle `invisible' prop.
8692
86932002-11-02 Stefan Monnier <monnier@cs.yale.edu>
8694
8695 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
8696 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
8697
86982002-11-01 Andreas Schwab <schwab@suse.de>
8699
8700 * editfns.c (Fmessage): Revert last change to properly handle %%.
8701
87022002-11-01 Stefan Monnier <monnier@cs.yale.edu>
8703
8704 * xmenu.c (unuse_menu_items): New fun.
8705 (menu_items_inuse): New var.
8706 (syms_of_xmenu): Initialize it.
8707 (init_menu_items): Use it to detect re-entrance.
8708 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
8709 (Fx_popup_menu): Remove spurious XSETFRAME.
8710
8711 * editfns.c (find_field): Make an exception for nil fields.
8712
87132002-11-01 Dave Love <fx@gnu.org>
8714
8715 * m/gec63.h: Deleted.
8716
87172002-10-31 Dave Love <fx@gnu.org>
8718
8719 * xterm.c (XTread_socket): Fix last change.
8720 (xaw_scroll_callback): Cast call_data to long to avoid warning.
8721
87222002-10-31 Stefan Monnier <monnier@cs.yale.edu>
8723
8724 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
8725
87262002-10-30 Stefan Monnier <monnier@cs.yale.edu>
8727
8728 * editfns.c (overlays_around, get_pos_property): New funs.
8729 (find_field): Use them.
8730 Also be careful not to modify POS before its last use.
8731 (Fmessage): Don't Fformat if there's nothing to format.
8732
87332002-10-30 Dave Love <fx@gnu.org>
8734
8735 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
8736 [HAVE_PTY_H]; Include pty.h.
8737
8738 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
8739
8740 * xterm.c (Qeql): Declare.
8741 (Vx_keysym_table): New.
8742 (syms_of_xterm): Initialize it.
8743 (XTread_socket): Use it. Deal with ASCII keysyms.
8744 (XSetIMValues) [HAVE_X11R6]: Prototype.
8745
8746 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
8747 (lispy_kana_keys): Comment out.
8748 (make_lispy_event) [XK_kana_A]: Comment out.
8749 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
8750 Fix sprintf call.
8751
8752 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
8753 regexp.h change).
8754 (TERMINFO, LIBS_TERMCAP): Define.
8755
8756 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
8757 (bcmp): Define conditional on HAVE_BCMP.
8758 (NO_SIOCTL_H): Don't define.
8759 (TIOCSIGSEND): Don't make conditional on IRIX6.
8760
8761 * s/sol2-5.h: Don't include strings.h.
8762 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
8763
8764 * s/irix6-0.h (IRIX6): Don't define.
8765 (bcopy, bcmp, bzero): Don't undef.
8766
8767 * s/irix6-5.h: Don't include strings.h.
8768 (IRIX6): Don't define.
8769 (bcopy, bcmp, bzero): Don't undef.
8770
8771 * syntax.c (Fforward_comment): Doc fix.
8772
87732002-10-29 Kim F. Storm <storm@cua.dk>
8774
8775 * process.c (Fsignal_process): Allow PROCESS to be specified by
8776 name in addition to pid (as integer or string).
8777
87782002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
8779
8780 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
8781 environments.
8782
87832002-10-27 Kim F. Storm <storm@cua.dk>
8784
8785 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
8786
8787 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
8788
8789 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
8790
8791 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
8792
87932002-10-26 Richard M. Stallman <rms@gnu.org>
8794
8795 * editfns.c (Fformat): Detect invalid format letters for floats.
8796
87972002-10-25 Kenichi Handa <handa@m17n.org>
8798
8799 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
8800 (x_set_title): Likewise.
8801
88022002-10-25 Juanma Barranquero <lektu@terra.es>
8803
8804 * macgui.h:
8805 * w32gui.h: Remove definition of XColor.
8806
8807 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
8808
88092002-10-24 Kim F. Storm <storm@cua.dk>
8810
8811 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
8812 Callers changed (supply dummy arg).
8813
8814 * lisp.h (get_window_cursor_type): Update prototype.
8815
8816 * w32term.c (x_display_and_set_cursor): Get active_cursor from
8817 get_window_cursor_type to track system caret.
8818
88192002-10-24 Kim F. Storm <storm@cua.dk>
8820
8821 * process.c (Fformat_network_address): New function.
8822 (syms_of_process): Defsubr it.
8823 (list_processes_1): Use it to format :local/:remote address if
f9711de4 8824 service/host is not set; before Emacs would crash in that case.
048addec
JD
8825 (Fmake_network_process): Don't use Ffind_operation_coding_system
8826 to setup coding system if host or service is not set.
8827
88282002-10-23 Juanma Barranquero <lektu@terra.es>
8829
8830 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
8831
8832 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
8833 COLORREF.
8834
8835 * macgui.h:
8836 * w32gui.h: Add definition of XColor.
8837
8838 * macfns.c:
8839 * w32fns.c:
8840 * xfaces.c: Remove definition of XColor.
8841
88422002-10-22 Stefan Monnier <monnier@cs.yale.edu>
8843
8844 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
8845
8846 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
8847 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
8848 window if it is dedicated.
8849 (Fshrink_window): Add preserve_before as was done for enlarge_window.
8850 (Vspecial_display_function): Update docstring.
8851
8852 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
8853 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
8854 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
8855
88562002-10-21 Stefan Monnier <monnier@cs.yale.edu>
8857
8858 * casefiddle.c (casify_region): Don't treat a prefix char as part
8859 of a word when at the beginning.
8860
88612002-10-17 Juanma Barranquero <lektu@terra.es>
8862
8863 * lread.c (syms_of_lread): Fix typos.
8864
88652002-10-17 Dave Love <fx@gnu.org>
8866
8867 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
8868
88692002-10-16 Richard M. Stallman <rms@gnu.org>
8870
8871 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
8872
88732002-10-14 Juanma Barranquero <lektu@terra.es>
8874
8875 * w16select.c (syms_of_win16select): Fix docstring for
8876 `selection-coding-system'.
8877
8878 * w32select.c (syms_of_w32select): Likewise.
8879
88802002-10-14 Stefan Monnier <monnier@cs.yale.edu>
8881
8882 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
8883 a backslash-quoted char.
8884 (scan_lists, scan_sexps_forward): Pacify the compiler.
8885
88862002-10-13 Richard M. Stallman <rms@gnu.org>
8887
8888 * window.c (window_scroll): Set immediate_quit.
8889
8890 * print.c (print): When backquote form is the car of a list,
8891 output in old style. Use old_backquote_output to output all
8892 comma forms inside it in old style too.
8893
8894 * buffer.h (struct buffer): Move `undo_list' down below `name'.
8895
88962002-10-11 Markus Rost <rost@math.ohio-state.edu>
8897
8898 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
8899 batch mode).
8900
8901 * lread.c (Fload): Doc fix (load-suffixes).
8902
89032002-10-10 Steven Tamm <steventamm@mac.com>
8904
8905 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
8906 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
8907 Also switch the default to Qnil from Qt.
8908
89092002-10-08 Kenichi Handa <handa@m17n.org>
8910
8911 * coding.c (code_convert_region): When we need more GAP for
8912 conversion, pay attention to the case that coding->produced is not
8913 greater than coding->consumed.
8914
89152002-10-07 Richard M. Stallman <rms@gnu.org>
8916
8917 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
8918
89192002-10-06 Andrew Choi <akochoi@shaw.ca>
8920
8921 * macmenu.c (mac_menu_show): Add j to count menu items; match
8922 menu_item_selection to it to find selected item.
8923
89242002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8925
8926 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
8927 cases. The correct fix is to pass ReparentNotify to Xt.
8928 The shell widget interprets ConfigureNotify differently depending
8929 on if it has been reparented or not.
8930
89312002-10-05 Markus Rost <rost@math.ohio-state.edu>
8932
8933 * editfns.c (Fformat_time_string): Doc fix.
8934
89352002-10-05 John Paul Wallington <jpw@shootybangbang.com>
8936
8937 * fns.c (Flength): Doc fix.
8938
89392002-10-04 Stefan Monnier <monnier@cs.yale.edu>
8940
8941 * keyboard.c (keyremap): New struct.
8942 (read_key_sequence): Use it: globally replace keytran_foo with
8943 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
8944 keytran_next and fkey_next to just `next'.
8945
89462002-10-04 Steven Tamm <steventamm@mac.com>
8947
8948 * macterm.c (keycode_to_xkeysym_table): Change return to be
8949 treated like an X keysym.
8950
89512002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8952
8953 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
8954 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
8955 This is to also handle x/y changes that occur because of a resize.
8956
89572002-10-02 John Paul Wallington <jpw@shootybangbang.com>
8958
8959 * frame.c (Vdelete_frame_functions): New variable.
8960 (syms_of_frame): Initialize and defvar it.
8961 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
8962 it when frame's `tooltip' parameter is non-nil.
8963
8964 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
8965
8966 * w32fns.c (x_create_tip_frame): Likewise.
8967
8968 * macfns.c (x_create_tip_frame): Likewise.
8969
89702002-09-30 Kenichi Handa <handa@m17n.org>
8971
8972 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
8973 -1 before calling ccl_driver.
8974
8975 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
8976 Only when it is non-nil, handle composition sequence.
8977 (setup_coding_system) <0>: Don't force composition handling.
8978
8979 * Makefile.in (lisp, shortlisp): Add utf-16.elc
8980
89812002-09-29 Richard M. Stallman <rms@gnu.org>
8982
8983 * search.c (Freplace_match): Adjust match data for the substitution
8984 just made in the buffer.
8985
8986 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
8987 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
8988
89892002-09-27 Richard M. Stallman <rms@gnu.org>
8990
8991 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
8992 (read_char): Use them. Do all exits thru the end of the function.
8993
89942002-09-27 Kenichi Handa <handa@etl.go.jp>
8995
8996 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
8997 is nil.
8998
89992002-09-26 Richard M. Stallman <rms@gnu.org>
9000
9001 * regex.h (__restrict_arr): Don't define if already defined.
9002
9003 * coding.c (run_pre_post_conversion_on_str):
9004 Save and restore Vdeactivate_mark.
9005
90062002-09-26 John Paul Wallington <jpw@shootybangbang.com>
9007
9008 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
9009
90102002-09-26 Kenichi Handa <handa@etl.go.jp>
9011
9012 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
9013 nonzero, try face's family at first. Otherwise try FAMILY at first.
9014 (choose_face_font): If C is a single byte char or latin-1, call
9015 try_font_list with PREFER_FACE_FAMILY 1.
9016
90172002-09-21 Richard M. Stallman <rms@gnu.org>
9018
9019 * window.c (select_window_1): Don't select frame.
9020 Set frame's selected window only when frame itself is selected.
9021 (Fselect_window): Doc fix.
9022
90232002-09-18 Kim F. Storm <storm@cua.dk>
9024
9025 * process.c (make-network-process): Doc fix (there is no
9026 network-server-log-function hook).
9027
90282002-09-18 Richard M. Stallman <rms@gnu.org>
9029
9030 * print.c (print): Clear out the unused parts of Vprint_number_table.
9031 (syms_of_print): Doc fix for `print-number-table'.
9032
9033 * unexelf.c (unexec): Undo previous change.
9034
90352002-09-17 Andreas Schwab <schwab@suse.de>
9036
9037 * m/alpha.h [LINUX]: Don't define DATA_START.
9038
90392002-09-16 Dave Love <fx@gnu.org>
9040
9041 * unexelf.c (unexec): Deal with .got, reinstating change from
9042 25-08-1999.
9043
90442002-09-13 Richard M. Stallman <rms@gnu.org>
9045
9046 * s/sol2-6.h (UNEXEC): Comment out definition.
9047
9048 * unexsol.c (unexec): Don't downcase first letter of error msg.
9049
9050 * xfaces.c (Fcolor_supported_p): Just one arg is required.
9051
90522002-09-12 Markus Rost <rost@math.ohio-state.edu>
9053
9054 * unexsol.c: Include buffer.h, charset.h, coding.h.
9055
90562002-09-11 Richard M. Stallman <rms@gnu.org>
9057
9058 * unexsol.c: Don't use report_file_error; do it by hand
9059 using dlerror.
9060
9061 * process.c (wait_reading_process_input, both versions):
9062 Before calling turn_on_atimers, call stop_polling.
9063
9064 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
9065
9066 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
9067 we go to too_near_end, call clear_glyph_matrix.
9068 (redisplay_window): After make_cursor_line_fully_visible,
9069 call clear_glyph_matrix and bypass `goto done'.
9070
9071 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
9072 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
9073
90742002-09-10 Richard M. Stallman <rms@gnu.org>
9075
9076 * fileio.c (Fdo_auto_save): Catch error making directory.
9077 Only call push_message if we need to.
9078 At the same time, make an unwind-protect to pop it.
9079 Rename local message_p to old_message_p.
9080 (do_auto_save_make_dir, do_auto_save_eh): New functions.
9081 (do_auto_save_unwind): Don't call pop_message.
9082
9083 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
9084
9085 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
9086
9087 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
9088
9089 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
9090
90912002-09-10 Stefan Monnier <monnier@cs.yale.edu>
9092
9093 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
9094 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
9095 (re_match_2_internal): Be more careful with infinite loops.
9096
90972002-09-10 Kim F. Storm <storm@cua.dk>
9098
9099 * macros.c (end_kbd_macro): New function.
9100 (Fend_kbd_macro): Use it.
9101
9102 * macros.h (end_kbd_macro): Declare extern.
9103
9104 * keyboard.c (Fdiscard_input): If defining keyboard macro,
9105 end and save it instead of discarding it.
9106
91072002-09-09 Markus Rost <rost@math.ohio-state.edu>
9108
9109 * s/sol2-6.h: Fix typo. Add comment.
9110
91112002-09-09 Richard M. Stallman <rms@gnu.org>
9112
9113 * regex.c (regnum_t): Use signed int, not unsigned int.
9114
9115 * s/sol2-6.h: New file.
9116
9117 * s/sol2-5.h (UNEXEC): Definition deleted.
9118
91192002-09-08 Kim F. Storm <storm@cua.dk>
9120
9121 * macros.c (executing_macro_index): Change type to EMACS_INT.
9122 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
9123
9124 * macros.h (executing_macro_index): Change type to EMACS_INT.
9125
91262002-09-06 Richard M. Stallman <rms@gnu.org>
9127
9128 * casetab.c (set_case_table): Make canon table point to eqv table.
9129
91302002-09-06 Juanma Barranquero <lektu@terra.es>
9131
9132 * coding.c (syms_of_coding): Fix spacing.
9133
9134 * composite.c (Fcompose_region_internal)
9135 (Fcompose_string_internal): Likewise.
9136
9137 * data.c (Flsh): Likewise.
9138
9139 * fontset.c (Fset_fontset_font): Likewise.
9140
9141 * macfns.c (Fx_server_max_request_size): Likewise.
9142
9143 * w16select.c (syms_of_win16select): Likewise.
9144
9145 * w32select.c (syms_of_w32select): Likewise.
9146
9147 * xselect.c (syms_of_xselect): Likewise.
9148
91492002-09-05 Richard M. Stallman <rms@gnu.org>
9150
9151 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
9152 call EXTEND_RANGE_TABLE and return a proper value.
9153 (set_image_of_range): Don't call set_image_of_range_1
9154 if no TRANSLATE or if range includes all of Latin-1.
9155 Only call it for the Latin-1 part of the range.
9156 For other cases, make two separate ranges,
9157 one for the original specified characters and one for
9158 their case-conversions.
9159
91602002-09-04 Richard M. Stallman <rms@gnu.org>
9161
9162 * s/sol2-5.h (UNEXEC): Use unexsol.o.
9163
9164 * window.c (displayed_window_lines): Correct for one-off bug
9165 in HEIGHT on non-window displays.
9166
9167 * regex.c (set_image_of_range_1): New function.
9168 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
9169 Return a value to indicate running out of memory.
9170 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
9171 (extend_range_table_work_area): New subroutine.
9172 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
9173 Different calling conventions, and used from set_image_of_range{,_1}.
9174 (IMMEDIATE_QUIT_CHECK): Definitions moved.
9175
91762002-09-04 Juanma Barranquero <lektu@terra.es>
9177
9178 * makefile.w32-in: All dependencies updated.
9179
91802002-09-01 Richard M. Stallman <rms@gnu.org>
9181
9182 * unexsol.c: New file.
9183
9184 * xfns.c (Qbox): Declare external, don't define.
9185
9186 * xdisp.c (redisplay_window) <force-start case>:
9187 If point is on semi-visible last line, reposition
9188 it at previous line.
9189
9190 * alloc.c (display_malloc_warning): Use display-warning.
9191 (malloc_warning_1): Function deleted.
9192
9193 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
9194
9195 * lread.c (read1): Handle #! by skipping the line.
9196
91972002-08-31 Richard M. Stallman <rms@gnu.org>
9198
9199 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
9200 Don't include LDFLAGS.
9201 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
9202
92032002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
9204
9205 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
9206 member of x_display_info unless we compile for some window system.
9207
92082002-08-31 Kim F. Storm <storm@cua.dk>
9209
9210 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
9211 (get_window_cursor_type): Don't use them.
9212 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
9213
92142002-08-30 Kenichi Handa <handa@etl.go.jp>
9215
9216 * xdisp.c (get_next_display_element): Fix previous change.
9217
92182002-08-30 Andrew Choi <akochoi@shaw.ca>
9219
9220 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
9221 (expose_window): Use it to fix the display of overlapping
9222 rows (merge code from xterm.c).
9223
9224 * macfns.c (Qbox): Add extern declaration.
9225
92262002-08-30 Juanma Barranquero <lektu@terra.es>
9227
9228 * w32fns.c (Qbox): Make extern.
9229 (syms_of_w32fns): Remove initialization of Qbox.
9230
92312002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
9232
9233 * xfns.c (Fx_open_connection): Fix error message.
9234
92352002-08-30 Kim F. Storm <storm@cua.dk>
9236
9237 The following changes consolidates the handling of the cursor
9238 type in xdisp.c, moving duplicate code and functionality from
9239 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
9240
9241 * frame.h (enum text_cursor_kinds): Consolidated here.
9242 Added DEFAULT_CURSOR value.
9243 (struct frame) <desired_cursor, cursor_width>
9244 <blink_off_cursor, blink_off_cursor_width>: New fields.
9245 Consolidated from output_x, output_w32 and output_mac structs.
9246 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
9247 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
9248
9249 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
9250 Variables consolidated here.
9251 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
9252 (Vcursor_in_non_selected_windows): Renamed from
9253 cursor_in_non_selected_windows and changed to Lisp_Object.
9254 (syms_of_xdisp): Define and staticpro new and moved variables.
9255 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
9256 consolidated here. Recognize Qhollow setting.
9257 (set_frame_cursor_types): New function to set frame cursor types
9258 based on the frame parameters.
9259 (get_window_cursor_type): New function to calculate new cursor
9260 type and width for the specified window. Based on duplicated
9261 code consolidated here.
9262 Enhancements: cursor-in-non-selected-windows may be a cursor type,
9263 check buffer-local alternate-cursor-type and blink-cursor-alist
9264 before using built-in blink off methods.
9265
9266 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
9267
9268 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
9269 (get_specified_cursor_type, get_window_cursor_type)
9270 (set_frame_cursor_types): Added prototypes.
9271
9272 * macfns.c (x_specified_cursor_type): Removed.
9273 (x_set_cursor_type): Use set_frame_cursor_types.
9274 (Qbar, Qbox): Removed.
9275 (syms_of_macfns): Don't intern or staticpro them.
9276
9277 * macterm.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_non_selected, active_cursor.
9281 Redraw cursor if hbar cursor width changes.
9282 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
9283
9284 * macterm.h (enum text_cursor_kinds): Removed.
9285 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
9286 <blink_off_cursor, blink_off_cursor_width>: Members removed.
9287 (FRAME_DESIRED_CURSOR): Macro removed.
9288
9289 * w32fns.c (Vblink_cursor_alist): Removed.
9290 (Qbar, Qhbar, Qbox, Qhollow): Removed.
9291 (syms_of_w32fns): Don't intern, staticpro, or define them.
9292 (x_specified_cursor_type): Removed.
9293 (x_set_cursor_type): Use set_frame_cursor_types.
9294
9295 * w32term.c (x_specified_cursor_type): Remove prototype.
9296 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
9297 (x_display_and_set_cursor): Use get_window_cursor_type.
9298 Remove unused local variables cursor_off_state.
9299 Redraw cursor if hbar cursor width changes.
9300 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
9301
9302 * w32term.h (enum text_cursor_kinds): Removed.
9303 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
9304 <blink_off_cursor, blink_off_cursor_width>: Members removed.
9305 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
9306 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
9307 (struct w32_display_info) <x_highlight_frame>: Renamed member from
9308 w32_highlight_frame.
9309
9310 * xfns.c (Vblink_cursor_alist): Removed.
9311 (Qbar, Qhbar, Qbox, Qhollow): Removed.
9312 (syms_of_xfns): Don't intern, staticpro, or define them.
9313 (x_specified_cursor_type): Removed.
9314 (x_set_cursor_type): Use set_frame_cursor_types.
9315
9316 * xterm.c (x_specified_cursor_type): Remove prototype.
9317 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
9318 (x_display_and_set_cursor): Use get_window_cursor_type.
9319 Remove unused local variables cursor_off_state.
9320 Redraw cursor if hbar cursor width changes.
9321
9322 * xterm.h (enum text_cursor_kinds): Removed.
9323 (struct output_x) <current_cursor, desired_cursor, cursor_width>
9324 <blink_off_cursor, blink_off_cursor_width>: Members removed.
9325 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
9326 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
9327 (x_specified_cursor_type): Remove prototype.
9328
93292002-08-28 Richard M. Stallman <rms@gnu.org>
9330
9331 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
9332 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
9333 (Vblink_cursor_alist): New variable.
9334 (syms_of_w32fns): Initialize and defvar it.
9335 (x_specified_cursor_type): Recognize Qbox for filled box.
9336 Exceptions are hollow boxes.
9337 (Qbox, Qhollow): New variables.
9338 (syms_of_w32fns): Initialize and staticpro them.
9339
9340 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
9341 New macros.
9342 (struct w32_output): New fields blink_off_cursor,
9343 blink_off_cursor_width.
9344 (FRAME_CURSOR_WIDTH): New macro.
9345
9346 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
9347 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
9348
9349 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
9350 for bar cursor.
9351
9352 * w32term.c (expose_overlaps): New function.
9353 (expose_window): Use it to fix the display of overlapping rows.
9354
93552002-08-28 Simon Josefsson <jas@extundo.com>
9356
9357 * xfns.c (Fx_open_connection): Improve help when X connection
9358 fails, xhost is insecure and xauth is better.
9359
93602002-08-28 Juanma Barranquero <lektu@terra.es>
9361
9362 * makefile.w32-in: Add missing dependencies on w32term.h and
9363 composite.h.
9364
9365 * emacs.c (USAGE1): Add missing newline.
9366
93672002-08-27 Andrew Choi <akochoi@shaw.ca>
9368
9369 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
9370
93712002-08-27 Richard M. Stallman <rms@gnu.org>
9372
9373 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
9374 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
9375 (Vblink_cursor_alist): New variable.
9376 (syms_of_xfns): Initialize and defvar it.
9377 (x_specified_cursor_type): Recognize Qbox for filled box.
9378 Exceptions are hollow boxes.
9379 (Qbox, Qhollow): New variables.
9380 (syms_of_xfns): Initialize and staticpro them.
9381
9382 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
9383 New macros.
9384 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
9385
9386 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
9387 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
9388
9389 * emacs.c (main): Handle --script.
9390 (USAGE1): Mention --script.
9391 (standard_args): Define sort order for --script.
9392
93932002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
9394
9395 * xdisp.c (redisplay_updating_p): Variable removed.
9396 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
9397 New variables.
9398 (init_iterator): Don't free realized faces if
9399 inhibit_free_realized_faces is set.
9400 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
9401 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
9402 initialize Qinhibit_free_realized_faces.
9403
9404 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
9405 when iterator is adding glyphs to a glyph matrix.
9406
94072002-08-27 Kenichi Handa <handa@etl.go.jp>
9408
9409 * xdisp.c (get_next_display_element): In unibyte case, don't use
9410 octal form for such eight-bit characters that can be converted to
9411 multibyte char.
9412
94132002-08-26 Kim F. Storm <storm@cua.dk>
9414
9415 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
9416 and background colors. From Joe Buehler (tiny change).
9417
94182002-08-26 Miles Bader <miles@gnu.org>
9419
9420 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
9421
94222002-08-25 Andrew Choi <akochoi@shaw.ca>
9423
9424 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
9425 defined instead of MAC_OSX.
9426
9427 * s/darwin.h (select): Define select to sys_select only if
9428 HAVE_CARBON is defined.
9429 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
9430 (DONT_REOPEN_PTY): #def it.
9431
9432 * macterm.c (XTread_socket): Remove code to call
9433 SendEventToEventTarget for keys with command modifiers when
9434 mac_command_key_is_meta is nil.
9435
94362002-08-24 Andreas Schwab <schwab@suse.de>
9437
9438 * eval.c (Fdefvar): Fix last change.
9439
94402002-08-23 Richard M. Stallman <rms@gnu.org>
9441
9442 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
9443 Record variables in load history as (defvar . VAR).
9444 (Fdefvar): Don't record in load history if no initial value.
9445 (Qdefvar): New variable.
9446 (syms_of_eval): Init and staticpro it.
9447
9448 * lread.c (syms_of_lread): Doc fix.
9449 (build_load_history): Use Fmember to see if a definition
9450 is already in the Vload_history element.
9451
9452 * process.c (Fstart_process): Remove /: from program name.
9453
9454 * emacs.c (decode_env_path): Don't add /: if file name handler
9455 has a `safe-magic' property.
9456
9457 * callproc.c (Fcall_process): Remove /: from program name.
9458
94592002-08-23 Stefan Monnier <monnier@cs.yale.edu>
9460
9461 * regex.c (PATFETCH): Remove the translating fetch.
9462 (PATFETCH_RAW): Rename to PATFETCH.
9463 (set_image_of_range): New fun.
9464 (SET_RANGE_TABLE_WORK_AREA): Use it.
9465 (regex_compile): Don't translate the pattern chars so eagerly.
9466 Only do it when inserting an `exactn' bytecode or when handling
9467 a char-range.
9468 (mutually_exclusive_p): Avoid empty statement.
9469
94702002-08-22 Kim F. Storm <storm@cua.dk>
9471
9472 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
9473 end up on a partially visible line; this reverts a specific part
9474 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
9475 display error which has been reported several times now.
9476 However it introduces the problem that changes was supposed to fix.
9477 See my comments in the source if you want to debug this further.
9478
94792002-08-20 Kenichi Handa <handa@etl.go.jp>
9480
9481 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
9482
94832002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
9484
9485 * msdos.c (croak): Add `void' to definition.
9486
c1380aa6 9487 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
048addec
JD
9488 Don't define them, they are defined in msdos.c.
9489
9490 * mem-limits.h [MSDOS]: Declare etext.
9491
9492 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
9493 `const' since CORRECT_DIR_SEPS modifies its target.
9494
94952002-08-19 Kim F. Storm <storm@cua.dk>
9496
2fb0ce67 9497 * keyboard.c (Fclear_this_command_keys): Add optional arg
048addec
JD
9498 KEEP-RECORD to avoid clearing lossage when we just want to clear
9499 the current key sequence (kmacro needs this).
9500
95012002-08-19 Kenichi Handa <handa@localhost>
9502
9503 * composite.c (run_composition_function): Call FUNC if it is fboundp.
9504
9505 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
9506 cons, return Qnil.
9507
95082002-08-17 Richard M. Stallman <rms@gnu.org>
9509
9510 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
9511
9512 * sysdep.c [!VMS]: Include sys/files.h.
9513
9514 * editfns.c (save_restriction_restore): Defend from unchained marker.
9515
9516 * buffer.c (overlays_at): Handle extending vec uniformly.
9517 (overlays_in): Handle extending vec from length 0 as in overlays_at.
9518
95192002-08-15 Andrew Choi <akochoi@shaw.ca>
9520
9521 * mac.c (init_mac_osx_environment): New function.
9522
9523 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
9524
95252002-08-14 Kim F. Storm <storm@cua.dk>
9526
9527 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
9528 executing macro before appending to it (when used from Lisp).
9529 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
9530 which is called prior to each iteration of macro (for kmacro.el).
9531 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
9532
9533 * lisp.h (Fexecute_kbd_macro): Update prototype.
9534
9535 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
9536
95372002-08-14 Kenichi Handa <handa@etl.go.jp>
9538
9539 * xselect.c (QUTF8_STRING): New variable.
9540 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
9541 (x_atom_to_symbol): Likewise.
9542 (x_get_local_selection): New argument local_request. If it is
9543 nonzero, call handler_fn with the second arg nil.
9544 (x_handle_selection_request): Call x_get_local_selection with
9545 local_request 0.
9546 (lisp_data_to_selection_data): Don't encode the string here.
9547 (Fx_get_selection_internal): Call x_get_local_selection with
9548 local_request 1.
9549 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
9550
9551 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
9552
9553 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
9554
95552002-08-13 Richard M. Stallman <rms@gnu.org>
9556
9557 * minibuf.c (Fminibufferp): New function.
9558 (syms_of_minibuf): Defsubr it.
9559 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
9560
95612002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
9562
9563 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
9564
95652002-08-12 Richard M. Stallman <rms@gnu.org>
9566
9567 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
9568 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
9569 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
9570 already.
9571
9572 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
9573
95742002-08-11 Andrew Choi <akochoi@shaw.ca>
9575
9576 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
9577 (Vmac_pass_command_to_system): New variable.
9578 (Vmac_pass_control_to_system): New variable.
9579 (do_mouse_moved): Check wp with is_emacs_window.
9580 (XTread_socket): Check window_ptr with is_emacs_window.
9581 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
9582 events back to Mac Toolbox for processing, depending on values of
9583 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
9584 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
9585 Vmac_pass_control_to_system.
9586
95872002-08-10 Kenichi Handa <handa@etl.go.jp>
9588
9589 * coding.c (unencodable_char_position): New function.
9590 (Funencodable_char_position): New function.
9591 (syms_of_coding): Defsubr Funencodable_char_position.
9592
95932002-08-10 Andrew Choi <akochoi@shaw.ca>
9594
9595 * mac.c (sys_select) [MAC_OSX]: New function.
9596
9597 * macterm.c (MakeMeTheFrontProcess): New function.
9598 (mac_initialize): Call MakeMeTheFrontProcess.
9599
9600 * s/darwin.h: Define select to sys_select.
9601
96022002-08-09 Richard M. Stallman <rms@gnu.org>
9603
9604 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
9605
96062002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
9607
9608 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
9609 end of the buffer.
9610
96112002-08-08 Ken Raeburn <raeburn@mit.edu>
9612
9613 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
9614
9615 * puresize.h (BASE_PURESIZE): Increase to 910000.
9616
96172002-08-08 Kenichi Handa <handa@etl.go.jp>
9618
9619 * coding.c (Ffind_operation_coding_system): For write-region, if
9620 VISIT is a filename, make it the target.
9621
96222002-08-07 Richard M. Stallman <rms@gnu.org>
9623
9624 * alloc.c (mark_object): Detect long lists for debugging.
9625 (mark_object_loop_halt): New variable.
9626
9627 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
9628
9629 * data.c (Fmake_variable_frame_local): Doc fix.
9630
96312002-08-01 David Ponce <david@dponce.com>
9632
9633 * w32menu.c (local_heap, local_alloc, local_free): New macros.
9634 (malloc_widget_value, free_widget_value)
9635 (w32_free_submenu_strings): Use them.
9636
9637 (push_submenu_start, push_submenu_end, push_left_right_boundary)
9638 (push_menu_pane, push_menu_item, single_keymap_panes)
9639 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
9640 (single_submenu, set_frame_menubar)
9641 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
9642
9643 (Fx_popup_menu): Don't show pop up menu until preceding one is
9644 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
9645
9646 * w32menu.c: Changes adapted from xmenu.c
9647 (set_frame_menubar): First parse all submenus,
9648 then make widget_value trees from them.
9649 Don't allocate any widget_value objects
9650 until we are done with the parsing.
9651 (parse_single_submenu): New function.
9652 (digest_single_submenu): New function.
9653 (single_submenu): Function deleted, replaced by those two.
9654
96552002-08-04 Andrew Choi <akochoi@shaw.ca>
9656
9657 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
9658 returns a valid window pointer before proceeding for keyDown and
9659 autoKey events.
9660
96612002-08-03 Andrew Choi <akochoi@shaw.ca>
9662
9663 * macterm.c (USE_CARBON_EVENTS): New macro.
9664 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
9665 (x_iconify_frame): Call CollapseWindow.
9666 (Vmac_reverse_ctrl_meta): New variable.
9667 (Vmac_wheel_button_is_mouse_2): New variable.
9668 (init_mac_drag_n_drop): New function.
9669 (mac_do_receive_drag): New function.
9670 (mac_handle_service_event): New function.
9671 (init_service_handler): New function.
9672 (mac_to_emacs_modifiers): New function.
9673 (mac_event_to_emacs_modifiers): New function.
9674 (mac_get_mouse_btn): New function.
9675 (mac_convert_event_ref): New function.
9676 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
9677 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
9678 mac_get_mouse_btn.
9679 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
9680
9681 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
9682 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
9683 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
9684 TOOL_BAR_EVENT for MAC_OS as well.
9685 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
9686 as for WINDOWS_NT.
9687 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
9688
9689 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
9690
96912002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
9692
9693 * xdisp.c (forward_to_next_line_start): Fix a condition that
9694 lead to a newline being skipped.
9695
96962002-08-02 Andrew Choi <akochoi@shaw.ca>
9697
9698 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
9699
97002002-08-01 Richard M. Stallman <rms@gnu.org>
9701
9702 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
9703
97042002-07-31 Andrew Choi <akochoi@shaw.ca>
9705
9706 * macfns.c: #undef init_process before #define-ing it.
9707
9708 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
9709 HAVE_CARBON is defined.
9710
97112002-07-31 Richard M. Stallman <rms@gnu.org>
9712
9713 * xmenu.c (set_frame_menubar): First parse all submenus,
9714 then make widget_value trees from them.
9715 Don't allocate any widget_value objects
9716 until we are done with the parsing.
9717 (parse_single_submenu): New function.
9718 (digest_single_submenu): New function.
9719 (single_submenu): Function deleted, replaced by those two.
9720
97212002-07-30 Juanma Barranquero <lektu@terra.es>
9722
9723 * w32proc.c (syms_of_ntproc): Fix docstring of
9724 `w32-get-true-file-attributes'.
9725
97262002-07-28 Richard M. Stallman <rms@gnu.org>
9727
9728 * s/hpux8.h (HPUX8): Define this before including hpux.h.
9729 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
9730
9731 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
9732
9733 * keyboard.c (make_lispy_event):
9734 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
9735 Explicitly clear up_modifier in event->modifiers.
9736
97372002-07-27 Richard M. Stallman <rms@gnu.org>
9738
9739 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
9740
9741 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
9742 for bar cursor.
9743
97442002-07-26 Kenichi Handa <handa@etl.go.jp>
9745
9746 * coding.c (detect_coding_iso2022): While checking a byte sequence
9747 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
9748 it in the normal loop.
9749
97502002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
9751
9752 * xterm.c (expose_overlaps): New function.
9753 (expose_window): Use it to fix the display of overlapping rows.
9754
9755 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
9756
97572002-07-23 Ken Raeburn <raeburn@gnu.org>
9758
9759 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
9760 since it only depends on XUINT.
9761
9762 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
9763 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
9764 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
9765 Macros deleted.
3947677c 9766
77d1daf2
AS
9767 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
9768 its value over other approaches.
9769 * sysdep.c (start_of_data): Don't define the function if a macro
9770 form has been defined.
8a8e19a3 9771
048addec
JD
97722002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
9773
9774 * xdisp.c (redisplay_updating_p): New variable.
9775 (init_iterator): Don't free realized faces when
9776 redisplay_updating_p is set.
9777 (redisplay_internal): Set redisplay_updating_p while updating
9778 the display.
9779
97802002-07-23 Richard M. Stallman <rms@gnu.org>
9781
9782 * editfns.c (Fmessage): Treat "" like nil.
9783
97842002-07-23 Kenichi Handa <handa@etl.go.jp>
9785
9786 * xdisp.c (face_before_or_after_it_pos):
9787 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
9788
97892002-07-22 Juanma Barranquero <lektu@terra.es>
9790
9791 * callproc.c (init_callproc) [DOS_NT]:
9792 Initialize Vshared_game_score_directory to nil.
9793 (syms_of_callproc) [DOS_NT]: Likewise.
9794
97952002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
9796
9797 * xdisp.c (display_line): Replace an abort with xassert.
9798
97992002-07-21 Richard M. Stallman <rms@gnu.org>
9800
9801 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
9802 and END_UNCHANGED when setting buffer_unchanged_p.
9803 Use current_matrix_up_to_date_p to decide whether to use
9804 try_cursor_movement.
9805
9806 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
9807
9808 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
9809
9810 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
9811 Set to nil if dir does not exist.
9812 (syms_of_callproc): Init unconditionally and simply.
9813
9814 * buffer.c (Fbuffer_list): Doc fix.
9815
98162002-07-21 Ken Raeburn <raeburn@gnu.org>
9817
9818 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
9819
9820 * buffer.c (mmap_realloc): When shrinking, make sure number of
9821 pages to unmap is rounded towards zero.
9822
9823 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
9824 (XSETINT): Deleted.
9825
9826 * m/att3b.h (XINT): Don't define.
9827 (VALBITS, VALMASK, XTYPE): Deleted.
9828 (DATA_SEG_BITS): Define.
9829 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
9830 ARRAY_MARK_FLAG): Deleted.
9831 (DATA_SEG_BITS): Define.
9832 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
9833 (DATA_SEG_BITS): Define.
9834
98352002-07-20 Richard M. Stallman <rms@gnu.org>
9836
9837 * print.c (print_error_message): New args CONTEXT and CALLER.
9838 Calls changed.
9839
9840 * lisp.h (print_error_message): Declare new args.
9841
9842 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
9843 and CONTEXT to print_error_message, don't print them here.
9844 For a Quit, don't use Vsignaling_function.
9845 Call message_log_maybe_newline.
9846
9847 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
9848
98492002-07-20 Kim F. Storm <storm@cua.dk>
9850
9851 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
9852
98532002-07-19 Ken Raeburn <raeburn@gnu.org>
9854
9855 * bytecode.c (struct byte_stack): Pointers into byte string now
9856 point to const.
9857 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
9858 const.
9859 * charset.h (BCOPY_SHORT): Source pointer now points to const.
9860 * coding.c (encode_eol, detect_coding, detect_eol):
9861 (decode_coding, encode_coding, detect_coding_system):
9862 Source strings now treated as const.
9863 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
9864 modify Lisp string contents.
9865 * coding.h (decode_coding, encode_coding, detect_coding,
9866 detect_eol): Declarations updated.
9867 * composite.c (compose_chars_in_text): Treat Lisp string contents
9868 as const.
9869 * dispnew.c (safe_bcopy): Source pointer now points to const.
9870 * lisp.h (STRING_COPYIN): New macro.
9871 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
9872 (internal_with_output_to_temp_buffer): Declarations updated.
9873 * print.c (temp_output_buffer_setup):
9874 (internal_with_output_to_temp_buffer): Buffer name argument is now
9875 pointer to const.
9876 * sound.c (struct sound_device): Function pointer field "write"
9877 buffer argument now points to const.
9878 (vox_write): Buffer argument points to const.
9879 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
9880 contents as const.
9881 * sysdep.c (emacs_write): Buffer pointer now const.
9882 * term.c (encode_terminal_code): Buffer pointer now const.
9883 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
9884 (x_face_list_fonts, x_update_menu_appearance):
9885 (hash_string_case_insensitive): Treat Lisp string contents as const.
9886
98872002-07-19 Juanma Barranquero <lektu@terra.es>
9888
048addec
JD
9889 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
9890
9891 * fileio.c (syms_of_fileio): Likewise.
c62aec78
JB
9892 (Ffile_name_as_directory): Fix argument name in docstring.
9893 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
048addec
JD
9894
98952002-07-18 Richard M. Stallman <rms@gnu.org>
9896
9897 * data.c (Fdefalias): Doc fix.
9898
98992002-07-17 Dave Love <fx@gnu.org>
9900
9901 * intervals.h (text_property_stickiness): Use P_.
9902
9903 * ccl.c: Remove `emacs' conditionals.
9904 (ccl_backtrace_table): Fix size spec.
9905 (ccl_driver): Fix type errors.
9906
99072002-07-16 Ken Raeburn <raeburn@gnu.org>
9908
9909 * alloc.c (xstrdup, make_string, make_unibyte_string)
9910 (make_multibyte_string, build_string): String pointer args now
9911 point to const.
9912 * charset.c (find_charset_in_text, c_string_width):
9913 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
9914 * fileio.c (report_file_error):
9915 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
9916 (count_combining_before, count_combining_after, insert_1_both):
9917 (insert, insert_and_inherit, insert_string):
9918 (insert_before_markers, insert_before_markers_and_inherit):
9919 * lread.c (intern, oblookup, hash_string):
9920 * minibuf.c (temp_echo_area_glyphs):
9921 * search.c (fast_c_string_match_ignore_case):
9922 * sysdep.c (emacs_open, set_file_times):
9923 * xfaces.c (xstricmp):
9924 * xdisp.c (store_frame_title, string_char_and_length):
9925 (message_dolog, message2, message2_nolog, set_message): Likewise.
9926 (set_message_1): Cast message string argument to const pointer.
9927 * editfns.c (general_insert_function): Insertion function now
9928 takes pointer to const for input data.
9929 * charset.h (find_charset_in_text, c_string_width):
9930 (parse_str_as_multibyte): Declarations updated.
9931 * dispextern.h (xstricmp): Declaration updated.
9932 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
9933 (count_size_as_multibyte, count_combining_before):
9934 (count_combining_after, insert_1, insert_1_both, message_dolog):
9935 (insert, insert_and_inherit, insert_before_markers)
9936 (insert_before_markers_and_inherit, set_message, message2):
9937 (message2_dolog, build_string, make_string, make_unibyte_string):
9938 (make_multibyte_string, intern, oblookup, report_file_error):
9939 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
9940 (emacs_open, xstrdup): Declarations updated.
9941 * systime.h (set_file_times): Declaration updated.
9942
9943 * charset.c (find_charset_in_text, lisp_string_width): Use const
9944 for pointer to lisp string data.
9945 * charset.h (FETCH_STRING_CHAR_ADVANCE):
9946 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
9947 * coding.c (Ffind_coding_systems_region_interval):
9948 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
9949 (Fmake_directory_internal, Fdelete_directory):
9950 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
9951 * fontset.c (font_family_registry, fs_query_fontset):
9952 (list_fontsets):
9953 * frame.c (Fframe_parameter):
9954 * keyboard.c (cmd_error_internal):
9955 * keymap.c (Fdescribe_buffer_bindings):
9956 * lread.c (complete_filename_p, openp):
9957 * minibuf.c (Fminibuffer_complete_word):
9958 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
9959 (face_before_or_after_it_pos, next_element_from_string):
9960 (get_overlay_arrow_glyph_row, display_mode_element):
9961 (decode_mode_spec_coding):
9962 * xterm.c (same_x_server): Likewise.
9963
9964 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
9965 settings of non-existent fields.
9966
9967 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
9968 copy a lisp value.
9969
9970 * lread.c (Fintern_soft): Use string macros instead of
9971 Lisp_String fields.
9972 * keyboard.c (echo_char, parse_modifiers_uncached):
9973 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
9974 * textprop.c (validate_interval_range, interval_of): Likewise.
9975
9976 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
9977
9978 * charset.h (FETCH_STRING_CHAR_ADVANCE)
9979 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
9980 XSTRING()->size_byte.
9981
9982 * lisp.h (SDATA, SREF): Produce rvalue.
9983 (SSET): New macro.
9984 * alloc.c (make_event_array): Use SSET for storing into a string.
9985 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
9986 a string.
9987 * casefiddle.c (casify_object): Use SSET.
9988 * charset.h (FETCH_STRING_CHAR_ADVANCE)
9989 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
9990 address of string contents.
9991 * data.c (Faref): Use SDATA.
9992 (Faset): Use SDATA, SSET.
9993 * dired.c (directory_files_internal): Use SSET.
9994 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
9995 (Fread_file_name): Use SREF, SSET.
9996 * fns.c (concat): Use SSET.
9997 (concat, Fdelete): Use SDATA.
9998 * insdel.c (insert_from_string_1): Use SDATA.
9999 * keyboard.c (Fevent_convert_list): Use SREF.
10000 * lread.c (Fload): Use SDATA, SSET.
10001 * macfns.c (validate_x_resource_name): Use SSET.
10002 * process.c (status_message): Use SSET.
10003 * search.c (wordify): Use SDATA.
10004 (Freplace_match): Use SREF.
10005 * w32fns.c (validate_x_resource_name): Use SSET.
10006 * xfns.c (validate_x_resource_name): Use SSET.
10007 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
10008
100092002-07-16 Richard M. Stallman <rms@gnu.org>
10010
10011 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
10012
10013 * xdisp.c (reconsider_clip_changes):
10014 Don't test prevent_redisplay_optimizations_p.
10015 (redisplay_internal): Test prevent_redisplay_optimizations_p
10016 along with clip_changed in some cases.
10017 (try_window_id): Likewise.
10018 (redisplay_window): New local var buffer_unchanged_p.
10019
10020 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
10021
10022 * process.c (create_process): Test USG_SUBTTY_WORKS.
10023 (process_send_signal): Clean up handling of GID.
10024 Detect errors in ioctls meant to set GID.
10025
10026 * window.c (temp_output_buffer_show):
10027 Don't set prevent_redisplay_optimizations_p.
10028
100292002-07-15 Juanma Barranquero <lektu@terra.es>
10030
10031 * eval.c (Fdefvaralias): Add docstring argument.
10032
100332002-07-15 Ken Raeburn <raeburn@gnu.org>
10034
10035 * lisp.h (STRING_INTERVALS): Produce rvalue.
10036 (STRING_SET_INTERVALS): New macro.
10037 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
10038 * fns.c (Fstring_as_multibyte): Likewise.
10039 * intervals.c (balance_possible_root_interval, delete_interval)
10040 (create_root_interval, copy_intervals_to_string): Likewise.
10041 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
10042 instead of 0.
10043
100442002-07-14 Ken Raeburn <raeburn@gnu.org>
10045
10046 * lisp.h (STRING_SET_CHARS): New macro.
10047 (SCHARS, SBYTES): Produce rvalues.
10048 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
10049 * fns.c (concat): Likewise.
10050 * lread.c (read_vector): Likewise.
10051
10052 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
10053 (STRING_SET_UNIBYTE): New macro.
10054 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
10055 length of -1) changed to use STRING_SET_UNIBYTE.
10056 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
10057 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
10058 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
10059 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
10060 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
10061 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
10062 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
10063 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
10064 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
10065 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
10066 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
10067 STRING_BYTES or indirection changed to SCHARS, SBYTES,
10068 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
10069 unchanged for now.
10070
100712002-07-13 Kim F. Storm <storm@cua.dk>
10072
10073 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
10074
100752002-07-12 Richard M. Stallman <rms@gnu.org>
10076
10077 * fileio.c (Fwrite_region): Doc fix.
10078
10079 * print.c (print_error_message): Don't handle Vsignaling_function here.
10080
10081 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
10082 (command_loop_1): Avoid certain actions after memory-full error.
10083
10084 * eval.c (Fsignal): Don't call cancel_hourglass.
10085 For a memory-full error, don't call Vsignal_hook_function
10086 and don't set Vsignaling_function.
10087
10088 * process.c (process_send_signal): Add abort call.
10089
100902002-07-11 Markus Rost <rost@math.ohio-state.edu>
10091
10092 * keymap.c (Fkey_binding): Fix typo.
10093
100942002-07-11 Richard M. Stallman <rms@gnu.org>
10095
10096 * alloc.c (Vmemory_full): New variable.
10097 (Vmemory_signal_data): Renamed from memory_signal_data.
10098 Uses changed.
10099 (syms_of_alloc): Defvar them.
10100 (memory_full, buffer_memory_full): Set Vmemory_full.
10101
10102 * lisp.h (Vmemory_full): Add declaration.
10103 (current_column, indented_beyond_p): Change declaration.
10104
10105 * indent.c (last_known_column): Declare as double, not float.
10106 (current_column, current_column_1, string_display_width)
10107 (position_indentation): Return `double'.
10108 (indented_beyond_p): Arg `column' is `double'. Callers changed.
10109
10110 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
10111 (back_to_previous_visible_line_start)
10112 (reseat_at_next_visible_line_start, next_element_from_buffer):
10113 Use `double', not `float', when calling indented_beyond_p.
10114
10115 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
10116
10117 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
10118
101192002-07-11 Juanma Barranquero <lektu@terra.es>
10120
10121 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
f9711de4
JB
10122 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
10123 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
10124 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
10125 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
10126 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
048addec
JD
10127
101282002-07-10 Juanma Barranquero <lektu@terra.es>
10129
d814862a
JB
10130 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
10131 All callers changed.
048addec
JD
10132
101332002-07-09 Stefan Monnier <monnier@cs.yale.edu>
10134
10135 * data.c (Fdefalias): Add an optional `docstring' argument.
10136 (set_internal, Fsetq_default): Use XCAR/XCDR.
10137
10138 * composite.c (HASH_VALUE, HASH_KEY):
10139 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
10140
101412002-07-09 Kenichi Handa <handa@etl.go.jp>
10142
10143 * callproc.c (Fcall_process): Fix previous change.
10144
101452002-07-07 Stefan Monnier <monnier@cs.yale.edu>
10146
10147 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
10148 Add support for hash-tables.
10149 (Ftry_completion): Return t even if the string appears multiple times.
10150
10151 * fns.c (Fnconc): Use XCDR.
10152 (Fprovide): Use CONSP and XCDR.
10153 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
10154 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
10155 (Fmake_hash_table): Accept `:size nil'.
10156 (Fmakehash): Delete: moved to subr.el.
10157 (syms_of_fns): Don't defsubr makehash.
10158
10159 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
10160 (HASH_TABLE_SIZE): Move from fns.c.
10161
101622002-07-07 Richard M. Stallman <rms@gnu.org>
10163
10164 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
10165 Instead just return 0 when there is something to be done.
10166 (try_scrolling): If make_cursor_line_fully_visible returns 0,
10167 retry scrolling as if cursor were off the bottom.
10168 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
10169 return CURSOR_MOVEMENT_MUST_SCROLL.
10170 (redisplay_window): If make_cursor_line_fully_visible returns 0,
10171 go to try_to_scroll.
10172
10173 * buffer.c (Fbuffer_local_value): Store current value into its binding
10174 so we get the up-to-date value for the binding that is loaded.
10175
10176 * eval.c (Fdefmacro): Doc fix.
10177
101782002-07-05 Dave Love <fx@gnu.org>
10179
10180 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
10181 correctly.
10182
10183 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
10184 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
10185 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
10186 CCL_LookupCharConstTbl.
10187 (syms_of_ccl): Defvar translation-hash-table-vector.
10188
101892002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10190
10191 * xdisp.c: Remove unused variable `face'.
10192
101932002-07-04 Juanma Barranquero <lektu@terra.es>
10194
10195 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
10196 obsolescence information.
10197
101982002-07-03 Andrew Choi <akochoi@shaw.ca>
10199
10200 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
10201 pattern. Search cache first.
10202 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
10203 for Japanese font.
10204 (XLoadQueryFont): Use it.
10205
102062002-07-02 Richard M. Stallman <rms@gnu.org>
10207
10208 * keymap.c (Fdefine_key): Doc fix.
10209
10210 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
10211
102122002-07-02 Juanma Barranquero <lektu@terra.es>
10213
10214 * keymap.c (syms_of_keymap): Fix typo.
10215
102162002-07-01 Andrew Choi <akochoi@shaw.ca>
10217
10218 * s/darwin.h: Define POSIX_SIGNALS.
10219
10220 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
10221 and FSRefMakePath to convert FSSpec returned with Apple Event to
10222 Posix pathname.
10223 (mac_initialize) [TARGET_API_MAC_CARBON]:
10224 Call init_required_apple_events and disable the `Quit' menu item
10225 provided automatically by the Carbon Toolbox.
10226
102272002-07-01 Dave Love <fx@gnu.org>
10228
10229 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
10230 for K&R.
10231
10232 * xterm.c: Fix prototype for K&R.
10233
10234 * term.c (costs_set): Declare static, non-initialized for pcc.
10235
102362002-07-01 Richard M. Stallman <rms@gnu.org>
10237
10238 * keyboard.c (timer_last_idleness_start_time): New variable.
10239 (timer_start_idle): Set that.
10240 (read_key_sequence): Use that to reset timer_idleness_start_time
10241 to previous value.
10242
10243 * window.c (Frecenter): With arg, set optional_new_start.
10244
10245 * xdisp.c (redisplay_internal): Make optional_new_start really work.
10246
10247 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
10248 buffer for completion.
10249
102502002-06-29 Ken Raeburn <raeburn@gnu.org>
10251
10252 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
10253
102542002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10255
10256 * keyboard.c (readable_filtered_events): New function that filters
10257 FOCUS_IN_EVENT depending on parameter.
10258 (readable_events): Calls readable_filtered_events, not filtering
10259 FOCUS_IN_EVENT.
10260 (get_filtered_input_pending): New function, filtering parameter passed
10261 to readable_filtered_events.
10262 (get_input_pending): Calls get_filtered_input_pending, not filtering
10263 FOCUS_IN_EVENT.
10264 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
10265 FOCUS_IN_EVENT.
10266
10267 * xterm.h (struct x_output): Add focus_state.
10268
10269 * xterm.c (x_focus_changed): New function.
10270 (x_detect_focus_change): New function.
10271 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
10272 EnterNotify and LeaveNotify to track X focus changes.
10273
102742002-06-28 Andreas Schwab <schwab@suse.de>
10275
10276 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
10277
102782002-06-27 Kim F. Storm <storm@cua.dk>
10279
10280 * xdisp.c: (mode_line_string_list, mode_line_string_face)
10281 (mode_line_string_face_prop): New variables.
10282 (store_mode_line_string): New function.
10283 (display_mode_element): Use store_mode_line_string to
10284 add mode-line string elements to mode_line_string_list
10285 when mode_line_string_list is non-nil.
10286 (Fformat_mode_line): Now returns propertized string by
10287 default. New arg NO-PROPS to ignore properties.
10288 (decode_mode_spec): Only add two dashes for %- in propertized
10289 mode-line string.
10290 (syms_of_xdisp): Init and staticpro mode_line_string_list.
10291
102922002-06-27 Stefan Monnier <monnier@cs.yale.edu>
10293
10294 * minibuf.c (minibuffer_completion_contents): Add return type.
10295
102962002-06-27 Juanma Barranquero <lektu@terra.es>
10297
10298 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
10299
103002002-06-26 Juanma Barranquero <lektu@terra.es>
10301
10302 * fileio.c (read_file_name_cleanup): Add missing return.
10303
103042002-06-26 Richard M. Stallman <rms@gnu.org>
10305
10306 * window.c (Frecenter): Don't set force_start flag.
10307
10308 * minibuf.c (do_completion, Fminibuffer_complete_word)
10309 (Fminibuffer_completion_help): Complete just the text before point.
10310 (minibuffer_completion_contents): New function.
10311
10312 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
10313
10314 * frame.c (frames_bury_buffer): Function deleted.
10315
103162002-06-25 Miles Bader <miles@gnu.org>
10317
10318 * callint.c (Fcall_interactively): When checking to see if doprnt hit
10319 the end of callint_message, allow for a terminating '\0'.
10320
103212002-06-24 Juanma Barranquero <lektu@terra.es>
10322
10323 * w32select.c: Include composite.h
10324
10325 * w16select.c: Likewise.
10326
103272002-06-24 Kenichi Handa <handa@etl.go.jp>
10328
10329 * callproc.c (Fcall_process): If code detection is necessary,
10330 call detect_coding directly here.
10331
10332 * coding.c (detect_eol): Preserve coding->cmp_data.
10333
10334 * w16select.c (Fw16_get_clipboard_data):
10335 * w32fns.c (w32_to_x_font):
10336 * w32select.c (Fw32_get_clipboard_data):
10337 * xselect.c (selection_data_to_lisp_data):
10338 * xterm.c (XTread_socket): Disable composition handling.
10339
103402002-06-24 Stefan Monnier <monnier@cs.yale.edu>
10341
10342 * print.c (temp_output_buffer_setup): Kill all local variables.
10343
103442002-06-22 Stefan Monnier <monnier@cs.yale.edu>
10345
10346 * lread.c (Fread): Remove redundant and imprecise declaration.
10347
10348 * xfns.c (check_x_display_info): Use check_x_frame.
10349
10350 * .gdbinit (xprintsym): Use the new `xname' field.
10351 (xsymbol): Use it.
10352
103532002-06-22 Jason Rumney <jasonr@gnu.org>
10354
10355 * w32fns.c (file_dialog_callback): New function.
10356 (Fx_file_dialog): Allow selecting directories as well as files.
10357
103582002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10359
10360 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
f63fd14e 10361 OpenBSD. Add support for mipseb-*-netbsd* machines.
048addec
JD
10362
103632002-06-17 Andrew Choi <akochoi@shaw.ca>
10364
10365 * macterm.c (mac_scroll_area): Set foreground and backcolor to
10366 black and white before scrolling. Restore frame background and
10367 foreground color after scrolling.
10368 (do_window_update): Call XClearWindow before calling expose_frame.
10369 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
10370 FRAME_FOREGROUND_PIXEL of frame.
10371
10372 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
10373 test Mac command key as <ALT> key.
10374
103752002-06-17 Stefan Monnier <monnier@cs.yale.edu>
10376
10377 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
10378
10379 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
10380 Lookup keys in function-key-map immediately so that key-translation-map
10381 can be applied earlier.
10382 Remove function_key_possible and key_translation_possible, replaced
10383 by checking `keytran_start < t'.
10384
10385 * .gdbinit (xsymbol): Use the new `xname' field.
10386
103872002-06-17 Andrew Choi <akochoi@shaw.ca>
10388
10389 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
10390 test Mac command key as <ALT> key.
10391
10392 * mac.c (do_applescript): Call initialize_applescript if necessary
10393 when first called. Dispose of result_desc only when there is no error.
10394 (Fdo_applescript): Use %d format specifier instead of %ld.
10395
103962002-06-16 Andrew Choi <akochoi@shaw.ca>
10397
10398 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
10399 of FrontWindow for cases keyDown and autoKey.
10400
10401 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
10402 Vdefault_fontset to Monaco with mac-roman coding.
10403
10404 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
10405 init_process before and after inclusion of Carbon/Carbon.h, resp.
10406
10407 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
10408 cursor_gc.
10409 (add_font_name_table_entry): New function.
10410 (init_font_name_table): Use add_font_name_table_entry; add italic,
10411 bold, and bold-italic entries for truetype fonts.
10412
10413 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
10414 for Mac too.
10415 (try_font_list) [MAC_OS]: If no font matches given registry, try
10416 fonts with any registry matching face_family.
10417 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
10418
10419 * s/darwin.h: If autoconf detects the Ncurses library, define
10420 LIBS_TERMCAP to -lncurses to use it.
10421
104222002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
10423
10424 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
10425
104262002-06-15 Richard M. Stallman <rms@gnu.org>
10427
10428 * window.c (Fset_window_configuration): Explicitly preserve
10429 the point value that new_current_buffer had at the start.
10430
104312002-06-14 Juanma Barranquero <lektu@terra.es>
10432
10433 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
10434 Fix typos.
10435
104362002-06-14 Kim F. Storm <storm@cua.dk>
10437
10438 * insdel.c (insert_1_both, insert_from_string_1)
10439 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
10440 insert happened in the end_unchanged region. Otherwise, the
10441 redisplay may be confused and duplicate the last line in the
10442 buffer [seen after save-buffer when require-final-newline==t].
10443
104442002-06-13 Jason Rumney <jasonr@gnu.org>
10445
10446 * w32.c (init_environment): Remove EMACSLOCKDIR.
10447 (stat): Swap _S_IFDIR and _S_IFREG.
10448
104492002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10450
10451 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
10452 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
10453 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
10454 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
10455 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
10456 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
10457 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
10458 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
10459 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
10460 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
10461 SELECTION_REQUEST_EVENT, selection_clear_event to
10462 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
10463 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
10464 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
10465 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
10466 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
10467 no_event to NO_EVENT.
10468
104692002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10470
10471 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
10472
104732002-06-12 Stefan Monnier <monnier@cs.yale.edu>
10474
10475 * intervals.c (textget): Don't forget to `return'.
10476 (lookup_char_property): Use XCAR/XCDR.
10477
104782002-06-12 Juanma Barranquero <lektu@terra.es>
10479
10480 * xdisp.c (Fformat_mode_line): Fix typo.
10481
104822002-06-12 Kim F. Storm <storm@cua.dk>
10483
10484 * xdisp.c (Fformat_mode_line): New function.
10485 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
10486 (store_frame_title_char, store_frame_title): Use unconditionally.
10487 (init_xdisp): Defsubr Fformat_mode_line.
10488 Initialize frame_title_buf etc. unconditionally.
10489
104902002-06-11 Stefan Monnier <monnier@cs.yale.edu>
10491
10492 * keyboard.c (read_key_sequence):
10493 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
10494 things through those maps after downcasing events.
10495 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
10496 applies after function-key-map.
10497 Make sure that keytran can be done in the middle in the sequence.
10498 Be careful not to throw away events past the one we downcase.
10499
10500 * lread.c (read_integer): Remove unused var `tem'.
10501 (read1): Fix int/Lisp_Object mixup.
10502
10503 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
10504
105052002-06-11 Richard M. Stallman <rms@gnu.org>
10506
10507 * keyboard.c (readable_events): Ignore any number of
10508 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
10509
105102002-06-09 Miles Bader <miles@gnu.org>
10511
10512 * xfaces.c (Ftty_supports_face_attributes_p): New function.
10513 (parse_rgb_list, tty_lookup_color): New functions.
10514 (tty_defined_color): Use `tty_lookup_color' to do all the work.
10515 (color_distance, Fcolor_distance): New functions.
10516 (TTY_SAME_COLOR_THRESHOLD): New macro.
10517 (Qtty_color_standard_values): New variable.
10518 (syms_of_xfaces): Initialize new vars & functions.
10519
105202002-06-08 Colin Walters <walters@verbum.org>
10521
10522 * textprop.c (Vchar_property_alias_alist): New variable.
10523 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
10524
10525 * intervals.c (lookup_char_property): New function for looking up
10526 overlay and text properties, created from textget.
10527 (textget): Use it.
10528
10529 * intervals.h (lookup_char_property): Declare.
10530 (Vchar_property_alias_alist): Declare.
10531
10532 * buffer.c (Foverlay_get): Use lookup_char_property.
10533
105342002-06-07 Sam Steingold <sds@gnu.org>
10535
10536 * xselect.c (lisp_data_to_selection_data): Fix last change:
10537 *data_ret is not a Lisp string, while unibyte_string is.
10538
105392002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
10540
10541 * xselect.c (lisp_data_to_selection_data): Fix last change:
10542 set size_ret.
10543
105442002-06-07 Andreas Schwab <schwab@suse.de>
10545
10546 * m/amdx86-64.h: New file.
10547
105482002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
10549
10550 * fns.c (Fstring_make_unibyte): Doc fix.
10551
10552 * xselect.c (lisp_data_to_selection_data): If the requested type
10553 is STRING, call string_make_unibyte to encode the selected text
10554 as a string.
10555
10556 * window.c (Fset_window_hscroll): Doc fix.
10557
105582002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10559
10560 * fileio.c (choose_write_coding_system):
10561 Call select-safe-coding-system properly.
10562
105632002-06-03 Richard M. Stallman <rms@gnu.org>
10564
10565 * xdisp.c (message_with_string): Error if STRING is not a string.
10566
10567 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
10568
10569 * fileio.c (choose_write_coding_system): Pass FILE arg to
10570 Vselect_safe_coding_system_function.
10571
105722002-06-03 Ken Raeburn <raeburn@gnu.org>
10573
10574 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
10575
105762002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
10577
10578 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
10579 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
10580 * keymap.c (describe_command): Likewise.
10581 * minibuf.c (read_minibuf): Likewise.
10582
10583 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
10584 Cast `current_column' return value to int.
10585 (back_to_previous_visible_line_start)
10586 (reseat_at_next_visible_line_start, next_element_from_buffer):
10587 Cast `indented_beyond_p' 3rd arg to float.
10588
10589 * indent.c (last_known_column): Now a float.
10590 (current_column_1, position_indentation, current_column)
10591 (string_display_width): Return float.
10592 (Fcurrent_column): Cast `current_column' return value to int.
10593 (Fcurrent_indentation): Cast `position_indentation' retval to int.
10594 (indented_beyond_p): Third arg now a float.
10595 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
10596
10597 * lisp.h (current_column): Now returns float.
10598 (indented_beyond_p): 3rd arg now a float.
10599
106002002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
10601
10602 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
10603 is Qcompound_text_with_extensions.
10604
10605 * xselect.c (lisp_data_to_selection_data): Always set selection
10606 type as string if x_encode_text returns streingp non-NULL.
10607
10608 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
10609
106102002-05-30 Richard M. Stallman <rms@gnu.org>
10611
10612 * window.c (Fset_window_configuration): Correct the handling
10613 of point in current buffer, to work with multiple windows.
10614
106152002-05-29 Colin Walters <walters@verbum.org>
10616
10617 * lread.c (Fread_from_string): Don't depend on order of evaluation
10618 for C function parameters.
10619
106202002-05-28 Richard M. Stallman <rms@gnu.org>
10621
10622 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
10623 way for blinked-off state and for a nonselected window.
10624
10625 * window.c (window_scroll_pixel_based): Don't call Fbolp;
10626 instead, see if the new start pos is at beginning of line.
10627
10628 * fileio.c (Fwrite_region): If START is a string, don't
10629 make any annotations.
10630
10631 * eval.c (syms_of_eval): Doc fix.
10632
106332002-05-28 Colin Walters <walters@debian.org>
10634
10635 * emacs.c (USAGE1): Add --no-splash.
10636 (standard_args): Ditto.
10637
106382002-05-28 Colin Walters <walters@gnu.org>
10639
10640 * lread.c (readchar_count): New variable.
10641 (readchar): Increment it.
10642 (unreadchar): Decrement it.
10643 (read_multibyte): Decrement it.
10644 (Vread_with_symbol_positions): New variable.
10645 (Vread_symbol_positions_list): New variable.
10646 (read_internal_start): New function, created from Fread and
10647 Fread_from_string. Handle Vread_symbol_positions_list and
10648 Vread_with_symbol_positions.
10649 (readevalloop, Fread, Fread_from_string): Use it.
10650 (read1): Use readchar_count to add symbol positions to
10651 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
10652 (syms_of_lread): DEFVAR_LISP and initialize them.
10653
10654 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
10655 (substitute_object_recurse, substitute_object_in_subtree)
10656 (substitute_in_interval): Prototype.
10657 (read_multibyte): Return c if it's less than zero.
10658
106592002-05-28 Kim F. Storm <storm@cua.dk>
10660
10661 * fileio.c (Fread_file_name_internal): Added brute-force
10662 speed up for using predicate file-directory-p.
10663
106642002-05-28 Kim F. Storm <storm@cua.dk>
10665
10666 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
10667 New variables.
10668 (syms_of_fileio): DEFVAR_LISP them.
10669 (read_file_name_cleanup): New unwind function.
10670 (Fread_file_name_internal): Only return completions satifying
10671 Vread_file_name_predicate. Temporarily unwind protect and rebind
10672 default-directory while checking completions against the predicate.
10673 (Fread_file_name): Added PREDICATE argument. Specbind it to
10674 Vread_file_name_predicate during completion.
10675 Call Vread_file_name_function to read the file name if non-nil.
10676
10677 * lisp.h (Fread_file_name): Now has 6 args.
10678
10679 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
10680 predicate for Fread_file_name when reading directory name.
10681 Supply Qnil for predicate in other calls to Fread_file_name.
10682
106832002-05-26 Miles Bader <miles@gnu.org>
10684
10685 * term.c (tty_capable_p): New function.
10686 * dispextern.h (tty_capable_p): New function declaration.
10687 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
10688 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
10689
106902002-05-23 Stefan Monnier <monnier@cs.yale.edu>
10691
10692 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
10693 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
10694 (Vwrite_region_annotate_functions): Docstring fix.
10695
106962002-05-23 Kim F. Storm <storm@cua.dk>
10697
10698 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
10699 phys_cursor's hpos is overwritten. This is still not completely
10700 correct, as it doesn't really make sense to use hpos at all to
10701 get the cursor glyph (as that is relative to the width of the
10702 characters on the line, which may have changed during the update).
10703
107042002-05-22 Jason Rumney <jasonr@gnu.org>
10705
10706 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
10707 Lisp_Object.
10708 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
10709 Use modified enumfont_t struct.
10710
10711 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
10712
10713 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
10714 Handle the `hbar' cursor type.
10715 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
10716
10717 * w32fns.c (Qhbar): New variable.
10718 (x_specified_cursor_type): Use it.
10719
107202002-05-21 Ken Raeburn <raeburn@gnu.org>
10721
10722 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
10723 now, when the address is needed.
10724
107252002-05-21 Colin Walters <walters@gnu.org>
10726
10727 * Makefile.in (shortlisp): Add font-core.el.
10728
107292002-05-20 Richard M. Stallman <rms@gnu.org>
10730
10731 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
10732
10733 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
10734 equivalent key bindings here.
10735
107362002-05-20 Ken Raeburn <raeburn@gnu.org>
10737
10738 Change symbol structure to contain a lisp object for the symbol
10739 name:
10740 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
10741 object field named "xname".
10742 (SYMBOL_NAME): New macro.
10743 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
10744 name field.
10745 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
10746 (mark_object, gc_sweep): Use symbol xname field and XSTRING
10747 instead of name field.
10748 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
10749 SYMBOL_NAME instead of XSYMBOL and name field.
10750 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
10751 instead of XSYMBOL and name field.
10752 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
10753 and SYMBOL_NAME instead of XSYMBOL and name field.
10754 * coding.c (Fread_coding_system, code_convert_region1)
10755 (code_convert_string1, code_convert_string_norecord)
10756 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
10757 XSYMBOL and name field.
10758 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
10759 (Fmake_variable_buffer_local, Fmake_local_variable)
10760 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
10761 of XSYMBOL and name field.
10762 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
10763 XSYMBOL and name field.
10764 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
10765 instead of XSYMBOL and name field.
10766 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
10767 XSYMBOL and name field.
10768 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
10769 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10770 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
10771 instead of XSYMBOL and name field.
10772 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
10773 (parse_modifiers, apply_modifiers, Fevent_convert_list)
10774 (parse_solitary_modifier, Fexecute_extended_command):
10775 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10776 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
10777 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
10778 of XSYMBOL and name field.
10779 (describe_command, describe_translation): Use SYMBOL_NAME and
10780 assignment instead of XSYMBOL and name field and XSETSTRING.
10781 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
10782 instead of XSYMBOL and name field.
10783 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
10784 name field and XSETSTRING.
10785 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
10786 of XSYMBOL and name field.
10787 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
10788 assignment instead of XSYMBOL and name field and XSETSTRING.
10789 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
10790 XSTRING instead of XSYMBOL and name field.
10791 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
10792 and XSTRING instead of XSYMBOL and name field.
10793 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
10794 and XSTRING instead of XSYMBOL and name field.
10795 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
10796 XSTRING instead of XSYMBOL and name field.
10797 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
10798 of XSYMBOL and name field.
10799 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
10800 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10801
108022002-05-19 Ken Raeburn <raeburn@gnu.org>
10803
10804 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
10805 and XCDR real rvalues in most configurations.
10806
10807 * buffer.c (fix_overlays_in_range, fix_overlays_before):
10808 Don't take the address of the cdr part of a cons cell; instead, track
10809 the parent cell and call XSETCDR, or set the variable for the head
10810 of the list if we haven't started down the list yet.
10811
108122002-05-19 Richard M. Stallman <rms@gnu.org>
10813
10814 * doc.c (reread_doc_file): Don't ask for confirmation.
10815
108162002-05-18 Jason Rumney <jasonr@gnu.org>
10817
10818 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
10819 (xbm_load_image): Use it.
10820 (xbm_load): Ditto.
10821 (xbm_read_bitmap_data): Reverted to xfns.c version.
10822 From David Ponce <david@dponce.com>.
10823
108242002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
10825
10826 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
10827 2.02 and later.
10828
108292002-05-16 Juanma Barranquero <lektu@terra.es>
10830
10831 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
10832
108332002-05-15 Stefan Monnier <monnier@cs.yale.edu>
10834
10835 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
10836 meaningful test.
10837 (read_char_minibuf_menu_prompt): Fix typo.
10838
108392002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
10840
10841 * eval.c (Fcommandp): Doc fix.
10842
108432002-05-13 Stefan Monnier <monnier@cs.yale.edu>
10844
10845 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
10846 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
10847 (Fset_keymap_parent): Gcpro a bit more.
10848 (access_keymap): Gcpro around meta_map call and around the main loop.
10849 (get_keyelt): Gcpro when following indirect references.
10850 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
10851 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
10852 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
10853 Remove useless ad-hoc remap code.
10854
108552002-05-13 Richard M. Stallman <rms@gnu.org>
10856
10857 * search.c (search_buffer): Give up boyer moore search if inverse
10858 translation change charset_base.
10859
108602002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
10861
10862 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
10863 characters is carried over from the previous block of text, adjust
10864 coding->produced to account for the extra character.
10865
108662002-05-11 Andreas Schwab <schwab@suse.de>
10867
10868 * coding.c (intersection): Keep the elements of the returned list
10869 in the same order as in the first list.
10870
108712002-05-11 Kim F. Storm <storm@cua.dk>
10872
10873 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
10874 only update cmm_size if realloc actually succeeds.
10875 Testing with initial size of 2 elements revealed that using
10876 realloc on GNU/Linux would cause a random trap in xmalloc
10877 later on, so I rewrote the code to use malloc/bcopy/free instead
10878 of realloc.
10879
108802002-05-10 Jason Rumney <jasonr@gnu.org>
10881
10882 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
10883
108842002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
10885
10886 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
10887 parens, to ensure correct evaluation order.
10888
108892002-05-10 Kim F. Storm <storm@cua.dk>
10890
10891 * keymap.c (Vemulation_mode_map_alists): New variable.
10892 (syms_of_keymap): DEFVAR_LISP it.
10893 (current_minor_maps): Process keymap alists in that list before
10894 minor-mode-overriding-map-alist and minor-mode-map-alist.
10895
108962002-05-09 Richard M. Stallman <rms@gnu.org>
10897
10898 * search.c (Freplace_match): Doc fix.
10899
109002002-05-09 Kim F. Storm <storm@cua.dk>
10901
10902 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
10903 Enlarge cursor rectangle drawn around image with non-zero relief.
10904
10905 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
10906 Enlarge cursor rectangle drawn around image with non-zero relief.
10907
10908 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
10909 Enlarge cursor rectangle drawn around image with non-zero relief.
10910
109112002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
10912
10913 * xselect.c (lisp_data_to_selection_data): Don't set selection
10914 type if comes from the Lisp object's car. If the selection
10915 contains a pure ASCII text, always return QSTRING as its type.
10916
109172002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10918
10919 * mac.c (mac-cut-function): Doc fix.
10920
109212002-05-05 Richard M. Stallman <rms@gnu.org>
10922
10923 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
10924
109252002-05-04 Jason Rumney <jasonr@gnu.org>
10926
10927 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
10928 for event-click-count.
10929
10930 * process.c (init_process): Only add server subfeature if we can
10931 use non-blocking I/O.
10932
109332002-05-04 Andrew Choi <akochoi@shaw.ca>
10934
10935 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
10936 repeatedly.
10937
109382002-05-03 Jason Rumney <jasonr@gnu.org>
10939
10940 * process.c (Fmake_network_process): Only support server sockets
10941 when we can make them non-blocking.
10942
10943 * s/ms-w32.h (HAVE_SELECT): Define.
10944
10945 * w32.h (FILE_NDELAY): New flag.
10946
10947 * w32.c (sys_getpeername, fcntl): New functions.
10948 (_sys_read_ahead): Temporarily block on non-blocking sockets.
10949
10950 * w32proc.c: include sys/file.h.
10951
109522002-05-03 Colin Walters <walters@verbum.org>
10953
10954 * callproc.c (Vgame_score_directory): Renamed to
10955 Vshared_game_score_directory.
10956
109572002-04-30 Richard M. Stallman <rms@gnu.org>
10958
10959 * s/gnu.h [emacs]: Include stdio.h.
10960 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
10961
10962 * eval.c (do_autoload): Error if called while preparing to dump.
10963
10964 * fns.c (Frequire): Error if need to load while preparing to dump.
10965
109662002-04-28 Colin Walters <walters@verbum.org>
10967
10968 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
10969 Default to "~/.emacs.d/games".
10970
109712002-04-29 Stefan Monnier <monnier@cs.yale.edu>
10972
10973 * lread.c (openp): Change arg exec_only to predicate.
10974 (build_load_history): Use XCAR/XCDR.
10975 (Flocate_file_internal): New fun.
10976 (syms_of_lread): Defsubr it.
10977 (Fload): Update call to openp.
10978
10979 * lisp.h (openp): Update prototype.
10980
10981 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
10982 * w32proc.c (sys_spawnve):
10983 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
10984 * w32.c (check_windows_init_file):
10985 * sound.c (Fplay_sound_internal):
10986 * process.c (Fstart_process):
10987 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
10988 * mac.c (run_mac_command):
10989 * emacs.c (init_cmdargs):
10990 * callproc.c (Fcall_process): Update call to openp.
10991
10992 * textprop.c (remove_properties): Don't use XCAR without CONSP.
10993
10994 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
10995
109962002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10997
10998 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
10999 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
11000
110012002-04-28 Richard M. Stallman <rms@gnu.org>
11002
11003 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
11004
11005 * eval.c (Fcommandp): New arg for_call_interactively.
11006 * lisp.h (Fcommandp): Declare new arg.
11007
110082002-04-28 Jason Rumney <jasonr@gnu.org>
11009
11010 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
11011
11012 * w32.c (stat, fstat): Use file index information to generate
11013 inodes for directories where available.
11014
110152002-04-26 Andrew Choi <akochoi@shaw.ca>
11016
11017 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
11018 [HAVE_CARBON]: Include Mac object files.
11019
11020 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
11021 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
11022 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
11023 MAC_OSX, and MAC_OS instead of macintosh.
11024
11025 * editfns.c [MAC_OS8]: Include stdio.h.
11026
11027 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
11028
11029 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
11030 Apple Monaco.
11031
11032 * process.c: Declare QCfamily and QCfilter as extern.
11033 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
11034 calling select.
11035
11036 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
11037
11038 * tparam.c [MAC_OSX]: Don't define BC and UP.
11039
11040 * config.in [HAVE_CARBON]: Add.
11041
11042 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
11043 Move here from mac/src and mac/inc.
11044
11045 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
11046
110472002-04-26 Gerd Moellmann <gerd@gnu.org>
11048
11049 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
11050 Compute phys_cursor_width from the x position returned
11051 by x_draw_glyhs, which is cheaper.
11052 (x_display_and_set_cursor): Compute the buffer-local value
11053 of `cursor-in-non-selected-windows' only when needed.
11054
110552002-04-25 Gerd Moellmann <gerd@gnu.org>
11056
11057 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
11058 cursor on a stretch glyph has a width that depends on
11059 x_stretch_cursor_p.
11060
110612002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11062
11063 * abbrev.c (abbrev-start-location): Doc fix.
11064
11065 * indent.c (Fvertical_motion): Fix last change.
11066
110672002-04-25 Gerd Moellmann <gerd@gnu.org>
11068
11069 * indent.c (Fvertical_motion): Move to the start of the line
11070 containing PT before moving up or down.
11071
110722002-04-24 Gerd Moellmann <gerd@gnu.org>
11073
11074 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
11075 case of writing a whole row, more or less analogous to the case of
11076 writing only parts of a row.
11077
11078 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
11079 0 for NO_CURSOR.
11080
11081 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
11082
110832002-04-23 Colin Walters <walters@verbum.org>
11084
11085 * buffer.c (syms_of_buffer): Doc fix.
11086
110872002-04-23 Gerd Moellmann <gerd@gnu.org>
11088
11089 * xterm.c (notice_overwritten_cursor): Handle the special case
11090 of the cursor being in the first blank non-text line at the
11091 end of a window.
11092
11093 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
11094 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
11095 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
11096 bar cursors only, to make phys_cursor_width contain what its name
11097 suggests.
11098 (notice_overwritten_cursor): Consider the cursor image erased if
11099 the output area intersects the cursor image in y-direction.
11100
111012002-04-23 Simon Marshall <simon@gnu.org>
11102
11103 * xfns.c (x_set_mouse_color): Change default for cross_cursor
11104 to XC_hand2.
11105
111062002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11107
11108 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
11109
111102002-04-22 Kim F. Storm <storm@cua.dk>
11111
11112 * textprop.c (remove_properties): Fixed trap for malformed plist.
11113
111142002-04-22 Richard M. Stallman <rms@gnu.org>
11115
11116 * cmds.c (Fend_of_line): Handle intangible text in mid line.
11117
11118 * window.c (make_window): Initialize height_fixed_p,
11119 last_cursor_off_p, and p->cursor_off_p slots.
11120
111212002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11122
11123 * fns.c (use-dialog-box): Doc fix.
11124
111252002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11126
11127 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
11128 variables `row', `i' and `area'.
11129 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
11130 toolkit library.
11131
111322002-04-19 Stefan Monnier <monnier@cs.yale.edu>
11133
11134 * xfaces.c (clear_font_table): Don't free the default font of
11135 a frame even if it's on another display.
11136 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
11137 that could be Qt.
11138
111392002-04-19 Juanma Barranquero <lektu@terra.es>
11140
11141 * indent.c (Fmove_to_column): Remove unused local variable
11142 `next_boundary_byte'.
11143 (current_column_1): Likewise.
11144
111452002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
11146
11147 * msdos.c (Qhbar): New variable.
11148 (syms_of_msdos): Intern and staticpro it.
11149 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
11150 cursor type.
11151
111522002-04-19 Dave Lambert <dlambert@acm.org>
11153
11154 Theses change implement an underscore-like (`hbar') cursor.
11155
11156 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
11157
11158 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
11159 Handle the `hbar' cursor type.
11160 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
11161
11162 * xfns.c (Qhbar): New variable.
11163 (syms_of_xfns): Intern and staticpro it.
11164 (x_specified_cursor_type): Handle `hbar' cursor.
11165
11166 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
11167 not defined.
11168
111692002-04-18 Richard M. Stallman <rms@gnu.org>
11170
11171 * textprop.c (remove_properties): New arg LIST allows scanning
11172 either a list or a plist.
11173 (interval_has_some_properties_list): New function, like
11174 interval_has_some_properties using list instead of plist.
11175 All callers changed.
11176 (Fremove_list_of_text_properties): New function.
11177 (syms_of_textprop): Defsubr it.
11178
111792002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
11180
11181 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
11182
111832002-04-17 Juanma Barranquero <lektu@terra.es>
11184
11185 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
11186
111872002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
11188
11189 * window.c (coordinates_in_window): Don't report on margin area
11190 if its width is zero.
11191
111922002-04-16 Jason Rumney <jasonr@gnu.org>
11193
11194 * w32fns.c (Fx_file_dialog): Decode file name before using.
11195
11196 * w32term.c (construct_drag_n_drop): Likewise.
11197
111982002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
11199
11200 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
11201 store load-history in pure space.
11202
11203 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
11204
112052002-04-16 Stefan Monnier <monnier@cs.yale.edu>
11206
11207 * xterm.c (Qlatin_1, Qutf_8): New vars.
11208 (syms_of_xterm): Initialize them.
11209 (XTread_socket): Eliminate incorrect optimization that tried to avoid
11210 decoding the output of X*LookupString.
11211 Always use latin-1 to decode the output of XLookupString.
11212 Try Xutf8LookupString if XmbLookupString failed.
11213
11214 * region-cache.c (new_region_cache): Use BEG.
11215
112162002-04-16 Gerd Moellmann <gerd@gnu.org>
11217
11218 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
11219 configuration files.
11220 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
11221 returns 0.
11222
112232002-04-15 Andreas Schwab <schwab@suse.de>
11224
11225 * config.in: Regenerated using autoheader.
11226
11227 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
11228 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
11229 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
11230 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
11231 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
11232 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
11233 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
11234 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
11235 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
11236 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
11237 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
11238 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
11239 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
11240 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
11241 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
11242 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
11243 STACK_DIRECTION, now set by autoconf.
11244
112452002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11246
11247 * dispnew.c (marginal_area_string): Sort arguments.
11248
11249 * dispextern.h (marginal_area_string): Add prototype.
11250
112512002-04-13 Richard M. Stallman <rms@gnu.org>
11252
11253 * fileio.c (Finsert_file_contents):
11254 Don't call temp_output_buffer_setup--do just part, by hand.
11255
11256 * coding.c (run_pre_post_conversion_on_str):
11257 Don't call temp_output_buffer_setup--do just part, by hand.
11258
11259 * keyboard.c (command_loop_1): Don't call start_hourglass
11260 or cancel_hourglass when executing a macro.
11261
11262 * marker.c (count_markers): New function.
11263
11264 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
11265 grow without limit. Move recently used elements to the front.
11266
112672002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
11268
11269 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
11270
112712002-04-12 Gerd Moellmann <gerd@gnu.org>
11272
11273 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
11274 rows marginal areas.
11275 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
11276 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
11277
11278 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
11279
112802002-04-12 Dave Love <fx@gnu.org>
11281
11282 * dispnew.c (marginal_area_string): New.
11283
11284 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
11285 (Qleft_margin, Qright_margin): Declare.
11286 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
11287
11288 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
11289 note_mode_line_highlight and extended.
11290
11291 * keyboard.c (Qleft_margin, Qright_margin): Declare.
11292 (make_lispy_event): Deal with mouse events in margins.
11293
112942002-04-12 Stefan Monnier <monnier@cs.yale.edu>
11295
11296 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
11297
11298 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
11299 than deactivating the mark if tmm is set to `lambda'.
11300 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
11301 Use a single event for HELP_EVENT.
11302 (Fexecute_extended_command): Save last_point_position.
11303
113042002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11305
11306 * lisp.h (Fpropertize): Add prototype.
11307
11308 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
11309
113102002-04-10 Colin Walters <walters@verbum.org>
11311
11312 * config.in: Add HAVE_SHARED_GAME_DIR.
11313
11314 * callproc.c: (Vgame_score_directory): New variable.
11315 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
11316
113172002-04-10 Richard M. Stallman <rms@gnu.org>
11318
11319 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
11320
113212002-04-09 Stefan Monnier <monnier@cs.yale.edu>
11322
11323 * minibuf.c (read_minibuf): Use empty_string.
11324 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
11325 Short-circuit the search as soon as it "failed".
11326 (Fall_completions): Allow lambda forms and lists of strings for alist.
11327 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
11328 when require_match is nil.
11329 (Ftest_completion): Rename from `test_completion' and export to elisp.
11330 Call the predicate also when alist is a list.
11331 Obey Vcompletion_regexp_list.
11332 (do_completion, Fminibuffer_complete_and_exit): Use it.
11333 (Fassoc_string): Rename from `assoc_for_completion'.
11334 Allow list of strings as well and export to elisp.
11335
113362002-04-08 Stefan Monnier <monnier@cs.yale.edu>
11337
11338 * puresize.h (BASE_PURESIZE): Increase to 900KB.
11339
113402002-04-08 Juanma Barranquero <lektu@terra.es>
11341
11342 * w32.c (sys_accept): Don't hide variable `s'.
11343
113442002-04-05 Gerd Moellmann <gerd@gnu.org>
11345
11346 * callint.c (Fcall_interactively): Use INTEGERP instead of
11347 NUMBERP for checking Vhistory_length.
11348
113492002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11350
11351 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
11352 Doc fix to reflect it.
11353
113542002-04-04 Richard M. Stallman <rms@gnu.org>
11355
11356 * xdisp.c (display_mode_element): New arg RISKY.
11357 Disregard text props found or specified within a variable
11358 that isn't marked risky-local-variable.
11359 (Qrisky_local_variable): New variable.
11360 (syms_of_xdisp): Init and staticpro it.
11361
113622002-04-04 Stefan Monnier <monnier@cs.yale.edu>
11363
11364 * undo.c (record_point): New fun.
11365 (record_delete, record_insert): Use it.
11366
113672002-04-03 Juanma Barranquero <lektu@terra.es>
11368
11369 * doc.c (Fdocumentation): Add missing parentheses.
11370 (Fdocumentation_property): Likewise.
11371
113722002-04-03 Stefan Monnier <monnier@cs.yale.edu>
11373
11374 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
11375 data is 0, just return nil.
11376
113772002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
11378
11379 * msdos.c (syms_of_msdos): Fix last change with
11380 mouse_autoselect_window.
11381
113822002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11383
11384 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
11385 mouse_autoselect_window.
11386
113872002-04-02 Stefan Monnier <monnier@cs.yale.edu>
11388
11389 * keyboard.c (make_lispy_event): Handle unknown keysyms together
11390 with system-specific keysyms. Use it also for unknown function keys.
11391
11392 * doc.c (reread_doc_file): Return whether reload was attempted.
11393 (Fdocumentation, Fdocumentation_property): Don't try to reload
11394 if the doc is 0 and only ask once.
11395
11396 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
11397
113982002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
11399
11400 * keyboard.c (read_char): If the event was Qselect_window,
11401 restore timer_idleness_start_time to its previous value.
11402
11403 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
11404
114052002-04-01 Stefan Monnier <monnier@cs.yale.edu>
11406
11407 * region-cache.c (new_region_cache): Use BEG.
11408
11409 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
11410 Use BEG and BEG_BYTE.
11411
11412 * doc.c (get_doc_string): Return nil if the location is wrong.
11413 (reread_doc_file): New fun.
11414 (Fdocumentation, Fdocumentation_property):
11415 Call it if get_doc_string fails.
11416 (Fsnarf_documentation): Make it work for a dumped Emacs.
11417
11418 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
11419 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
11420
11421 * charset.c (Fstring): Allow 0 arguments.
11422
11423 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
11424
11425 * process.c (DATAGRAM_CONN_P, list_processes_1)
11426 (Fprocess_datagram_address, Fset_process_datagram_address)
11427 (Fset_network_process_options, server_accept_connection):
11428 Fix some int/Lisp_Object confusions (thank you union types).
11429
114302002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11431
11432 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
11433
11434 * w32term.c: Likewise.
11435 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
11436
11437 * keyboard.c (Qselect_window): New symbol.
11438 (head_table): Use it.
11439 (keys_of_keyboard): Bound select-window event to handle-select-window.
11440 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
11441
11442 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
11443 (last_window): New variable.
11444 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
11445 (note_mouse_movement): Remove reimplemented code in #if 0.
11446 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
11447 Emacs windows.
11448
11449 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
11450
114512002-03-31 Gerd Moellmann <gerd@gnu.org>
11452
11453 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
11454 Callers changed.
11455
114562002-03-30 Richard M. Stallman <rms@gnu.org>
11457
11458 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
11459 loop whenever it stops making progress.
11460
11461 * widget.c (set_frame_size): Don't call change_frame_size.
11462
114632002-03-30 Gerd Moellmann <gerd@gnu.org>
11464
11465 * dispnew.c (direct_output_for_insert):
11466 Call mark_window_display_accurate.
11467
114682002-03-29 Jason Rumney <jasonr@gnu.org>
11469
11470 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
11471
114722002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
11473
11474 * Makefile.in (lread.o): Depend on coding.h.
11475
11476 * lread.c (openp, Fload): Encode the file name before passing it
11477 to `stat', `access', and `emacs_open'.
11478 (openp): GCPRO the encoded file name. Don't recompute Lisp
11479 strings unnecessarily.
11480
114812002-03-29 Kim F. Storm <storm@cua.dk>
11482
11483 * fns.c (Flax_plist_put): Doc fix.
11484
114852002-03-28 Miles Bader <miles@gnu.org>
11486
11487 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
11488
114892002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11490
11491 * process.c (set-network-process-options): Add usage.
11492 (make-network-process): Doc fix.
11493
114942002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
11495
11496 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
11497
114982002-03-26 Richard M. Stallman <rms@gnu.org>
11499
11500 * fns.c (Fsubstring_no_properties): New function.
11501 (Flax_plist_get, Flax_plist_put): New functions.
11502 (syms_of_fns): defsubr them.
11503
11504 * xdisp.c (update_menu_bar): Test only update_mode_lines;
11505 don't test or alter w->update_mode_line.
11506
11507 * window.c (Fdisplay_buffer): Doc fix.
11508
115092002-03-24 Richard M. Stallman <rms@gnu.org>
11510
11511 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
11512
115132002-03-24 Gerd Moellmann <gerd@gnu.org>
11514
11515 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
11516 (Fdefmacro): Handle `(declare ...)'.
11517 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
11518 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
11519
115202002-03-24 Jason Rumney <jasonr@gnu.org>
11521
11522 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
11523 (xbm_file_p): Add prototypes.
11524 (xbm_format, xbm_image_p): Sync with xfns.c.
11525 (reflect_byte): New function.
11526 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
11527 (xbm_load_image): Create bitmaps with a depth of 1.
11528 (init_xfns): Enable XBM images.
11529
115302002-03-23 Jason Rumney <jasonr@gnu.org>
11531
11532 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
11533 correctly. Do not pass up_modifier to keyboard buffer.
11534
11535 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
11536
115372002-03-22 Stefan Monnier <monnier@cs.yale.edu>
11538
11539 * Makefile.in (bootstrapclean): New target.
11540 (bootstrap-temacs, bootstrap-doc): Remove.
11541 (bootstrap-emacs): Use a bog-standard `temacs'.
11542 Don't bother to build a DOC file.
11543
11544 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
11545
11546 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
11547 in temacs even if !CANNOT_DUMP.
11548 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
11549
11550 * alloc.c (check_pure_size): Only output a warning.
11551
115522002-03-22 Jason Rumney <jasonr@gnu.org>
11553
11554 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
11555 supported.
11556
11557 * w32term.c (zv_bits): Declare as short, for word alignment.
11558 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
11559 (syms_of_w32term): Define x-use-underline-position-properties.
11560
11561 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
11562 (clear_image_cache): Block input, fix logic, clear matrices in
11563 all frames that share this cache.
11564
115652002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
11566
11567 * emacs.c (main): Update the Copyright year in the blurb printed
11568 by "emacs --version".
11569
11570 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
11571
11572 * xterm.c (XTread_socket): If XK_ISO_Lock and
11573 XK_ISO_Last_Group_Lock are defined, handle keysyms between
11574 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
11575
115762002-03-21 Kim F. Storm <storm@cua.dk>
11577
11578 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
11579 menu-bar bindings in keymap and local-map properties _are_ used.
11580 But try keymap property first in accordance with 2002-01-03 patch.
11581 Added comment describing why this is not always reliable.
11582 (tool_bar_items): Ditto for tool-bar.
11583
115842002-03-21 Jason Rumney <jasonr@gnu.org>
11585
11586 * w32fns.c (x_clear_image_1): Disable color table code.
11587
115882002-03-21 Kim F. Storm <storm@cua.dk>
11589
11590 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
11591 removed the wrong version of the DEFUN macro; fixed it.
11592
11593 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
11594 Fmember rather than Fmemq).
11595 (Fprovide): Check that subfeatures is a list.
11596
11597 * process.c (QCfeature, QCdatagram): Removed variables.
11598 (QCtype, Qdatagram): New variables.
11599 (network_process_featurep): Removed function.
11600 (Fmake_network_process): Removed :feature check.
11601 Use :type 'datagram instead of :datagram t to create a datagram
11602 socket. This allows us to add other connection types (e.g. raw
11603 sockets) later in a consistent manner.
11604 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
11605 supported subfeatures for feature make-network-process.
11606 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
11607 Intern and staticpro QCtype and Qdatagram.
11608 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
11609
11610 * xfns.c: (QCtype): Remove duplicate declaration and
11611 initialization (is now declared in process.c).
11612
11613 * w32fns.c: (QCtype): Remove duplicate declaration and
11614 initialization (is now declared in process.c).
11615
116162002-03-21 Richard M. Stallman <rms@gnu.org>
11617
11618 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
11619 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
11620 when jumping to `fail' to avoid undoing reg changes in the
11621 last iteration of the loop.
11622 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
11623
11624 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
11625 Depend on process.h.
11626
116272002-03-20 Jason Rumney <jasonr@gnu.org>
11628
11629 Most of the following changes are still conditional on HAVE_IMAGES
11630 which is not set by default on Windows.
11631
11632 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
11633
11634 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
11635 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
11636 (four_corners_best, x_clear_image_1, x_clear_image)
11637 (x_alloc_image_color, postprocess_image)
11638 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
11639 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
11640 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
11641
11642 * w32gui.h (struct XImage): Define.
11643
11644 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
11645 extract mouse co-ordinates.
11646
116472002-03-20 Jason Rumney <jasonr@gnu.org>
11648
11649 * w32.c (init_winsock): Dynamically load new server and UDP
11650 socket functions.
11651 (socket_to_fd): New function.
11652 (sys_socket): Use it.
11653 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
11654 (sys_recvfrom, sys_sendto): New wrapper functions.
11655
11656 * process.c (QCfamily, QCfilter): Remove duplicate declaration
11657 and initialization.
11658
11659 * makefile.w32-in (LIBS): Remove $(WSOCK32).
11660
116612002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
11662
11663 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
11664 Don't use "sun" as a variable, it's a predefined constant on Sun
11665 machines.
11666
116672002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11668
11669 * bytecode.c (Fbyte_code): Revert last change.
11670
116712002-03-19 Kim F. Storm <storm@cua.dk>
11672
11673 * makefile.w32-in (LIBS): Add $(WSOCK32).
11674 From David Ponce <dponce@voila.fr>.
11675
116762002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11677
11678 * process.c (wait_reading_process_input): Move variables `pname'
11679 and `pnamelen' down where they are used.
11680
11681 * bytecode.c (Fbyte_code): Discard unused computed value to
11682 prevent gcc warning.
11683
11684 * lisp.h (Fplist_member): Add prototype.
11685
116862002-03-18 Kim F. Storm <storm@cua.dk>
11687
11688 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
11689 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
11690
11691 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
11692 Remove explicit GNU_LINUX settings for datagram support.
11693
116942002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11695
11696 * process.c (Fmake_network_process): Remove unused variable `sa'.
11697 Doc fix. Add usage:.
11698 (set_socket_options): Remove unused variables `optnum' and `opttype'.
11699
117002002-03-17 Richard M. Stallman <rms@gnu.org>
11701
11702 * xdisp.c (cursor_type_changed): New variable.
11703 (redisplay_internal): Redisplay all windows if cursor_type_changed.
11704 Clear it when clearing windows_or_buffers_changed.
11705 (try_cursor_movement, redisplay_window, try_window_id)
11706 (try_window_reusing_current_matrix): Test cursor_type_changed
11707 along with windows_or_buffers_changed.
11708
11709 * window.h (cursor_type_changed): New variable.
11710
11711 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
11712 not update_mode_lines, and always set it to 1.
11713
11714 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
11715 if no frames needed redrawing.
11716
117172002-03-17 Kim F. Storm <storm@cua.dk>
11718
11719 The following changes add support for network server processes,
11720 datagram connections, and local (unix) sockets.
11721
11722 * process.h (struct Lisp_Process): New member log.
11723 Doc fix: Member command used to indicate stopped network process.
11724 Doc fix: Member childp contains plist for network process.
11725 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
11726
11727 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
11728 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
11729 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
11730 New variables.
11731 (NETCONN1_P): New macro.
11732 (DATAGRAM_SOCKETS): New conditional symbol.
11733 (datagram_address): New array.
11734 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
11735 (status_message): Use concat3.
11736 (Fprocess_status): Add `listen' status to doc string. Return `stop'
11737 for a stopped network process.
11738 (Fset_process_buffer): Update contact plist for network process.
11739 (Fset_process_filter): Ditto. Don't enable input for stopped
11740 network processes. Server must listen, even if filter is t.
11741 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
11742 New functions.
11743 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
11744 (Fprocess_contact): Added KEY argument. Handle datagrams.
11745 (list_processes_1): Optionally show only processes with the query
11746 on exit flag set. Dynamically adjust column widths. Omit tty
11747 column if not needed. Report stopped network processes.
11748 Identify server and datagram network processes.
11749 (Flist_processes): New optional arg `query-only'.
11750 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
11751 (conv_lisp_to_sockaddr, set_socket_options)
11752 (network_process_featurep, unwind_request_sigio): New helper functions.
11753 (Fprocess_datagram_address, Fset_process_datagram_address):
11754 (Fset_network_process_options): New lisp functions.
11755 (Fopen_network_stream): Removed. Now defined in simple.el.
11756 (Fmake_network_process): New lisp function. Code is based on previous
11757 Fopen_network_stream, but heavily reworked with new property list based
11758 argument list, support for datagrams, server processes, and local
11759 sockets in addition to old client-only functionality.
11760 (server_accept_connection): New function.
11761 (wait_reading_process_input): Use it to handle incoming connects.
11762 Do not enable input on a new connection if process is stopped.
f63fd14e 11763 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
048addec
JD
11764 (send_process): Handle datagram sockets.
11765 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
11766 network process is indicated by setting command field to t .
11767 (Fprocess_send_eof): No-op if datagram connection.
11768 (Fstatus_notify): Don't read input for a stream server socket or a
11769 stopped network process.
11770 (init_process): Initialize datagram_address array.
11771 (syms_of_process): Intern and staticpro new variables, defsubr new
11772 functions.
11773
117742002-03-16 Jason Rumney <jasonr@gnu.org>
11775
11776 * w32fns.c (w32_to_all_x_charsets): Return correct type in
11777 startup case.
11778
117792002-03-16 Richard M. Stallman <rms@gnu.org>
11780
11781 * xdisp.c (redisplay_internal, redisplay_windows):
11782 Use list_of_error to call internal_condition_case_1.
11783 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
11784 so as to catch all errors with no possibility of debugger redisplay.
11785 (list_of_error): New variable.
11786 (syms_of_xdisp): Init and staticpro it.
11787
11788 * print.c (print_object): Delete `\ ' from printed rep of frame.
11789
117902002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
11791
11792 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
11793 until its implementation is fixed.
11794
117952002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11796
11797 * xfns.c (png_load): Remove unused variable `gamma_str'.
11798
117992002-03-14 Richard M. Stallman <rms@gnu.org>
11800
11801 * xfns.c (x_real_positions): Handle failure in XQueryTree.
11802
118032002-03-14 Miles Bader <miles@gnu.org>
11804
11805 * intervals.c (adjust_for_invis_intang): New function.
11806 (set_point_both): Use `adjust_for_invis_intang' to do most of the
11807 work for dealing with invisible+intangible regions. Do so before
11808 and after both forward and backward movements, to handle both
11809 front-sticky and rear-sticky cases.
11810 * textprop.c (text_property_stickiness): Function moved here from
11811 `editfns.c'.
11812 * intervals.h (text_property_stickiness): New declaration.
11813 * editfns.c (char_property_eq): Function removed.
11814 (text_property_stickiness): Function moved to `textprop.c'.
11815
118162002-03-13 Jason Rumney <jasonr@gnu.org>
11817
11818 * config.in: Add STRFTIME_NO_POSIX2.
11819
11820 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
11821 and %OX when underlying strftime does not.
11822
118232002-03-13 Stefan Monnier <monnier@cs.yale.edu>
11824
11825 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
11826 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
11827 line) to avoid annoying flicker.
11828 (xm_scroll_callback): Get rid of the now unnecessary kludge.
11829 (XTread_socket): Mark it static.
11830
11831 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
11832
118332002-03-13 Kim F. Storm <storm@cua.dk>
11834
11835 * puresize.h (BASE_PURESIZE): Increase to 775000.
11836
118372002-03-12 Juanma Barranquero <lektu@terra.es>
11838
11839 * editfns.c (syms_of_editfns): Fix typo.
11840
118412002-03-12 Gerd Moellmann <gerd@gnu.org>
11842
11843 * xsmfns.c: Include stdio.h because termhooks.h needs it.
11844 Include termopt.h for interrupt_input.
11845
118462002-03-11 Andreas Schwab <schwab@suse.de>
11847
11848 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
11849
118502002-03-11 Gerd Moellmann <gerd@gnu.org>
11851
11852 * xterm.c (note_mouse_movement): Put code for
11853 x_autoselect_window_p in #if 0.
11854
11855 * lread.c (Fload): Don't assume that message_with_string uses the
11856 string it is given like a C string.
11857
118582002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11859
11860 * xterm.h (x_session_check_input, x_session_initialize): Declared.
11861
11862 * xterm.c: (XTread_socket): Add call to x_session_check_input and
11863 x_session_have_connection.
11864 (x_initialize): Add call to x_session_initialize.
11865
11866 * termhooks.h (enum event_kind): Add save_session_event.
11867
11868 * keyboard.c: Add Emacs event save_session_event.
11869
11870 * emacs.c (main): Add call to syms_of_xsmfns.
11871
11872 * lisp.h: Declare syms_of_xsmfns as extern.
11873
11874 * config.in: Add HAVE_X_SM.
11875
11876 * Makefile.in (LIBXT): Add -lSM -lICE
11877 if HAVE_X_SM and not USE_X_TOOLKIT.
11878 (XOBJ): New file xsmfns.c added.
11879
11880 * xsmfns.c: New file for X session management.
11881
118822002-03-09 Jason Rumney <jasonr@gnu.org>
11883
11884 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
11885 read-only when setting modified time.
11886
118872002-03-08 Gerd Moellmann <gerd@gnu.org>
11888
11889 * xdisp.c (move_it_vertically_backward): At the end of the function,
11890 when moving forward by lines, treat terminal frames specially.
11891
11892 * keyboard.c (echo_char): Make sure to add a separator between
11893 keys even if echo_dash hasn't been called.
11894
11895 * xdisp.c: Use new string macros.
11896 (update_echo_area): Pass number of bytes to message3 instead of
11897 number of chars.
11898 (set_message_1): Don't access a string's size_byte directly.
11899 (decode_mode_spec_coding): Use number of bytes of eoltype string
11900 instead number of chars.
11901
11902 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
11903
119042002-03-08 Juanma Barranquero <lektu@terra.es>
11905
11906 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
11907 24-bit.
11908
119092002-03-06 Jason Rumney <jasonr@gnu.org>
11910
11911 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
11912
119132002-03-06 Gerd Moellmann <gerd@gnu.org>
11914
11915 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
11916 (cancel_echoing, echo_length, echo_truncate): Changed to
11917 work with new kboard definition.
11918 (echo_now): Use message3_nolog instead of message2_nolog.
11919
11920 * alloc.c (mark_kboards): Mark echo_string.
11921
11922 * keyboard.h (ECHOBUFSIZE): Removed.
11923 (struct kboard): Member echoptr removed, member echobuf renamed
11924 to echo_string.
11925
11926 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
11927 message3 instead of message2 to display the message using STRING's
11928 text properties.
11929
119302002-03-05 Andreas Schwab <schwab@suse.de>
11931
11932 * xdisp.c (hscroll_margin): Change to EMACS_INT.
11933
119342002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
11935
11936 * frame.c (default-frame-alist): Explain that setting it doesn't
11937 affect existing frames.
11938
119392002-03-05 Stefan Monnier <monnier@cs.yale.edu>
11940
11941 * indent.c (skip_invisible): Fix my brain fart.
11942
11943 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
11944
119452002-03-04 Stefan Monnier <monnier@cs.yale.edu>
11946
11947 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
11948 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
11949 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
11950 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
11951 and variables to use EMACS_INT instead of just int.
11952
11953 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
11954
119552002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
11956
11957 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
11958 environment, pass it down with corrected value.
11959
119602002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11961
11962 * lread.c (read_filtered_event): Do not call start_hourglass
11963 before returning.
11964
119652002-03-04 Juanma Barranquero <lektu@terra.es>
11966
11967 * w32term.c (x_display_and_set_cursor): Fix typo.
11968
119692002-03-03 Richard M. Stallman <rms@gnu.org>
11970
11971 * fileio.c (Fmake_temp_name): Doc fix.
11972
119732002-03-03 Gary Wong <gtw@gnu.org>
11974
11975 * termcap.c [!emacs]: Replace ospeed for building standalone
11976 libtermcap, for binary compatibility.
11977
11978 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
11979
119802002-03-03 Richard M. Stallman <rms@gnu.org>
11981
11982 * xrdb.c (file_p): Rename arg `path' to `filename'.
11983
11984 * abbrev.c (Fexpand_abbrev): Increment plist as use count
11985 only if it is an integer.
11986
11987 * xfns.c (png_load): Set screen_gamma based on f->gamma.
11988 If png_get_sRGB gives an answer, call png_set_gamma
11989 using the default image gamma value.
11990
11991 * lread.c (read1): When reading from a file, default string to
11992 multibyte only if it has some multibyte characters.
11993
11994 * print.c (print_object): Output multibyte chars 128...255
11995 using \x even if ! print_escape_multibyte.
11996
11997 * xdisp.c (display_mode_element): Move the places where
11998 bytepos, charpos, this, and lisp_string are set.
11999 Use lisp_string to set bytepos.
12000
12001 * xdisp.c (redisplay_internal):
12002 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
12003
12004 * xdisp.c (display_mode_element): Merge properties specified with
12005 :propertize onto those that come with the string.
12006
120072002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
12008
12009 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
12010 automatic-hscrolling. Users changed.
12011 <hscroll-margin>: Renamed from automatic-hscroll-margin.
12012 Users changed.
12013 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
12014
120152002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
12016
12017 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
12018
120192002-03-02 Kim F. Storm <storm@cua.dk>
12020
12021 * window.c (Fminibuffer_selected_window): New function.
12022 (syms_of_window): Defsubr it.
12023
120242002-03-01 Kim F. Storm <storm@cua.dk>
12025
12026 * window.h (struct window): New member phys_cursor_width.
12027
12028 * window.c (make_window, replace_window): Init phys_cursor_width.
12029
12030 * xterm.c (x_display_and_set_cursor): Blink box cursor using
12031 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
12032
12033 * w32term.c (x_display_and_set_cursor): Blink box cursor using
12034 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
12035
12036 * lisp.h (GCPRO6): New macro.
12037
12038 * process.c (Fopen_network_stream): Use GCPRO6.
12039
120402002-03-01 Kim F. Storm <storm@cua.dk>
12041
12042 * process.c (Qconnect, Qfailed): New variables.
12043 (syms_of_process): Intern and staticpro them.
12044 (Fprocess_status): Document connect and failed return values.
12045 [NON_BLOCKING_CONNECT]: New conditional.
12046 (connect_wait_mask, num_pending_connects): New variables.
12047 (status_message): Convert Qfailed status.
12048 (Fopen_network_stream): Added support for non-blocking connect.
12049 New optional args: filter, sentinel, non_blocking. Doc updated.
12050 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
12051 (deactivate_process): Handle pending non-blocking connect.
12052 (wait_reading_process_input): Poll for status of non-blocking
12053 connects. Exec sentinel directly when connect succeeds.
12054 (status_notify): Don't read process output if not yet connected.
12055
120562002-02-28 Kim F. Storm <storm@cua.dk>
12057
12058 * window.c: (minibuf_selected_window): Renamed from
12059 Vminibuf_selected_window. Users changed.
12060 (syms_of_window): Staticpro it.
12061
120622002-02-26 Kim F. Storm <storm@cua.dk>
12063
12064 The following changes add a new Vminibuf_selected_window variable
12065 which is similar to Vminibuf_scroll_window, but which is only set
12066 on entry to the minibuffer (from a non-minibuffer window):
12067
12068 * window.c: (Vminibuf_selected_window): New variable.
12069 (struct save_window_data): New member minibuf_selected_window.
12070 (Fset_window_configuration): Restore Vminibuf_selected_window.
12071 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
12072 Set minibuf_scroll_window member to nil if minibuf_level is 0.
12073 (compare_window_configurations): Compare minibuf_selected_window.
12074
12075 * window.h: (Vminibuf_selected_window): Declare extern.
12076
12077 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
12078 entry to minibuffer or on entry from a non-minibuffer window.
12079
12080 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
12081 Vminibuf_selected_window instead of Vminibuf_scroll_window.
12082
12083 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
12084 instead of Vminibuf_scroll_window when deciding in which window
12085 the region should be highlighted. Consequently, the region remains
12086 highlighteded even when a completion buffer is also displayed.
12087
120882002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
12089
12090 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
12091
12092 * xselect.c (Qcompound_text_with_extensions): Renamed from
12093 Qcompound_text_no_extensions.
12094 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
12095
120962002-02-26 Juanma Barranquero <lektu@terra.es>
12097
12098 * w32proc.c (syms_of_ntproc): Doc fix.
12099
121002002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12101
12102 * intervals.h: Include "dispextern.h" unconditionally.
12103
121042002-02-24 Jason Rumney <jasonr@gnu.org>
12105
12106 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
12107 and disp-table.elc.
12108 (lisp): Add emacs-lisp/backquote.elc.
12109
121102002-02-24 Kim F. Storm <storm@cua.dk>
12111
12112 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
12113 The validation of the event type was too strict as it didn't
12114 allow string events; buffer names are used in bindings for
12115 menu-bar-select-buffer (see `menu-bar-update-buffers').
12116
121172002-02-23 Kim F. Storm <storm@cua.dk>
12118
12119 The following changes rework my patch of 2002-02-06 which
12120 added command remapping by entering the commands directly into
12121 the keymaps. Now, command remapping uses an explicit `remap'
12122 prefix in the keymaps, i.e. [remap COMMAND].
12123
12124 * keymap.c (Qremap, remap_command_vector): New variables.
12125 (is_command_symbol): Removed function.
12126 (Fdefine_key): No longer accept a symbol for KEY.
12127 Added validation of [remap COMMAND] argument for KEY.
12128 The DEF is no longer required to be a symbol when remapping a command.
12129 (Fremap_command): New function to remap command through keymaps.
12130 (Flookup_key): Perform command remapping initiated by
12131 Fremap_command directly for speed.
12132 (Fkey_binding): Use Fremap_command for command remapping.
12133 (where_is_internal): Handle new command remapping representation.
12134 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
12135 staticpro them. Defsubr Fremap_command.
12136
12137 * keymap.h (Fremap_command): Declare extern.
12138 (is_command_symbol): Remove extern.
12139
12140 * keyboard.c (command_loop_1): Use Fremap_command for command
12141 remapping; now try command remapping for all symbols.
12142
121432002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
12144
12145 * coding.h (run_pre_post_conversion_on_str): Add prototype.
12146
121472002-02-23 Jason Rumney <jasonr@gnu.org>
12148
12149 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
12150 on the string before encoding it.
12151 (Fw32_get_clipboard_data): Run post-read-conversion on the string
12152 after decoding it.
12153
12154 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
12155
121562002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12157
12158 * w32term.c (enter_timestamp): Remove unused static variable to
12159 prevent warning.
12160
12161 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
12162
121632002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
12164
12165 * w16select.c (Fw16_get_clipboard_data): Fix last change.
12166
12167 * xselect.c (selection_data_to_lisp_data): Fix last change.
12168
121692002-02-22 Jason Rumney <jasonr@gnu.org>
12170
12171 * w32term.h (struct w32_output): New member menu_command_in_progress.
12172
12173 * w32menu.c (menubar_selection_callback): Free the menu and
12174 clear the menu_command_in_progress flag.
12175
12176 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
12177 (menu_free_timer): New variable.
12178 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
12179 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
12180 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
12181 menu command is in progress.
12182 <WM_COMMAND>: Set the menu_command_in_progress flag.
12183 Kill any menu_free_timer that is running.
12184
12185 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
12186 Call ExtTextOutA rather than ExtTextOut.
12187
121882002-02-22 Eli Zaretskii <eliz@gnu.org>
12189
12190 * puresize.h (BASE_PURESIZE): Increase to 755000.
12191
121922002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
12193
12194 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
12195 on the string before encoding it.
12196 (Fw16_get_clipboard_data): Run post-read-conversion on the string
12197 after decoding it.
12198
121992002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
12200
12201 Support for ICCCM Extended Segments in X selections:
12202
12203 * xselect.c <Qcompound_text_no_extensions>: New variable.
12204 (syms_of_xselect): Intern and staticpro it.
12205 (selection_data_to_lisp_data): Run post-read-conversion on decoded
12206 selection text.
12207 (lisp_data_to_selection_data): If next-selection-coding-system is
12208 compound-text-no-extensions, set the type of selection to be
12209 compound-text.
12210
12211 * xterm.h (x_encode_text): Update prototype.
12212
12213 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
12214 callers changed. If SELECTIONP is non-zero, run the
12215 pre-write-conversion function before encoding the selection text.
12216
122172002-02-21 Kim F. Storm <storm@cua.dk>
12218
12219 * frame.c (syms_of_frame): Change mouse-highlight default to t.
12220
12221 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
12222 Correct composing of language-change event.
12223
122242002-02-20 Kim F. Storm <storm@cua.dk>
12225
12226 * keyboard.c (menu_bar_items): Don't include keymap or local-map
12227 bindings at PT when building menu (the menu is not updated often
12228 enough for this to work reliable).
12229 (tool_bar_items): Likewise.
12230 (current_active_maps): Removed unused (and buggy) function.
12231
122322002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12233
12234 * xfns.c (gif_load): Use correct width and height for GIF images.
12235
122362002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
12237
12238 * floatfns.c (Fatan): Accept an optional second arg and call
12239 atan2 if passed 2 args.
12240
122412002-02-18 Jason Rumney <jasonr@gnu.org>
12242
12243 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
12244
122452002-02-17 Jason Rumney <jasonr@gnu.org>
12246
12247 * w32term.c (x_autoselect_window_p): New variable.
12248 (syms_of_w32term): DEFVAR_BOOL and initialize it.
12249 (note_mouse_movement): Use it.
12250
12251 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
12252
12253 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
12254
12255 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
12256 New variables.
12257 (syms_of_w32fns): Intern and staticpro them.
12258 (x_frame_parms) <"fullscreen">: New parameter.
12259 (x_fullscreen_move, x_set_fullscreen): New functions.
12260 (x_set_frame_parameters): Support Qfullscreen.
12261 (x_real_positions): Save x/y_pixels_diff frame params.
12262 (x_figure_window_size): Support full-screen frames.
12263 (Fx_create_frame): Default the fullscreen parameter.
12264
12265 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
12266 (x_fullscreen_adjust): New functions.
12267 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
12268 fullscreen. Call x_check_fullscreen_move, and set the
12269 want_fullscreen member of output_data.w32
12270 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
12271
12272 * w32term.h: New enum for FULLSCREEN_* constants.
12273 (struct w32_output): New members want_fullscreen, x_pixels_diff,
12274 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
12275 (x-fullscreen-adjust): New prototype.
12276
122772002-02-17 Kim F. Storm <storm@cua.dk>
12278
12279 * frame.c: (Vmouse_highlight): New variable.
12280 (syms_of_frame): DEFVAR_LISP it.
12281
12282 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 12283
048addec 12284 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 12285
048addec
JD
12286 * xterm.c (disable_mouse_highlight): Removed variable.
12287 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
12288 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
12289 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
12290 and on after keyboard input.
12291 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 12292
048addec 12293 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 12294
048addec
JD
12295 * msdos.c (disable_mouse_highlight): Removed variable.
12296 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
12297 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
12298 (internal_terminal_init): Initialize mouse_face_hidden.
12299 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
12300 and on after keyboard input.
4f1b1854 12301
048addec 12302 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 12303
048addec
JD
12304 * w32term.c (disable_mouse_highlight): Removed variable.
12305 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
12306 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
12307 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
12308 and on after keyboard input.
12309 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 12310
048addec 123112002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 12312
048addec
JD
12313 * msdos.c (last_mouse_window): New variable.
12314 (dos_rawgetc): Fix last change--if the mouse is in the same window
12315 as recorded in last_mouse_window, don't select this window.
5cb6905d 12316
048addec 12317 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 12318
048addec
JD
12319 * msdos.c (x_autoselect_window_p): New variable.
12320 (syms_of_msdos): Defvar it.
12321 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
12322 which the last mouse movement occured, unless it is already selected.
437dfb9f 12323
048addec
JD
12324 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
12325 New variables.
12326 (syms_of_xdisp): DEVFAR them.
12327 (hscroll_window_tree): Use automatic_hscroll_margin and
12328 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 12329
048addec 123302002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 12331
048addec
JD
12332 * xterm.c (x-autoselect-window): New variable.
12333 (note_mouse_movement): Use it.
9f696a00 12334
048addec 12335 * keyboard.c: Do not include "systime.h" twice.
d57966d7 12336
048addec 123372002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 12338
048addec 12339 * puresize.h (BASE_PURESIZE): Increase to 9/5.
d57966d7 12340
048addec 12341 * alloc.c (NSTATICS): Increase to 1280.
74779f52 12342
048addec 123432002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 12344
048addec 12345 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 12346
048addec
JD
12347 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
12348 (Vx_super_keysym): New variables.
12349 (syms_of_xterm): DEFVAR_LISP them.
12350 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
12351 variables to determine which keys to use for the various modifiers.
a474d59c 12352
048addec 123532002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 12354
048addec
JD
12355 * window.c: (Vmode_line_in_non_selected_windows): Removed.
12356 (mode_line_in_non_selected_windows): New variable.
12357 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 12358
048addec
JD
12359 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
12360 Use mode_line_in_non_selected_windows.
12361 (mode_line_in_non_selected_windows): Declare extern.
12362 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 12363
048addec 123642002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 12365
048addec
JD
12366 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
12367 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
12368 (Fclear_this_command_keys): Doc fixes.
2d10309f 12369
048addec
JD
12370 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
12371 (update_face_from_frame_parameter): Increment face_change_count
12372 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 12373
048addec
JD
12374 * xdisp.c (QCpropertize): New variable.
12375 (mode_line_proptrans_alist): New variable.
12376 (display_mode_element): New arg PROPS; all calls changed.
12377 Implement this, for strings.
12378 Handle literal output of strings by sharing the
12379 main-line code for strings, using local var `literal'.
12380 Handle :propertize feature.
12381 (syms_of_xdisp): Initialze and staticpro QCpropertize and
12382 mode_line_proptrans_alist.
0b1e6b54 12383
048addec 123842002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 12385
048addec
JD
12386 * window.c: (Vmode_line_in_non_selected_windows): New variable.
12387 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 12388
048addec
JD
12389 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
12390 (CURRENT_MODE_LINE_FACE_ID): Use it.
12391 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 12392
048addec
JD
12393 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
12394 to get mode line face.
e17144de 12395
048addec 123962002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 12397
048addec
JD
12398 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
12399 variables; cus-start.el doesn't need them anymore.
44368f8f 12400
048addec 124012002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 12402
048addec
JD
12403 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
12404 reduction. This fixes a display problem where stray newlines were
12405 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 12406
048addec 124072002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 12408
048addec 12409 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 12410
048addec 12411 * xdisp.c (display_mode_lines): Fix last change.
453c5510 12412
048addec 124132002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 12414
048addec
JD
12415 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
12416 match each other.
12417 (w32_load_system_font): Prevent Cleartype fonts from loading.
12418 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 12419
048addec 124202002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 12421
048addec
JD
12422 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
12423 (CURRENT_MODE_LINE_HEIGHT): Use it.
12424 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 12425
048addec
JD
12426 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
12427 (pos_visible_p, handle_face_prop): Likewise.
12428 (display_mode_lines): Likewise, but for the real selected window.
12429 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 12430
048addec
JD
12431 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
12432 in non-selected windows.
12433 (realize_basic_faces): Realize it.
12434 (syms_of_term): Intern and staticpro it.
308dd672 12435
048addec 124362002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 12437
048addec
JD
12438 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
12439 Changed mail addresses to emacs-devel@gnu.org.
308dd672 12440
048addec 124412002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 12442
048addec
JD
12443 * fileio.c (Fsubstitute_in_file_name): If the file name includes
12444 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 12445
048addec 12446 * floatfns.c (Fround): Doc fix.
3c1e6b46 12447
048addec 124482002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 12449
048addec 12450 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 12451
048addec 124522002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 12453
048addec 12454 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 12455
048addec 124562002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 12457
048addec
JD
12458 * keymap.c (where_is_internal): Only check whether definition is
12459 remapped if it fulfills is_command_symbol.
0065bb74 12460
048addec 124612002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 12462
048addec 12463 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 12464
048addec 12465 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 12466
048addec 124672002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 12468
048addec
JD
12469 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
12470 defining command remapping. Doc updated.
12471 (Flookup_key): Remap command through keymap if KEY is a symbol.
12472 (is_command_symbol): New function.
12473 (Fkey_binding): Use it. New optional argument NO-REMAP.
12474 Doc updated. Callers changed. Perform command remapping via
12475 recursive call unless that arg is non-nil.
12476 (where_is_internal): New argument no_remap. Callers changed.
12477 Call recursively to find original key bindings for a remapped
12478 comand unless that arg is non-nil.
12479 (Fwhere_is_internal): New optional argument NO-REMAP.
12480 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 12481
048addec
JD
12482 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
12483 (is_command_symbol): Added prototype.
0d8466cc 12484
048addec
JD
12485 * keyboard.c (Vthis_original_command): New variable.
12486 (syms_of_keyboard): DEFVAR_LISP it.
12487 (command_loop_1): Set it, and perform command remapping.
15fff01d 12488
048addec 124892002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 12490
048addec 12491 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 12492
048addec 124932002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 12494
048addec 12495 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 12496
048addec 124972002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 12498
048addec 12499 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 12500
048addec 125012002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 12502
048addec 12503 * filelock.c (S_ISLNK): Define if not defined.
3a232704 12504
048addec 125052002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 12506
048addec 12507 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 12508
048addec
JD
12509 * lread.c (read1): Redesign strategy for force_multibyte and
12510 force_singlebyte. Now is_multibyte records whether read_buffer
12511 is multibyte. Encountering any multibyte character makes it so.
4e02881b 12512
048addec 125132002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 12514
048addec
JD
12515 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
12516 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 12517
048addec 125182002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 12519
048addec
JD
12520 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
12521 latter never being defined on GNU/Linux.
749f499f 12522
048addec 125232002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 12524
048addec
JD
12525 * xfaces.c (realize_default_face): Don't set the weight and slant of
12526 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 12527
048addec 125282002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 12529
048addec
JD
12530 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
12531 Call cancel_hourglass unconditionally.
d0fd26dd 12532
048addec
JD
12533 * eval.c (Fsignal): Remove duplicated declaration of
12534 the variable `display_hourglass_p'.
b4c45162 12535
048addec 125362002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 12537
048addec 12538 * editfns.c (region_limit): Nicer error message.
c95eaa61 12539
048addec
JD
12540 * coding.c (decode_composition_emacs_mule):
12541 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 12542
048addec
JD
12543 * callint.c (check_mark): New arg to specify clearer error message.
12544 Callers changed.
c95eaa61 12545
048addec 125462002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 12547
048addec 12548 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 12549
048addec 125502002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 12551
048addec
JD
12552 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
12553 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
12554 Fix doc-strings.
c95eaa61 12555
048addec 125562002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 12557
048addec 12558 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 12559
048addec
JD
12560 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
12561 and scroll_up_aggressively.
c95eaa61 12562
048addec 125632002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 12564
048addec 12565 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 12566
048addec 125672002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 12568
048addec
JD
12569 * textprop.c (Fnext_property_change, Fnext_single_property_change)
12570 (Fprevious_property_change, Fprevious_single_property_change):
12571 Stay within the narrowed-buffer boundaries.
e2c3786a 12572
048addec 125732002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 12574
048addec
JD
12575 * term.c (Ftty_display_color_cells): New function.
12576 (syms_of_term): Defsubr it.
12577 (Ftty_display_color_cells, Ftty_display_color_p): Change the
12578 argument name to DISPLAY. Doc fix.
bf794306 12579
048addec
JD
12580 * dispextern.h: Add prototype for set_tty_color_mode and
12581 tty_setup_colors.
bf794306 12582
048addec 125832002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 12584
048addec
JD
12585 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
12586 If region left to draw is not what was expected, mark the frame as
12587 garbaged.
62582985 12588
048addec
JD
12589 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
12590 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 12591
048addec 125922002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 12593
048addec
JD
12594 * w32term.c (x_update_window_begin): Only hide caret if
12595 w32_use_visible_system_caret is set.
12596 (x_update_window_end): Only show caret if
12597 w32_use_visible_system_caret is set.
12598 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 12599
048addec 12600 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 12601
048addec 126022002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 12603
048addec
JD
12604 * unexelf.c (unexec): Define n so as to cause compilation error
12605 for the code where people have often written n instead of nn.
1e9a6186 12606
048addec 12607 * .gdbinit (hookpost-run): Defined.
1e9a6186 12608
048addec 126092002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 12610
048addec 12611 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 12612
048addec 126132002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 12614
048addec
JD
12615 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
12616 if fullscreen is being set.
7c75be36 12617
048addec 126182002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 12619
048addec
JD
12620 * minibuf.c (Fminibuffer_contents)
12621 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
12622 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 12623
048addec 126242002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 12625
048addec 12626 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 12627
048addec 126282002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 12629
048addec
JD
12630 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
12631 height before comparison.
12632 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 12633
048addec 126342002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 12635
048addec
JD
12636 * w32term.c (w32_system_caret_width): Remove.
12637 (w32_use_visible_system_caret): New user flag.
12638 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
12639 Windows reports a screen reader running.
12640 (x_update_window_begin): Hide the system caret.
12641 (x_update_window_end): Show the system caret.
12642 (x_display_and_set_cursor): Don't draw a cursor when
12643 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 12644
048addec
JD
12645 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
12646 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
12647 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
12648 the user requests it. Use system default width when creating.
12649 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 12650
048addec
JD
12651 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
12652 New window messages.
905cc05a 12653
048addec 126542002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 12655
048addec 12656 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 12657
048addec 126582002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 12659
048addec 12660 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 12661
048addec 126622002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 12663
048addec 12664 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 12665
048addec 126662002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 12667
048addec
JD
12668 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
12669 that Windows returns. If a double check fails, try to guess how
12670 ExtTextOut is going to act.
4d0fa4f3 12671
048addec
JD
12672 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
12673 in place of stricmp.
12674 (w32_list_synthesized_fonts): Removed.
12675 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
12676 (struct enumfont_t): New element; list.
12677 (enum_font_cb2): List all style and charset variations of a font.
12678 (Fw32_select_font): New optional argument; include_proportional.
12679 Exclude vertical fonts. Exclude proportional fonts unless
12680 include_proportional is non-nil.
12681 (w32_enable_synthesized_fonts): Change to a boolean.
12682 (Fw32_send_sys_command): Doc fix.
493faf20 12683
048addec 126842002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 12685
048addec
JD
12686 * dispnew.c (update_frame): Move the variable `tem' to the block
12687 where it is used.
4971e491 12688
048addec 126892002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 12690
048addec
JD
12691 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
12692 call to face-set-after-frame-default.
4971e491 12693
048addec 126942002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 12695
048addec
JD
12696 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
12697 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 12698
048addec 126992002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 12700
048addec
JD
12701 * window.c (enlarge_window): When exceeding size of parent,
12702 directly delete all the siblings instead of trying to resize it.
201c831a 12703
048addec 127042002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 12705
048addec 12706 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 12707
048addec 127082002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 12709
048addec 12710 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 12711
048addec 127122002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 12713
048addec
JD
12714 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
12715 is invisible. This can happen if cursor is on top line of a
12716 window, and we switch to a buffer with a header line.
d77fbc16 12717
048addec 12718 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 12719
048addec 127202002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 12721
048addec
JD
12722 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
12723 `dont_resize' only when used.
61e3b944 12724
048addec 12725 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 12726
048addec 127272002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 12728
048addec
JD
12729 * xdisp.c (display_mode_element): When computing charpos, depend
12730 on multibyteness of elt, not the text in field.
8af01033 12731
048addec 127322002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 12733
048addec
JD
12734 * buffer.c (Fkill_all_local_variables):
12735 Increment `update_mode_lines' only once.
7363986a 12736
048addec 127372002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 12738
048addec
JD
12739 * lisp.h (adjust_after_replace_noundo)
12740 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 12741
048addec 12742 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 12743
048addec 127442002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 12745
048addec
JD
12746 Support for the --color command-line argument and tty-color-mode
12747 frame parameter:
f1a85b89 12748
048addec
JD
12749 * term.c (tty_default_color_capabilities, tty_setup_colors)
12750 (set_tty_color_mode): New functions.
12751 (term_init): Call tty_default_color_capabilities.
12752 (Qtty_color_mode_alist): New variable.
12753 (syms_of_term): Intern and staticpro it.
f1a85b89 12754
048addec
JD
12755 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
12756 frames.
12757 (do_switch_frame): For termcap frames, switch the tty
12758 color mode as specified by the frame's parameters.
12759 (Qtty_color_mode): New variable.
12760 (syms_of_frame): Intern and staticpro it.
3a62677f 12761
048addec
JD
12762 * emacs.c (USAGE2): Add the --color option.
12763 (standard_args): Ditto.
72244db2 12764
048addec
JD
127652002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12766
12767 * xterm.h (struct x_output): New members want_fullscreen,
12768 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
12769 y_pixels_outer_diff.
12770 New enum for FULLSCREEN_* constants.
12771 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
12772 is NULL.
12773 (x_fullscreen_adjust): Add prototype.
3a62677f 12774
048addec
JD
12775 * emacs.c (USAGE2): Add the new full-screen arguments.
12776 (standard_args): Ditto.
3a62677f 12777
048addec
JD
12778 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
12779 New variables.
12780 (syms_of_xfns): Intern and staticpro them.
12781 (x_frame_parms) <"fullscreen">: New parameter.
12782 (x_fullscreen_move, x_set_fullscreen): New functions.
12783 (x_set_frame_parameters): Support for Qfullscreen.
12784 (x_real_positions): More accurate computation of the frame position.
12785 (x_figure_window_size): Support full-screen frames.
12786 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 12787
048addec
JD
12788 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
12789 (XTread_socket) <Expose>: Call x_check_fullscreen.
12790 <ConfigureNotify>: Don't resize to fullscreen.
12791 Call x_check_fullscreen_move, and set the want_fullscreen member of
12792 output_data.x.
3a62677f 12793
048addec 127942002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 12795
048addec
JD
12796 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
12797 for mice with more than 3 buttons.
b8523839 12798
048addec
JD
12799 * w32term.c (parse_button): New parameter xbutton. Callers changed.
12800 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 12801
048addec
JD
12802 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
12803 (syms_of_w32fns): DEFVAR_BOOL it.
12804 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 12805
048addec 128062002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 12807
048addec 12808 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 12809
048addec 128102002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 12811
048addec 12812 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 12813
048addec 128142002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 12815
048addec
JD
12816 * .gdbinit (xbuffer): Remove address operator since data is now a
12817 pointer.
c93674bb 12818
048addec 128192002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 12820
048addec 12821 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 12822
048addec 12823 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 12824
048addec 128252002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 12826
048addec
JD
12827 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
12828 when checking for multiple frames.
91175673 12829
048addec 128302002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 12831
048addec
JD
12832 * window.c (delete_window): Rewrite the code for changing the
12833 selected window to handle the case where WINDOW is not a leaf.
91175673 12834
048addec 128352002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 12836
048addec
JD
12837 * process.c (send_process): Set src_multibyte to 1 after the call
12838 top setup_coding_system, not before the call.
e0fead5d 12839
048addec 128402002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 12841
048addec
JD
12842 * xmenu.c (set_frame_menubar, xmenu_show):
12843 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 12844
048addec
JD
12845 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
12846 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 12847
048addec 128482002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 12849
048addec 12850 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 12851
048addec 12852 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 12853
048addec 12854 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 12855
048addec 128562002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 12857
048addec
JD
12858 * insdel.c (make_gap_larger): Make sure buffer size does not
12859 overflow range of int.
62854fe2 12860
048addec 128612002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 12862
048addec
JD
12863 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
12864 OVERLAPS_P.
656f46bb 12865
048addec 12866 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 12867
048addec
JD
12868 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
12869 to the left or to the right of the pointer, put it against
12870 the left screen edge.
12871 (x_frame_parms): Add missing braces around initializer.
036e218d 12872
048addec
JD
12873 * w32term.c (x_setup_relief_colors): Don't compute an image's
12874 background color if it doesn't have a Pixmap.
12875 (notice_overwritten_cursor): Don't depend on
12876 output_cursor and updated_area. Compare pixel coordinates with
12877 window's cursor pixel coordinates.
12878 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
12879 Call notice_overwritten_cursor with new arg list.
12880 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
12881 unconditionally.
12882 (x_draw_image_relief): Use predefined macro instead of
12883 constant when the value of `tool_bar_button_relief' is negative.
036e218d 12884
048addec 12885 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 12886
048addec 128872002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 12888
048addec 12889 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 12890
048addec 128912002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 12892
048addec
JD
12893 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
12894 (Fkey_binding): Try the `keymap' property map first.
12895 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
12896 minor mode bindings.
90647b07 12897
048addec 128982002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 12899
048addec 12900 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 12901
048addec 129022002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 12903
048addec
JD
12904 * keyboard.c (read_key_sequence): Handle the keymap property
12905 before minor mode maps.
9fbc32aa 12906
048addec
JD
12907 * editfns.c (Fformat): Update thissize from field_width
12908 based on the actual width, in the string case.
036e218d 12909
048addec 129102002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 12911
048addec
JD
12912 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
12913 when used as truth value to prevent gcc warnings.
9fbc32aa 12914
048addec
JD
12915 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
12916 * w32proc.c: Include <config.h>.
9fbc32aa 12917
048addec 129182002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 12919
048addec
JD
12920 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
12921 not EMACS_INT, to make them compatible with DEFVAR_INT.
12922 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 12923
048addec 129242002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 12925
048addec
JD
12926 * print.c (print_object): Test print_escape_nonascii only for
12927 unibyte strings.
12928 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
12929 when outputting to a multibyte buffer.
9fbc32aa 12930
048addec 129312001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 12932
048addec
JD
12933 * print.c (print_object): In multibyte string, use hex escapes.
12934 Use octal only for unibyte strings.
12935 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 12936
048addec
JD
12937 * lread.c (read_escape): New arg BYTEREP for reporting whether
12938 escape forces unibyte or multibyte.
12939 (read1): When reading a string, take note of that info.
0142178a 12940
048addec 129412001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 12942
048addec
JD
12943 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
12944 comparison to test lisp value returned by Fget.
d4824a5d 12945
048addec 129462001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 12947
048addec 12948 * lisp.h (max_specpdl_size): Add declaration.
b1356234 12949
048addec 12950 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 12951
048addec
JD
12952 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
12953 Handle modifier bits. Correct typo in error message.
99e380ee 12954
048addec 129552001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 12956
048addec
JD
12957 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
12958 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
12959 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
12960 Update calls to Fdefine_abbrev.
12961 (write_abbrev): Update for changed data format.
12962 Don't list "system" abbrevs.
12963 (Fexpand_abbrev): Update use count with new data format.
12964 (describe_abbrev): Update for changed data format.
12965 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 12966
048addec 12967 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 12968
048addec 12969 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 12970
048addec
JD
12971 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
12972 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 12973
048addec
JD
12974 * keymap.c (Flookup_key): Error message if key has wrong data type.
12975 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
12976 (exclude_key): New variable.
59a86c99 12977
048addec 129782001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 12979
048addec
JD
12980 * xterm.c (x_setup_relief_colors): Don't compute an image's
12981 background color if it doesn't have a Pixmap.
eb77a5f4 12982
048addec
JD
12983 * xterm.c (notice_overwritten_cursor): Don't depend on
12984 output_cursor and updated_area. Compare pixel coordinates with
12985 window's cursor pixel coordinates.
12986 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
12987 Call notice_overwritten_cursor with new arg list.
12988 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
12989 unconditionally.
eb77a5f4 12990
048addec
JD
12991 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
12992 height of the cursor line to the amount to scroll.
eb77a5f4 12993
048addec 129942001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 12995
048addec
JD
12996 * intervals.c (set_point_both): The position after an invisible,
12997 intangible character is not an acceptable stopping point.
bb313871 12998
048addec 129992001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 13000
048addec
JD
13001 * window.c (enlarge_window): In new preserve_before code, convert
13002 CURBEG from lisp object to integer before doing arithmetic.
6052529b 13003
048addec 130042001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 13005
048addec 13006 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 13007
048addec 130082001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 13009
048addec
JD
13010 * keyboard.c (record_char): Ignore duplicate help-echo events only
13011 separated by mouse-movement. When tracking mouse, only record
13012 first and last mouse-movement event in same window.
13013 Don't record mouse-movement events in keyboard macros.
3ce081f5 13014
048addec 130152001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 13016
048addec
JD
13017 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
13018 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 13019
048addec
JD
13020 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
13021 instead of Fstring_as_unibyte.
9fabb2f5 13022
048addec 130232001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 13024
048addec 13025 The following changes remove mocklisp support:
9fabb2f5 13026
048addec 13027 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 13028
048addec
JD
13029 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
13030 `Qmocklisp' and `Qmocklisp_arguments'.
13031 Remove prototype of syms_of_mocklisp.
2fa0eedf 13032
048addec 13033 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 13034
048addec
JD
13035 * callint.c: Do not include mocklisp.h.
13036 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 13037
048addec
JD
13038 * eval.c: Remove variables `Qmocklisp_arguments',
13039 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
13040 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
13041 Do not test for mocklisp case.
13042 (Fwhile): Remove unused variable `tem'.
13043 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 13044
048addec 13045 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 13046
048addec 13047 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 13048
048addec 13049 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 13050
048addec 130512001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 13052
048addec
JD
13053 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
13054 to the left or to the right of the pointer, put it against
13055 the left screen edge.
6108b49c 13056
048addec 130572001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 13058
048addec
JD
13059 * Makefile.in (distclean): Remove .gdbinit if we are building
13060 outside the source tree.
5eea19a4 13061
048addec 130622001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 13063
048addec 13064 * w32.c (emacs_root_dir): New function.
5eea19a4 13065
048addec 13066 * msdos.c (emacs_root_dir): New function.
5eea19a4 13067
048addec
JD
13068 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
13069 of the current drive as the fallback for default_directory.
438e57dd 13070
048addec
JD
13071 * dired.c (file_name_completion): Run the elements of
13072 completion-ignored-extensions through ENCODE_FILE.
438e57dd 13073
048addec
JD
13074 * lisp.h (scmp): Remove prototype, since it's now a static
13075 function private to dired.c.
c88e5347 13076
048addec 130772001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 13078
048addec
JD
13079 * dired.c (scmp): Function moved from minibuf.c.
13080 Delete multibyte handling--used only on encoded strings.
59ce1461 13081
048addec 13082 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 13083
048addec 13084 * fns.c (merge): Add QUIT call.
59ce1461 13085
048addec 130862001-12-18 Dave Love <fx@gnu.org>
8727d588 13087
048addec
JD
13088 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
13089 language/georgian.el.
8727d588 13090
048addec 130912001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 13092
048addec
JD
13093 * Makefile.in (lisp, shortlisp): Synchronize with changes to
13094 lisp/Makefile.in:DONTCOMPILE.
cc63037e 13095
048addec 130962001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 13097
048addec
JD
13098 * xdisp.c (window_box_height): Do not return negative values.
13099 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 13100
048addec 13101 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 13102
048addec 13103 * term.c (keys): Likewise.
deece6f5 13104
048addec 13105 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 13106
048addec 131072001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 13108
048addec
JD
13109 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
13110 patch (COMPOSING_P, not COMPOSING).
28ff4293 13111
048addec 131122001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 13113
048addec 13114 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 13115
048addec
JD
13116 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
13117 before calling decode_coding.
9b46de40 13118
048addec 13119 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 13120
048addec
JD
13121 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
13122 instead of only for COMPOSITION_DISABLED.
9b46de40 13123
048addec 131242001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 13125
048addec 13126 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 13127
048addec 13128 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 13129
048addec
JD
13130 * buffer.h (struct buffer): New field `display_error_modiff'.
13131 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 13132
048addec 13133 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 13134
048addec
JD
13135 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
13136 Call redisplay_window, but not if display_error_modiff field says no.
13137 (redisplay_window_error): New function.
13138 (displayed_buffer): New variable.
13139 (redisplay_internal, redisplay_windows): Call the new functions
13140 instead of redisplay_window directly.
2cd23960 13141
048addec 131422001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 13143
048addec 13144 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 13145
048addec 131462001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 13147
048addec 13148 * makefile.w32-in (EMACSLOADPATH): Define.
f9711de4 13149 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
048addec 13150 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 13151
048addec 131522001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 13153
048addec
JD
13154 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
13155 parameter have a numeric value all the time.
f6fa0866 13156
048addec 13157 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 13158
048addec 131592001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 13160
048addec 13161 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 13162
048addec
JD
13163 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
13164 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 13165
048addec 131662001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 13167
048addec
JD
13168 * xdisp.c (move_it_vertically_backward): Change heuristic
13169 for the case that we didn't move far enough initially.
91c153e2 13170
048addec
JD
13171 * window.c (Frecenter): Simplify computation in the case of window
13172 system frames and ARG < 0; use window_box_height.
65b7d3e7 13173
048addec 131742001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 13175
048addec
JD
13176 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
13177 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 13178
048addec 131792001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 13180
048addec
JD
13181 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
13182 arg is negative.
be676094 13183
048addec 131842001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 13185
048addec
JD
13186 * m/hp800.h: Split the __hpux conditional into the parts
13187 that are right for GNU/Linux too and the parts that are not.
13188 Use the former if GNU_LINUX.
13189 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 13190
048addec 13191 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 13192
048addec 131932001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 13194
048addec
JD
13195 * macros.c, msdos.c, w16select.c: Change doc-string comments to
13196 `new style' [w/`doc:' keyword].
032a857d 13197
048addec 131982001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 13199
048addec
JD
13200 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
13201 before using.
b6270150 13202
048addec 132032001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 13204
048addec
JD
13205 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
13206 keyword].
98cbb9fa 13207
048addec 132082001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 13209
048addec 13210 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 13211
048addec 13212 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 13213
048addec 132142001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 13215
048addec
JD
13216 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
13217 Add comment to explain where the struct came from.
13218 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
13219 (add_menu_item): Process pop-up menus first to avoid memory leak.
13220 (add_menu_item, w32_menu_display_help): Use `help' field as
13221 Lisp_Object.
13222 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 13223
048addec 132242001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 13225
048addec 13226 * COPYING: Moved back.
fa336b91 13227
048addec
JD
13228 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
13229 Add parentheses around && within ||.
077907d4 13230
048addec 13231 * indent.c (compute_motion): Likewise.
aa2af83a 13232
048addec 13233 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 13234
048addec
JD
13235 * coding.c (setup_coding_system, shrink_encoding_region)
13236 (Fdecode_sjis_char): Likewise.
60a653f1 13237
048addec 132382001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 13239
048addec
JD
13240 * xdisp.c (display_mode_element): Don't read past end of string if
13241 it ends with '%'.
60a653f1 13242
048addec
JD
13243 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
13244 can hold.
60a653f1 13245
048addec
JD
13246 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
13247 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
13248 type changed to Lisp_Object.
13249 (syms_of_data): DEFVAR_LISP them.
60a653f1 13250
048addec 132512001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 13252
048addec
JD
13253 * callproc.c (init_callproc): Set Vdata_directory based on the source
13254 location whenever Emacs was run uninstalled.
60a653f1 13255
048addec 132562001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 13257
048addec
JD
13258 * config.in (HAVE_WORKING_VFORK): New #undefs.
13259 * process.c (create_process):
13260 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
13261 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
13262 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
13263 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
13264 * m/intel386.h (HAVE_VFORK): Likewise.
13265 * m/mips-siemens.h (HAVE_VFORK): Likewise.
13266 * m/mips.h (HAVE_VFORK): Likewise.
13267 * s/freebsd.h (vfork): Remove #define.
13268 * s/lynxos.h (HAVE_VFORK): Remove #undef.
13269 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 13270
048addec 132712001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 13272
048addec
JD
13273 * s/hpux10.h (random): Add undef.
13274 (HAVE_RANDOM): Define it just once.
60a653f1 13275
048addec 132762001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13277
048addec 13278 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 13279
048addec 132802001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 13281
048addec
JD
13282 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
13283 scroll bars of the frame before deleting the frame itself. If the
13284 frame has a widget, delete the frame with XtDestroyWidget, and do
13285 not call XDestroyWindow before that.
60a653f1 13286
048addec 132872001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 13288
048addec 13289 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 13290
048addec 13291 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 13292
048addec 132932001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 13294
048addec
JD
13295 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
13296 excessively large.
60a653f1 13297
048addec
JD
13298 * insdel.c (make_gap_larger): New function.
13299 (make_gap_smaller): New function.
13300 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
13301 Call make_gap_smaller if arg is negative.
60a653f1 13302
048addec 133032001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13304
048addec
JD
13305 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
13306 Pass a dummy argument when calling interrupt_signal.
13307 (parse_menu_item): Mark disabled items before checking for empty def.
13308 (read_char_minibuf_menu_prompt): Make safety more visible.
13309 (read_key_sequence): Add a `first_unbound' variable.
13310 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
13311 unbound prefix as soon as we can detect it.
60a653f1 13312
048addec
JD
13313 * doc.c (Fsnarf_documentation): Add prototype.
13314 (get_doc_string): Handle negative arguments.
13315 (Fdocumentation): Use AREF and ASIZE.
13316 Move the calls to get_doc_string to a single place.
13317 Don't confuse an interactive-spec for a docstring reference.
13318 (Fdocumentation_property): Take advantage of the fact that
13319 get_doc_string now ignores the sign of the docstring position.
60a653f1 13320
048addec 13321 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 13322
048addec 133232001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13324
a64387ee 13325 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
60a653f1 13326
048addec 133272001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13328
048addec
JD
13329 * xterm.c (x_draw_image_relief): Use predefined macro instead of
13330 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 13331
048addec 133322001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 13333
048addec
JD
13334 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
13335 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 13336
048addec 13337 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 13338
048addec 133392001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13340
048addec 13341 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 13342
048addec 133432001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 13344
048addec 13345 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 13346
048addec 133472001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 13348
f63fd14e 13349 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 13350
048addec
JD
13351 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
13352 [!WM_MOUSELEAVE]: Define.
60a653f1 13353
048addec
JD
13354 * w32menu.c (current_popup_menu, get_menu_item_info):
13355 (set_menu_item_info): New vars.
13356 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
13357 (w32_menu_show): Set current_popup_menu.
13358 (add_menu_item): Allocate new strings for owner-drawn menu items
13359 and help strings.
13360 Use owner-draw for disabled menu items again.
13361 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
13362 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 13363
048addec
JD
13364 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
13365 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
13366 <WM_EXITMENULOOP>: Free menu strings.
13367 <WM_MOUSELEAVE>: Stop tracking mouse.
13368 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 13369
048addec
JD
13370 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
13371 and mouse face.
60a653f1 13372
048addec 133732001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 13374
048addec
JD
13375 The following changes add left-fringe and right-fringe
13376 frame parameters to adjust fringe widths, or remove one or
13377 both fringes.
60a653f1 13378
048addec
JD
13379 * frame.h (struct frame): Remove trunc_area_pixel_width and
13380 trunc_area_cols fields.
13381 (Qleft_fringe, Qright_fringe): Declare.
13382 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 13383
048addec
JD
13384 * frame.c (Qleft_fringe, Qright_fringe): New vars.
13385 (syms_of_frame): Initialize them.
60a653f1 13386
048addec
JD
13387 * window.c (coordinates_in_window): Handle separate left and right
13388 fringe widths.
60a653f1 13389
048addec
JD
13390 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
13391 and fringe_cols fields.
13392 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
13393 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
13394 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
13395 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
13396 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
13397 (x_compute_fringe_widths): Add prototype.
60a653f1 13398
048addec
JD
13399 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
13400 fill fringe evenly with small dashes.
f63fd14e 13401 (x_draw_fringe_bitmap): Clear background if necessary. Align and
048addec
JD
13402 clip the new ZV bitmap to avoid jitter between rows.
13403 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
13404 background. Don't draw fringe bitmaps if fringe width is zero.
13405 (x_compute_fringe_widths): New function.
13406 (x_new_font, x_set_window_size_1): Use it.
60a653f1 13407
048addec
JD
13408 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
13409 (x_set_frame_parameters): Process `font' parameter before other
13410 parameters as fringe widths depend on it.
13411 (x_set_fringe_width): New function.
13412 (x_figure_window_size): Use x_compute_fringe_widths.
13413 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
13414 parameters.
60a653f1 13415
048addec
JD
13416 * widget.c (set_frame_size): Use x_compute_fringe_widths.
13417 (EmacsFrameSetCharSize): Ditto.
60a653f1 13418
048addec
JD
13419 * w32term.h: Merged changes from xterm.h.
13420 * w32term.c: Merged changes from xterm.c.
13421 * w32fns.c: Merged changes from xfns.c.
60a653f1 13422
048addec 134232001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13424
048addec 13425 * COPYING: Removed.
60a653f1 13426
048addec 134272001-11-29 Dave Love <fx@gnu.org>
60a653f1 13428
048addec
JD
13429 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
13430 extra extra slot.
13431 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 13432
048addec 134332001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13434
048addec
JD
13435 * fileio.c (file-name-coding-system)
13436 (default-file-name-coding-system): Doc fix (links to referenced
13437 variables added).
60a653f1 13438
048addec 134392001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13440
048addec
JD
13441 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
13442 Add dummy uses of gcproN variables.
60a653f1 13443
048addec
JD
13444 * category.c (describe_category, describe_category_1)
13445 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
13446 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 13447
048addec 134482001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 13449
048addec 13450 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 13451
048addec
JD
13452 * Makefile.in (lispdir): New variable, referring to build dir.
13453 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 13454
048addec 134552001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 13456
048addec
JD
13457 * w32menu.c (w32_menu_display_help): Actually add the new argument
13458 OWNER.
60a653f1 13459
048addec 134602001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 13461
048addec
JD
13462 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
13463 menu items. From David Ponce <dponce@wanadoo.fr>.
13464 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
13465 conditionally.
f63fd14e 13466 (w32_menu_display_help): New argument OWNER. Rewritten to store a
048addec 13467 help event in the owner frame's keyboard buffer.
60a653f1 13468
048addec
JD
13469 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
13470 (Fx_show_tip): Don't subtract last width from row width.
13471
13472 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
13473 (w32_read_socket): Use EQ to compare frames.
60a653f1 13474
048addec 134752001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 13476
048addec
JD
13477 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
13478 OVERLAPS_P.
60a653f1 13479
048addec 134802001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13481
048addec
JD
13482 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
13483 `gcpro3' and `gcpro4'.
60a653f1 13484
048addec 13485 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 13486
048addec 134872001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13488
048addec 13489 * ccl.c: Use AREF and ASIZE.
60a653f1 13490
048addec 134912001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13492
048addec
JD
13493 * lisp.h (run_hook_list_with_args): Remove.
13494 (LIST_END_P): Fix call to wrong_type_argument.
13495 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 13496
048addec 134972001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13498
048addec
JD
13499 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
13500 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 13501
048addec
JD
13502 * eval.c: Use AREF and ASIZE.
13503 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 13504
048addec
JD
13505 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
13506 which match the end of the file-name.
13507 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
13508 is not a valid env var, but leave it as is instead.
60a653f1 13509
048addec
JD
13510 * keymap.c (access_keymap): Handle t bindings like nil bindings.
13511 Make nil bindings in char-tables transparent.
13512 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 13513
048addec 135142001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 13515
048addec
JD
13516 * textprop.c (set_text_properties_1): Allow START, END in either order.
13517 Do nothing if range is empty.
60a653f1 13518
048addec 13519 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 13520
048addec
JD
13521 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
13522 (clean): Not here.
60a653f1 13523
048addec 135242001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13525
048addec
JD
13526 * textprop.c (set_text_properties_1): Clearly mark that the
13527 interval should not be empty.
60a653f1 13528
048addec
JD
13529 * intervals.c (graft_intervals_into_buffer):
13530 Don't call set_text_properties_1 on an empty interval.
60a653f1 13531
048addec 135322001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 13533
048addec 13534 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 13535
048addec
JD
13536 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
13537 don't lose the data in it.
60a653f1 13538
048addec 135392001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 13540
048addec 13541 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 13542
c62aec78 13543 * buffer.c (Fkill_buffer): Likewise.
60a653f1 13544
c62aec78 13545 * print.c (temp_output_buffer_setup): Likewise.
60a653f1 13546
048addec 135472001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13548
048addec 13549 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 13550
048addec 135512001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 13552
048addec
JD
13553 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
13554 Niemitalo <kon@iki.fi>.
60a653f1 13555
048addec 135562001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 13557
048addec 13558 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 13559
048addec
JD
13560 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
13561 (Fx_show_tip): Block input during frame creation.
13562 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 13563
048addec 135642001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 13565
048addec
JD
13566 * lread.c (Fload): Detect recursive load error for more than 3
13567 nestings of the same file.
13568 (Vrecursive_load_depth_limit): Variable deleted.
13569 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 13570
048addec 135712001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 13572
048addec
JD
13573 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
13574 mouse position if either left or top is not specified.
60a653f1 13575
048addec
JD
13576 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
13577 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
13578 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
13579 (my_create_tip_window): Assign tip_window.
13580 (x_create_tip_frame): Use same defaults as X.
13581 (compute_tip_xy): Remove unused variable. Use full screen width.
f63fd14e 13582 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 13583
048addec
JD
13584 * w32term.c (x_after_update_window_line): Doc fix.
13585 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
13586 frames.
13587 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 13588
048addec
JD
13589 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
13590 for all Windowed systems.
60a653f1 13591
048addec 135922001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 13593
048addec
JD
13594 * msdos.c (IT_clear_screen): If the frame's faces are not yet
13595 realized, use the initial screen colors to clear the screen.
60a653f1 13596
048addec 135972001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13598
048addec
JD
13599 * textprop.c (Fset_text_properties): Remove unused variables
13600 `unchanged', `prev_changed', `s' and `len'.
60a653f1 13601
048addec
JD
13602 * search.c (Freplace_match): Remove unused variable `inslen'.
13603
13604 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
13605
136062001-11-22 Jason Rumney <jasonr@gnu.org>
13607
13608 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
13609 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
13610 (my_create_tip_window): New function.
13611 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
13612 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
13613
136142001-11-20 Jason Rumney <jasonr@gnu.org>
13615
13616 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
13617 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
13618
13619 * w32fns.c (Vw32_system_coding_system): Remove.
13620 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
13621
136222001-11-19 Stefan Monnier <monnier@cs.yale.edu>
13623
13624 * fileio.c (Fwrite_region): Move choose_write_coding_system to
13625 after build_annotations.
13626
13627 * syntax.c (describe_syntax): Add dummy arg.
13628 (describe_syntax_1): Update call to describe_vector.
13629
13630 * category.c (describe_category): Add dummy arg.
13631 (describe_category_1): Update call to describe_vector.
13632
13633 * keymap.c (Fdescribe_vector): Add `describer' parameter.
13634 (describe_command, describe_translation): Add dummy second param.
13635 (describe_map): Call elt_describer with two arguments.
13636 (describe_vector_princ): Add `fun' parameter.
13637 Call it instead of the hardcoded `princ'.
13638 (describe_vector): Add arg `args'.
13639 Pass it as a new second argument to elt_describer.
60a653f1 13640
048addec 13641 * keymap.h (describe_vector): Update prototype.
60a653f1 13642
048addec
JD
13643 * frame.c: Don't include keymap.h any more.
13644 (keys_of_frame): Remove.
60a653f1 13645
048addec 13646 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 13647
048addec 13648 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 13649
048addec 136502001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 13651
048addec
JD
13652 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
13653 if defined, 0 otherwise.
13654 (MAP_FAILED): Define if not defined and use it to test mmap failure.
13655 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 13656
048addec 136572001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 13658
048addec 13659 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 13660
048addec 136612001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 13662
048addec
JD
13663 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
13664 (x_draw_bar_cursor): If the background color of the glyph under
13665 the cursor equals the frame's cursor color, use the glyph's
13666 foreground color for drawing the bar cursor.
13667 (x_after_update_window_line): Clear internal border in different
13668 circumstances.
13669 (w32_set_vertical_scroll_bar): Check for width and height > 0.
13670 (w32_draw_relief_rect): Correct relief by 1 pixel.
13671 (x_set_glyph_string_background_width):
13672 Set extends_to_end_of_line_p if the row's fill_line_p is set and
13673 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
13674 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
13675 if cursor_in_non_selected_windows is false.
13676 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
13677 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
13678 Notice if cursor gets overwritten.
13679 (notice_overwritten_cursor): Renamed from
13680 note_overwritten_text_cursor. Rewritten to take glyph widths
13681 into account, and to take X positions as parameters.
13682 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
13683 around call to x_draw_glyphs.
13684 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
13685 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
13686 color to use for image glyph reliefs.
13687 (x_draw_image_relief): Accept zero tool_bar_button_relief.
13688 (glyph_rect): Remove unused variable `area'.
60a653f1 13689
048addec
JD
13690 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
13691 some items.
13692 (x_set_internal_border_width): Set frame garbaged when window
13693 doesn't exist yet.
13694 (Fx_create_frame): Accept zero tool_bar_button_relief.
13695 (x_clear_image_1, four_corners_best, image_background)
13696 (image_background_transparent): New functions.
13697 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
13698 (gs_format): Add `:background' entry.
13699 (lookup_image): Set IMG's background color if specified.
13700 (pbm_load, xbm_load_image, png_load): Set IMG's background field
13701 when appropriate.
13702 (x_clear_image_1): Reset `background_valid' and
13703 `background_transparent_valid' fields.
13704 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
13705 calculating it here. Set IMG's background_transparent field.
13706 (enum xpm_keyword_index): Add XPM_BACKGROUND.
13707 (enum png_keyword_index): Add PNG_BACKGROUND.
13708 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
13709 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
13710 (enum gif_keyword_index): Add GIF_BACKGROUND.
13711 (enum gs_keyword_index): Add GS_BACKGROUND.
13712 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
13713 Pre-calculate image background color where necessary.
13714 (x_create_x_image_and_pixmap, xbm_load, gs_load):
13715 Use display info's n_cbits entry for screen depth.
13716 (Fx_show_tip): Remove unused variables `buffer', `top',
13717 `left', `max_width' and `max_height'.
60a653f1 13718
048addec 13719 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 13720
048addec 137212001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 13722
048addec 13723 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 13724
048addec 137252001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13726
048addec 13727 * frame.c (Fframe_live_p): Doc fix.
60a653f1 13728
048addec 137292001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 13730
048addec
JD
13731 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
13732 (message_dolog_marker3): New static variables hold three markers.
13733 (syms_of_xdisp): Initialize and staticpro them.
13734 (message_dolog): Use message_dolog_marker1..3 instead of
13735 allocating markers each time. Unchain them when done.
60a653f1 13736
048addec 137372001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 13738
048addec 13739 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 13740
048addec 137412001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 13742
048addec 13743 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 13744
048addec 137452001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 13746
048addec 13747 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 13748
048addec 137492001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 13750
048addec 13751 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 13752
048addec 137532001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 13754
048addec
JD
13755 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
13756 with invalid position.
60a653f1 13757
048addec 137582001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 13759
048addec 13760 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 13761
048addec
JD
13762 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
13763 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
13764 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 13765
048addec 13766 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 13767
048addec 137682001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13769
048addec
JD
13770 * fileio.c (build_annotations): Split off the tail.
13771 (build_annotations_2): New fun. Extracted from build_annotations.
13772 (Fwrite_region): Split the call to build_annotations into two
13773 calls to build_annotations and build_annotations_2.
077907d4 13774
048addec 137752001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 13776
048addec
JD
13777 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
13778 clear_waiting_for_input with argument.
1756e2fb 13779
048addec 13780 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 13781
048addec 13782 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 13783
048addec 13784 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 13785
048addec 13786 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 13787
048addec 137882001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 13789
048addec
JD
13790 * fileio.c (choose_write_coding_system): New fun, extracted
13791 from Fwrite_region.
13792 (Fwrite_region): Use it.
fa336b91 13793
048addec
JD
13794 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
13795 (funcall_lambda, run_hook_with_args): Make static and add prototype.
13796 (ml_apply, find_handler_clause): Add prototype.
fa336b91 13797
048addec 137982001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 13799
048addec 13800 * config.in: Add #undef HAVE_COFF_H.
fa336b91 13801
048addec
JD
13802 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
13803 Required for ISC 4.1.
fa336b91 13804
048addec 138052001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 13806
048addec
JD
13807 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
13808 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 13809
048addec 138102001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 13811
048addec
JD
13812 The following changes are made to clean up the various internal
13813 references to the fringes to actually use the term `fringe' for
13814 them. Previously, they were called `flags areas', `bitmap areas',
13815 `left/right side of windows', or implicitly as `flags' or
13816 `bitmaps':
fa336b91 13817
048addec 13818 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
f63fd14e 13819 Comments fixed. Use renamed symbols.
06e8f738 13820
f63fd14e 13821 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 13822
048addec
JD
13823 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
13824 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
13825 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 13826
048addec 13827 * msdos.c: Comment fix.
9ce647f4 13828
048addec 13829 * w32fns.c: Use renamed symbols.
9b784ab8 13830
f63fd14e 13831 * w32term.c: Comment fixes. Use renamed symbols.
048addec
JD
13832 (fringe_bitmap_type): Renamed from bitmap_type.
13833 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
13834 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
13835 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 13836
f63fd14e 13837 * w32term.h: Comment fixes. Use renamed symbols.
048addec
JD
13838 (fringes_extra): Renamed from flags_areas_extra.
13839 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
13840 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
13841 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
13842 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
13843 (FRAME_X_LEFT_FRINGE_WIDTH):
13844 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
13845 (FRAME_X_RIGHT_FRINGE_WIDTH):
13846 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 13847
048addec 13848 * widget.c: Use renamed symbols.
9f7e52b4 13849
f63fd14e 13850 * window.c: Comment fixes. Use renamed symbols.
048addec 13851 (coordinates-in-window-p): Doc fix.
fa336b91 13852
f63fd14e 13853 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 13854
048addec 13855 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 13856
048addec 13857 * xfns.c: Use renamed symbols.
89512fcd 13858
f63fd14e 13859 * xterm.c: Comment fixes. Use renamed symbols.
048addec
JD
13860 (fringe_bitmap_type): Renamed from bitmap_type.
13861 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
13862 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
13863 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 13864
f63fd14e 13865 * xterm.h: Comment fixes. Use renamed symbols.
048addec
JD
13866 (fringes_extra): Renamed from flags_areas_extra.
13867 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
13868 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
13869 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
13870 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
13871 (FRAME_X_LEFT_FRINGE_WIDTH):
13872 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
13873 (FRAME_X_RIGHT_FRINGE_WIDTH):
13874 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
13875
138762001-11-15 Jason Rumney <jasonr@gnu.org>
13877
13878 * w32menu.c (add-menu-item): Make help_echo and radio buttons
13879 work for most menu items. From David Ponce
13880 <david.ponce@wanadoo.fr>.
13881
138822001-11-15 Gerd Moellmann <gerd@gnu.org>
13883
13884 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
13885 Some x_set_* function expect to be called even if old and new
13886 value are equal.
13887
13888 * xdisp.c (build_desired_tool_bar_string): Accept zero
13889 tool_bar_button_relief.
13890
13891 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
13892
13893 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
13894
13895 * xterm.c (x_draw_bar_cursor): If the background color of the
13896 glyph under the cursor equals the frame's cursor color, use
13897 the glyph's foreground color for drawing the bar cursor.
13898
13899 * dispnew.c (direct_output_forward_char): Fix character/byte
13900 position comparison.
7d18891d 13901
048addec 139022001-11-15 Miles Bader <miles@gnu.org>
d2936d21 13903
048addec
JD
13904 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
13905 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
13906 Update arguments to find_field.
13907 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
13908 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
13909 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
13910 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 13911
048addec 139122001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 13913
048addec 13914 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 13915
048addec
JD
13916 * dispextern.h (image_background, image_background_transparent):
13917 Conditionalize on HAVE_X_WINDOWS.
7d18891d 13918
048addec 139192001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 13920
048addec 13921 * print.c (Fprin1_to_string): Doc fix.
7d18891d 13922
048addec 13923 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 13924
048addec 13925 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 13926
048addec 13927 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 13928
048addec 13929 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 13930
048addec 13931 * eval.c (syms_of_eval): Doc fix.
7d18891d 13932
048addec 13933 * coding.c (syms_of_coding): Doc fix.
7d18891d 13934
048addec 13935 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 13936
048addec 13937 * dispnew.c (syms_of_display): Doc fix.
9474c847 13938
048addec 13939 * category.c (Fget_unused_category): Doc fix.
9474c847 13940
048addec 13941 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 13942
048addec 139432001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 13944
048addec 13945 * print.c (prin1, print): Doc fix.
e3059a5d 13946
048addec 139472001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 13948
048addec
JD
13949 * fontset.h: Remove declarations of variables
13950 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 13951
048addec
JD
13952 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
13953 `Vclip_large_size_font'.
eae936e2 13954
048addec 139552001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 13956
048addec 13957 * w32fns.c: Doc fix.
ddb67bdc 13958
048addec 139592001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 13960
048addec 13961 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 13962
048addec 13963 * fns.c: Doc fix.
6e1b91d7 13964
048addec 13965 * emacs.c: Doc fix.
1c1d3d69 13966
048addec 13967 * coding.c: Doc fix.
1c1d3d69 13968
048addec
JD
13969 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
13970 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
13971 `new style' [w/`doc:' keyword].
b6f4c7ba 13972
048addec 139732001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 13974
048addec
JD
13975 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
13976 LeaveNotify events. Only FocusIn and FocusOut do that now.
13977 (x_display_and_set_cursor): Do display hollow cursors in active
13978 minibuffer windows when they are not selected.
b6f4c7ba 13979
048addec 139802001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 13981
048addec 13982 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
f63fd14e
JB
13983 * w32term.c: Change doc-string comments to `new style'
13984 [w/`doc:' keyword]. Doc fixes.
a89f435d 13985
048addec
JD
13986 * w32fns.c: Don't define max.
13987 (Fx_open_connection): Only execute once.
a4cd0cd7 13988
048addec 139892001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 13990
048addec
JD
13991 * ccl.c: Change macros to use do-while block instead of if-else.
13992 Use braces to follow GNU Coding Standards.
eafb659a 13993
048addec 139942001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 13995
048addec 13996 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 13997
048addec 13998 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 13999
048addec
JD
14000 * insdel.c (replace_range): Use adjust_markers_for_replace
14001 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 14002
048addec 14003 * intervals.h: Declare set_text_properties and set_text_properties_1.
a4cd0cd7 14004
048addec
JD
14005 * textprop.c (set_text_properties_1): New subroutine
14006 broken out of set_text_properties.
14007 (set_text_properties): Use set_text_properties_1.
91823618 14008
048addec
JD
14009 * intervals.c (graft_intervals_into_buffer):
14010 Use set_text_properties_1 to clear out properties.
91823618 14011
048addec
JD
14012 * search.c (Freplace_match): Use replace_range to insert
14013 and delete. Don't request property inheritance from
14014 surrounding text.
86928dfb 14015
048addec 140162001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 14017
048addec 14018 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
f63fd14e 14019 vertical fonts. Allow them if face name is explicitly specified.
048addec 14020 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 14021
048addec 140222001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 14023
048addec
JD
14024 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
14025 instead of malloc/free.
a78e0303 14026
048addec 140272001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 14028
048addec
JD
14029 * xfaces.c (merge_face_vectors): Use braces to follow GNU
14030 Coding Standards.
14031 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 14032
048addec 14033 * buffer.c (Fbury_buffer): Likewise.
0c99b139 14034
048addec 14035 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 14036
048addec
JD
14037 * coding.c (encode_coding): Use precomputed value of `src'.
14038 (encode_coding): Remove unused variable `src_end'.
14039 (code_convert_region): Remove unused variables `count'.
830ddd77 14040
048addec 140412001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 14042
048addec
JD
14043 * w32term.c (x_display_and_set_cursor): Do not move system caret
14044 if cursor_glyph is NULL.
55c6d645 14045
048addec 140462001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 14047
048addec 14048 * keymap.c (access_keymap): Fix compilation error.
5de38842 14049
048addec 140502001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 14051
048addec 14052 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 14053
048addec 140542001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 14055
048addec
JD
14056 * intervals.c (graft_intervals_into_buffer):
14057 Remove #ifdef'd-out code.
14058 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 14059
048addec
JD
14060 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
14061 code (eval-current-buffer).
14062 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 14063
048addec 140642001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 14065
048addec 14066 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 14067
048addec 140682001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 14069
048addec 14070 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 14071
048addec
JD
14072 * keyboard.c (make_lispy_event): Check integerness and fix
14073 Lisp_Object/int mixup.
17893c65 14074
048addec 140752001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 14076
048addec 14077 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 14078
048addec
JD
14079 * fontset.c (fontset_font_pattern): Remove unused variable
14080 `family_registry'.
d5360cc7 14081
048addec 14082 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 14083
048addec 140842001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 14085
048addec 14086 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 14087
048addec
JD
14088 * buffer.c (Fkill_buffer): Don't delete auto save file
14089 if buffer is modified.
d9d54213 14090
048addec 140912001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 14092
048addec
JD
14093 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
14094 CHECK_NUMBER_CDR.
b116830b 14095
048addec 140962001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 14097
048addec 14098 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 14099
048addec 141002001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 14101
048addec 14102 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 14103
048addec 141042001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 14105
048addec 14106 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 14107
048addec 141082001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 14109
048addec
JD
14110 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
14111 the program image directly.
982f6c7e 14112
048addec 141132001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 14114
048addec 14115 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 14116
048addec 141172001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 14118
048addec
JD
14119 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
14120 and CHECK_BUFFER.
d31053f9 14121
048addec
JD
14122 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
14123 (record_char): Likewise.
d31053f9 14124
048addec
JD
14125 * keyboard.c (make_lispy_event): Don't insist a drag event must
14126 move to a different buffer position. Instead, check for moving at
14127 least double_click_fuzz.
982f6c7e 14128
048addec 14129 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 14130
048addec 14131 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 14132
048addec
JD
14133 * indent.c (current_column_1, Fmove_to_column): Separate the code
14134 for display-table glyphs from the code for buffer text, to fix
14135 bugs in the former.
830047fd 14136
048addec 141372001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 14138
048addec
JD
14139 * buffer.c (Fbuffer_local_value): New function.
14140 (syms_of_buffer): Defsubr it.
2df5238c 14141
048addec
JD
14142 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
14143 value of `cursor-in-non-selected-windows'.
4e397688 14144
048addec
JD
14145 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
14146 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
14147 (syms_of_xdisp): Initialize it.
48b0f3ae 14148
048addec 141492001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 14150
048addec 14151 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 14152
048addec
JD
14153 * coding.c: Change doc-string comments to `new style' [w/`doc:'
14154 keyword].
3ecaf7e5 14155
048addec
JD
14156 * eval.c (top_level_value, top_level_set): Remove commented and
14157 #ifdef'd-out code.
14158 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 14159
048addec 141602001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 14161
048addec 14162 * xfns.c: Include unistd.h, if it exists.
8db2e33b 14163
048addec 14164 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 14165
048addec 14166 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 14167
048addec 141682001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 14169
048addec
JD
14170 * lisp.h (CHECK_STRING_CAR): New macro.
14171 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
14172 treating XCAR and XCDR as lvalues.
14173 (openp): Use CHECK_STRING_CAR.
14174 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 14175
048addec 141762001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 14177
048addec
JD
14178 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
14179 (SIGMASKTYPE): Define.
1b1acc13 14180
048addec 14181 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 14182
048addec 141832001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 14184
048addec
JD
14185 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
14186 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
14187 Fix typos in comments.
6cb16f95 14188
048addec
JD
14189 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
14190 and #ifdef'd-out code.
14191 Fix and reindent comments.
6cb16f95 14192
048addec 14193 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 14194
048addec
JD
14195 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
14196 argument `i' in macros.
6cb16f95 14197
048addec
JD
14198 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
14199 `i' in macros.
7e9d3c2f 14200
048addec
JD
14201 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
14202 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
14203 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
14204 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
14205 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
14206 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
14207 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
14208 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
14209 in macros.
7e9d3c2f 14210
048addec
JD
14211 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
14212 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
14213 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
14214 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
14215 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
14216 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
14217 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
14218 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
14219 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
14220 (remove unused second argument).
7e9d3c2f 14221
048addec 142222001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 14223
048addec
JD
14224 * syntax.c (describe_syntax): New wrapper.
14225 (Finternal_describe_syntax_value): Rename from describe_syntax.
14226 Don't insert space at front and \n at the end.
14227 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 14228
048addec
JD
14229 * regex.c (re_wctype): Try to fix some warnings.
14230 (regcomp, regexec): Don't forget the __restrict.
9ba48103 14231
048addec 142322001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 14233
048addec 14234 * textprop.c (Fget_char_property): Doc fix.
9ba48103 14235
048addec 142362001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 14237
048addec 14238 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 14239
048addec 14240 * data.c (Fsetq_default): Ditto.
c22e59e1 14241
048addec 14242 * callint.c (Finteractive): Ditto.
9271ed2c 14243
048addec 142442001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 14245
048addec
JD
14246 * macros.c: Don't include keymap.h any more.
14247
142482001-11-01 Richard M. Stallman <rms@gnu.org>
14249
14250 * data.c (Fmake_local_variable): Doc fix.
14251
14252 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
14253 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 14254
048addec 14255 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
14256 bindings along with or instead of the buffer local map.
14257 Make the overriding maps override what they should.
14258
f00691a3 142592001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
14260
14261 * window.c (grow_mini_window): Fix typo in comment.
14262
27188d11
GM
142632001-11-01 Gerd Moellmann <gerd@gnu.org>
14264
7b49b9d2
GM
14265 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
14266 (XTset_vertical_scroll_bar): Likewise.
14267
43f7c3ea
GM
14268 * xfns.c (x_build_heuristic_mask): Use four_corners_best
14269 instead of IMAGE_BACKGROUND.
c22e59e1 14270
b350c2e5
GM
14271 * xfns.c (four_corners_best): Reindent.
14272
c22e59e1 14273 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
14274 Handle :box so that it is possible to specify sexprs.
14275
bf00d461
EZ
142762001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
14277
14278 * s/hpux11.h: New file.
14279
f00691a3 142802001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 14281
2b209b97
PJ
14282 * emacs.c (USAGE1): Show command line option --no-window-system
14283 instead of --no-windows in usage.
14284 (standard_args): Rename --no-windows to --no-window-system.
14285 (bug_reporting_address): Follow Emacs coding conventions.
14286
9dbc9081
PJ
14287 * eval.c (Fcommandp): Doc fix.
14288 Change doc-string comments to `new style' [w/`doc:' keyword].
14289
4e10df59
PJ
14290 * frame.c (Fframe_live_p): Doc fix.
14291
14292 * buffer.c (selective-display-ellipses): Doc fix.
14293
dd387b25
GM
142942001-10-31 Gerd Moellmann <gerd@gnu.org>
14295
fe957e65
GM
14296 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
14297
dd387b25
GM
14298 * xfaces.c (realize_x_face): If C is not a single-byte character,
14299 set the face's colors_copied_bitwise_p instead of the defaulted_p
14300 members which have a different meaning.
14301 (free_face_colors): Do nothing for a face whose colors have been
14302 copied bitwise.
14303
c22e59e1 14304 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 14305
f00691a3 143062001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 14307
687784e8
PJ
14308 * marker.c, mocklisp.c: Change doc-string comments to `new style'
14309 [w/`doc:' keyword].
2e1280f8 14310
b9d9a9b9
GM
143112001-10-31 Gerd Moellmann <gerd@gnu.org>
14312
14313 * fns.c (require_unwind): Return Lisp_Object.
14314
f00691a3 143152001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 14316
fa1361cb
PJ
14317 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
14318 (last-input-char): Revert doc-string to be the same as the
14319 doc-string of `last-input-event'.
14320
6c465a15 14321 * xdisp.c: Fix typos in comments.
48400103 14322
eafa3196
GM
143232001-10-31 Gerd Moellmann <gerd@gnu.org>
14324
14325 * window.c (grow_mini_window): Handle case that the root
14326 window is already smaller than the nominal mininum height.
14327
747d3f2a
SM
143282001-10-30 Stefan Monnier <monnier@cs.yale.edu>
14329
bf9bb76f
SM
14330 * emacs.c (main): Don't call keys_of_macros any more.
14331
14332 * lisp.h (keys_of_macros): Remove.
14333
14334 * macros.c (keys_of_macros): Remove.
14335
747d3f2a
SM
14336 * xfaces.c (Fface_attribute_relative_p): Declare args.
14337
5e905a57
JR
143382001-10-30 Jason Rumney <jasonr@gnu.org>
14339
14340 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
14341 (enum_font_cb2): Ignore fonts with vertical orientation.
14342
3a426197
RS
143432001-10-30 Richard M. Stallman <rms@gnu.org>
14344
14345 * keyboard.c (Finput_pending_p): Doc fix.
14346
a742d646
GM
143472001-10-30 Gerd Moellmann <gerd@gnu.org>
14348
259cf6bc
GM
14349 * xterm.c (x_after_update_window_line): Don't run the code
14350 clearing in borders for rows whose visible height is 0.
14351
3f99f948
GM
14352 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
14353 resized_p flag is set. If not set, use the much less flickering
14354 method previously used.
14355
14356 * dispnew.c (change_frame_size_1): Set frame's resized_p.
14357
14358 * frame.h (struct frame) <resized_p>: New member.
14359
b4a3be43
GM
14360 * lread.c (to_multibyte): Ensure read_buffer is at least twice
14361 as large as the number of bytes to convert.
747d3f2a 14362
a742d646
GM
14363 * lread.c (to_multibyte): New function.
14364 (read1): Use it.
14365
cacbb9e9
EZ
143662001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
14367
14368 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
14369
99cb6b2f
GM
143702001-10-30 Gerd Moellmann <gerd@gnu.org>
14371
327f42ee 14372 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
14373 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
14374 if the row's fill_line_p is set and drawing the last glyph with
14375 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 14376
99cb6b2f
GM
14377 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
14378
8e8223e2
SM
143792001-10-29 Stefan Monnier <monnier@cs.yale.edu>
14380
14381 * xmenu.c: Include coding.h and charset.h.
14382 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
14383 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
14384 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
14385 Explicitly set wv->help. Use `TRUE' rather than `True'.
14386 (menu_help_callback): Use empty_string.
14387
14388 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
14389 (Fx_popup_dialog): Explicitly init f.
14390 (w32_menu_display_help): Use empty_string.
14391
4d083a8f
RS
143922001-10-29 Richard M. Stallman <rms@gnu.org>
14393
b2304472
RS
14394 * fns.c (Frequire): Detect recursive try to require the same
14395 feature 3 or more levels deep, and get error.
14396 (require_unwind): New subroutine.
14397 (require_nesting_list): New variable.
14398 (syms_of_fns): Init and staticpro it.
14399
4d083a8f
RS
14400 * print.c (print_object): Clarify indication of insertion type.
14401
2fe41216
EZ
144022001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
14403
90480000
EZ
14404 * coding.c (syms_of_coding): Document that locale-coding-system is
14405 used for decoding input on X.
14406
2fe41216
EZ
14407 * window.c (Fscroll_left, Fscroll_right): Doc fix.
14408
f00691a3 144092001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
14410
14411 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
14412 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
14413
60ebcfe8
GM
144142001-10-29 Gerd Moellmann <gerd@gnu.org>
14415
9a7bdceb
GM
14416 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
14417 use NO_CURSOR if cursor_in_non_selected_windows is false.
14418
3f08fcd2
GM
14419 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
14420 the slant attribute if FRAME is t.
14421
0ccfdad2
GM
14422 * xfns.c (x_set_internal_border_width): Set frame garbaged
14423 when X window doesn't exist yet.
14424
ef253080
GM
14425 * xterm.c (x_after_update_window_line): Clear internal border
14426 in different circumstances.
b116830b 14427
60ebcfe8
GM
14428 * xterm.c (XTread_socket) <KeyPress>: Don't use
14429 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
14430 <handa@etl.go.jp>.
14431
73d25f9c
EZ
144322001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
14433
14434 * m/ibms390.h: New file. From Adam Thornton
14435 <athornton@sinenomine.net>.
14436
cac1daf0
GM
144372001-10-28 Gerd Moellmann <gerd@gnu.org>
14438
053b3256 14439 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 14440
cac1daf0
GM
14441 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
14442 a loop counter.
14443
f00691a3 144442001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 14445
f9711de4 14446 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
186486eb 14447
4707d2d0
PJ
14448 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
14449 keyword].
14450 Fix typos in comments.
b116830b 14451
d883731c
PJ
14452 * emacs.c (bug_reporting_address): New function.
14453 Use it when displaying usage message.
14454
04012254
PJ
14455 * minibuf.c (read_minibuf): Remove unused external declaration of
14456 variable `Qread_only'.
14457
13b1a09c
PJ
14458 * keymap.c (access_keymap): Remove unused variable `charset'.
14459
5bbf4378
MB
144602001-10-28 Miles Bader <miles@gnu.org>
14461
14462 * xfaces.c (merge_face_heights): Handle TO being relative as well.
14463 Remove #ifdef'd-out code.
14464 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
14465 (syms_of_xfaces): Initialize them.
14466
1ce1e4ee
JR
144672001-10-27 Jason Rumney <jasonr@gnu.org>
14468
14469 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
14470 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
14471 position using the system caret.
14472
14473 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
14474 (w32_system_caret_height, w32_system_caret_x)
14475 (w32_system_caret_y): New variables for tracking system caret.
14476 (w32_initialize): Initialize them.
c2d53558 14477 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 14478
c2d53558
SM
14479 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
14480 New messages types.
1ce1e4ee
JR
14481
14482 * w32term.c (note_mouse_highlight): Clear old help_echo.
14483
f00691a3 144842001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 14485
bb4600a4
PJ
14486 * xterm.c: Fix typo in a comment.
14487
7db35a48
PJ
14488 * emacs.c: Fix typos in comments.
14489 Remove unnecessary spaces.
14490 Change doc-string comments to `new style' [w/`doc:' keyword].
14491 (USAGE2): Fix typos in usage string.
14492
a7248e4f
PJ
14493 * xterm.c: Fix typo in a comment.
14494
4e30ce42
PJ
14495 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
14496 emacs.c.
14497
62725a92
GM
144982001-10-27 Gerd Moellmann <gerd@gnu.org>
14499
798dbe1f 14500 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 14501 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
14502 farther backward when target_y was not reached.
14503
62725a92
GM
14504 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
14505 Display errno only if non-zero.
14506 (sound_warning): New function.
14507 (vox_configure): Don't treat failing to set sample rate as error.
14508 (various places): Improve error messages.
14509
d4e34d24
EZ
145102001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
14511
944e6f60
EZ
14512 * fileio.c (Faccess_file): Run the argument filename through
14513 Fexpand_file_name, before using it.
14514
d4e34d24
EZ
14515 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
14516 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
14517
38d2af0c
GM
145182001-10-26 Gerd Moellmann <gerd@gnu.org>
14519
da80a8d5
GM
14520 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
14521
38d2af0c
GM
14522 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
14523 Fix clearing in the case of scroll bars on the right.
c2d53558 14524
45de4a6f 145252001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
14526
14527 * w32gui.h (XImage): Add a dummy typedef.
14528
fbd5ceb2
GM
145292001-10-26 Gerd Moellmann <gerd@gnu.org>
14530
c2d53558 14531 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 14532
b23236fb
EZ
145332001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
14534
14535 * frame.c (Fframe_parameter): Fix last change.
14536
5d991fc4
EZ
14537 * fileio.c: Revert last change (which removed old commented-out
14538 version of expand-file-name). Add a comment that explains why
14539 this old version should not be removed.
14540
879eadc3
GM
145412001-10-25 Gerd Moellmann <gerd@gnu.org>
14542
75700ff2
GM
14543 * frame.c (Fframe_parameter): Fix a bug whereby some
14544 ``artificial'' frame parameters, like `minibuffer' were not
14545 obtained by calling Fframe_parameters.
14546
dfe92a6a
GM
14547 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
14548 cursor differently.
14549
879eadc3
GM
14550 * xdisp.c (move_it_vertically_backward): Compute line height
14551 differently. Add heuristic to try to be more compatible to 20.x.
14552
e1010ebe
SM
145532001-10-25 Stefan Monnier <monnier@cs.yale.edu>
14554
d73a471b
SM
14555 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
14556
d6da5a06
GM
14557 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
14558 boolean.
e1010ebe 14559
f66bd220
MB
145602001-10-25 Miles Bader <miles@gnu.org>
14561
14562 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
14563 BG is a pointer to a structure, not a structure.
14564 (gif_format, png_format): Add missing commas.
14565
d436d538
RS
145662001-10-24 Richard M. Stallman <rms@gnu.org>
14567
14568 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 14569 (syms_of_xfaces): Defsubr it.
d436d538 14570
f00691a3 145712001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
14572
14573 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
14574 variable `area'.
14575
f00691a3 145762001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 14577
c2d53558 14578 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 14579
e2a57b34
MB
145802001-10-25 Miles Bader <miles@gnu.org>
14581
14582 * dispextern.h (struct image): Add `background',
14583 `background_valid', and `background_transparent' fields.
14584 (image_background, image_background_transparent): New declarations.
14585 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
14586 * xfns.c (image_background, image_background_transparent)
14587 (four_corners_best): New functions.
c2d53558 14588 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
14589 (gs_format): Add `:background' entry.
14590 (lookup_image): Set IMG's background color if specified.
14591 (pbm_load, xbm_load_image, png_load): Set IMG's background field
14592 when appropriate.
14593 (x_clear_image_1): Reset `background_valid' and
14594 `background_transparent_valid' fields.
14595 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
14596 calculating it here. Set IMG's background_transparent field.
14597 (enum xpm_keyword_index): Add XPM_BACKGROUND.
14598 (enum png_keyword_index): Add PNG_BACKGROUND.
14599 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
14600 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
14601 (enum gif_keyword_index): Add GIF_BACKGROUND.
14602 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 14603 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
14604 Pre-calculate image background color where necessary.
14605 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
14606 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
14607 color to use for image glyph reliefs.
14608
b547b6e8
GM
146092001-10-24 Gerd Moellmann <gerd@gnu.org>
14610
d9e3b8c6
GM
14611 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
14612 in full-width rows.
c2d53558 14613
b547b6e8
GM
14614 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
14615 Fix clearing of area not covered by scroll bar.
14616
f00691a3 146172001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
14618
14619 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
14620 and `real_start'.
c2d53558 14621 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
14622 (glyph_rect): Remove unused variable `area'.
14623
76cb5e06
GM
146242001-10-24 Gerd Moellmann <gerd@gnu.org>
14625
bdbdebff 14626 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
14627
14628 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
14629 (row_containing_pos): Take additional argument DY.
14630 Treat rows ending in middle of char differently.
62e33982
GM
14631 (display_line): Handle tabs on window systems differently.
14632
14633 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
14634 with additional argument.
14635
14636 * dispextern.h (row_containing_pos): Adjust prototype.
14637
76cb5e06
GM
14638 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
14639 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
14640 (try_window_id, try_window_reusing_current_matrix)
14641 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 14642 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 14643
f00691a3 146442001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 14645
c9e60620
PJ
14646 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
14647 gnuemacs).
14648 (HAVE_BOXES): Fix typo in comment.
14649 (push_menu_pane): Fix typo in comment.
14650
3b552d56
PJ
14651 * xdisp.c: (display_prop_string_p): Remove unused local declaration
14652 of `Qwhen'.
14653 (single_display_prop_string_p): Remove unused local declarations
14654 of `Qwhen' and `Qmargin'.
14655 (string_buffer_position): Remove unused variable `around'.
14656 (store_frame_title): Remove unused variable `width'.
14657
15c565ac
PJ
14658 * window.c: Don't define max.
14659 (coordinates_in_window): Remove unused variable `uy'.
14660
a8818eb9
PJ
14661 * widget.c: Don't define max.
14662
996fee11
PJ
14663 * process.c: Don't define max.
14664 (create_process): Remove unused variable `buffer'.
14665
496e1a5b
GM
146662001-10-23 Gerd Moellmann <gerd@gnu.org>
14667
c2d53558 14668 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 14669
5905ae8b
EZ
146702001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
14671
14672 * xfaces.c (Finternal_set_lisp_face_attribute)
14673 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
14674 frame is on a windowed display.
14675
24db49fb
GM
146762001-10-23 Gerd Moellmann <gerd@gnu.org>
14677
c2d53558
SM
14678 * dispnew.c (sync_window_with_frame_matrix_rows):
14679 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
14680 of marginal areas.
14681
c2d53558 14682 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 14683
f0487f05
EZ
146842001-10-23 Andreas Schwab <schwab@suse.de>
14685
14686 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
14687 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
14688
f0a48a01
GM
146892001-10-23 Gerd Moellmann <gerd@gnu.org>
14690
c2d53558 14691 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
14692 REAL_END. Notice if cursor gets overwritten.
14693 (notice_overwritten_cursor): Take X positions as parameters.
14694 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
14695 around call to x_draw_glyphs.
14696
f00691a3 146972001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 14698
fc11dff0
PJ
14699 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
14700 instead of C) and usage.
a50a10a0 14701
fc11dff0
PJ
14702 * editfns.c (char-to-string): Fix argument names (use CHAR instead
14703 of C) and usage.
a50a10a0
PJ
14704
14705 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
14706 `left', `max_width' and `max_height'.
14707
8738febd
GM
147082001-10-23 Gerd Moellmann <gerd@gnu.org>
14709
14710 * xdisp.c (display_line): For a tab continued to the next line,
14711 set row's ends_in_middle_of_char_p.
14712
653c329b
GM
147132001-10-22 Gerd Moellmann <gerd@gnu.org>
14714
14715 * xdisp.c (display_line): Fix computation of continuation lines
14716 width for TABs.
14717
f00691a3 147182001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 14719
7ba51063
PJ
14720 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
14721 `Qlaplace'.
14722
f958c5ac
PJ
14723 * fileio.c: Remove unused code.
14724
eb360291
MB
147252001-10-22 Miles Bader <miles@gnu.org>
14726
14727 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
14728 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
14729 Remove `DOC_STRINGS_IN_COMMENTS' cases.
14730
98515cf0
JR
147312001-10-21 Jason Rumney <jasonr@gnu.org>
14732
14733 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
14734
93026d88
EZ
147352001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
14736
14737 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
14738 (Finsert_string): Avoid the multi-line string literals warning.
14739
c9a95b79
MB
147402001-10-22 Miles Bader <miles@gnu.org>
14741
14742 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
14743 (Fdocumentation): Don't use it.
14744 (syms_of_doc): Don't initialize it.
14745
14746 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
14747 * print.c (Fwith_output_to_temp_buffer): Likewise.
14748 * window.c (Fsave_window_excursion): Likewise.
c2d53558 14749 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 14750 (Fsave_restriction): Likewise.
c2d53558
SM
14751 * eval.c (Frun_hooks, Frun_hook_with_args)
14752 (Frun_hook_with_args_until_failure)
14753 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
14754 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
14755 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
14756 (Funwind_protect, Fcondition_case): Likewise.
14757 * coding.c (Ffind_operation_coding_system): Likewise.
14758 * keyboard.c (Ftrack_mouse): Likewise.
14759
a3b10252
MB
147602001-10-21 Miles Bader <miles@gnu.org>
14761
c2d53558 14762 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
14763 (Fmake_hash_table): Add usage: string to doc string.
14764 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 14765 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
14766 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
14767 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
14768 (Fml_prefix_argument_loop): Likewise.
14769
f00691a3 147702001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 14771
c2d53558 14772 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 14773
c6f73eec
PJ
14774 * sysdep.c (init_sys_modes): Change doc-string comments to `new
14775 style' [w/`doc:' keyword].
14776
14777 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
14778 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
14779 comments to `new style' [w/`doc:' keyword].
14780
3cf3436e
JR
147812001-10-21 Jason Rumney <jasonr@gnu.org>
14782
14783 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
14784
c169b8f1
JR
14785 * w32term.c (remember_mouse_glyph): New function.
14786 (w32_mouse_position): Use it.
14787 (note_mouse_movement): If the mouse moved off the glyph, remember
14788 its new position.
c2d53558 14789
4fdd691b
JR
14790 * w32term.h (struct w32_output): Correct spelling of x_compatible.
14791 (w32_display_info): Add mouse_face_overlay.
14792
c169b8f1
JR
14793 * w32term.c (notice_overwritten_cursor): Renamed from
14794 note_overwritten_text_cursor. Rewritten to take glyph widths into
14795 account.
14796 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
14797 (fast_find_string_pos): New function.
14798 (fast_find_position): Return the correct vpos. Add parameter
14799 STOP. In the final row, stop before glyphs having STOP as object.
14800 Don't consider glyphs that are not from a buffer.
14801 (fast_find_position) [0]: Add a presumably more correct version
14802 for after 21.1.
14803 (expose_window_tree, expose_frame): Don't compute intersections here.
14804 (expose_window): Do it here instead.
14805 (expose_window_tree, expose_window, expose_line): Return 1 when
14806 overwriting mouse-face.
14807 (expose_window): If W is the window currently being updated, mark
14808 the frame garbaged.
14809 (expose_frame): If mouse-face was overwritten, redo it.
14810 (x_use_underline_position_properties): New variable.
14811 (syms_of_xterm): DEFVAR_BOOL it.
14812 (x_draw_glyph_string): Add comment to use it in future.
14813 (x_draw_glyph_string): Restore clipping after drawing box.
14814 Fix a computation of the underline position.
14815 (w32_get_glyph_string_clip_rect): Minor cleanup.
14816 (x_fill_stretch_glyph_string): Remove an assertion.
14817 (x_produce_glyphs): Don't convert multibyte characters
14818 to unibyte characters in unibyte buffers.
14819 (cursor_in_mouse_face_p): New function.
14820 (x_draw_stretch_glyph_string): Use it to choose a different GC
14821 when drawing a cursor within highlighted text. Don't draw
14822 background again if it has already been drawn.
14823 (x_draw_glyph_string_box): Don't draw a full-width
14824 box just because the glyph row's full_width_p flag is set.
14825 (x_draw_glyphs): Fix computation of rightmost x for
14826 full-width rows.
14827 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
14828 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
f63fd14e 14829 change bottom shadow accordingly. Some cleanup.
c169b8f1
JR
14830 (x_update_window_end): Handle overwritten mouse face
14831 also for tool bar windows.
14832 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
14833 DRAW is DRAW_IMAGE_RAISED.
14834 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
14835 actually redrawn. Make the function static.
14836 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
14837 optimize away highlighting if we pass over that same overlay again.
14838 (note_mouse_highlight): Call mouse_face_overlay_overlaps
14839 to detect a case where we have to highlight a different region
14840 despite not having left the currently highlighted region.
14841 Set mouse_face_overlay in the x_display_info. Avoid changing the
14842 mouse pointer shape when show_mouse_face has already done it, or
14843 there is no need. Handle mouse-face and help-echo in strings.
14844 (glyph_rect): New function.
14845 (w32_mouse_position): Use it to raise the threshold for mouse
14846 movement event generation.
14847 (w32_initialize_display_info): Initialize the x_display_info's
14848 mouse_face_overlay.
14849 (w32_set_vertical_scroll_bar): Don't clear a zero height
14850 or width area.
14851 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
14852 a widget to zero height.
14853
3cf3436e 14854 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 14855 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
14856 equivalents in menu_items.
14857 (w32_menu_show): Don't overwrite an item's name with its key
14858 description in case the description is a multibyte string.
14859 (single_submenu): Some cleanup.
14860
14861 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
14862 (postprocess_image): New function.
14863 (lookup_image): Call it for all image types except PostScript.
14864 (x_kill_gs_process): Call postprocess_image.
14865 (tiff_error_handler, tiff_warning_handler): New functions.
14866 (tiff_load): Install them as handlers.
14867 (x_kill_gs_process): Recognize if someone has cleared the image
14868 cache under us.
14869 (valid_image_p): Protect better against invalid image
14870 specifications. Previous code could signal an error.
14871 (Fx_hide_tip, Fshow_tip): Doc fix.
14872 (Fv_max_tooltip_size): New variable.
14873 (syns_of_xfns): DEFVAR_LISP it.
14874 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
f63fd14e 14875 window buffer to *tip* right after creating the frame. Set frame's
3cf3436e
JR
14876 window_width. Use a maximum tooltip size specified by
14877 Vx_max_tooltip_size, if that has valid contents.
14878 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
14879 Make sure the tooltip is completely visible.
14880 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
14881 (Fx_create_frame): Adjust the frame's height for presence
14882 of the tool bar before calling x_figure_window_size.
14883 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
14884 when the window gets smaller.
14885 (x_set_foreground_color): Set frame's cursor_pixel.
14886 (x_set_foreground_color, x_set_background_color): Cleaned up.
14887 (x_set_font): Handle case of x_new_fontset returning the same name
14888 as before, although there was a change in fontsets.
14889
386ca361
MB
148902001-10-21 Miles Bader <miles@gnu.org>
14891
c2d53558 14892 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
14893 (Flogxor): Add usage: string to doc string.
14894 * charset.c (Fstring): Likewise.
14895 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
14896 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
14897
f00691a3 148982001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 14899
03be2694
PJ
14900 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
14901
14902 * alloc.c: Reindent DEFUNs with doc: keywords.
14903
14904 * abbrev.c (Finsert_abbrev_table_description): Reindent.
14905
14ff1ee0
PJ
14906 * frame.c: Change doc-string comments to `new style' [w/`doc:'
14907 keyword].
14908
2f147815 14909See ChangeLog.9 for earlier changes.
6922b018
KH
14910
14911;; Local Variables:
49b3bd82 14912;; coding: iso-2022-7bit
6922b018 14913;; End:
2a34a036 14914
2f147815 14915 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
14916 Copying and distribution of this file, with or without modification,
14917 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
14918
14919;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4