Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-580
[bpt/emacs.git] / src / ChangeLog
CommitLineData
841a8bca
KS
12004-09-29 Kim F. Storm <storm@cua.dk>
2
3 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
4
5 * fringe.c (Vfringe_bitmaps): New variable.
6 (syms_of_fringe): DEFVAR_LISP it.
7 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
8 Change arg to Lisp_Object and fail if not an integer.
9 (get_fringe_bitmap_name, resolve_fringe_bitmap)
10 (destroy_fringe_bitmap): New functions.
11 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol. Use
12 destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
13 clear its fringe property.
14 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
15 Fdestroy_fringe_bitmap.
16 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
17 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
18 and set fringe property. Signal error if no free slots.
19 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
20 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
21
22 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
23 symbols with a fringe property.
24
4d965590
KS
252004-09-27 Kim F. Storm <storm@cua.dk>
26
27 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
28 Doc fix. Format may now be a symbol or alist, not a cons.
29
30 * fringe.c (update_window_fringes): Handle new formats of
31 indicate-buffer-boundaries (symbol or alist). No longer
32 allow a simple cons.
33 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
34
e888c2b3
JD
352004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
36
37 * config.in: Rebuild
38
83f1cb94
JD
392004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
40
41 * config.in: Rebuild.
42
dd3b1d60 43 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
83f1cb94 44
2c51754c
SM
452004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
46
47 * xterm.c (x_term_init): Work around a bug in some X servers.
48
3df5f8aa
RS
492004-09-18 Richard M. Stallman <rms@gnu.org>
50
557ca2c1
RS
51 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
52
3df5f8aa
RS
53 * xdisp.c (try_window_reusing_current_matrix):
54 Handle the case where we reach the old displayed text,
55 out of sync with the old line boundary.
56
4b70e2c9
SM
572004-09-14 Stefan <monnier@iro.umontreal.ca>
58
59 * fileio.c (Finsert_file_contents): Fix case of replacement in a
60 narrowed buffer.
61
bfa02563
KS
622004-09-14 Kim F. Storm <storm@cua.dk>
63
a25fe164
KS
64 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
65
bfa02563
KS
66 * xfaces.c (Qface_no_inherit): New var.
67 (syms_of_xfaces): Intern and staticpro it.
68 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
69 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
70 Don't increment face_change_count when face has non-nil
71 face-no-inherit property.
72
126f9c02
SM
732004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
74
892a8eb5
SM
75 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
76 (Fbyte_code): Remove dead code after `wrong_type_argument'.
77
126f9c02
SM
78 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
79 before doing the mark_stack_check_gcpros since they are not on the stack.
80
c0ad3b38
KS
812004-09-12 Kim F. Storm <storm@cua.dk>
82
83 * editfns.c (Fformat): Handle format strings with multiple text
84 properties. Reverse text property list from the format string,
85 so the positions are in increasing order.
86
844fc085
JD
872004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
88
89 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
90 x_uncatch_errors so that possible protocol errors are delivered.
91
b106731c
EZ
922004-09-10 Eli Zaretskii <eliz@gnu.org>
93
21065c92
EZ
94 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
95 blockinput.h.
96 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
97 charset.h, and coding.h
98 (w16select.o): Depend on buffer.h, charset.h, coding.h, and
99 composite.h.
100 (term.o): Depend on window.h and keymap.h.
101 (abbrev.o): Depend on syntax.h.
102 (callint.o): Depend on keymap.h.
103 (casefiddle.o): Depend on charset.h and keymap.h.
104 (category.o): Depend on keymap.h.
105 (coding.o): Depend on dispextern.h.
106 (cmds.o): Depend on keyboard.h and keymap.h.
107 (dispnew.o): Depend on indent.h and intervals.h.
108 (doc.o): Depend on keymap.h.
109 (editfns.o): Depend on frame.h.
110 (emacs.o): Depend on dispextern.h.
111 (fileio.o): Don't depend on ccl.h.
112 (filelock.o): Depend on charset.h and coding.h.
113 (frame.o): Depend on w32term.h and macterm.h.
114 (insdel.o): Depend on region-cache.h.
115 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
116 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
117 (search.o): Depend on $(INTERVALS_SRC).
118 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
119 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
120 xterm.h, w32term.h, and macterm.h.
121 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
122 w32term.h, and macterm.h.
123 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
124 region-cache.h, xterm.h, w32term.h, and macterm.h.
125 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
126 (data.o): Depend on frame.h.
127 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
128 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
129 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
130 (intervals.o): Depend on keymap.h.
131
412ee2fa
EZ
132 * msdos.c (msdos_set_cursor_shape, IT_display_cursor): Add
133 debugging print-out to termscript.
b106731c 134
64b7122d
RS
1352004-09-09 Richard M. Stallman <rms@gnu.org>
136
137 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
138
5670531e
RS
1392004-09-08 Richard M. Stallman <rms@gnu.org>
140
6cb4a892
RS
141 * window.c (Fset_window_buffer): Doc fix.
142
5670531e
RS
143 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
144
7e388eb7
JL
1452004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
146
147 * minibuf.c (history_delete_duplicates): New variable.
148 (read_minibuf): Use it.
149 (syms_of_minibuf): Create the corresponding lisp variable.
150
370e3587
KS
1512004-09-08 Kim F. Storm <storm@cua.dk>
152
153 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
154 overlay just before point.
155
f844ba4e
LT
1562004-09-07 Luc Teirlinck <teirllm@auburn.edu>
157
158 * buffer.h (struct buffer): Add auto_save_file_format field.
f844ba4e
LT
159 * buffer.c (reset_buffer, init_buffer_once): Handle
160 auto_save_file_format field.
161 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
162 `buffer-auto-save-file-format'.
f844ba4e
LT
163 * fileio.c: Delete declaration for removed Vauto_save_file_format.
164 (build_annotations): Adapt to replacement of
165 `auto-save-file-format' with the new buffer-local variable
166 `buffer-auto-save-file-format'.
167 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
168
f0f90717
JR
1692004-09-07 Jason Rumney <jasonr@gnu.org>
170
171 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
172
173 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]: Handle
174 Unicode menu titles.
175
4e14f66c
KS
1762004-09-07 Kim F. Storm <storm@cua.dk>
177
178 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
179 property from text property or overlay strings at point.
180
1806714a
SM
1812004-09-07 Stefan <monnier@iro.umontreal.ca>
182
183 * xmenu.c (update_submenu_strings): YAILOM.
184 (set_frame_menubar): Make sure last_i is initialized.
185
1f06d367
JR
1862004-09-03 Jason Rumney <jasonr@gnu.org>
187
1806714a 188 * w32menu.c (_widget_value): Add lname and lkey.
1f06d367
JR
189 (digest_single_submenu): Set lname and lkey in widget_value
190 instead of name and key.
191 (update_submenu_strings): New function.
192 (set_frame_menubar): Remove call to inhibit_garbage_collection,
193 call update_submenu_strings.
194
195 * w32menu.c (globals_of_w32menu): Check for Unicode API.
196 (digest_single_submenu, w32_menu_show): Encode menu strings as
197 UTF-8 if Unicode API is available.
198 (utf8to16): New function.
199 (add_menu_item): Use it when calling Unicode API.
1806714a 200
46540080
KS
2012004-09-03 Kim F. Storm <storm@cua.dk>
202
203 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
204 in overlay or text-property strings; set cursor on corresponding
205 glyph rather than at end of the string.
206
9277ba61 2072004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
46540080 208
9277ba61 209 * macfns.c (x_real_positions): Save the current window port and
1806714a
SM
210 set a new one before obtaining the global coordinate.
211 Use FRAME_MAC_WINDOW.
212 (x_set_name, x_set_title): Encode title to UTF8.
213 Use SetWindowTitleWithCFString.
9277ba61
ST
214 (Fx_server_version): Get correct OS version.
215
1806714a
SM
216 * macmenu.c (add_menu_item): Remove unused variable `i'.
217 Don't let separator items destroy refence constants of other menu items.
9277ba61
ST
218
219 * macterm.c (x_update_end): Move SetPortWindowPort to inside
220 BLOCK_INPUT.
221 (x_set_offset): Use FRAME_MAC_WINDOW.
222
223 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
224 nontext_cursor if it is on a scroll bar.
225
226 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
227 Carbon support.
1806714a
SM
228 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
229 Use LIBS_CARBON.
9277ba61 230
b10daec7
JD
2312004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
232
233 * xfns.c (x_set_name_internal): New function. Check if we shall call
234 xfree before ENCODE_UTF_8.
235 (x_set_name, x_set_title): Call x_set_name_internal.
236
f7e22385
JR
2372004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
238
239 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
240 reload it.
241
2bf436c3
JD
2422004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
243
1806714a 244 * macmenu.c (_widget_value): Add lname and lkey.
16ceacc2
JD
245 (single_submenu): Set lname and lkey in widget_value
246 instead of name and key.
247 (update_submenu_strings): New function.
248 (set_frame_menubar): Remove call to inhibit_garbage_collection,
249 call update_submenu_strings.
250
2bf436c3
JD
251 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
252 instead of name and key.
253 (update_submenu_strings): New function.
254 (set_frame_menubar): Remove call to inhibit_garbage_collection,
ec867797 255 call update_submenu_strings.
2bf436c3
JD
256
257 * gtkutil.h (_widget_value): Added lname and lkey.
258
11715f92
ST
2592004-08-30 Steven Tamm <steventamm@mac.com>
260
261 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
262 by using different names for inner loop variables.
263
5500be54
JD
2642004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
265
059cd329
JD
266 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
267 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
268
5500be54
JD
269 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
270 tool bar items is 0.
271
383418e5
ST
2722004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
273
274 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
275 strings in menu items.
276 (single_submenu): Use ENCODE_MENU_STRING
277 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
278 button release isn't passed to event loop
279 (add_menu_item): Use SetMenuItemWithCFString
280
6eb3ee72
ST
2812004-08-26 Steven Tamm <steventamm@mac.com>
282
283 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
284 tool-bar/menu click
285 * macfns.c (Fx_file_dialog): Implemented using NavServices
286
10b43ac3
JD
2872004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
288
2728b5d0
JD
289 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
290
10b43ac3
JD
291 * xfns.c (x_window_to_frame, x_any_window_to_frame)
292 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
293 (x_top_window_to_frame): Return 0 if wdesc is None.
294
2ee3b79e
RS
2952004-08-22 Richard M. Stallman <rms@gnu.org>
296
297 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
298 HAVE_TERMIOS]: If there's no char for this signal, drop through
299 and use system calls.
300
301 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
302
9a1ba2ea
KS
3032004-08-20 Kim F. Storm <storm@cua.dk>
304
305 * process.c (wait_reading_process_output): Rename from
306 wait_reading_process_input. All uses changed.
307 (wait_reading_process_output_1): Rename from
308 wait_reading_process_input_1. All uses changed.
309
310 * dispnew.c (Fsleep_for): Remove obsolete code.
311
295f3b30
KH
3122004-08-20 Kenichi Handa <handa@m17n.org>
313
314 * syntax.c (skip_chars): Fix for unibyte case.
315
27615979
SM
3162004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
317
318 * syntax.c (char_quoted): Mixup byte/char pos.
319 (back_comment): Fixup globals in all cases.
320
00267f94
JD
3212004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
322
323 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
324 passing it to gtk_window_set_title.
325
2439909e
KS
3262004-08-19 Kim F. Storm <storm@cua.dk>
327
6ba0f14c
KS
328 * process.c (wait_reading_process_input): Clean up.
329 Add wait_for_cell, wait_proc, and just_wait_proc args
330 to avoid overloading `read_kbd' and `do_display' args.
331 Change read_kbd arg to int. All callers changed.
332
2439909e
KS
333 * process.c (process_send_signal): Use CDISABLE.
334
335 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
336
101c421e
KS
3372004-08-18 Kim F. Storm <storm@cua.dk>
338
339 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
340 forward to wait_reading_process_input via DO_DISPLAY arg.
341 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
342 object, only process output from that process; also inhibit
343 running timers if DO_DISPLAY==-2.
344
c438dc33
KS
3452004-08-17 Kim F. Storm <storm@cua.dk>
346
347 * process.c (process_send_signal): Fix last change--use
348 _POSIX_VDISABLE instead of CVDISABLE when available.
349
8afc13c6
RS
3502004-08-16 Richard M. Stallman <rms@gnu.org>
351
352 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
353 Set VQUIT and VINTR chars to the standard ones if they are unset.
354 [AIX]: Don't do that here. And don't force VINTR to standard
355 when SIGNALS_VIA_CHARACTERS.
356
c438dc33 357 * process.c (process_send_signal)
8afc13c6
RS
358 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
359 Do nothing if the character is CVDISABLE.
360
361 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
362
c438dc33 363 * intervals.c (move_if_not_intangible):
8afc13c6
RS
364 Force POSITION to be between BEGV and ZV.
365
6dad1714
JPW
3662004-08-14 John Paul Wallington <jpw@gnu.org>
367
368 * buffer.c (Frestore_buffer_modified_p): Doc fix.
369
370 * fileio.c (Fread_file_name): Doc fix.
371
372 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
373
2bd77330
LT
3742004-08-09 Luc Teirlinck <teirllm@auburn.edu>
375
376 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
377
c90e7e43
LT
3782004-08-08 Luc Teirlinck <teirllm@auburn.edu>
379
380 * keyboard.c: Declare Qdisabled_command_function instead of
8392e138 381 Qdisabled_command_hook.
c90e7e43 382 (Fcommand_execute): Use Qdisabled_command_function instead of
8392e138 383 Qdisabled_command_hook.
c90e7e43
LT
384 (syms_of_keyboard): Ditto.
385
81909a1a
LT
3862004-08-07 Luc Teirlinck <teirllm@auburn.edu>
387
388 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
389 (syms_of_keymap) <key-translation-map>: Doc fixes.
390
0cedd530
SM
3912004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
392
1725a7c9
SM
393 * window.c (window_list_1): YAILOM.
394
0cedd530
SM
395 * fileio.c (make_temp_name): Handle multibyte prefixes.
396
2515a131
LT
3972004-08-06 Luc Teirlinck <teirllm@auburn.edu>
398
399 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
400 Doc fix.
401
c8b20fb7
KH
4022004-08-03 Kenichi Handa <handa@m17n.org>
403
404 * coding.c (decode_coding_string): Adjust coding->consumed, and
405 etc. with shrinked_bytes.
406
fb8b092b
KS
4072004-08-03 Kim F. Storm <storm@cua.dk>
408
409 * indent.c (compute_motion): Fix check for full width window
410 in non-window case. Do not count left truncation glyph on
411 window systems.
412
df133612
LT
4132004-08-02 Luc Teirlinck <teirllm@auburn.edu>
414
415 * data.c (Finteractive_form): Doc fix.
416
0f7a93c1
KS
4172004-08-02 Kim F. Storm <storm@cua.dk>
418
419 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
420 properly accounting for continuation glyph on non-window systems.
421 (Fcompute_motion): Use actual window width if WIDTH is nil, and
422 actual window width/height if TOPOS is nil, properly accounting for
423 continuation glyphs on non-window systems, and optional header lines.
424 (vmotion): Let compute_motion calculate actual window width.
425
426 * window.c (window_scroll_line_based): Let compute_motion
427 calculate actual window width.
428
f491e1ed
KS
4292004-08-02 Kim F. Storm <storm@cua.dk>
430
431 * process.c (read_process_output): Use whole read buffer.
432 Don't trigger adaptive read buffering on errors.
433
83f64226
LT
4342004-07-31 Luc Teirlinck <teirllm@auburn.edu>
435
436 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
437
438 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
439
440 * callint.c (Fcall_interactively): Doc fix.
441
8afc13c6
RS
4422004-07-30 Richard M. Stallman <rms@gnu.org>
443
444 * abbrev.c (Fexpand_abbrev): Undo previous change.
445
7c111482
KS
4462004-07-30 Kim F. Storm <storm@cua.dk>
447
448 * editfns.c (Fformat): Allocate extra (dummy) element in info.
449
ee945d08
LT
4502004-07-28 Luc Teirlinck <teirllm@auburn.edu>
451
452 * eval.c (Fdefvar, Fdefconst): Doc fixes.
453
3f911c94
KS
4542004-07-27 Kim F. Storm <storm@cua.dk>
455
456 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
457 we have ensured that the glyph fits on the current line (or returned
458 MOVE_LINE_CONTINUED otherwise).
459
f29ff8c7
KS
4602004-07-26 Kim F. Storm <storm@cua.dk>
461
462 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
463 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
464 if target position is at end of display line but char is not a newline.
465
81159bb9
RS
4662004-07-25 Richard M. Stallman <rms@gnu.org>
467
ab431b61
RS
468 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
469 instead of ON_VERTICAL_BORDER, when on scroll bar.
470 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
471
472 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
473
f29ff8c7 474 * window.c (Fcoordinates_in_window_p):
81159bb9
RS
475 Take account of FRAME_INTERNAL_BORDER_WIDTH.
476
477 * alloc.c (check_cons_list): New function (contents commented out).
478
fc820cc5
LT
4792004-07-24 Luc Teirlinck <teirllm@auburn.edu>
480
481 * xfaces.c (Fcolor_supported_p): Doc fix.
482
483 * frame.c (Fselect_frame, Fset_frame_selected_window)
484 (Fframe_visible_p, Fraise_frame): Doc fixes.
485
289978b5
LT
4862004-07-24 Richard M. Stallman <rms@gnu.org>
487
7630911d
RS
488 * keyboard.h (not_single_kboard_state): Declared.
489
490 * fileio.c (Fwrite_region): Doc fix.
491
492 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
493
494 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
495 only when a real abbrev is present.
496
289978b5
LT
497 * xfns.c (x_icon_verify): New function.
498 (Fx_create_frame): Use it.
499
63cc10ae
KS
5002004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
501
502 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
503
36f826d4
KS
5042004-07-21 Kim F. Storm <storm@cua.dk>
505
506 * window.h (struct glyph_matrix): New members nrows_scale_factor
507 and ncols_scale_factor.
508
509 * window.c (make_window): Initialize nrows_scale_factor and
510 ncols_scale_factor members.
511
512 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
513 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
514 (required_matrix_height): Apply nrows_scale_factor.
515 (required_matrix_width): Apply ncols_scale_factor.
516
517 * xdisp.c (display_line): Increment nrows_scale_factor and set
518 fonts_changed_p if past last allocated row.
519 (append_glyph, append_composite_glyph, produce_image_glyph)
520 (append_stretch_glyph): Increment ncols_scale_factor and set
521 fonts_changed_p if current area is full.
522
5fc1c546
JD
5232004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
524
525 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
526
cb7516e5
LT
5272004-07-19 Luc Teirlinck <teirllm@auburn.edu>
528
529 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
530 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
531 (Fset_window_start, Fscroll_up, Fscroll_down)
532 (Fother_window_for_scrolling, Fscroll_other_window)
533 (Fsave_window_excursion, Fset_window_vscroll)
534 (syms_of_window) <window-size-fixed>: Doc fixes.
535
dda741ec
JR
5362004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
537
538 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
539 ENCODE_SYSTEM for filenames.
540
bfcf6608
ST
5412004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
542
543 * mac.c (sys_select): Block input around call to
544 ReceiveNextEvent to prevent breakage. Correctly handle
545 blocking on event queue only by calling ReceiveNextEvent
546 instead of select (since GUI events aren't on an fd).
547 (sys_read): Remove function
548 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
549
e082ac9d
ST
5502004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
551
552 * mac.c (sys_select): Redo sys_select to use alarm-based
cb7516e5 553 polling instead of 1 sec timeouts (like solaris).
e082ac9d 554
cb7516e5 555 * macterm.c (x_make_frame_visible): Comment in polling on
e082ac9d
ST
556 frame creation.
557
558 * keyboard.c: Undef SIGIO on Carbon
559
560 * atimer.c (alarm_signal_handler): Call alarm handlers after
561 scheduling.
562
563 * eval.c (Feval): Remove quit_char test
564
565 * process.c (wait_reading_process_input): Remove clearing
566 stdin for select call on process input.
567
4b9da0fb
LT
5682004-07-18 Luc Teirlinck <teirllm@auburn.edu>
569
1204e81c
LT
570 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
571 capitalization error in docstring.
4b9da0fb 572
26503ad2
JB
5732004-07-17 Juanma Barranquero <lektu@terra.es>
574
575 * keyboard.c (not_single_kboard_state): Do nothing unless
576 MULTI_KBOARD is defined.
577
3751eb00
RS
5782004-07-17 Richard M. Stallman <rms@gnu.org>
579
580 * window.c (coordinates_in_window): Inside the window but outside
581 its box to the L or R, return ON_VERTICAL_BORDER.
582 (window_list_1): Rotate the list to start with WINDOW.
583
584 * print.c (print_preprocess): Test for print_depth at limit
585 before entering in being_printed.
586
587 * keyboard.c (not_single_kboard_state): New function.
588 (stuff_buffered_input): Now no-op only if no SIGTSTP.
589
590 * frame.c (Fdelete_frame): If we're in single_bboard_state on
591 this kboard, and we delete its last frame, go to any_kboard_state.
592
593 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
594
62eb6ca9
JR
5952004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
596
597 * w32fns.c (Fx_file_dialog): Encode strings in system coding
598 system before passing them to OS functions for display.
599
0f6af254
DK
6002004-07-15 David Kastrup <dak@gnu.org>
601
f9253326
KS
602 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
603 Apparently fixes an abort condition.
0f6af254 604
386c8f42
LT
6052004-07-14 Luc Teirlinck <teirllm@auburn.edu>
606
607 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
608 instead of a cons.
609
366511da
MB
6102004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
611
612 * keyboard.c (echo_dash): Do nothing if there already is a dash
613 at the end of the echo string.
614
f85409d3
KS
6152004-07-12 Kim F. Storm <storm@cua.dk>
616
617 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
618 if GC_MARK_STACK.
619
0ba2e87b
LT
6202004-07-10 Luc Teirlinck <teirllm@auburn.edu>
621
da38045d
LT
622 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
623
0ba2e87b
LT
624 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
625 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
626 (Freplace_buffer_in_windows, Fset_window_buffer)
627 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
628 (syms_of_window): Expand docstring of `display-buffer-function'.
629
5668fbb8
LT
6302004-07-09 Luc Teirlinck <teirllm@auburn.edu>
631
632 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
633 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
634 that time values of the type (HIGH . LOW) are considered obsolete.
635
a085bf9d
LT
6362004-07-06 Luc Teirlinck <teirllm@auburn.edu>
637
669de2fb
LT
638 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
639 docstring.
640
bac66325 641 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
a085bf9d 642
8e975df9
JPW
6432004-07-06 John Paul Wallington <jpw@gnu.org>
644
645 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
646
fa164e6a
JPW
647 * fns.c (Fclear_string): Signal an error if STRING is not a string.
648
2bac9bb1
JD
6492004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
650
651 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
652 instead of CGMainDisplayID (only in OSX 10.2 and later).
653
316ef0dc
JPW
6542004-07-04 John Paul Wallington <jpw@gnu.org>
655
656 * fileio.c (read_file_name_completion_ignore_case): New variable.
657 (syms_of_fileio): Declare and initialise it.
658 (Fread_file_name): Bind `completion-ignore-case' to respect it.
659
2a1a35c6
EZ
6602004-07-03 Eli Zaretskii <eliz@gnu.org>
661
662 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
663 for event.x and event.y.
664
33a72331
KH
6652004-07-01 Kenichi Handa <handa@m17n.org>
666
667 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
668 after getting a new string by pre-write-conversion.
669
07a6ab76
SM
6702004-06-30 Stefan <monnier@iro.umontreal.ca>
671
672 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
673 (x_calc_absolute_position): Remove unused var `child'.
674
675 * xfaces.c (x_supports_face_attributes_p)
676 (Fdisplay_supports_face_attributes_p): YAILOM.
677 (tty_supports_face_attributes_p): Remove unused var `i'.
678
679 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
680 back_unibyte_ok.
681
682 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
683
684 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
685
686 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
687
f96ec754
AS
6882004-06-30 Andreas Schwab <schwab@suse.de>
689
690 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
691 (Finit_image_library): Pass LIBRARIES through to
692 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
693 (lookup_image_type): Pass Qnil as second argument to
694 Finit_image_library.
695
696 * lisp.h: Declare Finit_image_library.
697
59feca74 6982004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
c8d09ad8 699
31983645
AS
700 * macterm.c (do_window_activate, do_window_deactivate): Remove.
701 (XTread_socket): Send mouse button events to the toolbox
702 dispatcher even when the mouse is grabbed. Don't process window
703 activate events for non-Emacs windows. Replace function calls to
704 do_window_activate and do_window_deactivate with their contents.
705 Reset mouse grabbing status when a window is deactivated.
59feca74 706
c61278bb
ST
7072004-06-29 Steven Tamm <steventamm@mac.com>
708
709 * macterm.c (mac_get_emulated_btn)
710 (mac_event_to_emacs_modifiers): Fix emulated mouse button
711 support to correctly mask out modifiers.
712
c3762cbd
DK
7132004-06-29 David Kastrup <dak@gnu.org>
714
715 * search.c (Fset_match_data): Allow buffer before end of list
716 which can happen if set-match-data is using a pre-consed list.
717
c61278bb 7182004-06-28 Steven Tamm <steventamm@mac.com>
e439b925
ST
719
720 * macterm.c (XTread_socket): Correctly set the frame position
721 after the window is moved.
722
74cdfe05
JD
7232004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
724
725 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
726 gpix and gmask just before return to avoid memory leak.
03ecb80f
JD
727 (xg_get_image_for_pixmap): Add workaround for monochrome displays
728 so insensitive and activated icons look ok.
74cdfe05 729
ef544dc8
JR
7302004-06-27 Jason Rumney <jasonr@gnu.org>
731
732 * w32fns.c (file_dialog_callback): Disable edit control if set
733 to directories only on CDN_INITDONE message.
734 (Fx_file_dialog): Default to directories only when prompt starts
735 with "Dired".
736
7b7990cc
KS
7372004-06-25 Kim F. Storm <storm@cua.dk>
738
739 * alloc.c (allocate_misc): Update total_free_markers.
740 (free_misc): New function.
741 (safe_alloca_unwind, free_marker): Use it.
742
743 * lisp.h (free_misc): Add prototype.
744
745 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
746
d8c379f8
RS
7472004-06-24 Richard M. Stallman <rms@gnu.org>
748
749 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
750 (syms_of_emacs): Lisp variables deleted.
751
559cdd07
DK
7522004-06-23 David Kastrup <dak@gnu.org>
753
94939b84
DK
754 * search.c (Freplace_match): Adjust the match-data more thoroughly
755 when replacing strings in the buffer.
756 (Fmatch_data): When INTEGERS is non-nil and the last match was in
757 a buffer, add the buffer as last element to the match data.
758 (Fset_match_data): If an additional element of the match-data is a
759 buffer, restore it to last_thing_searched.
c8d09ad8 760 (save_search_regs): Save last_thing_searched as part of the match data.
559cdd07
DK
761 (restore_match_data): Restore it again.
762
dce417e7
LT
7632004-06-23 Luc Teirlinck <teirllm@auburn.edu>
764
765 * keymap.c (Ftext_char_description): Doc fix.
766 * doc.c (Fsnarf_documentation): Doc fix.
767
ef54b2d0
KS
7682004-06-22 Kim F. Storm <storm@cua.dk>
769
b5bc4d05
KS
770 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
771
ef54b2d0
KS
772 * lisp.h (struct Lisp_Save_Value): New member dogc.
773 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
774 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
775 (SAFE_FREE_LISP): New macro.
776
777 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
778 (make_save_value): Init new dogc member.
779 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
780
781 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
782 SAFE_FREE_LISP macros.
783
3d33d993
KS
7842004-06-22 Kim F. Storm <storm@cua.dk>
785
786 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
787 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
788 in that memory area are unknown to GC. Add comments.
789
790 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
791
5c917f98
KS
7922004-06-21 Kim F. Storm <storm@cua.dk>
793
794 * lisp.h (MAX_ALLOCA): Define here.
795 (safe_alloca_unwind): Add prototype.
796 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
797
798 * alloc.c (safe_alloca_unwind): New function.
799
800 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
801
802 * charset.c (Fstring): Use SAFE_ALLOCA.
803
804 * coding.c (MAX_ALLOCA): Remove define.
805
806 * data.c (MAX_ALLOCA): Remove define.
807 (Faset): Use SAFE_ALLOCA.
808
809 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
810
811 * fns.c (string_make_multibyte, string_to_multibyte)
812 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
813 (MAX_ALLOCA): Remove define.
814 (Fbase64_encode_region, Fbase64_encode_string)
815 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
816 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
817 memory leak if encoding fails.
818
819 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
820
9a09408e
EZ
8212004-06-21 Eli Zaretskii <eliz@gnu.org>
822
823 * print.c (Fwith_output_to_temp_buffer): Doc fix.
824
376de739
RS
8252004-06-20 Richard M. Stallman <rms@gnu.org>
826
827 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
828
829 * search.c (match_limit): Cleaner err msg when no match data available.
830
831 * window.c (syms_of_window): Doc fix.
832
833 * keyboard.c (command_loop_1): Handle values `only' and `identity'
834 for Vtransient_mark_mode.
835
836 * buffer.c (syms_of_buffer): Doc fix.
837
acd81db9
DK
8382004-06-21 David Kastrup <dak@gnu.org>
839
840 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
841 and unbinding of `case-fold-search' according to
842 `completion-ignore-case' around calls of string-match and
843 predicates, respectively. Should give satisfactory performance
844 in all relevant cases.
845
f303762d
JD
8462004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
847
95911c74
JD
848 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
849 clip_x/y_origin.
850
a6cb6b78
JD
851 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
852
f303762d
JD
853 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
854
855 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
856 on Mac OSX.
857
bbdb2684
LT
8582004-06-16 Luc Teirlinck <teirllm@auburn.edu>
859
860 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
861
5ea48b1c
KS
8622004-06-16 Kim F. Storm <storm@cua.dk>
863
864 * dispextern.h (Vimage_types): Remove extern.
865
803aac3e
MB
8662004-06-16 Miles Bader <miles@gnu.org>
867
868 * image.c (lookup_image_type): Initialize image type if necessary.
869
cdc97764
KS
8702004-06-15 Kim F. Storm <storm@cua.dk>
871
c4a5739c
KS
872 * xdisp.c (try_cursor_movement): Exclude header line from scroll
873 margin at top of window.
874 (try_window_reusing_current_matrix): Calculate proper cursor position
875 after scrolling up with non-zero scroll margin, as the old cursor
876 position corresponds to value of PT before executing this command.
877 (try_window_id): Consider scroll margin at bottom of window too;
878 otherwise we fail to scroll when hl-line-mode is enabled.
879
cdc97764
KS
880 * syntax.c (skip_chars): Only recognize [:class:] when it has the
881 proper format and class is a lower-case word.
882
5b166323
JD
8832004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
884
885 * gtkutil.c (xg_get_image_for_pixmap): New function.
c8d09ad8 886 (xg_get_gdk_pixmap_and_mask): Remove.
5b166323
JD
887 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
888 xg_get_gdk_pixmap_and_mask.
cdc97764 889
5b166323
JD
890 * xterm.h (struct x_display_info): Typo in comment fixed.
891
1ebd4f78
JB
8922004-06-14 Juanma Barranquero <lektu@terra.es>
893
894 * dispextern.h (Vimage_types): Make it conditional on
895 HAVE_WINDOW_SYSTEM.
896
897 * image.c (Vimage_types): Move from xdisp.c.
898 (Vimage_type_cache): New variable.
899 (define_image_type): New argument indicating whether an image
900 library was loaded; cache loaded status and return t on success,
901 nil otherwise.
902 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
903 (w32_delayed_load): New function to load an image library from a
904 list of possible filenames.
905 (init_xpm_functions, init_png_functions, init_jpeg_functions)
906 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
c8d09ad8 907 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
1ebd4f78
JB
908 (Finit_image_library): New function, extracted from `init_image'.
909 Try to initialize an image library on demand and cache whether we
910 were successful or not.
911 (syms_of_image): Initialize `Vimage_types' and
912 `Vimage_type_cache'. Add recognized image types to Vimage_types.
913 Export `init-image-library'.
914 (init_image): Remove initialization of all image types, except xbm
915 and pbm.
916
917 * xdisp.c (Vimage_types): Delete (moved to image.c).
918
904ee128
AS
9192004-06-14 Andreas Schwab <schwab@suse.de>
920
921 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
922 Avoid calling specbind when completion-regexp-list is empty.
923
092de21d
RS
9242004-06-13 Richard M. Stallman <rms@gnu.org>
925
926 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
927 (re_wctype, re_iswctype, re_wctype_to_bit):
928 Non-function definitions moved here from regex.c.
1ebd4f78 929
092de21d
RS
930 * regex.c (re_wctype, re_iswctype): Function defs longer static.
931 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
932 (re_wctype, re_iswctype, re_wctype_to_bit):
933 Non-function definitions moved to regex.h.
934
935 * window.c (Fselect_window): Doc fix.
936
937 * syntax.c: Include regex.h.
938 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
939 If requested, make a list of classes, then check the scanned
940 chars for membership in them.
941 (in_classes): New function.
942 Doc fix.
943
944 * keyboard.c (cmd_error): Don't call any_kboard_state
945 if inside a recursive edit level.
946
9472004-06-13 Lorentey K\e,Aa\e(Broly <lorentey@elte.hu>
948
949 * keyboard.c (command_loop): Call any_kboard_state before
950 command_loop_2 when at top level.
951
3ebc0939
AS
9522004-06-13 Andreas Schwab <schwab@suse.de>
953
cea5d0d4
AS
954 * print.c (print_object): Always use %ld for printing EMACS_INT.
955
956 * keyboard.c (cancel_hourglass_unwind): Return a value.
957 (modify_event_symbol): Always use %ld for printing EMACS_INT.
958 (Fexecute_extended_command): Likewise.
959
960 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
961 avoid clashes.
962 (SYNTAX): Likewise.
963 (SYNTAX_WITH_FLAGS): Likewise.
964 (SYNTAX_MATCH): Likewise.
965
966 * syntax.c (char_quoted): Avoid warning about undefined operation.
967 (find_defun_start): Likewise.
968 (scan_lists): Likewise.
969 (INC_FROM): Likewise.
970 (scan_sexps_forward): Likewise.
971
be8c4ce4
AS
972 * image.c: Include <ctype.h>.
973
3ebc0939
AS
974 * xfaces.c (face_attr_equal_p): Declare parameters.
975
6fb41b5b
KH
9762004-06-13 Kenichi Handa <handa@m17n.org>
977
978 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
979
fc3095ce
EZ
9802004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
981
982 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
983
66189a40
KH
9842004-06-12 Kenichi Handa <handa@m17n.org>
985
986 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
987 ccl_prog_stack_struct and update it.
988 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
989 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
990 ccl->eof_ic on EOF.
991 (ccl_debug_hook): New function.
992 (struct ccl_prog_stack): New member eof_ic.
993 (ccl_driver): Handle EOF in subrountine call correctly.
994
9952004-06-11 Kenichi Handa <handa@m17n.org>
996
997 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
998
1da71023
KS
9992004-06-11 Kim F. Storm <storm@cua.dk>
1000
1001 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
1002
e9efcef4
JB
10032004-06-11 Juanma Barranquero <lektu@terra.es>
1004
1005 * keyboard.c (Fposn_at_point): Doc fix.
1006
9b9ceb61
DK
10072004-06-11 David Kastrup <dak@gnu.org>
1008
1009 * search.c (match_limit): Don't flag an error if match-data
1010 exceeding the allocated search_regs.num_regs gets requested, just
1011 return Qnil.
1012
6e87ac8f
MB
10132004-06-08 Miles Bader <miles@gnu.org>
1014
1015 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
1016
0b0dea7b
JB
10172004-06-07 Juanma Barranquero <lektu@terra.es>
1018
1019 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
1020 (Fcurrent_time_string, Fcurrent_time_zone)
1021 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
1022
a0a23346
MB
10232004-06-07 Miles Bader <miles@gnu.org>
1024
08384afd 1025 * xfaces.c (struct named_merge_point): New type.
a0a23346
MB
1026 (push_named_merge_point): New function.
1027 (merge_named_face): New function.
1028 (merge_face_ref, face_at_buffer_position, face_at_string_position):
1029 Use `merge_named_face'.
1030 (merge_face_inheritance): Function removed.
c8d09ad8 1031 (merge_face_ref): Rename from `merge_face_vector_with_property'.
a0a23346
MB
1032 Add new `err_msgs' and `named_merge_points' args. Return error
1033 status. Only print error messages if ERR_MSGS is true. Don't try to
1034 do :inherit attribute validation.
1035 (merge_face_heights): Handle `unspecified' in both directions.
1036 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
1037 Call `merge_face_ref' instead of `merge_face_inheritance'.
1038 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
1039 (compute_char_face, face_at_buffer_position)
1040 (face_at_string_position): Call `merge_face_ref' instead of
1041 `merge_face_vector_with_property'.
1042
12d5b185
KH
10432004-06-07 Kenichi Handa <handa@m17n.org>
1044
1045 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
1046 the necessary places.
1047
2e2d7ee6
KS
10482004-06-07 Kim F. Storm <storm@cua.dk>
1049
1050 * process.c (Fdelete_process): Undo 2004-05-28 change.
1051 Instead, call status_notify also for network process.
1052 (status_message): Use process instead of status as arg.
1053 Give messages "deleted" or "connection broken by remote peer" for
1054 an exited network process.
1055 (status_notify): Change call to status_message.
1056 (read_process_output): Increase readmax to 4096. Do not increase
1057 buffer size for datagram channels (default is now large enough).
1058
fcf0d299
ST
10592004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
1060
1061 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
1062 problem due to newly defined variable.
1063
0722292b
MB
10642004-06-06 Miles Bader <miles@gnu.org>
1065
1066 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
1067 immediately if non-interactive or not initialized.
1068
ddfb8369
RS
10692004-06-05 Richard M. Stallman <rms@gnu.org>
1070
1071 * minibuf.c (Fcompleting_read): Doc fix.
1072
57015754
AS
10732004-06-05 Andreas Schwab <schwab@suse.de>
1074
1075 * macfns.c (x_create_tip_frame): Fix declaration after statement.
1076
23715ea6
JB
10772004-06-05 Juanma Barranquero <lektu@terra.es>
1078
1079 * keymap.c (Fdescribe_vector): Fix docstring.
1080 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
1081
8e330b22
MB
10822004-06-05 Miles Bader <miles@gnu.org>
1083
1084 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
1085 attributes have different values than the default face.
1086
9742a3a6
EZ
10872004-06-04 Eli Zaretskii <eliz@gnu.org>
1088
1089 * xfaces.c (x_supports_face_attributes_p): Make this function
1090 conditional on HAVE_WINDOW_SYSTEM.
c8d09ad8
SM
1091 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
1092 Don't call x_supports_face_attributes_p if it was not compiled in.
9742a3a6 1093
9717e36c
MB
10942004-06-04 Miles Bader <miles@gnu.org>
1095
1096 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
1097 from Ftty_supports_face_attributes_p.
1098 (x_supports_face_attributes_p): New function.
1099 (Ftty_supports_face_attributes_p): Function deleted.
1100 (Fdisplay_supports_face_attributes_p): New function.
1101 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
f9711de4 1102 (face_attr_equal_p): New function.
9717e36c
MB
1103 (lface_equal_p): Use it.
1104
52deb19f
JB
11052004-06-03 Juanma Barranquero <lektu@terra.es>
1106
1107 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
1108 (Vw32_color_map): Fix typo in docstring.
1109 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
1110 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
1111 Make argument names match their use in docstring.
1112
86d373e6
JB
11132004-06-02 Juanma Barranquero <lektu@terra.es>
1114
1115 Work around bugs/problems with MinGW builds of graphics libraries
1116 called from MSVC builds of Emacs.
1117
1118 * image.c (lookup_image): Make pointer to img static.
1119 (png_read_from_memory): Disable "global" optimization.
1120
2fb0ce67
SM
11212004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
1122
c8d09ad8
SM
1123 * eval.c (Fcondition_case): Fix usage. Simplify.
1124
2fb0ce67
SM
1125 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
1126
50bf7673
ST
11272004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1128
1129 * macfns.c: Don't include ccl.h.
1130 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
86d373e6
JB
1131 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
1132 TextUtils.h.
c8d09ad8 1133 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
50bf7673
ST
1134 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
1135 display height/width.
1136 (compute_tip_xy, Vx_max_tooltip_size): Declare.
1137 (unwind_create_tip_frame, compute_tip_xy): New functions.
1138 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
1139 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
1140 and last_show_tip_args.
2fb0ce67 1141
50bf7673
ST
1142 * macgui.h [!MAC_OSX]: Include Gestalt.h.
1143 (Cursor, No_Cursor): New defines.
c8d09ad8 1144 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
50bf7673
ST
1145 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
1146
1147 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
1148
1149 * macterm.c: Don't include Gestalt.h.
1150 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
1151 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
1152 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
1153 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
1154 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
1155 (construct_mouse_click, XTmouse_position)
1156 (x_scroll_bar_report_motion, x_calc_absolute_position)
1157 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
1158 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
1159 (note_mouse_movement): Clear the mouse face and reset the pointer
1160 shape when the pointer goes outside the frame without grabbing.
1161 (mac_front_window): New function.
1162 (mac_window_to_frame): New macro.
1163 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
1164 (do_window_activate, do_window_deactivate, do_app_resume)
1165 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
1166 (do_zoom_window, mac_do_receive_drag, XTread_socket)
1167 (mac_check_for_quit_char): Use mac_front_window and/or
1168 mac_window_to_frame.
1169 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
1170 scroll-bar click event.
1171 (mac_define_frame_cursor): Change the pointer shape.
c8d09ad8 1172 (x_free_frame_resources): Reset tip_window to NULL when it is disposed.
50bf7673 1173 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
c8d09ad8 1174 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
50bf7673
ST
1175 (do_window_update): Don't do anything if the updated window is the
1176 tooltip window.
1177 (do_mouse_moved): Handle mouse movement events here (previously in
1178 XTread_socket). Clear the mouse face if
1179 dpyinfo->mouse_face_hidden is set.
1180 (do_os_event, do_events): Remove (now in XTread_socket).
1181 (XTread_socket): Immediately return if interrupt_input_blocked.
c8d09ad8
SM
1182 Loop until all the events in the queue are processed.
1183 Rearrange codes for mouse grabbing. Add tooltip support. Include the
50bf7673
ST
1184 contents of do_os_event and do_events. Remove mouse movement
1185 handling (now in do_mouse_moved). Add the case where
1186 Vmouse_highlight has an integer value.
1187 (NewMacWindow): Remove.
1188 (make_mac_frame): Do what NewMacWindow previously did. Don't do
1189 excess initializations.
1190 (make_mac_terminal_frame): Previous initializations in
1191 make_mac_frame are moved here.
c8d09ad8
SM
1192 (mac_initialize_display_info):
1193 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
50bf7673
ST
1194
1195 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
1196 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
1197
08fd1251
RS
11982004-05-29 Richard M. Stallman <rms@gnu.org>
1199
1200 * lisp.h (truncate_undo_list): Update decl.
1201
1202 * alloc.c (undo_outer_limit): New variable.
1203 (syms_of_alloc): Defvar it.
1204 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
1205
1206 * undo.c (truncate_undo_list): New arg LIMITSIZE.
1207
1208 * alloc.c (lisp_align_malloc): Check for base == 0
1209 regardless of HAVE_POSIX_MEMALIGN.
1210 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
1211
227ef0ff
SM
12122004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
1213
1214 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
1215 (marker_blocks_pending_free): Remove.
1216 (Fgarbage_collect): Sweep after cleaning up undo-lists.
1217 Mark the undo lists after claning them up.
1218 Don't free block in marker_blocks_pending_free.
1219 (mark_buffer): Don't mark undo_list.
1220 (gc_sweep): Sweep hash-tables and strings first.
1221 Do free marker blocks that are empty.
1222
034a6113
SM
12232004-05-28 Jim Blandy <jimb@redhat.com>
1224
1225 * regex.c (print_partial_compiled_pattern): Add missing 'break'
1226 after 'case wordend'. For symbeg and symend, print to stderr,
1227 like the other cases.
1228
33594a8d
NF
12292004-05-28 Noah Friedman <friedman@splode.com>
1230
1231 * process.c (Fdelete_process): Do not call remove_process.
1232
ce50a847
SM
12332004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
1234
1235 * alloc.c (struct backtrace): Remove.
1236 (Fgarbage_collect): Use the new mark_backtrace.
1237
1238 * eval.c (mark_backtrace): New function.
1239
1240 * minibuf.c (run_exit_minibuf_hook): New function.
1241 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
1242 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
1243
1e8dae36
KS
12442004-05-27 Kim F. Storm <storm@cua.dk>
1245
1246 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
1247 over display properties, e.g. images, that replace buffer text.
1248
846faa3b
KS
12492004-05-25 Kim F. Storm <storm@cua.dk>
1250
1251 * alloc.c (marker_blocks_pending_free): New var.
1252 (gc_sweep): Store free marker blocks on that list.
1253 (Fgarbage_collect): Free them after undo-list cleanup.
1254
1255 * process.c (wait_reading_process_input): Check connect_wait_mask
1256 before actually accepting connection in case it has already been
1257 accepted due to recursion.
1258
6239a668
KH
12592004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu> (tiny change)
1260
ce50a847
SM
1261 * coding.c (Fset_safe_terminal_coding_system_internal):
1262 Set suppress_error in safe_terminal_coding, not terminal_coding.
6239a668 1263
71d5a208
RS
12642004-05-22 Richard M. Stallman <rms@gnu.org>
1265
1266 * alloc.c (Fmake_string): Doc fix.
1267
1268 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
1269 and the alist pairs too.
1270
1271 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
1272
1273 * emacs.c (main): Update copyright year.
1274
1275 * fileio.c (Fread_file_name): Expand DIR if not absolute.
1276
1277 * insdel.c (del_range_2, replace_range): Don't write an anchor
1278 if the gap is empty.
1279
1280 * xdisp.c (try_scrolling): If scroll-up-aggressively or
1281 scroll-down-aggressively is small but positive, put point
1282 near the screen edge.
1283
f63fd14e
JB
12842004-05-22 Juanma Barranquero <lektu@terra.es>
1285
1286 * keymap.c (Fdefine_key): Doc fix.
1287
4d12067c
KS
12882004-05-22 Kim F. Storm <storm@cua.dk>
1289
1290 * alloc.c (struct backtrace): Add debug_on_exit member.
1291 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
1292 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
1293 the removed cons cells.
1294 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
1295 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
1296 any cons cells pointing to unallocated stings.
1297 Do not lisp_free any marker blocks, as there may still be pointers
1298 to them from buffer undo lists at this stage of GC.
1299
1300 * keyboard.c (struct backtrace): Add debug_on_exit member.
1301 (Fcommand_execute): Clear it.
1302
931285e2
LT
13032004-05-20 Luc Teirlinck <teirllm@auburn.edu>
1304
1305 * intervals.c (lookup_char_property): Do not prematurely return nil.
1306
669fa600
SM
13072004-05-19 Jim Blandy <jimb@redhat.com>
1308
1309 Add support for new '\_<' and '\_>' regexp operators, matching the
f63fd14e 1310 beginning and end of symbols.
4d12067c 1311
669fa600
SM
1312 * regex.c (enum syntaxcode): Add Ssymbol.
1313 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
1314 (re_opcode_t): New opcodes `symbeg' and `symend'.
1315 (print_partial_compiled_pattern): Print the new opcodes properly.
1316 (regex_compile): Parse the new operators.
ce50a847 1317 (analyse_first): Skip sym(beg|end) (they match only the empty string).
669fa600
SM
1318 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
1319 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
1320 (re_match_2_internal): Match symbeg and symend.
1321
1322 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
1323
0d8c2e5c
KS
13242004-05-19 Kim F. Storm <storm@cua.dk>
1325
1326 * .gdbinit (xsymbol): Fix last change.
1327
669fa600
SM
13282004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
1329
1330 * .gdbinit (xprintstr): New fun.
1331 (xstring, xprintsym): Use it.
1332
1333 * w32proc.c (create_child): Use INTMASK.
1334
1335 * alloc.c (Fgarbage_collect): Do all the marking before flushing
1336 unmarked elements of the undo list.
1337
9a6a4c40
DP
13382004-05-18 David Ponce <david@dponce.com>
1339
1340 * print.c (print): Reset print_depth before to call print_object.
1341
f3c4ec74
JR
13422004-05-18 Jason Rumney <jasonr@gnu.org>
1343
1344 * w32console.c: Prefix RIF functions with w32con_ to avoid
1345 namespace clash with functions in term.c and w32term.c.
1346
1347 * w32menu.c (add_menu_item, w32_menu_display_help)
1348 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
1349
0d8c2e5c 1350 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
f3c4ec74 1351
6be49c3a
EZ
13522004-05-18 Eli Zaretskii <eliz@gnu.org>
1353
4d0b9a0a
EZ
1354 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
1355
6be49c3a
EZ
1356 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
1357 with make_number.
1358 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
1359 with XINT.
1360
0bc90bba
KS
13612004-05-18 Kim F. Storm <storm@cua.dk>
1362
89d19988
KS
1363 * blockinput.h (INPUT_BLOCKED_P): New macros.
1364
1365 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
1366 (Ftop_level): Unblock input if blocked.
1367
0bc90bba
KS
1368 * buffer.h (GET_OVERLAYS_AT): New macro.
1369 * msdos.c (IT_note_mouse_highlight): Use it.
1370 * textprop.c (get_char_property_and_overlay): Use it.
1371 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
1372 * xfaces.c (face_at_buffer_position): Use it.
1373
1374 * print.c (print_object): Increase buf size.
1375
653bd0f6
JR
13762004-05-17 Jason Rumney <jasonr@gnu.org>
1377
1378 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
1379 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
1380 Lisp_Object using i member.
1381 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
1382 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
1383 consistently.
1384
1385 * w32proc.c (create_child): Use make_number instead of masking pid.
1386
1387 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
1388 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
1389 Use EQ to compare Lisp_Objects.
1390 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
1391
1392 * w32term.c (w32_num_mouse_buttons): Rename from
1393 Vw32_num_mouse_buttons and make it an int.
1394
1395 * w32.c (init_environment): Use it.
1396
1397 * w32fns.c (w32_wnd_proc): Likewise.
1398
1399 * w32proc.c (w32_pipe_read_delay): Rename from
1400 Vw32_pipe_read_delay and make it an int.
1401
1402 * w32.c (_sys_read_ahead): Use it.
1403
1404 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
1405
1406 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
1407
1408 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
1409 (key_event): Don't mix Lisp_Object and int.
1410
1411 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
1412
1413 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
1414 modifiers in language change event.
1415
54b53ba7
KS
14162004-05-17 Kim F. Storm <storm@cua.dk>
1417
1418 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
1419 Such objects may be freed markers which still exist on an undo list.
1420
6e86a75d
JB
14212004-05-16 Juanma Barranquero <lektu@terra.es>
1422
1423 * data.c (Fset_default): Make argument names match their use in
1424 docstring.
1425
fc80da24
AS
14262004-05-15 Andreas Schwab <schwab@suse.de>
1427
1428 * emacs.c (gdb_array_mark_flag): Define.
1429 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
1430
c1380aa6
EZ
14312004-05-15 Eli Zaretskii <eliz@gnu.org>
1432
1433 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
1434 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
1435 defined for the MS-DOS build.
1436
89458937
SM
14372004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
1438
1439 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
1440
08020f9a
KH
14412004-05-14 Kenichi Handa <handa@m17n.org>
1442
1443 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
1444
a433994a
ST
14452004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1446
1447 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
1448 section to frame.c section.
1449 (Fxw_display_color_p, Fx_file_dialog): Declare if
89458937 1450 HAVE_WINDOW_SYSTEM defined.
0d8c2e5c 1451
a433994a 1452 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
0d8c2e5c 1453
a433994a 1454 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
0d8c2e5c 1455
a433994a
ST
1456 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
1457 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
1458 (XTread_socket): Fix int/Lisp_Object mixup.
1459 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
0d8c2e5c 1460
a433994a
ST
1461 * macterm.h (struct frame, struct face, struct image)
1462 (display_x_get_resource, Fx_display_color_p)
89458937
SM
1463 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
1464 Add prototypes.
a433994a 1465
b51a51b9
KS
14662004-05-14 Kim F. Storm <storm@cua.dk>
1467
1468 * process.c (wait_reading_process_input): Make reentrant.
1469 Make Available and Connecting non-static. Save and restore value
1470 of waiting_for_user_input_p.
1471
2bde1dd8
KS
14722004-05-13 Kim F. Storm <storm@cua.dk>
1473
1474 * keyboard.c (mark_kboards): Don't mark x and y members
1475 that are overloaded in selection request events.
1476
a267ab4d
SM
14772004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
1478
1479 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
1480
eb15ce9e
GM
14812004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
1482
1483 * window.c (Fdisplay_buffer, Fsplit_window)
1484 (split-height-threshold): Doc fix.
1485
7fc92635
JB
14862004-05-13 Juanma Barranquero <lektu@terra.es>
1487
1488 * xfaces.c (Ftty_supports_face_attributes_p)
1489 (Finternal_copy_lisp_face): Fix typo in docstring.
1490 (Finternal_get_lisp_face_attribute): Fix docstring.
1491
1ec2a572
JD
14922004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1493
1494 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
1495
ae9292e0
ST
14962004-05-11 Steven Tamm <steventamm@mac.com>
1497
1498 * macfns.c (Fx_create_frame): Default to using tool-bar by
1499 setting tool-bar-lines to 1 in default-frame-alist.
1500
15012004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ea1aaa6f
ST
1502
1503 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
1504 (xpm_get_color_table_v, xpm_make_color_table_h)
1505 (xpm_put_color_table_h, xpm_get_color_table_h)
1506 (xpm_str_to_color_key, xpm_load_image, xpm_load)
1507 (syms_of_image): Support XPM on Carbon Emacs. Does not
a267ab4d 1508 depend on libXpm, but only supports XPM version 3 without extensions.
ea1aaa6f 1509
fe97e8df
ST
15102004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1511
a267ab4d 1512 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
fe97e8df
ST
1513 instead of FRAME_X_P
1514
b47e779e
KS
15152004-05-11 Kim F. Storm <storm@cua.dk>
1516
1517 * process.c (read_process_output): Grow decoding_buf when needed;
1518 this could cause a crash in allocate_string and compact_small_strings.
1519
cdc9b845
EZ
15202004-04-29 Jim Blandy <jimb@redhat.com>
1521
1522 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
1523 against proper opcode.
1524
aa7094ba
JB
15252004-05-10 Juanma Barranquero <lektu@terra.es>
1526
1527 * process.c (Fstart_process): Fix docstring.
1528
1529 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
1530 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
1531 (Fsplit_char, Fchar_charset): Make argument names match their use
1532 in docstring.
1533
e109331a
RS
15342004-05-10 Richard M. Stallman <rms@gnu.org>
1535
1536 * print.c (print_preprocess): Use being_printed, loop_count and
1537 halftail to detect overdeep nesting and cyclic cdr chains.
1538
9a28b921
AS
15392004-05-10 Andreas Schwab <schwab@suse.de>
1540
1541 * lisp.h: Declare Fmake_symbolic_link.
1542
1543 * fileio.c (Frename_file): Remove extra argument in call to
1544 Fmake_symbolic_link.
1545
e2c02c1a
KS
15462004-05-10 Kim F. Storm <storm@cua.dk>
1547
1548 * xdisp.c (calc_line_height_property): Use string position when
1549 object is a string.
1550
cfe9d13e
KH
15512004-05-10 Kenichi Handa <handa@m17n.org>
1552
a57e8159
KH
1553 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
1554 inhibit-modification-hooks to t temporarily before calling
1555 Ferase_buffer.
1556
1557 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
1558 inhibit-modification-hooks to t temporarily before calling
1559 Ferase_buffer.
1560
1561 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
1562 inhibit-modification-hooks to t temporarily before calling
1563 Ferase_buffer.
1564
cfe9d13e
KH
1565 * fns.c (count_combining): Delete it.
1566 (concat): Don't check combining bytes.
1567
ceb96489
JR
15682004-05-09 Jason Rumney <jasonr@gnu.org>
1569
1570 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
1571 (globals_of_w32fns): Set it.
1572
b1c661c7
JB
15732004-05-09 Piet van Oostrum <piet@cs.uu.nl> (tiny change)
1574
1575 * data.c (Fquo): Simplify.
1576
28712a21
JB
15772004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
1578
1579 * data.c (Fquo): If any argument is float, do the computation in
1580 floating point.
1581
0f0af7a8
JB
15822004-05-08 Juanma Barranquero <lektu@terra.es>
1583
88214ef6
JB
1584 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
1585 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
1586 Fix spelling of Emacs on docstring.
1587 (Fset_process_coding_system, Fprocess_coding_system)
1588 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
1589 Make argument names match their use in docstring.
1590 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
1591 Fix docstring.
1592
0f0af7a8
JB
1593 * editfns.c (Finsert_buffer_substring): Make argument names match their
1594 use in docstring.
1595
1596 * syntax.c (Fmodify_syntax_entry): Fix docstring.
1597
2a316a84
ST
15982004-05-07 Steven Tamm <steventamm@mac.com>
1599
1600 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
1601 around call to ReceiveEvent to avoid certain crashes.
1602
16032004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
0d8c2e5c 1604
2a316a84
ST
1605 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
1606 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
1607 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
1608 Save/restore the current graphics port and device handle when
1609 drawing into an offscreen graphics world.
1610
1611 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
1612 (gif_load): Likewise.
1613
ab80314b
JB
16142004-05-07 Juanma Barranquero <lektu@terra.es>
1615
1616 * window.c (Fset_window_buffer): Fix docstring.
1617
70646bb5
TTN
16182004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
1619
1620 * emacs.c (main) [VMS]: Fix var ref.
1621
b03a4fdd
JB
16222004-05-06 Romain Francoise <romain@orebokech.com> (tiny change)
1623
1624 * data.c (Fsetq_default): Fix docstring.
1625
279d3293
JR
16262004-05-06 Jason Rumney <jasonr@gnu.org>
1627
1628 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
1629 to avoid name clash.
1630
f72b5416
JD
16312004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1632
1633 * fileio.c (barf_or_query_if_file_exists): Use lstat.
1634 (Frename_file): Handle renaming of symlinks across file systems.
440c7d00 1635 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
f72b5416 1636
6ab66799
KS
16372004-05-04 Kim F. Storm <storm@cua.dk>
1638
1639 * xdisp.c (Qtotal): New var.
1640 (syms_of_xdisp): Intern and staticpro it.
1641 (calc_line_height_property): New arg total. Set it if
1642 line-spacing property has format (total . VALUE).
1643 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
1644 Handle total line-spacing property.
1645
ab2d724b
JD
16462004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1647
1648 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
1649 "under" scroll bar when size/position changes.
1650
238add5e
JR
16512004-05-03 Jason Rumney <jasonr@gnu.org>
1652
1653 * makefile.nt: Remove.
1654
1644f4e4
EZ
16552004-05-02 Eli Zaretskii <eliz@gnu.org>
1656
a267ab4d
SM
1657 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
1658 Avoid compiler warnings.
05fdbeb8 1659
1644f4e4
EZ
1660 * Makefile.in (region-cache.o): Depend on config.h.
1661
6cbc951e
SM
16622004-05-02 Romain Francoise <romain@orebokech.com> (tiny change)
1663
1664 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
1665 with continuation lines, too.
1666
2b98b088
TTN
16672004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
1668
1669 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
1670
d9bf7950
SM
16712004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
1672
1673 * xdisp.c (calc_line_height_property): YAILOM (yet another
1674 int/Lisp_Object mixup).
1675
affa509c
EZ
16762004-05-01 Eli Zaretskii <eliz@gnu.org>
1677
1678 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
1679 undo bad effect of pack(4) in some versions of system headers.
1680
07c07cfe
JR
16812004-05-01 Jason Rumney <jasonr@gnu.org>
1682
1683 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
1684
e71caa4e
KS
16852004-04-30 Kim F. Storm <storm@cua.dk>
1686
1687 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
b2b55d03 1688 (syms_of_buffer) <cursor-type>: Doc fix.
e71caa4e
KS
1689
1690 * dispextern.h (struct it): Remove member use_default_face.
1691 Add members override_ascent, override_descent, override_boff.
1692
1693 * xdisp.c (init_iterator): Handle line-spacing float value.
1694 Initialize override_ascent member.
1695 (append_space_for_newline): Reset override_ascent.
1696 Remove use_default_face.
1697 (calc_line_height_property): New function to calculate value of
1698 line-height and line-spacing properties. Look at overlays, too.
1699 Set override_ascent, override_descent, override_boff members when
1700 using another face than the current face. Float values are now
1701 relative to the frame default font, by default; accept a cons
1702 of ratio and face name to specify value relative to a specific face.
1703 (x_produce_glyphs): Use calc_line_height_property.
1704 Use override_ascent etc. when set to handle different face heights.
1705 A negative line-spacing property value is interpreted as a total
1706 line height, rather than inter-line spacing.
1707 (note_mouse_highlight): Allocate room for 40 overlays initially.
1708
0fddae66
SM
17092004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
1710
1711 * data.c (Fsubr_name): New fun.
1712 (syms_of_data): Defsubr it.
1713
712d23dc
KS
17142004-04-29 Kim F. Storm <storm@cua.dk>
1715
1716 * xdisp.c (null_glyph_slice): New var.
1717 (append_glyph, append_composite_glyph, append_stretch_glyph):
1718 Use it to initialize glyph slice.
1719
033ad8c6
SM
17202004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
1721
1722 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
1723 (on_hot_spot_p): Make sure we always return a value.
1724 (Flookup_image_map): Remove unused var ix and iy.
1725 (note_mode_line_or_margin_highlight): Remove unused var `image'.
1726
93397360
EZ
17272004-04-27 Eli Zaretskii <eliz@gnu.org>
1728
1729 * msdos.c (init_environment): If one of the TMP... environment
1730 variables is set to a drive letter without a trailing slash,
1731 append a slash.
1732
0c54865e
EZ
17332004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
1734
1735 * editfns.c (lisp_time_argument): Provide externally.
1736
1737 * fileio.c (Fset_file_times): New function.
1738 (syms_of_fileio): Intern and staticpro it.
1739
d3b111bd
KS
17402004-04-27 Kim F. Storm <storm@cua.dk>
1741
07dc1231
KS
1742 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
1743 header line strings.
1744
360fe9d2
KS
1745 * dispextern.h (struct it): New member use_default_face.
1746
d3b111bd
KS
1747 * xdisp.c (Qline_height): New variable.
1748 (syms_of_xdisp): Intern and staticpro it.
1749 (append_space_for_newline): Partially undo 2004-04-25 change;
1750 add default_face_p arg, and restore callers.
1751 Clear it->use_default_face after use.
1752 (x_produce_glyphs): Set default font for ascii char if
1753 it->use_default_font is set. Change line-spacing property to set
1754 just extra line spacing. Handle new line-height property.
1755
0448588b
AS
17562004-04-26 Andreas Schwab <schwab@suse.de>
1757
1758 * print.c (print_object): Print non-ascii characters in bool
1759 vector representation as octal escapes.
1760
1761 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
1762 * print.c (print_object): Use it instead of BITS_PER_CHAR for
1763 bool vectors.
1764 * lread.c (read1): Likewise.
1765 * alloc.c (Fmake_bool_vector): Likewise.
1766 * data.c (Faref, Faset): Likewise.
1767 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
1768 (mapcar1): Likewise.
d3b111bd 1769
536d6baa
ST
17702004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
1771
1772 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
1773
ae11577a
MB
17742004-04-26 Miles Bader <miles@gnu.org>
1775
1776 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
1777
e198ba87
JB
17782004-04-26 Juanma Barranquero <lektu@terra.es>
1779
1780 * buffer.c (Fpop_to_buffer): Fix docstring.
1781
f3d5f92d 17822004-04-26 Steven Tamm <steventamm@mac.com>
e198ba87 1783
f3d5f92d
ST
1784 * lread.c (init_lread): Don't display missing lisp directory
1785 warnings with Carbon Emacs because self-contained bundled Emacs
e198ba87 1786 may be built without correct installation path.
f3d5f92d 1787
03e35edc
KS
17882004-04-25 Kim F. Storm <storm@cua.dk>
1789
9ff3aa31
KS
1790 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
1791
1792 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
1793
03e35edc
KS
1794 * xdisp.c (append_space_for_newline): Rename from append_space.
1795 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
1796 (x_produce_glyphs): Handle line-spacing property on newline char.
1797 If value is t, adjust ascent and descent to fit current row height.
1798 If value is an integer or float, set extra_line_spacing to integer
1799 value, or to float value x current line height.
1800
f24814e0
KH
18012004-04-23 Kenichi Handa <handa@m17n.org>
1802
1803 * fontset.c (Finternal_char_font): If POSITION is nil, return
1804 font for displaying CH with the default face.
1805
d814862a
JB
18062004-04-23 Juanma Barranquero <lektu@terra.es>
1807
1808 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
1809
063a45c5
SM
18102004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
1811
1812 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
1813 Don't make assumptions about the relative place of i and val.
1814 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
1815
ae7ab2d3
KS
18162004-04-21 Kim F. Storm <storm@cua.dk>
1817
1818 * dispextern.h (struct glyph_slice): New struct.
1819 (struct glyph): New member slice.
1820 (GLYPH_SLICE_EQUAL_P): New macro.
1821 (GLYPH_EQUAL_P): Use it.
1822 (struct glyph_string): New member slice.
1823 (struct it_slice): New struct.
1824 (struct it): New member slice, add member to stack too.
1825 New member constrain_row_ascent_descent_p.
1826 (image_ascent): Add prototype.
1827
1828 * dispnew.c (buffer_posn_from_coords): Return full image width
1829 and height even for image slices (posn is relative to full image).
1830 (marginal_area_string): Adjust x0,y0 for image slice.
1831
1832 * image.c (image_ascent): Add slice arg; calculate ascent for
1833 image slice (or full image).
1834
1835 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
1836 (syms_of_keyboard): Defsubr them.
1837
1838 * lisp.h (pos_visible_p): Fix prototype.
1839
c62aec78 1840 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
ae7ab2d3
KS
1841 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1842 (x_draw_image_foreground, x_draw_image_relief)
1843 (x_draw_image_foreground_1, x_draw_image_glyph_string):
1844 Draw sliced images.
1845
1846 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
1847 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1848 (x_draw_image_foreground, x_draw_image_relief)
1849 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
1850 Draw sliced images.
1851
1852 * w32term.h (image_ascent): Remove prototype.
1853
1854 * window.c (Fpos_visible_in_window_p): Return pixel position if
1855 PARTIALLY arg is non-nil. Simplify. Doc fix.
1856 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
1857 to return/set vscroll in pixels.
1858
1859 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
1860
1861 * xdisp.c (Qslice): New variable.
1862 (syms_of_xdisp): Intern and staticpro it.
1863 (pos_visible_p): Return pixel position in new x and y args.
1864 (init_iterator): Reset it->slice info.
1865 (handle_display_prop): Parse (slice ...) property.
1866 (push_it, pop_it): Save/restore slice info.
1867 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
1868 force repositioning of tall row if window is vscrolled, as that
1869 would reset vscroll.
1870 (append_space): Set it->constrain_row_ascent_descent_p to avoid
1871 increasing row height if row is non-empty.
1872 (fill_image_glyph_string): Copy slice info.
1873 (take_vertical_position_into_account): Simplify.
1874 (produce_image_glyph): Handle iterator slice info, setup glyph
1875 slice info. Do not force minimum line height.
1876 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
1877 do not increase height (ascent/descent) of non-empty row when
1878 adding normal character glyph; instead reduce glyph ascent/descent
1879 appropriately; if row is higher than current glyph, adjust glyph
1880 descent/ascent to reposition glyph within the existing row.
1881 Likewise, when char is newline, only set ascent/descent if row is
1882 currently empty.
1883 (note_mouse_highlight): Handle hotspots with sliced image.
1884
1885 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
1886 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1887 (x_draw_image_foreground, x_draw_image_relief)
1888 (x_draw_image_foreground_1, x_draw_image_glyph_string):
1889 Draw sliced images.
1890
1891 * xterm.h (image_ascent): Remove prototype.
1892
d58f8753
SM
18932004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
1894
1895 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
1896
4ce2719d
JPW
18972004-04-20 John Paul Wallington <jpw@gnu.org>
1898
1899 * fns.c (Fassoc, Feql): Fix indentation.
1900
d58f8753 1901 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
4ce2719d 1902
95f8c3b9
JPW
19032004-04-19 John Paul Wallington <jpw@gnu.org>
1904
1905 * fns.c (Feql): New function.
d58f8753 1906 (syms_of_fns): Defsubr it.
95f8c3b9 1907
b7e85537
JR
19082004-04-18 Jason Rumney <jasonr@gnu.org>
1909
1910 * w32select.c (Fw32_set_clipboard_data): Get sequence number
1911 after closing the clipboard.
1912
5a72efd4
LT
19132004-04-16 Luc Teirlinck <teirllm@auburn.edu>
1914
1915 * buffer.c (Fbuffer_base_buffer): Doc fix.
1916
20dc8583
KS
19172004-04-17 Kim F. Storm <storm@cua.dk>
1918
60962ec4
KS
1919 * keymap.c (Fkey_description): Add optional PREFIX arg.
1920 Combine prefix with KEYS to make up the full key sequence to describe.
1921 Correlate meta_prefix_char and following (simple) key to describe
1922 as meta modifier. All callers changed.
1923 (describe_map): Rename arg `keys' to `prefix'. Remove local
1924 `elt_prefix' var. Use Fkey_description with prefix instead of
1925 elt_prefix combined with Fsingle_key_description.
1926 (describe_vector): Declare static. Replace arg `elt_prefix' with
1927 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
1928 if !KEYMAP_P. Use Fkey_description with prefix instead of
1929 Fsingle_key_description.
1930
1931 * keymap.h (Fkey_description): Fix prototype.
1932 (describe_vector): Remove prototype.
1933
409368b9
KS
1934 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
1935
20dc8583
KS
1936 * image.c (PNG_BG_COLOR_SHIFT): Remove.
1937 (png_load): Fix calculation of transparent background color on X
1938 and W32 platforms.
1939
75c5501b
JB
19402004-04-16 Juanma Barranquero <lektu@terra.es>
1941
1942 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
1943 not too large before computing how much to scroll.
1944
da879ae8
SM
19452004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
1946
1947 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
1948
d01ca4a8
LT
19492004-04-14 Luc Teirlinck <teirllm@auburn.edu>
1950
1951 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
1952 Add hyperlink to Elisp manual to the docstring.
1953
572943b3
SM
19542004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
1955
1956 * callint.c (fix_command): Use XDCR.
1957
5e30a0fb
NR
19582004-04-14 Nick Roberts <nick@nick.uklinux.net>
1959
1960 * window.c (Fget_lru_window): Doc fix.
1961
a27ddfaf
KS
19622004-04-14 Kim F. Storm <storm@cua.dk>
1963
1964 * editfns.c (Fformat): Fix allocation size of precision array.
1965
1966 * dispnew.c (update_window): Only set changed_p if
1967 scrolling_window actually did scroll.
1968 (scrolling_window): Only return 1 if we actually did scroll.
1969
1970 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
1971 height to glyph height when cursor row is not fully visible.
1972 (make_cursor_line_fully_visible): Add FORCE_P arg to return
1973 failure in case row is higher than window. Callers changed.
1974 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
1975 Try to scroll partially visible, higher-than-window cursor row.
1976 (redisplay_window): Always try to scroll partially visible,
1977 higher-than-window cursor row - both initially and again with
1978 centering_position = 0.
1979 Clear desired matrix before retrying with centering_position = 0.
1980
da879ae8
SM
19812004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
1982
1983 * syntax.c (scan_lists): Simplify backward string scan.
1984 Fix off-by-one boundary check for string and comment fences.
1985
5fc16e8e
SM
19862004-04-13 Joe Buehler <jbuehler@hekimian.com>
1987
1988 * sheap.c, unexcw.c: New files.
1989
c9aac8e6
LT
19902004-04-12 Luc Teirlinck <teirllm@auburn.edu>
1991
1992 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
1993 base buffer has been killed. Correct the error message if the
1994 base buffer does not exist.
1995
1e88a355
SM
19962004-04-12 Joe Buehler <jbuehler@hekimian.com>
1997
1998 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
1999 Cygwin itself. Add support for Xaw3d scrollbars.
2000
2001 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
2002
2003 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
2004
2005 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
2006 before Cygwin unexec.
2007
2008 * Makefile.in: Link changes for Cygwin unexec() support.
2009
8dbff9a0
AS
20102004-04-12 Andreas Schwab <schwab@suse.de>
2011
2012 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
2013
54dffe35
LT
20142004-04-11 Luc Teirlinck <teirllm@auburn.edu>
2015
2016 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
2017 IGNORE argument equals NAME. Doc fix.
2018
99a72bdf
MY
20192004-04-11 Masatake YAMATO <jet@gyve.org>
2020
1e88a355 2021 * buffer.c (fix_start_end_in_overlays): Make overlays
99a72bdf
MY
2022 empty if they are backwards.
2023
40899d7b
SM
20242004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
2025
2026 * xfaces.c (face_color_supported_p): Fix compilation without X11.
2027
f8f853de
SM
20282004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
2029
2030 * doc.c (Fsnarf_documentation): Ignore new file name entries.
2031
c953fe1b
KS
20322004-04-06 Kim F. Storm <storm@cua.dk>
2033
661e85c1
KS
2034 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
2035 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
2036
2037 * w32term.c (w32_read_socket): Set mouse_face_hidden after
2038 clearing highlight.
2039
2040 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
2041
2042 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
2043 clearing highlight.
2044
c953fe1b
KS
2045 * indent.c (vmotion): Do not reserve one column for continuation
2046 marks on window frames.
2047
c1994268
EZ
20482004-04-04 Eli Zaretskii <eliz@gnu.org>
2049
2050 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
2051 from GCC.
2052
9f691b0d
SM
20532004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
2054
2055 * .gdbinit-union: Remove.
2056
2057 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
2058 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
2059 ($nonvalbits): Remove.
2060 ($valmask): Set it by calling xreload to avoid redundancy.
2061
2062 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
2063 (gdb_emacs_intbits): Remove.
2064
7a8560d7
JD
20652004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2066
9f691b0d 2067 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
7a8560d7 2068
3c8111fc
KH
20692004-03-30 Kenichi Handa <handa@m17n.org>
2070
2071 * editfns.c (Fformat): Fix initialization of the array info.
2072
48a0bce4
KS
20732004-03-30 Kim F. Storm <storm@cua.dk>
2074
2075 * xterm.c (x_mouse_click_focus_ignore_position): New var.
2076 (syms_of_xterm): DEFVAR_BOOL it.
2077 (ignore_next_mouse_click_timeout): New var.
2078 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
2079 Use it to filter mouse clicks following focus event.
2080
1cd0066c
KS
20812004-03-29 David Ponce <david@dponce.com>
2082
2083 * callint.c (Fcall_interactively): Fix last change.
2084
adb3b353
SM
20852004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
2086
2087 * eval.c (Fcommandp): Simplify.
2088
2089 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
2090 Extend to handle all kinds of functions.
2091
2092 * lisp.h (Finteractive_form): Declare.
2093
2094 * callint.c (Fcall_interactively): Use it.
2095
6fc4c9c9
KS
20962004-03-26 Kim F. Storm <storm@cua.dk>
2097
2098 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
2099 to catch errors in calc_pixel_width_or_height during redisplay.
2100
abdb9b83
MY
21012004-03-26 Masatake YAMATO <jet@gyve.org>
2102
b17856dd 2103 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
abdb9b83 2104
b17856dd 2105 * lisp.h (fix_start_end_in_overlays): Likewise.
abdb9b83 2106
b17856dd 2107 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
abdb9b83 2108
b17856dd 2109 * editfns.c (Ftranspose_regions): Likewise.
abdb9b83 2110
e8a84b6c
JD
21112004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2112
b17856dd 2113 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
e8a84b6c 2114
36a3fd05
RS
21152004-03-19 Richard M. Stallman <rms@gnu.org>
2116
2117 * s/sol2-6.h: Delete previous change.
2118
ab24c127
KS
21192004-03-19 Kim F. Storm <storm@cua.dk>
2120
2121 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
2122 to_charpos corresponds to newline in right fringe. Use local
2123 BUFFER_POS_REACHED_P macro.
2124
992126de
JD
21252004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2126
2127 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
2128 to compile on non-window system.
2129
45dbfc84
KS
21302004-03-19 Kim F. Storm <storm@cua.dk>
2131
2132 * dispextern.h (calc_pixel_width_or_height): Add prototype.
2133
2134 * image.c (Qcenter): Move to xdisp.c.
2135
2136 * xdisp.c (Qcenter): Declare here.
adb3b353 2137 (syms_of_xdisp): Intern and staticpro it.
45dbfc84
KS
2138 (handle_single_display_prop): Allow space display property on all
2139 platforms.
2140 (display_mode_line): Set mode_line_p before displaying line.
2141 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
2142 handling. Remove complex cases for fringes and scroll-bars.
2143 Add left, right, and center alignment positions. Add text (area)
2144 width/height. Return width or height for image specs.
2145 (produce_stretch_glyph): Improve handling of :align-to. Is now
2146 relative to left of text area by default, but other base offsets
2147 can be specified -- also for text lines.
2148
2149 * term.c (produce_glyphs): Handle IT_STRETCH.
2150 (produce_stretch_glyph): New function to handle space width and
2151 align-to display properties on non-window systems.
2152
37264101
SM
21532004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
2154
2155 * fileio.c (Fread_file_name): Set completion-ignore-case for
2156 case-insensitive systems.
2157
73bc43da
MY
21582004-03-14 Masatake YAMATO <jet@gyve.org>
2159
2160 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
2161 when keymap and cursor are setup.
2162
9062aa89
ST
21632004-03-14 Steven Tamm <steventamm@mac.com>
2164
b17856dd 2165 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
9062aa89 2166
e4b1b5ab
KS
21672004-03-14 Kim F. Storm <storm@cua.dk>
2168
2169 * dispextern.h (x_find_image_file): Add prototype.
2170
2171 * image.c (x_find_image_file): Make extern.
2172
2173 * xfns.c (x_find_image_file): Remove prototype.
2174
a6eeaa81 21752004-03-13 Eli Zaretskii <eliz@gnu.org>
5109b06a 2176
37264101 2177 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
5109b06a 2178
37264101 2179 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
5109b06a 2180
e69cfac2
RS
21812004-03-12 Richard M. Stallman <rms@gnu.org>
2182
2183 * fns.c (internal_equal): New arg PROPS controls comparing
2184 text properties. All callers changed.
2185 (Fequal_including_properties): New function.
2186 (syms_of_fns): defsubr it.
2187
45034953
KS
21882004-03-12 Kim F. Storm <storm@cua.dk>
2189
2190 Fix image support on MAC. From YAMAMOTO Mitsuharu.
37264101 2191
45034953
KS
2192 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
2193 (image_background, image_background_transparent): Fix prototypes.
2194
37264101 2195 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
45034953
KS
2196
2197 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
2198 (x_query_font, x_find_ccl_program, x_set_window_size)
2199 (x_make_frame_visible, mac_initialize, XCreatePixmap)
2200 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
2201 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
2202
2203 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
2204 (x_query_font, x_find_ccl_program, x_set_window_size)
2205 (x_make_frame_visible, mac_initialize, XCreatePixmap)
2206 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
2207 (mac_draw_line_to_pixmap): Add prototypes.
2208
22092004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2210
2211 * macterm.c (XTread_socket): Fix mouse click on tool bar.
2212
a12d3d87
KS
22132004-03-11 Kim F. Storm <storm@cua.dk>
2214
d3ab1cf1
KS
2215 * dispextern.h: Move image related prototypes from xfns.c section
2216 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
2217 HAVE_X_WINDOWS.
37264101 2218
37de9f51 2219 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
37264101 2220 Move gtkutil.o to new GTK_OBJ list.
a12d3d87
KS
2221 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
2222 (GTK_OBJ) [USE_GTK]: New declaration.
2223 (obj): Add $(GTK_OBJ) to list.
2224
5243c06a 22252004-03-11 Steven Tamm <steventamm@mac.com>
5109b06a 2226
5243c06a
ST
2227 * image.c [MAC_OSX]: Include sys/stat.h
2228
2229 * macfns.c (syms_of_macfns): Remove definitions of things now
2230 defined in image.c
2231
c0f97789
KS
22322004-03-11 Kim F. Storm <storm@cua.dk>
2233
2234 The following changes consolidates the identical/similar image
2235 support code previously found in xfns.c, w32fns.c, and macfns.c
2236 into a new file image.c.
2237
2238 * makefile.w32-in (OBJ1): Add image.o.
2239 ($(BLD)/image.$(O)): Add dependencies.
2240
2241 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
2242 (image.o): Add dependencies.
37264101 2243
c0f97789
KS
2244 * image.c: New file with consolidated image support code.
2245 (COLOR_TABLE_SUPPORT): New define to control whether
2246 color table support is available (X only).
2247 (Bitmap_Record): Common name for x_bitmap_record,
2248 w32_bitmap_record, and mac_bitmap_record.
2249 (XImagePtr): Common name for pointer to XImage or equivalent.
2250 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
2251 to XImagePtr on X+MAC, and to HDC on W32.
2252 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
2253 (NO_PIXMAP): Common name for "None" or equivalent.
2254 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
2255 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
2256 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
37264101
SM
2257 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
2258 Define with suitable equivalents on W32 and MAC for code sharing.
c0f97789
KS
2259 (XDrawLine): Define on MAC for code sharing.
2260 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
2261 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
2262 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2263 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2264 (x_reference_bitmap, x_create_bitmap_from_data)
2265 (x_create_bitmap_from_file, x_destroy_bitmap)
2266 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2267 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
2268 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2269 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2270 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2271 (define_image_type, lookup_image_type, valid_image_p)
2272 (image_error, enum image_value_type, struct image_keyword)
2273 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2274 (make_image, free_image, prepare_image_for_display, image_ascent)
2275 (four_corners_best, image_background, image_background_transparent)
2276 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2277 (make_image_cache, free_image_cache, clear_image_cache)
2278 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2279 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2280 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2281 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
2282 (init_image_func_pointer, image_load_quartz2d)
2283 (struct ct_color, init_color_table, free_color_table)
2284 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2285 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2286 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2287 (x_disable_image, x_build_heuristic_mask)
2288 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2289 (TIFF support, GIF support, Ghostscript support): Consolidate image
2290 code from xfns.c, w32fns.c, and macfns.c.
2291 (syms_of_image): Consolidate image related symbol setup here.
2292 (init_image): Consolidate image related initializations here.
37264101 2293
c0f97789
KS
2294 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
2295 and init_image. Remove call to init_xfns.
2296
37264101
SM
2297 * macterm.h (struct mac_bitmap_record): Add file member.
2298 Not currently used, but simplifies code sharing.
c0f97789
KS
2299
2300 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2301 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2302 (x_reference_bitmap, x_create_bitmap_from_data)
2303 (x_create_bitmap_from_file, x_destroy_bitmap)
2304 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2305 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
2306 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2307 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2308 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2309 (define_image_type, lookup_image_type, valid_image_p)
2310 (image_error, enum image_value_type, struct image_keyword)
2311 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2312 (make_image, free_image, prepare_image_for_display, image_ascent)
2313 (four_corners_best, image_background, image_background_transparent)
2314 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2315 (make_image_cache, free_image_cache, clear_image_cache)
2316 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2317 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2318 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2319 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
2320 (init_image_func_pointer, image_load_quartz2d)
2321 (struct ct_color, init_color_table, free_color_table)
2322 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2323 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2324 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2325 (x_disable_image, x_build_heuristic_mask)
2326 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2327 (TIFF support, GIF support, Ghostscript support): Merge with image
2328 code from xfns.c and macfns.c into image.c.
2329 (syms_of_xfns): Move image related symbols to image.c.
2330 (init_external_image_libraries, init_xfns): Remove; initialization
2331 moved to init_image in image.c.
2332
2333 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2334 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2335 (x_reference_bitmap, x_create_bitmap_from_data)
2336 (x_create_bitmap_from_file, x_destroy_bitmap)
2337 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2338 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2339 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2340 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2341 (define_image_type, lookup_image_type, valid_image_p)
2342 (image_error, enum image_value_type, struct image_keyword)
2343 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2344 (make_image, free_image, prepare_image_for_display, image_ascent)
2345 (four_corners_best, image_background, image_background_transparent)
2346 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2347 (make_image_cache, free_image_cache, clear_image_cache)
2348 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2349 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2350 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2351 (struct ct_color, init_color_table, free_color_table)
2352 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2353 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2354 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2355 (x_disable_image, x_build_heuristic_mask)
2356 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2357 (TIFF support, GIF support, Ghostscript support): Merge with image
2358 code from xfns.c and macfns.c into image.c.
2359 (syms_of_xfns): Move image related symbols to image.c.
2360 (init_external_image_libraries, init_xfns): Remove; initialization
2361 moved to init_image in image.c.
2362
2363 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2364 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2365 (x_reference_bitmap, x_create_bitmap_from_data)
2366 (x_create_bitmap_from_file, x_destroy_bitmap)
2367 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2368 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2369 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2370 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2371 (define_image_type, lookup_image_type, valid_image_p)
2372 (image_error, enum image_value_type, struct image_keyword)
2373 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2374 (make_image, free_image, prepare_image_for_display, image_ascent)
2375 (four_corners_best, image_background, image_background_transparent)
2376 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2377 (make_image_cache, free_image_cache, clear_image_cache)
2378 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2379 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2380 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2381 (struct ct_color, init_color_table, free_color_table)
2382 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2383 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2384 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2385 (x_disable_image, x_build_heuristic_mask)
2386 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2387 (TIFF support, GIF support, Ghostscript support): Merge with
2388 w32fns.c and macfns.c image code into image.c.
2389 (syms_of_xfns): Move image related symbols to image.c.
2390 (init_xfns): Remove; initialization moved to init_image in image.c.
2391
2392 * lisp.h (syms_of_image, init_image): Add protoypes.
2393 (init_xfns): Remove prototype.
2394
2395 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2396 (x_reference_bitmap, x_create_bitmap_from_data)
2397 (x_create_bitmap_from_file, x_destroy_bitmap)
2398 (x_create_bitmap_mask): Move prototypes from dispextern.h.
2399 (gamma_correct) [MAC_OS]: Add prototype.
2400
2401 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2402 (x_reference_bitmap, x_create_bitmap_from_data)
2403 (x_create_bitmap_from_file, x_destroy_bitmap)
2404 (x_create_bitmap_mask): Move prototypes to dispextern.h.
2405
6eced09c
KH
24062004-03-09 Kenichi Handa <handa@etlken2>
2407
2408 * coding.c (decode_coding_emacs_mule): Handle insufficent source
2409 correctly.
2410
9a7e95f3
RS
24112004-03-04 Richard M. Stallman <rms@gnu.org>
2412
04a6e76b
RS
2413 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
2414
9a7e95f3
RS
2415 * window.c (Fdisplay_buffer): Doc fix.
2416
2417 * buffer.c (Fpop_to_buffer): Doc fix.
2418
6c2488df
KS
24192004-03-03 Kim F. Storm <storm@cua.dk>
2420
2421 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
2422
d8d95bc7
SM
24232004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
2424
2425 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
2426
357589bf
RS
24272004-03-02 Richard M. Stallman <rms@gnu.org>
2428
2429 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
2430
409949b5
KH
24312004-03-02 Kenichi Handa <handa@m17n.org>
2432
2433 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
2434
d24bc50f
KS
24352004-03-02 Kim F. Storm <storm@cua.dk>
2436
2437 * window.h (struct window): New member overlay_arrow_bitmap.
2438
2439 * window.c (make_window): Initialize overlay_arrow_bitmap.
2440
2441 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
2442 implement and integrate multiple overlay arrows with redisplay.
2443 (syms_of_xdisp): DEFVAR_LISP and initialize it.
2444 (last_arrow_position, last_arrow_string): Replace by properties.
2445 (Qlast_arrow_position, Qlast_arrow_string)
2446 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
2447 (syms_of_xdisp): Intern and staticpro them.
2448 (overlay_arrow_string_or_property, update_overlay_arrows)
2449 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
2450 (overlay_arrow_at_row): New functions for multiple overlay arrows.
2451 (redisplay_internal): Use them instead of directly accessing
2452 Voverlay_arrow_position etc. for multiple overlay arrows.
2453 (mark_window_display_accurate): Use update_overlay_arrows.
2454 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
2455 (try_window_id): Use overlay_arrows_changed_p.
2456 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
2457 (display_line): Use overlay_arrow_at_row to check multiple
2458 overlay arrows, and get relevant overlay-arrow-string and
d8d95bc7 2459 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
d24bc50f
KS
2460 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
2461 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
2462
2463 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
2464 (update_window_fringes): Remove unused code.
2465
c1464661
JR
24662004-03-01 Jason Rumney <jasonr@gnu.org>
2467
2468 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
2469
a64387ee
JB
24702004-03-01 Juanma Barranquero <lektu@terra.es>
2471
2472 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
2473
2474 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
2475
334faa08
JD
24762004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2477
2478 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
2479 how many colors can be displayed.
2480
bb62616f
KH
24812004-03-01 Kenichi Handa <handa@m17n.org>
2482
2483 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
2484 correctly.
2485
0fd16104
KS
24862004-02-28 Kim F. Storm <storm@cua.dk>
2487
2488 * dispnew.c (update_window): Update header line also if there are
2489 no other changes in window (move code after set_cursor label).
2490
2491 * lisp.h (mark_window_display_accurate): Remove prototype.
2492
2493 * window.c (window_loop, Fforce_window_update): Force mode line
2494 updates by setting prevent_redisplay_optimizations_p and
2495 update_mode_lines.
2496
b59dd9c8
JD
24972004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2498
d8d95bc7 2499 * xfns.c (x_window): Fix indentation.
b59dd9c8
JD
2500
2501 * xterm.c (x_calc_absolute_position): Call x_real_positions
2502 to get WM window sizes and use those to calculate position.
d8d95bc7 2503 (x_set_offset): Remove code commented out.
b59dd9c8 2504
a874691c
MB
25052004-02-28 Miles Bader <miles@gnu.org>
2506
2507 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
2508
3e0c6482
KS
25092004-02-28 Kim F. Storm <storm@cua.dk>
2510
2511 * keyboard.c (kbd_buffer_store_event_hold): New function to store
2512 an event into kbd fifo, but with special handling of quit event;
2513 a quit event is saved for later, and further events are discarded
2514 until the saved quit event has been processed.
2515 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
2516 (gen_help_event): Store help event in kbd fifo.
2517 (NREAD_INPUT_EVENTS): Remove.
2518 (read_avail_input): Adapt to new read_socket_hook interface.
2519 Remove allocation and initialization of local input_event buffer,
2520 as read_socket_hook stores events directly in fifo. Allocate and
2521 initialize local hold_quit event to handle postponed quit event
2522 (and store it if set by kbd_buffer_store_event_hold).
2523
2524 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
2525 (gen_help_event): Fix prototype.
2526
a64387ee 2527 * macterm.c (XTread_socket): Remove bufp_r and
3e0c6482 2528 numcharsp args. Add hold_quit arg.
f63fd14e 2529 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
2530 directly in fifo using kbd_buffer_store_event_hold.
2531
2532 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
2533 (read_input_waiting): Adapt to new read_socket_hook interface.
2534 Remove allocation and initialization of local input_event buffer,
2535 as read_socket_hook stores events directly in fifo. Allocate and
2536 initialize local hold_quit event to handle postponed quit event
2537 (and store it if set by kbd_buffer_store_event_hold).
2538
a64387ee 2539 * term.c (read_socket_hook): Fix arg list.
3e0c6482
KS
2540
2541 * termhooks.h (read_socket_hook): Fix prototype.
2542
2543 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
2544 numcharsp args. Add hold_quit arg.
f63fd14e 2545 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
2546 directly in fifo using kbd_buffer_store_event_hold.
2547
2548 * w32inevt.h (w32_console_mouse_position): Fix prototype.
2549
2550 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
f63fd14e
JB
2551 Add hold_quit arg. Rework to use just one, local, inev
2552 input_event. Store inev directly in fifo using
3e0c6482
KS
2553 kbd_buffer_store_event_hold. Update count in one place.
2554 Postpone call to gen_help_event until inev is stored; use new
2555 local do_help for this.
2556 Remove local emacs_event in handing of ButtonPress event; just use
2557 inev instead (so no reason to copy it later).
2558
2559 * xsmfns.c (x_session_check_input): Remove numchars arg.
2560
d8d95bc7
SM
2561 * xterm.c (x_focus_changed, x_detect_focus_change):
2562 Remove numchars arg. Always store event into bufp arg.
2563 Return nothing. Callers changed accordingly.
3e0c6482
KS
2564 (glyph_rect): Simplify.
2565 (STORE_KEYSYM_FOR_DEBUG): New macro.
2566 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
2567 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
2568 (current_hold_quit) [USE_GTK]: Add.
2569 (event_handler_gdk): Adapt to new handle_one_xevent.
2570 (handle_one_xevent): Remove bufp_r and numcharsp args.
f63fd14e
JB
2571 Add hold_quit arg. Rework to use just one, local, inev
2572 input_event. Store inev directly in fifo using
3e0c6482
KS
2573 kbd_buffer_store_event_hold. Update count in one place.
2574 Postpone call to gen_help_event until inev is stored; use new
2575 local do_help for this.
2576 Simplify handling of keysyms (consolidate common code). Fix bug
2577 where count was updated with nchars instead of nbytes.
2578 Remove local emacs_event in handing of ButtonPress event; just use
2579 inev instead (so no reason to copy it later).
2580 Remove `out' label. Rename label `ret' to `done'; add various
2581 `goto done' to clarify code flow in deeply nested blocks.
2582 (x_dispatch_event): Simplify as handle_one_xevent now calls
2583 kbd_buffer_store_event itself.
f63fd14e 2584 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
3e0c6482
KS
2585 arg. Call handle_one_xevent with new arglist. Store event from
2586 x_session_check_input in fifo.
2587 [USE_GTK]: Setup current_hold_quit.
2588 Decrement handling_signal before unblocking input.
2589 (x_initialize) [USE_GTK]: Initialize current_count.
2590
2591 * xterm.h (x_session_check_input): Fix prototype.
2592
e3564461 25932004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
a64387ee 2594
d8d95bc7 2595 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
a64387ee 2596
e3564461
ST
2597 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
2598 macgui.h).
a64387ee 2599
e3564461 2600 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
a64387ee 2601
e3564461
ST
2602 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
2603 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
2604 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
2605 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
2606 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
2607 (Bitmap): Remove typedef.
2608 (Pixmap): Change int to GWorldPtr.
2609
d8d95bc7 2610 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
a64387ee 2611
d8d95bc7
SM
2612 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
2613 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
2614 New #define to extract 16-bit depth color components from unsigned
e3564461
ST
2615 long representation.
2616 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
2617 colors used for masks.
2618 (struct mac_display_info): Add color_p. Remove n_cbits.
a64387ee 2619
e3564461
ST
2620 * macfns.c: Include sys/types.h and sys/stat.h.
2621 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
2622 Include QuickTime/QuickTime.h.
2623 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
2624 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
2625 functions defined in macterm.c.
2626 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
2627 (ZPixmap): New #define for compatibility with xfns.c.
2628 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
2629 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
d8d95bc7
SM
2630 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
2631 New functions.
e3564461 2632 (four_corners_best, x_create_x_image_and_pixmap)
d8d95bc7
SM
2633 (x_destroy_x_image, unwind_create_frame, x_disable_image)
2634 (x_edge_detection, init_color_table, colors_in_color_table)
e3564461
ST
2635 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
2636 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
2637 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
2638 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
2639 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
2640 long mixup.
2641 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
2642 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
2643 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
2644 (x_set_cursor_type, Fxw_color_values, valid_image_p)
2645 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
2646 (x_alloc_image_color, clear_image_cache, lookup_image)
2647 (x_find_image_file, xbm_read_bitmap_file_data)
2648 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
2649 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
2650 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
2651 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
2652 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
d8d95bc7 2653 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
e3564461
ST
2654 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
2655 #if 0.
2656 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
2657 #if 0. Free white_relief.gc and black_relief.gc.
d8d95bc7
SM
2658 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
2659 New functions (from xfns.c).
e3564461
ST
2660 (Fx_create_frame): Record unwind_create_frame.
2661 (Fxw_display_color_p): Use dpyinfo->color_p.
2662 (Fx_display_grayscale_p, Fx_display_planes): Don't use
2663 dpyinfo->n_cbits.
2664 (Fx_display_color_cells): Use dpyinfo->n_planes;
2665 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
2666 (Qheuristic, cross_disabled_images, emboss_matrix)
2667 (laplace_matrix): New variables (from xfns.c).
2668 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
2669 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
2670 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
d8d95bc7
SM
2671 (image_background_transparent): New function (from xfns.c).
2672 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
2673 (image_load_quicktime): Add declaration.
2674 [MAC_OSX] (image_load_quartz2d): Likewise.
2675 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
2676 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
d8d95bc7 2677 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
e3564461
ST
2678 (xbm_load_image_from_file, x_laplace_read_row)
2679 (x_laplace_write_row, pbm_read_file): Remove functions.
2680 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
2681 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
2682 (colors_in_color_table): Sync with xfns.c (although not used).
2683 (lookup_rgb_color): Don't lookup color table. Just do gamma
2684 correction.
2685 (COLOR_INTENSITY): New #define (from xfns.c).
d8d95bc7
SM
2686 (x_disable_image): New function (from xfns.c).
2687 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
2688 (x_build_heuristic_mask): Sync with xfns.c.
2689 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
2690 (HAVE_PBM): Remove #ifdef.
2691 (pbm_load): Sync with xfns.c. Set img->width and img->height
2692 before IMAGE_BACKGROUND.
d8d95bc7 2693 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
e3564461
ST
2694 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
2695 Don't enclose with #if HAVE_PNG.
2696 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
d8d95bc7
SM
2697 symbol _CGImageCreateWithPNGDataProvider is defined.
2698 Otherwise use image_load_quicktime.
e3564461 2699 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
d8d95bc7
SM
2700 [HAVE_PNG] (png_load): Sync with xfns.c.
2701 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
2702 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
2703 HAVE_JPEG.
2704 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
2705 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
2706 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
2707 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
2708 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
2709 (tiff_image_p, tiff_load): Don't enclose declarations with #if
2710 HAVE_TIFF.
2711 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
2712 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
2713 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
d8d95bc7
SM
2714 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
2715 New functions (from xfns.c).
e3564461 2716 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
d8d95bc7 2717 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
e3564461
ST
2718 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
2719 Don't enclose with #if HAVE_GIF.
2720 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
2721 animated gif. Otherwise use image_load_quicktime.
2722 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
2723 gif_DrawText to avoid conflict with QuickdrawText.h.
2724 [HAVE_GIF] (gif_load): Sync with xfns.c.
2725 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
2726 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
2727 Ghostscript is not supported yet).
2728 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
2729 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
2730 cross_disabled_images (from xfns.c). Remove #if 0 for supported
2731 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
2732 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
2733 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
d8d95bc7
SM
2734 HAVE_PNG. Call EnterMovies to support animated gifs.
2735 Call init_image_func_pointer to bind a symbol
e3564461 2736 _CGImageCreateWithPNGDataProvider if it is defined.
a64387ee 2737
d8d95bc7 2738 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
e3564461
ST
2739 (x_draw_bar_cursor): Sync declaration with xterm.c.
2740 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
2741 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
2742 graphics).
2743 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
2744 (mac_draw_line_to_pixmap, XCreatePixmap)
2745 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
d8d95bc7
SM
2746 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
2747 New functions.
2748 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
2749 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
2750 Cast bits to char *.
e3564461
ST
2751 (reflect_byte): New function (from w32fns.c).
2752 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
2753 due to byte alignment.
d8d95bc7
SM
2754 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
2755 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
e3564461
ST
2756 (XSetForeground): Remove static (now used in macfns.c).
2757 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
2758 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
2759 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
2760 (x_draw_glyph_string_box, x_draw_image_foreground)
2761 (x_draw_image_foreground_1, x_draw_image_glyph_string)
2762 (x_draw_stretch_glyph_string, x_draw_glyph_string)
2763 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
2764 Sync with xterm.c.
2765 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
2766 than the xterm.c version when a strictly horizontal or vertical
2767 line is drawn.
2768 (XTset_terminal_window): Add static.
2769 (x_make_frame_visible): Add UNBLOCK_INPUT.
2770 (x_free_frame_resources): New funcion (from xterm.c).
2771 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
2772 occurs in tool bar area.
d8d95bc7
SM
2773 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
2774 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
e3564461
ST
2775 Initialize image cache.
2776 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
2777 Enclose unused functions with #if 0.
2778 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
2779 (decode_mac_font_name): New function to apply code conversions
d8d95bc7 2780 from a mac font name to an XLFD font name according to its script code.
e3564461 2781 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
d8d95bc7 2782 font name to a mac font name according to REGISTRY and ENCODING fields.
e3564461
ST
2783 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
2784 whose name starts with `.'.
2785 (init_font_name_table): Use decode_mac_font_name. Add both
2786 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
2787 of a font is smJapanese.
2788 (mac_do_list_fonts): New function to list fonts that match a given
2789 pattern.
2790 (x_list_fonts, XLoadQueryFont): Use it.
2791 (XLoadQueryFont): Set rbearing field for each variable width
2792 character to avoid needless redraw.
2793 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
2794
446f5f3d
KS
27952004-02-26 Kim F. Storm <storm@cua.dk>
2796
af617d0f
KS
2797 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
2798 as read_socket_hook handler on X aborts if buffer is too small
2799 and W32 handler doesn't always check buffer limit.
2800
446f5f3d
KS
2801 * xdisp.c (handle_single_display_prop): Handle left-fringe and
2802 right-fringe similar to a display margin image. Specifically,
2803 the characters having the fringe prop are no longer shown, and
2804 we use IT_IMAGE/next_element_from_image with image_id = -1 to
2805 do this. Set fringe bitmap face_id in it->face_id.
2806 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
2807 still realize it->face (i.e. the fringe bitmap face).
2808
7d8a0b55
MB
28092004-02-25 Miles Bader <miles@gnu.org>
2810
2811 * xdisp.c (check_it): Check string/string_pos consistency.
2812 (init_iterator): Initialize string-related fields properly.
2813
28142004-02-11 Miles Bader <miles@gnu.org>
2815
2816 * xdisp.c (produce_image_glyph): Force negative descents to zero.
2817
28182004-02-10 Miles Bader <miles@gnu.org>
2819
2820 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
2821 BLOCK_INPUT can be nested, so it doesn't make much sense.
2822
a64387ee 28232004-02-24 Michael Mauger <mmaug@yahoo.com>
ce35edd1
JR
2824
2825 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
2826 (xbm_read_bitmap_data): Use unsigned char for image data.
2827
92f5fba2
LT
28282004-02-23 Luc Teirlinck <teirllm@auburn.edu>
2829
2830 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
2831
8565fb3d
JR
28322004-02-22 Jason Rumney <jasonr@gnu.org>
2833
2834 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
2835 correctly over other bitmaps.
2836
a6eeaa81 28372004-02-21 Eli Zaretskii <eliz@gnu.org>
f8125c39
EZ
2838
2839 * emacs.c (USAGE1): Split into two halves.
2840 (USAGE2): Second half of the old USAGE1.
d8d95bc7
SM
2841 (USAGE3): Rename from USAGE2.
2842 (USAGE4): Rename from USAGE3.
f8125c39 2843
4effffca
EZ
28442004-02-21 Juri Linkov <juri@jurta.org>
2845
2846 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
2847 Fix --multibyte. Move --help, --version to USAGE2. Add alias
2848 --file. Fix -f, -l. Sort options. Untabify.
2849 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
2850
923c1e6f
LT
28512004-02-19 Luc Teirlinck <teirllm@auburn.edu>
2852
2853 * category.c (Fdefine_category, Fcategory_docstring)
2854 (Fget_unused_category, Fset_category_table)
2855 (Fcategory_set_mnemonics): Doc fixes.
2856
b0e225fd
KS
28572004-02-20 Kim F. Storm <storm@cua.dk>
2858
2859 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
2860 The following changes are relative to the 2004-01-21 revision.
2861 (NREAD_INPUT_EVENTS): Define as max number of input events to read
2862 in one call to read_socket_hook. Value is 8.
2863 (read_avail_input): Separate and rework handling of read_socket_hook
2864 and non-read_socket_hook cases. Use smaller input_event buffer
d8d95bc7
SM
2865 in read_socket_hook case, and repeat if full buffer is read.
2866 Use new local variable 'discard' to skip input after C-g.
b0e225fd
KS
2867 In non-read_socket_hook case, just use a single input_event, and
2868 call kbd_buffer_store_event on the fly for each character.
2869
b15aa9f9
SM
28702004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
2871
2872 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
2873 Remove unused `gu' alternative.
2874
83c9aa95
AS
28752004-02-19 Andreas Schwab <schwab@suse.de>
2876
2877 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
2878 warning.
2879
cc808173
KS
28802004-02-18 Kim F. Storm <storm@cua.dk>
2881
2882 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
2883 Fix last change.
2884
ab90a54d
KS
28852004-02-17 Kim F. Storm <storm@cua.dk>
2886
b26f249f
KS
2887 * xdisp.c (fast_find_position): Fix return value of new version;
2888 it was inverted compared to the 21.1 version.
2889 (get_window_cursor_type): Don't look at glyph if NULL.
2890 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 2891
ab90a54d
KS
2892 * keyboard.c: Rework previous change; it didn't consider that the
2893 buf array was allocated on the stack.
2894 (prev_read): Remove variable.
2895 (read_avail_input_buf): New static event buffer array.
b9568dfc 2896 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 2897 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
2898 Use in_read_avail_input to handle re-entrance; when re-entered,
2899 fully initialize and use tmp_buf array instead of read_avail_input_buf.
2900 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
2901 is always cleared on entry. To ensure that, we clear (just) the
2902 entries that were used before we return.
2903 (init_keyboard): Initialize read_avail_input_buf here.
2904
4e039f3f
EZ
29052004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change)
2906
2907 * cmds.c (Fend_of_line): Doc fix.
2908
7b5368c1
EZ
29092004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
2910
2911 * keyboard.c (prev_read): New static variable.
2912 (read_avail_input): Use it to zero out only those slots in buf[]
2913 that were used last time we were called.
2914
a6eeaa81 29152004-02-16 Eli Zaretskii <eliz@gnu.org>
ca4bc494
EZ
2916
2917 * Makefile.in (obj): Move fringe.o from here...
2918 (XOBJ, MAC_OBJ): ...to here.
2919
159c348e
SE
29202004-02-16 Stephen Eglen <stephen@gnu.org>
2921
2922 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
2923
d2f14999
SM
29242004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
2925
b15aa9f9
SM
2926 * data.c (Fbyteorder):
2927 * fringe.c (Fdefine_fringe_bitmap):
2928 * xdisp.c (handle_single_display_prop):
d2f14999
SM
2929 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
2930
8d50508a
JR
29312004-02-16 Jason Rumney <jasonr@gnu.org>
2932
2933 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
2934
dd4497dc
ST
29352004-02-15 Steven Tamm <steventamm@mac.com>
2936
2937 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
2938 controlling emulation of a three button mouse with option and
2939 command keys.
2940 (Qreverse, mac_get_enumlated_btn): Handle the emulation
b15aa9f9 2941 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
dd4497dc 2942
c9159cb3
KS
29432004-02-15 Kim F. Storm <storm@cua.dk>
2944
2cc52658
KS
2945 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
2946
c9159cb3
KS
2947 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
2948 Perform byte-swapping.
2949
12fde2dc
KS
29502004-02-14 Kim F. Storm <storm@cua.dk>
2951
2952 * dispextern.h (struct draw_fringe_bitmap_params): Change member
2953 bits from char to short to facilitate wider bitmaps.
2954 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
2955 member.
2956
2957 * fringe.c (struct fringe_bitmap): Change member bits from char to
2958 short to facilitate 16 bits wide bitmaps. Modify all standard
2959 bitmaps accordingly.
2960 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
2961 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
2962 (draw_fringe_bitmap): Ditto.
2963 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
2964 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
2965 handle up to 16 bits wide bitmaps.
2966 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 2967 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
2968
2969 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
2970 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
2971 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
2972
2973 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
2974 so it is no longer necessary to expand them here.
2975
2976 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
2977
9d7271e8
KS
29782004-02-12 Kim F. Storm <storm@cua.dk>
2979
2980 * window.c (Fwindow_fringes): Doc fix.
2981
706c1e4f
JD
29822004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2983
2984 * xselect.c (x_get_foreign_selection): Add new optional parameter
2985 time_stamp.
2986 (Fx_get_selection_internal): Ditto, pass time_stamp to
2987 x_get_foreign_selection.
2988
2989 * data.c (Fbyteorder): New function.
2990
c2d12b5d
JD
29912004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2992
2993 * atimer.c: Move include stdio.h to same place as in other files.
2994
2995 * region-cache.c: Ditto.
2996
2997 * sysdep.c: Ditto.
2998
2999 * xfaces.c: Ditto.
3000
4c1947b9
SS
30012004-02-09 Sam Steingold <sds@gnu.org>
3002
89458937 3003 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
4c1947b9 3004
82722af3
KS
30052004-02-09 Kim F. Storm <storm@cua.dk>
3006
3007 * fringe.c: New file. Move original fringe related declarations
3008 and code from dispextern.h and xdisp.c here.
3009 Rework code to support user defined fringe bitmaps, redefining
3010 standard bitmaps, ability to overlay user defined bitmap with
3011 overlay arrow bitmap, and add faces to bitmaps.
3012 (Voverflow_newline_into_fringe): Declare here.
3013 (enum fringe_bitmap_align): New enum.
3014 (..._bits): All bitmaps are now defined without bitswapping; that
3015 is now done in init_fringe_once (if necessary).
3016 (standard_bitmaps): New array with specifications for the
3017 standard fringe bitmaps.
3018 (fringe_faces): New array.
3019 (valid_fringe_bitmap_id_p): New function.
3020 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
3021 (draw_fringe_bitmap): New function which draws fringe bitmap,
3022 possibly overlaying bitmap with cursor in right fringe or the
3023 overlay arrow in the left fringe.
3024 (update_window_fringes): Do not handle overlay arrow here.
3025 Compare and copy fringe bitmap faces.
3026 (init_fringe_bitmap): New function.
3027 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
3028 define and destroy user defined fringe bitmaps.
3029 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
3030 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
3031 (syms_of_fringe): New function. Defsubr new DEFUNs.
3032 DEFVAR_LISP Voverflow_newline_into_fringe.
3033 (init_fringe_once, init_fringe): New functions.
3034 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 3035
82722af3
KS
3036 * Makefile.in (obj): Add fringe.o.
3037 (fringe.o): New dependencies.
3038
3039 * dispextern.h (FRINGE_ID_BITS): New definition for number of
3040 bits allocated to hold a fringe number. Increase number of bits
3041 from 4 to 8 to allow user defined fringe bitmaps.
3042 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
3043 left_user_fringe_face_id, right_user_fringe_bitmap,
3044 right_user_fringe_face_id.
3045 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
3046 Move to new file fringe.c.
3047 (MAX_FRINGE_BITMAPS): Define here.
3048 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
3049 and overlay_p. Change member which to int.
3050 (struct redisplay_interface): New members define_fringe_bitmap
3051 and destroy_fringe_bitmap.
3052 (valid_fringe_bitmap_id_p): Add prototype.
3053 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
3054
3055 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
3056 arrows.
3057 (update_frame): Do flush_display if force_flush_display_p to
3058 ensure display (specifically fringes) are updated in a timely
3059 manner when resizing the frame by dragging the mouse.
3060 (update_window_line): Update row if overlay arrow changed.
3061 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
3062 or overlay arrow changed.
3063
3064 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
3065 syms_of_fringe, and init_fringe.
3066
3067 * frame.h (struct frame): New member force_flush_display_p.
3068
3069 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
3070 Add prototypes.
3071
a3993cc8 3072 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
a64387ee 3073 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
a3993cc8
KS
3074 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
3075 Use cursor color for displaying cursor in fringe.
82722af3
KS
3076 (x_redisplay_interface): Add null handlers for
3077 define_fringe_bitmap and destroy_fringe_bitmap functions.
3078
3079 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
3080 xterm.c to handle overlayed fringe bitmaps and to use cursor color
3081 for displaying cursor in fringe.
3082 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
3083 specific functions to define and destroy fringe bitmaps in fringe_bmp.
3084 (w32_redisplay_interface): Add them to redisplay_interface.
3085 (w32_term_init): Call w32_init_fringe instead of explicitly
3086 defining fringe bitmaps in fringe_bmp array.
3087 (x_delete_display): Call w32_reset_fringes instead of explicitly
3088 destroying fringe bitmaps in fringe_bmp array.
3089
3090 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
3091 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
3092 (continued_bits, continuation_bits, ov_bits, first_line_bits)
3093 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
3094 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
3095 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
3096 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
3097 Move fringe handling vars and code to new file fringe.c.
3098 (handle_display_prop): Handle left-fringe and right-fringe
3099 display properties; store user fringe bitmaps in iterator.
3100 (move_it_in_display_line_to): Handle cursor in fringe at eob.
3101 (clear_garbaged_frames): Set force_flush_display_p if resized.
3102 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
3103 (display_line): Handle cursor in fringe at eob.
3104 (display_line): Set row user fringe bitmaps from iterator.
3105
3106 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
3107 Use cursor color for displaying cursor in fringe.
3108 (x_redisplay_interface): Add null handlers for
3109 define_fringe_bitmap and destroy_fringe_bitmap functions.
3110
030400eb
JD
31112004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3112
3113 * macfns.c (Fx_change_window_property): Make doc string and
3114 parameters same as for X version.
3115
3116 * w32fns.c (Fx_change_window_property): Ditto.
3117
3af55251
KS
31182004-02-07 Kim F. Storm <storm@cua.dk>
3119
ec110e9e
KS
3120 * xdisp.c (hscroll_window_tree): Position cursor near to right
3121 margin in hscrolled window when jumping to end of line (rather
3122 than centering cursor).
3123
3af55251
KS
3124 * process.c (wait_reading_process_input): Don't do adaptive read
3125 buffering if waiting for a specific process.
3126
b0c138ce
LT
31272004-02-05 Luc Teirlinck <teirllm@auburn.edu>
3128
3129 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
3130 (Fread_minibuffer, Feval_minibuffer)
3131 (Fread_string, Fread_no_blanks_input)
3132 (Fcompleting_read): Doc fixes.
3133 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
3134 completion-regexp-list. Define Qcase_fold_search and staticpro it.
3135 (read_minibuf): Fix initial comment.
3136 (Ftry_completion, Fall_completions, Ftest_completion): Bind
e8eeaed8 3137 case-fold-search to the value of completion-ignore-case when
b0c138ce
LT
3138 checking completion-regexp-list.
3139 (Fdisplay_completion_list): Make it handle arguments that are
3140 symbols. Doc fix.
3141
9676f5ad 31422004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 3143
9676f5ad 3144 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 3145
9676f5ad
JD
3146 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
3147 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 3148 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 3149 format. Remove unused variable cons.
5b698285
JD
3150
3151 * xselect.c: Include stdio,h.
3152
fc1d15f6
KH
31532004-02-05 Kenichi Handa <handa@m17n.org>
3154
ebaff4af
KH
3155 * fns.c (Fset_char_table_range): Fix previous change.
3156
fc1d15f6
KH
3157 * buffer.c (Fset_buffer_multibyte): Fix docstring.
3158
9676f5ad
JD
31592004-02-04 Luc Teirlinck <teirllm@auburn.edu>
3160
3161 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
3162
da75761f
SM
31632004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
3164
3165 * keymap.c (Vmouse_events): Rename from Vmenu_events.
3166 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
3167
13c5d120
KH
31682004-02-04 Kenichi Handa <handa@m17n.org>
3169
3170 * fns.c (Fset_char_table_range): Handle charsets ascii,
3171 eight-bit-control, and eight-bit-graphic correctly.
3172
2883d842
JR
31732004-02-03 Jason Rumney <jasonr@gnu.org>
3174
3175 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
3176
3177 * w32fns.c (x_to_w32_font): Likewise.
3178
69eff41f
JD
31792004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3180
3181 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
3182 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
3183
3184 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
3185 ClientMessages.
3186
3187 * xselect.c: Include termhooks.h and X11/Xproto.h
3188 (x_check_property_data, x_fill_property_data)
3189 (x_property_data_to_lisp, mouse_position_for_drop)
3190 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 3191 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
3192 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
3193
da75761f 3194 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
3195 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
3196 OUTER_P.
3197 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
3198 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
3199 if vector_ret_p is true.
3200 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 3201
a6eeaa81 32022004-02-02 Eli Zaretskii <eliz@gnu.org>
dcdbbb5d
EZ
3203
3204 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
3205 basename of FILE relative to it, not FILE itself.
3206
09721b31
KH
32072004-02-02 Kenichi Handa <handa@m17n.org>
3208
3209 * coding.c (coding_restore_composition): Check invalid
3210 composition data more rigidly.
3211
eb996101
LT
32122004-01-30 Luc Teirlinck <teirllm@auburn.edu>
3213
3214 * fileio.c (Fread_file_name_internal): Correctly handle the case
3215 where insert-default-directory is nil.
3216 (Fread_file_name): Always return an empty string if the user exits
3217 with an empty minibuffer. Adapt the docstring accordingly.
3218 (syms_of_fileio): Adapt the docstring of insert-default-directory
3219 to the change in Fread_file_name.
3220
a6eeaa81 32212004-01-29 Eli Zaretskii <eliz@gnu.org>
a0367d42
EZ
3222
3223 * alloca.c [!alloca]: Fix the prototype for xfree.
3224
13f52ed8
KH
32252004-01-29 Kenichi Handa <handa@m17n.org>
3226
3227 * fns.c (string_char_to_byte): Optimize for ASCII only string.
3228 (string_byte_to_char): Likewise.
3229
d57625a0
JR
32302004-01-28 Peter Runestig <peter@runestig.com>
3231
3232 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
3233
a64387ee 32342004-01-27 Steven Tamm <steventamm@mac.com>
911c78b4
ST
3235
3236 * unexmacosx.c (unexec_copy): Do not copy more than was
3237 requested to prevent overwriting during unexec.
3238
eb37b8fd
JD
32392004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3240
ce38070a
JD
3241 * process.c (sigchld_handler): Add comment about not calling malloc.
3242
eb37b8fd
JD
3243 * process.h: Add extern to synch_process_termsig.
3244
a64387ee 32452004-01-27 Steven Tamm <steventamm@mac.com>
21a3e657 3246
da75761f
SM
3247 * macterm.c (make_mac_frame, make_mac_terminal_frame):
3248 Move setting of scroll bars from make_mac_frame to
3249 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 3250
d62a265d
RS
32512004-01-26 Richard M. Stallman <rms@gnu.org>
3252
3253 * search.c (Freplace_match): Handle nonexistent
3254 back-references properly.
3255
32562004-01-03 Richard M. Stallman <rms@gnu.org>
3257
3258 * window.c (decode_any_window): New function.
3259 (Fwindow_height, Fwindow_width, Fwindow_edges)
3260 (Fwindow_pixel_edges, Fwindow_inside_edges)
3261 (Fwindow_inside_pixel_edges): Use decode_any_window.
3262
ff236419
JD
32632004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3264
3265 * process.h: synch_process_termsig new variable.
3266
3267 * callproc.c: Define synch_process_termsig.
3268 (Fcall_process): Initiate synch_process_termsig to zero and
3269 check if non-zero and get signal name after subprocess has ended.
3270
3271 * process.c (sigchld_handler): Set synch_process_termsig
3272 if terminated by a signal. synch_process_death setting removed.
3273
3274 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
3275
41b867ea
AS
32762004-01-26 Andreas Schwab <schwab@suse.de>
3277
3278 * print.c (print_preprocess): Declare size as EMACS_INT to not
3279 lose bits.
3280 (print_object): Likewise.
3281 * alloc.c (Fpurecopy): Likewise.
3282
a08084ff
LT
32832004-01-25 Luc Teirlinck <teirllm@auburn.edu>
3284
3285 * window.c (Fwindow_minibuffer_p): Doc fix.
3286
b19ac475
JY
32872004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
3288
3289 * editfns.c (Fformat): Make both passes accept the same set of flags.
3290
fe905025
KH
32912004-01-23 Kenichi Handa <handa@m17n.org>
3292
3293 * fns.c (Fmd5): If OBJECT is a buffer different from the current
3294 one, set buffer to OBJECT temporarily.
3295
438fc6c0
SM
32962004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
3297
455316e2
SM
3298 * keyboard.c (kbd_buffer_gcpro): Remove.
3299 (kbd_buffer_store_event, clear_event, Fdiscard_input)
3300 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
3301 Don't initialize and/or maintain the variable any more. It was made
3302 redundant by my commit of 2003-06-15.
3303
438fc6c0
SM
3304 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
3305
5335a4ee
JD
33062004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3307
3308 * lisp.h: Add undef DECL_ALIGN.
3309
dcdaeebc
SM
33102004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
3311
3312 * process.c (wait_reading_process_input) [SYNC_INPUT]:
3313 Check interrupt_input_pending explicitly.
3314
3315 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
3316
3317 * keyboard.c (handle_async_input): New fun,
3318 extracted from input_available_signal.
3319 (input_available_signal, reinvoke_input_signal): Use it.
3320
9076a823
SM
33212004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
3322
d7107586
SM
3323 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
3324
3325 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
3326 manipulation macros for when tags are in the lower bits.
3327 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
3328 (DECL_ALIGN): New macro.
3329 (DEFUN): Use it.
3330
3331 * lisp.h [ENABLE_CHECKING]: Don't force union type.
3332
3333 * s/darwin.h (__attribute__): Remove outdated workaround.
3334
3335 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
3336
3337 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
3338 Don't check range of malloc address.
3339 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
3340
9076a823
SM
3341 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
3342
3343 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
3344
ba029065
KH
33452004-01-19 Kenichi Handa <handa@m17n.org>
3346
3347 * fontset.c (fontset_font_pattern): Fix previous change.
3348
7af0e8d7
MB
33492004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
3350
3351 * xdisp.c (Voverflow_newline_into_fringe)
3352 (move_it_in_display_line_to, redisplay_internal)
3353 (update_window_fringes, redisplay_window, display_line, window):
3354 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
3355 that it compiles without a window-system.
3356 * dispnew.c (direct_output_for_insert, update_window): Likewise.
3357
77a9cf69
KS
33582004-01-16 Kim F. Storm <storm@cua.dk>
3359
3360 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
3361
a64387ee 3362 * buffer.c (init_buffer_once): Set buffer_defaults and
77a9cf69
KS
3363 buffer_local_flags for indicate_buffer_boundaries.
3364 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
3365 default- variable for it.
3366
3367 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
3368 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 3369 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
3370 overflowing newlines into right fringe.
3371 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
3372 and indicate_bottom_line_p for buffer boundaries and scrolling.
3373 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
3374 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
3375 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
3376 and HOLLOW_SQUARE_BITMAP.
3377 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
3378 Add prototypes.
3379
3380 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
3381 instead of related indicator fields.
3382 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
3383 (direct_output_for_insert): Handle exact width lines like
3384 contined lines. Call update_window_fringes.
3385 (update_window): Call update_window_fringes.
3386 (scrolling_window): Don't skip desired rows with changed bitmaps.
3387 Check if fringe bitmaps changes when assigning scrolled rows.
3388
3389 * xdisp.c (Voverflow_newline_into_fringe): New variable.
3390 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
3391 (move_it_in_display_line_to): Overflow newline into fringe for
3392 rows that are exactly as wide as the window.
3393 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
3394 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
3395 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
3396 (fringe_bitmaps): Add new bitmaps.
3397 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
3398 Select proper bitmap for cursor in fringe when appropriate.
3399 Handle alignment of bitmap to top or bottom of row.
3400 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
3401 done by update_window_fringes.
3402 (update_window_fringes, draw_window_fringes): New functions.
3403 (redisplay_internal): Call update_window_fringes in case only
3404 cursor row is updated.
3405 (redisplay_window): Call update_window_fringes.
3406 Explicitly call draw_window_fringes if redisplay was done using
3407 the current matrix or the overlay arrow is in the window.
3408 (try_window_reusing_current_matrix): Mark scrolled rows for
3409 fringe update (to update buffer-boundaries / scrolling icons).
3410 (find_last_unchanged_at_beg_row): Handle exact width lines line
3411 continued lines.
3412 (display_line): Overflow newline into fringe for rows that are
3413 exactly as wide as the window. Don't append space for newline
d7107586 3414 in this case.
77a9cf69
KS
3415 (notice_overwritten_cursor): Explicitly clear cursor bitmap
3416 in fringe as if it had been overwritten.
3417 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 3418 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
3419 void-text-area-pointer as user options.
3420 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 3421
77a9cf69
KS
3422 * xterm.c (x_update_window_end): Call draw_window_fringes.
3423 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
3424 in row instead of actually drawing fringe bitmaps.
3425 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
3426 (x_draw_window_cursor): Draw cursor in fringe.
3427
3428 * w32term.c (x_update_window_end): Call draw_window_fringes.
3429 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
3430 in row instead of actually drawing fringe bitmaps.
3431 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
3432 (w32_draw_window_cursor): Draw cursor in fringe.
3433
3434 * macterm.c (x_update_window_end): Call draw_window_fringes.
3435 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
3436 in row instead of actually drawing fringe bitmaps.
3437 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
3438 (mac_draw_window_cursor): Draw cursor in fringe.
3439
a633a954
JD
34402004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3441
3442 * xterm.c (handle_one_xevent): Don't handle characters that are part
3443 of an old style (XLookupString) compose sequence.
3444
80460525
KH
34452004-01-15 Kenichi Handa <handa@m17n.org>
3446
3447 * search.c (Freplace_match): Use make_multibyte_string or
3448 make_unibyte_string according to the buffer multibyteness.
3449
7fc34f85
SM
34502004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
3451
3452 * alloc.c (struct interval_block, struct string_block)
3453 (struct symbol_block, struct marker_block, live_string_p)
3454 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
3455 Better preserve alignment for objects in blocks.
3456 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
3457
3458 * lread.c (defvar_per_buffer): Remove dead declaration.
3459
3460 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
3461 space size.
3462
66070bd1
JD
34632004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3464
3465 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
3466 if a key press should pop down. Only pop down if a key is pressed
3467 outside the menu/dialog.
3468 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
3469 popup_get_selection.
3470 (create_and_show_dialog): Pass 1 for down_on_keypress to
3471 popup_get_selection.
3472
de7515d6
JD
34732004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3474
3475 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
3476 BLOCK/UNBLOCK_INPUT.
3477
160b1b50
JD
34782004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3479
3480 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
3481 specified.
3482
3a9f36e6
KH
34832004-01-08 Kenichi Handa <handa@m17n.org>
3484
3485 * editfns.c (Fformat): Fix '&' to '&&'.
3486
3803eb32
AS
34872004-01-08 Andreas Schwab <schwab@suse.de>
3488
3489 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
3490 size if PSEUDOVECTOR_FLAG is set.
3491
9da88f37
KH
34922004-01-07 Kenichi Handa <handa@m17n.org>
3493
74ac5074
KH
3494 * charset.c (Fdeclare_equiv_charset): Fix docstring.
3495
9da88f37
KH
3496 * fontset.c (fontset_ref_via_base): Fix previous change.
3497
05faee07
KS
34982004-01-07 Kim F. Storm <storm@cua.dk>
3499
3500 * process.c (read_process_output): Only activate adaptive
3501 buffering if we read less than 256 bytes at a time.
3502
634910c8
KS
35032004-01-06 Kim F. Storm <storm@cua.dk>
3504
3505 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
3506 object and image object. Return glyph width and height.
3507 (mode_line_string, marginal_area_string): Ditto.
3508
3509 * dispextern.h (buffer_posn_from_coords, mode_line_string)
3510 (marginal_area_string): Fix prototypes.
3511
3512 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
f63fd14e 3513 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
634910c8
KS
3514 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
3515
3516 * keyboard.c (make_lispy_position): Use modified mode_line_string,
3517 buffer_posn_from_coords, and marginal_area_string functions to
3518 include both string object and image object in the lispy position.
3519 Also add actual glyph width and height to position.
3520 (read_key_sequence): Use real buffer position from mouse
3521 event to find keymap property even when click is in marginal area.
3522
3523 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
3524 mode_line_string and marginal_area_string functions to handle
3525 both string object and image object properties.
d7107586 3526
57951c2e
AS
35272004-01-06 Andreas Schwab <schwab@suse.de>
3528
3529 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
3530 character.
3531
181e6a61
AS
35322004-01-02 Andreas Schwab <schwab@suse.de>
3533
d7107586
SM
3534 * macterm.c (emacs_options, x_initialized, same_x_server):
3535 Remove unused (and duplicated) definitions.
181e6a61 3536
31e0fbdd
KS
35372004-01-02 Kim F. Storm <storm@cua.dk>
3538
3539 * process.h (struct Lisp_Process): New members for adaptive read
3540 buffering: adaptive_read_buffering, read_output_delay, and
3541 read_output_skip.
3542
3543 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
3544 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
3545 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
3546 (process_output_delay_count, process_output_skip): New vars.
3547 (Vprocess_adaptive_read_buffering): New variable.
3548 (make_process): Initialize adaptive read buffering members.
3549 (Fstart_process): Set adaptive_read_buffering member.
3550 (deactivate_process): Cleanup adaptive read buffering.
3551 (wait_reading_process_input): Temporarily omit delayed
3552 subprocesses from the set of file descriptors to read from;
3553 adjust the select timeout if we skipped any subprocesses.
3554 (read_process_output): Increase adaptive read buffering delay if
3555 we read less than a full buffer; reduce delay when we read a
3556 full buffer.
3557 (send_process): Simplify using local Lisp_Process var.
3558 Reset adaptive read buffering delay after write.
3559 (init_process): Initialize process_output_delay_count and
3560 process_output_skip.
3561 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
3562
68c6a789
JR
35632004-01-01 Jason Rumney <jasonr@gnu.org>
3564
d7107586 3565 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 3566
3f70fe82
LT
35672003-12-30 Luc Teirlinck <teirllm@auburn.edu>
3568
3569 * print.c (Ferror_message_string): Add hyperlink in the docstring
3570 to the definition of `signal' in the Elisp manual.
3571 * eval.c (Fsignal): Ditto.
3572
a64387ee 35732003-12-29 James Clark <jjc@jclark.com> (tiny change)
c2be49ed
EZ
3574
3575 * fns.c (internal_equal): Return t for two NaN arguments.
3576
7abd90ea
RS
35772003-12-29 Richard M. Stallman <rms@gnu.org>
3578
3579 * data.c (store_symval_forwarding): Handle setting
3580 default-fill-column, etc., by changing the value in
3581 buffers that use the default.
3582
3583 * minibuf.c (Fset_minibuffer_window): Doc fix.
3584
3585 * fileio.c (choose_write_coding_system): Ignore auto_saving
3586 if using the visited file for auto saves.
3587 (Fwrite_region): Don't update SAVE_MODIFF
3588 if auto-saving in visited file.
3589
3e7cfcdc
KH
35902003-12-29 Kenichi Handa <handa@m17n.org>
3591
3592 * dispextern.h (face_font_available_p): Extern it.
3593
3594 * fontset.c (Voverriding_fontspec_alist): New variable.
3595 (lookup_overriding_fontspec): New function.
d7107586 3596 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
3597 (fontset_font_pattern): Likewise.
3598 (regulalize_fontname): New function.
3599 (Fset_fontset_font): Call regulalize_fontname.
3600 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
3601 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
3602 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
3603
3604 * xfaces.c (face_font_available_p): New function.
3605
7abd90ea
RS
36062003-12-28 Richard M. Stallman <rms@gnu.org>
3607
3608 * buffer.c (Fother_buffer): Don't crash if BUF is nil
3609 or if its name is nil.
3610
3611 * buffer.c (Fkill_buffer): Don't delete auto-save file
3612 if it's the same as the visited file.
3613
de1d1a40
LT
36142003-12-28 Luc Teirlinck <teirllm@auburn.edu>
3615
3616 * coding.c (Fcheck_coding_system): Doc fix.
3617
204fb75e
KS
36182003-12-28 Kim F. Storm <storm@cua.dk>
3619
3620 * Makefile.in (eval.o): Depend on dispextern.h.
3621
3622 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
3623 image glyph using image's ascent.
3624 (mode_line_string): Return image glyph as object clicked on.
3625 Adjust y0 for image glyph using image's ascent.
3626
3627 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
3628 (struct glyph): New members, ascent and descent. Used to save
3629 this glyph's ascent and descent, instead of having.
3630 (struct glyph): Declare member face_id using FACE_ID_BITS.
3631 (find_hot_spot): Add prototype.
3632
3633 * keyboard.c (Qimage): Remove extern (now in lisp.h).
3634 (QCmap): Declare extern.
3635 (make_lispy_position): When position is inside image hot-spot,
3636 use hot-spot element's id as posn element.
3637
3638 * lisp.h (IMAGEP): New macro to test for image object type.
3639 (Qimage): Declare extern.
3640
3641 * macfns.c (Qimage): Remove extern (now in lisp.h).
3642 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3643
3644 * macterm.c (Qface, Qmouse_face): Remove unused externs.
3645
3646 * w32fns.c (Qimage): Remove extern (now in lisp.h).
3647 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3648
3649 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
3650
3651 * w32term.c (Qface, Qmouse_face): Remove unused externs.
3652
3653 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
3654 pointer types.
3655 (Qrelative_width, Qalign_to): Remove unused variables.
3656 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
3657 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
3658 image maps.
d7107586 3659 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
3660 new dx and dy args.
3661 Remove buffer_only_p arg (always 0). Simplify code accordingly.
3662 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
3663 than row's ascent and height, to get sensible height on tall rows.
3664 (build_desired_tool_bar_string): Remove Qimage extern.
3665 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
3666 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
3667 image glyph is alone on the last line.
3668 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 3669 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 3670 (on_hot_spot_p): New function to check if position is inside an
d7107586 3671 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
3672 (find_hot_spot): New function to search for image hot-spot.
3673 (Flookup_image_map): New defun to search for image hot-spot.
3674 (define_frame_cursor1): New aux function to determine frame pointer.
3675 (note_mode_line_or_margin_highlight, note_mouse_highlight):
3676 Handle `pointer' text property and :pointer image property to
3677 control frame pointer shape. Detect image hot-spots for pointer
3678 and help_echo properties. Use define_frame_cursor1.
3679 (note_mouse_highlight): Use Vvoid_text_area_pointer.
f63fd14e 3680 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
204fb75e
KS
3681 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
3682
3683 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
3684
3685 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
3686 (Qimage): Remove extern (now in lisp.h).
3687 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3688
3689 * xmenu.c (show_help_event): Remove unused code.
3690
3691 * xterm.c (Qface, Qmouse_face): Remove unused externs.
3692 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
3693 row's ascent and descent, to get a sensible height on tall rows.
3694
fc052137
LT
36952003-12-25 Luc Teirlinck <teirllm@auburn.edu>
3696
3697 * minibuf.c (Fcompleting_read): Undo previous change.
3698
a64387ee 36992003-12-25 Lars Hansen <larsh@math.ku.dk>
b9148500
LH
3700
3701 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
3702 Arguments GCPRO'ed in call to file name handler.
3703
56ffd194
TTN
37042003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
3705
3706 * termcap.c (tgetst1): Scan for "%pN"; if all
3707 N are continuous in [1,9], remove all "%pN".
3708
5202d23d
JD
37092003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3710
f26fab36
JD
3711 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
3712
5202d23d
JD
3713 * xfaces.c (lface_fully_specified_p): Take into account that
3714 MAC OS always have unspecified stipple.
3715
8babaa59
TTN
37162003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
3717
3718 * tparam.c (tparam1): Add handling for `%pN', which
3719 means use param N for the next substitution.
3720
2d176448
TTN
37212003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
3722
3723 * xfaces.c (Fcolor_gray_p): Fix omission bug:
3724 In case `frame' is nil, consult the selected frame.
3725 (Fcolor_supported_p): Likewise.
3726
adb0708c
LT
37272003-12-23 Luc Teirlinck <teirllm@auburn.edu>
3728
000eeb15
LT
3729 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
3730 Doc fixes.
0dc72b11
LT
3731
3732 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
3733 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
3734 (Fread_from_minibuffer): Delete code moved into read_minibuf.
3735 Doc fix.
3736 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
3737 read_minibuf.
3738 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 3739 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 3740
2e4d132b
KH
37412003-12-03 Kenichi Handa <handa@m17n.org>
3742
3743 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
3744 encoding sequence.
3745
3999c705
KH
37462003-12-01 Kenichi Handa <handa@m17n.org>
3747
3748 * composite.c (syms_of_composite): Don't make the compostion hash
3749 table week.
3750
d344ecbb
LT
37512003-11-30 Luc Teirlinck <teirllm@auburn.edu>
3752
3753 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
3754 * textprop.c (Fget_char_property_and_overlay): New function.
3755 (syms_of_textprop): Defsubr it.
3756
03d6484e
JD
37572003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3758
019b1f0e
JD
3759 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
3760 to compile on terminal configuration.
3761
03d6484e
JD
3762 * fileio.c (Fread_file_name): Check use_file_dialog also before
3763 calling Fx_file_dialog.
3764
3765 * fns.c: use_file_dialog: New variable.
3766 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
3767
442d3fd0
KS
37682003-11-29 Kim F. Storm <storm@cua.dk>
3769
3770 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
3771 (syms_of_msdos): Don't intern and staticpro them.
3772
0f6a07a8
KS
37732003-11-27 Kim F. Storm <storm@cua.dk>
3774
3775 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
3776 coordinates relative to glyph at posn. If glyph is an image,
3777 return that as object at posn. Callers changed.
3778 (mode_line_string, marginal_area_string): Calculate and return
3779 pixel coordinates relative to glyph. Callers changed.
3780
3781 * dispextern.h (buffer_posn_from_coords, mode_line_string)
3782 (marginal_area_string): Fix prototypes.
3783 (window_box_left_offset, window_box_right_offset): Add prototypes.
3784
3785 * frame.h (get_specified_cursor_type, get_window_cursor_type):
3786 Remove prototypes.
3787
3788 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
3789
3790 * keyboard.c (make_lispy_position): Add x and y coordinates
3791 relative to the current glyph as 7th element of position.
3792 If glyph is an image, return it in the object element.
3793 (read_key_sequence): Skip checks for keymap property in cases
3794 where POSN_STRING is not a string (e.g. an image).
3795
3796 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
3797 (Vshow_text_cursor_in_void): New variable.
3798 (glyph_to_pixel_coords): Don't use negative hpos.
3799 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
3800 (append_stretch_glyph): Change ascent arg to be actual value
f63fd14e 3801 in pixels rather than ratio to height. Callers changed.
0f6a07a8
KS
3802 (calc_pixel_width_or_height): New aux function, implementing
3803 pixel based artihmetic for glyph widths and heights.
3804 (produce_stretch_glyph): Use calc_pixel_width_or_height for
3805 :width, :height, :align-to, and :ascent, thus allowing these to
3806 be specified in pixels as well as multiples of characters.
3807 Don't produce stretch glyphs with zero width or height.
3808 (get_specified_cursor_type): Declare static.
3809 (get_window_cursor_type): Declare static. Add glyph arg to be
3810 able to know when cursor is on an image; always substitute
3811 hollow-box cursor for filled-box cursor on images, to avoid
3812 negative images and flicker when blinking the cursor.
3813 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
3814 (note_mode_line_or_margin_highlight): Use non-text cursor rather
3815 than vertical scroll-bar cursor in display margins.
3816 (note_mouse_highlight): Use non-text cursor rather than text
3817 cursor in fringes and over images in the text area.
3818 Use non-text cursor when mouse pointer is outside editable text,
3819 i.e. in the void after end-of-line or end-of-buffer; this was
3820 already done for W32, but is now standard for all systems --
3821 user can toggle show-text-cursor-in-void to get old behaviour.
3822 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
3823 Vdisplay_pixels_per_inch.
3824
00498bfc
AS
38252003-11-25 Andreas Schwab <schwab@suse.de>
3826
3827 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
3828 EMACS_INT to not lose bits.
3829 (Ffillarray): Don't set bits beyond the size of a bool vector.
3830
edaa824d
KS
38312003-11-25 Kim F. Storm <storm@cua.dk>
3832
3833 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
3834 define this defun on systems that cannot use stderr as lvalue.
3835
74d6f539
GM
38362003-11-24 Gerd Moellmann <gerd@gnu.org>
3837
3838 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
3839 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
3840 ld's default is incompatible with unexec.
3841
6a1ff3ba
KS
38422003-11-23 Kim F. Storm <storm@cua.dk>
3843
63dc7c6b
KS
3844 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
3845 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
3846 (Fforce_window_update): New defun.
3847 (syms_of_window): Defsubr it.
3848 (Fset_window_margins, Fset_window_fringes): Doc fix.
3849
6a1ff3ba
KS
3850 * print.c (Fredirect_debugging_output): New defun.
3851 (syms_of_print): Defsubr it.
3852
aef109b7
LT
38532003-11-22 Luc Teirlinck <teirllm@auburn.edu>
3854
3855 * fns.c (Fset_char_table_parent): Doc fix.
3856
6a1ff3ba 38572003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
3858
3859 * dispnew.c (buffer_posn_from_coords): Return actual row/column
3860 for glyph clicked on, rather than (unused) pixel positions.
3861 (mode_line_string, marginal_area_string): Change X and Y args to
3862 pointers for returning actual row/column for glyph clicked on.
3863 Simplify and optimize loops.
3864
aef109b7
LT
3865 * dispextern.h (mode_line_string, marginal_area_string):
3866 Update prototypes.
63ccbe21
KS
3867
3868 * keyboard.c (make_lispy_position): New function for generating
3869 mouse click positions from frame and pixel coordinates.
3870 Enhanced to return buffer position and actual row/column for
3871 events outside the text area using updated mode_line_string and
3872 marginal_area_string functions.
3873 Return left-fringe and right-fringe clicks as such, rather than
3874 clicks in text area.
3875 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
3876 pixel_to_glyph_coords, as we never use the results.
3877 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
3878 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
3879 Eliminate unused code in WHEEL_EVENT handling.
3880 (make_lispy_movement): Use make_lispy_position.
3881
3882 * window.c (coordinates_in_window): Remove redundant tests.
3883 Fix returned X pixel value for left-margin.
3884
3885 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
3886 mode_line_string and marginal_area_string parameters.
3887
a64387ee 38882003-11-22 Lars Hansen <larsh@math.ku.dk>
930a9995 3889
d7107586
SM
3890 * w32.c (struct the_group, getgrgid): Add.
3891 * mac.c (struct my_group, getgrgid): Add.
aef109b7 3892
3dbf3426
LT
38932003-11-21 Luc Teirlinck <teirllm@auburn.edu>
3894
3895 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
3896
cae8ddbb 38972003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 3898
d7107586
SM
3899 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
3900 include in call to file name handler. Optionally translate numeric
3901 UID and GID to strings. Update docstring.
3902 (directory_files_internal): Add parameter ID-FORMAT.
3903 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
3904 include in call to file name handler and call to
3905 directory_files_internal. Update Docstring.
3906 (Fdirectory_files): Add dummy parameter in call to
3907 directory_files_internal.
3908 * lisp.h (Qinteger): Add.
3909 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
3910 (Ffile_attributes): Add parameter.
3911 * data.c (Qinteger): Export.
cae8ddbb 3912
2550b848
LT
39132003-11-21 Luc Teirlinck <teirllm@auburn.edu>
3914
3dbf3426 3915 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 3916
88380018
KS
39172003-11-19 Kim F. Storm <storm@cua.dk>
3918
3919 * xdisp.c (init_iterator): Initialize it->start to position
3920 before reseating (in case start position is invisible).
3921 (init_to_row_start): Set it->start to row-start.
3922 (redisplay_window): Accept optional_new_start if start position
3923 is invisible (in which case IT_CHARPOS overshoots PT).
3924 (display_line): Setup row->start from it->start (rather than
3925 it->current which is wrong if first char on line is invisible).
3926 When done, reseat it->start to it->current (= start of next row).
3927 (expose_area): Fix exposure of text area when first char (e.g. TAB)
3928 is only partially visible.
3929
3930 * dispextern.h (struct it): New member start.
3931
854c1a59
SM
39322003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
3933
455316e2
SM
3934 * alloc.c (make_float, Fcons): Clear the markbit at init time.
3935 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
3936 of block_index outside of the macro call.
3937 (Fgarbage_collect): Remove null code.
3938
3939 * m/amdx86-64.h: Don't redefine XPNTR.
3940
854c1a59
SM
3941 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
3942 of VALMASK.
3943
3944 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
3945 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
3946 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
3947
3948 * lisp.h (VALMASK): Only define for non-union type.
3949 (MARKBIT): Remove.
3950 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
3951 (XTYPE): Define unconditionally.
3952 (XSETTYPE): Remove one more remnant.
3953 (EQ): Define differently for the union and non-union cases.
3954 (INTMASK): New bit mask.
3955 (struct Lisp_Marker): Move down to prepare for upcoming patch.
3956 (GC_EQ): Delegate to EQ.
3957
3958 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
3959
a0c6ef2d
JD
39602003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3961
3962 * xterm.c (x_window_to_scroll_bar): Move check of display to
3963 where window_id is compared.
3964
859492c4
KS
39652003-11-17 Kim F. Storm <storm@cua.dk>
3966
3967 * dispextern.h (struct it): New member first_vpos.
3968
3969 * xdisp.c (start_display): Set it->first_vpos.
3970 (try_window_id): Use first_vpos to start display in first _text_
3971 line if no reusable lines at start of window with header line.
3972
810f2256
JD
39732003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3974
7c402969 3975 * w32fns.c (XPutPixel):
854c1a59
SM
3976 * w32bdf.c (w32_init_bdf_font):
3977 * sunfns.c (sel_read):
3978 * process.c (Fmake_network_process):
3979 * frame.c (store_frame_param):
3980 * fontset.c (Fset_fontset_font):
3981 * emacs.c (shut_down_emacs):
a64387ee 3982 * ccl.c (ccl_driver): Remove period at end of error message.
7c402969 3983
a32e9bfd
JD
3984 * config.in: Regenerate.
3985
810f2256
JD
3986 * xfns.c (x_window_to_frame, x_any_window_to_frame)
3987 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
3988 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
3989 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
3990 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
3991
3992 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
3993
3994 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
3995 (XTmouse_position, handle_one_xevent): Pass Display* to
3996 x_window_to_scroll_bar.
3997 (x_window_to_scroll_bar): Take a Display* argument.
3998 Check that display for frame is equal to Display* argument.
854c1a59 3999 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
4000 x_display_info_for_display instead. Use Display in xev instead
4001 of GDK_DISPLAY.
4002 (x_dispatch_event): Call x_display_info_for_display.
f63fd14e 4003 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
810f2256
JD
4004 (x_connection_closed): Call xg_display_close for GTK.
4005 (x_term_init): Call xg_display_open for additional displays.
4006 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
4007 for GTK.
4008
4009 * xmenu.c (single_menu_item, mouse_position_for_popup)
4010 (x_activate_menubar): Formatting adjustments.
4011
4012 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
4013 adjustments.
4014
4015 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
4016 (xg_display_close, xg_create_default_cursor)
4017 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
4018 handling.
854c1a59
SM
4019 (xg_left_ptr_cursor): Remove.
4020 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
4021 cursor here.
4022 (xg_win_to_widget): Take Display* argument, call
4023 gdk_xid_table_lookup_for_display.
4024 (xg_create_frame_widgets, xg_get_file_name, create_menus)
4025 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
4026 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
4027 in FRAME_X_DISPLAY_INFO.
4028 (xg_get_scroll_id_for_window): Take Display* argument.
4029 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 4030 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256
JD
4031
4032 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
4033 Display* argument also. Declare xg_display_open,
4034 xg_display_close, xg_create_default_cursor.
4035
0b03cc78
JD
40362003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4037
4038 * xterm.c (x_detect_focus_change): Do not change focus frame for
4039 Enter/LeaveNotify if the current focus frame has explicit focus.
4040
77e688fa
KS
40412003-11-14 Kim F. Storm <storm@cua.dk>
4042
4043 * dispnew.c (update_text_area): Fix redisplay error when hscroll
4044 is active and first glyph is only partially visible.
854c1a59 4045
dd429b03
KH
40462003-11-13 Kenichi Handa <handa@m17n.org>
4047
4048 * xdisp.c (select_frame_for_redisplay): New function.
4049 (redisplay_internal): Record also selected_frame for
4050 unwind_redisplay. Call select_frame_for_redisplay before
4051 redrawing each frame.
4052 (unwind_redisplay): Argument changed to a cons.
4053
6d9266f4
LT
40542003-11-12 Luc Teirlinck <teirllm@auburn.edu>
4055
4056 * fns.c (Fstring_to_multibyte): Doc fix.
4057
80060eb3
KH
40582003-11-11 Kenichi Handa <handa@m17n.org>
4059
4060 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
4061
74305183
JD
40622003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4063
4064 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
4065 program specified positions.
4066
cfda993e
JD
40672003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4068
4069 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
4070
df211069
KH
40712003-11-08 Kenichi Handa <handa@m17n.org>
4072
4073 * Makefile.in (lisp): Add kannada.el.
4074 (shortlisp): Likewise.
4075
4307d534
KH
40762003-11-07 Kenichi Handa <handa@m17n.org>
4077
854c1a59
SM
4078 * coding.c (coding_allocate_composition_data):
4079 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
4080 (coding_restore_composition): Detect invalid composition data.
4081 Give Fstring and Fvector a Lispy integer, not C int.
4082
854c1a59
SM
40832003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
4084
4085 * floatfns.c (Flogb): Don't use VALMASK.
4086
4087 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
4088 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
4089
4090 * lisp.h (XINT): Move the cast to clarify what is going on.
4091 (GCTYPEMASK, XSETTYPE): Remove.
4092 (XGCTYPE): Make it an alias of XTYPE.
4093
d04103a1
JD
40942003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4095
4096 * xterm.c (x_term_init): Fix formatting.
4097
da18b5ac
JD
40982003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4099
4100 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
4101 and xg_did_tearoff.
4102
4103 * gtkutil.c: Remove variable xg_did_tearoff.
4104 (xg_have_tear_offs): New function.
4105 (tearoff_remove): Just decrease xg_detached_menus.
4106 (tearoff_activate): Increase xg_detached_menus and call
4107 tearoff_remove when tearoff is removed.
854c1a59 4108 (xg_keep_popup): Remove function.
da18b5ac
JD
4109 (create_menus): Give add_tearoff_p as argument to recursive
4110 call to create_menus.
4111 (xg_create_widget): Use variables instead of multiple
4112 strcmp. Tell create_menus to create tear off only for
4113 menu bar menus.
4114 (xg_update_menubar): Change title for a detached menu also.
4115 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
4116 of deep_p.
4117 (xg_initialize): Initialize xg_detached_menus, remove
4118 initialization of xg_did_tearoff.
4119
4120 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
4121 xg_have_tear_offs returns non-zero.
4122 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
4123 call to xg_keep_popup.
4124
64d4923e
AC
41252003-11-01 Andrew Choi <akochoi@shaw.ca>
4126
4127 * macterm.c (XTread_socket): Handle menubar selection and grow
4128 window only for mouseDown events.
854c1a59 4129
6cc8bc07
JD
41302003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4131
4132 * xterm.c (x_term_init): For GTK part, increase x_initialized
4133 to check for more than one display. Use error instead of return 0.
4134
043131c4
AC
41352003-10-31 Andrew Choi <akochoi@shaw.ca>
4136
854c1a59 4137 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
4138 (copy_dysymtab): Call it.
4139
bdda99a1
LT
41402003-10-31 Luc Teirlinck <teirllm@auburn.edu>
4141
4142 * eval.c (Fdefvaralias): Doc fix.
4143
800f42ff 41442003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
4145
4146 * data.c (Fsetplist): Doc fix.
4147
ef35b389
LK
41482003-10-14 Lute Kamstra <lute@gnu.org>
4149
4150 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 4151
ef35b389 41522003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 4153
07107abc
KS
4154 * window.c (Fset_window_margins): Simplify arg checking.
4155
f7005886
RS
41562003-10-13 Richard M. Stallman <rms@gnu.org>
4157
4158 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
4159 (print_partial_compiled_pattern): Replace assert with a printout.
4160 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
4161
4162 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
4163
4164 * window.c (Fset_window_margins): Allow only integers as args.
4165 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
4166 Doc fixes.
4167
9c0c2af5
LK
41682003-10-13 Lute Kamstra <lute@gnu.org>
4169
4170 * window.c (Fset_window_fringes): Elaborate docstring.
4171
3f080e4e
AC
41722003-10-12 Andrew Choi <akochoi@shaw.ca>
4173
854c1a59 4174 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 4175
3f080e4e
AC
4176 * s/darwin.h (GC_MARK_STACK): Define.
4177
0aa513ed
JD
41782003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4179
4180 * window.c (shrink_windows): New function.
4181 (size_window): Call shrink_windows to calculate window sizes when
4182 shrinking frame with more than one window.
4183
6aa8858a
KS
41842003-10-12 Kim F. Storm <storm@cua.dk>
4185
4186 * xdisp.c (compute_fringe_widths): Doc fix.
4187
c2164d91
KH
41882003-10-08 Kenichi Handa <handa@m17n.org>
4189
854c1a59 4190 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 4191
f82ac129
KH
41922003-10-07 Kenichi Handa <handa@m17n.org>
4193
4194 * coding.c (Qcoding_system_define_form): New variable.
4195 (syms_of_coding): Intern and staticpro it.
4196 (Fcheck_coding_system): Try to autoload the definition of
4197 CODING-SYSTEM.
4198
9296c947
LT
41992003-10-05 Luc Teirlinck <teirllm@auburn.edu>
4200
4201 * fns.c (Frequire): Doc fix.
4202
c1f0671a
JD
42032003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4204
3d8c3826
JD
4205 * xfns.c (Fx_send_client_event): New function as a base for
4206 manipulating extended window manager hints.
6dc15d98 4207 (Fx_send_client_event): Remove unused variable s.
3d8c3826 4208
068ae0fd
JD
4209 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
4210 that function is removed.
4211
4212 * xterm.c (x_set_offset): Use move_offset_left/top instead of
4213 x/y_pixels_outer_diff.
4214 (x_check_expected_move): Calculate move_offset_left/top.
4215
4216 * xterm.h (struct x_output): New members: move_offset_top/left.
4217
854c1a59 4218 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
4219 call x_set_offset directly.
4220
4221 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
4222
96f09305
JD
4223 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
4224
4225 * xterm.c (x_delete_display): Free font names and font_encoder
4226 in dpyinfo->font_table.
4227
854c1a59
SM
4228 * xfns.c (Fx_close_connection): Only call XFreeFont here.
4229 Move xfree of font names to x_delete_display.
96f09305 4230
c1f0671a
JD
4231 * xterm.h (struct x_display_info): New member, wm_type.
4232 (struct x_output): New members, expected_top/left and
4233 check_expected_move.
4234
4235 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
4236 is received.
854c1a59
SM
4237 (handle_one_xevent): Rename x_check_expected_move from
4238 x_check_fullscreen_move.
c1f0671a
JD
4239 (x_set_offset): Only add WM decoration sizes to modified_top/left
4240 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 4241 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
4242 Removed fullscreen specific code. Use check_expected_move,
4243 expected_left/top instead. Also, set wm_type.
4244 (x_term_init): Initialize wm_type to unknown.
4245
4246 * frame.c (x_fullscreen_move): Remove addition of WM decoration
4247 sizes to move_x/y.
4248
be2fdba9
KH
42492003-10-03 Kenichi Handa <handa@m17n.org>
4250
4251 * macterm.c (x_load_font): Clear all members of FONTP before start
4252 filling them.
4253
42542003-10-02 Kenichi Handa <handa@m17n.org>
4255
4256 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
4257 before calling find_ccl_program_func. Call find_ccl_program_func
4258 only when fontp->font_encoder is not NULL.
4259
4260 * xterm.c (x_load_font): Clear all members of FONTP before start
4261 filling them.
4262
26a6e439
JPW
42632003-10-03 John Paul Wallington <jpw@gnu.org>
4264
4265 * keymap.c (map_keymap): Don't abort when binding is a vector.
4266
0d4c2dc2
JR
42672003-10-02 Jason Rumney <jasonr@gnu.org>
4268
854c1a59
SM
4269 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
4270 Sync dependencies with Makefile.in.
a63cf46f
JR
4271 (alloca.o): Remove.
4272
0d4c2dc2
JR
4273 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
4274 filling them.
4275
4276 * w32bdf.c (w32_load_bdf_font): Likewise.
4277
ab8f7d5c
RS
42782003-09-30 Richard M. Stallman <rms@gnu.org>
4279
4280 * term.c (set_tty_color_mode): Calculate current_mode_spec
4281 regardless of value of VAL.
4282
854c1a59 4283 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
4284 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
4285 Handle over_used when splitting UNDER.
4286
a64387ee 42872003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ab8f7d5c
RS
4288
4289 * regex.c (regex_compile): Free the stack when returning from function.
4290
3413f972
KH
42912003-09-28 Kenichi Handa <handa@m17n.org>
4292
4293 * fontset.c (Finternal_char_font): Change return value to
4294 cons (FONT-NAME . GLYPH-CODE).
4295
a6eeaa81 42962003-09-28 Eli Zaretskii <eliz@gnu.org>
40409f05
EZ
4297
4298 * term.c (tty_setup_colors): Treat any negative argument as -1.
4299
f98ddc99
KH
43002003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
4301
4302 * process.c (send_process): Delete unused temp_buf.
4303
66c8f1a8
DL
43042003-09-26 Dave Love <fx@gnu.org>
4305
4306 * xterm.c (x_bitmap_mask): Declare.
4307
ca716c26
DL
43082003-09-25 Dave Love <fx@gnu.org>
4309
4310 * Makefile.in (fns.o): Depend on md5.h.
4311
fbe57420
KS
43122003-09-25 Kim F. Storm <storm@cua.dk>
4313
4314 * window.c (set_window_buffer): Fix redisplay problems when
4315 switching between buffers with different display margin widths.
4316
ef6ae4ff
KS
43172003-09-23 Kim F. Storm <storm@cua.dk>
4318
4319 * process.c (set_socket_option): Fix :bindtodevice option.
4320 (Fset_network_process_option): Update process contact list when
4321 setting option succeeds.
4322 (Fmake_network_process): Doc fix.
4323
68e03c1c
DL
43242003-09-23 Dave Love <fx@gnu.org>
4325
7146d1c1 4326 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 4327
a6eeaa81 43282003-09-22 Eli Zaretskii <eliz@gnu.org>
2f809aae
EZ
4329
4330 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
4331 color mode is an integer number (it could be -1).
4332
8fe7d8c8
RS
43332003-09-22 Richard M. Stallman <rms@gnu.org>
4334
4335 * intervals.c (graft_intervals_into_buffer): Correct the main loop
4336 in the case where OVER is longer than UNDER.
4337
2f71b5ea
MY
43382003-09-22 Masatake YAMATO <jet@gyve.org>
4339
7146d1c1 4340 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 4341 `vertical_type'.
7146d1c1 4342
0c4da023
KS
43432003-09-21 Kim F. Storm <storm@cua.dk>
4344
4345 * frame.c (Vdefault_frame_scroll_bars): New variable.
4346 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
4347 (syms_of_frame): DEFVAR_LISP it, and initialize according to
4348 window-system default scroll bar position.
4349
b648413b
KS
4350 * window.c (Fwindow_scroll_bars): Doc fix.
4351
8f5b9e34
JD
43522003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4353
854c1a59 4354 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 4355
b0f23edf
RS
43562003-09-19 Richard M. Stallman <rms@gnu.org>
4357
4358 * atimer.h: Don't include lisp.h.
4359 (P_): Define it here (as well as elsewhere).
4360
4361 * print.c (Fprin1_to_string): Move the PRINTPREPARE
4362 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
4363
4364 * data.c (Fvariable_binding_locus): New function.
4365 (syms_of_data): defsubr it.
4366 (Flocal_variable_p): Delete duplicate call to indirect_variable.
4367
e1283999
DL
43682003-09-18 Dave Love <fx@gnu.org>
4369
ad5f3636
DL
4370 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
4371
e1283999
DL
4372 * process.c (Fnetwork_interface_info): Fix type error.
4373 (Fnetwork_interface_list): Doc fix.
4374 (read_process_output, read_process_output): Delete unused var.
4375
b8c7fd71
KS
43762003-09-17 Kim F. Storm <storm@cua.dk>
4377
4378 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
4379 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
4380 (Fnetwork_interface_info): Check that ifreq struct has required
4381 fields before accessing them; this requires that those fields are
4382 defined as macros, which may be too restrictive on some platforms,
4383 but it is better than failing on other platforms.
4384 (syms_of_process): Only defsubr above fns when included.
4385
11e0a411
DL
43862003-09-17 Dave Love <fx@gnu.org>
4387
4388 * unexalpha.c: Don't include varargs.h.
4389
e9c50801
KS
43902003-09-17 Kim F. Storm <storm@cua.dk>
4391
4392 * process.c (Fset_process_sentinel): Add sentinel to childp plist
4393 for network process.
4394 (socket_options): Add `:' prefix to option names. Add optbit field.
4395 (set_socket_option): Remove no_error arg and special handling of s < 0.
4396 Return 1<<optbit for known option, 0 for unknown.
4397 Do not interpret 0 as false for boolean option (only nil).
4398 Pass failed option and value to report_file_error.
7146d1c1 4399 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
4400 (Fset_network_process_option): New function to set just one option.
4401 (Fmake_network_process): Allow :coding arg to be a cons.
4402 Allow :server arg to be an integer specifying backlog size.
4403 Remove :options arg, and allow options to be specified directly
4404 as :KEY, VALUE pairs. Parse these options before binding socket.
4405 As before, :reuseaddr t is default for a server process, but this
4406 can now be disabled by specifying :reuseaddr nil.
4407 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
4408 (init_process): Availability of network options is now checked with
4409 simpler syntax (featurep 'make-network-process :OPTION); use loop to
4410 setup features.
4411 (syms_of_process): Fix defsubr's for the replaced functions.
4412
a0fc3644
DL
44132003-09-16 Dave Love <fx@gnu.org>
4414
4415 * Makefile.in: Depend on coding.h.
4416
6df2a645
KS
44172003-09-14 Kim F. Storm <storm@cua.dk>
4418
4419 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
4420 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
4421 (syms_of_process): Defsubr them.
4422
4423 * config.in: Regenerate.
7146d1c1
SM
4424
44252003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
4426
4427 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
4428 * m/news-r6.h (XUNMARK): Remove.
4429 * m/mips.h (XUNMARK): Remove.
4430 * m/mips-siemens.h (XUNMARK): Remove.
4431 * m/iris4d.h (XUNMARK): Remove.
4432 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
4433
0930c1a1
SM
44342003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
4435
31003b9e
SM
4436 * lisp.h (VALBITS): Don't remove 1 for the markbit.
4437 (union Lisp_Object): Use unsigned int for types. Remove markbit.
4438 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
4439 (XTYPE): Use unsigned right-shift.
4440 (XMARKBIT, XMARK, XUNMARK): Remove.
4441
0930c1a1
SM
4442 * alloc.c (init_intervals, init_symbol, init_marker):
4443 Don't preallocate anything.
4444 (Fgarbage_collect, mark_object): Ignore the markbit.
4445
4446 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
4447
19bb0fcd 44482003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
4449
4450 * xdisp.c (pint2hrstr): New function.
4451 (decode_mode_spec): Add `%i' and `%I' specs.
4452 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
4453 for `mode-line-format'.
4454
03bb6a06
AS
44552003-09-07 Andreas Schwab <schwab@suse.de>
4456
4457 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
4458 avoid warning.
4459
a6eeaa81 44602003-09-07 Eli Zaretskii <eliz@gnu.org>
2063d89c 4461
0930c1a1 4462 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 4463
ed159bbf
KS
44642003-09-03 Kim F. Storm <storm@cua.dk>
4465
4466 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
4467 change (superseded by 2002-08-30 change); the default blink-off
4468 cursor is now again "no cursor".
4469
fe64a394
JR
44702003-09-01 Jason Rumney <jasonr@gnu.org>
4471
4472 * makefile.w32-in (alloca.o): Remove.
4473 (coding.o): Depend on intervals.h
4474 (emacs.o, bytecode.o): Depend on window.h
4475
c0175e24
DL
44762003-09-01 Dave Love <fx@gnu.org>
4477
4478 * Makefile.in (alloca.o): Remove commands.
4479 (coding.o): Depend on intervals.h composite.h window.h.
4480 (emacs.o): Depend on window.h keyboard.h keymap.h.
4481 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
4482 (bytecode.o): Depend on window.h.
4483
a24d4cb2
JR
44842003-08-31 Jason Rumney <jasonr@gnu.org>
4485
4bc2315e
JR
4486 * w32term.c (w32_per_char_metric): Allow cached metrics to be
4487 returned even when font_type is unknown.
4488
a24d4cb2
JR
4489 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
4490
9d35adc7
JD
44912003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4492
4493 * xterm.c (x_term_init): Initialize new fields in x_display_info.
4494
4495 * xterm.h (struct x_display_info): Add red/green/blue_bits and
4496 *_offset.
4497
4498 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
4499 calculate pixel value.
4500
6f68b035
GM
45012003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
4502
0930c1a1
SM
4503 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
4504 Don't tell redisplay display is accurate when it's actually been
4505 paused for pending input.
6f68b035 4506
4828b4d7
RS
45072003-08-29 Richard M. Stallman <rms@gnu.org>
4508
4509 * dispnew.c (adjust_glyph_matrix): Call window_box
4510 whenever W is nonzero.
4511
4512 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
4513 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 4514 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
4515 Use indirect_variable to trace thru variable aliases.
4516
4517 * config.in: Updated.
4518
4519 * callint.c (Fcall_interactively): Save and restore
4520 Vthis_command, Vthis_original_command, real_this_command,
4521 and current_kboard->Vlast_command.
4522
4523 * abbrev.c (Fexpand_abbrev): Insert before deleting.
4524
e019878d
GM
45252003-08-29 Gerd Moellmann <gerd@gnu.org>
4526
4527 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
4528
85478bc6
KH
45292003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
4530
0930c1a1 4531 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
4532 (decode_coding_sjis_big5): Likewise.
4533
07ce82d3
JR
45342003-08-27 Jason Rumney <jasonr@gnu.org>
4535
d3703de3
JR
4536 * w32.c (sys_pipe): Protect against file descriptor overflow.
4537
ee4a01d1
JR
4538 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
4539
07ce82d3
JR
4540 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
4541
a64387ee 45422003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
72d19c66
LK
4543
4544 * xfns.c (Vgtk_version_string): New variable.
4545 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
4546
a6eeaa81 45472003-08-24 Eli Zaretskii <eliz@gnu.org>
5459e42a 4548
0930c1a1 4549 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 4550
5459e42a
EZ
4551 * Makefile.in (msdos.o): Depend on intervals.h.
4552
0930c1a1 4553 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 4554
231d6cfb
JD
45552003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4556
4557 * xterm.h (struct x_display_info): New fields: client_leader_window
4558 and Xatom_wm_client_leader.
4559
4560 * xterm.c (x_initialize): Move call to x_session_initialize to ...
4561 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
4562
4563 * xsmfns.c (create_client_leader_window): New function.
4564 (x_session_initialize): Call create_client_leader_window, take
4565 dpyinfo as argument.
4566
4567 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
4568
4569 * Makefile.in (xsmfns.o): Add more depenedencies.
4570
afa88464
DL
45712003-08-21 Dave Love <fx@gnu.org>
4572
4573 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
4574
f730033e
KH
45752003-08-21 Kenichi Handa <handa@m17n.org>
4576
4577 * term.c (term_init): Fix previous change; don't rely on the
4578 length of `buffer' if TERMINFO is defined.
4579
6dca786c
DL
45802003-08-20 Dave Love <fx@gnu.org>
4581
4582 * atimer.h: Include lisp.h.
4583
4584 * lisp.h (EMACS_LISP_H): New.
4585 (popup_activated_flag): Don't declare.
4586
4587 * alloca.c: Some merging with gnulib. Change logic and doc
4588 concerning (x)malloc/(x)free -- no longer Emacs-specific.
4589 [DO_BLOCK_INPUT]: Don't include lisp.h.
4590 (xmalloc, xfree): Declare.
4591 (malloc): Don't declare.
4592
0930c1a1 4593 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
4594 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
4595 atimer.h, blockinput.h.
4596
4597 * alloc.c (lisp_align_malloc): Change type of `aligned'.
4598
4599 * alloca.s: Removed.
4600
3a06a6d9
RS
46012003-08-19 Gerd Moellmann <gerd@gnu.org>
4602
4603 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
4604 use -lncurses.
4605
4606 * term.c (term_init): Use a buffer of size 4096 for tgetent since
4607 FreeBSD returns something longer than 2044. Abort if the end of
4608 the buffer is overwritten.
4609
27eeee55
MB
46102003-08-19 Miles Bader <miles@gnu.org>
4611
4612 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
4613
2f297815
GM
46142003-08-19 Gerd Moellmann <gerd@gnu.org>
4615
f4446bbf
GM
4616 * alloc.c (lisp_align_malloc): Check for memory full when
4617 allocating ablocks, which also avoids freeing a pointer into an
4618 ablocks structure.
4619
4620 * puresize.h (BASE_PURESIZE): Increase to 1100000.
4621
0930c1a1 4622 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 4623
0e7d7aae
RS
46242003-08-16 Richard M. Stallman <rms@gnu.org>
4625
4626 * editfns.c (Fencode_time): Doc fix.
4627
46282003-08-16 David Ponce <david@dponce.com>
4629
4630 * fileio.c (Fwrite_region): Fix conditional expression to issue
4631 the right message.
4632
46332003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
4634
4635 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 4636 Set default value to 1.
0e7d7aae 4637
5d551295
KH
46382003-08-15 Kenichi Handa <handa@m17n.org>
4639
4640 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
4641 what autoscaled.
4642 (best_matching_font): Once we find a better scalable font, set
4643 non_scalable_has_exact_height_p to 1.
4644 (try_font_list): Call try_alternative_families to try any family
4645 with the given registry.
4646
1661e56b
AS
46472003-08-09 Andreas Schwab <schwab@suse.de>
4648
f29181dc
AS
4649 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
4650
1661e56b
AS
4651 * print.c (print_string): Fix printing of multibyte string with
4652 nontrivial printcharfun.
4653
465aa50a
JD
46542003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4655
4656 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
4657
4658 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
4659
e430e5ba
KH
46602003-07-31 Kenichi Handa <handa@m17n.org>
4661
4662 * process.c (read_process_output): Return the actually read bytes
4663 instead of the result of decoding.
4664
97e7188e
KH
46652003-07-31 Kenichi Handa <handa@m17n.org>
4666
4667 * xterm.h (struct x_bitmap_record): New member have_mask.
4668
4669 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
4670 to 0.
4671 (x_create_bitmap_from_file): Likewise.
4672 (x_destroy_bitmap): Check have_mask member before freeing a mask.
4673 (x_destroy_all_bitmaps): Likewise.
4674 (x_create_bitmap_mask): Set have_mask member to 1.
4675
b53094d6
RS
46762003-07-30 Richard M. Stallman <rms@gnu.org>
4677
4678 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
4679
631f2082
JD
46802003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4681
4682 * gtkutil.c (xg_mark_data): Update calls to mark_object.
4683
c855f2ca
RS
46842003-07-29 Richard M. Stallman <rms@gnu.org>
4685
4686 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
4687 Conditionalize XIM code on HAVE_XIM.
4688
4689 * fns.c (Fclear_string): New function.
4690 (syms_of_fns): defsubr it.
4691
17e6d491
KH
46922003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
4693
0930c1a1 4694 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 4695
29ea8ae9
SM
46962003-07-22 Stefan Monnier <monnier@cs.yale.edu>
4697
4698 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
4699
4700 * buffer.c (delete_all_overlays): New function.
4701 * buffer.h (delete_all_overlays): Declare.
4702 * coding.c (run_pre_post_conversion_on_str):
4703 * print.c (temp_output_buffer_setup):
4704 * fileio.c (Finsert_file_contents):
4705 * minibuf.c (get_minibuffer): Use it.
4706
1dd7ccf2
AC
47072003-07-22 Andrew Choi <akochoi@shaw.ca>
4708
4709 * unexmacosx.c (unexec_regions_sort_compare):
4710 (unexec_regions_merge): New functions. Sort and merge unexec
4711 regions before dumping them.
4712
f57bd967
DL
47132003-07-22 Dave Love <fx@gnu.org>
4714
4715 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
4716
7cdee936
SM
47172003-07-21 Stefan Monnier <monnier@cs.yale.edu>
4718
4719 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
4720 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
4721 MARKBIT as the gcmarkbit for strings.
4722
e50886d3
RS
47232003-07-21 Richard M. Stallman <rms@gnu.org>
4724
4725 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
4726
29ea8ae9 4727 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
4728 (syms_of_fns): Corresponding change.
4729
4730 * alloc.c (syms_of_alloc): Doc fixes.
4731
47322003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
4733
4734 * s/netbsd.h: Use -Wl syntax.
4735
fdc39b59
RS
47362003-07-17 Richard M. Stallman <rms@gnu.org>
4737
4738 * xterm.c (xim_initialize): Redo 6/24 change.
4739
9c53385f
SM
47402003-07-15 Stefan Monnier <monnier@cs.yale.edu>
4741
4742 * buffer.c (copy_overlays): Use EMACS_INT for positions.
4743 (Fswitch_to_buffer): Don't signal an error when switching to the same
4744 buffer in a dedicated window.
4745
4746 * alloc.c: Use bitmaps for cons, as was done for floats.
4747 (init_float, init_cons): Let the normal code allocate the first block.
4748 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
4749 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
4750 New macros.
4751 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
4752 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
4753 (live_cons_p): Check the pointer is not past the `conses' array.
4754 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
4755 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
4756 (survives_gc_p): Use CONS_MARKED_P and simplify.
4757 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
4758
dde13196
PE
47592003-07-13 Paul Eggert <eggert@twinsun.com>
4760
4761 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
4762 puts it into BSS instead, at least on Solaris 8 and 9.
4763 This is a valid optimization, and it may occur on other platforms,
4764 so Emacs should not assume that initializing a static variable to
4765 zero puts it into data.
4766 * alloc.c (pure, staticvec):
4767 Initialize these arrays to nonzero, so that they're not
4768 put into BSS by that optimization.
4769
a801bc34
SM
47702003-07-13 Stefan Monnier <monnier@cs.yale.edu>
4771
4772 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
4773 (lisp_align_malloc): Use posix_memalign is available.
4774 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
4775 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
4776 for consistency. Update users.
4777
0c8b2afa
RS
47782003-07-13 Richard M. Stallman <rms@gnu.org>
4779
4780 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
4781
668c2ab0
JB
47822003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
4783
4784 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
4785 and use the Gtk+ function gtk_window_icon_from_file if available.
4786
4787 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
4788 handle mask of bitmaps.
4789 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
4790 mask property.
4791 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
4792
4793 * xterm.h (xg_set_icon): New function.
4794
800bebe3
RS
47952003-07-12 Paul Eggert <eggert@twinsun.com>
4796
4797 * unexelf.c (unexec): Consider a section to precede the .bss
4798 section if its addresses overlap that of .bss.
4799
69e38995
RS
48002003-07-12 Richard M. Stallman <rms@gnu.org>
4801
4802 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
4803
4804 * config.in (HAVE_CRTIN): Add #undef.
4805 (INLINE): Really inline only if OPTIMIZE is defined.
4806
4807 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
4808 END_FILES_1.
4809 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 4810 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
4811
4812 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
4813 (TERMINFO): Define.
4814 (LIBS_TERMCAP): Define.
4815 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
4816
4817 * xfns.c: Include libpng/png.h instead of png.h.
4818
f1d0c238
AS
48192003-07-11 Andreas Schwab <schwab@suse.de>
4820
4821 * buffer.c (modify_overlay): Update prototype.
4822 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
4823 Likewise.
4824
5f6bf5fe
SM
48252003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4826
4827 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
4828 (struct interval): Move to intervals.h.
4829 (struct Lisp_Marker): Use EMACS_INT for position info.
4830 (forward_point): Remove prototype of defunct function.
4831 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
4832 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
4833 (syms_of_textprop, set_text_properties): Remove prototypes that are
4834 already in intervals.h.
4835
4836 * intervals.h (struct interval): Move from lisp.h.
4837 Use EMACS_INT for position and size info.
4838
4839 * coding.c: Include intervals.h for Fset_text_properties.
4840
4841 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
4842 position and length information.
4843
2765b457
SM
48442003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4845
4846 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
4847 position and length information.
4848
2410d73a
SM
48492003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4850
4851 Change overlays_after and overlays_before so the overlays themselves
4852 are linked into lists, rather than using cons cells. After all each
4853 Lisp_Misc already occupies 5 words, so we can add a `next' field to
4854 Lisp_Overlay for free and save up one cons cell per overlay (not
4855 to mention one indirection when traversing the list of overlay).
4856
4857 * lisp.h (struct Lisp_Overlay): New field `next'.
4858
4859 * buffer.h (struct buffer): Change overlays_before and overlays_after
4860 from Lisp lists of overlays to pointers to overlays.
4861
4862 * buffer.c (overlay_strings, recenter_overlay_lists):
4863 Fix typo in eassert in last commit.
4864 (unchain_overlay): New function.
4865 (add_overlay_mod_hooklist): Use AREF.
4866 (copy_overlays, reset_buffer, overlays_at, overlays_in)
4867 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
4868 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
4869 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
4870 (report_overlay_modification, evaporate_overlays, init_buffer_once):
4871 Adjust to new type of overlays_(before|after).
4872
4873 * alloc.c (mark_object): Mark the new `next' field of overlays.
4874 (mark_buffer): Manually mark the overlays_(after|before) fields.
4875
4876 * coding.c (run_pre_post_conversion_on_str):
4877 * editfns.c (overlays_around):
4878 * xdisp.c (load_overlay_strings):
4879 * fileio.c (Finsert_file_contents):
4880 * indent.c (current_column):
4881 * insdel.c (signal_before_change, signal_after_change):
4882 * intervals.c (set_point_both):
4883 * print.c (temp_output_buffer_setup): Use new type for
4884 overlays_(before|after).
4885
04812929
SM
48862003-07-08 Stefan Monnier <monnier@cs.yale.edu>
4887
4888 * buffer.c (report_overlay_modification): Don't run hooks while
4889 traversing the list of overlays.
4890
4891 * buffer.h (struct buffer): Use an int for overlay_center.
4892 (overlays_at, evaporate_overlays, recenter_overlay_lists)
4893 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
4894
4895 * buffer.c (reset_buffer, recenter_overlay_lists)
4896 (adjust_overlays_for_insert, adjust_overlays_for_delete)
4897 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
4898 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
4899 (overlays_at, evaporate_overlays, recenter_overlay_lists)
4900 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
4901
4902 * xdisp.c (fast_find_position): Remove unused var.
4903
4904 * cmds.c (Qexpand_abbrev): New sym.
4905 (syms_of_cmds): Initialize it.
4906 (internal_self_insert): Use it to call expand-abbrev.
4907
2e7ecf15
KS
49082003-07-09 Kim F. Storm <storm@cua.dk>
4909
f9711de4 4910 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
2e7ecf15 4911 was configured with --without-xim.
42f81f64 4912 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 4913
c6de56a0
RS
49142003-07-07 Richard M. Stallman <rms@gnu.org>
4915
4916 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
4917
4918 * alloc.c (Fgarbage_collect): Doc fix.
4919
b93fb365
KH
49202003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
4921
4922 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
4923
bfe1a3f7
SM
49242003-07-06 Stefan Monnier <monnier@cs.yale.edu>
4925
04812929
SM
4926 * minibuf.c (read_minibuf): UNGCPRO before returning.
4927 (Ftry_completion, Fall_completions): Doc fix.
4928
bfe1a3f7
SM
4929 * alloc.c (live_float_p): Check that p is not past the `floats' array,
4930 now that `floats' is not the last element of the struct any more.
4931
ee79d1aa
JR
49322003-07-06 Jason Rumney <jasonr@gnu.org>
4933
4934 * w32term.h (ClipboardSequence_Proc): New type.
4935
4936 * w32fns.c (clipboard_sequence_fn): New variable.
4937 (globals_of_w32fns): Initialize it.
4938
4939 * w32select.c (last_clipboard_sequence_number): New variable.
4940 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
4941 number if possible.
4942
49723c04
SM
49432003-07-06 Stefan Monnier <monnier@cs.yale.edu>
4944
4698665f
SM
4945 * m/amdx86-64.h (MARKBIT):
4946 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
4947 MARKBIT and ARRAY_MARK_FLAG any more.
4948
4949 * m/hp800.h (XSETMARKBIT):
4950 * m/sr2k.h (XSETMARKBIT):
4951 * lisp.h (XSETMARKBIT): Remove unused macro.
4952
49723c04
SM
4953 * lisp.h (mark_object): Change prototype.
4954
4955 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
4956 (last_marked): Change accordingly.
4957 (mark_interval, mark_maybe_object, mark_maybe_pointer)
4958 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
4959 (mark_buffer): Update calls to mark_object.
4960
4961 * bytecode.c (mark_byte_stack):
4962 * fns.c (sweep_weak_table):
4963 * keyboard.c (mark_kboards): Update calls to mark_object.
4964
1d660eca
JR
49652003-07-06 Jason Rumney <jasonr@gnu.org>
4966
4967 * alloc.c (struct ablock): Only include padding when there is some.
4968
618b5ae4
SM
49692003-07-04 Stefan Monnier <monnier@cs.yale.edu>
4970
4971 * alloc.c (ALIGN): Add casts to simplify usage.
4972 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
4973 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
4974 (struct ablock, struct ablocks): New types.
4975 (free_ablock): New global var.
4976 (lisp_align_malloc, lisp_align_free): New functions.
4977 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
4978 (struct float_block): Reorder and add gcmarkbits.
4979 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
4980 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
4981 (init_float, make_float): Use lisp_align_malloc.
4982 (free_float, live_float_p): Don't use `type' any more.
4983 (make_float): Use FLOAT_UNMARK to access to mark bit.
4984 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
4985 Use FLOAT_MARKED_P to access the mark bit.
4986 (pure_alloc): Simplify use of ALIGN.
4987 (mark_object): Use FLOAT_MARK to access the mark bit.
4988 (gc_sweep): Use new macros to access the float's mark bit.
4989 (init_alloc_once): Init free_ablock.
4990
4991 * lisp.h (struct Lisp_Float): Remove unused field `type'.
4992
3ef06d12
SM
49932003-06-27 Stefan Monnier <monnier@cs.yale.edu>
4994
4995 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
4996 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
4997 (allocate_buffer): Move.
4998 (string_bytes): Don't mask markbit of `size_byte'.
4999 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
5000 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
5001 Use the `size' field of buffers (rather than the `name' field) for
5002 the mark bit, as is done for all other vectorlike objects.
5003 Use the new macros to access the mark bit of vectorlike objects.
5004
e81043aa
RS
50052003-06-26 Richard M. Stallman <rms@gnu.org>
5006
5007 * puresize.h (BASE_PURESIZE): Increment base size.
5008
5009 * xdisp.c (fast_find_position): Enable Gerd's new definition.
5010
5011 * xterm.c (xim_initialize): Undo previous change.
5012
2d0834cc
SM
50132003-06-26 Stefan Monnier <monnier@cs.yale.edu>
5014
5015 * alloc.c (survives_gc_p): Simplify.
5016
5017 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
5018
5019 * window.c (Fset_window_dedicated_p): Simplify.
5020 (display_buffer_1): Don't raise the win from which minibuf was entered.
5021 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
5022 (Fminibuffer_selected_window): Simplify.
5023
5024 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
5025
5026 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
5027 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
5028
5029 * insdel.c (check_markers, adjust_markers_for_delete)
5030 (adjust_markers_for_insert, adjust_markers_for_replace)
5031 (prepare_to_modify_buffer, RESTORE_VALUE):
5032 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
5033 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
5034 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
5035 * alloc.c (Fmake_marker, free_marker, gc_sweep):
5036 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
5037 * editfns.c (save_excursion_restore, transpose_markers):
5038 * window.c (delete_window):
5039 * xdisp.c (message_dolog): Update for new types.
5040
d54ae3d8
JD
50412003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5042
a5f696ac
JD
5043 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
5044 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 5045 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
5046
5047 * frame.c (make_frame): Initialize default_face_done_p.
5048
5049 * frame.h (struct frame): Add default_face_done_p.
5050
d54ae3d8
JD
5051 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
5052 will be defined.
5053
2336fe58
SM
50542003-06-25 Stefan Monnier <monnier@cs.yale.edu>
5055
5056 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
5057 Initialize the new field `gcmarkbit'.
5058 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
5059 (mark_interval_tree): Don't mark the tree separately from the nodes.
5060 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
5061 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
5062 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
5063
5064 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
5065 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
5066 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
5067 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
5068 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
5069
bcea31c2
DL
50702003-06-24 Dave Love <fx@gnu.org>
5071
5072 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
5073
5074 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
5075 from gnulib.
5076
2601f59e
RS
50772003-06-21 Richard M. Stallman <rms@gnu.org>
5078
5079 * fileio.c (Fwrite_region): Alternate messages
5080 for append and partial write.
5081
5082 * keyboard.c (read_key_sequence): When converting upcase fn key to
5083 downcase, update fkey and keytran so `backspace' gets translated.
5084
5085 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
5086
5087 * process.c (wait_reading_process_input): Don't signal SIGIO
5088 in batch mode.
5089
b5d2c621
KH
50902003-06-17 Kenichi Handa <handa@m17n.org>
5091
5092 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
5093 composite.h.
5094
5095 * xselect.c: Don't include charset.h, coding.h, composite.h.
5096 (Qforeign_selection): New variable.
5097 (syms_of_xselect): Intern and static it.
5098 (selection_data_to_lisp_data): Return a unibyte string made from
5099 data with `foreign-selection' text property.
5100
6793bc63
SM
51012003-06-15 Stefan Monnier <monnier@cs.yale.edu>
5102
5103 * termhooks.h (EVENT_INIT): New macro.
5104
5105 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
5106
5107 * alloc.c (mark_kboards): Move to keyboard.c.
5108
5109 * keyboard.c (record_asynch_buffer_change, read_avail_input):
5110 * xterm.c (x_dispatch_event):
5111 * xmenu.c (find_and_call_menu_selection):
5112 * xdisp.c (handle_tool_bar_click):
5113 * w32menu.c (menubar_selection_callback):
5114 * sysdep.c (kbd_input_ast, read_input_waiting):
5115 * msdos.c (dos_rawgetc):
5116 * macterm.c (mac_check_for_quit_char):
5117 * macmenu.c (menubar_selection_callback):
5118 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
5119 data to kbd_buffer_store_event.
5120
b3ea810c
KS
51212003-06-15 Kim F. Storm <storm@cua.dk>
5122
5123 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 5124 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 5125
b8f75eda
KG
51262003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
5127
5128 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
5129
ba92ce48
KH
51302003-06-12 Kenichi Handa <handa@m17n.org>
5131
5132 * fileio.c (Fwrite_region): Save and restore restriction.
5133
b80263be
DL
51342003-06-12 Dave Love <fx@gnu.org>
5135
5136 * alloca.c (alloca): Declare arg as size_t.
5137
6793bc63
SM
5138 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
5139 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 5140
b23c0a83
DL
51412003-06-11 Dave Love <fx@gnu.org>
5142
5143 * search.c (shrink_regexp_cache): Use xrealloc.
5144 (syms_of_search): Use xmalloc.
5145
700e47c2
KS
51462003-06-10 Kim F. Storm <storm@cua.dk>
5147
5148 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
5149 Adjust phys_cursor.x to be relative to window box, rather than
5150 text area before checking -- to ensure cursor is redrawn when
5151 exposing window.
5152 Note: This also fixes a similar (older) bug if display margins
5153 are present.
5154
f11aa0b2
KH
51552003-06-06 Kenichi Handa <handa@m17n.org>
5156
5157 * coding.c (encoding_buffer_size): If coding->type is
5158 coding_type_ccl, double magnification on CRLF encoding.
5159
3d143690
JR
51602003-06-06 Jason Rumney <jasonr@gnu.org>
5161
5162 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
5163 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
5164
5165 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
5166 Mac too.
5167
f16205ca
DL
51682003-06-05 Dave Love <fx@gnu.org>
5169
b23c0a83
DL
5170 * strftime.c: Merge changes from gnulib.
5171
f16205ca
DL
5172 * mktime.c (__mktime_internal): Merge changes from gnulib
5173 involving year 69 and dst2.
5174
5175 Changes to merge with gnulib version and be consistent with the
5176 autoconf test:
5177
6793bc63
SM
5178 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
5179 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
5180 [HAVE_LOCALE_H]: Include locale.h.
5181 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
5182
9b87a0bc
KS
51832003-06-05 Kim F. Storm <storm@cua.dk>
5184
5185 * window.c (coordinates_in_window): Convert X and Y to window
5186 relative coordinates inside mode-line and header-line parts.
5187 Convert X and Y to margin area relative coordinates inside left
5188 and right display margin parts.
5189
5a8a15ec
JR
51902003-06-05 Jason Rumney <jasonr@gnu.org>
5191
5192 * w32fns.c (add_system_logical_colors_to_map): New function.
5193 (Fx_open_connection): Use it.
5194
01ed8ff1
SM
51952003-06-04 Stefan Monnier <monnier@cs.yale.edu>
5196
5197 * process.c (allocate_pty): Revert part of the previous patch.
5198 (Faccept_process_output): Simplify.
5199
b427b65d
JR
52002003-06-04 Jason Rumney <jasonr@gnu.org>
5201
5202 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
5203
5204 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
5205 (lispy_mouse_wheel_names): Remove.
5206 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
5207 Always define drag_and_drop_syms.
5208
5209 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
5210 WHEEL_EVENT events.
5211
914a8c47
SM
52122003-06-03 Stefan Monnier <monnier@cs.yale.edu>
5213
01ed8ff1
SM
5214 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
5215
914a8c47
SM
5216 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
5217
adcb132c
JD
52182003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5219
5220 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
5221 menu item label.
5222
be781fa7
RS
52232003-06-03 Richard M. Stallman <rms@gnu.org>
5224
5225 * window.c (Fwindow_edges): Doc fix.
5226 (Fwindow_pixel_edges, Fwindow_inside_edges)
5227 (Fwindow_inside_pixel_edges): New functions.
5228 (syms_of_window): defsubr them.
5229
5230 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
5231 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
5232
914a8c47
SM
52332003-06-02 Stefan Monnier <monnier@cs.yale.edu>
5234
5235 * dispnew.c (Fsit_for): Don't lie about the number of args.
5236
5b07197a
DL
52372003-06-02 Dave Love <fx@gnu.org>
5238
5239 * callproc.c: Use HAVE_FCNTL_H, not USG5.
5240 (syms_of_callproc) <process-environment>: Doc fix.
5241
5242 * doc.c: Use HAVE_FCNTL_H, not USG5.
5243
5244 * xfaces.c (font_rescale_ratio): Fix for K&R.
5245
5246 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
5247
5248 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
5249
5250 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
5251
5252 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
5253 (xg_create_frame_widgets): Use ENCODE_UTF_8.
5254
d7107586 5255 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
5256
5257 * xmenu.c (ENCODE_MENU_STRING): New.
5258 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
5259 Use it.
5260
5261 * coding.h (ENCODE_UTF_8): New.
5262 (Qutf_8): Declare.
5263
5264 * coding.c (Qutf_8): New.
5265 (syms_of_coding): Intern it.
5266
5267 * fns.c: Doc fixes.
5268
7335b336
KH
52692003-06-02 Kenichi Handa <handa@m17n.org>
5270
5271 * buffer.c (Fset_buffer_multibyte): Fix previous change.
5272
914a8c47
SM
52732003-06-01 Stefan Monnier <monnier@cs.yale.edu>
5274
5275 * lread.c (openp): Make sure STR is a string.
5276
9862c135
JR
52772003-06-01 David Ponce <david@dponce.com>
5278
5279 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
5280 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
5281
5282 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
5283 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
5284 (discard_mouse_events): Discard WHEEL_EVENT events too.
5285 (lispy_wheel_names, wheel_syms): New.
5286 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
5287 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
5288 defined.
914a8c47 5289 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
5290
5291 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
5292 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
5293 WHEEL_EVENT events.
5294
f984e73e
JPW
52952003-05-31 John Paul Wallington <jpw@gnu.org>
5296
5297 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
5298 timer are in lisp/emacs-lisp.
5299
1efcd78f
KH
53002003-05-31 Kenichi Handa <handa@m17n.org>
5301
458c8af4
KH
5302 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
5303 region when a buffer is changed to unibyte.
5304
1efcd78f
KH
5305 * charset.h (VALID_LEADING_CODE_P): New macro.
5306 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
5307
778e2804
KH
5308 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
5309 is nonzero, accept multibyte form of eight-bit-control chars.
5310 (decode_composition_emacs_mule): Likewise.
5311 (decode_coding_emacs_mule): Likewise.
5312 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
5313 multibyte form of eight-bit-control chars.
5314
5315 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
5316 (Finsert_file_contents): If coding-system-for-read is bound to
5317 Qauto_save_coding, use the coding system emacs-mule with special
5318 setting for recovering a file.
5319 (choose_write_coding_system): On auto saving, use the coding
5320 system emacs-mule with special setting for auto saving.
5321 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
5322
034060e4
KH
53232003-05-30 Kenichi Handa <handa@m17n.org>
5324
5325 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
5326 properly before calling ccl_driver.
5327
778e2804 5328 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4
KH
5329
5330 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
5331 nonzero.
5332 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
5333 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
5334
595f5aa5
GM
53352003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
5336
5337 * xfaces.c (realize_default_face): Do not abort if lface is
5338 non-existent - reverts change from 2003-05-19.
5339
103e0180
KH
53402003-05-29 Kenichi Handa <handa@m17n.org>
5341
5342 * coding.c (decode_coding_iso2022): Pay attention to the byte
5343 sequence of CTEXT extended segment, and retain those bytes as is.
5344
53452003-05-28 Kenichi Handa <handa@m17n.org>
5346
5347 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
5348 of CODING_REPLACEMENT_CHARACTER.
5349 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
5350 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
5351 check this flag on encoding.
5352 (encode_coding_sjis_big5): Check
5353 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
5354 (Fset_terminal_coding_system_internal): Set
5355 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
5356 instead of setting CODING_FLAG_ISO_SAFE flag in
5357 terminal_coding.flags.
5358
5359 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
5360 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
5361 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
5362
ff6a3bfb 53632003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 5364
ff6a3bfb
RS
5365 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
5366
5367 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 5368
1963c428
KS
53692003-05-28 Kim F. Storm <storm@cua.dk>
5370
5371 * xdisp.c (expose_window): Fix error in calculation of
5372 window relative coordinates of area to redisplay.
5373
2b5d4601
JR
53742003-05-27 Jason Rumney <jasonr@gnu.org>
5375
5376 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
5377
1c64a4a2
JB
53782003-05-27 David Ponce <david@dponce.com>
5379
5380 Handle W32 mouse wheel events as mouse click events, like in X.
5381
5382 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
5383 MOUSE_WHEEL_EVENT anymore.
5384
5385 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
5386 Scrolling down/up the mouse wheel is respectively mapped to mouse
5387 button 4 and 5.
5388 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
5389 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
5390 WM_MOUSEWHEEL events.
5391
2d031b89
AS
53922003-05-27 Andreas Schwab <schwab@suse.de>
5393
20464fdf
AS
5394 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
5395
2d031b89
AS
5396 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
5397 partially visible line.
5398
5399 * alloc.c (Fgarbage_collect): Fix last change.
5400
97bc76d4
JPW
54012003-05-26 John Paul Wallington <jpw@gnu.org>
5402
5403 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
5404
56613f06
SM
54052003-05-25 Stefan Monnier <monnier@cs.yale.edu>
5406
5407 * window.c (Fset_window_buffer): Add type of `keep_margins'.
5408 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
5409
5410 * window.h (window_box_text_cols): Declare.
5411
5412 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
5413 (x_draw_vertical_border): Remove unused var `f'.
5414
5415 * xfaces.c (build_scalable_font_name): Remove `unused var
5416 pixel_size' warning.
5417
5418 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
5419
5420 * unexelf.c (unexec): Remove `unused var n' warning.
5421
5422 * strftime.c (my_strftime_localtime_r): Remove `defined but
5423 unused' warning.
5424
5425 * process.c (allocate_pty): Remove `unused var stb' and
5426 `cp might be used uninitialized' warnings.
5427
5428 * dispnew.c (mode_line_string): Remove unused var `f'.
5429
5430 * coding.c (find_safe_codings): Remove unused var `i'.
5431
5432 * bytecode.c (Fbyte_code): Remove `unused val' warning.
5433
5434 * buffer.c (Fkill_buffer): Remove unused var `list'.
5435
5436 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
5437
93421a1f
JD
54382003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5439
5440 * frame.c (make_frame): Condition want_fullscreen with
5441 HAVE_WINDOW_SYSTEM.
5442
c4b8aebc
JB
54432003-05-25 Juanma Barranquero <lektu@terra.es>
5444
5445 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
5446 (Fwindow_scroll_bars): Fix typo in docstring.
5447
0416870b
KS
54482003-05-24 Kim F. Storm <storm@cua.dk>
5449
5450 The following changes serve several purposes:
5451
5452 1) Swap the position of fringes and display margins in windows, i.e.
5453 the fringes are now displayed between the margins and the text area
5454 (by default).
5455
5456 2) Allow fringe and scroll bar parameters to be set per-buffer and
5457 per-window (like display margins). Such settings are now stored
5458 in window configurations, preserved when frames are resized, and
9018a88e 5459 copied when windows are split vertically or horizontally.
0416870b
KS
5460 Several bugs related to display margins have been fixed.
5461
5462 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 5463
0416870b
KS
5464 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
5465 rather than FRAME_WIDTH (FRAME_FONT (f)).
5466
5467 5) Introduce a consistent naming of variables, members and macros
5468 depending on whether their value is measured in pixels or in
5469 canonical columns/lines. Pixel dimensions are named *_width and
5470 *_height, while canonical columns/lines are named *_cols and
5471 *_lines. Pixel positions are named *_x and *_y, while column/line
5472 positions are named *_col and *_line.
5473
5474 6) Consolidate more of the X, W32, and MAC gui code by moving
5475 common data into struct frame, and generalize it for the non-gui
5476 case by using suitable defaults.
5477
5478 7) Cleanup and consolidate the macros controlling frame and window
5479 layout into frame.h and window.h, and generalize the use of the
5480 various window_box_* functions (enhanced to handle the new fringe
5481 position and the per-window fringe and scroll bar settings).
5482
5483 * frame.h (struct frame): Rename members height to text_lines,
5484 width to text_cols, window_height to total_lines, window_width to
5485 total_cols, new_height to new_text_lines, new_width to
5486 new_text_cols. All uses changed.
5487 (struct frame): New members which consolidate common members of
5488 x_output, w32_output, and mac_output structures: left_pos,
5489 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
5490 win_gravity, size_hint_flags, border_width, internal_border_width,
5491 line_height, fringe_cols, left_fringe_width, right_fringe_width,
5492 want_fullscreen. All uses changed.
5493 (struct frame): New member column_width contaning the canonical
5494 column width, analogue to line_height. All uses changed.
5495 (struct frame): Rename members scroll_bar_pixel_width to
5496 config_scroll_bar_width, and scroll_bar_cols to
5497 config_scroll_bar_cols. All uses changed.
5498 (struct frame): New member scroll_bar_actual_width which
5499 consolidates and renames the vertical_scroll_bar_extra member of
5500 x_output, w32_output, and mac_output structures. All uses changed.
5501 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
5502 from x/w32/macterm.h files. All uses changed. Also change code
5503 which referred to f->output_data...->pixel_height.
5504 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
f63fd14e 5505 from x/w32/macterm.h files. All uses changed. Also change code
0416870b
KS
5506 which referred to f->output_data...->pixel_width.
5507 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
5508 Also change code which referred to f->height.
5509 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
5510 Also change code which referred to f->width.
5511 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
5512 to update new_text_lines and new_text_cols members directly.
5513 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
5514 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
5515 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
5516 FRAME_SCROLL_BAR_COLS. All uses changed.
5517 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
5518 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
5519 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
5520 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
5521 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
5522 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
5523 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
5524 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
5525 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
5526 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
5527 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
5528 return line_height member (it now has proper value also for
5529 non-window frames).
5530 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
5531 return new column_width member (rather than the default font width).
5532 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
5533 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
5534 from x/w32/macterm.h files. Unconditionally return corresponding
5535 member of frame structure (they now have proper values also for
5536 non-window frames).
5537 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
5538 Calculate return value from left and right widths.
5539 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
5540 internal_border_width member (has proper value for non-window frame).
5541 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
5542 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
5543 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
5544 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
5545 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
5546 consolidated from xterm.h, macterm.h, and w32term.h.
5547 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
5548 consolidated from xterm.h, macterm.h, and w32term.h.
5549 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
5550 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
5551 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
5552 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
5553 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
5554 consolidated from x/mac/w32term.h.
5555 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
5556 consolidated from x/mac/w32term.h.
5557 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
5558 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
5559 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
5560 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
5561
5562 * window.h (struct window): Rename members left to left_col,
5563 top to top_line, height to total_lines, width to total_cols,
5564 left_margin_width to left_margin_cols, right_margin_width to
5565 right_margin_cols, orig_height to orig_total_lines, orig_top to
5566 orig_top_line. All uses changed.
5567 (struct window): New members left_fringe_width, right_fringe_width,
5568 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
5569 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
5570 New macros primarily used to simplify other macros.
5571 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
5572 referred to XINT (w->width).
5573 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
5574 referred to XINT (w->height).
5575 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
5576 referred to XINT (w->width) * canon_x_unit.
5577 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
5578 referred to XINT (w->height) * canon_y_unit.
5579 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
5580 referred to XINT (w->left).
5581 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
5582 all uses and code that referred to XINT (w->left) + XINT (w->width).
5583 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
5584 referred to XINT (w->top).
5585 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
5586 referred to XINT (w->top) + XINT (w->height).
5587 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
5588 referred to XINT (w->left) * canon_x_unit.
5589 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
5590 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
5591 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
5592 referred to XINT (w->top) * canon_y_unit.
5593 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
5594 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
5595 (WINDOW_LEFTMOST_P): New macro.
5596 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
5597 All uses changed.
5598 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
5599 All uses changed.
5600 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
5601 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
5602 Do not exclude left fringe width.
5603 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
5604 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
5605 Do not exclude fringe widths.
5606 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
5607 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
5608 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
5609 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
5610 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
5611 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
5612 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
5613 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
5614 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
5615 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
5616 New macros. Change code which referenced corresponding
5617 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
5618 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
5619 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
5620 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
5621 allow per-window scroll-bar settings.
5622 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
5623 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
5624 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
5625 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
5626 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
5627 FRAME_SCROLL_BAR_WIDTH.
5628 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 5629 (WINDOW_SCROLL_BAR_AREA_X): New macros.
0416870b
KS
5630 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
5631 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
5632 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
5633 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
5634 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
5635 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
5636 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
5637 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
5638 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
5639 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
5640 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
5641 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
5642 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
5643 (window_from_coordinates): Update prototype.
5644 (Fset_window_buffer): Update EXFUN.
5645 (set_window_buffer): Update prototype.
9018a88e 5646
0416870b 5647 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 5648 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
5649 changed.
5650 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
5651 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
5652 internal_border_width is now set to 0 for non-window frames.
5653 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
5654 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
5655 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
5656 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
5657 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
5658 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
5659 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
5660 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
5661 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 5662 Move to window.h and renamed [see window.h changes].
0416870b
KS
5663 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
5664 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
5665 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
5666 Use WINDOW_TOTAL_LINES.
0416870b
KS
5667 (frame_update_line_height): Remove prototype.
5668
5669 * buffer.h (struct buffer): Rename members measured in columns:
5670 left_margin_width to left_margin_cols, right_margin_width to
5671 right_margin_cols. All uses changed.
5672 New members left_fringe_width, right_fringe_width,
5673 fringes_outside_margins for per-buffer fringe settings.
5674 New members scroll_bar_width and vertical_scroll_bar_type for
5675 per-buffer scroll bar settings.
5676
5677 * buffer.c (init_buffer_once): Set buffer_defaults and
5678 buffer_local_flags for new buffer-local variables
5679 left_fringe_width, right_fringe_width, fringes_outside_margins,
5680 scroll_bar_width, and vertical_scroll_bar_type.
5681 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
5682 default-* variables for them.
5683
5684 * dispnew.c: Make (many) trivial substitutions for renamed and
5685 new macros in dispextern.h, frame.h and window.h.
5686 (mode_line_string): No need to adjust width for mode lines, as it
5687 is already adjusted by the caller.
5688 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 5689
0416870b
KS
5690 * frame.c: Make (many) trivial substitutions for renamed and
5691 new macros in dispextern.h, frame.h and window.h.
5692 (make_frame): Initialize left_fringe_width, right_fringe_width,
5693 fringe_cols, scroll_bar_actual_width, border_width,
5694 internal_border_width, column_width, line_height, x_pixels_diff,
5695 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
5696 members with values suitable for a non-window frames.
5697
5698 * gtkutil.c: Make (many) trivial substitutions for renamed and
5699 new macros in dispextern.h, frame.h and window.h.
9018a88e 5700
0416870b
KS
5701 * indent.c: Make (few) trivial substitutions for renamed and
5702 new macros in dispextern.h, frame.h and window.h.
5703
5704 * keyboard.c: Make (many) trivial substitutions for renamed and
5705 new macros in dispextern.h, frame.h and window.h.
5706 (make_lispy_event): Use window positions returned from
5707 window_from_coordinates when constructing the lisp event for
5708 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
5709 (incorrect) values locally.
5710 (make_lispy_movement): Use window positions returned from
5711 window_from_coordinates when constructing the lisp event, rather
5712 than calculating (incorrect) values locally.
5713
5714 * scroll.c: Make (some) trivial substitutions for renamed and
5715 new macros in dispextern.h, frame.h and window.h.
5716
5717 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
5718 scroll-bars.
5719
5720 * sysdep.c: Make (few) trivial substitutions for renamed and
5721 new macros in dispextern.h, frame.h and window.h.
5722
5723 * term.c: Make (some) trivial substitutions for renamed and
5724 new macros in dispextern.h, frame.h and window.h.
5725
5726 * widget.c: Make (few) trivial substitutions for renamed and
5727 new macros in dispextern.h, frame.h and window.h.
5728
5729 * window.c: Make (many) trivial substitutions for renamed and
5730 new macros in dispextern.h, frame.h and window.h.
5731 (make_window): Initialize new members
5732 left_margin_cols, right_margin_cols, left_fringe_width,
5733 right_fringe_width, fringes_outside_margins, scroll_bar_width,
5734 and vertical_scroll_bar_type.
5735 (coordinates_in_window): Adapted to new fringe/margin positions
9018a88e 5736 and per-window fringes and scroll-bars.
0416870b 5737 Fix bug related to incorrectly adjusting coordinates by
9018a88e 5738 frame's internal_border_width (the effect normally negible since
0416870b
KS
5739 the internal_border_width is typically 0 or 1 pixel, but very
5740 noticeable for an internal_border_width of e.g. 25 pixels).
5741 Upon successful return (other than ON_NOTHING), the coordinates
5742 are now always properly converted to window relative for the
5743 given display element.
5744 (window_from_coordinates): Add new parameters wx and wy to
5745 return the window relative x and y position in the returned
5746 window and part. A null arg means, don't return the position.
5747 All callers changed.
5748 (adjust_window_margins): New function which may reduce the width
5749 of the display margins if a window's text area is too small after
5750 resizing or splitting windows.
5751 (size_window): Fix bug that did not account for display margin
5752 widths when checking the minimum width of a window; use
5753 adjust_window_margins.
5754 (set_window_buffer): Call Fset_window_fringes and
5755 Fset_window_scroll_bars to setup per-window elements.
5756 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
5757 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
5758 (e.g. after splitting a window or resizing the frame).
5759 All callers changed.
0416870b
KS
5760 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
5761 (Fsplit_window): Duplicate original window's display margin,
5762 fringe, and scroll-bar settings; then call Fset_window_buffer with
5763 KEEP_MARGINS non-nil. This fixes a bug which caused a split
5764 window to only preserve the display margins in one of the windows.
c4b8aebc 5765 When splitting horizontally, call adjust_window_margins on both
0416870b 5766 windows to ensure that the text area of the new windows is non too
f9711de4 5767 narrow. This fixes a bug which could cause Emacs to trap if the
0416870b
KS
5768 width of the split window was less than the width of the display
5769 margins.
9018a88e
SM
5770 (window_box_text_cols): Renamed from window_internal_width.
5771 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
5772 Fix bug that caused vertical separator to be subtracted also on
5773 window frames. Fix another bug that did not reduce the returned
5774 value by the columns used for display margins.
5775 (window_scroll_line_based): Fix bug related to scrolling too much
5776 when display margins are present (implicitly fixed by the fix to
5777 window_box_text_cols).
5778 (scroll_left, scroll_right): Fix bug related to scrolling too far
5779 by default when display margins are present (implicitly fixed by
5780 the fix to window_box_text_cols).
5781 (struct saved_window): Rename members left to left_col, top to
5782 top_line, width to total_cols, height to total_lines, orig_top to
5783 orig_top_line, orig_height to orig_total_lines. All uses changed.
5784 New members left_margin_cols, right_margin_cols,
5785 left_fringe_width, right_fringe_width, fringes_outside_margins,
5786 scroll_bar_width, and vertical_scroll_bar_type for saving
5787 per-window display elements.
5788 (Fset_window_configuration): Restore display margins, fringes,
5789 and scroll bar settings. This fixes a bug which caused display
5790 margins to be discarded when saving and restoring a window
5791 configuration.
5792 (save_window_save): Save display margins, fringes, and scroll bar
5793 settings. This fixes a bug which caused display margins to be
5794 discarded when saving and restoring a window configuration.
5795 (Fset_window_margins): Do nothing if display margins are not
5796 really changed. Otherwise, call adjust_window_margins to ensure
5797 the text area doesn't get too narrow. This fixes a bug which
f9711de4 5798 could cause Emacs to trap if setting display margins wider than
0416870b
KS
5799 the width of the window.
5800 (Fset_window_fringes): New defun to allow user to specifically set
5801 this window's fringe widths and position vs. display margins.
5802 (Fwindow_fringes): New defun to return window's actual fringe
5803 settings.
5804 (Fset_window_scroll_bars): New defun to allow user to specifically
5805 set this window's scroll bar width and position.
5806 (Fwindow_scroll_bars): New defun to return window's actual scroll
5807 bar settings.
5808 (compare_window_configurations): Also compare display margins,
5809 fringes, and scroll bar settings.
5810 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
5811
5812 * xdisp.c: Make (many) trivial substitutions for renamed and
5813 new macros in dispextern.h, frame.h and window.h.
5814 (window_box_width): Adapt to per-window fringes and scroll bars,
f63fd14e 5815 and new fringe vs. display margin position. Note that returned
0416870b
KS
5816 value is no longer guaranteed to be a whole multiple of the frame
5817 column width, since per-window fringes may now be any width.
5818 (window_box_left_offset): New function like window_box_left, but
5819 value is relative to left border of window (rather than frame).
5820 (window_box_right_offset): New function like window_box_right,
5821 but value is relative to left border of window.
5822 (window_box_left): Adapt to per-window fringes and scroll bars,
5823 and new fringe vs. display margin position. Simplify by using
5824 WINDOW_LEFT_EDGE_X and window_box_left_offset.
5825 (window_box): Allow null args for unnecessary return values;
5826 change/simplify relevant callers.
5827 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
5828 and new fringe vs. display margin position.
5829 Use window_box_left_offset and window_box_right_offset
0416870b 5830 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
5831 scroll bars, and new fringe vs. display margin position.
5832 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
5833 (draw_fringe_bitmap): Rework to handle per-window fringes and new
5834 fringe vs. display margin position.
5835 (hscroll_window_tree): Use window_box_width instead of window_box.
a64387ee
JB
5836 (redisplay_window): Adapt to per-window scroll bars.
5837 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
5838 bars, and new fringe vs. display margin position.
5839 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
a64387ee 5840 (x_clear_end_of_line): Adapt to per-window fringes and scroll
0416870b
KS
5841 bars, and new fringe vs. display margin position. Fix bug which
5842 increased total width of full_width rows by width of scroll bars
5843 although window's total width already includes that.
5844 (x_fix_overlapping_area): Simplify using window_box_left_offset.
5845 (expose_area): Simplify using window_box_left_offset.
5846 (x_draw_vertical_border): Handle per-window scroll bar settings,
5847 mixing windows with left, right and no scroll bars.
5848
5849 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
5850 where it's used in x_list_fonts (for clarity).
5851 (frame_update_line_height): Remove unused function; functionality
5852 is now done directly when setting the default font in x_set_font.
5853
5854 * xfns.c: Make (many) trivial substitutions for renamed and
5855 new macros in dispextern.h, frame.h and window.h.
5856
5857 * xmenu.c: Make (some) trivial substitutions for renamed and
5858 new macros in dispextern.h, frame.h and window.h.
5859
5860 * xterm.h (struct x_output): Move members left_pos, top_pos,
5861 border_width, pixel_height, pixel_width, line_height,
5862 internal_border_width, vertical_scroll_bar_extra,
5863 left_fringe_width, right_fringe_width, fringe_cols,
5864 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5865 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
5866 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5867 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5868 (PIXEL_WIDTH, PIXEL_HEIGHT)
5869 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5870 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5871 frame.h and renamed [see frame.h changes].
5872 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5873 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5874 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5875 and renamed [see frame.h changes].
9018a88e 5876
0416870b
KS
5877 * xterm.c: Make (several) trivial substitutions for renamed and
5878 new macros in dispextern.h, frame.h and window.h.
5879 (x_draw_glyph_string_box): Adapt to per-window fringes and
5880 scroll-bars.
5881 (scroll_run): Adapt to new fringe position.
5882 (glyph_rect): Use window coordinates returned from
5883 window_from_coordinates rather than frame_to_window_pixel_xy.
5884 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5885 scroll-bars.
5886 (handle_one_xevent): Simplify a USE_GTK conditional.
5887 (x_clip_to_row): Remove superfluous whole_line_p arg and code
5888 (fringes are now inside margins, i.e. always in the clipping area).
5889 All callers changed.
5890 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5891 directly, then call compute_fringe_widths. Don't call
5892 frame_update_line_height.
5893
5894 * w32term.h (struct w32_output): Move members left_pos, top_pos,
5895 border_width, pixel_height, pixel_width, line_height,
5896 internal_border_width, vertical_scroll_bar_extra,
5897 left_fringe_width, right_fringe_width, fringe_cols,
5898 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5899 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
5900 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5901 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5902 (PIXEL_WIDTH, PIXEL_HEIGHT)
5903 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5904 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5905 frame.h and renamed [see frame.h changes].
5906 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5907 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5908 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5909 and renamed [see frame.h changes].
9018a88e 5910
0416870b
KS
5911 * w32term.c: Make (several) trivial substitutions for renamed and
5912 new macros in dispextern.h, frame.h and window.h.
5913 (x_draw_glyph_string_box): Adapt to per-window fringes and
5914 scroll-bars.
5915 (glyph_rect): Use window coordinates returned from
5916 window_from_coordinates rather than frame_to_window_pixel_xy.
5917 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5918 scroll-bars.
5919 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
5920 (fringes are now inside margins, i.e. always in the clipping area).
5921 All callers changed.
5922 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5923 directly, then call compute_fringe_widths. Don't call
5924 frame_update_line_height.
5925
5926 * w32console.c: Make (few) trivial substitutions for renamed and
5927 new macros in dispextern.h, frame.h and window.h.
5928
5929 * w32fns.c: Make (many) trivial substitutions for renamed and
5930 new macros in dispextern.h, frame.h and window.h.
5931
5932 * w32menu.c: Make (few) trivial substitutions for renamed and
5933 new macros in dispextern.h, frame.h and window.h.
5934
5935 * macterm.h (struct mac_output): Move members left_pos, top_pos,
5936 border_width, pixel_height, pixel_width, line_height,
5937 internal_border_width, vertical_scroll_bar_extra,
5938 left_fringe_width, right_fringe_width, fringe_cols,
5939 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5940 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
5941 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5942 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5943 (PIXEL_WIDTH, PIXEL_HEIGHT)
5944 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5945 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5946 frame.h and renamed [see frame.h changes].
5947 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5948 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5949 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5950 and renamed [see frame.h changes].
9018a88e 5951
0416870b
KS
5952 * macterm.c: Make (several) trivial substitutions for renamed and
5953 new macros in dispextern.h, frame.h and window.h.
5954 (x_draw_glyph_string_box): Adapt to per-window fringes and
5955 scroll-bars.
5956 (glyph_rect): Use window coordinates returned from
5957 window_from_coordinates rather than frame_to_window_pixel_xy.
5958 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5959 scroll-bars.
5960 (x_clip_to_row): Remove superfluous whole_line_p arg and code
5961 (fringes are now inside margins, i.e. always in the clipping area).
5962 All callers changed.
5963 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5964 directly, then call compute_fringe_widths. Don't call
5965 frame_update_line_height.
5966
5967 * macfns.c: Make (several) trivial substitutions for renamed and
5968 new macros in dispextern.h, frame.h and window.h.
9018a88e 5969 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
5970
5971 * macmenu.c: Make (few) trivial substitutions for renamed and
5972 new macros in dispextern.h, frame.h and window.h.
5973
5974 * msdos.h (struct x_output): Remove members left_pos, top_pos,
5975 and line_height, and use corresponding new members in struct
5976 frame. All uses changed.
5977 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
5978 superseeded by corresponding macros in frame.h.
5979
5980 * msdos.c: Make (several) trivial substitutions for renamed and
5981 new macros in dispextern.h, frame.h and window.h.
5982 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 5983 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
5984 (internal_terminal_init): No need to initialize line_height here;
5985 it now defaults to 1.
5986
9018a88e
SM
59872003-05-24 Stefan Monnier <monnier@cs.yale.edu>
5988
5989 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
5990 dropping `down' events.
5991
016bd3c0
AS
59922003-05-24 Andreas Schwab <schwab@suse.de>
5993
5994 * coding.c (find_safe_codings): Fix last change.
5995
4dacadcc
TTN
59962003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
5997
5998 * xfns.c (x_window): Fix typo from 2003-05-21 change.
5999
319830ce
SM
60002003-05-23 Stefan Monnier <monnier@cs.yale.edu>
6001
9018a88e
SM
6002 * xdisp.c (display_mode_element): Increase max depth.
6003 Simplify the error handling code. Use a different error string
6004 for the case where we hit the depth limit.
6005
319830ce
SM
6006 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
6007
6008 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
6009
60102003-05-21 Stefan Monnier <monnier@cs.yale.edu>
6011
6012 * intervals.c (get_local_map): Don't get char-property of previous
6013 point any more: get_pos_property already does it and better.
6014
c67de8ba
DL
60152003-05-21 Dave Love <fx@gnu.org>
6016
6017 [Merged from unicode branch.]
6018
6019 * xfns.c (x_window, x_window): Use use_xim.
6020
6021 * xterm.c (use_xim): Initialize.
6022 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
6023 (x_term_init): Maybe set use_xim.
6024
6025 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
6026
edd3ff1d
JR
60272003-05-21 Jason Rumney <jasonr@gnu.org>
6028
6029 * unexw32.c (_start): Remove _fmode initialization.
6030
6031 * emacs.c (main) [WINDOWSNT]: Move it here.
6032
463f55ee
DL
60332003-05-20 Dave Love <fx@gnu.org>
6034
6035 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
6036
af253914
RS
60372003-05-19 Richard M. Stallman <rms@gnu.org>
6038
6039 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
6040 as value for QCfont attribute.
6041 (realize_default_face): lface should already exist; crash if not.
6042 Specify 0 for FORCE_P when calling set_lface_from_font_name.
6043
6044 * frame.c (Fignore_event): Doc fix.
6045
1d211019
KH
60462003-05-19 Kenichi Handa <handa@m17n.org>
6047
6048 * coding.c (decode_coding_string): Handle post-read-conversion
6049 even if the coding doesn't require decoding.
6050
4dd68254
RS
60512003-05-18 Richard M. Stallman <rms@gnu.org>
6052
6053 * callproc.c (Fcall_process_region): Doc fix.
6054
14d87dc9
SM
60552003-05-17 Stefan Monnier <monnier@cs.yale.edu>
6056
deca5d96
SM
6057 * lread.c (Fload): Print a message if package is obsolete.
6058
14d87dc9
SM
6059 * window.c (Fselect_window): Add optional `norecord' arg.
6060 (select_window_1): Fold into Fselect_window.
6061 (select_window_norecord): New function.
6062 (temp_output_buffer_show): Use it. Preserve current buffer.
6063
6064 * window.h (Fselect_window): Update declaration.
6065
6066 * window.c (delete_window, Fother_window, Fset_window_configuration):
6067 * minibuf.c (read_minibuf):
6068 * macterm.c (x_new_focus_frame):
6069 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
6070 * callint.c (Fcall_interactively):
6071 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
6072
6073 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
6074
78f52183
DK
60752003-05-17 David Kastrup <dak@gnu.org>
6076
6077 * process.c (read_process_output): Back out change from 2003-03-09.
6078
14d87dc9
SM
60792003-05-17 Stefan Monnier <monnier@cs.yale.edu>
6080
6081 * editfns.c (get_pos_property): Don't assume that `object' = nil.
6082
6083 * textprop.c (text_property_stickiness): New arg `buffer'.
6084
6085 * intervals.h (text_property_stickiness): New arg `buffer'.
6086 (get_pos_property): Declare.
6087
6088 * intervals.c (get_local_map): Use get_pos_property, to obey
6089 stickiness and empty overlays.
6090 (create_root_interval, graft_intervals_into_buffer): Use BEG.
6091 (merge_properties, intervals_equal, merge_properties_sticky):
6092 Use XCAR, XCDR.
6093 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
6094
1fd1cc2f
RS
60952003-05-17 Richard M. Stallman <rms@gnu.org>
6096
4f9f637a
RS
6097 * minibuf.c (read_minibuf): If buffer is empty, record the default
6098 in the history.
6099 (Fminibuffer_complete_word): When deleting the overlap, take account
6100 of its real position.
6101
6102 * fns.c (map_char_table): Fix previous change.
6103
1fd1cc2f
RS
6104 * syntax.c (find_defun_start):
6105 When open_paren_in_column_0_is_defun_start,
6106 return beginning of buffer.
6107
6108 * lisp.h (map_char_table): Declare added arg.
6109
6110 * fns.c (map_char_table): New arg TABLE gets the master table.
6111 All calls changed.
6112 Process default and inheritance, resorting to Faref if necessary.
6113
6114 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
6115 (Faccessible_keymaps): Pass new arg to map_char_table.
6116
6117 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
6118
6119 * casetab.c (set_case_table): Pass new arg to map_char_table.
6120
6121 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
6122
6123 * lisp.h (specbinding_func): New typedef.
6124 (struct specbinding): Use specbinding_func, to put the `volatile'
6125 in the right place.
6126
6127 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
6128 to avoid GCC warning.
14d87dc9 6129
b4bd27c5
RS
61302003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
6131
14d87dc9 6132 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 6133
35fb885d
SM
61342003-05-15 Stefan Monnier <monnier@cs.yale.edu>
6135
6136 * keyboard.c (apply_modifiers): Don't fill the other cache.
6137
9a274fbd
SM
61382003-05-14 Stefan Monnier <monnier@cs.yale.edu>
6139
c55b5fad
SM
6140 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
6141
9a274fbd
SM
6142 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
6143 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
6144 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
6145 (Fset_window_configuration, Fcurrent_window_configuration)
6146 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
6147 (Fpos_visible_in_window_p, mark_window_cursors_off)
6148 (window_internal_height, window_internal_width, Frecenter)
6149 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
6150 (replace_buffer_in_all_windows, init_window_once, init_window)
6151 (syms_of_window, keys_of_window): Move from lisp.h.
6152 * lisp.h: Move window.c declarations to window.h.
6153
6154 * bytecode.c: Include window.h.
6155 * emacs.c: Include window.h.
6156
14d87dc9 6157 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
6158 (keyremap): Add `parent' field.
6159 (keyremap_step): Use it. Remove `parent' argument.
6160 (read_key_sequence): Setup and use the new `parent' field.
6161
fd93e331
SM
61622003-05-11 Stefan Monnier <monnier@cs.yale.edu>
6163
6164 * keyboard.c (adjust_point_for_property): Ensure termination.
6165
1c4001a1
SM
61662003-05-10 Stefan Monnier <monnier@cs.yale.edu>
6167
6168 * keyboard.c (follow_key): Remove dead variable `did_meta'.
6169 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
6170 duplicated handling of function-key-map and key-translation-map
6171 in read_key_sequence.
6172 (read_key_sequence): Use them.
6173
6174 * keyboard.c (adjust_point_for_property): Try harder to move point
6175 to the non-sticky end of an invisible property.
6176
6177 * xdisp.c (single_display_prop_intangible_p): Make `space' display
6178 property intangible as well.
6179
780379b1
AS
61802003-05-10 Andreas Schwab <schwab@suse.de>
6181
6182 * xmenu.c (single_menu_item): Change last parameter to void* to
6183 avoid warning.
6184
ca2de342
RS
61852003-05-09 Richard M. Stallman <rms@gnu.org>
6186
6187 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
6188 Bind Qinhibit_modification_hooks to t so there will be no GC.
6189 Rename local `tem' to `save_deactivate_mark'.
6190
6191 * eval.c (specpdl_ptr): Declare volatile.
6192 (unbind_to): Copy the whole binding and decrement specpdl_ptr
6193 before doing the work of unbinding it.
6194
6195 * lisp.h (struct specbinding): Declare elements volatile.
6196 (specpdl_ptr): Declare volatile.
6197
6198 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
6199
6200 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
6201 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
6202
347003be
DL
62032003-05-08 Dave Love <fx@gnu.org>
6204
6205 * coding.c (Vlast_coding_system_used): Doc fix.
6206
5adcec23
JR
62072003-05-07 Jason Rumney <jasonr@gnu.org>
6208
6209 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
6210 when system does not support them.
6211
5fe3b8a4
SM
62122003-05-05 Stefan Monnier <monnier@cs.yale.edu>
6213
6214 * fileio.c (Qwrite_region_annotate_functions): New var.
6215 (build_annotations): Use it to process the global part of the hook.
6216 (syms_of_fileio): Init and staticpro it.
6217
6218 * keyboard.c (safe_run_hooks_error): Display a message instead of
6219 silently ignoring the error.
6220
62212003-05-03 Stefan Monnier <monnier@cs.yale.edu>
6222
6223 * keyboard.c (input_available_signal): Mark static.
6224 (menu_bar_items): Use map_keymap.
6225 (menu_bar_one_keymap): Remove.
6226 (menu_bar_item): Adjust arglist (for use in map_keymap).
6227 Properly hide a second binding when not both are keymaps.
6228
6229 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
6230 (single_keymap_panes): Use it and map_keymap.
6231 (single_menu_item): Use skp as well.
6232
6233 * keymap.h (map_keymap_function_t): New type.
6234 (map_keymap): Declare.
6235
6236 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
6237 (map_keymap_call, Fmap_keymap): New functions.
6238 (syms_of_keymap): Defsubr map-keymap.
6239
4b1b4443
JD
62402003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6241
6242 * gtkutil.c (create_dialog, make_widget_for_menu_item)
6243 (make_menu_item, create_menus, xg_update_menu_item): Don't call
6244 ..._with_mnemonic functions for menu items.
6245
1f816871
KH
62462003-05-01 Kenichi Handa <handa@m17n.org>
6247
6248 * coding.c (coding_system_accept_latin_extra_p): Delete this
6249 function.
6250 (find_safe_codings): Pay attention to
6251 the property tranlsation-table-for-encode of each codings.
6252 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
6253
5ed6ba5b
SM
62542003-05-01 Stefan Monnier <monnier@cs.yale.edu>
6255
6256 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
6257
32c06229
SM
62582003-04-30 Stefan Monnier <monnier@cs.yale.edu>
6259
6260 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
6261
6262 * lisp.h (CHECK): Wrap args in parenthesis.
6263 (specbind): Fix doc: symbol = Qnil is not supported any more.
6264
6265 * bytecode.c (Fbyte_code) <unwind-protect>:
6266 Use Fprogn rather than 0 and Qnil.
6267
6268 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
6269 `double', and `triple' modifiers as well.
6270
ed3c3314
RS
62712003-04-30 Richard M. Stallman <rms@gnu.org>
6272
6273 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
6274
6275 * alloc.c (abort_on_gc): New variable.
6276 (Fgarbage_collect): Abort if abort_on_gc is set.
6277
6278 * lisp.h (abort_on_gc): Add decl.
6279
6280 * eval.c (Fsignal): Clear abort_on_gc.
6281
6282 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 6283 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
6284
6285 * xdisp.c (move_it_vertically_backward): Do the final big else
6286 even if nlines is 0.
6287
6288 * xdisp.c (redisplay_internal): Finish the per-frame loop
6289 even if redisplay is suspended by input.
6290
0b325c12
AC
62912003-04-24 Andrew Choi <akochoi@shaw.ca>
6292
6293 * macterm.c (x_list_fonts): Return all fonts that match if
6294 maxnames = -1.
6295
4e837cd0
KH
62962003-04-25 Kenichi Handa <handa@m17n.org>
6297
6298 * syntax.c (skip_chars): Fix previous change.
6299
9af7511a
KH
63002003-04-24 Kenichi Handa <handa@m17n.org>
6301
6302 * syntax.c (skip_chars): Make the code faster by using the common
6303 technique of *p, *stop, and *endp.
6304
e3b2c21f
JD
63052003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6306
6307 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 6308 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
6309 being updated.
6310
32c06229
SM
63112003-04-19 Stefan Monnier <monnier@cs.yale.edu>
6312
6313 * eval.c (Fapply): Undo last change and add a comment about why.
6314
c6464167
MB
63152003-04-18 Miles Bader <miles@gnu.org>
6316
6317 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
6318 pickier PARSE_MULTIBYTE_SEQ.
6319
e509f168
SM
63202003-04-17 Stefan Monnier <monnier@cs.yale.edu>
6321
6322 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
6323 Use XCDR, XCAR, CONSP.
6324 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
6325 (Fapply): Remove unnecessary GCPRO.
6326
6327 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
6328
6329 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
6330
6331 * buffer.h: Don't hardcode BEG==1.
6332
6333 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
6334
5ceea398
RS
63352003-04-16 Richard M. Stallman <rms@gnu.org>
6336
6337 * xdisp.c (try_window, try_window_reusing_current_matrix):
6338 When at end of window, set window_end_pos to Z-ZV.
6339
6340 * buffer.c (Foverlay_recenter): Doc fix.
6341
e509f168
SM
63422003-04-14 Stefan Monnier <monnier@cs.yale.edu>
6343
6344 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
6345
d243e605
AC
63462003-04-14 Andrew Choi <akochoi@shaw.ca>
6347
6348 * macterm.c (mac_check_for_quit_char): Don't check more often than
6349 once a second.
6350
6901b111
SM
63512003-04-11 Stefan Monnier <monnier@cs.yale.edu>
6352
6353 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
6354 specially, so that they can't hide an implicit switch-frame event.
6355 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
6356 (head_table): Use switch-frame as event_kind for select-window.
6357 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
6358
6359 * editfns.c (Fformat): Lisp_Object/int mixup.
6360 (format2): Remove unused var numargs.
6361
e301806f 63622003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 6363
6901b111 6364 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
6365 (Qafter_insert_file_set_coding): New variable.
6366 (syms_of_fileio): Initialize and staticpro it. Delete declaration
6367 for after-insert-file-adjust-coding-function.
6368 (Finsert_file_contents): Call Qafter_insert_file_set_coding
6369 instead of Vafter_insert_file_adjust_coding_function.
6370
38914424
KH
63712003-04-11 Kenichi Handa <handa@m17n.org>
6372
6373 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
6374
6375 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
6376 string. Callers changed.
6377
63782003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 6379
6901b111 6380 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 6381 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
6382 (Finsert_file_contents):
6383 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
6384 decode-format.
6385
f979dc05
JD
63862003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6387
6388 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
6389 get GtkAdjustment as widget now is a GtkRange.
6390
6391 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
6392 GtkRange to avoid memory leak.
6393
f8c6b4c2 63942003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 6395
50ebc53d
KH
6396 * xfaces.c (Vface_font_rescale_alist): New variable.
6397 (struct font_name): New member rescale_ratio.
6398 (font_rescale_ratio): New function.
6901b111 6399 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
6400 (better_font_p): On comparing point sized, pay attention to
6401 recale_ratio member of fonts.
6402 (build_scalable_font_name): Reflect font->rescale_ratio in the
6403 font name.
6901b111 6404 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 6405
cb98871c
KH
6406 * lread.c (read1): Before calling index, check if the 2nd
6407 arguemnt is in ASCII range.
6408
4773b8ca
RS
64092003-04-08 Richard M. Stallman <rms@gnu.org>
6410
b0ada147
RS
6411 * fileio.c (Ffile_symlink_p): Doc fix.
6412
6413 * editfns.c (Fformat): Translate positions of text properties
6414 in the format string to apply them to the result.
6415
4773b8ca
RS
6416 * fileio.c (Finsert_file_contents): Doc fix.
6417 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
6418
64192003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 6420
4773b8ca
RS
6421 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
6422
e8f25745 64232003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 6424
e8f25745
ST
6425 * mac.c (init_mac_osx_environment): Switch libexec and bin so
6426 that self-contained application finds libexec files.
6427
f8c6b4c2 64282003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 6429
6901b111
SM
6430 * coding.c (code_convert_region_unwind):
6431 Set Vlast_coding_system_used to the argument.
2310d84c
KH
6432 (code_convert_region): If post-read-conversion function changed
6433 the value of last-coding-sytem, keep the new value in
6434 coding->symbol so that it won't be overridden.
6435 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
6436 (coding_system_accept_latin_extra_p): New function.
6437 (find_safe_codings): Pay attention to characters registered in
6438 latin-extra-code-table.
2310d84c 6439
39c9a034
TTN
64402003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
6441
6442 * Makefile.in (md5.o): Add missing dependency info.
6443
eb67c5d6
RS
64442003-04-06 Richard M. Stallman <rms@gnu.org>
6445
6446 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
6447
6448 * marker.c (verify_bytepos): New function.
6449
6450 * intervals.c (set_intervals_multibyte_1): When becoming
6451 multibyte, adjust right and left child sizes to a whole set of
6452 characters. If an interval gets zero total-length, delete it.
6453 If an interval consists of just its children, delete one of them.
6454
6455 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
6456 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 6457
eb67c5d6
RS
6458 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
6459 All calls deleted.
6460 (lisp_malloc): Do the work here directly.
6461
b1f81fc5
JB
64622003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
6463
6464 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
6465 char tables.
6466
64672003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
6468
6469 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
6470 destructively change "%S" to "%s".
6471
774666fb
MB
64722003-04-03 Miles Bader <miles@gnu.org>
6473
6474 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
6475 always set.
6476
19c37f01
DL
64772003-04-01 Dave Love <fx@gnu.org>
6478
6479 * xfns.c (xpm_lookup_color): Grok "opaque".
6480
2f4b24c3
AC
64812003-03-31 Andrew Choi <akochoi@shaw.ca>
6482
6483 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
6484 parent window ID.
6485
6486 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
6487
6488 * macterm.h (struct mac_output): Define x_pixels_diff and
6489 y_pixels_diff.
b1f81fc5 6490
9443fcf6
JB
64912003-03-31 Juanma Barranquero <lektu@terra.es>
6492
6493 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
6494 blockinput.h and files included from it.
6495
e072891b
KS
64962003-03-31 Kim F. Storm <storm@cua.dk>
6497
6498 The following changes consolidates the common code related to
6499 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
6500 files into frame.c.
9443fcf6 6501
e072891b
KS
6502 * frame.c: Include blockinput.h.
6503 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
6504 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
6505 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
6506 related vars here.
6507 (struct frame_parm_table, frame_parms): New table for describing
6508 frame parameters and their associated Q-variable.
6509 The order of the parameters corresponds to the sequence of the
6510 frame_parm_handlers table in redisplay_interface.
6511 (x_fullscreen_move, x_set_frame_parameters)
6512 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
6513 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
6514 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6515 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
6516 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
6517 Generic functions for processing of frame parameters.
6518 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
6519 (display_x_get_resource, x_get_resource_string): Functions for
6520 generic access to X resources.
6521 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
6522 (x_default_parameter, Fx_parse_geometry): Functions for generic
6523 access to frame parameters.
6901b111
SM
6524 (x_figure_window_size): Generic calculation of frame size.
6525 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
6526 (syms_of_frame): Intern and staticpro frame parameter variables.
6527 Defvar_lisp Vx_resource_class and Vx_resource_name here.
6528 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 6529
e072891b
KS
6530 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
6531 parameter related vars defined in frame.c.
6532 (EMACS_CLASS): Define here.
6533 (enum FULLSCREEN_*): Define here.
6534 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
6535 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
6536 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
6537 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
6538 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
6539 (x_set_visibility, x_set_autoraise, x_set_autolower)
6540 (x_set_unsplittable, x_set_vertical_scroll_bars)
6541 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
6542 (x_figure_window_size): Add prototypes.
6543
6544 * dispextern.h (frame_parm_handler): New typedef.
6545 (struct redisplay_interface): New member frame_parm_handlers.
6546 (enum resource_types): Move declaration here.
6547 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
6548 (x_default_parameter): Add prototypes.
6549
6550 * window.c: Remove extern decl for frame parameter vars.
6551 (change_window_heights): New generic function;
6552 replaces x_change_window_heights. All users changed.
6553
6554 * window.h (change_window_heights): Add prototype.
6555
6556 * xfaces.c: Remove extern decl for frame parameter vars.
6557
6558 * xterm.h (EMACS_CLASS): Remove. Use generic define.
6559 (struct w32_display_info): Fix type of xrdb member.
6560 (enum FULLSCREEN_*): Remove.
6561 Remove prototypes for generic functions (in frame.h).
6562
6563 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
6564 parameters now defined in frame.h and frame.c.
f63fd14e 6565 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
6566 (enum x_frame_parms): Remove (bogus, unused enum).
6567 (check_x_display_info): Make non-static (for frame.c).
6568 (struct x_frame_parm_table, x_frame_parms): Remove.
6569 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
6570 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
6571 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6572 (x_change_window_heights, x_set_autoraise, x_set_autolower)
6573 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
6574 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
6575 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
6576 Remove. Use generic functions instead.
6577 (enum resource_types): Remove.
6578 (x_set_scroll_bar_default_width): New global function (for frame.c).
6579 (Fx_create_frame): Depend on x_figure_window_size to add space for
6580 toolbar and setup size_hint_flags.
6581 (x_frame_parm_handlers): New table for redisplay_interface.
6582 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 6583
e072891b 6584 * xterm.c: Remove unnecessary extern declarations.
f63fd14e 6585 (x_fullscreen_adjust): Remove. Use generic instead.
e072891b
KS
6586 (x_redisplay_interface): Add x_frame_parm_handlers member.
6587
6588 * w32gui.h (XrmDatabase): New (dummy) typedef.
6589
6590 * w32term.h (EMACS_CLASS): Remove. Use generic define.
6591 (struct w32_display_info): Fix type of xrdb member.
6592 (enum FULLSCREEN_*): Remove.
6593 (x_fullscreen_adjust): Remove prototype.
6594
6595 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
6596 parameters now defined in frame.h and frame.c.
f63fd14e 6597 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
6598 (enum x_frame_parms): Remove (bogus, unused enum).
6599 (check_x_display_info): Make non-static (for frame.c).
6600 (struct x_frame_parm_table, x_frame_parms): Remove.
6601 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
6602 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
6603 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6604 (x_change_window_heights, x_set_autoraise, x_set_autolower)
6605 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
6606 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
6607 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
6608 Remove. Use generic functions instead.
6609 (enum resource_types): Remove.
6610 (x_set_scroll_bar_default_width): New global function (for frame.c).
6611 (Fx_create_frame): Depend on x_figure_window_size to add space for
6612 toolbar and setup size_hint_flags.
6613 (w32_frame_parm_handlers): New table for redisplay_interface.
6614 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 6615
e072891b
KS
6616 * w32term.c: Remove unnecessary extern declarations.
6617 (x_fullscreen_adjust): Remove. Use generic instead.
6618 (x_redisplay_interface): Add w32_frame_parm_handlers member.
6619
6620 * w32reg.c (x_get_string_resource): Use XrmDatabase.
6621
6622 * macgui.h (XrmDatabase): New (dummy) typedef.
6623
6624 * macterm.h (EMACS_CLASS): Remove.
6625 (struct mac_display_info): Add xrdb member.
6626 (struct mac_output): Add want_fullscreen member.
6627
6628 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
6629 parameters now defined in frame.h and frame.c.
f63fd14e 6630 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
6631 (check_x_display_info): Make non-static (for frame.c).
6632 (struct x_frame_parm_table, x_frame_parms): Remove.
6633 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
6634 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
6635 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6636 (x_change_window_heights, x_set_autoraise, x_set_autolower)
6637 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
6638 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
6639 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
6640 Remove. Use generic functions instead.
6641 (enum resource_types): Remove.
6642 (x_set_scroll_bar_default_width): New global function (for frame.c).
6643 (mac_frame_parm_handlers): New table for redisplay_interface.
6644 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 6645
e072891b
KS
6646 * macterm.c: Remove unnecessary extern declarations.
6647 (x_redisplay_interface): Add mac_frame_parm_handlers member.
6648
3e6a560b
KS
6649 * Makefile.in (frame.o): Add dependency on blockinput.h and files
6650 included from it (atimer.h and systime.h).
6651
7b7b454e
AS
66522003-03-30 Andreas Schwab <schwab@suse.de>
6653
6654 * xdisp.c (x_insert_glyphs): Fix swapped width and height
6655 parameters for shift_glyphs_for_insert.
6656
6657 * macterm.c (x_redisplay_interface): Add missing entry for
6658 draw_vertical_window_border.
6659
beb402de
KG
66602003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
6661
6662 * fileio.c (Fexpand_file_name): In the no-handler case, after
6663 expanding, look again for a handler and invoke it. This is needed
6664 for filenames like "/foo/../user@host:/bar/../baz" -- the first
6665 expansion produces "/user@host:/bar/../baz" which needs to be
6666 expanded again for the finame result "/user@host:/baz".
6667
b676f356
JD
66682003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6669
6670 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
6671 of area to be redrawn for better performance.
6672
3c671a56
SM
66732003-03-28 Stefan Monnier <monnier@cs.yale.edu>
6674
6675 * xterm.c (take_vertical_position_into_account): Remove.
6676 (xt_action_hook): Call set_vertical_scroll_bar if needed.
6677 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
6678 (xm_scroll_callback, x_create_toolkit_scroll_bar)
6679 (x_set_toolkit_scroll_bar_thumb): Simplify.
6680 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
6681 (XTread_socket): Remove unused var.
6682 (x_make_frame_invisible): Replace goto with else.
6683
6684 * xdisp.c (set_vertical_scroll_bar): New fun.
6685 (redisplay_window): Use it.
6686
84f2e615
RS
66872003-03-26 Richard M. Stallman <rms@gnu.org>
6688
6689 * xdisp.c (update_tool_bar): Recompute tool bar if
6690 update_mode_lines is set. Set w->update_mode_line
6691 only if the tool bar contents actually change.
6692 (update_menu_bar): Undo previous change.
6693
70b6104c
JD
66942003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6695
5fd6f727
JD
6696 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
6697 (xg_frame_set_char_size): Calculate scroll bar width before frame
6698 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
6699 (xg_separator_p): Check for all documented separator types.
6700 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
6701 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
6702
70b6104c
JD
6703 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
6704 so tool bar gets updated.
6705
d9b36d19
SM
67062003-03-26 Stefan Monnier <monnier@cs.yale.edu>
6707
6708 * data.c (store_symval_forwarding): Re-instate part of the code
6709 that was deleted with too much enthusiasm.
6710
67112003-03-25 Stefan Monnier <monnier@cs.yale.edu>
6712
6713 * data.c (store_symval_forwarding): Delete special read-only
6714 hack for type == -1, since we now use ->constant instead.
6715 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
6716
6717 * buffer.c (overlays_in): Declare static.
6718 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
6719 `constant' field rather than the variable's `type' field.
6720
365fa1b3
AC
67212003-03-24 Andrew Choi <akochoi@shaw.ca>
6722
6723 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
6724
6725 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
6726
6727 * fns.c [MAC_OSX]: Do not redefine vector.
6728
6729 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
6730
6731 * macgui.h: Remove definition of No_Cursor.
6732
d9b36d19 6733 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
6734
6735 * xdisp.c: Define No_Cursor.
6736 (x_write_glyphs, notice_overwritten_cursor)
6737 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
6738 (note_mouse_highlight): Remove Mac-specific code.
6739 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 6740
c0bcce6f
JPW
67412003-03-24 John Paul Wallington <jpw@gnu.org>
6742
6743 * xdisp.c (redisplay_window): If mini window's buffer is not
6744 empty, then redisplay it like other windows.
6745
a526b96c
KS
67462003-03-23 Kim F. Storm <storm@cua.dk>
6747
6748 * w32term.c (w32_draw_window_cursor): Fix last change.
6749
37ab321e
KH
67502003-03-23 Kenichi Handa <handa@m17n.org>
6751
a526b96c
KS
6752 * alloc.c (make_string_from_bytes, make_specified_string):
6753 Add `const' for the arg CONTENTS.
37ab321e
KH
6754
6755 * lisp.h (make_string_from_bytes, make_specified_string):
6756 Prototypes adjusted.
6757
7863d625
JD
67582003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6759
a526b96c 6760 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 6761
7863d625
JD
6762 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
6763 (XG_SB_RANGE): New define.
6764
6765 * gtkutil.c (xg_fixed_handle_expose): New function.
6766 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
6767 expose events.
6768 (xg_update_scrollbar_pos): Take two more arguments, left and width
6769 of scroll bar including borders.
6770 Clear left and right part outside scroll bar separately as some
6771 themes have bars that are not an even number of pixels.
d9b36d19 6772 Don't set reallocate_redraws, don't call
7863d625
JD
6773 gdk_window_process_all_updates.
6774 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
6775 so no need to change it. Calculate size and value with XG_SB_RANGE.
6776
d9b36d19
SM
6777 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
6778 Pass left and width of scroll bar including borders to
7863d625
JD
6779 xg_update_scrollbar_pos.
6780
af0ad939
TTN
67812003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
6782
6783 * Makefile.in: Make sure space precedes end-of-line backslashes.
6784
b22139fd
KS
67852003-03-22 Kim F. Storm <storm@cua.dk>
6786
6787 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
6788 Add generic versions here. Remove system specific versions
6789 defined elsewhere.
6790
6791 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
6792 Add prototypes.
6793
6e6410cf
KS
6794 * xterm.h (STORE_NATIVE_RECT): New macro.
6795
5c9cc435
KS
67962003-03-21 Kim F. Storm <storm@cua.dk>
6797
00c64fab
SM
6798 * xdisp.c (get_glyph_string_clip_rect):
6799 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
6800
6801 * dispextern.h (struct redisplay_interface): Add active_p
6802 argument to draw_window_cursor member. All uses changed.
6803
acd37560
KS
68042003-03-21 Kim F. Storm <storm@cua.dk>
6805
6806 The following changes consolidate code related to writing and
6807 inserting glyphs, exposing frame, the tool bar, the mouse face,
6808 the output cursor, and help echo from xterm.c, w32term.c and
6809 macterm.c into xdisp.c. It also generalizes the use of the
6810 window_part enum instead of using numeric values throughout.
af0ad939 6811
acd37560
KS
6812 * xdisp.c: Consolidate gui-independent code here.
6813 Include keymap.h.
6814 (Qhelp_echo): Import.
6815 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
6816 (help_echo_string, help_echo_window, help_echo_object)
6817 (previous_help_echo_string, help_echo_pos): Declare here.
6818 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
6819 (estimate_mode_line_height): Define here. Handle windowing
6820 systems directly (without using estimate_mode_line_height_hook).
6821 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
6822 (update_window_cursor, update_cursor_in_window_tree)
6823 (fast_find_position, fast_find_string_pos)
6824 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
6825 (expose_area, expose_line, expose_overlaps, expose_window)
6826 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
6827 declared static as they are only used locally in xdisp.c.
6828 (draw_glyphs): Rename from x_draw_glyphs and make static.
6829 (tool_bar_item_info, notice_overwritten_cursor): Make static.
6830 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
6831 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 6832 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
6833 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
6834 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
6835 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
6836 (note_mouse_highlight, x_clear_window_mouse_face)
6837 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
6838 (x_intersect_rectangles): New generic functions for use by xdisp.c
6839 and GUI front-ends.
6840 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
6841 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
6842
6843 * dispextern.h (Display_Info): Generic typedef for *_display_info.
6844 (NativeRectangle): Generic typedef for rectangle type.
6845 (enum window_part): Move here from window.c.
6846 (struct redisplay_interface): New members flush_display_optional,
6847 define_frame_cursor, clear_frame_area, draw_window_cursor,
6848 draw_vertical_window_border, shift_glyphs_for_insert.
6849 Rename member clear_mouse_face to clear_window_mouse_face.
6850 (estimate_mode_line_height_hook): Remove hook.
6851 (auto_raise_tool_bar_buttons_p): Don't declare extern.
6852 (tool_bar_item_info): Remove prototype.
6853 (help_echo_string, help_echo_window, help_echo_object)
6854 (previous_help_echo_string, help_echo_pos)
6855 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
6856 (x_stretch_cursor_p, output_cursor): Declare extern.
6857 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
6858 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
6859 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
6860 (display_and_set_cursor, set_output_cursor, x_cursor_to)
6861 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
6862 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
6863 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
6864 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
6865 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
6866 Add prototypes.
6867 (mode_line_string, marginal_area_string): Fix prototypes.
6868
6869 * window.c (enum window_part): Move to dispextern.h.
6870 (coordinates_in_window): Use enum window_part member names
6871 instead of numbers to describe return value.
6872 (struct check_window_data): Change part member to window_part.
6873 (check_window_containing): Return window_part unaltered.
6874 (window_from_coordinates): Change part arg from int to enum
6875 window_part. Allow part arg to be null. All users changed.
6876
6877 * window.h (window_from_coordinates): Fix prototype.
6878
6879 * term.c (estimate_mode_line_height): Move to xdisp.c.
6880
6881 * keyboard.c (make_lispy_event): Use enum window_part.
6882
6883 * dispnew.c (mode_line_string, marginal_area_string): Use enum
6884 window_part instead of int in arg list. Users changed.
6885
6886 * xterm.h (No_Cursor): Declare as None for X.
6887 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 6888
acd37560
KS
6889 * xterm.c: Remove consolidated defines and code.
6890 (BETWEEN): Remove unused macro.
6891 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
6892 (x_define_frame_cursor, x_clear_frame_area)
6893 (x_draw_window_cursor): New X-specific functions for RIF.
6894 (x_redisplay_interface): Add new members.
6895
6896 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
6897
6898 * w32term.h (struct w32_output): Remove cross_cursor member.
6899
6900 * w32term.c: Remove consolidated defines and code.
6901 (BETWEEN): Remove unused macro.
6902 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
6903 (w32_define_frame_cursor, w32_clear_frame_area)
6904 (w32_draw_window_cursor): New W32-specific functions for RIF.
6905 (w32_redisplay_interface): Add new members.
6906
a64387ee 6907 * w32gui.h (No_Cursor): Define as 0 for W32.
acd37560
KS
6908 (XRectangle): Add X compatible rectangle type.
6909 (NativeRectangle): Declare as RECT for W32.
6910 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
6911
6912 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
6913
6914 * w32console.c: Remove consolidated defines and code.
af0ad939 6915
acd37560
KS
6916 * msdos.h (Display_Info): Add generic typedef.
6917
6918 * msdos.c: Remove consolidated defines and code.
6919 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
6920
6921 * macterm.h (struct mac_output): Replace member cross_cursor by
6922 hand_cursor.
6923 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
6924
6925 * macterm.c: Remove consolidated defines and code.
6926 (BETWEEN): Remove unused macro.
6927 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
6928 (mac_define_frame_cursor, mac_clear_frame_area)
6929 (mac_draw_window_cursor): New Mac-specific functions for RIF.
6930 (x_redisplay_interface): Add new members.
6931
6932 * macgui.h (No_Cursor): Define as 0 for Mac.
6933 (XRectangle): Add X compatible rectangle type.
6934 (NativeRectangle): Declare as Rect for Mac.
6935 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
6936
204ccab1
KS
6937 * macfns.c (x_set_mouse_color): Setup hand_cursor.
6938 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 6939
9443fcf6 6940 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
6941 included from it. Add dependency on keymap.h.
6942
6943 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
6944
8ba01a70 69452003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
6946
6947 * fileio.c (Fexpand_file_name): Fix previous change.
6948
8ba01a70 69492003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
6950
6951 * fileio.c (Ffile_name_directory): Reconstruct file name by
6952 make_specified_string.
6953 (Ffile_name_nondirectory, Ffile_name_as_directory)
6954 (Fdirectory_file_name, Fexpand_file_name)
6955 (Fsubstitute_in_file_name): Likewise.
6956 (Fread_file_name): Compare decoded homedir with DIR and
6957 DEFAULT_FILENAME.
6958
6959 * alloc.c (make_specified_string): If NCHARS is negative, count
6960 the number of characters.
6961
19536747
JD
69622003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6963
de38ae5a
JD
6964 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
6965 all widgets.
6966
19536747
JD
6967 * gtkutil.h: Removed xg_ignore_next_thumb.
6968
37ab321e 69692003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
6970
6971 * coding.c (Vchar_coding_system_table): Remove this variable.
6972 (Vcoding_system_safe_chars): New variable.
6973 (intersection): Remove this function.
6974 (find_safe_codings): Don't use Vchar_coding_system_table, but try
6975 all codings in SAFE_CODINGS.
00c64fab 6976 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
6977 find_safe_codings. Get generic coding systems from
6978 Vcoding_system_safe_chars.
6979 (Fdefine_coding_system_internal): New function.
6980 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
6981 Initialize and staticpro Vcoding_system_safe_chars.
6982
17097258
JD
69832003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6984
2a2071c3
JD
6985 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
6986 equal old values before updating.
6987
17097258
JD
6988 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
6989
6990 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
6991
69922003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6993
6994 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
6995 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
6996 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
6997 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
6998 (xg_create_scroll_bar): Pass bar to button event callback.
6999 (xg_find_top_left_in_fixed): New function.
7000 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
7001 whole scroll bar area. Get old position with
7002 xg_find_top_left_in_fixed, calculate and only clear needed areas.
7003 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
7004 dragging is in progress. Calculate whole as for Motif.
7005 Remove code that saved last values. Call gtk_range functions to
7006 set scroll bar sizes.
7007
7008 * gtkutil.h: Removed xg_ignore_next_thumb.
7009
8cb9dfbf
JB
70102003-03-17 Juanma Barranquero <lektu@terra.es>
7011
7012 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
7013 and files included from it.
7014
00c64fab
SM
70152003-03-18 Stefan Monnier <monnier@cs.yale.edu>
7016
7017 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
7018 multiple occurrences of the same keymap under different prefixes.
7019 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
7020
c45bb3b2
JR
70212003-03-16 Jason Rumney <jasonr@gnu.org>
7022
7023 * w32gui.h: Use HDC for Display.
7024
7025 * w32term.c (w32_encode_char): Prevent double-byte chars from
7026 crashing Emacs.
7027
7028 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
7029 as binary.
7030
2a6d0874
JB
70312003-03-16 Juanma Barranquero <lektu@terra.es>
7032
7033 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
7034
03eb5fab
KS
70352003-03-16 Kim F. Storm <storm@cua.dk>
7036
7037 The following changes consolidate some of the gui-independent
7038 parts of the processing and drawing of "glyph strings" from
7039 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 7040
03eb5fab
KS
7041 * dispextern.h (struct glyph): Reduce face_id member from 22 to
7042 21 bits (this reduces number of faces from 4M to 2M).
7043 Replace W32 specific w32_font_type member (2 bits) by generic
7044 font_type member (3 bits) for portability.
7045 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
7046 (enum draw_glyphs_face): Define here.
7047 (struct glyph_string): Define here. Merge W32 and X versions.
7048 (struct redisplay_interface): New members per_char_metric,
7049 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
7050 (VCENTER_BASELINE_OFFSET): Define here.
7051 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
7052 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
7053
7054 * xdisp.c: Consolidate gui-independent "glyph string" code here.
7055 (dump_glyph_string): Moved here.
7056 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
7057 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
7058 (fill_composite_glyph_string, fill_glyph_string)
7059 (fill_image_glyph_string, fill_stretch_glyph_string)
7060 (left_overwritten, left_overwriting, right_overwritten)
7061 (right_overwriting, get_char_face_and_encoding)
7062 (set_glyph_string_background_width, compute_overhangs_and_x)
7063 (append_glyph, append_composite_glyph, produce_image_glyph)
7064 (take_vertical_position_into_account, append_stretch_glyph)
7065 (produce_stretch_glyph): New generic functions (based on X version).
7066 Call platform specific functions through rif.
7067 (INIT_GLYPH_STRING): New macro, hides W32 details.
7068 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
7069 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
7070 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
7071 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
7072 (notice_overwritten_cursor):
7073 Generic functions exported to platform modules. Users changed.
7074
7075 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
7076 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
7077 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 7078 New macros for consolidated code.
2a6d0874 7079
03eb5fab
KS
7080 * xterm.c: Remove consolidated defines and code.
7081 (x_per_char_metric, x_encode_char)
7082 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
7083 (x_redisplay_interface): Add new members.
7084
7085 * w32gui.h (Display): Add dummy typedef for consolidation.
7086 (XChar2b): Define alias for wchar_t for consolidation.
7087 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
7088
7089 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 7090 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
7091 New macros for consolidation.
7092
fad49844 7093 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
7094 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
7095 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
7096 (w32_per_char_metric): Change font_type arg to int for RIF.
7097 (w32_encode_char): Return int according to RIF requirements.
7098 (w32_compute_glyph_string_overhangs): Adapt to RIF.
7099 (w32_get_glyph_overhangs): New function for RIF. Uses generic
7100 x_get_glyph_overhangs.
7101 (w32_redisplay_interface): Add new members.
7102
7103 * macgui.h (XChar2b): Move typedef here for consolidation.
7104 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
7105
7106 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
7107 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
7108 consolidation.
7109
7110 * macterm.c: Remove consolidated defines and code.
7111 (mac_per_char_metric): New function for RIF.
00c64fab 7112 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
7113 (mac_compute_glyph_string_overhangs): Adapt for RIF.
7114 (x_redisplay_interface): Add new members.
7115
00c64fab
SM
71162003-03-15 Stefan Monnier <monnier@cs.yale.edu>
7117
7118 * keymap.c (Vmenu_events): New var.
7119 (syms_of_keymap): Initialize it.
7120 (where_is_internal): Check more carefully what is a menu event.
7121
225c7a07
RS
71222003-03-14 Richard M. Stallman <rms@gnu.org>
7123
7124 * lread.c (read1): After #!, exit loop on eof.
7125
cea9be54
JD
71262003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7127
9ea0e54d
JD
7128 * gtkutil.h: Add declaration for xg_frame_cleared.
7129
0cb35f4e
JD
7130 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
7131
cea9be54
JD
7132 * gtkutil.c (struct xg_last_sb_pos): New structure.
7133 (handle_fixed_child): New function.
7134 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
7135 and force a redraw on them.
7136 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
7137 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
7138 so we can avoid unneeded redraws.
7139 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
7140 and force a redraw on the scroll bar.
7141 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
7142 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 7143 (xg_frame_cleared): New function.
cea9be54 7144
20b853f3
KH
71452003-03-13 Kenichi Handa <handa@m17n.org>
7146
7147 * coding.c (Fdetect_coding_region): Fix docstring.
7148 (Fdetect_coding_string): Fix docstring.
7149
7a555aff
AS
71502003-03-13 Andreas Schwab <schwab@suse.de>
7151
25cc0080
AS
7152 * gtkutil.c: Add prototype for create_menus.
7153
30225431
AS
7154 * data.c (long_to_cons): Fix type of top.
7155
7156 * xselect.c (selection_data_to_lisp_data): Use int instead of
7157 long for an integer of size 4.
7158
7a555aff 7159 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 7160 (xg_tool_bar_help_callback): Likewise.
7a555aff 7161
a3e4741f
AS
71622003-03-12 Andreas Schwab <schwab@suse.de>
7163
7164 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
7165
9668be7c
KS
71662003-03-12 Kim F. Storm <storm@cua.dk>
7167
03eb5fab 7168 The following changes consolidate the fringe handling from
9668be7c 7169 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 7170
9668be7c
KS
7171 * xdisp.c: Consolidate fringe handling code here.
7172 (left_bits, right_bits, continued_bits, continuation_bits)
7173 (ov_bits, zv_bits): Define fringe bitmaps.
7174 (fringe_bitmaps): New array holding fringe bitmaps.
7175 (draw_fringe_bitmap): Draw a specific bitmap; call display
7176 specific drawing routine via rif->draw_fringe_bitmap.
7177 (draw_row_fringe_bitmaps): Generic replacement for
7178 x_draw_row_fringe_bitmaps; all callers changed.
7179 (compute_fringe_widths): Generic replacement for
7180 x_compute_fringe_widths; all callers changed.
7181
7182 * dispextern.h (enum fringe_bitmap_type): Define here.
7183 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
7184 (fringe_bitmaps): Declare extern.
7185 (struct redisplay_interface): New member draw_fringe_bitmap.
7186 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
7187
7188 * xterm.c: Remove generic fringe code.
7189 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
7190 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
7191
7192 * w32term.c: Remove generic fringe code.
7193 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
7194 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 7195
9668be7c
KS
7196 * macterm.c: Remove generic fringe code.
7197 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
7198 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
7199
00a88f32
SM
72002003-03-11 Stefan Monnier <monnier@cs.yale.edu>
7201
7202 * print.c (Fprin1_to_string): Return unibyte string if possible.
7203
1d1de695
DK
72042003-03-09 David Kastrup <dak@gnu.org>
7205
7206 * process.c (read_process_output): We have allocated enough space
7207 for readmax and carryover, so actually use the alloted space.
7208
257f40f2
JD
72092003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7210
7211 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
7212 toolkit scrollbar click.
7213
7214 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
7215 for USE_GTK.
7216 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
7217 also.
7218 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
7219 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 7220
257f40f2
JD
7221 * gtkutil.h: Declare xg_get_scroll_id_for_window.
7222
7223 * gtkutil.c (xg_get_scroll_id_for_window): New function.
7224 (xg_tool_bar_item_expose_callback): New function.
7225 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
7226 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
7227 on the tool bar widget.
7228 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
7229 to expose on the tool bar item widgets.
7230
15213141
JD
72312003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7232
26b74a0b 7233 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 7234 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
7235 deleted from the image cache).
7236
15213141
JD
7237 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
7238 the event isn't for a frame (i.e. for dialogs).
7239
20b853f3 72402003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
7241
7242 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
7243 composition components reaches the limit, terminate composing.
7244 (COMPOSITION_OK): New macro.
00a88f32 7245 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
7246 composition is found.
7247 (coding_restore_composition): Adjust the number of composition
7248 components if it is not sane.
7249
c9029fe5
JB
72502003-03-06 Juanma Barranquero <lektu@terra.es>
7251
7252 * w32term.h (struct w32_display_info): Add xrdb member to support
7253 passing resources via -xrm on Windows.
7254
7255 * w32term.c (w32_make_rdb): New function.
7256 (w32_term_init): Use it to initialize xrdb member of w32_display_info
7257 struct. Delete leftover code.
7258
7259 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
7260 for resources passed on the command line.
7261
7262 * w32reg.c (w32_get_rdb_resource): New function.
7263 (x_get_string_resource): Use it, so resources passed with -xrm
7264 supercede the ones in the registry.
7265
9d00001f
JD
72662003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7267
7268 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
7269 instead of x_top_window_to_frame.
7270
ca2417b9
JD
72712003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7272
7273 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
7274 when restarting Emacs.
7275
5b20caf0
RS
72762003-03-03 Richard M. Stallman <rms@gnu.org>
7277
7278 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
7279 to run kill-buffer-query-functions.
7280 (Qkill_buffer_query_functions): New var.
7281 (syms_of_buffer): Init and staticpro it.
7282
58e91b77
JD
72832003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7284
7285 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
7286
932357b4
KS
72872003-02-25 Kim F. Storm <storm@cua.dk>
7288
7289 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
7290 If centering point failed to make whole line visible and vscroll
7291 is non-zero, disable vscroll and try centering point again.
7292
7293 * lread.c (read1): Accept `single space' syntax like (? x).
7294
bb8db7e1
JD
72952003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7296
7297 * keyboard.c (cancel_hourglass_unwind): Surround with
7298 #ifdef HAVE_X_WINDOWS
7299
47d77aab
KH
73002003-02-25 Kenichi Handa <handa@m17n.org>
7301
7302 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
7303 process only when "subprocesses" is defined.
7304
6a097c0c
SM
73052003-02-24 Stefan Monnier <monnier@cs.yale.edu>
7306
7307 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
7308
0b063c27
JB
73092003-02-24 Juanma Barranquero <lektu@terra.es>
7310
d1135afc
JB
7311 * callint.c (fix_command): Declare as static void and move before
7312 Fcall_interactively.
7313
0b063c27
JB
7314 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
7315 (syms_of_xdisp): Don't initialize Qwhen.
7316
0af912f0
JD
73172003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7318
7319 * keyboard.c (cancel_hourglass_unwind): New function.
7320 (command_loop_1): Cancel hourglass with unwind-protect.
7321
120d0a23
RS
73222003-02-23 Richard M. Stallman <rms@gnu.org>
7323
7324 * callint.c (fix_command): New subroutine, from Fcall_interactively.
7325 Detect (when ... (region-beginning)) etc.
7326 (Fcall_interactively): Call fix_command.
7327 (Qif, Qwhen): New variables.
7328 (syms_of_callint): Init and staticpro them.
0b063c27 7329
120d0a23
RS
7330 * regex.c (print_partial_compiled_pattern): Output to stderr.
7331
4ece81a6
KG
73322003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
7333
7334 * dired.c (directory_files_internal): Don't expand directory.
7335 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
7336 instead. From Lars Hansen <larsh@math.ku.dk>.
7337
e52bd6b7
SM
73382003-02-22 Stefan Monnier <monnier@cs.yale.edu>
7339
7340 * fns.c (string_to_multibyte): Remove unused var i.
7341 (Flanginfo): Fix int/Lisp_Object mixup.
7342 (void_call2): New fun.
7343 (Fmap_char_table): Use it in place of call2.
7344
7345 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
7346
7347 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
7348
7349 * keymap.c (copy_keymap_1): Make it static.
7350
7351 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
7352
c33ef7c4
JB
73532003-02-22 David Ponce <david@dponce.com>
7354
7355 * lread.c (Fload): Don't check STRING_MULTIBYTE.
7356
16782258
JD
73572003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7358
7359 * process.h: Removed subtty field from struct Lisp_Process.
7360
7361 * process.c (create_process): Remove setting of subtty.
7362 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
7363 (Fprocess_running_child_p, process_send_signal):
7364 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
7365 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
7366
3abeca61
KG
73672003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
7368
7369 * keymap.c (Fdefine_key): Doc fix.
7370
92a8ce63
JB
73712003-02-21 Juanma Barranquero <lektu@terra.es>
7372
7373 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
7374
7375 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
7376 POLLING_PROBLEM_IN_SELECT.
7377
7378 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
7379 Delete #undef of POLLING_PROBLEM_IN_SELECT.
7380
7381 * s/hpux10-20.h: New file.
7382
e52bd6b7
SM
7383 * process.c (wait_reading_process_input):
7384 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 7385
20f1ef2e
KH
73862003-02-20 Kenichi Handa <handa@m17n.org>
7387
32d0a9dc
KH
7388 * fontset.c (check_fontset_name): If NAME is nil, return the
7389 default fontset.
7390 (override_font_info): New function.
e52bd6b7 7391 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
7392 (Ffontset_info): If FONTSET is not the default fontset, merge
7393 FONTSET onto the copy of the default fontset, and work on that
7394 copy. Document that NAME nil means the default fontset.
7395 (Ffontset_font): Document that NAME nil means the default fontset.
7396
20f1ef2e
KH
7397 * process.c (setup_process_coding_systems): If the process's
7398 in/out descriptor is -1, do nothing.
7399
77d1daf2
AS
74002003-02-19 Andreas Schwab <schwab@suse.de>
7401
e52bd6b7
SM
7402 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
7403 Add prototypes.
77d1daf2 7404
f9a45bb3
KH
74052003-02-19 Kenichi Handa <handa@m17n.org>
7406
7407 * xfaces.c (try_alternative_families): Try all scalable fonts if
7408 Vscalable_fonts_allowed is not Qt.
7409
72ecb43c
JD
74102003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7411
7412 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
7413
ee5be7c3
JD
74142003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7415
7416 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
7417 names.
7418
7419 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 7420 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
7421 x_face_list_fonts.
7422 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
7423 (Fx_list_fonts): Set maxnames to -1 to get all font names.
7424
4cd519a7
KS
74252003-02-18 Kim F. Storm <storm@cua.dk>
7426
068f9882
KS
7427 * lread.c (read1): Fix last change.
7428 "`" is not always special. Allow "?" after a character constant.
4cd519a7 7429
7290a344
AC
74302003-02-18 Andrew Choi <akochoi@shaw.ca>
7431
7432 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
7433
1f7fa69b
AS
74342003-02-18 Andreas Schwab <schwab@suse.de>
7435
7436 * window.c (window_scroll_pixel_based): Move outside a
7437 multi-glyph character before setting new window start.
7438
7439 * xdisp.c (in_display_vector_p): New function.
7440 * dispextern.h (in_display_vector_p): Declare.
7441
23e21195
KS
74422003-02-18 Kim F. Storm <storm@cua.dk>
7443
7444 * lread.c (read1): Fix and relax read syntax.
7445 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
7446 Only recognize "," after dotted-pair dot if inside backquote.
7447 Never include "`" or "," (inside backquote) in a symbol.
7448 Allow dotted-pair dot after a character constant.
7449 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 7450
f098b121
JD
74512003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7452
7453 * gtkutil.c (xg_tool_bar_expose_callback): New function.
7454 (xg_create_tool_bar): Force style of tool bar to be horizontal with
7455 icons. Set name of tool bar to emacs-toolbar.
7456 (update_frame_tool_bar): Connect expose event to
7457 xg_tool_bar_expose_callback.
7458
63020c46
RS
74592003-02-17 Richard M. Stallman <rms@gnu.org>
7460
7461 * keyboard.c (this_command_key_count_reset): New variable.
7462 Initiatize to 0 where this_command_key_count is set.
7463 (read_char): Save and restore this_command_key_count_reset
7464 around input method code.
7465 (read_char): If this_command_key_count_reset, echo reread commands.
7466 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
7467
fb4452cc
KH
74682003-02-17 Kenichi Handa <handa@m17n.org>
7469
7470 * fns.c (string_to_multibyte): Always return a multibyte string.
7471
bd11cc09
JR
74722003-02-16 Jason Rumney <jasonr@gnu.org>
7473
e52bd6b7
SM
7474 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
7475 Negative max_fonts parameter means list all.
bd11cc09 7476
4cdf4bde
DL
74772003-02-14 Dave Love <fx@gnu.org>
7478
7479 * fns.c (Flanginfo): Doc fix.
7480
023b93f6
KS
74812003-02-13 Kim F. Storm <storm@cua.dk>
7482
37cd4238
KS
7483 * lread.c (read_escape): Interpret \s as a SPACE character, except
7484 for \s-X in a character constant which still is the super modifier.
7485 (read1): Signal an `invalid read syntax' error if a character
7486 constant is immediately followed by a digit or symbol character.
7487
140a6b7e
KS
7488 * search.c (Fmatch_data): Doc fix. Explicitly state that
7489 match-data is undefined if last search failed.
7490
023b93f6
KS
7491 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
7492 All uses changed.
7493
7d5c86e5
JB
74942003-02-12 Juanma Barranquero <lektu@terra.es>
7495
7496 * eval.c (Fdefmacro): Fix typo.
7497
295fff2c
KS
74982003-02-12 Kim F. Storm <storm@cua.dk>
7499
7500 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
7501 macro is a string, convert meta modifiers in string when copying
7502 the string into a vector.
7503
60f3202d
KS
75042003-02-11 Kim F. Storm <storm@cua.dk>
7505
7506 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
7507
61cb0b53
KH
75082003-02-11 Kenichi Handa <handa@m17n.org>
7509
7510 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
7511
7392e23c
KS
75122003-02-10 Kim F. Storm <storm@cua.dk>
7513
7514 * process.c: Doc fixes.
7515 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
7516
ce4254bd
KH
75172003-02-10 Kenichi Handa <handa@m17n.org>
7518
9c7a329a
KH
7519 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
7520
ce4254bd
KH
7521 * process.c (QCfilter_multibyte): New variable.
7522 (setup_process_coding_systems): New function.
e52bd6b7
SM
7523 (Fset_process_buffer, Fset_process_filter):
7524 Call setup_process_coding_systems.
ce4254bd
KH
7525 (Fstart_process): Initialize the member `filter_multibyte' of
7526 struct Lisp_Process.
7527 (create_process): Call setup_process_coding_systems.
7528 (Fmake_network_process): New keyward `:filter-multibyte'.
7529 Initialize the member `filter_multibyte' of struct Lisp_Process.
7530 Call setup_process_coding_systems.
7531 (server_accept_connection): Call setup_process_coding_systems.
7532 (read_process_output): If the process has a filter, decide the
7533 multibyteness of a string to given to the filter by
7534 `filter_multibyte' member of the process. If the process doesn't
7535 have a filter and the result of conversion is unibyte, use
7536 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
7537 multibyte form.
7538 (Fset_process_coding_system): Call setup_process_coding_systems.
7539 (Fset_process_filter_multibyte): New function.
7540 (Fprocess_filter_multibyte_p): New function.
7541 (syms_of_process): Intern and staticpro QCfilter_multibyte.
7542 Defsubr Sset_process_filter_multibyte and
7543 Sprocess_filter_multibyte_p.
7544
7545 * process.h (struct Lisp_Process): New member filter_multibyte.
7546
7547 * lisp.h (setup_process_coding_systems): Add prototype.
7548
7549 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
7550 process, update coding systems for the process.
7551
b08d5f59
KH
75522003-02-09 Kenichi Handa <handa@m17n.org>
7553
7554 * fns.c (string_to_multibyte): New function.
7555 (Fstring_to_multibyte): New function.
7556 (syms_of_fns): Defsubr it.
7557
0dfd93c0
AS
75582003-02-08 Andreas Schwab <schwab@suse.de>
7559
7560 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
7561 instead of the substitution.
7562
7b76ca1c
JD
75632003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7564
7565 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
7566
7567 * xmenu.c (menu_position_func): Adjust menu popup position so that
7568 the menu is fully visible.
7b76ca1c 7569
2436a4e4
JD
75702003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7571
7572 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
7573 (x_make_frame_invisible, x_wm_set_icon_position):
7574 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
7575
7576 * xfns.c (x_set_name, x_set_title): Ditto.
7577
37d1e680
RS
75782003-02-04 Richard M. Stallman <rms@gnu.org>
7579
7580 * keyboard.c (echo_now): Update before_command_echo_length.
7581 (Freset_this_command_lengths): Reset this_command_key_count etc.
7582 immediately rather than arranging to do it later.
7583 (before_command_key_count_1, before_command_echo_length_1)
7584 (before_command_restore_flag): Vars deleted.
7585 (add_command_key): Don't handle before_command_restore_flag.
7586 (read_char, record_menu_key): Don't update before_command_key_count or
7587 before_command_echo_length.
7588 (read_char): Don't handle before_command_restore_flag.
7589
7590 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
7591 in direct-output clauses if it wouldn't be called in the ordinary case.
7592
578846a3
KS
75932003-02-04 Kim F. Storm <storm@cua.dk>
7594
7595 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
7596
49853a4d
JD
75972003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7598
7599 * gtkutil.c (remove_from_container): Copying list is not needed.
7600 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
7601 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
7602 on list returned from gtk_container_get_children to avoid memory leak.
7603
8b53dc06
JR
76042003-02-01 Jason Rumney <jasonr@gnu.org>
7605
5d54d177
JR
7606 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
7607 local malloc.
7608 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
7609 definitions in xpm.h.
7610 (init_xpm_functions): New function.
f63fd14e 7611 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5d54d177
JR
7612 (init_external_image_libraries): Try to load libXpm.dll.
7613
8b53dc06
JR
7614 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
7615 timestamp.
7616
b222e415
DL
76172003-01-31 Dave Love <fx@gnu.org>
7618
7619 * syntax.c (Fskip_chars_forward)
7620 (open-paren-in-column-0-is-defun-start): Doc fix.
7621
c60ee5e7
JB
76222003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
7623
7624 * fileio.c: Support // at start of name for Cygwin (just added proper
7625 preprocessor tests).
7626
7627 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
7628
7629 * Makefile.in: Use @EXEEXT@ for Cygwin.
7630
7631 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
7632
7633 * s/cygwin.h: Added for Cygwin port.
7634
53b37591
JB
76352003-01-31 Juanma Barranquero <lektu@terra.es>
7636
7637 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
7638 when including gif_lib.h.
fe929957 7639 (init_gif_functions, init_tiff_functions): New functions.
f63fd14e
JB
7640 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
7641 Windows. Disable color table lookups. Call library functions
53b37591 7642 through pointers determined at runtime.
fe929957
JB
7643 (init_external_image_libraries): Try to load libungif.dll and
7644 libtiff.dll.
53b37591 7645
45415a8f
KH
76462003-01-31 Kenichi Handa <handa@m17n.org>
7647
7648 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 7649 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 7650
a97e4138
JD
76512003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7652
e52bd6b7 7653 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 7654
6eed9bed
DL
76552003-01-30 Dave Love <fx@gnu.org>
7656
7657 * alloc.c (Vgc_elapsed, gcs_done): New variables.
7658 (Fgarbage_collect): Use them.
7659 (init_alloc, syms_of_alloc): Set them up.
7660
100dcd40
JB
76612003-01-30 Juanma Barranquero <lektu@terra.es>
7662
7663 * w32fns.c (init_external_image_libraries): Add missing operator.
7664
fbd852af
JR
76652003-01-29 Jason Rumney <jasonr@gnu.org>
7666
7667 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
7668 an alternative name for jpeg.dll.
7669
8a2d8020
KH
76702003-01-29 Kenichi Handa <handa@m17n.org>
7671
7672 * xdisp.c (set_cursor_from_row): Pay attention to string display
7673 properties.
7674
058c18c7
AC
76752003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
7676
7677 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
7678 <escape>.
7679 (keycode_to_xkeysym_table): Reformat and add more comments.
7680 (XTread_socket): Drop special case for backspace.
7681
385f11cf
AC
76822003-01-28 Andrew Choi <akochoi@shaw.ca>
7683
7684 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
7685 values in old-style RGB specs.
7686
c922a224
JB
76872003-01-27 Juanma Barranquero <lektu@terra.es>
7688
7689 * w32fns.c (init_external_image_libraries): Try alternate names for the
7690 jpeg dll.
7691
0a1d6de0
JD
76922003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7693
7694 * gtkutil.c (create_dialog, xg_separator_p)
7695 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
7696 before calling strcmp or strlen.
7697
a97e4138 76982003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
7699
7700 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
7701 and handle image load failure.
7702
28908312
JR
77032003-01-26 Jason Rumney <jasonr@gnu.org>
7704
7705 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
7706 New functions.
f63fd14e
JB
7707 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
7708 Disable color table lookups. Call jpeg library functions
28908312
JR
7709 through pointers determined at runtime.
7710 (init_external_image_libraries): Try to load jpeg.dll.
7711
84e47416
RS
77122003-01-25 Richard M. Stallman <rms@gnu.org>
7713
7714 * lisp.h: Declare format2 instead of format1.
7715
7716 * fileio.c (barf_or_query_if_file_exists):
7717 Call format2 instead of format1.
7718
7719 * editfns.c (format2): New function, replaces format1
7720 but takes exactly two Lisp Objects as format args.
7721
7722 * buffer.c (Fkill_buffer): Call format2 instead of format1.
7723
a97e4138 77242003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
7725
7726 * xterm.h: Change to return value of x_dispatch_event to int.
7727
7728 * xterm.c (x_filter_event): New function.
7729 (event_handler_gdk, XTread_socket): Call x_filter_event.
7730 (x_dispatch_event): Change to return value of finish.
7731 (event_handler_gdk): Use return value from x_dispatch_event.
7732
7733 * xfns.c (x_window): Call create_frame_xic for GTK version to
7734 initialize input methods.
7735
7736 * gtkutil.h: Add (void) prototypes.
7737
7738 * gtkutil.c (create_menus): Remove code that puts the help menu to
7739 the right.
7740
54eefef1
JR
77412003-01-25 Jason Rumney <jasonr@gnu.org>
7742
7743 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
7744 [HAVE_PNG]: Sync with xfns.c version.
f63fd14e
JB
7745 (png_load): Adjust colors for Windows. Use Windows
7746 bitmaps. Disable color table lookups.
c262430d
JR
7747 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
7748 (init_png_functions): New function.
7749 (png_read_from_memory, png_load): Call png library functions
7750 through pointers determined at runtime.
7751 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
7752 (init_external_image_libraries): New function.
7753 (init_xfns): Call it.
54eefef1 7754
1a9e275b
AS
77552003-01-24 Andreas Schwab <schwab@suse.de>
7756
7757 * minibuf.c (Fminibuffer_message): Verify type of parameter.
7758
a97e4138 77592003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
7760
7761 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
7762 of static initializer.
7763
422eec7e
DL
77642003-01-24 Dave Love <fx@gnu.org>
7765
7766 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
7767 architectures.
7768
7769 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
7770 Use __alignof__.
7771
2a026b04
KH
77722003-01-24 Kenichi Handa <handa@m17n.org>
7773
7774 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 7775 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
7776 (command_loop_1): Call adjust_point_for_property with proper
7777 second arg.
7778
a18bb28d
JR
77792003-01-22 Jason Rumney <jasonr@gnu.org>
7780
7781 Sync changes with xterm.c and xfns.c.
7782
7783 * w32term.c (x_draw_glyph_string_foreground)
7784 (x_draw_composite_glyph_string_foreground): Implement overstriking.
7785
7786 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
7787 phys_cursor's hpos is overwritten. This is still not completely
7788 correct, as it doesn't really make sense to use hpos at all to
7789 get the cursor glyph (as that is relative to the width of the
7790 characters on the line, which may have changed during the update).
7791
7792 * w32term.c (notice_overwritten_cursor): Handle the special case
7793 of the cursor being in the first blank non-text line at the
7794 end of a window.
7795
7796 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
7797 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
7798 Compute from the x position returned by x_draw_glyphs.
7799
7800 (x_display_and_set_cursor): Don't set phys_cursor_width here,
7801 except for NO_CURSOR and system caret, to make phys_cursor_width
7802 contain what its name suggests.
7803 (notice_overwritten_cursor): Consider the cursor image erased if
7804 the output area intersects the cursor image in y-direction.
7805
6a097c0c
SM
7806 * w32term.c (note_mode_line_or_margin_highlight): Rename from
7807 note_mode_line_highlight and extend.
a18bb28d
JR
7808
7809 * w32term.c (last_window): New variable.
7810 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
7811 (note_mouse_movement): Remove reimplemented code in #if 0.
7812
7813 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
7814 not update_mode_lines, and always set it to 1.
7815
ac6e47ef
JR
78162003-01-21 Jason Rumney <jasonr@gnu.org>
7817
7818 * w32fns.c (IDC_HAND): Define it if system headers don't.
7819
78202003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
7821
7822 * w32term.h (struct w32_output): New member hand_cursor.
7823 (WM_EMACS_SETCURSOR): New message definition.
7824
7825 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
7826 function w32_define_cursor.
7827 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
7828 position, change member name output_data.x to output_data.w32 and
7829 add function w32_define_cursor.
7830 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
7831 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
7832 (w32_initialize_display_info):
7833 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
7834
7835 * w32fns.c (Vx_hand_shape): New variable.
7836 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
7837 WM_EMACS_SETCURSOR.
7838 (x-create-frame): Setup Cursor types.
7839
ceb39a17
JB
78402003-01-21 David Ponce <david@dponce.com>
7841
ac6e47ef 7842 * w32term.c (w32_encode_char): For DIM=1 charset, set
f63fd14e 7843 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
ac6e47ef 7844 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 7845 2002-09-30.)
ac6e47ef
JR
7846 (w32_draw_relief_rect): Declare all args.
7847 (w32_define_cursor): New.
7848
7849 * w32fns.c (w32_load_cursor): New function.
7850 (w32_init_class): Use it.
7851 (x_put_x_image): Declare all args.
7852
46cf0bed
JB
78532003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
7854
7855 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
7856
a97e4138 78572003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
7858
7859 * gtkutil.c: Must include stdio.h before termhooks.h
7860
83fc9c63
DL
78612003-01-21 Dave Love <fx@gnu.org>
7862
7863 * alloc.c (Fgc_status): Print zombie list.
7864 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
7865 Fix assignment of zombies.
7866 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
7867 Don't take car of non-cons.
7868
7869 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7870
7871 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7872
fe04b8c8
JR
78732003-01-20 David Ponce <david@dponce.com>
7874
7875 * w32menu.c (digest_single_submenu): Declare all args.
7876
7877 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
7878 changes in xmenu.c:
7879
7880 (parse_single_submenu): Use individual keymap's prompt
7881 string as pane name, if there is one.
7882 (set_frame_menubar): Save menu_items_n_panes from each call to
7883 parse_single_submenu and use it when calling digest_single_submenu.
7884
539e69a9
ST
78852003-01-20 Steven Tamm <steventamm@mac.com>
7886
7887 * macterm.c (XTread_socket): Checks for valid, visible window
7888 before sending a scroll-wheel event.
7889
675d000f
RS
78902003-01-20 Richard M. Stallman <rms@gnu.org>
7891
7892 * xdisp.c (redisplay_window): If mini window's buffer is not
7893 a minibuffer, then redisplay it like other windows.
7894
a97e4138 78952003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
7896
7897 * gtkutil.c (xg_create_frame_widgets): Check if there is an
7898 external tool bar before setting tool bar height.
7899
048addec
JD
79002003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7901
7902 * xterm.c (handle_one_xevent): Surround popup_activated
7903 with #ifdef:s for non-toolkit version.
7904
7905 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
7906 (gtkutil.o): New file.
7907 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
7908 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
7909
7910 * gtkutil.c: New file for GTK version.
7911
7912 * gtkutil.h: New file for GTK version.
7913
7914 * xterm.h: Add xt_or_gtk_widget.
7915 Include gtk files for USE_GTK.
7916 (struct x_output): Add toolbar_height.
7917 (struct x_output): Add GTK widgets and Gdk size_hints.
7918 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
7919 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
7920 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
7921
7922 * xterm.c: Include gtkutil.h for USE_GTK.
7923 Declare extern void free_frame_menubar for USE_GTK.
7924 (note_mouse_highlight): Check popup_activated for USE_GTK.
7925 (xt_action_hook): Don't compile if USE_GTK.
7926 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
7927 (xg_scroll_callback): New function.
7928 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
7929 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
7930 for USE_GTK.
7931 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
7932 xg_show_scroll_bar for USE_GTK.
7933 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
7934 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
7935 (event_handler_gdk): New function for USE_GTK.
7936 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
7937 (handle_one_xevent): Make sure widget is mapped before
7938 calling x_real_positions for USE_GTK.
7939 (XTread_socket): Add GTK event loop for USE_GTK.
7940 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
7941 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
7942 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
7943 (x_iconify_frame): Add code for USE_GTK.
7944 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
7945 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
7946 is in gtkutil.c.
7947 (x_term_init): Add initialization for GTK.
7948 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
7949
7950 * xmenu.c: Include gtkutil.h for USE_GTK.
7951 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
7952 (single_menu_item, single_menu_item, Fx_popup_dialog):
7953 Check for USE_GTK.
048addec
JD
7954 (popup_widget_loop): New function for USE_GTK.
7955 (x_activate_menubar): Add code for USE_GTK.
7956 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
7957 (menu_highlight_callback, menubar_selection_callback):
7958 Add USE_GTK versions.
048addec
JD
7959 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
7960 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
7961 (free_frame_menubar): Only compile if not USE_GTK. GTK version
7962 is in gtkutil.c.
7963 (popup_selection_callback): New version for USE_GTK.
7964 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 7965 one USE_X_TOOLKIT version.
048addec
JD
7966 (xmenu_show): Call create_and_show_popup_menu.
7967 (dialog_selection_callback): New version for USE_GTK.
7968 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 7969 one USE_X_TOOLKIT version.
048addec
JD
7970 (xdialog_show): Call create_and_show_dialog.
7971
7972 * xfns.c: Include gtkutil for USE_GTK.
7973 (x_window_to_frame, x_any_window_to_frame)
7974 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
7975 (x_top_window_to_frame): Add code for USE_GTK.
7976 (x_set_background_color): Call xg_set_background_color for GTK.
7977 (x_set_menu_bar_lines): Check for USE_GTK.
7978 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
7979 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
7980 (x_window): Call xg_create_frame_widgets for USE_GTK.
7981 (Fx_create_frame): Check for USE_GTK
7982 (Fx_file_dialog): New implementation for USE_GTK.
7983
7984 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
7985 (update_menu_bar): Add check for USE_GTK.
7986 (update_tool_bar): Add check for USE_GTK and external tool bar.
7987 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
7988 (redisplay_internal): Add check for USE_GTK and popup_activated.
7989 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
7990 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
7991 (display_menu_bar): Add check for USE_GTK
7992
7993 * lisp.h: Declare Vx_resource_name extern.
7994
a64387ee 7995 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
048addec
JD
7996 for USE_GTK.
7997 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
7998
7999 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
8000 (FRAME_EXTERNAL_TOOL_BAR): New macro.
8001 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
8002
8003 * fileio.c (Fread_file_name): Add check for USE_GTK.
8004
6bdb309a
SM
8005 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
8006 Add check for USE_GTK.
048addec
JD
8007
8008 * config.in: Added HAVE_GTK
8009
8010 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
8011
80122003-01-18 Stefan Monnier <monnier@cs.yale.edu>
8013
8014 * charset.h (Funibyte_char_to_multibyte): Export.
8015
80162003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8017
8018 * xmenu.c (mouse_position_for_popup): New function.
8019 (Fx_popup_menu): Call mouse_position_for_popup for X and
8020 mouse_position_hook for others.
8021
80222003-01-17 Kim F. Storm <storm@cua.dk>
8023
8024 * editfns.c (Finsert): Mention `string-make-multibyte' and
8025 `string-as-multibyte' in doc string.
8026
80272003-01-17 Kenichi Handa <handa@m17n.org>
8028
8029 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 8030
048addec
JD
8031 * editfns.c (Fformat): Convert an unibyte char argument that is
8032 formatted by "%c" to multibyte if the total result must be a
8033 multibyte string.
cd7df9c0 8034
048addec 80352003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 8036
048addec
JD
8037 * process.c (set-process-filter): Document unibyte/multibyte-ness
8038 of string argument.
56210ecd 8039
048addec 80402003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 8041
048addec 8042 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 8043
048addec
JD
8044 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
8045 (re_search_2): Likewise.
6df8b9fe 8046
048addec 80472003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 8048
048addec
JD
8049 * xdisp.c (message_dolog): Fix bug of the case that *Message*
8050 buffer is unibyte.
292ddc31 8051
048addec 80522003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 8053
048addec 8054 * fns.c (Fsubstring): Clarify doc string.
292ddc31 8055
048addec
JD
8056 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
8057 (Fprevious_char_property_change)
8058 (Fnext_single_char_property_change)
8059 (Fprevious_single_char_property_change, Fnext_property_change)
8060 (Fnext_single_property_change, Fprevious_property_change)
8061 (Fprevious_single_property_change, Fadd_text_properties)
8062 (Fput_text_property, Fset_text_properties)
8063 (Fremove_text_properties, Fremove_list_of_text_properties)
8064 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 8065
048addec 80662003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 8067
048addec
JD
8068 * process.h (struct Lisp_Process): New member plist replaces old
8069 member private_vars. All uses changed.
63e4e4c6 8070
048addec 8071 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 8072 (QCplist): Rename from QCvars. Change all uses.
048addec 8073 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 8074 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 8075 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 8076 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 8077
048addec 80782003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 8079
6bdb309a 8080 * m/delta.h: Remove (obsolete).
e833850f 8081
048addec 80822003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 8083
048addec
JD
8084 * fileio.c (Fdelete_directory, Fdelete_file): Document the
8085 behaviour in front of symlinks.
8086 (Fdelete_file): Raise an error on directories.
817cb127 8087
048addec 80882003-01-13 Dave Love <fx@gnu.org>
817cb127 8089
048addec 8090 * fns.c (Freverse): Use QUIT.
3e8cf2ea 8091
048addec 80922003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 8093
048addec
JD
8094 * minibuf.c (minibuffer_completion_contents):
8095 Error if point is inside prompt.
3e8cf2ea 8096
048addec
JD
8097 * keyboard.c (command_loop_1): Don't redisplay directly
8098 if there's a post-command-hook.
3e8cf2ea 8099
048addec
JD
8100 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
8101 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 8102
048addec 81032003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 8104
048addec 8105 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 8106
048addec
JD
8107 * process.c (QCvars): New variable.
8108 (syms_of_process): Intern and staticpro it.
8109 (Fset_process_contact): Removed function.
8110 (Fprocess_variable, Fset_process_variable): New functions.
8111 (syms_of_process): Defsubr them.
8112 (Fstart_process): Initialize private_vars plist to nil.
8113 (Fmake_network_process): New arg :vars to setup the private
8114 variables for new network process.
8115 (server_accept_connection): Copy server's private variables to
8116 client process.
2c10f029 8117
048addec
JD
8118 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
8119 crashes). Code rewritten and simplified. Now directly aligns the
8120 pointer and recalculates pure_bytes_used, rather than aligning the
8121 size and adjusting the pointer.
b8a76c6c 8122
048addec 81232003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 8124
048addec
JD
8125 * process.c (Fset_process_contact): New function.
8126 (syms_of_process): defsubr it.
8127 (make-network-process): Update doc.
3a8d0899 8128
048addec 81292003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 8130
048addec
JD
8131 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
8132 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 8133
048addec 81342003-01-10 Dave Love <fx@gnu.org>
4abc7470 8135
048addec 8136 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 8137
048addec 81382003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 8139
048addec
JD
8140 * process.c (Fmake_network_process): Convert new port number
8141 to host byte order for `:service t' case. From Mario Lang.
bf338245 8142
048addec 81432003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 8144
048addec
JD
8145 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
8146 instead of XtAppProcessEvent.
bf338245 8147
048addec
JD
8148 * xterm.c (handle_one_xevent): New function.
8149 (x_dispatch_event): New function.
8150 (XTread_socket): Call handle_one_xevent.
bf338245 8151
048addec 8152 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 8153
048addec
JD
8154 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
8155 call XQueryPointer to get coordinates.
8156 (popup_get_selection): Do not set popup_activated_flag to zero,
8157 let popup_deactivate_callback do that. Needed for Motif.
8158 Call x_dispatch_event instead of XtDispatchEvent.
8159 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 8160
048addec 81612003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 8162
6bdb309a 8163 * process.c (server_accept_connection): Fix recording of new
048addec
JD
8164 connection's local address in :local property of contact info.
8165 (Fmake_network_process): Record local network address for new
8166 client processes in :local property of contact info.
6bdb309a 8167 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 8168
048addec 81692003-01-07 Dave Love <fx@gnu.org>
00e3ab56 8170
048addec 8171 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 8172
048addec 81732003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 8174
048addec 8175 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 8176
048addec
JD
8177 * eval.c (Fuser_variable_p): Doc change. For custom variables,
8178 use the same test as for custom-variable-p.
8c6d74c6 8179
048addec 81802003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 8181
048addec
JD
8182 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
8183 Count LAST_LINE_MISFIT in scroll margin for end of window.
8184 Move label too_near_end before setting SCROLL_MARGIN_POS.
8185 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 8186
048addec
JD
8187 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
8188 scroll_conservatively case. If scrolling that much doesn't change
8189 STARTP, move it down one line.
e833850f 8190
048addec
JD
8191 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
8192 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 8193
048addec
JD
8194 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
8195 selected frame.
8c6d74c6 8196
048addec
JD
8197 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
8198 (syms_of_keymap): staticpro them.
8199 (Fapropos_internal): Initialize them and clear them out.
8200 Don't GCPRO them.
8c6d74c6 8201
048addec
JD
8202 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
8203 Doc fixes.
8c6d74c6 8204
048addec
JD
8205 * lisp.h: New misc type Lisp_Save_Value.
8206 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
8207 (XSAVE_VALUE): New macro.
8208 (struct Lisp_Save_Value): New data type.
8209 (union Lisp_Misc): Add u_save_value alternative.
8210 (make_save_value): Declared.
8c6d74c6 8211
048addec 8212 * alloc.c (make_save_value): New function.
8c6d74c6 8213
048addec
JD
8214 * xterm.c (x_catch_errors): Save dpy using make_save_value.
8215 (x_catch_errors_unwind): Call XSync.
8c6d74c6 8216
048addec 82172003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 8218
048addec 8219 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 8220
048addec
JD
8221 * keyboard.c (command_loop_1): Call adjust_point_for_property
8222 in direct action cases for Qforward_char and Qbackward_char.
8223 Set already_adjusted so it won't be done twice.
8c6d74c6 8224
048addec 82252002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
8c6d74c6 8226
048addec
JD
8227 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
8228 type definition of size_t.
8c609cff 8229
048addec 82302003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 8231
048addec
JD
8232 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
8233 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 8234
048addec 82352002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 8236
048addec
JD
8237 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
8238 to default to t.
fa634a5e 8239
048addec 82402002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 8241
048addec 8242 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 8243
048addec 82442002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 8245
048addec
JD
8246 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
8247 allow building in a different directory than source. Uses some
8248 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 8249
048addec 82502002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 8251
048addec
JD
8252 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
8253 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
8254 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
8255 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 8256
048addec 82572002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 8258
048addec
JD
8259 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
8260 <scroll-down-aggressively>: Doc fix.
2155ecf3 8261
048addec
JD
8262 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
8263 string as pane name, if there is one.
8264 (set_frame_menubar): Save menu_items_n_panes from each call to
8265 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 8266
048addec
JD
8267 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
8268 Don't try to make last line fully visible if it is past end of window.
61f1d295 8269
048addec 82702002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 8271
048addec
JD
8272 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
8273 (mac_menu_show): Add support for hierarchical popup menus.
8274 (add_menu_item): Remove indentation support.
8275 (fill_submenu, fill_menu): Create hierarchical menus
8276 instead of using indentation.
0b17a217 8277
048addec 82782002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 8279
048addec
JD
8280 * xdisp.c (try_cursor_movement): Don't call try_window here.
8281 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 8282
048addec 8283 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 8284
048addec 82852002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 8286
048addec
JD
8287 * macterm.c (XTread_socket): Call KeyTranslate for control and
8288 meta to deal correctly shifted non-alpha characters, like C-S-5
8289 being treated like C-%. Does not look for shift key to deal
8290 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 8291
048addec 82922002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 8293
048addec
JD
8294 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
8295 If it is non-nil, run timers. Use an unwind-protect to requeue
8296 the events that were read ahead.
8297 (popup_get_selection_unwind): New subroutine.
8298 (popup_get_selection_queue): File-scope variable now holds that queue.
8299 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
8300 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
8301 Use an unwind-protect to pop down the dialog box.
8302 (xdialog_show_unwind): New subroutine implements that.
f02cac82 8303
048addec
JD
8304 * xdisp.c (row_containing_pos): Change exit test using last_y.
8305 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 8306
048addec
JD
8307 * lread.c (load_error_handler): New function.
8308 (Fload): Handle errors in Fsubstitute_in_file_name.
8309 Don't expect Fsignal to return.
f02cac82 8310
048addec
JD
8311 * eval.c: Errors and throws work right with interrupt blocking.
8312 (struct catchtag): New elt interrupt_input_blocked.
8313 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
8314 (internal_catch, Fcondition_case, internal_condition_case)
8315 (internal_condition_case_1, internal_condition_case_2): Save it.
8316 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 8317
048addec 8318 * editfns.c (Fformat): Add parens.
f02cac82 8319
048addec
JD
8320 * dired.c (file_name_completion): Fix that change.
8321 Delete special quit-handling code; just use QUIT.
f02cac82 8322
048addec 83232002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
f02cac82 8324
048addec
JD
8325 * dired.c (file_name_completion): Close directory on error
8326 just as in directory_files_internal.
1a590729 8327
048addec 83282002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 8329
048addec
JD
8330 * window.c (Fset_window_configuration): Set old_point to correct
8331 value when new_current_buffer == current_buffer.
f02cac82 8332
048addec 83332002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 8334
048addec
JD
8335 Revisited my earlier fix for the following entry in etc/PROBLEMS:
8336 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
8337 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 8338
048addec
JD
8339 These changes were in part based upon suggestions made by Peter
8340 'Luna' Runestig [peter@runestig.com].
9785d95b 8341
048addec
JD
8342 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
8343 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 8344 g_b_init_get_sid_identifier_authority ): Add several static
048addec 8345 global variables.
9785d95b 8346
048addec
JD
8347 * w32.c (globals_of_w32): New function. Used to initialize those
8348 global variables that must always be initialized on startup even
8349 when the global variable initialized is non zero. Its primary
8350 purpose at this time is to set the global variables
8351 g_b_init_is_windows_9x, g_b_init_open_process_token,
8352 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
8353 g_b_init_get_sid_identifier_authority to 0 on startup.
8354 Called from main.
9785d95b 8355
048addec
JD
8356 * w32.c (is_windows_9x): Perform initialization only if
8357 g_b_init_is_windows_9x is equal to 0. On initialization set
8358 g_b_init_is_windows_9x equal to 1.
2308af15 8359
048addec
JD
8360 * w32.c (open_process_token): Perform initialization only if
8361 g_b_init_open_process_token is equal to 0. On initialization set
8362 g_b_init_open_process_token equal to 1.
2308af15 8363
048addec
JD
8364 * w32.c (get_token_information): Perform initialization only if
8365 g_b_init_get_token_information is equal to 0. On initialization
8366 set g_b_init_get_token_information equal to 1.
9785d95b 8367
048addec
JD
8368 * w32.c (lookup_account_sid): Perform initialization only if
8369 g_b_init_lookup_account_sid is equal to 0. On initialization
8370 set g_b_init_lookup_account_sid equal to 1.
9785d95b 8371
048addec
JD
8372 * w32.c (get_sid_identifier_authority): Perform initialization
8373 only if g_b_init_get_sid_identifier_authority is equal to 0.
8374 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 8375
f63fd14e 8376 * w32fns.c (globals_of_w32fns): New function. Used to initialize
048addec
JD
8377 those global variables that must always be initialized on startup
8378 even when the global variable initialized is non zero.
8379 Its primary purpose at this time is to initialize the global variable
8380 track_mouse_event_fn.
9785d95b 8381
a64387ee 8382 * w32fns.c (w32_wnd_proc): Remove initialization of
048addec 8383 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 8384
048addec 8385 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 8386
f63fd14e 8387 * w32menu.c (globals_of_w32menu): New function. Used to
048addec
JD
8388 initialize those global variables that must always be initialized
8389 on startup even when the global variable initialized is non zero.
8390 Its primary purpose at this time is to initialize the global
8391 variables get_menu_item_info and set_menu_item_info.
9785d95b 8392
048addec
JD
8393 * w32menu.c (initialize_frame_menubar): Remove initialization of
8394 get_menu_item_info and set_menu_item_info.
9785d95b 8395
048addec 8396 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 8397
048addec
JD
8398 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
8399 Declare them.
9785d95b 8400
048addec
JD
8401 * emacs.c (main): Call globals_of_w32 prior to calling
8402 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
8403 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
8404 is defined.
9785d95b 8405
048addec
JD
8406 * w32term.c (x_update_window_begin): Fix Windows API error
8407 detected by BoundsChecker. Test to determine if
8408 w32_system_caret_hwnd is NULL prior to attempting to use
8409 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 8410
048addec
JD
8411 * w32term.c (x_update_window_end): Fix Windows API error
8412 detected by BoundsChecker. Test to determine if
8413 w32_system_caret_hwnd is NULL prior to attempting to use
8414 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 8415
048addec 84162002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 8417
048addec
JD
8418 * coding.c (coding_system_require_warning): New variable.
8419 (syms_of_coding): DEFVAR it.
b6da19ef 8420
048addec 8421 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 8422
048addec
JD
8423 * fileio.c (choose_write_coding_system): Even if
8424 Vcoding_system_for_write is non-nil, if
8425 coding_system_require_warning is nonzero, call
8426 Vselect_safe_coding_system_function.
bfcf6dbe 8427
048addec 84282002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 8429
048addec
JD
8430 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
8431 (lisp): Add font-core.
2c568af5 8432
048addec 84332002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 8434
048addec
JD
8435 * textprop.c (text_read_only): New arg `propval'.
8436 (get_char_property_and_overlay): Remove unused var `next_overlay'.
8437 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 8438
048addec 84392002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 8440
048addec 8441 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 8442
048addec 84432002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 8444
048addec
JD
8445 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
8446 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
8447 Be more careful about when help_events are generated.
96720f09 8448
048addec 84492002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 8450
048addec
JD
8451 * macterm.c (mac_check_for_quit_char): Correctly set the
8452 modifiers of the event to 0.
8453 * mac.c (sys_select): Duplicate rfds before calling select to
8454 ensure that rfds survive the while loop.
e5ae1c49 8455
048addec 84562002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 8457
048addec
JD
8458 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
8459 row_containing_pos returned NULL.
2eb46b2d 8460
048addec 84612002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 8462
6bdb309a 8463 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 8464 non-blocking.
6bdb309a 8465 (sys_select): Fix sys_select to not use a timeout larger than
048addec 8466 the one given.
b11f1d8a 8467
048addec 84682002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 8469
048addec 8470 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 8471
048addec 84722002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 8473
048addec
JD
8474 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
8475 as the last thing.
a4ac5b17 8476
048addec 84772002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 8478
048addec 8479 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 8480
048addec 84812002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 8482
048addec
JD
8483 * editfns.c (Fformat): Handle precision in string conversion
8484 specifiers like libc functions do (ie, print at most that many
8485 characters).
85cce843 8486
048addec 84872002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 8488
048addec
JD
8489 * xdisp.c (row_containing_pos): Check more carefully
8490 whether charpos is really in the row before returning it.
0d4d26a7 8491
048addec 84922002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 8493
048addec 8494 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 8495
048addec
JD
8496 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
8497 each stack frame. This may change as it could be time consuming.
0d4d26a7 8498
048addec
JD
8499 * macterm.c (mac_check_for_quit_char, quit_char_comp)
8500 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 8501 (mac_initialize): Add code to check for pressing of quit_char
048addec 8502 in the OS event queue.
b11f1d8a 8503
048addec
JD
8504 * mac.c (sys_select): Call mac_check_for_quit_char every second
8505 while blocking on select.
0d4d26a7 8506
048addec
JD
8507 * mac.c (sys_read): Use sys_select to test for input first
8508 before calling read, to allow C-g to break.
9252f7bc 8509
048addec 85102002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 8511
048addec 8512 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 8513
048addec 8514 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 8515
048addec 8516 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 8517
048addec
JD
8518 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
8519 autoload.
9252f7bc 8520
048addec 8521 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 8522
048addec 8523 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 8524
048addec 85252002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 8526
048addec 8527 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 8528
048addec 85292002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 8530
048addec 8531 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 8532
048addec 8533 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 8534
048addec 8535 * alloca.c: Don't use #error.
02d588e2 8536
048addec 85372002-12-03 Dave Love <fx@gnu.org>
02d588e2 8538
048addec
JD
8539 * buffer.c (Qucs_set_table_for_input): New.
8540 (Fget_buffer_create): Use it.
8541 (Qset_buffer_major_mode_hook): Deleted.
8542 (Fset_buffer_major_mode): Revert previous change.
8543 (init_buffer_once): Intern ucs-set-table-for-input.
8544 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
8545 Add &Qucs_set_table_for_input.
451e2697 8546
048addec 85472002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 8548
048addec
JD
8549 * callint.c (Fcall_interactively): Use next_event only if less
8550 than key_count.
72742a99 8551
048addec 85522002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 8553
048addec
JD
8554 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
8555 names to 255 characters.
72742a99 8556
048addec
JD
8557 * macterm.c (XTread_socket): If all frames have been collapsed,
8558 expand the first one before handling drag-and-drop events.
72742a99 8559
048addec
JD
8560 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
8561 which is detected by autoconf.
40e6ff95 8562
048addec 85632002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 8564
048addec
JD
8565 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
8566 offset in two hints table to allow prebinding to be redone and
8567 allow the executable to be stripped.
c02138c6 8568
048addec 85692002-11-29 Dave Love <fx@gnu.org>
c02138c6 8570
048addec
JD
8571 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
8572 already provided.
0e47bbf7 8573
048addec 85742002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 8575
048addec
JD
8576 * xdisp.c (start_display): Check more intelligently for
8577 whether the line is continued.
8578 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 8579
048addec 85802002-11-28 Dave Love <fx@gnu.org>
44129dcb 8581
048addec
JD
8582 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
8583 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 8584
048addec 85852002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 8586
048addec
JD
8587 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
8588 more descriptive error output from lread.c:Fload upon most require
8589 cycles during boostrapping.
1637fd2c 8590
048addec 85912002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 8592
048addec
JD
8593 * fileio.c (Finsert_file_contents): Give a more appropriate error
8594 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 8595
048addec
JD
8596 * dired.c (Ffile_attributes): Don't return negative file sizes for
8597 files bigger than 2Gb when off_t is 32 bit.
540c2788 8598
048addec 85992002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 8600
048addec 8601 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 8602
048addec
JD
8603 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
8604 Test GETPGRP_VOID instead.
8605 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 8606
048addec
JD
8607 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
8608 Don't define.
8609 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 8610
048addec 8611 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 8612
048addec 86132002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 8614
048addec
JD
8615 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
8616 supported.
4042a81a 8617
048addec 86182002-11-25 Dave Love <fx@gnu.org>
4042a81a 8619
048addec 8620 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 8621
048addec 8622 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 8623
048addec 86242002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 8625
048addec 8626 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 8627
048addec 86282002-11-24 Steven Tamm <steventamm@mac.com>
82122254 8629
048addec
JD
8630 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
8631 determine the size of pointers alloced in unexed space instead
8632 of using possibly invalid emacs_zone pointers. This fixes the
8633 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 8634
048addec 86352002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 8636
048addec 8637 * search.c (Fstring_match): Doc fix.
c1ee53bc 8638
048addec
JD
8639 * callint.c (Fcall_interactively): If a command fails because
8640 `*' detects a read-only buffer, but RECORD_FLAG is set,
8641 record it anyway if the args don't actually do tty input.
5598c32e 8642
048addec 86432002-11-22 Dave Love <fx@gnu.org>
5598c32e 8644
048addec 8645 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 8646
048addec
JD
8647 * keyboard.c (interrupt_signal): Provide forward declaration.
8648 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 8649
048addec 8650 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 8651
048addec 86522002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 8653
048addec
JD
8654 * eval.c (interactive_p): Skip any number of bytecode
8655 and special form frames, in any order.
516eea8e 8656
048addec 86572002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 8658
048addec
JD
8659 * w32fns.c (convert_mono_to_color_image): New function.
8660 (xbm_load, xbm_load_image): Use it when foreground or background
8661 is explicitly set.
04dbfa08 8662
048addec 86632002-11-19 Dave Love <fx@gnu.org>
04dbfa08 8664
048addec 8665 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 8666
048addec 86672002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 8668
048addec
JD
8669 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
8670 (XPutPixel): Swap blue and red.
8671 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
8672 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
8673 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
8674 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 8675
048addec 86762002-11-18 Dave Love <fx@gnu.org>
d824beee 8677
048addec 8678 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 8679
048addec 8680 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 8681
048addec 8682 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 8683
048addec
JD
8684 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
8685 malloc, realloc, calloc.
d824beee 8686
048addec
JD
8687 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
8688 (bcmp): Don't define.
d824beee 8689
048addec 8690 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 8691
048addec 8692 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 8693
048addec 8694 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 8695
048addec 8696 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 8697
048addec
JD
8698 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
8699 Don't include alloca.h.
d824beee 8700
048addec 8701 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 8702
048addec 8703 * regex.c (_GNU_SOURCE): Don't define.
1998560a 8704
048addec 8705 * process.c (_GNU_SOURCE): Don't define.
1998560a 8706
048addec 8707 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 8708
048addec 87092002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 8710
048addec 8711 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 8712
048addec 87132002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 8714
048addec
JD
8715 * dispextern.h (struct face): Add `overstrike' field.
8716 * xterm.c (x_draw_glyph_string_foreground)
8717 (x_draw_composite_glyph_string_foreground): Implement overstriking.
8718 * xfaces.c (load_face_font): Set `face->overstrike' based on
8719 result from choose_face_font.
8720 (best_matching_font, choose_face_font): Add `needs_overstrike'
8721 argument, and use it to return whether overstriking is desirable
8722 for this face/font combo.
8723 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 8724
048addec 87252002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 8726
048addec
JD
8727 This change is my fix for the following entry in etc/PROBLEMS:
8728 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
8729 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 8730
048addec
JD
8731 * w32.c: Added wrapper functions around the win32 API functions
8732 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
8733 GetSidIdentifierAuthority. These wrapper functions serve two
8734 purposes:
8735 1. They ensure that the wrapped function can never be called
8736 when Emacs is running on an operating system on which they are
8737 not supported (Microsoft Windows 95 / 98 / ME).
8738 2. They call the wrapped functions via function pointers rather
8739 than calling them directly. This avoids taking advantage of the
8740 undocumented fact that although these functions are not supported
8741 in the 9x branch of Microsoft Windows, the functions do exist in
8742 the version of advapi32.dll that is found in the 9x branch of
8743 Microsoft Windows.
f60ae425 8744
6bdb309a 8745 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
8746 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
8747 and GetSidIdentifierAuthority with calls to the newly added
8748 wrapper functions.
f60ae425 8749
048addec
JD
8750 * w32.h: Added extern declarations for the following functions:
8751 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
8752 syms_of_w32menu, and void syms_of_fontset.
f60ae425 8753
6bdb309a 8754 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
8755 function pointer track_mouse_event_fn in the handler for the
8756 WM_SETFOCUS message.
3582b6a3 8757
6bdb309a 8758 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
8759 reinitialize the function pointers set_menu_item_info and
8760 get_menu_item_info.
f60ae425 8761
048addec 87622002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 8763
048addec
JD
8764 * sound.c: Added a partial implementation of play-sound-internal
8765 for Microsoft Windows. Added various #ifdef / #else / #endif
8766 code blocks to separate the code that will compile under
8767 Microsoft Windows from the code that is specific to Gnu/Linux.
8768 Moved several blocks of code around to make this separation of code
8769 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 8770
048addec 8771 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 8772
048addec
JD
8773 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
8774 added support for play-sound-internal under Windows would be
8775 included in the build of Emacs.
517f42a0 8776
048addec 87772002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 8778
048addec 8779 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 8780
048addec 8781 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 8782
048addec 87832002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 8784
048addec
JD
8785 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
8786 (adjust_point_for_property): Move out of display and invisible even if
8787 we were already inside before (in case a property was added while
8788 we weren't looking). Be more careful when handling invisible props.
8789 Skip invisible text as if it really wasn't there at all.
aab83f91 8790
048addec 87912002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 8792
048addec
JD
8793 * w32term.c (x_draw_image_foreground)
8794 (w32_draw_image_foreground_1): Use standard copy and invert
8795 operations to draw images.
aab83f91 8796
048addec
JD
8797 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
8798 depth of 1.
8799 (xbm_read_bitmap_data): Invert bits as xbm is read in.
8800 (XPutPixel): Don't invert bits here.
a4478a76 8801
048addec 88022002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 8803
048addec
JD
8804 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
8805 (w32_draw_image_foreground_1): Handle image masks.
8806 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 8807
048addec
JD
8808 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
8809 (x_from_xcolors): Adjust RGB values for W32.
8810 (image_background, image_background_transparent)
8811 (postprocess_image, x_to_xcolors, x_disable_image)
8812 (x_build_heuristic_mask): Adapt for W32 and enable.
8813 (x_create_x_image_and_pixmap): Mark images with palettes as such.
8814 (xbm_load): Remove unused variable.
03670a65 8815
048addec 88162002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 8817
048addec 8818 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 8819
048addec 88202002-11-14 Dave Love <fx@gnu.org>
59daa29a 8821
048addec 8822 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 8823
048addec
JD
8824 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
8825 * xmenu.c (unuse_menu_items, digest_single_submenu):
8826 * xfns.c (x_put_x_image):
8827 * xdisp.c (message2_nolog, set_message):
8828 * undo.c (record_point):
8829 * terminfo.c (tparam):
8830 * syntax.c (scan_sexps_forward):
8831 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
8832 * composite.c (update_compositions):
8833 * cm.c (calccost, cmgoto):
8834 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 8835
048addec 8836 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 8837
048addec
JD
8838 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
8839 Don't declare.
59daa29a 8840
048addec 8841 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 8842
048addec
JD
8843 * fns.c (Fcopy_sequence): Doc fix.
8844 (Fmap_char_table): Cast `call2'.
3947677c 8845
048addec
JD
88462002-11-14 Francesco Potorti` <pot@gnu.org>
8847
8848 * s/sol2-8.h: New file.
8849
88502002-11-14 Kim F. Storm <storm@cua.dk>
8851
8852 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
8853 dependency on `risky-local-variable' and the :propertize form.
8854
88552002-11-12 Stefan Monnier <monnier@cs.yale.edu>
8856
8857 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
8858
8859 * syntax.c (scan_sexps_forward): Undo last patch.
8860 Use a more obvious fix: check eob before updating the syntax table.
8861
88622002-11-09 Stefan Monnier <monnier@cs.yale.edu>
8863
8864 * syntax.c (scan_sexps_forward): Update syntax table before reading
8865 a char rather than after so we don't update the table past eob.
8866
88672002-11-09 Dave Love <fx@gnu.org>
8868
8869 * buffer.c (Fset_buffer_major_mode): Fix last change.
8870
8871 * regex.c (regexec): Fix pmatch declaration.
8872
8873 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
8874
8875 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
8876 to self-inserting characters.
8877 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
8878
8879 * coding.c (Vtranslation_table_for_input): New.
8880 (syms_of_coding): DEFVAR it.
8881
88822002-11-08 Juanma Barranquero <lektu@terra.es>
8883
8884 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
8885 window.
8886
88872002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8888
6bdb309a 8889 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
8890 cp, and i.
8891
88922002-11-06 Dave Love <fx@gnu.org>
8893
8894 * buffer.c (Qset_buffer_major_mode_hook): New.
8895 (Fset_buffer_major_mode): Use it.
8896
88972002-11-06 Richard M. Stallman <rms@gnu.org>
8898
8899 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
8900 and stop_polling.
8901
8902 * process.c (wait_reading_process_input):
8903 Test POLLING_PROBLEM_IN_SELECT, not hpux.
8904 Avoid initialization for auto Lisp_Object var.
8905
8906 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
8907
8908 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
8909
89102002-11-05 Richard M. Stallman <rms@gnu.org>
8911
8912 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
8913
8914 * callint.c (Fcall_interactively): New local filter_specs.
8915 (Fcall_interactively): Check for progn as well as let.
8916 Add a gcpro.
8917 (Qprogn): New variable.
8918 (syms_of_callint): Staticpro and init Qprogn.
8919
89202002-11-04 John Paul Wallington <jpw@shootybangbang.com>
8921
8922 * lread.c (Feval_buffer): Doc fix.
8923
89242002-11-04 Dave Love <fx@gnu.org>
8925
8926 * keyboard.c (read_char): Always translate iff
8927 Vkeyboard_translate_table is a char table and c is valid.
8928
8929 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
8930 and fix C types.
8931
89322002-11-03 Stefan Monnier <monnier@cs.yale.edu>
8933
8934 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
8935
8936 * editfns.c (get_pos_property): Don't hardcode Qfield.
8937
8938 * keyboard.c (adjust_point_for_property): Handle `display' prop on
8939 overlays. Also handle `invisible' prop.
8940
89412002-11-02 Stefan Monnier <monnier@cs.yale.edu>
8942
8943 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
8944 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
8945
89462002-11-01 Andreas Schwab <schwab@suse.de>
8947
8948 * editfns.c (Fmessage): Revert last change to properly handle %%.
8949
89502002-11-01 Stefan Monnier <monnier@cs.yale.edu>
8951
8952 * xmenu.c (unuse_menu_items): New fun.
8953 (menu_items_inuse): New var.
8954 (syms_of_xmenu): Initialize it.
8955 (init_menu_items): Use it to detect re-entrance.
8956 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
8957 (Fx_popup_menu): Remove spurious XSETFRAME.
8958
8959 * editfns.c (find_field): Make an exception for nil fields.
8960
89612002-11-01 Dave Love <fx@gnu.org>
8962
8963 * m/gec63.h: Deleted.
8964
89652002-10-31 Dave Love <fx@gnu.org>
8966
8967 * xterm.c (XTread_socket): Fix last change.
8968 (xaw_scroll_callback): Cast call_data to long to avoid warning.
8969
89702002-10-31 Stefan Monnier <monnier@cs.yale.edu>
8971
8972 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
8973
89742002-10-30 Stefan Monnier <monnier@cs.yale.edu>
8975
8976 * editfns.c (overlays_around, get_pos_property): New funs.
8977 (find_field): Use them.
8978 Also be careful not to modify POS before its last use.
8979 (Fmessage): Don't Fformat if there's nothing to format.
8980
89812002-10-30 Dave Love <fx@gnu.org>
8982
8983 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
8984 [HAVE_PTY_H]; Include pty.h.
8985
8986 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
8987
8988 * xterm.c (Qeql): Declare.
8989 (Vx_keysym_table): New.
8990 (syms_of_xterm): Initialize it.
8991 (XTread_socket): Use it. Deal with ASCII keysyms.
8992 (XSetIMValues) [HAVE_X11R6]: Prototype.
8993
8994 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
8995 (lispy_kana_keys): Comment out.
8996 (make_lispy_event) [XK_kana_A]: Comment out.
8997 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
8998 Fix sprintf call.
8999
9000 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
9001 regexp.h change).
9002 (TERMINFO, LIBS_TERMCAP): Define.
9003
9004 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
9005 (bcmp): Define conditional on HAVE_BCMP.
9006 (NO_SIOCTL_H): Don't define.
9007 (TIOCSIGSEND): Don't make conditional on IRIX6.
9008
9009 * s/sol2-5.h: Don't include strings.h.
9010 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
9011
9012 * s/irix6-0.h (IRIX6): Don't define.
9013 (bcopy, bcmp, bzero): Don't undef.
9014
9015 * s/irix6-5.h: Don't include strings.h.
9016 (IRIX6): Don't define.
9017 (bcopy, bcmp, bzero): Don't undef.
9018
9019 * syntax.c (Fforward_comment): Doc fix.
9020
90212002-10-29 Kim F. Storm <storm@cua.dk>
9022
9023 * process.c (Fsignal_process): Allow PROCESS to be specified by
9024 name in addition to pid (as integer or string).
9025
90262002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
9027
9028 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
9029 environments.
9030
90312002-10-27 Kim F. Storm <storm@cua.dk>
9032
9033 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
9034
9035 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
9036
9037 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
9038
9039 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
9040
90412002-10-26 Richard M. Stallman <rms@gnu.org>
9042
9043 * editfns.c (Fformat): Detect invalid format letters for floats.
9044
90452002-10-25 Kenichi Handa <handa@m17n.org>
9046
9047 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
9048 (x_set_title): Likewise.
9049
90502002-10-25 Juanma Barranquero <lektu@terra.es>
9051
9052 * macgui.h:
9053 * w32gui.h: Remove definition of XColor.
9054
9055 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
9056
90572002-10-24 Kim F. Storm <storm@cua.dk>
9058
9059 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
9060 Callers changed (supply dummy arg).
9061
9062 * lisp.h (get_window_cursor_type): Update prototype.
9063
9064 * w32term.c (x_display_and_set_cursor): Get active_cursor from
9065 get_window_cursor_type to track system caret.
9066
90672002-10-24 Kim F. Storm <storm@cua.dk>
9068
9069 * process.c (Fformat_network_address): New function.
9070 (syms_of_process): Defsubr it.
9071 (list_processes_1): Use it to format :local/:remote address if
f9711de4 9072 service/host is not set; before Emacs would crash in that case.
048addec
JD
9073 (Fmake_network_process): Don't use Ffind_operation_coding_system
9074 to setup coding system if host or service is not set.
9075
90762002-10-23 Juanma Barranquero <lektu@terra.es>
9077
9078 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
9079
9080 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
9081 COLORREF.
9082
9083 * macgui.h:
9084 * w32gui.h: Add definition of XColor.
9085
9086 * macfns.c:
9087 * w32fns.c:
9088 * xfaces.c: Remove definition of XColor.
9089
90902002-10-22 Stefan Monnier <monnier@cs.yale.edu>
9091
9092 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
9093
9094 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
9095 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
9096 window if it is dedicated.
9097 (Fshrink_window): Add preserve_before as was done for enlarge_window.
9098 (Vspecial_display_function): Update docstring.
9099
9100 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
9101 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
9102 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
9103
91042002-10-21 Stefan Monnier <monnier@cs.yale.edu>
9105
9106 * casefiddle.c (casify_region): Don't treat a prefix char as part
9107 of a word when at the beginning.
9108
91092002-10-17 Juanma Barranquero <lektu@terra.es>
9110
9111 * lread.c (syms_of_lread): Fix typos.
9112
91132002-10-17 Dave Love <fx@gnu.org>
9114
9115 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
9116
91172002-10-16 Richard M. Stallman <rms@gnu.org>
9118
9119 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
9120
91212002-10-14 Juanma Barranquero <lektu@terra.es>
9122
9123 * w16select.c (syms_of_win16select): Fix docstring for
9124 `selection-coding-system'.
9125
9126 * w32select.c (syms_of_w32select): Likewise.
9127
91282002-10-14 Stefan Monnier <monnier@cs.yale.edu>
9129
9130 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
9131 a backslash-quoted char.
9132 (scan_lists, scan_sexps_forward): Pacify the compiler.
9133
91342002-10-13 Richard M. Stallman <rms@gnu.org>
9135
9136 * window.c (window_scroll): Set immediate_quit.
9137
9138 * print.c (print): When backquote form is the car of a list,
9139 output in old style. Use old_backquote_output to output all
9140 comma forms inside it in old style too.
9141
9142 * buffer.h (struct buffer): Move `undo_list' down below `name'.
9143
91442002-10-11 Markus Rost <rost@math.ohio-state.edu>
9145
9146 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
9147 batch mode).
9148
9149 * lread.c (Fload): Doc fix (load-suffixes).
9150
91512002-10-10 Steven Tamm <steventamm@mac.com>
9152
9153 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
9154 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
9155 Also switch the default to Qnil from Qt.
9156
91572002-10-08 Kenichi Handa <handa@m17n.org>
9158
9159 * coding.c (code_convert_region): When we need more GAP for
9160 conversion, pay attention to the case that coding->produced is not
9161 greater than coding->consumed.
9162
91632002-10-07 Richard M. Stallman <rms@gnu.org>
9164
9165 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
9166
91672002-10-06 Andrew Choi <akochoi@shaw.ca>
9168
9169 * macmenu.c (mac_menu_show): Add j to count menu items; match
9170 menu_item_selection to it to find selected item.
9171
91722002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9173
9174 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
9175 cases. The correct fix is to pass ReparentNotify to Xt.
9176 The shell widget interprets ConfigureNotify differently depending
9177 on if it has been reparented or not.
9178
91792002-10-05 Markus Rost <rost@math.ohio-state.edu>
9180
9181 * editfns.c (Fformat_time_string): Doc fix.
9182
91832002-10-05 John Paul Wallington <jpw@shootybangbang.com>
9184
9185 * fns.c (Flength): Doc fix.
9186
91872002-10-04 Stefan Monnier <monnier@cs.yale.edu>
9188
9189 * keyboard.c (keyremap): New struct.
9190 (read_key_sequence): Use it: globally replace keytran_foo with
9191 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
9192 keytran_next and fkey_next to just `next'.
9193
91942002-10-04 Steven Tamm <steventamm@mac.com>
9195
9196 * macterm.c (keycode_to_xkeysym_table): Change return to be
9197 treated like an X keysym.
9198
91992002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9200
9201 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
9202 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
9203 This is to also handle x/y changes that occur because of a resize.
9204
92052002-10-02 John Paul Wallington <jpw@shootybangbang.com>
9206
9207 * frame.c (Vdelete_frame_functions): New variable.
9208 (syms_of_frame): Initialize and defvar it.
9209 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
9210 it when frame's `tooltip' parameter is non-nil.
9211
9212 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
9213
9214 * w32fns.c (x_create_tip_frame): Likewise.
9215
9216 * macfns.c (x_create_tip_frame): Likewise.
9217
92182002-09-30 Kenichi Handa <handa@m17n.org>
9219
9220 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
9221 -1 before calling ccl_driver.
9222
9223 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
9224 Only when it is non-nil, handle composition sequence.
9225 (setup_coding_system) <0>: Don't force composition handling.
9226
9227 * Makefile.in (lisp, shortlisp): Add utf-16.elc
9228
92292002-09-29 Richard M. Stallman <rms@gnu.org>
9230
9231 * search.c (Freplace_match): Adjust match data for the substitution
9232 just made in the buffer.
9233
9234 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
9235 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
9236
92372002-09-27 Richard M. Stallman <rms@gnu.org>
9238
9239 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
9240 (read_char): Use them. Do all exits thru the end of the function.
9241
92422002-09-27 Kenichi Handa <handa@etl.go.jp>
9243
9244 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
9245 is nil.
9246
92472002-09-26 Richard M. Stallman <rms@gnu.org>
9248
9249 * regex.h (__restrict_arr): Don't define if already defined.
9250
9251 * coding.c (run_pre_post_conversion_on_str):
9252 Save and restore Vdeactivate_mark.
9253
92542002-09-26 John Paul Wallington <jpw@shootybangbang.com>
9255
9256 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
9257
92582002-09-26 Kenichi Handa <handa@etl.go.jp>
9259
9260 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
9261 nonzero, try face's family at first. Otherwise try FAMILY at first.
9262 (choose_face_font): If C is a single byte char or latin-1, call
9263 try_font_list with PREFER_FACE_FAMILY 1.
9264
92652002-09-21 Richard M. Stallman <rms@gnu.org>
9266
9267 * window.c (select_window_1): Don't select frame.
9268 Set frame's selected window only when frame itself is selected.
9269 (Fselect_window): Doc fix.
9270
92712002-09-18 Kim F. Storm <storm@cua.dk>
9272
9273 * process.c (make-network-process): Doc fix (there is no
9274 network-server-log-function hook).
9275
92762002-09-18 Richard M. Stallman <rms@gnu.org>
9277
9278 * print.c (print): Clear out the unused parts of Vprint_number_table.
9279 (syms_of_print): Doc fix for `print-number-table'.
9280
9281 * unexelf.c (unexec): Undo previous change.
9282
92832002-09-17 Andreas Schwab <schwab@suse.de>
9284
9285 * m/alpha.h [LINUX]: Don't define DATA_START.
9286
92872002-09-16 Dave Love <fx@gnu.org>
9288
9289 * unexelf.c (unexec): Deal with .got, reinstating change from
9290 25-08-1999.
9291
92922002-09-13 Richard M. Stallman <rms@gnu.org>
9293
9294 * s/sol2-6.h (UNEXEC): Comment out definition.
9295
9296 * unexsol.c (unexec): Don't downcase first letter of error msg.
9297
9298 * xfaces.c (Fcolor_supported_p): Just one arg is required.
9299
93002002-09-12 Markus Rost <rost@math.ohio-state.edu>
9301
9302 * unexsol.c: Include buffer.h, charset.h, coding.h.
9303
93042002-09-11 Richard M. Stallman <rms@gnu.org>
9305
9306 * unexsol.c: Don't use report_file_error; do it by hand
9307 using dlerror.
9308
9309 * process.c (wait_reading_process_input, both versions):
9310 Before calling turn_on_atimers, call stop_polling.
9311
9312 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
9313
9314 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
9315 we go to too_near_end, call clear_glyph_matrix.
9316 (redisplay_window): After make_cursor_line_fully_visible,
9317 call clear_glyph_matrix and bypass `goto done'.
9318
9319 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
9320 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
9321
93222002-09-10 Richard M. Stallman <rms@gnu.org>
9323
9324 * fileio.c (Fdo_auto_save): Catch error making directory.
9325 Only call push_message if we need to.
9326 At the same time, make an unwind-protect to pop it.
9327 Rename local message_p to old_message_p.
9328 (do_auto_save_make_dir, do_auto_save_eh): New functions.
9329 (do_auto_save_unwind): Don't call pop_message.
9330
9331 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
9332
9333 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
9334
9335 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
9336
9337 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
9338
93392002-09-10 Stefan Monnier <monnier@cs.yale.edu>
9340
9341 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
9342 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
9343 (re_match_2_internal): Be more careful with infinite loops.
9344
93452002-09-10 Kim F. Storm <storm@cua.dk>
9346
9347 * macros.c (end_kbd_macro): New function.
9348 (Fend_kbd_macro): Use it.
9349
9350 * macros.h (end_kbd_macro): Declare extern.
9351
9352 * keyboard.c (Fdiscard_input): If defining keyboard macro,
9353 end and save it instead of discarding it.
9354
93552002-09-09 Markus Rost <rost@math.ohio-state.edu>
9356
9357 * s/sol2-6.h: Fix typo. Add comment.
9358
93592002-09-09 Richard M. Stallman <rms@gnu.org>
9360
9361 * regex.c (regnum_t): Use signed int, not unsigned int.
9362
9363 * s/sol2-6.h: New file.
9364
9365 * s/sol2-5.h (UNEXEC): Definition deleted.
9366
93672002-09-08 Kim F. Storm <storm@cua.dk>
9368
9369 * macros.c (executing_macro_index): Change type to EMACS_INT.
9370 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
9371
9372 * macros.h (executing_macro_index): Change type to EMACS_INT.
9373
93742002-09-06 Richard M. Stallman <rms@gnu.org>
9375
9376 * casetab.c (set_case_table): Make canon table point to eqv table.
9377
93782002-09-06 Juanma Barranquero <lektu@terra.es>
9379
9380 * coding.c (syms_of_coding): Fix spacing.
9381
9382 * composite.c (Fcompose_region_internal)
9383 (Fcompose_string_internal): Likewise.
9384
9385 * data.c (Flsh): Likewise.
9386
9387 * fontset.c (Fset_fontset_font): Likewise.
9388
9389 * macfns.c (Fx_server_max_request_size): Likewise.
9390
9391 * w16select.c (syms_of_win16select): Likewise.
9392
9393 * w32select.c (syms_of_w32select): Likewise.
9394
9395 * xselect.c (syms_of_xselect): Likewise.
9396
93972002-09-05 Richard M. Stallman <rms@gnu.org>
9398
9399 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
9400 call EXTEND_RANGE_TABLE and return a proper value.
9401 (set_image_of_range): Don't call set_image_of_range_1
9402 if no TRANSLATE or if range includes all of Latin-1.
9403 Only call it for the Latin-1 part of the range.
9404 For other cases, make two separate ranges,
9405 one for the original specified characters and one for
9406 their case-conversions.
9407
94082002-09-04 Richard M. Stallman <rms@gnu.org>
9409
9410 * s/sol2-5.h (UNEXEC): Use unexsol.o.
9411
9412 * window.c (displayed_window_lines): Correct for one-off bug
9413 in HEIGHT on non-window displays.
9414
9415 * regex.c (set_image_of_range_1): New function.
9416 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
9417 Return a value to indicate running out of memory.
9418 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
9419 (extend_range_table_work_area): New subroutine.
9420 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
9421 Different calling conventions, and used from set_image_of_range{,_1}.
9422 (IMMEDIATE_QUIT_CHECK): Definitions moved.
9423
94242002-09-04 Juanma Barranquero <lektu@terra.es>
9425
9426 * makefile.w32-in: All dependencies updated.
9427
94282002-09-01 Richard M. Stallman <rms@gnu.org>
9429
9430 * unexsol.c: New file.
9431
9432 * xfns.c (Qbox): Declare external, don't define.
9433
9434 * xdisp.c (redisplay_window) <force-start case>:
9435 If point is on semi-visible last line, reposition
9436 it at previous line.
9437
9438 * alloc.c (display_malloc_warning): Use display-warning.
9439 (malloc_warning_1): Function deleted.
9440
9441 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
9442
9443 * lread.c (read1): Handle #! by skipping the line.
9444
94452002-08-31 Richard M. Stallman <rms@gnu.org>
9446
9447 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
9448 Don't include LDFLAGS.
9449 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
9450
94512002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
9452
9453 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
9454 member of x_display_info unless we compile for some window system.
9455
94562002-08-31 Kim F. Storm <storm@cua.dk>
9457
9458 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
9459 (get_window_cursor_type): Don't use them.
9460 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
9461
94622002-08-30 Kenichi Handa <handa@etl.go.jp>
9463
9464 * xdisp.c (get_next_display_element): Fix previous change.
9465
94662002-08-30 Andrew Choi <akochoi@shaw.ca>
9467
9468 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
9469 (expose_window): Use it to fix the display of overlapping
9470 rows (merge code from xterm.c).
9471
9472 * macfns.c (Qbox): Add extern declaration.
9473
94742002-08-30 Juanma Barranquero <lektu@terra.es>
9475
9476 * w32fns.c (Qbox): Make extern.
9477 (syms_of_w32fns): Remove initialization of Qbox.
9478
94792002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
9480
9481 * xfns.c (Fx_open_connection): Fix error message.
9482
94832002-08-30 Kim F. Storm <storm@cua.dk>
9484
9485 The following changes consolidates the handling of the cursor
9486 type in xdisp.c, moving duplicate code and functionality from
9487 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
9488
9489 * frame.h (enum text_cursor_kinds): Consolidated here.
9490 Added DEFAULT_CURSOR value.
9491 (struct frame) <desired_cursor, cursor_width>
9492 <blink_off_cursor, blink_off_cursor_width>: New fields.
9493 Consolidated from output_x, output_w32 and output_mac structs.
9494 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
9495 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
9496
9497 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
9498 Variables consolidated here.
9499 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
9500 (Vcursor_in_non_selected_windows): Renamed from
9501 cursor_in_non_selected_windows and changed to Lisp_Object.
9502 (syms_of_xdisp): Define and staticpro new and moved variables.
9503 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
9504 consolidated here. Recognize Qhollow setting.
9505 (set_frame_cursor_types): New function to set frame cursor types
9506 based on the frame parameters.
9507 (get_window_cursor_type): New function to calculate new cursor
9508 type and width for the specified window. Based on duplicated
9509 code consolidated here.
9510 Enhancements: cursor-in-non-selected-windows may be a cursor type,
9511 check buffer-local alternate-cursor-type and blink-cursor-alist
9512 before using built-in blink off methods.
9513
9514 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
9515
9516 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
9517 (get_specified_cursor_type, get_window_cursor_type)
9518 (set_frame_cursor_types): Added prototypes.
9519
9520 * macfns.c (x_specified_cursor_type): Removed.
9521 (x_set_cursor_type): Use set_frame_cursor_types.
9522 (Qbar, Qbox): Removed.
9523 (syms_of_macfns): Don't intern or staticpro them.
9524
9525 * macterm.c (x_specified_cursor_type): Remove prototype.
9526 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
9527 (x_display_and_set_cursor): Use get_window_cursor_type.
9528 Remove unused local variables cursor_non_selected, active_cursor.
9529 Redraw cursor if hbar cursor width changes.
9530 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
9531
9532 * macterm.h (enum text_cursor_kinds): Removed.
9533 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
9534 <blink_off_cursor, blink_off_cursor_width>: Members removed.
9535 (FRAME_DESIRED_CURSOR): Macro removed.
9536
9537 * w32fns.c (Vblink_cursor_alist): Removed.
9538 (Qbar, Qhbar, Qbox, Qhollow): Removed.
9539 (syms_of_w32fns): Don't intern, staticpro, or define them.
9540 (x_specified_cursor_type): Removed.
9541 (x_set_cursor_type): Use set_frame_cursor_types.
9542
9543 * w32term.c (x_specified_cursor_type): Remove prototype.
9544 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
9545 (x_display_and_set_cursor): Use get_window_cursor_type.
9546 Remove unused local variables cursor_off_state.
9547 Redraw cursor if hbar cursor width changes.
9548 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
9549
9550 * w32term.h (enum text_cursor_kinds): Removed.
9551 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
9552 <blink_off_cursor, blink_off_cursor_width>: Members removed.
9553 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
9554 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
9555 (struct w32_display_info) <x_highlight_frame>: Renamed member from
9556 w32_highlight_frame.
9557
9558 * xfns.c (Vblink_cursor_alist): Removed.
9559 (Qbar, Qhbar, Qbox, Qhollow): Removed.
9560 (syms_of_xfns): Don't intern, staticpro, or define them.
9561 (x_specified_cursor_type): Removed.
9562 (x_set_cursor_type): Use set_frame_cursor_types.
9563
9564 * xterm.c (x_specified_cursor_type): Remove prototype.
9565 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
9566 (x_display_and_set_cursor): Use get_window_cursor_type.
9567 Remove unused local variables cursor_off_state.
9568 Redraw cursor if hbar cursor width changes.
9569
9570 * xterm.h (enum text_cursor_kinds): Removed.
9571 (struct output_x) <current_cursor, desired_cursor, cursor_width>
9572 <blink_off_cursor, blink_off_cursor_width>: Members removed.
9573 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
9574 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
9575 (x_specified_cursor_type): Remove prototype.
9576
95772002-08-28 Richard M. Stallman <rms@gnu.org>
9578
9579 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
9580 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
9581 (Vblink_cursor_alist): New variable.
9582 (syms_of_w32fns): Initialize and defvar it.
9583 (x_specified_cursor_type): Recognize Qbox for filled box.
9584 Exceptions are hollow boxes.
9585 (Qbox, Qhollow): New variables.
9586 (syms_of_w32fns): Initialize and staticpro them.
9587
9588 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
9589 New macros.
9590 (struct w32_output): New fields blink_off_cursor,
9591 blink_off_cursor_width.
9592 (FRAME_CURSOR_WIDTH): New macro.
9593
9594 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
9595 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
9596
9597 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
9598 for bar cursor.
9599
9600 * w32term.c (expose_overlaps): New function.
9601 (expose_window): Use it to fix the display of overlapping rows.
9602
96032002-08-28 Simon Josefsson <jas@extundo.com>
9604
9605 * xfns.c (Fx_open_connection): Improve help when X connection
9606 fails, xhost is insecure and xauth is better.
9607
96082002-08-28 Juanma Barranquero <lektu@terra.es>
9609
9610 * makefile.w32-in: Add missing dependencies on w32term.h and
9611 composite.h.
9612
9613 * emacs.c (USAGE1): Add missing newline.
9614
96152002-08-27 Andrew Choi <akochoi@shaw.ca>
9616
9617 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
9618
96192002-08-27 Richard M. Stallman <rms@gnu.org>
9620
9621 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
9622 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
9623 (Vblink_cursor_alist): New variable.
9624 (syms_of_xfns): Initialize and defvar it.
9625 (x_specified_cursor_type): Recognize Qbox for filled box.
9626 Exceptions are hollow boxes.
9627 (Qbox, Qhollow): New variables.
9628 (syms_of_xfns): Initialize and staticpro them.
9629
9630 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
9631 New macros.
9632 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
9633
9634 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
9635 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
9636
9637 * emacs.c (main): Handle --script.
9638 (USAGE1): Mention --script.
9639 (standard_args): Define sort order for --script.
9640
96412002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
9642
9643 * xdisp.c (redisplay_updating_p): Variable removed.
9644 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
9645 New variables.
9646 (init_iterator): Don't free realized faces if
9647 inhibit_free_realized_faces is set.
9648 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
9649 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
9650 initialize Qinhibit_free_realized_faces.
9651
9652 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
9653 when iterator is adding glyphs to a glyph matrix.
9654
96552002-08-27 Kenichi Handa <handa@etl.go.jp>
9656
9657 * xdisp.c (get_next_display_element): In unibyte case, don't use
9658 octal form for such eight-bit characters that can be converted to
9659 multibyte char.
9660
96612002-08-26 Kim F. Storm <storm@cua.dk>
9662
9663 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
9664 and background colors. From Joe Buehler (tiny change).
9665
96662002-08-26 Miles Bader <miles@gnu.org>
9667
9668 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
9669
96702002-08-25 Andrew Choi <akochoi@shaw.ca>
9671
9672 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
9673 defined instead of MAC_OSX.
9674
9675 * s/darwin.h (select): Define select to sys_select only if
9676 HAVE_CARBON is defined.
9677 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
9678 (DONT_REOPEN_PTY): #def it.
9679
9680 * macterm.c (XTread_socket): Remove code to call
9681 SendEventToEventTarget for keys with command modifiers when
9682 mac_command_key_is_meta is nil.
9683
96842002-08-24 Andreas Schwab <schwab@suse.de>
9685
9686 * eval.c (Fdefvar): Fix last change.
9687
96882002-08-23 Richard M. Stallman <rms@gnu.org>
9689
9690 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
9691 Record variables in load history as (defvar . VAR).
9692 (Fdefvar): Don't record in load history if no initial value.
9693 (Qdefvar): New variable.
9694 (syms_of_eval): Init and staticpro it.
9695
9696 * lread.c (syms_of_lread): Doc fix.
9697 (build_load_history): Use Fmember to see if a definition
9698 is already in the Vload_history element.
9699
9700 * process.c (Fstart_process): Remove /: from program name.
9701
9702 * emacs.c (decode_env_path): Don't add /: if file name handler
9703 has a `safe-magic' property.
9704
9705 * callproc.c (Fcall_process): Remove /: from program name.
9706
97072002-08-23 Stefan Monnier <monnier@cs.yale.edu>
9708
9709 * regex.c (PATFETCH): Remove the translating fetch.
9710 (PATFETCH_RAW): Rename to PATFETCH.
9711 (set_image_of_range): New fun.
9712 (SET_RANGE_TABLE_WORK_AREA): Use it.
9713 (regex_compile): Don't translate the pattern chars so eagerly.
9714 Only do it when inserting an `exactn' bytecode or when handling
9715 a char-range.
9716 (mutually_exclusive_p): Avoid empty statement.
9717
97182002-08-22 Kim F. Storm <storm@cua.dk>
9719
9720 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
9721 end up on a partially visible line; this reverts a specific part
9722 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
9723 display error which has been reported several times now.
9724 However it introduces the problem that changes was supposed to fix.
9725 See my comments in the source if you want to debug this further.
9726
97272002-08-20 Kenichi Handa <handa@etl.go.jp>
9728
9729 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
9730
97312002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
9732
9733 * msdos.c (croak): Add `void' to definition.
9734
c1380aa6 9735 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
048addec
JD
9736 Don't define them, they are defined in msdos.c.
9737
9738 * mem-limits.h [MSDOS]: Declare etext.
9739
9740 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
9741 `const' since CORRECT_DIR_SEPS modifies its target.
9742
97432002-08-19 Kim F. Storm <storm@cua.dk>
9744
2fb0ce67 9745 * keyboard.c (Fclear_this_command_keys): Add optional arg
048addec
JD
9746 KEEP-RECORD to avoid clearing lossage when we just want to clear
9747 the current key sequence (kmacro needs this).
9748
97492002-08-19 Kenichi Handa <handa@localhost>
9750
9751 * composite.c (run_composition_function): Call FUNC if it is fboundp.
9752
9753 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
9754 cons, return Qnil.
9755
97562002-08-17 Richard M. Stallman <rms@gnu.org>
9757
9758 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
9759
9760 * sysdep.c [!VMS]: Include sys/files.h.
9761
9762 * editfns.c (save_restriction_restore): Defend from unchained marker.
9763
9764 * buffer.c (overlays_at): Handle extending vec uniformly.
9765 (overlays_in): Handle extending vec from length 0 as in overlays_at.
9766
97672002-08-15 Andrew Choi <akochoi@shaw.ca>
9768
9769 * mac.c (init_mac_osx_environment): New function.
9770
9771 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
9772
97732002-08-14 Kim F. Storm <storm@cua.dk>
9774
9775 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
9776 executing macro before appending to it (when used from Lisp).
9777 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
9778 which is called prior to each iteration of macro (for kmacro.el).
9779 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
9780
9781 * lisp.h (Fexecute_kbd_macro): Update prototype.
9782
9783 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
9784
97852002-08-14 Kenichi Handa <handa@etl.go.jp>
9786
9787 * xselect.c (QUTF8_STRING): New variable.
9788 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
9789 (x_atom_to_symbol): Likewise.
9790 (x_get_local_selection): New argument local_request. If it is
9791 nonzero, call handler_fn with the second arg nil.
9792 (x_handle_selection_request): Call x_get_local_selection with
9793 local_request 0.
9794 (lisp_data_to_selection_data): Don't encode the string here.
9795 (Fx_get_selection_internal): Call x_get_local_selection with
9796 local_request 1.
9797 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
9798
9799 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
9800
9801 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
9802
98032002-08-13 Richard M. Stallman <rms@gnu.org>
9804
9805 * minibuf.c (Fminibufferp): New function.
9806 (syms_of_minibuf): Defsubr it.
9807 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
9808
98092002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
9810
9811 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
9812
98132002-08-12 Richard M. Stallman <rms@gnu.org>
9814
9815 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
9816 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
9817 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
9818 already.
9819
9820 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
9821
98222002-08-11 Andrew Choi <akochoi@shaw.ca>
9823
9824 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
9825 (Vmac_pass_command_to_system): New variable.
9826 (Vmac_pass_control_to_system): New variable.
9827 (do_mouse_moved): Check wp with is_emacs_window.
9828 (XTread_socket): Check window_ptr with is_emacs_window.
9829 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
9830 events back to Mac Toolbox for processing, depending on values of
9831 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
9832 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
9833 Vmac_pass_control_to_system.
9834
98352002-08-10 Kenichi Handa <handa@etl.go.jp>
9836
9837 * coding.c (unencodable_char_position): New function.
9838 (Funencodable_char_position): New function.
9839 (syms_of_coding): Defsubr Funencodable_char_position.
9840
98412002-08-10 Andrew Choi <akochoi@shaw.ca>
9842
9843 * mac.c (sys_select) [MAC_OSX]: New function.
9844
9845 * macterm.c (MakeMeTheFrontProcess): New function.
9846 (mac_initialize): Call MakeMeTheFrontProcess.
9847
9848 * s/darwin.h: Define select to sys_select.
9849
98502002-08-09 Richard M. Stallman <rms@gnu.org>
9851
9852 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
9853
98542002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
9855
9856 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
9857 end of the buffer.
9858
98592002-08-08 Ken Raeburn <raeburn@mit.edu>
9860
9861 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
9862
9863 * puresize.h (BASE_PURESIZE): Increase to 910000.
9864
98652002-08-08 Kenichi Handa <handa@etl.go.jp>
9866
9867 * coding.c (Ffind_operation_coding_system): For write-region, if
9868 VISIT is a filename, make it the target.
9869
98702002-08-07 Richard M. Stallman <rms@gnu.org>
9871
9872 * alloc.c (mark_object): Detect long lists for debugging.
9873 (mark_object_loop_halt): New variable.
9874
9875 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
9876
9877 * data.c (Fmake_variable_frame_local): Doc fix.
9878
98792002-08-01 David Ponce <david@dponce.com>
9880
9881 * w32menu.c (local_heap, local_alloc, local_free): New macros.
9882 (malloc_widget_value, free_widget_value)
9883 (w32_free_submenu_strings): Use them.
9884
9885 (push_submenu_start, push_submenu_end, push_left_right_boundary)
9886 (push_menu_pane, push_menu_item, single_keymap_panes)
9887 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
9888 (single_submenu, set_frame_menubar)
9889 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
9890
9891 (Fx_popup_menu): Don't show pop up menu until preceding one is
9892 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
9893
9894 * w32menu.c: Changes adapted from xmenu.c
9895 (set_frame_menubar): First parse all submenus,
9896 then make widget_value trees from them.
9897 Don't allocate any widget_value objects
9898 until we are done with the parsing.
9899 (parse_single_submenu): New function.
9900 (digest_single_submenu): New function.
9901 (single_submenu): Function deleted, replaced by those two.
9902
99032002-08-04 Andrew Choi <akochoi@shaw.ca>
9904
9905 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
9906 returns a valid window pointer before proceeding for keyDown and
9907 autoKey events.
9908
99092002-08-03 Andrew Choi <akochoi@shaw.ca>
9910
9911 * macterm.c (USE_CARBON_EVENTS): New macro.
9912 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
9913 (x_iconify_frame): Call CollapseWindow.
9914 (Vmac_reverse_ctrl_meta): New variable.
9915 (Vmac_wheel_button_is_mouse_2): New variable.
9916 (init_mac_drag_n_drop): New function.
9917 (mac_do_receive_drag): New function.
9918 (mac_handle_service_event): New function.
9919 (init_service_handler): New function.
9920 (mac_to_emacs_modifiers): New function.
9921 (mac_event_to_emacs_modifiers): New function.
9922 (mac_get_mouse_btn): New function.
9923 (mac_convert_event_ref): New function.
9924 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
9925 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
9926 mac_get_mouse_btn.
9927 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
9928
9929 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
9930 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
9931 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
9932 TOOL_BAR_EVENT for MAC_OS as well.
9933 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
9934 as for WINDOWS_NT.
9935 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
9936
9937 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
9938
99392002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
9940
9941 * xdisp.c (forward_to_next_line_start): Fix a condition that
9942 lead to a newline being skipped.
9943
99442002-08-02 Andrew Choi <akochoi@shaw.ca>
9945
9946 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
9947
99482002-08-01 Richard M. Stallman <rms@gnu.org>
9949
9950 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
9951
99522002-07-31 Andrew Choi <akochoi@shaw.ca>
9953
9954 * macfns.c: #undef init_process before #define-ing it.
9955
9956 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
9957 HAVE_CARBON is defined.
9958
99592002-07-31 Richard M. Stallman <rms@gnu.org>
9960
9961 * xmenu.c (set_frame_menubar): First parse all submenus,
9962 then make widget_value trees from them.
9963 Don't allocate any widget_value objects
9964 until we are done with the parsing.
9965 (parse_single_submenu): New function.
9966 (digest_single_submenu): New function.
9967 (single_submenu): Function deleted, replaced by those two.
9968
99692002-07-30 Juanma Barranquero <lektu@terra.es>
9970
9971 * w32proc.c (syms_of_ntproc): Fix docstring of
9972 `w32-get-true-file-attributes'.
9973
99742002-07-28 Richard M. Stallman <rms@gnu.org>
9975
9976 * s/hpux8.h (HPUX8): Define this before including hpux.h.
9977 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
9978
9979 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
9980
9981 * keyboard.c (make_lispy_event):
9982 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
9983 Explicitly clear up_modifier in event->modifiers.
9984
99852002-07-27 Richard M. Stallman <rms@gnu.org>
9986
9987 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
9988
9989 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
9990 for bar cursor.
9991
99922002-07-26 Kenichi Handa <handa@etl.go.jp>
9993
9994 * coding.c (detect_coding_iso2022): While checking a byte sequence
9995 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
9996 it in the normal loop.
9997
99982002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
9999
10000 * xterm.c (expose_overlaps): New function.
10001 (expose_window): Use it to fix the display of overlapping rows.
10002
10003 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
10004
100052002-07-23 Ken Raeburn <raeburn@gnu.org>
10006
10007 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
10008 since it only depends on XUINT.
10009
10010 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
10011 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
10012 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
10013 Macros deleted.
3947677c 10014
77d1daf2
AS
10015 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
10016 its value over other approaches.
10017 * sysdep.c (start_of_data): Don't define the function if a macro
10018 form has been defined.
8a8e19a3 10019
048addec
JD
100202002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
10021
10022 * xdisp.c (redisplay_updating_p): New variable.
10023 (init_iterator): Don't free realized faces when
10024 redisplay_updating_p is set.
10025 (redisplay_internal): Set redisplay_updating_p while updating
10026 the display.
10027
100282002-07-23 Richard M. Stallman <rms@gnu.org>
10029
10030 * editfns.c (Fmessage): Treat "" like nil.
10031
100322002-07-23 Kenichi Handa <handa@etl.go.jp>
10033
10034 * xdisp.c (face_before_or_after_it_pos):
10035 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
10036
100372002-07-22 Juanma Barranquero <lektu@terra.es>
10038
10039 * callproc.c (init_callproc) [DOS_NT]:
10040 Initialize Vshared_game_score_directory to nil.
10041 (syms_of_callproc) [DOS_NT]: Likewise.
10042
100432002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
10044
10045 * xdisp.c (display_line): Replace an abort with xassert.
10046
100472002-07-21 Richard M. Stallman <rms@gnu.org>
10048
10049 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
10050 and END_UNCHANGED when setting buffer_unchanged_p.
10051 Use current_matrix_up_to_date_p to decide whether to use
10052 try_cursor_movement.
10053
10054 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
10055
10056 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
10057
10058 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
10059 Set to nil if dir does not exist.
10060 (syms_of_callproc): Init unconditionally and simply.
10061
10062 * buffer.c (Fbuffer_list): Doc fix.
10063
100642002-07-21 Ken Raeburn <raeburn@gnu.org>
10065
10066 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
10067
10068 * buffer.c (mmap_realloc): When shrinking, make sure number of
10069 pages to unmap is rounded towards zero.
10070
10071 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
10072 (XSETINT): Deleted.
10073
10074 * m/att3b.h (XINT): Don't define.
10075 (VALBITS, VALMASK, XTYPE): Deleted.
10076 (DATA_SEG_BITS): Define.
10077 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
10078 ARRAY_MARK_FLAG): Deleted.
10079 (DATA_SEG_BITS): Define.
10080 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
10081 (DATA_SEG_BITS): Define.
10082
100832002-07-20 Richard M. Stallman <rms@gnu.org>
10084
10085 * print.c (print_error_message): New args CONTEXT and CALLER.
10086 Calls changed.
10087
10088 * lisp.h (print_error_message): Declare new args.
10089
10090 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
10091 and CONTEXT to print_error_message, don't print them here.
10092 For a Quit, don't use Vsignaling_function.
10093 Call message_log_maybe_newline.
10094
10095 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
10096
100972002-07-20 Kim F. Storm <storm@cua.dk>
10098
10099 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
10100
101012002-07-19 Ken Raeburn <raeburn@gnu.org>
10102
10103 * bytecode.c (struct byte_stack): Pointers into byte string now
10104 point to const.
10105 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
10106 const.
10107 * charset.h (BCOPY_SHORT): Source pointer now points to const.
10108 * coding.c (encode_eol, detect_coding, detect_eol):
10109 (decode_coding, encode_coding, detect_coding_system):
10110 Source strings now treated as const.
10111 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
10112 modify Lisp string contents.
10113 * coding.h (decode_coding, encode_coding, detect_coding,
10114 detect_eol): Declarations updated.
10115 * composite.c (compose_chars_in_text): Treat Lisp string contents
10116 as const.
10117 * dispnew.c (safe_bcopy): Source pointer now points to const.
10118 * lisp.h (STRING_COPYIN): New macro.
10119 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
10120 (internal_with_output_to_temp_buffer): Declarations updated.
10121 * print.c (temp_output_buffer_setup):
10122 (internal_with_output_to_temp_buffer): Buffer name argument is now
10123 pointer to const.
10124 * sound.c (struct sound_device): Function pointer field "write"
10125 buffer argument now points to const.
10126 (vox_write): Buffer argument points to const.
10127 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
10128 contents as const.
10129 * sysdep.c (emacs_write): Buffer pointer now const.
10130 * term.c (encode_terminal_code): Buffer pointer now const.
10131 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
10132 (x_face_list_fonts, x_update_menu_appearance):
10133 (hash_string_case_insensitive): Treat Lisp string contents as const.
10134
101352002-07-19 Juanma Barranquero <lektu@terra.es>
10136
048addec
JD
10137 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
10138
10139 * fileio.c (syms_of_fileio): Likewise.
c62aec78
JB
10140 (Ffile_name_as_directory): Fix argument name in docstring.
10141 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
048addec
JD
10142
101432002-07-18 Richard M. Stallman <rms@gnu.org>
10144
10145 * data.c (Fdefalias): Doc fix.
10146
101472002-07-17 Dave Love <fx@gnu.org>
10148
10149 * intervals.h (text_property_stickiness): Use P_.
10150
10151 * ccl.c: Remove `emacs' conditionals.
10152 (ccl_backtrace_table): Fix size spec.
10153 (ccl_driver): Fix type errors.
10154
101552002-07-16 Ken Raeburn <raeburn@gnu.org>
10156
10157 * alloc.c (xstrdup, make_string, make_unibyte_string)
10158 (make_multibyte_string, build_string): String pointer args now
10159 point to const.
10160 * charset.c (find_charset_in_text, c_string_width):
10161 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
10162 * fileio.c (report_file_error):
10163 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
10164 (count_combining_before, count_combining_after, insert_1_both):
10165 (insert, insert_and_inherit, insert_string):
10166 (insert_before_markers, insert_before_markers_and_inherit):
10167 * lread.c (intern, oblookup, hash_string):
10168 * minibuf.c (temp_echo_area_glyphs):
10169 * search.c (fast_c_string_match_ignore_case):
10170 * sysdep.c (emacs_open, set_file_times):
10171 * xfaces.c (xstricmp):
10172 * xdisp.c (store_frame_title, string_char_and_length):
10173 (message_dolog, message2, message2_nolog, set_message): Likewise.
10174 (set_message_1): Cast message string argument to const pointer.
10175 * editfns.c (general_insert_function): Insertion function now
10176 takes pointer to const for input data.
10177 * charset.h (find_charset_in_text, c_string_width):
10178 (parse_str_as_multibyte): Declarations updated.
10179 * dispextern.h (xstricmp): Declaration updated.
10180 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
10181 (count_size_as_multibyte, count_combining_before):
10182 (count_combining_after, insert_1, insert_1_both, message_dolog):
10183 (insert, insert_and_inherit, insert_before_markers)
10184 (insert_before_markers_and_inherit, set_message, message2):
10185 (message2_dolog, build_string, make_string, make_unibyte_string):
10186 (make_multibyte_string, intern, oblookup, report_file_error):
10187 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
10188 (emacs_open, xstrdup): Declarations updated.
10189 * systime.h (set_file_times): Declaration updated.
10190
10191 * charset.c (find_charset_in_text, lisp_string_width): Use const
10192 for pointer to lisp string data.
10193 * charset.h (FETCH_STRING_CHAR_ADVANCE):
10194 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
10195 * coding.c (Ffind_coding_systems_region_interval):
10196 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
10197 (Fmake_directory_internal, Fdelete_directory):
10198 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
10199 * fontset.c (font_family_registry, fs_query_fontset):
10200 (list_fontsets):
10201 * frame.c (Fframe_parameter):
10202 * keyboard.c (cmd_error_internal):
10203 * keymap.c (Fdescribe_buffer_bindings):
10204 * lread.c (complete_filename_p, openp):
10205 * minibuf.c (Fminibuffer_complete_word):
10206 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
10207 (face_before_or_after_it_pos, next_element_from_string):
10208 (get_overlay_arrow_glyph_row, display_mode_element):
10209 (decode_mode_spec_coding):
10210 * xterm.c (same_x_server): Likewise.
10211
10212 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
10213 settings of non-existent fields.
10214
10215 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
10216 copy a lisp value.
10217
10218 * lread.c (Fintern_soft): Use string macros instead of
10219 Lisp_String fields.
10220 * keyboard.c (echo_char, parse_modifiers_uncached):
10221 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
10222 * textprop.c (validate_interval_range, interval_of): Likewise.
10223
10224 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
10225
10226 * charset.h (FETCH_STRING_CHAR_ADVANCE)
10227 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
10228 XSTRING()->size_byte.
10229
10230 * lisp.h (SDATA, SREF): Produce rvalue.
10231 (SSET): New macro.
10232 * alloc.c (make_event_array): Use SSET for storing into a string.
10233 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
10234 a string.
10235 * casefiddle.c (casify_object): Use SSET.
10236 * charset.h (FETCH_STRING_CHAR_ADVANCE)
10237 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
10238 address of string contents.
10239 * data.c (Faref): Use SDATA.
10240 (Faset): Use SDATA, SSET.
10241 * dired.c (directory_files_internal): Use SSET.
10242 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
10243 (Fread_file_name): Use SREF, SSET.
10244 * fns.c (concat): Use SSET.
10245 (concat, Fdelete): Use SDATA.
10246 * insdel.c (insert_from_string_1): Use SDATA.
10247 * keyboard.c (Fevent_convert_list): Use SREF.
10248 * lread.c (Fload): Use SDATA, SSET.
10249 * macfns.c (validate_x_resource_name): Use SSET.
10250 * process.c (status_message): Use SSET.
10251 * search.c (wordify): Use SDATA.
10252 (Freplace_match): Use SREF.
10253 * w32fns.c (validate_x_resource_name): Use SSET.
10254 * xfns.c (validate_x_resource_name): Use SSET.
10255 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
10256
102572002-07-16 Richard M. Stallman <rms@gnu.org>
10258
10259 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
10260
10261 * xdisp.c (reconsider_clip_changes):
10262 Don't test prevent_redisplay_optimizations_p.
10263 (redisplay_internal): Test prevent_redisplay_optimizations_p
10264 along with clip_changed in some cases.
10265 (try_window_id): Likewise.
10266 (redisplay_window): New local var buffer_unchanged_p.
10267
10268 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
10269
10270 * process.c (create_process): Test USG_SUBTTY_WORKS.
10271 (process_send_signal): Clean up handling of GID.
10272 Detect errors in ioctls meant to set GID.
10273
10274 * window.c (temp_output_buffer_show):
10275 Don't set prevent_redisplay_optimizations_p.
10276
102772002-07-15 Juanma Barranquero <lektu@terra.es>
10278
10279 * eval.c (Fdefvaralias): Add docstring argument.
10280
102812002-07-15 Ken Raeburn <raeburn@gnu.org>
10282
10283 * lisp.h (STRING_INTERVALS): Produce rvalue.
10284 (STRING_SET_INTERVALS): New macro.
10285 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
10286 * fns.c (Fstring_as_multibyte): Likewise.
10287 * intervals.c (balance_possible_root_interval, delete_interval)
10288 (create_root_interval, copy_intervals_to_string): Likewise.
10289 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
10290 instead of 0.
10291
102922002-07-14 Ken Raeburn <raeburn@gnu.org>
10293
10294 * lisp.h (STRING_SET_CHARS): New macro.
10295 (SCHARS, SBYTES): Produce rvalues.
10296 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
10297 * fns.c (concat): Likewise.
10298 * lread.c (read_vector): Likewise.
10299
10300 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
10301 (STRING_SET_UNIBYTE): New macro.
10302 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
10303 length of -1) changed to use STRING_SET_UNIBYTE.
10304 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
10305 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
10306 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
10307 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
10308 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
10309 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
10310 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
10311 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
10312 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
10313 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
10314 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
10315 STRING_BYTES or indirection changed to SCHARS, SBYTES,
10316 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
10317 unchanged for now.
10318
103192002-07-13 Kim F. Storm <storm@cua.dk>
10320
10321 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
10322
103232002-07-12 Richard M. Stallman <rms@gnu.org>
10324
10325 * fileio.c (Fwrite_region): Doc fix.
10326
10327 * print.c (print_error_message): Don't handle Vsignaling_function here.
10328
10329 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
10330 (command_loop_1): Avoid certain actions after memory-full error.
10331
10332 * eval.c (Fsignal): Don't call cancel_hourglass.
10333 For a memory-full error, don't call Vsignal_hook_function
10334 and don't set Vsignaling_function.
10335
10336 * process.c (process_send_signal): Add abort call.
10337
103382002-07-11 Markus Rost <rost@math.ohio-state.edu>
10339
10340 * keymap.c (Fkey_binding): Fix typo.
10341
103422002-07-11 Richard M. Stallman <rms@gnu.org>
10343
10344 * alloc.c (Vmemory_full): New variable.
10345 (Vmemory_signal_data): Renamed from memory_signal_data.
10346 Uses changed.
10347 (syms_of_alloc): Defvar them.
10348 (memory_full, buffer_memory_full): Set Vmemory_full.
10349
10350 * lisp.h (Vmemory_full): Add declaration.
10351 (current_column, indented_beyond_p): Change declaration.
10352
10353 * indent.c (last_known_column): Declare as double, not float.
10354 (current_column, current_column_1, string_display_width)
10355 (position_indentation): Return `double'.
10356 (indented_beyond_p): Arg `column' is `double'. Callers changed.
10357
10358 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
10359 (back_to_previous_visible_line_start)
10360 (reseat_at_next_visible_line_start, next_element_from_buffer):
10361 Use `double', not `float', when calling indented_beyond_p.
10362
10363 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
10364
10365 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
10366
103672002-07-11 Juanma Barranquero <lektu@terra.es>
10368
10369 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
f9711de4
JB
10370 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
10371 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
10372 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
10373 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
10374 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
048addec
JD
10375
103762002-07-10 Juanma Barranquero <lektu@terra.es>
10377
d814862a
JB
10378 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
10379 All callers changed.
048addec
JD
10380
103812002-07-09 Stefan Monnier <monnier@cs.yale.edu>
10382
10383 * data.c (Fdefalias): Add an optional `docstring' argument.
10384 (set_internal, Fsetq_default): Use XCAR/XCDR.
10385
10386 * composite.c (HASH_VALUE, HASH_KEY):
10387 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
10388
103892002-07-09 Kenichi Handa <handa@etl.go.jp>
10390
10391 * callproc.c (Fcall_process): Fix previous change.
10392
103932002-07-07 Stefan Monnier <monnier@cs.yale.edu>
10394
10395 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
10396 Add support for hash-tables.
10397 (Ftry_completion): Return t even if the string appears multiple times.
10398
10399 * fns.c (Fnconc): Use XCDR.
10400 (Fprovide): Use CONSP and XCDR.
10401 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
10402 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
10403 (Fmake_hash_table): Accept `:size nil'.
10404 (Fmakehash): Delete: moved to subr.el.
10405 (syms_of_fns): Don't defsubr makehash.
10406
10407 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
10408 (HASH_TABLE_SIZE): Move from fns.c.
10409
104102002-07-07 Richard M. Stallman <rms@gnu.org>
10411
10412 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
10413 Instead just return 0 when there is something to be done.
10414 (try_scrolling): If make_cursor_line_fully_visible returns 0,
10415 retry scrolling as if cursor were off the bottom.
10416 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
10417 return CURSOR_MOVEMENT_MUST_SCROLL.
10418 (redisplay_window): If make_cursor_line_fully_visible returns 0,
10419 go to try_to_scroll.
10420
10421 * buffer.c (Fbuffer_local_value): Store current value into its binding
10422 so we get the up-to-date value for the binding that is loaded.
10423
10424 * eval.c (Fdefmacro): Doc fix.
10425
104262002-07-05 Dave Love <fx@gnu.org>
10427
10428 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
10429 correctly.
10430
10431 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
10432 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
10433 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
10434 CCL_LookupCharConstTbl.
10435 (syms_of_ccl): Defvar translation-hash-table-vector.
10436
104372002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10438
10439 * xdisp.c: Remove unused variable `face'.
10440
104412002-07-04 Juanma Barranquero <lektu@terra.es>
10442
10443 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
10444 obsolescence information.
10445
104462002-07-03 Andrew Choi <akochoi@shaw.ca>
10447
10448 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
10449 pattern. Search cache first.
10450 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
10451 for Japanese font.
10452 (XLoadQueryFont): Use it.
10453
104542002-07-02 Richard M. Stallman <rms@gnu.org>
10455
10456 * keymap.c (Fdefine_key): Doc fix.
10457
10458 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
10459
104602002-07-02 Juanma Barranquero <lektu@terra.es>
10461
10462 * keymap.c (syms_of_keymap): Fix typo.
10463
104642002-07-01 Andrew Choi <akochoi@shaw.ca>
10465
10466 * s/darwin.h: Define POSIX_SIGNALS.
10467
10468 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
10469 and FSRefMakePath to convert FSSpec returned with Apple Event to
10470 Posix pathname.
10471 (mac_initialize) [TARGET_API_MAC_CARBON]:
10472 Call init_required_apple_events and disable the `Quit' menu item
10473 provided automatically by the Carbon Toolbox.
10474
104752002-07-01 Dave Love <fx@gnu.org>
10476
10477 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
10478 for K&R.
10479
10480 * xterm.c: Fix prototype for K&R.
10481
10482 * term.c (costs_set): Declare static, non-initialized for pcc.
10483
104842002-07-01 Richard M. Stallman <rms@gnu.org>
10485
10486 * keyboard.c (timer_last_idleness_start_time): New variable.
10487 (timer_start_idle): Set that.
10488 (read_key_sequence): Use that to reset timer_idleness_start_time
10489 to previous value.
10490
10491 * window.c (Frecenter): With arg, set optional_new_start.
10492
10493 * xdisp.c (redisplay_internal): Make optional_new_start really work.
10494
10495 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
10496 buffer for completion.
10497
104982002-06-29 Ken Raeburn <raeburn@gnu.org>
10499
10500 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
10501
105022002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10503
10504 * keyboard.c (readable_filtered_events): New function that filters
10505 FOCUS_IN_EVENT depending on parameter.
10506 (readable_events): Calls readable_filtered_events, not filtering
10507 FOCUS_IN_EVENT.
10508 (get_filtered_input_pending): New function, filtering parameter passed
10509 to readable_filtered_events.
10510 (get_input_pending): Calls get_filtered_input_pending, not filtering
10511 FOCUS_IN_EVENT.
10512 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
10513 FOCUS_IN_EVENT.
10514
10515 * xterm.h (struct x_output): Add focus_state.
10516
10517 * xterm.c (x_focus_changed): New function.
10518 (x_detect_focus_change): New function.
10519 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
10520 EnterNotify and LeaveNotify to track X focus changes.
10521
105222002-06-28 Andreas Schwab <schwab@suse.de>
10523
10524 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
10525
105262002-06-27 Kim F. Storm <storm@cua.dk>
10527
10528 * xdisp.c: (mode_line_string_list, mode_line_string_face)
10529 (mode_line_string_face_prop): New variables.
10530 (store_mode_line_string): New function.
10531 (display_mode_element): Use store_mode_line_string to
10532 add mode-line string elements to mode_line_string_list
10533 when mode_line_string_list is non-nil.
10534 (Fformat_mode_line): Now returns propertized string by
10535 default. New arg NO-PROPS to ignore properties.
10536 (decode_mode_spec): Only add two dashes for %- in propertized
10537 mode-line string.
10538 (syms_of_xdisp): Init and staticpro mode_line_string_list.
10539
105402002-06-27 Stefan Monnier <monnier@cs.yale.edu>
10541
10542 * minibuf.c (minibuffer_completion_contents): Add return type.
10543
105442002-06-27 Juanma Barranquero <lektu@terra.es>
10545
10546 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
10547
105482002-06-26 Juanma Barranquero <lektu@terra.es>
10549
10550 * fileio.c (read_file_name_cleanup): Add missing return.
10551
105522002-06-26 Richard M. Stallman <rms@gnu.org>
10553
10554 * window.c (Frecenter): Don't set force_start flag.
10555
10556 * minibuf.c (do_completion, Fminibuffer_complete_word)
10557 (Fminibuffer_completion_help): Complete just the text before point.
10558 (minibuffer_completion_contents): New function.
10559
10560 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
10561
10562 * frame.c (frames_bury_buffer): Function deleted.
10563
105642002-06-25 Miles Bader <miles@gnu.org>
10565
10566 * callint.c (Fcall_interactively): When checking to see if doprnt hit
10567 the end of callint_message, allow for a terminating '\0'.
10568
105692002-06-24 Juanma Barranquero <lektu@terra.es>
10570
10571 * w32select.c: Include composite.h
10572
10573 * w16select.c: Likewise.
10574
105752002-06-24 Kenichi Handa <handa@etl.go.jp>
10576
10577 * callproc.c (Fcall_process): If code detection is necessary,
10578 call detect_coding directly here.
10579
10580 * coding.c (detect_eol): Preserve coding->cmp_data.
10581
10582 * w16select.c (Fw16_get_clipboard_data):
10583 * w32fns.c (w32_to_x_font):
10584 * w32select.c (Fw32_get_clipboard_data):
10585 * xselect.c (selection_data_to_lisp_data):
10586 * xterm.c (XTread_socket): Disable composition handling.
10587
105882002-06-24 Stefan Monnier <monnier@cs.yale.edu>
10589
10590 * print.c (temp_output_buffer_setup): Kill all local variables.
10591
105922002-06-22 Stefan Monnier <monnier@cs.yale.edu>
10593
10594 * lread.c (Fread): Remove redundant and imprecise declaration.
10595
10596 * xfns.c (check_x_display_info): Use check_x_frame.
10597
10598 * .gdbinit (xprintsym): Use the new `xname' field.
10599 (xsymbol): Use it.
10600
106012002-06-22 Jason Rumney <jasonr@gnu.org>
10602
10603 * w32fns.c (file_dialog_callback): New function.
10604 (Fx_file_dialog): Allow selecting directories as well as files.
10605
106062002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10607
10608 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
f63fd14e 10609 OpenBSD. Add support for mipseb-*-netbsd* machines.
048addec
JD
10610
106112002-06-17 Andrew Choi <akochoi@shaw.ca>
10612
10613 * macterm.c (mac_scroll_area): Set foreground and backcolor to
10614 black and white before scrolling. Restore frame background and
10615 foreground color after scrolling.
10616 (do_window_update): Call XClearWindow before calling expose_frame.
10617 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
10618 FRAME_FOREGROUND_PIXEL of frame.
10619
10620 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
10621 test Mac command key as <ALT> key.
10622
106232002-06-17 Stefan Monnier <monnier@cs.yale.edu>
10624
10625 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
10626
10627 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
10628 Lookup keys in function-key-map immediately so that key-translation-map
10629 can be applied earlier.
10630 Remove function_key_possible and key_translation_possible, replaced
10631 by checking `keytran_start < t'.
10632
10633 * .gdbinit (xsymbol): Use the new `xname' field.
10634
106352002-06-17 Andrew Choi <akochoi@shaw.ca>
10636
10637 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
10638 test Mac command key as <ALT> key.
10639
10640 * mac.c (do_applescript): Call initialize_applescript if necessary
10641 when first called. Dispose of result_desc only when there is no error.
10642 (Fdo_applescript): Use %d format specifier instead of %ld.
10643
106442002-06-16 Andrew Choi <akochoi@shaw.ca>
10645
10646 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
10647 of FrontWindow for cases keyDown and autoKey.
10648
10649 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
10650 Vdefault_fontset to Monaco with mac-roman coding.
10651
10652 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
10653 init_process before and after inclusion of Carbon/Carbon.h, resp.
10654
10655 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
10656 cursor_gc.
10657 (add_font_name_table_entry): New function.
10658 (init_font_name_table): Use add_font_name_table_entry; add italic,
10659 bold, and bold-italic entries for truetype fonts.
10660
10661 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
10662 for Mac too.
10663 (try_font_list) [MAC_OS]: If no font matches given registry, try
10664 fonts with any registry matching face_family.
10665 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
10666
10667 * s/darwin.h: If autoconf detects the Ncurses library, define
10668 LIBS_TERMCAP to -lncurses to use it.
10669
106702002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
10671
10672 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
10673
106742002-06-15 Richard M. Stallman <rms@gnu.org>
10675
10676 * window.c (Fset_window_configuration): Explicitly preserve
10677 the point value that new_current_buffer had at the start.
10678
106792002-06-14 Juanma Barranquero <lektu@terra.es>
10680
10681 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
10682 Fix typos.
10683
106842002-06-14 Kim F. Storm <storm@cua.dk>
10685
10686 * insdel.c (insert_1_both, insert_from_string_1)
10687 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
10688 insert happened in the end_unchanged region. Otherwise, the
10689 redisplay may be confused and duplicate the last line in the
10690 buffer [seen after save-buffer when require-final-newline==t].
10691
106922002-06-13 Jason Rumney <jasonr@gnu.org>
10693
10694 * w32.c (init_environment): Remove EMACSLOCKDIR.
10695 (stat): Swap _S_IFDIR and _S_IFREG.
10696
106972002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10698
10699 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
10700 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
10701 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
10702 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
10703 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
10704 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
10705 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
10706 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
10707 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
10708 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
10709 SELECTION_REQUEST_EVENT, selection_clear_event to
10710 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
10711 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
10712 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
10713 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
10714 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
10715 no_event to NO_EVENT.
10716
107172002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10718
10719 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
10720
107212002-06-12 Stefan Monnier <monnier@cs.yale.edu>
10722
10723 * intervals.c (textget): Don't forget to `return'.
10724 (lookup_char_property): Use XCAR/XCDR.
10725
107262002-06-12 Juanma Barranquero <lektu@terra.es>
10727
10728 * xdisp.c (Fformat_mode_line): Fix typo.
10729
107302002-06-12 Kim F. Storm <storm@cua.dk>
10731
10732 * xdisp.c (Fformat_mode_line): New function.
10733 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
10734 (store_frame_title_char, store_frame_title): Use unconditionally.
10735 (init_xdisp): Defsubr Fformat_mode_line.
10736 Initialize frame_title_buf etc. unconditionally.
10737
107382002-06-11 Stefan Monnier <monnier@cs.yale.edu>
10739
10740 * keyboard.c (read_key_sequence):
10741 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
10742 things through those maps after downcasing events.
10743 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
10744 applies after function-key-map.
10745 Make sure that keytran can be done in the middle in the sequence.
10746 Be careful not to throw away events past the one we downcase.
10747
10748 * lread.c (read_integer): Remove unused var `tem'.
10749 (read1): Fix int/Lisp_Object mixup.
10750
10751 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
10752
107532002-06-11 Richard M. Stallman <rms@gnu.org>
10754
10755 * keyboard.c (readable_events): Ignore any number of
10756 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
10757
107582002-06-09 Miles Bader <miles@gnu.org>
10759
10760 * xfaces.c (Ftty_supports_face_attributes_p): New function.
10761 (parse_rgb_list, tty_lookup_color): New functions.
10762 (tty_defined_color): Use `tty_lookup_color' to do all the work.
10763 (color_distance, Fcolor_distance): New functions.
10764 (TTY_SAME_COLOR_THRESHOLD): New macro.
10765 (Qtty_color_standard_values): New variable.
10766 (syms_of_xfaces): Initialize new vars & functions.
10767
107682002-06-08 Colin Walters <walters@verbum.org>
10769
10770 * textprop.c (Vchar_property_alias_alist): New variable.
10771 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
10772
10773 * intervals.c (lookup_char_property): New function for looking up
10774 overlay and text properties, created from textget.
10775 (textget): Use it.
10776
10777 * intervals.h (lookup_char_property): Declare.
10778 (Vchar_property_alias_alist): Declare.
10779
10780 * buffer.c (Foverlay_get): Use lookup_char_property.
10781
107822002-06-07 Sam Steingold <sds@gnu.org>
10783
10784 * xselect.c (lisp_data_to_selection_data): Fix last change:
10785 *data_ret is not a Lisp string, while unibyte_string is.
10786
107872002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
10788
10789 * xselect.c (lisp_data_to_selection_data): Fix last change:
10790 set size_ret.
10791
107922002-06-07 Andreas Schwab <schwab@suse.de>
10793
10794 * m/amdx86-64.h: New file.
10795
107962002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
10797
10798 * fns.c (Fstring_make_unibyte): Doc fix.
10799
10800 * xselect.c (lisp_data_to_selection_data): If the requested type
10801 is STRING, call string_make_unibyte to encode the selected text
10802 as a string.
10803
10804 * window.c (Fset_window_hscroll): Doc fix.
10805
108062002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10807
10808 * fileio.c (choose_write_coding_system):
10809 Call select-safe-coding-system properly.
10810
108112002-06-03 Richard M. Stallman <rms@gnu.org>
10812
10813 * xdisp.c (message_with_string): Error if STRING is not a string.
10814
10815 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
10816
10817 * fileio.c (choose_write_coding_system): Pass FILE arg to
10818 Vselect_safe_coding_system_function.
10819
108202002-06-03 Ken Raeburn <raeburn@gnu.org>
10821
10822 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
10823
108242002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
10825
10826 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
10827 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
10828 * keymap.c (describe_command): Likewise.
10829 * minibuf.c (read_minibuf): Likewise.
10830
10831 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
10832 Cast `current_column' return value to int.
10833 (back_to_previous_visible_line_start)
10834 (reseat_at_next_visible_line_start, next_element_from_buffer):
10835 Cast `indented_beyond_p' 3rd arg to float.
10836
10837 * indent.c (last_known_column): Now a float.
10838 (current_column_1, position_indentation, current_column)
10839 (string_display_width): Return float.
10840 (Fcurrent_column): Cast `current_column' return value to int.
10841 (Fcurrent_indentation): Cast `position_indentation' retval to int.
10842 (indented_beyond_p): Third arg now a float.
10843 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
10844
10845 * lisp.h (current_column): Now returns float.
10846 (indented_beyond_p): 3rd arg now a float.
10847
108482002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
10849
10850 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
10851 is Qcompound_text_with_extensions.
10852
10853 * xselect.c (lisp_data_to_selection_data): Always set selection
10854 type as string if x_encode_text returns streingp non-NULL.
10855
10856 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
10857
108582002-05-30 Richard M. Stallman <rms@gnu.org>
10859
10860 * window.c (Fset_window_configuration): Correct the handling
10861 of point in current buffer, to work with multiple windows.
10862
108632002-05-29 Colin Walters <walters@verbum.org>
10864
10865 * lread.c (Fread_from_string): Don't depend on order of evaluation
10866 for C function parameters.
10867
108682002-05-28 Richard M. Stallman <rms@gnu.org>
10869
10870 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
10871 way for blinked-off state and for a nonselected window.
10872
10873 * window.c (window_scroll_pixel_based): Don't call Fbolp;
10874 instead, see if the new start pos is at beginning of line.
10875
10876 * fileio.c (Fwrite_region): If START is a string, don't
10877 make any annotations.
10878
10879 * eval.c (syms_of_eval): Doc fix.
10880
108812002-05-28 Colin Walters <walters@debian.org>
10882
10883 * emacs.c (USAGE1): Add --no-splash.
10884 (standard_args): Ditto.
10885
108862002-05-28 Colin Walters <walters@gnu.org>
10887
10888 * lread.c (readchar_count): New variable.
10889 (readchar): Increment it.
10890 (unreadchar): Decrement it.
10891 (read_multibyte): Decrement it.
10892 (Vread_with_symbol_positions): New variable.
10893 (Vread_symbol_positions_list): New variable.
10894 (read_internal_start): New function, created from Fread and
10895 Fread_from_string. Handle Vread_symbol_positions_list and
10896 Vread_with_symbol_positions.
10897 (readevalloop, Fread, Fread_from_string): Use it.
10898 (read1): Use readchar_count to add symbol positions to
10899 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
10900 (syms_of_lread): DEFVAR_LISP and initialize them.
10901
10902 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
10903 (substitute_object_recurse, substitute_object_in_subtree)
10904 (substitute_in_interval): Prototype.
10905 (read_multibyte): Return c if it's less than zero.
10906
109072002-05-28 Kim F. Storm <storm@cua.dk>
10908
10909 * fileio.c (Fread_file_name_internal): Added brute-force
10910 speed up for using predicate file-directory-p.
10911
109122002-05-28 Kim F. Storm <storm@cua.dk>
10913
10914 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
10915 New variables.
10916 (syms_of_fileio): DEFVAR_LISP them.
10917 (read_file_name_cleanup): New unwind function.
10918 (Fread_file_name_internal): Only return completions satifying
10919 Vread_file_name_predicate. Temporarily unwind protect and rebind
10920 default-directory while checking completions against the predicate.
10921 (Fread_file_name): Added PREDICATE argument. Specbind it to
10922 Vread_file_name_predicate during completion.
10923 Call Vread_file_name_function to read the file name if non-nil.
10924
10925 * lisp.h (Fread_file_name): Now has 6 args.
10926
10927 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
10928 predicate for Fread_file_name when reading directory name.
10929 Supply Qnil for predicate in other calls to Fread_file_name.
10930
109312002-05-26 Miles Bader <miles@gnu.org>
10932
10933 * term.c (tty_capable_p): New function.
10934 * dispextern.h (tty_capable_p): New function declaration.
10935 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
10936 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
10937
109382002-05-23 Stefan Monnier <monnier@cs.yale.edu>
10939
10940 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
10941 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
10942 (Vwrite_region_annotate_functions): Docstring fix.
10943
109442002-05-23 Kim F. Storm <storm@cua.dk>
10945
10946 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
10947 phys_cursor's hpos is overwritten. This is still not completely
10948 correct, as it doesn't really make sense to use hpos at all to
10949 get the cursor glyph (as that is relative to the width of the
10950 characters on the line, which may have changed during the update).
10951
109522002-05-22 Jason Rumney <jasonr@gnu.org>
10953
10954 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
10955 Lisp_Object.
10956 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
10957 Use modified enumfont_t struct.
10958
10959 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
10960
10961 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
10962 Handle the `hbar' cursor type.
10963 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
10964
10965 * w32fns.c (Qhbar): New variable.
10966 (x_specified_cursor_type): Use it.
10967
109682002-05-21 Ken Raeburn <raeburn@gnu.org>
10969
10970 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
10971 now, when the address is needed.
10972
109732002-05-21 Colin Walters <walters@gnu.org>
10974
10975 * Makefile.in (shortlisp): Add font-core.el.
10976
109772002-05-20 Richard M. Stallman <rms@gnu.org>
10978
10979 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
10980
10981 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
10982 equivalent key bindings here.
10983
109842002-05-20 Ken Raeburn <raeburn@gnu.org>
10985
10986 Change symbol structure to contain a lisp object for the symbol
10987 name:
10988 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
10989 object field named "xname".
10990 (SYMBOL_NAME): New macro.
10991 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
10992 name field.
10993 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
10994 (mark_object, gc_sweep): Use symbol xname field and XSTRING
10995 instead of name field.
10996 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
10997 SYMBOL_NAME instead of XSYMBOL and name field.
10998 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
10999 instead of XSYMBOL and name field.
11000 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
11001 and SYMBOL_NAME instead of XSYMBOL and name field.
11002 * coding.c (Fread_coding_system, code_convert_region1)
11003 (code_convert_string1, code_convert_string_norecord)
11004 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
11005 XSYMBOL and name field.
11006 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
11007 (Fmake_variable_buffer_local, Fmake_local_variable)
11008 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
11009 of XSYMBOL and name field.
11010 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
11011 XSYMBOL and name field.
11012 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
11013 instead of XSYMBOL and name field.
11014 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
11015 XSYMBOL and name field.
11016 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
11017 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11018 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
11019 instead of XSYMBOL and name field.
11020 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
11021 (parse_modifiers, apply_modifiers, Fevent_convert_list)
11022 (parse_solitary_modifier, Fexecute_extended_command):
11023 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11024 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
11025 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
11026 of XSYMBOL and name field.
11027 (describe_command, describe_translation): Use SYMBOL_NAME and
11028 assignment instead of XSYMBOL and name field and XSETSTRING.
11029 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
11030 instead of XSYMBOL and name field.
11031 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
11032 name field and XSETSTRING.
11033 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
11034 of XSYMBOL and name field.
11035 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
11036 assignment instead of XSYMBOL and name field and XSETSTRING.
11037 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
11038 XSTRING instead of XSYMBOL and name field.
11039 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
11040 and XSTRING instead of XSYMBOL and name field.
11041 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
11042 and XSTRING instead of XSYMBOL and name field.
11043 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
11044 XSTRING instead of XSYMBOL and name field.
11045 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
11046 of XSYMBOL and name field.
11047 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
11048 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11049
110502002-05-19 Ken Raeburn <raeburn@gnu.org>
11051
11052 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
11053 and XCDR real rvalues in most configurations.
11054
11055 * buffer.c (fix_overlays_in_range, fix_overlays_before):
11056 Don't take the address of the cdr part of a cons cell; instead, track
11057 the parent cell and call XSETCDR, or set the variable for the head
11058 of the list if we haven't started down the list yet.
11059
110602002-05-19 Richard M. Stallman <rms@gnu.org>
11061
11062 * doc.c (reread_doc_file): Don't ask for confirmation.
11063
110642002-05-18 Jason Rumney <jasonr@gnu.org>
11065
11066 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
11067 (xbm_load_image): Use it.
11068 (xbm_load): Ditto.
11069 (xbm_read_bitmap_data): Reverted to xfns.c version.
11070 From David Ponce <david@dponce.com>.
11071
110722002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
11073
11074 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
11075 2.02 and later.
11076
110772002-05-16 Juanma Barranquero <lektu@terra.es>
11078
11079 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
11080
110812002-05-15 Stefan Monnier <monnier@cs.yale.edu>
11082
11083 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
11084 meaningful test.
11085 (read_char_minibuf_menu_prompt): Fix typo.
11086
110872002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
11088
11089 * eval.c (Fcommandp): Doc fix.
11090
110912002-05-13 Stefan Monnier <monnier@cs.yale.edu>
11092
11093 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
11094 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
11095 (Fset_keymap_parent): Gcpro a bit more.
11096 (access_keymap): Gcpro around meta_map call and around the main loop.
11097 (get_keyelt): Gcpro when following indirect references.
11098 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
11099 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
11100 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
11101 Remove useless ad-hoc remap code.
11102
111032002-05-13 Richard M. Stallman <rms@gnu.org>
11104
11105 * search.c (search_buffer): Give up boyer moore search if inverse
11106 translation change charset_base.
11107
111082002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
11109
11110 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
11111 characters is carried over from the previous block of text, adjust
11112 coding->produced to account for the extra character.
11113
111142002-05-11 Andreas Schwab <schwab@suse.de>
11115
11116 * coding.c (intersection): Keep the elements of the returned list
11117 in the same order as in the first list.
11118
111192002-05-11 Kim F. Storm <storm@cua.dk>
11120
11121 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
11122 only update cmm_size if realloc actually succeeds.
11123 Testing with initial size of 2 elements revealed that using
11124 realloc on GNU/Linux would cause a random trap in xmalloc
11125 later on, so I rewrote the code to use malloc/bcopy/free instead
11126 of realloc.
11127
111282002-05-10 Jason Rumney <jasonr@gnu.org>
11129
11130 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
11131
111322002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
11133
11134 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
11135 parens, to ensure correct evaluation order.
11136
111372002-05-10 Kim F. Storm <storm@cua.dk>
11138
11139 * keymap.c (Vemulation_mode_map_alists): New variable.
11140 (syms_of_keymap): DEFVAR_LISP it.
11141 (current_minor_maps): Process keymap alists in that list before
11142 minor-mode-overriding-map-alist and minor-mode-map-alist.
11143
111442002-05-09 Richard M. Stallman <rms@gnu.org>
11145
11146 * search.c (Freplace_match): Doc fix.
11147
111482002-05-09 Kim F. Storm <storm@cua.dk>
11149
11150 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
11151 Enlarge cursor rectangle drawn around image with non-zero relief.
11152
11153 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
11154 Enlarge cursor rectangle drawn around image with non-zero relief.
11155
11156 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
11157 Enlarge cursor rectangle drawn around image with non-zero relief.
11158
111592002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
11160
11161 * xselect.c (lisp_data_to_selection_data): Don't set selection
11162 type if comes from the Lisp object's car. If the selection
11163 contains a pure ASCII text, always return QSTRING as its type.
11164
111652002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11166
11167 * mac.c (mac-cut-function): Doc fix.
11168
111692002-05-05 Richard M. Stallman <rms@gnu.org>
11170
11171 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
11172
111732002-05-04 Jason Rumney <jasonr@gnu.org>
11174
11175 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
11176 for event-click-count.
11177
11178 * process.c (init_process): Only add server subfeature if we can
11179 use non-blocking I/O.
11180
111812002-05-04 Andrew Choi <akochoi@shaw.ca>
11182
11183 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
11184 repeatedly.
11185
111862002-05-03 Jason Rumney <jasonr@gnu.org>
11187
11188 * process.c (Fmake_network_process): Only support server sockets
11189 when we can make them non-blocking.
11190
11191 * s/ms-w32.h (HAVE_SELECT): Define.
11192
11193 * w32.h (FILE_NDELAY): New flag.
11194
11195 * w32.c (sys_getpeername, fcntl): New functions.
11196 (_sys_read_ahead): Temporarily block on non-blocking sockets.
11197
11198 * w32proc.c: include sys/file.h.
11199
112002002-05-03 Colin Walters <walters@verbum.org>
11201
11202 * callproc.c (Vgame_score_directory): Renamed to
11203 Vshared_game_score_directory.
11204
112052002-04-30 Richard M. Stallman <rms@gnu.org>
11206
11207 * s/gnu.h [emacs]: Include stdio.h.
11208 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
11209
11210 * eval.c (do_autoload): Error if called while preparing to dump.
11211
11212 * fns.c (Frequire): Error if need to load while preparing to dump.
11213
112142002-04-28 Colin Walters <walters@verbum.org>
11215
11216 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
11217 Default to "~/.emacs.d/games".
11218
112192002-04-29 Stefan Monnier <monnier@cs.yale.edu>
11220
11221 * lread.c (openp): Change arg exec_only to predicate.
11222 (build_load_history): Use XCAR/XCDR.
11223 (Flocate_file_internal): New fun.
11224 (syms_of_lread): Defsubr it.
11225 (Fload): Update call to openp.
11226
11227 * lisp.h (openp): Update prototype.
11228
11229 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
11230 * w32proc.c (sys_spawnve):
11231 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
11232 * w32.c (check_windows_init_file):
11233 * sound.c (Fplay_sound_internal):
11234 * process.c (Fstart_process):
11235 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
11236 * mac.c (run_mac_command):
11237 * emacs.c (init_cmdargs):
11238 * callproc.c (Fcall_process): Update call to openp.
11239
11240 * textprop.c (remove_properties): Don't use XCAR without CONSP.
11241
11242 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
11243
112442002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11245
11246 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
11247 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
11248
112492002-04-28 Richard M. Stallman <rms@gnu.org>
11250
11251 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
11252
11253 * eval.c (Fcommandp): New arg for_call_interactively.
11254 * lisp.h (Fcommandp): Declare new arg.
11255
112562002-04-28 Jason Rumney <jasonr@gnu.org>
11257
11258 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
11259
11260 * w32.c (stat, fstat): Use file index information to generate
11261 inodes for directories where available.
11262
112632002-04-26 Andrew Choi <akochoi@shaw.ca>
11264
11265 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
11266 [HAVE_CARBON]: Include Mac object files.
11267
11268 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
11269 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
11270 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
11271 MAC_OSX, and MAC_OS instead of macintosh.
11272
11273 * editfns.c [MAC_OS8]: Include stdio.h.
11274
11275 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
11276
11277 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
11278 Apple Monaco.
11279
11280 * process.c: Declare QCfamily and QCfilter as extern.
11281 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
11282 calling select.
11283
11284 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
11285
11286 * tparam.c [MAC_OSX]: Don't define BC and UP.
11287
11288 * config.in [HAVE_CARBON]: Add.
11289
11290 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
11291 Move here from mac/src and mac/inc.
11292
11293 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
11294
112952002-04-26 Gerd Moellmann <gerd@gnu.org>
11296
11297 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
11298 Compute phys_cursor_width from the x position returned
11299 by x_draw_glyhs, which is cheaper.
11300 (x_display_and_set_cursor): Compute the buffer-local value
11301 of `cursor-in-non-selected-windows' only when needed.
11302
113032002-04-25 Gerd Moellmann <gerd@gnu.org>
11304
11305 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
11306 cursor on a stretch glyph has a width that depends on
11307 x_stretch_cursor_p.
11308
113092002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11310
11311 * abbrev.c (abbrev-start-location): Doc fix.
11312
11313 * indent.c (Fvertical_motion): Fix last change.
11314
113152002-04-25 Gerd Moellmann <gerd@gnu.org>
11316
11317 * indent.c (Fvertical_motion): Move to the start of the line
11318 containing PT before moving up or down.
11319
113202002-04-24 Gerd Moellmann <gerd@gnu.org>
11321
11322 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
11323 case of writing a whole row, more or less analogous to the case of
11324 writing only parts of a row.
11325
11326 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
11327 0 for NO_CURSOR.
11328
11329 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
11330
113312002-04-23 Colin Walters <walters@verbum.org>
11332
11333 * buffer.c (syms_of_buffer): Doc fix.
11334
113352002-04-23 Gerd Moellmann <gerd@gnu.org>
11336
11337 * xterm.c (notice_overwritten_cursor): Handle the special case
11338 of the cursor being in the first blank non-text line at the
11339 end of a window.
11340
11341 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
11342 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
11343 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
11344 bar cursors only, to make phys_cursor_width contain what its name
11345 suggests.
11346 (notice_overwritten_cursor): Consider the cursor image erased if
11347 the output area intersects the cursor image in y-direction.
11348
113492002-04-23 Simon Marshall <simon@gnu.org>
11350
11351 * xfns.c (x_set_mouse_color): Change default for cross_cursor
11352 to XC_hand2.
11353
113542002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11355
11356 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
11357
113582002-04-22 Kim F. Storm <storm@cua.dk>
11359
11360 * textprop.c (remove_properties): Fixed trap for malformed plist.
11361
113622002-04-22 Richard M. Stallman <rms@gnu.org>
11363
11364 * cmds.c (Fend_of_line): Handle intangible text in mid line.
11365
11366 * window.c (make_window): Initialize height_fixed_p,
11367 last_cursor_off_p, and p->cursor_off_p slots.
11368
113692002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11370
11371 * fns.c (use-dialog-box): Doc fix.
11372
113732002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11374
11375 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
11376 variables `row', `i' and `area'.
11377 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
11378 toolkit library.
11379
113802002-04-19 Stefan Monnier <monnier@cs.yale.edu>
11381
11382 * xfaces.c (clear_font_table): Don't free the default font of
11383 a frame even if it's on another display.
11384 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
11385 that could be Qt.
11386
113872002-04-19 Juanma Barranquero <lektu@terra.es>
11388
11389 * indent.c (Fmove_to_column): Remove unused local variable
11390 `next_boundary_byte'.
11391 (current_column_1): Likewise.
11392
113932002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
11394
11395 * msdos.c (Qhbar): New variable.
11396 (syms_of_msdos): Intern and staticpro it.
11397 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
11398 cursor type.
11399
114002002-04-19 Dave Lambert <dlambert@acm.org>
11401
11402 Theses change implement an underscore-like (`hbar') cursor.
11403
11404 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
11405
11406 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
11407 Handle the `hbar' cursor type.
11408 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
11409
11410 * xfns.c (Qhbar): New variable.
11411 (syms_of_xfns): Intern and staticpro it.
11412 (x_specified_cursor_type): Handle `hbar' cursor.
11413
11414 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
11415 not defined.
11416
114172002-04-18 Richard M. Stallman <rms@gnu.org>
11418
11419 * textprop.c (remove_properties): New arg LIST allows scanning
11420 either a list or a plist.
11421 (interval_has_some_properties_list): New function, like
11422 interval_has_some_properties using list instead of plist.
11423 All callers changed.
11424 (Fremove_list_of_text_properties): New function.
11425 (syms_of_textprop): Defsubr it.
11426
114272002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
11428
11429 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
11430
114312002-04-17 Juanma Barranquero <lektu@terra.es>
11432
11433 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
11434
114352002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
11436
11437 * window.c (coordinates_in_window): Don't report on margin area
11438 if its width is zero.
11439
114402002-04-16 Jason Rumney <jasonr@gnu.org>
11441
11442 * w32fns.c (Fx_file_dialog): Decode file name before using.
11443
11444 * w32term.c (construct_drag_n_drop): Likewise.
11445
114462002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
11447
11448 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
11449 store load-history in pure space.
11450
11451 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
11452
114532002-04-16 Stefan Monnier <monnier@cs.yale.edu>
11454
11455 * xterm.c (Qlatin_1, Qutf_8): New vars.
11456 (syms_of_xterm): Initialize them.
11457 (XTread_socket): Eliminate incorrect optimization that tried to avoid
11458 decoding the output of X*LookupString.
11459 Always use latin-1 to decode the output of XLookupString.
11460 Try Xutf8LookupString if XmbLookupString failed.
11461
11462 * region-cache.c (new_region_cache): Use BEG.
11463
114642002-04-16 Gerd Moellmann <gerd@gnu.org>
11465
11466 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
11467 configuration files.
11468 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
11469 returns 0.
11470
114712002-04-15 Andreas Schwab <schwab@suse.de>
11472
11473 * config.in: Regenerated using autoheader.
11474
11475 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
11476 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
11477 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
11478 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
11479 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
11480 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
11481 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
11482 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
11483 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
11484 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
11485 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
11486 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
11487 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
11488 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
11489 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
11490 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
11491 STACK_DIRECTION, now set by autoconf.
11492
114932002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11494
11495 * dispnew.c (marginal_area_string): Sort arguments.
11496
11497 * dispextern.h (marginal_area_string): Add prototype.
11498
114992002-04-13 Richard M. Stallman <rms@gnu.org>
11500
11501 * fileio.c (Finsert_file_contents):
11502 Don't call temp_output_buffer_setup--do just part, by hand.
11503
11504 * coding.c (run_pre_post_conversion_on_str):
11505 Don't call temp_output_buffer_setup--do just part, by hand.
11506
11507 * keyboard.c (command_loop_1): Don't call start_hourglass
11508 or cancel_hourglass when executing a macro.
11509
11510 * marker.c (count_markers): New function.
11511
11512 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
11513 grow without limit. Move recently used elements to the front.
11514
115152002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
11516
11517 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
11518
115192002-04-12 Gerd Moellmann <gerd@gnu.org>
11520
11521 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
11522 rows marginal areas.
11523 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
11524 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
11525
11526 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
11527
115282002-04-12 Dave Love <fx@gnu.org>
11529
11530 * dispnew.c (marginal_area_string): New.
11531
11532 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
11533 (Qleft_margin, Qright_margin): Declare.
11534 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
11535
11536 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
11537 note_mode_line_highlight and extended.
11538
11539 * keyboard.c (Qleft_margin, Qright_margin): Declare.
11540 (make_lispy_event): Deal with mouse events in margins.
11541
115422002-04-12 Stefan Monnier <monnier@cs.yale.edu>
11543
11544 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
11545
11546 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
11547 than deactivating the mark if tmm is set to `lambda'.
11548 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
11549 Use a single event for HELP_EVENT.
11550 (Fexecute_extended_command): Save last_point_position.
11551
115522002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11553
11554 * lisp.h (Fpropertize): Add prototype.
11555
11556 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
11557
115582002-04-10 Colin Walters <walters@verbum.org>
11559
11560 * config.in: Add HAVE_SHARED_GAME_DIR.
11561
11562 * callproc.c: (Vgame_score_directory): New variable.
11563 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
11564
115652002-04-10 Richard M. Stallman <rms@gnu.org>
11566
11567 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
11568
115692002-04-09 Stefan Monnier <monnier@cs.yale.edu>
11570
11571 * minibuf.c (read_minibuf): Use empty_string.
11572 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
11573 Short-circuit the search as soon as it "failed".
11574 (Fall_completions): Allow lambda forms and lists of strings for alist.
11575 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
11576 when require_match is nil.
11577 (Ftest_completion): Rename from `test_completion' and export to elisp.
11578 Call the predicate also when alist is a list.
11579 Obey Vcompletion_regexp_list.
11580 (do_completion, Fminibuffer_complete_and_exit): Use it.
11581 (Fassoc_string): Rename from `assoc_for_completion'.
11582 Allow list of strings as well and export to elisp.
11583
115842002-04-08 Stefan Monnier <monnier@cs.yale.edu>
11585
11586 * puresize.h (BASE_PURESIZE): Increase to 900KB.
11587
115882002-04-08 Juanma Barranquero <lektu@terra.es>
11589
11590 * w32.c (sys_accept): Don't hide variable `s'.
11591
115922002-04-05 Gerd Moellmann <gerd@gnu.org>
11593
11594 * callint.c (Fcall_interactively): Use INTEGERP instead of
11595 NUMBERP for checking Vhistory_length.
11596
115972002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11598
11599 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
11600 Doc fix to reflect it.
11601
116022002-04-04 Richard M. Stallman <rms@gnu.org>
11603
11604 * xdisp.c (display_mode_element): New arg RISKY.
11605 Disregard text props found or specified within a variable
11606 that isn't marked risky-local-variable.
11607 (Qrisky_local_variable): New variable.
11608 (syms_of_xdisp): Init and staticpro it.
11609
116102002-04-04 Stefan Monnier <monnier@cs.yale.edu>
11611
11612 * undo.c (record_point): New fun.
11613 (record_delete, record_insert): Use it.
11614
116152002-04-03 Juanma Barranquero <lektu@terra.es>
11616
11617 * doc.c (Fdocumentation): Add missing parentheses.
11618 (Fdocumentation_property): Likewise.
11619
116202002-04-03 Stefan Monnier <monnier@cs.yale.edu>
11621
11622 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
11623 data is 0, just return nil.
11624
116252002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
11626
11627 * msdos.c (syms_of_msdos): Fix last change with
11628 mouse_autoselect_window.
11629
116302002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11631
11632 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
11633 mouse_autoselect_window.
11634
116352002-04-02 Stefan Monnier <monnier@cs.yale.edu>
11636
11637 * keyboard.c (make_lispy_event): Handle unknown keysyms together
11638 with system-specific keysyms. Use it also for unknown function keys.
11639
11640 * doc.c (reread_doc_file): Return whether reload was attempted.
11641 (Fdocumentation, Fdocumentation_property): Don't try to reload
11642 if the doc is 0 and only ask once.
11643
11644 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
11645
116462002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
11647
11648 * keyboard.c (read_char): If the event was Qselect_window,
11649 restore timer_idleness_start_time to its previous value.
11650
11651 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
11652
116532002-04-01 Stefan Monnier <monnier@cs.yale.edu>
11654
11655 * region-cache.c (new_region_cache): Use BEG.
11656
11657 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
11658 Use BEG and BEG_BYTE.
11659
11660 * doc.c (get_doc_string): Return nil if the location is wrong.
11661 (reread_doc_file): New fun.
11662 (Fdocumentation, Fdocumentation_property):
11663 Call it if get_doc_string fails.
11664 (Fsnarf_documentation): Make it work for a dumped Emacs.
11665
11666 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
11667 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
11668
11669 * charset.c (Fstring): Allow 0 arguments.
11670
11671 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
11672
11673 * process.c (DATAGRAM_CONN_P, list_processes_1)
11674 (Fprocess_datagram_address, Fset_process_datagram_address)
11675 (Fset_network_process_options, server_accept_connection):
11676 Fix some int/Lisp_Object confusions (thank you union types).
11677
116782002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11679
11680 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
11681
11682 * w32term.c: Likewise.
11683 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
11684
11685 * keyboard.c (Qselect_window): New symbol.
11686 (head_table): Use it.
11687 (keys_of_keyboard): Bound select-window event to handle-select-window.
11688 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
11689
11690 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
11691 (last_window): New variable.
11692 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
11693 (note_mouse_movement): Remove reimplemented code in #if 0.
11694 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
11695 Emacs windows.
11696
11697 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
11698
116992002-03-31 Gerd Moellmann <gerd@gnu.org>
11700
11701 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
11702 Callers changed.
11703
117042002-03-30 Richard M. Stallman <rms@gnu.org>
11705
11706 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
11707 loop whenever it stops making progress.
11708
11709 * widget.c (set_frame_size): Don't call change_frame_size.
11710
117112002-03-30 Gerd Moellmann <gerd@gnu.org>
11712
11713 * dispnew.c (direct_output_for_insert):
11714 Call mark_window_display_accurate.
11715
117162002-03-29 Jason Rumney <jasonr@gnu.org>
11717
11718 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
11719
117202002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
11721
11722 * Makefile.in (lread.o): Depend on coding.h.
11723
11724 * lread.c (openp, Fload): Encode the file name before passing it
11725 to `stat', `access', and `emacs_open'.
11726 (openp): GCPRO the encoded file name. Don't recompute Lisp
11727 strings unnecessarily.
11728
117292002-03-29 Kim F. Storm <storm@cua.dk>
11730
11731 * fns.c (Flax_plist_put): Doc fix.
11732
117332002-03-28 Miles Bader <miles@gnu.org>
11734
11735 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
11736
117372002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11738
11739 * process.c (set-network-process-options): Add usage.
11740 (make-network-process): Doc fix.
11741
117422002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
11743
11744 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
11745
117462002-03-26 Richard M. Stallman <rms@gnu.org>
11747
11748 * fns.c (Fsubstring_no_properties): New function.
11749 (Flax_plist_get, Flax_plist_put): New functions.
11750 (syms_of_fns): defsubr them.
11751
11752 * xdisp.c (update_menu_bar): Test only update_mode_lines;
11753 don't test or alter w->update_mode_line.
11754
11755 * window.c (Fdisplay_buffer): Doc fix.
11756
117572002-03-24 Richard M. Stallman <rms@gnu.org>
11758
11759 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
11760
117612002-03-24 Gerd Moellmann <gerd@gnu.org>
11762
11763 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
11764 (Fdefmacro): Handle `(declare ...)'.
11765 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
11766 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
11767
117682002-03-24 Jason Rumney <jasonr@gnu.org>
11769
11770 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
11771 (xbm_file_p): Add prototypes.
11772 (xbm_format, xbm_image_p): Sync with xfns.c.
11773 (reflect_byte): New function.
11774 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
11775 (xbm_load_image): Create bitmaps with a depth of 1.
11776 (init_xfns): Enable XBM images.
11777
117782002-03-23 Jason Rumney <jasonr@gnu.org>
11779
11780 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
11781 correctly. Do not pass up_modifier to keyboard buffer.
11782
11783 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
11784
117852002-03-22 Stefan Monnier <monnier@cs.yale.edu>
11786
11787 * Makefile.in (bootstrapclean): New target.
11788 (bootstrap-temacs, bootstrap-doc): Remove.
11789 (bootstrap-emacs): Use a bog-standard `temacs'.
11790 Don't bother to build a DOC file.
11791
11792 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
11793
11794 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
11795 in temacs even if !CANNOT_DUMP.
11796 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
11797
11798 * alloc.c (check_pure_size): Only output a warning.
11799
118002002-03-22 Jason Rumney <jasonr@gnu.org>
11801
11802 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
11803 supported.
11804
11805 * w32term.c (zv_bits): Declare as short, for word alignment.
11806 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
11807 (syms_of_w32term): Define x-use-underline-position-properties.
11808
11809 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
11810 (clear_image_cache): Block input, fix logic, clear matrices in
11811 all frames that share this cache.
11812
118132002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
11814
11815 * emacs.c (main): Update the Copyright year in the blurb printed
11816 by "emacs --version".
11817
11818 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
11819
11820 * xterm.c (XTread_socket): If XK_ISO_Lock and
11821 XK_ISO_Last_Group_Lock are defined, handle keysyms between
11822 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
11823
118242002-03-21 Kim F. Storm <storm@cua.dk>
11825
11826 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
11827 menu-bar bindings in keymap and local-map properties _are_ used.
11828 But try keymap property first in accordance with 2002-01-03 patch.
11829 Added comment describing why this is not always reliable.
11830 (tool_bar_items): Ditto for tool-bar.
11831
118322002-03-21 Jason Rumney <jasonr@gnu.org>
11833
11834 * w32fns.c (x_clear_image_1): Disable color table code.
11835
118362002-03-21 Kim F. Storm <storm@cua.dk>
11837
11838 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
11839 removed the wrong version of the DEFUN macro; fixed it.
11840
11841 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
11842 Fmember rather than Fmemq).
11843 (Fprovide): Check that subfeatures is a list.
11844
11845 * process.c (QCfeature, QCdatagram): Removed variables.
11846 (QCtype, Qdatagram): New variables.
11847 (network_process_featurep): Removed function.
11848 (Fmake_network_process): Removed :feature check.
11849 Use :type 'datagram instead of :datagram t to create a datagram
11850 socket. This allows us to add other connection types (e.g. raw
11851 sockets) later in a consistent manner.
11852 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
11853 supported subfeatures for feature make-network-process.
11854 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
11855 Intern and staticpro QCtype and Qdatagram.
11856 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
11857
11858 * xfns.c: (QCtype): Remove duplicate declaration and
11859 initialization (is now declared in process.c).
11860
11861 * w32fns.c: (QCtype): Remove duplicate declaration and
11862 initialization (is now declared in process.c).
11863
118642002-03-21 Richard M. Stallman <rms@gnu.org>
11865
11866 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
11867 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
11868 when jumping to `fail' to avoid undoing reg changes in the
11869 last iteration of the loop.
11870 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
11871
11872 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
11873 Depend on process.h.
11874
118752002-03-20 Jason Rumney <jasonr@gnu.org>
11876
11877 Most of the following changes are still conditional on HAVE_IMAGES
11878 which is not set by default on Windows.
11879
11880 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
11881
11882 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
11883 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
11884 (four_corners_best, x_clear_image_1, x_clear_image)
11885 (x_alloc_image_color, postprocess_image)
11886 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
11887 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
11888 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
11889
11890 * w32gui.h (struct XImage): Define.
11891
11892 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
11893 extract mouse co-ordinates.
11894
118952002-03-20 Jason Rumney <jasonr@gnu.org>
11896
11897 * w32.c (init_winsock): Dynamically load new server and UDP
11898 socket functions.
11899 (socket_to_fd): New function.
11900 (sys_socket): Use it.
11901 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
11902 (sys_recvfrom, sys_sendto): New wrapper functions.
11903
11904 * process.c (QCfamily, QCfilter): Remove duplicate declaration
11905 and initialization.
11906
11907 * makefile.w32-in (LIBS): Remove $(WSOCK32).
11908
119092002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
11910
11911 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
11912 Don't use "sun" as a variable, it's a predefined constant on Sun
11913 machines.
11914
119152002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11916
11917 * bytecode.c (Fbyte_code): Revert last change.
11918
119192002-03-19 Kim F. Storm <storm@cua.dk>
11920
11921 * makefile.w32-in (LIBS): Add $(WSOCK32).
11922 From David Ponce <dponce@voila.fr>.
11923
119242002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11925
11926 * process.c (wait_reading_process_input): Move variables `pname'
11927 and `pnamelen' down where they are used.
11928
11929 * bytecode.c (Fbyte_code): Discard unused computed value to
11930 prevent gcc warning.
11931
11932 * lisp.h (Fplist_member): Add prototype.
11933
119342002-03-18 Kim F. Storm <storm@cua.dk>
11935
11936 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
11937 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
11938
11939 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
11940 Remove explicit GNU_LINUX settings for datagram support.
11941
119422002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11943
11944 * process.c (Fmake_network_process): Remove unused variable `sa'.
11945 Doc fix. Add usage:.
11946 (set_socket_options): Remove unused variables `optnum' and `opttype'.
11947
119482002-03-17 Richard M. Stallman <rms@gnu.org>
11949
11950 * xdisp.c (cursor_type_changed): New variable.
11951 (redisplay_internal): Redisplay all windows if cursor_type_changed.
11952 Clear it when clearing windows_or_buffers_changed.
11953 (try_cursor_movement, redisplay_window, try_window_id)
11954 (try_window_reusing_current_matrix): Test cursor_type_changed
11955 along with windows_or_buffers_changed.
11956
11957 * window.h (cursor_type_changed): New variable.
11958
11959 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
11960 not update_mode_lines, and always set it to 1.
11961
11962 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
11963 if no frames needed redrawing.
11964
119652002-03-17 Kim F. Storm <storm@cua.dk>
11966
11967 The following changes add support for network server processes,
11968 datagram connections, and local (unix) sockets.
11969
11970 * process.h (struct Lisp_Process): New member log.
11971 Doc fix: Member command used to indicate stopped network process.
11972 Doc fix: Member childp contains plist for network process.
11973 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
11974
11975 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
11976 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
11977 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
11978 New variables.
11979 (NETCONN1_P): New macro.
11980 (DATAGRAM_SOCKETS): New conditional symbol.
11981 (datagram_address): New array.
11982 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
11983 (status_message): Use concat3.
11984 (Fprocess_status): Add `listen' status to doc string. Return `stop'
11985 for a stopped network process.
11986 (Fset_process_buffer): Update contact plist for network process.
11987 (Fset_process_filter): Ditto. Don't enable input for stopped
11988 network processes. Server must listen, even if filter is t.
11989 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
11990 New functions.
11991 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
11992 (Fprocess_contact): Added KEY argument. Handle datagrams.
11993 (list_processes_1): Optionally show only processes with the query
11994 on exit flag set. Dynamically adjust column widths. Omit tty
11995 column if not needed. Report stopped network processes.
11996 Identify server and datagram network processes.
11997 (Flist_processes): New optional arg `query-only'.
11998 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
11999 (conv_lisp_to_sockaddr, set_socket_options)
12000 (network_process_featurep, unwind_request_sigio): New helper functions.
12001 (Fprocess_datagram_address, Fset_process_datagram_address):
12002 (Fset_network_process_options): New lisp functions.
12003 (Fopen_network_stream): Removed. Now defined in simple.el.
12004 (Fmake_network_process): New lisp function. Code is based on previous
12005 Fopen_network_stream, but heavily reworked with new property list based
12006 argument list, support for datagrams, server processes, and local
12007 sockets in addition to old client-only functionality.
12008 (server_accept_connection): New function.
12009 (wait_reading_process_input): Use it to handle incoming connects.
12010 Do not enable input on a new connection if process is stopped.
f63fd14e 12011 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
048addec
JD
12012 (send_process): Handle datagram sockets.
12013 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
12014 network process is indicated by setting command field to t .
12015 (Fprocess_send_eof): No-op if datagram connection.
12016 (Fstatus_notify): Don't read input for a stream server socket or a
12017 stopped network process.
12018 (init_process): Initialize datagram_address array.
12019 (syms_of_process): Intern and staticpro new variables, defsubr new
12020 functions.
12021
120222002-03-16 Jason Rumney <jasonr@gnu.org>
12023
12024 * w32fns.c (w32_to_all_x_charsets): Return correct type in
12025 startup case.
12026
120272002-03-16 Richard M. Stallman <rms@gnu.org>
12028
12029 * xdisp.c (redisplay_internal, redisplay_windows):
12030 Use list_of_error to call internal_condition_case_1.
12031 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
12032 so as to catch all errors with no possibility of debugger redisplay.
12033 (list_of_error): New variable.
12034 (syms_of_xdisp): Init and staticpro it.
12035
12036 * print.c (print_object): Delete `\ ' from printed rep of frame.
12037
120382002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
12039
12040 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
12041 until its implementation is fixed.
12042
120432002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12044
12045 * xfns.c (png_load): Remove unused variable `gamma_str'.
12046
120472002-03-14 Richard M. Stallman <rms@gnu.org>
12048
12049 * xfns.c (x_real_positions): Handle failure in XQueryTree.
12050
120512002-03-14 Miles Bader <miles@gnu.org>
12052
12053 * intervals.c (adjust_for_invis_intang): New function.
12054 (set_point_both): Use `adjust_for_invis_intang' to do most of the
12055 work for dealing with invisible+intangible regions. Do so before
12056 and after both forward and backward movements, to handle both
12057 front-sticky and rear-sticky cases.
12058 * textprop.c (text_property_stickiness): Function moved here from
12059 `editfns.c'.
12060 * intervals.h (text_property_stickiness): New declaration.
12061 * editfns.c (char_property_eq): Function removed.
12062 (text_property_stickiness): Function moved to `textprop.c'.
12063
120642002-03-13 Jason Rumney <jasonr@gnu.org>
12065
12066 * config.in: Add STRFTIME_NO_POSIX2.
12067
12068 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
12069 and %OX when underlying strftime does not.
12070
120712002-03-13 Stefan Monnier <monnier@cs.yale.edu>
12072
12073 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
12074 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
12075 line) to avoid annoying flicker.
12076 (xm_scroll_callback): Get rid of the now unnecessary kludge.
12077 (XTread_socket): Mark it static.
12078
12079 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
12080
120812002-03-13 Kim F. Storm <storm@cua.dk>
12082
12083 * puresize.h (BASE_PURESIZE): Increase to 775000.
12084
120852002-03-12 Juanma Barranquero <lektu@terra.es>
12086
12087 * editfns.c (syms_of_editfns): Fix typo.
12088
120892002-03-12 Gerd Moellmann <gerd@gnu.org>
12090
12091 * xsmfns.c: Include stdio.h because termhooks.h needs it.
12092 Include termopt.h for interrupt_input.
12093
120942002-03-11 Andreas Schwab <schwab@suse.de>
12095
12096 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
12097
120982002-03-11 Gerd Moellmann <gerd@gnu.org>
12099
12100 * xterm.c (note_mouse_movement): Put code for
12101 x_autoselect_window_p in #if 0.
12102
12103 * lread.c (Fload): Don't assume that message_with_string uses the
12104 string it is given like a C string.
12105
121062002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12107
12108 * xterm.h (x_session_check_input, x_session_initialize): Declared.
12109
12110 * xterm.c: (XTread_socket): Add call to x_session_check_input and
12111 x_session_have_connection.
12112 (x_initialize): Add call to x_session_initialize.
12113
12114 * termhooks.h (enum event_kind): Add save_session_event.
12115
12116 * keyboard.c: Add Emacs event save_session_event.
12117
12118 * emacs.c (main): Add call to syms_of_xsmfns.
12119
12120 * lisp.h: Declare syms_of_xsmfns as extern.
12121
12122 * config.in: Add HAVE_X_SM.
12123
12124 * Makefile.in (LIBXT): Add -lSM -lICE
12125 if HAVE_X_SM and not USE_X_TOOLKIT.
12126 (XOBJ): New file xsmfns.c added.
12127
12128 * xsmfns.c: New file for X session management.
12129
121302002-03-09 Jason Rumney <jasonr@gnu.org>
12131
12132 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
12133 read-only when setting modified time.
12134
121352002-03-08 Gerd Moellmann <gerd@gnu.org>
12136
12137 * xdisp.c (move_it_vertically_backward): At the end of the function,
12138 when moving forward by lines, treat terminal frames specially.
12139
12140 * keyboard.c (echo_char): Make sure to add a separator between
12141 keys even if echo_dash hasn't been called.
12142
12143 * xdisp.c: Use new string macros.
12144 (update_echo_area): Pass number of bytes to message3 instead of
12145 number of chars.
12146 (set_message_1): Don't access a string's size_byte directly.
12147 (decode_mode_spec_coding): Use number of bytes of eoltype string
12148 instead number of chars.
12149
12150 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
12151
121522002-03-08 Juanma Barranquero <lektu@terra.es>
12153
12154 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
12155 24-bit.
12156
121572002-03-06 Jason Rumney <jasonr@gnu.org>
12158
12159 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
12160
121612002-03-06 Gerd Moellmann <gerd@gnu.org>
12162
12163 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
12164 (cancel_echoing, echo_length, echo_truncate): Changed to
12165 work with new kboard definition.
12166 (echo_now): Use message3_nolog instead of message2_nolog.
12167
12168 * alloc.c (mark_kboards): Mark echo_string.
12169
12170 * keyboard.h (ECHOBUFSIZE): Removed.
12171 (struct kboard): Member echoptr removed, member echobuf renamed
12172 to echo_string.
12173
12174 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
12175 message3 instead of message2 to display the message using STRING's
12176 text properties.
12177
121782002-03-05 Andreas Schwab <schwab@suse.de>
12179
12180 * xdisp.c (hscroll_margin): Change to EMACS_INT.
12181
121822002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
12183
12184 * frame.c (default-frame-alist): Explain that setting it doesn't
12185 affect existing frames.
12186
121872002-03-05 Stefan Monnier <monnier@cs.yale.edu>
12188
12189 * indent.c (skip_invisible): Fix my brain fart.
12190
12191 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
12192
121932002-03-04 Stefan Monnier <monnier@cs.yale.edu>
12194
12195 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
12196 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
12197 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
12198 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
12199 and variables to use EMACS_INT instead of just int.
12200
12201 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
12202
122032002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
12204
12205 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
12206 environment, pass it down with corrected value.
12207
122082002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12209
12210 * lread.c (read_filtered_event): Do not call start_hourglass
12211 before returning.
12212
122132002-03-04 Juanma Barranquero <lektu@terra.es>
12214
12215 * w32term.c (x_display_and_set_cursor): Fix typo.
12216
122172002-03-03 Richard M. Stallman <rms@gnu.org>
12218
12219 * fileio.c (Fmake_temp_name): Doc fix.
12220
122212002-03-03 Gary Wong <gtw@gnu.org>
12222
12223 * termcap.c [!emacs]: Replace ospeed for building standalone
12224 libtermcap, for binary compatibility.
12225
12226 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
12227
122282002-03-03 Richard M. Stallman <rms@gnu.org>
12229
12230 * xrdb.c (file_p): Rename arg `path' to `filename'.
12231
12232 * abbrev.c (Fexpand_abbrev): Increment plist as use count
12233 only if it is an integer.
12234
12235 * xfns.c (png_load): Set screen_gamma based on f->gamma.
12236 If png_get_sRGB gives an answer, call png_set_gamma
12237 using the default image gamma value.
12238
12239 * lread.c (read1): When reading from a file, default string to
12240 multibyte only if it has some multibyte characters.
12241
12242 * print.c (print_object): Output multibyte chars 128...255
12243 using \x even if ! print_escape_multibyte.
12244
12245 * xdisp.c (display_mode_element): Move the places where
12246 bytepos, charpos, this, and lisp_string are set.
12247 Use lisp_string to set bytepos.
12248
12249 * xdisp.c (redisplay_internal):
12250 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
12251
12252 * xdisp.c (display_mode_element): Merge properties specified with
12253 :propertize onto those that come with the string.
12254
122552002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
12256
12257 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
12258 automatic-hscrolling. Users changed.
12259 <hscroll-margin>: Renamed from automatic-hscroll-margin.
12260 Users changed.
12261 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
12262
122632002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
12264
12265 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
12266
122672002-03-02 Kim F. Storm <storm@cua.dk>
12268
12269 * window.c (Fminibuffer_selected_window): New function.
12270 (syms_of_window): Defsubr it.
12271
122722002-03-01 Kim F. Storm <storm@cua.dk>
12273
12274 * window.h (struct window): New member phys_cursor_width.
12275
12276 * window.c (make_window, replace_window): Init phys_cursor_width.
12277
12278 * xterm.c (x_display_and_set_cursor): Blink box cursor using
12279 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
12280
12281 * w32term.c (x_display_and_set_cursor): Blink box cursor using
12282 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
12283
12284 * lisp.h (GCPRO6): New macro.
12285
12286 * process.c (Fopen_network_stream): Use GCPRO6.
12287
122882002-03-01 Kim F. Storm <storm@cua.dk>
12289
12290 * process.c (Qconnect, Qfailed): New variables.
12291 (syms_of_process): Intern and staticpro them.
12292 (Fprocess_status): Document connect and failed return values.
12293 [NON_BLOCKING_CONNECT]: New conditional.
12294 (connect_wait_mask, num_pending_connects): New variables.
12295 (status_message): Convert Qfailed status.
12296 (Fopen_network_stream): Added support for non-blocking connect.
12297 New optional args: filter, sentinel, non_blocking. Doc updated.
12298 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
12299 (deactivate_process): Handle pending non-blocking connect.
12300 (wait_reading_process_input): Poll for status of non-blocking
12301 connects. Exec sentinel directly when connect succeeds.
12302 (status_notify): Don't read process output if not yet connected.
12303
123042002-02-28 Kim F. Storm <storm@cua.dk>
12305
12306 * window.c: (minibuf_selected_window): Renamed from
12307 Vminibuf_selected_window. Users changed.
12308 (syms_of_window): Staticpro it.
12309
123102002-02-26 Kim F. Storm <storm@cua.dk>
12311
12312 The following changes add a new Vminibuf_selected_window variable
12313 which is similar to Vminibuf_scroll_window, but which is only set
12314 on entry to the minibuffer (from a non-minibuffer window):
12315
12316 * window.c: (Vminibuf_selected_window): New variable.
12317 (struct save_window_data): New member minibuf_selected_window.
12318 (Fset_window_configuration): Restore Vminibuf_selected_window.
12319 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
12320 Set minibuf_scroll_window member to nil if minibuf_level is 0.
12321 (compare_window_configurations): Compare minibuf_selected_window.
12322
12323 * window.h: (Vminibuf_selected_window): Declare extern.
12324
12325 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
12326 entry to minibuffer or on entry from a non-minibuffer window.
12327
12328 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
12329 Vminibuf_selected_window instead of Vminibuf_scroll_window.
12330
12331 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
12332 instead of Vminibuf_scroll_window when deciding in which window
12333 the region should be highlighted. Consequently, the region remains
12334 highlighteded even when a completion buffer is also displayed.
12335
123362002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
12337
12338 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
12339
12340 * xselect.c (Qcompound_text_with_extensions): Renamed from
12341 Qcompound_text_no_extensions.
12342 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
12343
123442002-02-26 Juanma Barranquero <lektu@terra.es>
12345
12346 * w32proc.c (syms_of_ntproc): Doc fix.
12347
123482002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12349
12350 * intervals.h: Include "dispextern.h" unconditionally.
12351
123522002-02-24 Jason Rumney <jasonr@gnu.org>
12353
12354 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
12355 and disp-table.elc.
12356 (lisp): Add emacs-lisp/backquote.elc.
12357
123582002-02-24 Kim F. Storm <storm@cua.dk>
12359
12360 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
12361 The validation of the event type was too strict as it didn't
12362 allow string events; buffer names are used in bindings for
12363 menu-bar-select-buffer (see `menu-bar-update-buffers').
12364
123652002-02-23 Kim F. Storm <storm@cua.dk>
12366
12367 The following changes rework my patch of 2002-02-06 which
12368 added command remapping by entering the commands directly into
12369 the keymaps. Now, command remapping uses an explicit `remap'
12370 prefix in the keymaps, i.e. [remap COMMAND].
12371
12372 * keymap.c (Qremap, remap_command_vector): New variables.
12373 (is_command_symbol): Removed function.
12374 (Fdefine_key): No longer accept a symbol for KEY.
12375 Added validation of [remap COMMAND] argument for KEY.
12376 The DEF is no longer required to be a symbol when remapping a command.
12377 (Fremap_command): New function to remap command through keymaps.
12378 (Flookup_key): Perform command remapping initiated by
12379 Fremap_command directly for speed.
12380 (Fkey_binding): Use Fremap_command for command remapping.
12381 (where_is_internal): Handle new command remapping representation.
12382 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
12383 staticpro them. Defsubr Fremap_command.
12384
12385 * keymap.h (Fremap_command): Declare extern.
12386 (is_command_symbol): Remove extern.
12387
12388 * keyboard.c (command_loop_1): Use Fremap_command for command
12389 remapping; now try command remapping for all symbols.
12390
123912002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
12392
12393 * coding.h (run_pre_post_conversion_on_str): Add prototype.
12394
123952002-02-23 Jason Rumney <jasonr@gnu.org>
12396
12397 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
12398 on the string before encoding it.
12399 (Fw32_get_clipboard_data): Run post-read-conversion on the string
12400 after decoding it.
12401
12402 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
12403
124042002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12405
12406 * w32term.c (enter_timestamp): Remove unused static variable to
12407 prevent warning.
12408
12409 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
12410
124112002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
12412
12413 * w16select.c (Fw16_get_clipboard_data): Fix last change.
12414
12415 * xselect.c (selection_data_to_lisp_data): Fix last change.
12416
124172002-02-22 Jason Rumney <jasonr@gnu.org>
12418
12419 * w32term.h (struct w32_output): New member menu_command_in_progress.
12420
12421 * w32menu.c (menubar_selection_callback): Free the menu and
12422 clear the menu_command_in_progress flag.
12423
12424 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
12425 (menu_free_timer): New variable.
12426 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
12427 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
12428 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
12429 menu command is in progress.
12430 <WM_COMMAND>: Set the menu_command_in_progress flag.
12431 Kill any menu_free_timer that is running.
12432
12433 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
12434 Call ExtTextOutA rather than ExtTextOut.
12435
124362002-02-22 Eli Zaretskii <eliz@gnu.org>
12437
12438 * puresize.h (BASE_PURESIZE): Increase to 755000.
12439
124402002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
12441
12442 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
12443 on the string before encoding it.
12444 (Fw16_get_clipboard_data): Run post-read-conversion on the string
12445 after decoding it.
12446
124472002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
12448
12449 Support for ICCCM Extended Segments in X selections:
12450
12451 * xselect.c <Qcompound_text_no_extensions>: New variable.
12452 (syms_of_xselect): Intern and staticpro it.
12453 (selection_data_to_lisp_data): Run post-read-conversion on decoded
12454 selection text.
12455 (lisp_data_to_selection_data): If next-selection-coding-system is
12456 compound-text-no-extensions, set the type of selection to be
12457 compound-text.
12458
12459 * xterm.h (x_encode_text): Update prototype.
12460
12461 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
12462 callers changed. If SELECTIONP is non-zero, run the
12463 pre-write-conversion function before encoding the selection text.
12464
124652002-02-21 Kim F. Storm <storm@cua.dk>
12466
12467 * frame.c (syms_of_frame): Change mouse-highlight default to t.
12468
12469 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
12470 Correct composing of language-change event.
12471
124722002-02-20 Kim F. Storm <storm@cua.dk>
12473
12474 * keyboard.c (menu_bar_items): Don't include keymap or local-map
12475 bindings at PT when building menu (the menu is not updated often
12476 enough for this to work reliable).
12477 (tool_bar_items): Likewise.
12478 (current_active_maps): Removed unused (and buggy) function.
12479
124802002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12481
12482 * xfns.c (gif_load): Use correct width and height for GIF images.
12483
124842002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
12485
12486 * floatfns.c (Fatan): Accept an optional second arg and call
12487 atan2 if passed 2 args.
12488
124892002-02-18 Jason Rumney <jasonr@gnu.org>
12490
12491 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
12492
124932002-02-17 Jason Rumney <jasonr@gnu.org>
12494
12495 * w32term.c (x_autoselect_window_p): New variable.
12496 (syms_of_w32term): DEFVAR_BOOL and initialize it.
12497 (note_mouse_movement): Use it.
12498
12499 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
12500
12501 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
12502
12503 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
12504 New variables.
12505 (syms_of_w32fns): Intern and staticpro them.
12506 (x_frame_parms) <"fullscreen">: New parameter.
12507 (x_fullscreen_move, x_set_fullscreen): New functions.
12508 (x_set_frame_parameters): Support Qfullscreen.
12509 (x_real_positions): Save x/y_pixels_diff frame params.
12510 (x_figure_window_size): Support full-screen frames.
12511 (Fx_create_frame): Default the fullscreen parameter.
12512
12513 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
12514 (x_fullscreen_adjust): New functions.
12515 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
12516 fullscreen. Call x_check_fullscreen_move, and set the
12517 want_fullscreen member of output_data.w32
12518 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
12519
12520 * w32term.h: New enum for FULLSCREEN_* constants.
12521 (struct w32_output): New members want_fullscreen, x_pixels_diff,
12522 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
12523 (x-fullscreen-adjust): New prototype.
12524
125252002-02-17 Kim F. Storm <storm@cua.dk>
12526
12527 * frame.c: (Vmouse_highlight): New variable.
12528 (syms_of_frame): DEFVAR_LISP it.
12529
12530 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 12531
048addec 12532 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 12533
048addec
JD
12534 * xterm.c (disable_mouse_highlight): Removed variable.
12535 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
12536 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
12537 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
12538 and on after keyboard input.
12539 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 12540
048addec 12541 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 12542
048addec
JD
12543 * msdos.c (disable_mouse_highlight): Removed variable.
12544 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
12545 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
12546 (internal_terminal_init): Initialize mouse_face_hidden.
12547 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
12548 and on after keyboard input.
4f1b1854 12549
048addec 12550 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 12551
048addec
JD
12552 * w32term.c (disable_mouse_highlight): Removed variable.
12553 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
12554 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
12555 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
12556 and on after keyboard input.
12557 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 12558
048addec 125592002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 12560
048addec
JD
12561 * msdos.c (last_mouse_window): New variable.
12562 (dos_rawgetc): Fix last change--if the mouse is in the same window
12563 as recorded in last_mouse_window, don't select this window.
5cb6905d 12564
048addec 12565 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 12566
048addec
JD
12567 * msdos.c (x_autoselect_window_p): New variable.
12568 (syms_of_msdos): Defvar it.
12569 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
12570 which the last mouse movement occured, unless it is already selected.
437dfb9f 12571
048addec
JD
12572 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
12573 New variables.
12574 (syms_of_xdisp): DEVFAR them.
12575 (hscroll_window_tree): Use automatic_hscroll_margin and
12576 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 12577
048addec 125782002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 12579
048addec
JD
12580 * xterm.c (x-autoselect-window): New variable.
12581 (note_mouse_movement): Use it.
9f696a00 12582
048addec 12583 * keyboard.c: Do not include "systime.h" twice.
d57966d7 12584
048addec 125852002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 12586
bfa02563 12587 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
d57966d7 12588
048addec 12589 * alloc.c (NSTATICS): Increase to 1280.
74779f52 12590
048addec 125912002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 12592
048addec 12593 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 12594
048addec
JD
12595 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
12596 (Vx_super_keysym): New variables.
12597 (syms_of_xterm): DEFVAR_LISP them.
12598 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
12599 variables to determine which keys to use for the various modifiers.
a474d59c 12600
048addec 126012002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 12602
048addec
JD
12603 * window.c: (Vmode_line_in_non_selected_windows): Removed.
12604 (mode_line_in_non_selected_windows): New variable.
12605 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 12606
048addec
JD
12607 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
12608 Use mode_line_in_non_selected_windows.
12609 (mode_line_in_non_selected_windows): Declare extern.
12610 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 12611
048addec 126122002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 12613
048addec
JD
12614 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
12615 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
12616 (Fclear_this_command_keys): Doc fixes.
2d10309f 12617
048addec
JD
12618 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
12619 (update_face_from_frame_parameter): Increment face_change_count
12620 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 12621
048addec
JD
12622 * xdisp.c (QCpropertize): New variable.
12623 (mode_line_proptrans_alist): New variable.
12624 (display_mode_element): New arg PROPS; all calls changed.
12625 Implement this, for strings.
12626 Handle literal output of strings by sharing the
12627 main-line code for strings, using local var `literal'.
12628 Handle :propertize feature.
12629 (syms_of_xdisp): Initialze and staticpro QCpropertize and
12630 mode_line_proptrans_alist.
0b1e6b54 12631
048addec 126322002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 12633
048addec
JD
12634 * window.c: (Vmode_line_in_non_selected_windows): New variable.
12635 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 12636
048addec
JD
12637 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
12638 (CURRENT_MODE_LINE_FACE_ID): Use it.
12639 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 12640
048addec
JD
12641 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
12642 to get mode line face.
e17144de 12643
048addec 126442002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 12645
048addec
JD
12646 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
12647 variables; cus-start.el doesn't need them anymore.
44368f8f 12648
048addec 126492002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 12650
048addec
JD
12651 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
12652 reduction. This fixes a display problem where stray newlines were
12653 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 12654
048addec 126552002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 12656
048addec 12657 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 12658
048addec 12659 * xdisp.c (display_mode_lines): Fix last change.
453c5510 12660
048addec 126612002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 12662
048addec
JD
12663 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
12664 match each other.
12665 (w32_load_system_font): Prevent Cleartype fonts from loading.
12666 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 12667
048addec 126682002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 12669
048addec
JD
12670 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
12671 (CURRENT_MODE_LINE_HEIGHT): Use it.
12672 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 12673
048addec
JD
12674 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
12675 (pos_visible_p, handle_face_prop): Likewise.
12676 (display_mode_lines): Likewise, but for the real selected window.
12677 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 12678
048addec
JD
12679 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
12680 in non-selected windows.
12681 (realize_basic_faces): Realize it.
12682 (syms_of_term): Intern and staticpro it.
308dd672 12683
048addec 126842002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 12685
048addec
JD
12686 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
12687 Changed mail addresses to emacs-devel@gnu.org.
308dd672 12688
048addec 126892002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 12690
048addec
JD
12691 * fileio.c (Fsubstitute_in_file_name): If the file name includes
12692 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 12693
048addec 12694 * floatfns.c (Fround): Doc fix.
3c1e6b46 12695
048addec 126962002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 12697
048addec 12698 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 12699
048addec 127002002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 12701
048addec 12702 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 12703
048addec 127042002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 12705
048addec
JD
12706 * keymap.c (where_is_internal): Only check whether definition is
12707 remapped if it fulfills is_command_symbol.
0065bb74 12708
048addec 127092002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 12710
048addec 12711 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 12712
048addec 12713 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 12714
048addec 127152002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 12716
048addec
JD
12717 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
12718 defining command remapping. Doc updated.
12719 (Flookup_key): Remap command through keymap if KEY is a symbol.
12720 (is_command_symbol): New function.
12721 (Fkey_binding): Use it. New optional argument NO-REMAP.
12722 Doc updated. Callers changed. Perform command remapping via
12723 recursive call unless that arg is non-nil.
12724 (where_is_internal): New argument no_remap. Callers changed.
12725 Call recursively to find original key bindings for a remapped
12726 comand unless that arg is non-nil.
12727 (Fwhere_is_internal): New optional argument NO-REMAP.
12728 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 12729
048addec
JD
12730 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
12731 (is_command_symbol): Added prototype.
0d8466cc 12732
048addec
JD
12733 * keyboard.c (Vthis_original_command): New variable.
12734 (syms_of_keyboard): DEFVAR_LISP it.
12735 (command_loop_1): Set it, and perform command remapping.
15fff01d 12736
048addec 127372002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 12738
048addec 12739 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 12740
048addec 127412002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 12742
048addec 12743 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 12744
048addec 127452002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 12746
048addec 12747 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 12748
048addec 127492002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 12750
048addec 12751 * filelock.c (S_ISLNK): Define if not defined.
3a232704 12752
048addec 127532002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 12754
048addec 12755 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 12756
048addec
JD
12757 * lread.c (read1): Redesign strategy for force_multibyte and
12758 force_singlebyte. Now is_multibyte records whether read_buffer
12759 is multibyte. Encountering any multibyte character makes it so.
4e02881b 12760
048addec 127612002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 12762
048addec
JD
12763 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
12764 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 12765
048addec 127662002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 12767
048addec
JD
12768 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
12769 latter never being defined on GNU/Linux.
749f499f 12770
048addec 127712002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 12772
048addec
JD
12773 * xfaces.c (realize_default_face): Don't set the weight and slant of
12774 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 12775
048addec 127762002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 12777
048addec
JD
12778 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
12779 Call cancel_hourglass unconditionally.
d0fd26dd 12780
048addec
JD
12781 * eval.c (Fsignal): Remove duplicated declaration of
12782 the variable `display_hourglass_p'.
b4c45162 12783
048addec 127842002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 12785
048addec 12786 * editfns.c (region_limit): Nicer error message.
c95eaa61 12787
048addec
JD
12788 * coding.c (decode_composition_emacs_mule):
12789 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 12790
048addec
JD
12791 * callint.c (check_mark): New arg to specify clearer error message.
12792 Callers changed.
c95eaa61 12793
048addec 127942002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 12795
048addec 12796 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 12797
048addec 127982002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 12799
048addec
JD
12800 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
12801 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
12802 Fix doc-strings.
c95eaa61 12803
048addec 128042002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 12805
048addec 12806 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 12807
048addec
JD
12808 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
12809 and scroll_up_aggressively.
c95eaa61 12810
048addec 128112002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 12812
048addec 12813 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 12814
048addec 128152002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 12816
048addec
JD
12817 * textprop.c (Fnext_property_change, Fnext_single_property_change)
12818 (Fprevious_property_change, Fprevious_single_property_change):
12819 Stay within the narrowed-buffer boundaries.
e2c3786a 12820
048addec 128212002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 12822
048addec
JD
12823 * term.c (Ftty_display_color_cells): New function.
12824 (syms_of_term): Defsubr it.
12825 (Ftty_display_color_cells, Ftty_display_color_p): Change the
12826 argument name to DISPLAY. Doc fix.
bf794306 12827
048addec
JD
12828 * dispextern.h: Add prototype for set_tty_color_mode and
12829 tty_setup_colors.
bf794306 12830
048addec 128312002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 12832
048addec
JD
12833 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
12834 If region left to draw is not what was expected, mark the frame as
12835 garbaged.
62582985 12836
048addec
JD
12837 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
12838 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 12839
048addec 128402002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 12841
048addec
JD
12842 * w32term.c (x_update_window_begin): Only hide caret if
12843 w32_use_visible_system_caret is set.
12844 (x_update_window_end): Only show caret if
12845 w32_use_visible_system_caret is set.
12846 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 12847
048addec 12848 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 12849
048addec 128502002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 12851
048addec
JD
12852 * unexelf.c (unexec): Define n so as to cause compilation error
12853 for the code where people have often written n instead of nn.
1e9a6186 12854
048addec 12855 * .gdbinit (hookpost-run): Defined.
1e9a6186 12856
048addec 128572002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 12858
048addec 12859 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 12860
048addec 128612002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 12862
048addec
JD
12863 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
12864 if fullscreen is being set.
7c75be36 12865
048addec 128662002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 12867
048addec
JD
12868 * minibuf.c (Fminibuffer_contents)
12869 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
12870 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 12871
048addec 128722002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 12873
048addec 12874 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 12875
048addec 128762002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 12877
048addec
JD
12878 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
12879 height before comparison.
12880 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 12881
048addec 128822002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 12883
048addec
JD
12884 * w32term.c (w32_system_caret_width): Remove.
12885 (w32_use_visible_system_caret): New user flag.
12886 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
12887 Windows reports a screen reader running.
12888 (x_update_window_begin): Hide the system caret.
12889 (x_update_window_end): Show the system caret.
12890 (x_display_and_set_cursor): Don't draw a cursor when
12891 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 12892
048addec
JD
12893 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
12894 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
12895 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
12896 the user requests it. Use system default width when creating.
12897 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 12898
048addec
JD
12899 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
12900 New window messages.
905cc05a 12901
048addec 129022002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 12903
048addec 12904 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 12905
048addec 129062002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 12907
048addec 12908 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 12909
048addec 129102002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 12911
048addec 12912 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 12913
048addec 129142002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 12915
048addec
JD
12916 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
12917 that Windows returns. If a double check fails, try to guess how
12918 ExtTextOut is going to act.
4d0fa4f3 12919
048addec
JD
12920 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
12921 in place of stricmp.
12922 (w32_list_synthesized_fonts): Removed.
12923 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
12924 (struct enumfont_t): New element; list.
12925 (enum_font_cb2): List all style and charset variations of a font.
12926 (Fw32_select_font): New optional argument; include_proportional.
12927 Exclude vertical fonts. Exclude proportional fonts unless
12928 include_proportional is non-nil.
12929 (w32_enable_synthesized_fonts): Change to a boolean.
12930 (Fw32_send_sys_command): Doc fix.
493faf20 12931
048addec 129322002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 12933
048addec
JD
12934 * dispnew.c (update_frame): Move the variable `tem' to the block
12935 where it is used.
4971e491 12936
048addec 129372002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 12938
048addec
JD
12939 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
12940 call to face-set-after-frame-default.
4971e491 12941
048addec 129422002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 12943
048addec
JD
12944 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
12945 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 12946
048addec 129472002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 12948
048addec
JD
12949 * window.c (enlarge_window): When exceeding size of parent,
12950 directly delete all the siblings instead of trying to resize it.
201c831a 12951
048addec 129522002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 12953
048addec 12954 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 12955
048addec 129562002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 12957
048addec 12958 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 12959
048addec 129602002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 12961
048addec
JD
12962 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
12963 is invisible. This can happen if cursor is on top line of a
12964 window, and we switch to a buffer with a header line.
d77fbc16 12965
048addec 12966 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 12967
048addec 129682002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 12969
048addec
JD
12970 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
12971 `dont_resize' only when used.
61e3b944 12972
048addec 12973 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 12974
048addec 129752002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 12976
048addec
JD
12977 * xdisp.c (display_mode_element): When computing charpos, depend
12978 on multibyteness of elt, not the text in field.
8af01033 12979
048addec 129802002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 12981
048addec
JD
12982 * buffer.c (Fkill_all_local_variables):
12983 Increment `update_mode_lines' only once.
7363986a 12984
048addec 129852002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 12986
048addec
JD
12987 * lisp.h (adjust_after_replace_noundo)
12988 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 12989
048addec 12990 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 12991
048addec 129922002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 12993
048addec
JD
12994 Support for the --color command-line argument and tty-color-mode
12995 frame parameter:
f1a85b89 12996
048addec
JD
12997 * term.c (tty_default_color_capabilities, tty_setup_colors)
12998 (set_tty_color_mode): New functions.
12999 (term_init): Call tty_default_color_capabilities.
13000 (Qtty_color_mode_alist): New variable.
13001 (syms_of_term): Intern and staticpro it.
f1a85b89 13002
048addec
JD
13003 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
13004 frames.
13005 (do_switch_frame): For termcap frames, switch the tty
13006 color mode as specified by the frame's parameters.
13007 (Qtty_color_mode): New variable.
13008 (syms_of_frame): Intern and staticpro it.
3a62677f 13009
048addec
JD
13010 * emacs.c (USAGE2): Add the --color option.
13011 (standard_args): Ditto.
72244db2 13012
048addec
JD
130132002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13014
13015 * xterm.h (struct x_output): New members want_fullscreen,
13016 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
13017 y_pixels_outer_diff.
13018 New enum for FULLSCREEN_* constants.
13019 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
13020 is NULL.
13021 (x_fullscreen_adjust): Add prototype.
3a62677f 13022
048addec
JD
13023 * emacs.c (USAGE2): Add the new full-screen arguments.
13024 (standard_args): Ditto.
3a62677f 13025
048addec
JD
13026 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
13027 New variables.
13028 (syms_of_xfns): Intern and staticpro them.
13029 (x_frame_parms) <"fullscreen">: New parameter.
13030 (x_fullscreen_move, x_set_fullscreen): New functions.
13031 (x_set_frame_parameters): Support for Qfullscreen.
13032 (x_real_positions): More accurate computation of the frame position.
13033 (x_figure_window_size): Support full-screen frames.
13034 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 13035
048addec
JD
13036 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
13037 (XTread_socket) <Expose>: Call x_check_fullscreen.
13038 <ConfigureNotify>: Don't resize to fullscreen.
13039 Call x_check_fullscreen_move, and set the want_fullscreen member of
13040 output_data.x.
3a62677f 13041
048addec 130422002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 13043
048addec
JD
13044 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
13045 for mice with more than 3 buttons.
b8523839 13046
048addec
JD
13047 * w32term.c (parse_button): New parameter xbutton. Callers changed.
13048 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 13049
048addec
JD
13050 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
13051 (syms_of_w32fns): DEFVAR_BOOL it.
13052 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 13053
048addec 130542002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 13055
048addec 13056 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 13057
048addec 130582002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 13059
048addec 13060 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 13061
048addec 130622002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 13063
048addec
JD
13064 * .gdbinit (xbuffer): Remove address operator since data is now a
13065 pointer.
c93674bb 13066
048addec 130672002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 13068
048addec 13069 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 13070
048addec 13071 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 13072
048addec 130732002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 13074
048addec
JD
13075 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
13076 when checking for multiple frames.
91175673 13077
048addec 130782002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 13079
048addec
JD
13080 * window.c (delete_window): Rewrite the code for changing the
13081 selected window to handle the case where WINDOW is not a leaf.
91175673 13082
048addec 130832002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 13084
048addec
JD
13085 * process.c (send_process): Set src_multibyte to 1 after the call
13086 top setup_coding_system, not before the call.
e0fead5d 13087
048addec 130882002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 13089
048addec
JD
13090 * xmenu.c (set_frame_menubar, xmenu_show):
13091 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 13092
048addec
JD
13093 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
13094 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 13095
048addec 130962002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 13097
048addec 13098 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 13099
048addec 13100 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 13101
048addec 13102 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 13103
048addec 131042002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 13105
048addec
JD
13106 * insdel.c (make_gap_larger): Make sure buffer size does not
13107 overflow range of int.
62854fe2 13108
048addec 131092002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 13110
048addec
JD
13111 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
13112 OVERLAPS_P.
656f46bb 13113
048addec 13114 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 13115
048addec
JD
13116 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
13117 to the left or to the right of the pointer, put it against
13118 the left screen edge.
13119 (x_frame_parms): Add missing braces around initializer.
036e218d 13120
048addec
JD
13121 * w32term.c (x_setup_relief_colors): Don't compute an image's
13122 background color if it doesn't have a Pixmap.
13123 (notice_overwritten_cursor): Don't depend on
13124 output_cursor and updated_area. Compare pixel coordinates with
13125 window's cursor pixel coordinates.
13126 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
13127 Call notice_overwritten_cursor with new arg list.
13128 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
13129 unconditionally.
13130 (x_draw_image_relief): Use predefined macro instead of
13131 constant when the value of `tool_bar_button_relief' is negative.
036e218d 13132
048addec 13133 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 13134
048addec 131352002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 13136
048addec 13137 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 13138
048addec 131392002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 13140
048addec
JD
13141 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
13142 (Fkey_binding): Try the `keymap' property map first.
13143 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
13144 minor mode bindings.
90647b07 13145
048addec 131462002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 13147
048addec 13148 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 13149
048addec 131502002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 13151
048addec
JD
13152 * keyboard.c (read_key_sequence): Handle the keymap property
13153 before minor mode maps.
9fbc32aa 13154
048addec
JD
13155 * editfns.c (Fformat): Update thissize from field_width
13156 based on the actual width, in the string case.
036e218d 13157
048addec 131582002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 13159
048addec
JD
13160 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
13161 when used as truth value to prevent gcc warnings.
9fbc32aa 13162
048addec
JD
13163 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
13164 * w32proc.c: Include <config.h>.
9fbc32aa 13165
048addec 131662002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 13167
048addec
JD
13168 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
13169 not EMACS_INT, to make them compatible with DEFVAR_INT.
13170 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 13171
048addec 131722002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 13173
048addec
JD
13174 * print.c (print_object): Test print_escape_nonascii only for
13175 unibyte strings.
13176 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
13177 when outputting to a multibyte buffer.
9fbc32aa 13178
048addec 131792001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 13180
048addec
JD
13181 * print.c (print_object): In multibyte string, use hex escapes.
13182 Use octal only for unibyte strings.
13183 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 13184
048addec
JD
13185 * lread.c (read_escape): New arg BYTEREP for reporting whether
13186 escape forces unibyte or multibyte.
13187 (read1): When reading a string, take note of that info.
0142178a 13188
048addec 131892001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 13190
048addec
JD
13191 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
13192 comparison to test lisp value returned by Fget.
d4824a5d 13193
048addec 131942001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 13195
048addec 13196 * lisp.h (max_specpdl_size): Add declaration.
b1356234 13197
048addec 13198 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 13199
048addec
JD
13200 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
13201 Handle modifier bits. Correct typo in error message.
99e380ee 13202
048addec 132032001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 13204
048addec
JD
13205 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
13206 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
13207 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
13208 Update calls to Fdefine_abbrev.
13209 (write_abbrev): Update for changed data format.
13210 Don't list "system" abbrevs.
13211 (Fexpand_abbrev): Update use count with new data format.
13212 (describe_abbrev): Update for changed data format.
13213 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 13214
048addec 13215 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 13216
048addec 13217 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 13218
048addec
JD
13219 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
13220 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 13221
048addec
JD
13222 * keymap.c (Flookup_key): Error message if key has wrong data type.
13223 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
13224 (exclude_key): New variable.
59a86c99 13225
048addec 132262001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 13227
048addec
JD
13228 * xterm.c (x_setup_relief_colors): Don't compute an image's
13229 background color if it doesn't have a Pixmap.
eb77a5f4 13230
048addec
JD
13231 * xterm.c (notice_overwritten_cursor): Don't depend on
13232 output_cursor and updated_area. Compare pixel coordinates with
13233 window's cursor pixel coordinates.
13234 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
13235 Call notice_overwritten_cursor with new arg list.
13236 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
13237 unconditionally.
eb77a5f4 13238
048addec
JD
13239 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
13240 height of the cursor line to the amount to scroll.
eb77a5f4 13241
048addec 132422001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 13243
048addec
JD
13244 * intervals.c (set_point_both): The position after an invisible,
13245 intangible character is not an acceptable stopping point.
bb313871 13246
048addec 132472001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 13248
048addec
JD
13249 * window.c (enlarge_window): In new preserve_before code, convert
13250 CURBEG from lisp object to integer before doing arithmetic.
6052529b 13251
048addec 132522001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 13253
048addec 13254 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 13255
048addec 132562001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 13257
048addec
JD
13258 * keyboard.c (record_char): Ignore duplicate help-echo events only
13259 separated by mouse-movement. When tracking mouse, only record
13260 first and last mouse-movement event in same window.
13261 Don't record mouse-movement events in keyboard macros.
3ce081f5 13262
048addec 132632001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 13264
048addec
JD
13265 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
13266 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 13267
048addec
JD
13268 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
13269 instead of Fstring_as_unibyte.
9fabb2f5 13270
048addec 132712001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 13272
048addec 13273 The following changes remove mocklisp support:
9fabb2f5 13274
048addec 13275 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 13276
048addec
JD
13277 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
13278 `Qmocklisp' and `Qmocklisp_arguments'.
13279 Remove prototype of syms_of_mocklisp.
2fa0eedf 13280
048addec 13281 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 13282
048addec
JD
13283 * callint.c: Do not include mocklisp.h.
13284 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 13285
048addec
JD
13286 * eval.c: Remove variables `Qmocklisp_arguments',
13287 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
13288 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
13289 Do not test for mocklisp case.
13290 (Fwhile): Remove unused variable `tem'.
13291 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 13292
048addec 13293 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 13294
048addec 13295 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 13296
048addec 13297 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 13298
048addec 132992001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 13300
048addec
JD
13301 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
13302 to the left or to the right of the pointer, put it against
13303 the left screen edge.
6108b49c 13304
048addec 133052001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 13306
048addec
JD
13307 * Makefile.in (distclean): Remove .gdbinit if we are building
13308 outside the source tree.
5eea19a4 13309
048addec 133102001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 13311
048addec 13312 * w32.c (emacs_root_dir): New function.
5eea19a4 13313
048addec 13314 * msdos.c (emacs_root_dir): New function.
5eea19a4 13315
048addec
JD
13316 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
13317 of the current drive as the fallback for default_directory.
438e57dd 13318
048addec
JD
13319 * dired.c (file_name_completion): Run the elements of
13320 completion-ignored-extensions through ENCODE_FILE.
438e57dd 13321
048addec
JD
13322 * lisp.h (scmp): Remove prototype, since it's now a static
13323 function private to dired.c.
c88e5347 13324
048addec 133252001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 13326
048addec
JD
13327 * dired.c (scmp): Function moved from minibuf.c.
13328 Delete multibyte handling--used only on encoded strings.
59ce1461 13329
048addec 13330 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 13331
048addec 13332 * fns.c (merge): Add QUIT call.
59ce1461 13333
048addec 133342001-12-18 Dave Love <fx@gnu.org>
8727d588 13335
048addec
JD
13336 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
13337 language/georgian.el.
8727d588 13338
048addec 133392001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 13340
048addec
JD
13341 * Makefile.in (lisp, shortlisp): Synchronize with changes to
13342 lisp/Makefile.in:DONTCOMPILE.
cc63037e 13343
048addec 133442001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 13345
048addec
JD
13346 * xdisp.c (window_box_height): Do not return negative values.
13347 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 13348
048addec 13349 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 13350
048addec 13351 * term.c (keys): Likewise.
deece6f5 13352
048addec 13353 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 13354
048addec 133552001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 13356
048addec
JD
13357 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
13358 patch (COMPOSING_P, not COMPOSING).
28ff4293 13359
048addec 133602001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 13361
048addec 13362 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 13363
048addec
JD
13364 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
13365 before calling decode_coding.
9b46de40 13366
048addec 13367 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 13368
048addec
JD
13369 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
13370 instead of only for COMPOSITION_DISABLED.
9b46de40 13371
048addec 133722001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 13373
048addec 13374 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 13375
048addec 13376 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 13377
048addec
JD
13378 * buffer.h (struct buffer): New field `display_error_modiff'.
13379 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 13380
048addec 13381 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 13382
048addec
JD
13383 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
13384 Call redisplay_window, but not if display_error_modiff field says no.
13385 (redisplay_window_error): New function.
13386 (displayed_buffer): New variable.
13387 (redisplay_internal, redisplay_windows): Call the new functions
13388 instead of redisplay_window directly.
2cd23960 13389
048addec 133902001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 13391
048addec 13392 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 13393
048addec 133942001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 13395
048addec 13396 * makefile.w32-in (EMACSLOADPATH): Define.
f9711de4 13397 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
048addec 13398 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 13399
048addec 134002001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 13401
048addec
JD
13402 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
13403 parameter have a numeric value all the time.
f6fa0866 13404
048addec 13405 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 13406
048addec 134072001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 13408
048addec 13409 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 13410
048addec
JD
13411 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
13412 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 13413
048addec 134142001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 13415
048addec
JD
13416 * xdisp.c (move_it_vertically_backward): Change heuristic
13417 for the case that we didn't move far enough initially.
91c153e2 13418
048addec
JD
13419 * window.c (Frecenter): Simplify computation in the case of window
13420 system frames and ARG < 0; use window_box_height.
65b7d3e7 13421
048addec 134222001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 13423
048addec
JD
13424 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
13425 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 13426
048addec 134272001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 13428
048addec
JD
13429 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
13430 arg is negative.
be676094 13431
048addec 134322001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 13433
048addec
JD
13434 * m/hp800.h: Split the __hpux conditional into the parts
13435 that are right for GNU/Linux too and the parts that are not.
13436 Use the former if GNU_LINUX.
13437 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 13438
048addec 13439 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 13440
048addec 134412001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 13442
048addec
JD
13443 * macros.c, msdos.c, w16select.c: Change doc-string comments to
13444 `new style' [w/`doc:' keyword].
032a857d 13445
048addec 134462001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 13447
048addec
JD
13448 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
13449 before using.
b6270150 13450
048addec 134512001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 13452
048addec
JD
13453 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
13454 keyword].
98cbb9fa 13455
048addec 134562001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 13457
048addec 13458 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 13459
048addec 13460 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 13461
048addec 134622001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 13463
048addec
JD
13464 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
13465 Add comment to explain where the struct came from.
13466 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
13467 (add_menu_item): Process pop-up menus first to avoid memory leak.
13468 (add_menu_item, w32_menu_display_help): Use `help' field as
13469 Lisp_Object.
13470 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 13471
048addec 134722001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 13473
048addec 13474 * COPYING: Moved back.
fa336b91 13475
048addec
JD
13476 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
13477 Add parentheses around && within ||.
077907d4 13478
048addec 13479 * indent.c (compute_motion): Likewise.
aa2af83a 13480
048addec 13481 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 13482
048addec
JD
13483 * coding.c (setup_coding_system, shrink_encoding_region)
13484 (Fdecode_sjis_char): Likewise.
60a653f1 13485
048addec 134862001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 13487
048addec
JD
13488 * xdisp.c (display_mode_element): Don't read past end of string if
13489 it ends with '%'.
60a653f1 13490
048addec
JD
13491 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
13492 can hold.
60a653f1 13493
048addec
JD
13494 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
13495 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
13496 type changed to Lisp_Object.
13497 (syms_of_data): DEFVAR_LISP them.
60a653f1 13498
048addec 134992001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 13500
048addec
JD
13501 * callproc.c (init_callproc): Set Vdata_directory based on the source
13502 location whenever Emacs was run uninstalled.
60a653f1 13503
048addec 135042001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 13505
048addec
JD
13506 * config.in (HAVE_WORKING_VFORK): New #undefs.
13507 * process.c (create_process):
13508 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
13509 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
13510 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
13511 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
13512 * m/intel386.h (HAVE_VFORK): Likewise.
13513 * m/mips-siemens.h (HAVE_VFORK): Likewise.
13514 * m/mips.h (HAVE_VFORK): Likewise.
13515 * s/freebsd.h (vfork): Remove #define.
13516 * s/lynxos.h (HAVE_VFORK): Remove #undef.
13517 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 13518
048addec 135192001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 13520
048addec
JD
13521 * s/hpux10.h (random): Add undef.
13522 (HAVE_RANDOM): Define it just once.
60a653f1 13523
048addec 135242001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13525
048addec 13526 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 13527
048addec 135282001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 13529
048addec
JD
13530 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
13531 scroll bars of the frame before deleting the frame itself. If the
13532 frame has a widget, delete the frame with XtDestroyWidget, and do
13533 not call XDestroyWindow before that.
60a653f1 13534
048addec 135352001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 13536
048addec 13537 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 13538
048addec 13539 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 13540
048addec 135412001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 13542
048addec
JD
13543 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
13544 excessively large.
60a653f1 13545
048addec
JD
13546 * insdel.c (make_gap_larger): New function.
13547 (make_gap_smaller): New function.
13548 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
13549 Call make_gap_smaller if arg is negative.
60a653f1 13550
048addec 135512001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13552
048addec
JD
13553 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
13554 Pass a dummy argument when calling interrupt_signal.
13555 (parse_menu_item): Mark disabled items before checking for empty def.
13556 (read_char_minibuf_menu_prompt): Make safety more visible.
13557 (read_key_sequence): Add a `first_unbound' variable.
13558 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
13559 unbound prefix as soon as we can detect it.
60a653f1 13560
048addec
JD
13561 * doc.c (Fsnarf_documentation): Add prototype.
13562 (get_doc_string): Handle negative arguments.
13563 (Fdocumentation): Use AREF and ASIZE.
13564 Move the calls to get_doc_string to a single place.
13565 Don't confuse an interactive-spec for a docstring reference.
13566 (Fdocumentation_property): Take advantage of the fact that
13567 get_doc_string now ignores the sign of the docstring position.
60a653f1 13568
048addec 13569 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 13570
048addec 135712001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13572
a64387ee 13573 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
60a653f1 13574
048addec 135752001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13576
048addec
JD
13577 * xterm.c (x_draw_image_relief): Use predefined macro instead of
13578 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 13579
048addec 135802001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 13581
048addec
JD
13582 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
13583 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 13584
048addec 13585 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 13586
048addec 135872001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13588
048addec 13589 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 13590
048addec 135912001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 13592
048addec 13593 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 13594
048addec 135952001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 13596
f63fd14e 13597 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 13598
048addec
JD
13599 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
13600 [!WM_MOUSELEAVE]: Define.
60a653f1 13601
048addec
JD
13602 * w32menu.c (current_popup_menu, get_menu_item_info):
13603 (set_menu_item_info): New vars.
13604 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
13605 (w32_menu_show): Set current_popup_menu.
13606 (add_menu_item): Allocate new strings for owner-drawn menu items
13607 and help strings.
13608 Use owner-draw for disabled menu items again.
13609 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
13610 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 13611
048addec
JD
13612 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
13613 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
13614 <WM_EXITMENULOOP>: Free menu strings.
13615 <WM_MOUSELEAVE>: Stop tracking mouse.
13616 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 13617
048addec
JD
13618 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
13619 and mouse face.
60a653f1 13620
048addec 136212001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 13622
048addec
JD
13623 The following changes add left-fringe and right-fringe
13624 frame parameters to adjust fringe widths, or remove one or
13625 both fringes.
60a653f1 13626
048addec
JD
13627 * frame.h (struct frame): Remove trunc_area_pixel_width and
13628 trunc_area_cols fields.
13629 (Qleft_fringe, Qright_fringe): Declare.
13630 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 13631
048addec
JD
13632 * frame.c (Qleft_fringe, Qright_fringe): New vars.
13633 (syms_of_frame): Initialize them.
60a653f1 13634
048addec
JD
13635 * window.c (coordinates_in_window): Handle separate left and right
13636 fringe widths.
60a653f1 13637
048addec
JD
13638 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
13639 and fringe_cols fields.
13640 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
13641 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
13642 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
13643 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
13644 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
13645 (x_compute_fringe_widths): Add prototype.
60a653f1 13646
048addec
JD
13647 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
13648 fill fringe evenly with small dashes.
f63fd14e 13649 (x_draw_fringe_bitmap): Clear background if necessary. Align and
048addec
JD
13650 clip the new ZV bitmap to avoid jitter between rows.
13651 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
13652 background. Don't draw fringe bitmaps if fringe width is zero.
13653 (x_compute_fringe_widths): New function.
13654 (x_new_font, x_set_window_size_1): Use it.
60a653f1 13655
048addec
JD
13656 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
13657 (x_set_frame_parameters): Process `font' parameter before other
13658 parameters as fringe widths depend on it.
13659 (x_set_fringe_width): New function.
13660 (x_figure_window_size): Use x_compute_fringe_widths.
13661 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
13662 parameters.
60a653f1 13663
048addec
JD
13664 * widget.c (set_frame_size): Use x_compute_fringe_widths.
13665 (EmacsFrameSetCharSize): Ditto.
60a653f1 13666
048addec
JD
13667 * w32term.h: Merged changes from xterm.h.
13668 * w32term.c: Merged changes from xterm.c.
13669 * w32fns.c: Merged changes from xfns.c.
60a653f1 13670
048addec 136712001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13672
048addec 13673 * COPYING: Removed.
60a653f1 13674
048addec 136752001-11-29 Dave Love <fx@gnu.org>
60a653f1 13676
048addec
JD
13677 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
13678 extra extra slot.
13679 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 13680
048addec 136812001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13682
048addec
JD
13683 * fileio.c (file-name-coding-system)
13684 (default-file-name-coding-system): Doc fix (links to referenced
13685 variables added).
60a653f1 13686
048addec 136872001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13688
048addec
JD
13689 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
13690 Add dummy uses of gcproN variables.
60a653f1 13691
048addec
JD
13692 * category.c (describe_category, describe_category_1)
13693 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
13694 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 13695
048addec 136962001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 13697
048addec 13698 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 13699
048addec
JD
13700 * Makefile.in (lispdir): New variable, referring to build dir.
13701 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 13702
048addec 137032001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 13704
048addec
JD
13705 * w32menu.c (w32_menu_display_help): Actually add the new argument
13706 OWNER.
60a653f1 13707
048addec 137082001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 13709
048addec
JD
13710 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
13711 menu items. From David Ponce <dponce@wanadoo.fr>.
13712 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
13713 conditionally.
f63fd14e 13714 (w32_menu_display_help): New argument OWNER. Rewritten to store a
048addec 13715 help event in the owner frame's keyboard buffer.
60a653f1 13716
048addec
JD
13717 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
13718 (Fx_show_tip): Don't subtract last width from row width.
13719
13720 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
13721 (w32_read_socket): Use EQ to compare frames.
60a653f1 13722
048addec 137232001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 13724
048addec
JD
13725 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
13726 OVERLAPS_P.
60a653f1 13727
048addec 137282001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13729
048addec
JD
13730 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
13731 `gcpro3' and `gcpro4'.
60a653f1 13732
048addec 13733 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 13734
048addec 137352001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13736
048addec 13737 * ccl.c: Use AREF and ASIZE.
60a653f1 13738
048addec 137392001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13740
048addec
JD
13741 * lisp.h (run_hook_list_with_args): Remove.
13742 (LIST_END_P): Fix call to wrong_type_argument.
13743 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 13744
048addec 137452001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13746
048addec
JD
13747 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
13748 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 13749
048addec
JD
13750 * eval.c: Use AREF and ASIZE.
13751 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 13752
048addec
JD
13753 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
13754 which match the end of the file-name.
13755 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
13756 is not a valid env var, but leave it as is instead.
60a653f1 13757
048addec
JD
13758 * keymap.c (access_keymap): Handle t bindings like nil bindings.
13759 Make nil bindings in char-tables transparent.
13760 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 13761
048addec 137622001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 13763
048addec
JD
13764 * textprop.c (set_text_properties_1): Allow START, END in either order.
13765 Do nothing if range is empty.
60a653f1 13766
048addec 13767 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 13768
048addec
JD
13769 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
13770 (clean): Not here.
60a653f1 13771
048addec 137722001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13773
048addec
JD
13774 * textprop.c (set_text_properties_1): Clearly mark that the
13775 interval should not be empty.
60a653f1 13776
048addec
JD
13777 * intervals.c (graft_intervals_into_buffer):
13778 Don't call set_text_properties_1 on an empty interval.
60a653f1 13779
048addec 137802001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 13781
048addec 13782 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 13783
048addec
JD
13784 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
13785 don't lose the data in it.
60a653f1 13786
048addec 137872001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 13788
048addec 13789 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 13790
c62aec78 13791 * buffer.c (Fkill_buffer): Likewise.
60a653f1 13792
c62aec78 13793 * print.c (temp_output_buffer_setup): Likewise.
60a653f1 13794
048addec 137952001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13796
048addec 13797 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 13798
048addec 137992001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 13800
048addec
JD
13801 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
13802 Niemitalo <kon@iki.fi>.
60a653f1 13803
048addec 138042001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 13805
048addec 13806 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 13807
048addec
JD
13808 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
13809 (Fx_show_tip): Block input during frame creation.
13810 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 13811
048addec 138122001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 13813
048addec
JD
13814 * lread.c (Fload): Detect recursive load error for more than 3
13815 nestings of the same file.
13816 (Vrecursive_load_depth_limit): Variable deleted.
13817 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 13818
048addec 138192001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 13820
048addec
JD
13821 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
13822 mouse position if either left or top is not specified.
60a653f1 13823
048addec
JD
13824 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
13825 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
13826 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
13827 (my_create_tip_window): Assign tip_window.
13828 (x_create_tip_frame): Use same defaults as X.
13829 (compute_tip_xy): Remove unused variable. Use full screen width.
f63fd14e 13830 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 13831
048addec
JD
13832 * w32term.c (x_after_update_window_line): Doc fix.
13833 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
13834 frames.
13835 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 13836
048addec
JD
13837 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
13838 for all Windowed systems.
60a653f1 13839
048addec 138402001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 13841
048addec
JD
13842 * msdos.c (IT_clear_screen): If the frame's faces are not yet
13843 realized, use the initial screen colors to clear the screen.
60a653f1 13844
048addec 138452001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13846
048addec
JD
13847 * textprop.c (Fset_text_properties): Remove unused variables
13848 `unchanged', `prev_changed', `s' and `len'.
60a653f1 13849
048addec
JD
13850 * search.c (Freplace_match): Remove unused variable `inslen'.
13851
13852 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
13853
138542001-11-22 Jason Rumney <jasonr@gnu.org>
13855
13856 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
13857 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
13858 (my_create_tip_window): New function.
13859 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
13860 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
13861
138622001-11-20 Jason Rumney <jasonr@gnu.org>
13863
13864 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
13865 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
13866
13867 * w32fns.c (Vw32_system_coding_system): Remove.
13868 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
13869
138702001-11-19 Stefan Monnier <monnier@cs.yale.edu>
13871
13872 * fileio.c (Fwrite_region): Move choose_write_coding_system to
13873 after build_annotations.
13874
13875 * syntax.c (describe_syntax): Add dummy arg.
13876 (describe_syntax_1): Update call to describe_vector.
13877
13878 * category.c (describe_category): Add dummy arg.
13879 (describe_category_1): Update call to describe_vector.
13880
13881 * keymap.c (Fdescribe_vector): Add `describer' parameter.
13882 (describe_command, describe_translation): Add dummy second param.
13883 (describe_map): Call elt_describer with two arguments.
13884 (describe_vector_princ): Add `fun' parameter.
13885 Call it instead of the hardcoded `princ'.
13886 (describe_vector): Add arg `args'.
13887 Pass it as a new second argument to elt_describer.
60a653f1 13888
048addec 13889 * keymap.h (describe_vector): Update prototype.
60a653f1 13890
048addec
JD
13891 * frame.c: Don't include keymap.h any more.
13892 (keys_of_frame): Remove.
60a653f1 13893
048addec 13894 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 13895
048addec 13896 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 13897
048addec 138982001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 13899
048addec
JD
13900 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
13901 if defined, 0 otherwise.
13902 (MAP_FAILED): Define if not defined and use it to test mmap failure.
13903 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 13904
048addec 139052001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 13906
048addec 13907 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 13908
048addec 139092001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 13910
048addec
JD
13911 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
13912 (x_draw_bar_cursor): If the background color of the glyph under
13913 the cursor equals the frame's cursor color, use the glyph's
13914 foreground color for drawing the bar cursor.
13915 (x_after_update_window_line): Clear internal border in different
13916 circumstances.
13917 (w32_set_vertical_scroll_bar): Check for width and height > 0.
13918 (w32_draw_relief_rect): Correct relief by 1 pixel.
13919 (x_set_glyph_string_background_width):
13920 Set extends_to_end_of_line_p if the row's fill_line_p is set and
13921 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
13922 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
13923 if cursor_in_non_selected_windows is false.
13924 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
13925 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
13926 Notice if cursor gets overwritten.
13927 (notice_overwritten_cursor): Renamed from
13928 note_overwritten_text_cursor. Rewritten to take glyph widths
13929 into account, and to take X positions as parameters.
13930 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
13931 around call to x_draw_glyphs.
13932 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
13933 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
13934 color to use for image glyph reliefs.
13935 (x_draw_image_relief): Accept zero tool_bar_button_relief.
13936 (glyph_rect): Remove unused variable `area'.
60a653f1 13937
048addec
JD
13938 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
13939 some items.
13940 (x_set_internal_border_width): Set frame garbaged when window
13941 doesn't exist yet.
13942 (Fx_create_frame): Accept zero tool_bar_button_relief.
13943 (x_clear_image_1, four_corners_best, image_background)
13944 (image_background_transparent): New functions.
13945 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
13946 (gs_format): Add `:background' entry.
13947 (lookup_image): Set IMG's background color if specified.
13948 (pbm_load, xbm_load_image, png_load): Set IMG's background field
13949 when appropriate.
13950 (x_clear_image_1): Reset `background_valid' and
13951 `background_transparent_valid' fields.
13952 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
13953 calculating it here. Set IMG's background_transparent field.
13954 (enum xpm_keyword_index): Add XPM_BACKGROUND.
13955 (enum png_keyword_index): Add PNG_BACKGROUND.
13956 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
13957 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
13958 (enum gif_keyword_index): Add GIF_BACKGROUND.
13959 (enum gs_keyword_index): Add GS_BACKGROUND.
13960 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
13961 Pre-calculate image background color where necessary.
13962 (x_create_x_image_and_pixmap, xbm_load, gs_load):
13963 Use display info's n_cbits entry for screen depth.
13964 (Fx_show_tip): Remove unused variables `buffer', `top',
13965 `left', `max_width' and `max_height'.
60a653f1 13966
048addec 13967 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 13968
048addec 139692001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 13970
048addec 13971 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 13972
048addec 139732001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13974
048addec 13975 * frame.c (Fframe_live_p): Doc fix.
60a653f1 13976
048addec 139772001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 13978
048addec
JD
13979 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
13980 (message_dolog_marker3): New static variables hold three markers.
13981 (syms_of_xdisp): Initialize and staticpro them.
13982 (message_dolog): Use message_dolog_marker1..3 instead of
13983 allocating markers each time. Unchain them when done.
60a653f1 13984
048addec 139852001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 13986
048addec 13987 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 13988
048addec 139892001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 13990
048addec 13991 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 13992
048addec 139932001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 13994
048addec 13995 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 13996
048addec 139972001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 13998
048addec 13999 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 14000
048addec 140012001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 14002
048addec
JD
14003 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
14004 with invalid position.
60a653f1 14005
048addec 140062001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 14007
048addec 14008 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 14009
048addec
JD
14010 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
14011 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
14012 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 14013
048addec 14014 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 14015
048addec 140162001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14017
048addec
JD
14018 * fileio.c (build_annotations): Split off the tail.
14019 (build_annotations_2): New fun. Extracted from build_annotations.
14020 (Fwrite_region): Split the call to build_annotations into two
14021 calls to build_annotations and build_annotations_2.
077907d4 14022
048addec 140232001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 14024
048addec
JD
14025 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
14026 clear_waiting_for_input with argument.
1756e2fb 14027
048addec 14028 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 14029
048addec 14030 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 14031
048addec 14032 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 14033
048addec 14034 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 14035
048addec 140362001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 14037
048addec
JD
14038 * fileio.c (choose_write_coding_system): New fun, extracted
14039 from Fwrite_region.
14040 (Fwrite_region): Use it.
fa336b91 14041
048addec
JD
14042 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
14043 (funcall_lambda, run_hook_with_args): Make static and add prototype.
14044 (ml_apply, find_handler_clause): Add prototype.
fa336b91 14045
048addec 140462001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 14047
048addec 14048 * config.in: Add #undef HAVE_COFF_H.
fa336b91 14049
048addec
JD
14050 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
14051 Required for ISC 4.1.
fa336b91 14052
048addec 140532001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 14054
048addec
JD
14055 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
14056 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 14057
048addec 140582001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 14059
048addec
JD
14060 The following changes are made to clean up the various internal
14061 references to the fringes to actually use the term `fringe' for
14062 them. Previously, they were called `flags areas', `bitmap areas',
14063 `left/right side of windows', or implicitly as `flags' or
14064 `bitmaps':
fa336b91 14065
048addec 14066 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
f63fd14e 14067 Comments fixed. Use renamed symbols.
06e8f738 14068
f63fd14e 14069 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 14070
048addec
JD
14071 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
14072 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
14073 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 14074
048addec 14075 * msdos.c: Comment fix.
9ce647f4 14076
048addec 14077 * w32fns.c: Use renamed symbols.
9b784ab8 14078
f63fd14e 14079 * w32term.c: Comment fixes. Use renamed symbols.
048addec
JD
14080 (fringe_bitmap_type): Renamed from bitmap_type.
14081 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
14082 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
14083 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 14084
f63fd14e 14085 * w32term.h: Comment fixes. Use renamed symbols.
048addec
JD
14086 (fringes_extra): Renamed from flags_areas_extra.
14087 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
14088 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
14089 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
14090 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
14091 (FRAME_X_LEFT_FRINGE_WIDTH):
14092 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
14093 (FRAME_X_RIGHT_FRINGE_WIDTH):
14094 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 14095
048addec 14096 * widget.c: Use renamed symbols.
9f7e52b4 14097
f63fd14e 14098 * window.c: Comment fixes. Use renamed symbols.
048addec 14099 (coordinates-in-window-p): Doc fix.
fa336b91 14100
f63fd14e 14101 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 14102
048addec 14103 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 14104
048addec 14105 * xfns.c: Use renamed symbols.
89512fcd 14106
f63fd14e 14107 * xterm.c: Comment fixes. Use renamed symbols.
048addec
JD
14108 (fringe_bitmap_type): Renamed from bitmap_type.
14109 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
14110 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
14111 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 14112
f63fd14e 14113 * xterm.h: Comment fixes. Use renamed symbols.
048addec
JD
14114 (fringes_extra): Renamed from flags_areas_extra.
14115 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
14116 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
14117 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
14118 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
14119 (FRAME_X_LEFT_FRINGE_WIDTH):
14120 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
14121 (FRAME_X_RIGHT_FRINGE_WIDTH):
14122 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
14123
141242001-11-15 Jason Rumney <jasonr@gnu.org>
14125
14126 * w32menu.c (add-menu-item): Make help_echo and radio buttons
14127 work for most menu items. From David Ponce
14128 <david.ponce@wanadoo.fr>.
14129
141302001-11-15 Gerd Moellmann <gerd@gnu.org>
14131
14132 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
14133 Some x_set_* function expect to be called even if old and new
14134 value are equal.
14135
14136 * xdisp.c (build_desired_tool_bar_string): Accept zero
14137 tool_bar_button_relief.
14138
14139 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
14140
14141 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
14142
14143 * xterm.c (x_draw_bar_cursor): If the background color of the
14144 glyph under the cursor equals the frame's cursor color, use
14145 the glyph's foreground color for drawing the bar cursor.
14146
14147 * dispnew.c (direct_output_forward_char): Fix character/byte
14148 position comparison.
7d18891d 14149
048addec 141502001-11-15 Miles Bader <miles@gnu.org>
d2936d21 14151
048addec
JD
14152 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
14153 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
14154 Update arguments to find_field.
14155 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
14156 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
14157 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
14158 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 14159
048addec 141602001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 14161
048addec 14162 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 14163
048addec
JD
14164 * dispextern.h (image_background, image_background_transparent):
14165 Conditionalize on HAVE_X_WINDOWS.
7d18891d 14166
048addec 141672001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 14168
048addec 14169 * print.c (Fprin1_to_string): Doc fix.
7d18891d 14170
048addec 14171 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 14172
048addec 14173 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 14174
048addec 14175 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 14176
048addec 14177 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 14178
048addec 14179 * eval.c (syms_of_eval): Doc fix.
7d18891d 14180
048addec 14181 * coding.c (syms_of_coding): Doc fix.
7d18891d 14182
048addec 14183 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 14184
048addec 14185 * dispnew.c (syms_of_display): Doc fix.
9474c847 14186
048addec 14187 * category.c (Fget_unused_category): Doc fix.
9474c847 14188
048addec 14189 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 14190
048addec 141912001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 14192
048addec 14193 * print.c (prin1, print): Doc fix.
e3059a5d 14194
048addec 141952001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 14196
048addec
JD
14197 * fontset.h: Remove declarations of variables
14198 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 14199
048addec
JD
14200 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
14201 `Vclip_large_size_font'.
eae936e2 14202
048addec 142032001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 14204
048addec 14205 * w32fns.c: Doc fix.
ddb67bdc 14206
048addec 142072001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 14208
048addec 14209 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 14210
048addec 14211 * fns.c: Doc fix.
6e1b91d7 14212
048addec 14213 * emacs.c: Doc fix.
1c1d3d69 14214
048addec 14215 * coding.c: Doc fix.
1c1d3d69 14216
048addec
JD
14217 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
14218 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
14219 `new style' [w/`doc:' keyword].
b6f4c7ba 14220
048addec 142212001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 14222
048addec
JD
14223 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
14224 LeaveNotify events. Only FocusIn and FocusOut do that now.
14225 (x_display_and_set_cursor): Do display hollow cursors in active
14226 minibuffer windows when they are not selected.
b6f4c7ba 14227
048addec 142282001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 14229
048addec 14230 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
f63fd14e
JB
14231 * w32term.c: Change doc-string comments to `new style'
14232 [w/`doc:' keyword]. Doc fixes.
a89f435d 14233
048addec
JD
14234 * w32fns.c: Don't define max.
14235 (Fx_open_connection): Only execute once.
a4cd0cd7 14236
048addec 142372001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 14238
048addec
JD
14239 * ccl.c: Change macros to use do-while block instead of if-else.
14240 Use braces to follow GNU Coding Standards.
eafb659a 14241
048addec 142422001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 14243
048addec 14244 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 14245
048addec 14246 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 14247
048addec
JD
14248 * insdel.c (replace_range): Use adjust_markers_for_replace
14249 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 14250
048addec 14251 * intervals.h: Declare set_text_properties and set_text_properties_1.
a4cd0cd7 14252
048addec
JD
14253 * textprop.c (set_text_properties_1): New subroutine
14254 broken out of set_text_properties.
14255 (set_text_properties): Use set_text_properties_1.
91823618 14256
048addec
JD
14257 * intervals.c (graft_intervals_into_buffer):
14258 Use set_text_properties_1 to clear out properties.
91823618 14259
048addec
JD
14260 * search.c (Freplace_match): Use replace_range to insert
14261 and delete. Don't request property inheritance from
14262 surrounding text.
86928dfb 14263
048addec 142642001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 14265
048addec 14266 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
f63fd14e 14267 vertical fonts. Allow them if face name is explicitly specified.
048addec 14268 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 14269
048addec 142702001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 14271
048addec
JD
14272 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
14273 instead of malloc/free.
a78e0303 14274
048addec 142752001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 14276
048addec
JD
14277 * xfaces.c (merge_face_vectors): Use braces to follow GNU
14278 Coding Standards.
14279 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 14280
048addec 14281 * buffer.c (Fbury_buffer): Likewise.
0c99b139 14282
048addec 14283 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 14284
048addec
JD
14285 * coding.c (encode_coding): Use precomputed value of `src'.
14286 (encode_coding): Remove unused variable `src_end'.
14287 (code_convert_region): Remove unused variables `count'.
830ddd77 14288
048addec 142892001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 14290
048addec
JD
14291 * w32term.c (x_display_and_set_cursor): Do not move system caret
14292 if cursor_glyph is NULL.
55c6d645 14293
048addec 142942001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 14295
048addec 14296 * keymap.c (access_keymap): Fix compilation error.
5de38842 14297
048addec 142982001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 14299
048addec 14300 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 14301
048addec 143022001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 14303
048addec
JD
14304 * intervals.c (graft_intervals_into_buffer):
14305 Remove #ifdef'd-out code.
14306 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 14307
048addec
JD
14308 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
14309 code (eval-current-buffer).
14310 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 14311
048addec 143122001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 14313
048addec 14314 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 14315
048addec 143162001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 14317
048addec 14318 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 14319
048addec
JD
14320 * keyboard.c (make_lispy_event): Check integerness and fix
14321 Lisp_Object/int mixup.
17893c65 14322
048addec 143232001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 14324
048addec 14325 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 14326
048addec
JD
14327 * fontset.c (fontset_font_pattern): Remove unused variable
14328 `family_registry'.
d5360cc7 14329
048addec 14330 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 14331
048addec 143322001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 14333
048addec 14334 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 14335
048addec
JD
14336 * buffer.c (Fkill_buffer): Don't delete auto save file
14337 if buffer is modified.
d9d54213 14338
048addec 143392001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 14340
048addec
JD
14341 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
14342 CHECK_NUMBER_CDR.
b116830b 14343
048addec 143442001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 14345
048addec 14346 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 14347
048addec 143482001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 14349
048addec 14350 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 14351
048addec 143522001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 14353
048addec 14354 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 14355
048addec 143562001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 14357
048addec
JD
14358 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
14359 the program image directly.
982f6c7e 14360
048addec 143612001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 14362
048addec 14363 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 14364
048addec 143652001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 14366
048addec
JD
14367 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
14368 and CHECK_BUFFER.
d31053f9 14369
048addec
JD
14370 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
14371 (record_char): Likewise.
d31053f9 14372
048addec
JD
14373 * keyboard.c (make_lispy_event): Don't insist a drag event must
14374 move to a different buffer position. Instead, check for moving at
14375 least double_click_fuzz.
982f6c7e 14376
048addec 14377 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 14378
048addec 14379 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 14380
048addec
JD
14381 * indent.c (current_column_1, Fmove_to_column): Separate the code
14382 for display-table glyphs from the code for buffer text, to fix
14383 bugs in the former.
830047fd 14384
048addec 143852001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 14386
048addec
JD
14387 * buffer.c (Fbuffer_local_value): New function.
14388 (syms_of_buffer): Defsubr it.
2df5238c 14389
048addec
JD
14390 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
14391 value of `cursor-in-non-selected-windows'.
4e397688 14392
048addec
JD
14393 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
14394 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
14395 (syms_of_xdisp): Initialize it.
48b0f3ae 14396
048addec 143972001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 14398
048addec 14399 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 14400
048addec
JD
14401 * coding.c: Change doc-string comments to `new style' [w/`doc:'
14402 keyword].
3ecaf7e5 14403
048addec
JD
14404 * eval.c (top_level_value, top_level_set): Remove commented and
14405 #ifdef'd-out code.
14406 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 14407
048addec 144082001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 14409
048addec 14410 * xfns.c: Include unistd.h, if it exists.
8db2e33b 14411
048addec 14412 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 14413
048addec 14414 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 14415
048addec 144162001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 14417
048addec
JD
14418 * lisp.h (CHECK_STRING_CAR): New macro.
14419 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
14420 treating XCAR and XCDR as lvalues.
14421 (openp): Use CHECK_STRING_CAR.
14422 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 14423
048addec 144242001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 14425
048addec
JD
14426 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
14427 (SIGMASKTYPE): Define.
1b1acc13 14428
048addec 14429 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 14430
048addec 144312001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 14432
048addec
JD
14433 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
14434 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
14435 Fix typos in comments.
6cb16f95 14436
048addec
JD
14437 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
14438 and #ifdef'd-out code.
14439 Fix and reindent comments.
6cb16f95 14440
048addec 14441 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 14442
048addec
JD
14443 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
14444 argument `i' in macros.
6cb16f95 14445
048addec
JD
14446 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
14447 `i' in macros.
7e9d3c2f 14448
048addec
JD
14449 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
14450 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
14451 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
14452 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
14453 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
14454 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
14455 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
14456 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
14457 in macros.
7e9d3c2f 14458
048addec
JD
14459 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
14460 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
14461 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
14462 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
14463 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
14464 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
14465 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
14466 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
14467 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
14468 (remove unused second argument).
7e9d3c2f 14469
048addec 144702001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 14471
048addec
JD
14472 * syntax.c (describe_syntax): New wrapper.
14473 (Finternal_describe_syntax_value): Rename from describe_syntax.
14474 Don't insert space at front and \n at the end.
14475 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 14476
048addec
JD
14477 * regex.c (re_wctype): Try to fix some warnings.
14478 (regcomp, regexec): Don't forget the __restrict.
9ba48103 14479
048addec 144802001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 14481
048addec 14482 * textprop.c (Fget_char_property): Doc fix.
9ba48103 14483
048addec 144842001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 14485
048addec 14486 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 14487
048addec 14488 * data.c (Fsetq_default): Ditto.
c22e59e1 14489
048addec 14490 * callint.c (Finteractive): Ditto.
9271ed2c 14491
048addec 144922001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 14493
048addec
JD
14494 * macros.c: Don't include keymap.h any more.
14495
144962001-11-01 Richard M. Stallman <rms@gnu.org>
14497
14498 * data.c (Fmake_local_variable): Doc fix.
14499
14500 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
14501 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 14502
048addec 14503 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
14504 bindings along with or instead of the buffer local map.
14505 Make the overriding maps override what they should.
14506
f00691a3 145072001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
14508
14509 * window.c (grow_mini_window): Fix typo in comment.
14510
27188d11
GM
145112001-11-01 Gerd Moellmann <gerd@gnu.org>
14512
7b49b9d2
GM
14513 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
14514 (XTset_vertical_scroll_bar): Likewise.
14515
43f7c3ea
GM
14516 * xfns.c (x_build_heuristic_mask): Use four_corners_best
14517 instead of IMAGE_BACKGROUND.
c22e59e1 14518
b350c2e5
GM
14519 * xfns.c (four_corners_best): Reindent.
14520
c22e59e1 14521 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
14522 Handle :box so that it is possible to specify sexprs.
14523
bf00d461
EZ
145242001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
14525
14526 * s/hpux11.h: New file.
14527
f00691a3 145282001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 14529
2b209b97
PJ
14530 * emacs.c (USAGE1): Show command line option --no-window-system
14531 instead of --no-windows in usage.
14532 (standard_args): Rename --no-windows to --no-window-system.
14533 (bug_reporting_address): Follow Emacs coding conventions.
14534
9dbc9081
PJ
14535 * eval.c (Fcommandp): Doc fix.
14536 Change doc-string comments to `new style' [w/`doc:' keyword].
14537
4e10df59
PJ
14538 * frame.c (Fframe_live_p): Doc fix.
14539
14540 * buffer.c (selective-display-ellipses): Doc fix.
14541
dd387b25
GM
145422001-10-31 Gerd Moellmann <gerd@gnu.org>
14543
fe957e65
GM
14544 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
14545
dd387b25
GM
14546 * xfaces.c (realize_x_face): If C is not a single-byte character,
14547 set the face's colors_copied_bitwise_p instead of the defaulted_p
14548 members which have a different meaning.
14549 (free_face_colors): Do nothing for a face whose colors have been
14550 copied bitwise.
14551
c22e59e1 14552 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 14553
f00691a3 145542001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 14555
687784e8
PJ
14556 * marker.c, mocklisp.c: Change doc-string comments to `new style'
14557 [w/`doc:' keyword].
2e1280f8 14558
b9d9a9b9
GM
145592001-10-31 Gerd Moellmann <gerd@gnu.org>
14560
14561 * fns.c (require_unwind): Return Lisp_Object.
14562
f00691a3 145632001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 14564
fa1361cb
PJ
14565 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
14566 (last-input-char): Revert doc-string to be the same as the
14567 doc-string of `last-input-event'.
14568
6c465a15 14569 * xdisp.c: Fix typos in comments.
48400103 14570
eafa3196
GM
145712001-10-31 Gerd Moellmann <gerd@gnu.org>
14572
14573 * window.c (grow_mini_window): Handle case that the root
14574 window is already smaller than the nominal mininum height.
14575
747d3f2a
SM
145762001-10-30 Stefan Monnier <monnier@cs.yale.edu>
14577
bf9bb76f
SM
14578 * emacs.c (main): Don't call keys_of_macros any more.
14579
14580 * lisp.h (keys_of_macros): Remove.
14581
14582 * macros.c (keys_of_macros): Remove.
14583
747d3f2a
SM
14584 * xfaces.c (Fface_attribute_relative_p): Declare args.
14585
5e905a57
JR
145862001-10-30 Jason Rumney <jasonr@gnu.org>
14587
14588 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
14589 (enum_font_cb2): Ignore fonts with vertical orientation.
14590
3a426197
RS
145912001-10-30 Richard M. Stallman <rms@gnu.org>
14592
14593 * keyboard.c (Finput_pending_p): Doc fix.
14594
a742d646
GM
145952001-10-30 Gerd Moellmann <gerd@gnu.org>
14596
259cf6bc
GM
14597 * xterm.c (x_after_update_window_line): Don't run the code
14598 clearing in borders for rows whose visible height is 0.
14599
3f99f948
GM
14600 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
14601 resized_p flag is set. If not set, use the much less flickering
14602 method previously used.
14603
14604 * dispnew.c (change_frame_size_1): Set frame's resized_p.
14605
14606 * frame.h (struct frame) <resized_p>: New member.
14607
b4a3be43
GM
14608 * lread.c (to_multibyte): Ensure read_buffer is at least twice
14609 as large as the number of bytes to convert.
747d3f2a 14610
a742d646
GM
14611 * lread.c (to_multibyte): New function.
14612 (read1): Use it.
14613
cacbb9e9
EZ
146142001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
14615
14616 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
14617
99cb6b2f
GM
146182001-10-30 Gerd Moellmann <gerd@gnu.org>
14619
327f42ee 14620 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
14621 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
14622 if the row's fill_line_p is set and drawing the last glyph with
14623 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 14624
99cb6b2f
GM
14625 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
14626
8e8223e2
SM
146272001-10-29 Stefan Monnier <monnier@cs.yale.edu>
14628
14629 * xmenu.c: Include coding.h and charset.h.
14630 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
14631 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
14632 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
14633 Explicitly set wv->help. Use `TRUE' rather than `True'.
14634 (menu_help_callback): Use empty_string.
14635
14636 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
14637 (Fx_popup_dialog): Explicitly init f.
14638 (w32_menu_display_help): Use empty_string.
14639
4d083a8f
RS
146402001-10-29 Richard M. Stallman <rms@gnu.org>
14641
b2304472
RS
14642 * fns.c (Frequire): Detect recursive try to require the same
14643 feature 3 or more levels deep, and get error.
14644 (require_unwind): New subroutine.
14645 (require_nesting_list): New variable.
14646 (syms_of_fns): Init and staticpro it.
14647
4d083a8f
RS
14648 * print.c (print_object): Clarify indication of insertion type.
14649
2fe41216
EZ
146502001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
14651
90480000
EZ
14652 * coding.c (syms_of_coding): Document that locale-coding-system is
14653 used for decoding input on X.
14654
2fe41216
EZ
14655 * window.c (Fscroll_left, Fscroll_right): Doc fix.
14656
f00691a3 146572001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
14658
14659 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
14660 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
14661
60ebcfe8
GM
146622001-10-29 Gerd Moellmann <gerd@gnu.org>
14663
9a7bdceb
GM
14664 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
14665 use NO_CURSOR if cursor_in_non_selected_windows is false.
14666
3f08fcd2
GM
14667 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
14668 the slant attribute if FRAME is t.
14669
0ccfdad2
GM
14670 * xfns.c (x_set_internal_border_width): Set frame garbaged
14671 when X window doesn't exist yet.
14672
ef253080
GM
14673 * xterm.c (x_after_update_window_line): Clear internal border
14674 in different circumstances.
b116830b 14675
60ebcfe8
GM
14676 * xterm.c (XTread_socket) <KeyPress>: Don't use
14677 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
14678 <handa@etl.go.jp>.
14679
73d25f9c
EZ
146802001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
14681
14682 * m/ibms390.h: New file. From Adam Thornton
14683 <athornton@sinenomine.net>.
14684
cac1daf0
GM
146852001-10-28 Gerd Moellmann <gerd@gnu.org>
14686
053b3256 14687 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 14688
cac1daf0
GM
14689 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
14690 a loop counter.
14691
f00691a3 146922001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 14693
f9711de4 14694 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
186486eb 14695
4707d2d0
PJ
14696 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
14697 keyword].
14698 Fix typos in comments.
b116830b 14699
d883731c
PJ
14700 * emacs.c (bug_reporting_address): New function.
14701 Use it when displaying usage message.
14702
04012254
PJ
14703 * minibuf.c (read_minibuf): Remove unused external declaration of
14704 variable `Qread_only'.
14705
13b1a09c
PJ
14706 * keymap.c (access_keymap): Remove unused variable `charset'.
14707
5bbf4378
MB
147082001-10-28 Miles Bader <miles@gnu.org>
14709
14710 * xfaces.c (merge_face_heights): Handle TO being relative as well.
14711 Remove #ifdef'd-out code.
14712 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
14713 (syms_of_xfaces): Initialize them.
14714
1ce1e4ee
JR
147152001-10-27 Jason Rumney <jasonr@gnu.org>
14716
14717 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
14718 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
14719 position using the system caret.
14720
14721 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
14722 (w32_system_caret_height, w32_system_caret_x)
14723 (w32_system_caret_y): New variables for tracking system caret.
14724 (w32_initialize): Initialize them.
c2d53558 14725 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 14726
c2d53558
SM
14727 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
14728 New messages types.
1ce1e4ee
JR
14729
14730 * w32term.c (note_mouse_highlight): Clear old help_echo.
14731
f00691a3 147322001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 14733
bb4600a4
PJ
14734 * xterm.c: Fix typo in a comment.
14735
7db35a48
PJ
14736 * emacs.c: Fix typos in comments.
14737 Remove unnecessary spaces.
14738 Change doc-string comments to `new style' [w/`doc:' keyword].
14739 (USAGE2): Fix typos in usage string.
14740
a7248e4f
PJ
14741 * xterm.c: Fix typo in a comment.
14742
4e30ce42
PJ
14743 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
14744 emacs.c.
14745
62725a92
GM
147462001-10-27 Gerd Moellmann <gerd@gnu.org>
14747
798dbe1f 14748 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 14749 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
14750 farther backward when target_y was not reached.
14751
62725a92
GM
14752 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
14753 Display errno only if non-zero.
14754 (sound_warning): New function.
14755 (vox_configure): Don't treat failing to set sample rate as error.
14756 (various places): Improve error messages.
14757
d4e34d24
EZ
147582001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
14759
944e6f60
EZ
14760 * fileio.c (Faccess_file): Run the argument filename through
14761 Fexpand_file_name, before using it.
14762
d4e34d24
EZ
14763 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
14764 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
14765
38d2af0c
GM
147662001-10-26 Gerd Moellmann <gerd@gnu.org>
14767
da80a8d5
GM
14768 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
14769
38d2af0c
GM
14770 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
14771 Fix clearing in the case of scroll bars on the right.
c2d53558 14772
45de4a6f 147732001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
14774
14775 * w32gui.h (XImage): Add a dummy typedef.
14776
fbd5ceb2
GM
147772001-10-26 Gerd Moellmann <gerd@gnu.org>
14778
c2d53558 14779 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 14780
b23236fb
EZ
147812001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
14782
14783 * frame.c (Fframe_parameter): Fix last change.
14784
5d991fc4
EZ
14785 * fileio.c: Revert last change (which removed old commented-out
14786 version of expand-file-name). Add a comment that explains why
14787 this old version should not be removed.
14788
879eadc3
GM
147892001-10-25 Gerd Moellmann <gerd@gnu.org>
14790
75700ff2
GM
14791 * frame.c (Fframe_parameter): Fix a bug whereby some
14792 ``artificial'' frame parameters, like `minibuffer' were not
14793 obtained by calling Fframe_parameters.
14794
dfe92a6a
GM
14795 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
14796 cursor differently.
14797
879eadc3
GM
14798 * xdisp.c (move_it_vertically_backward): Compute line height
14799 differently. Add heuristic to try to be more compatible to 20.x.
14800
e1010ebe
SM
148012001-10-25 Stefan Monnier <monnier@cs.yale.edu>
14802
d73a471b
SM
14803 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
14804
d6da5a06
GM
14805 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
14806 boolean.
e1010ebe 14807
f66bd220
MB
148082001-10-25 Miles Bader <miles@gnu.org>
14809
14810 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
14811 BG is a pointer to a structure, not a structure.
14812 (gif_format, png_format): Add missing commas.
14813
d436d538
RS
148142001-10-24 Richard M. Stallman <rms@gnu.org>
14815
14816 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 14817 (syms_of_xfaces): Defsubr it.
d436d538 14818
f00691a3 148192001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
14820
14821 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
14822 variable `area'.
14823
f00691a3 148242001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 14825
c2d53558 14826 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 14827
e2a57b34
MB
148282001-10-25 Miles Bader <miles@gnu.org>
14829
14830 * dispextern.h (struct image): Add `background',
14831 `background_valid', and `background_transparent' fields.
14832 (image_background, image_background_transparent): New declarations.
14833 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
14834 * xfns.c (image_background, image_background_transparent)
14835 (four_corners_best): New functions.
c2d53558 14836 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
14837 (gs_format): Add `:background' entry.
14838 (lookup_image): Set IMG's background color if specified.
14839 (pbm_load, xbm_load_image, png_load): Set IMG's background field
14840 when appropriate.
14841 (x_clear_image_1): Reset `background_valid' and
14842 `background_transparent_valid' fields.
14843 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
14844 calculating it here. Set IMG's background_transparent field.
14845 (enum xpm_keyword_index): Add XPM_BACKGROUND.
14846 (enum png_keyword_index): Add PNG_BACKGROUND.
14847 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
14848 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
14849 (enum gif_keyword_index): Add GIF_BACKGROUND.
14850 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 14851 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
14852 Pre-calculate image background color where necessary.
14853 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
14854 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
14855 color to use for image glyph reliefs.
14856
b547b6e8
GM
148572001-10-24 Gerd Moellmann <gerd@gnu.org>
14858
d9e3b8c6
GM
14859 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
14860 in full-width rows.
c2d53558 14861
b547b6e8
GM
14862 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
14863 Fix clearing of area not covered by scroll bar.
14864
f00691a3 148652001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
14866
14867 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
14868 and `real_start'.
c2d53558 14869 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
14870 (glyph_rect): Remove unused variable `area'.
14871
76cb5e06
GM
148722001-10-24 Gerd Moellmann <gerd@gnu.org>
14873
bdbdebff 14874 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
14875
14876 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
14877 (row_containing_pos): Take additional argument DY.
14878 Treat rows ending in middle of char differently.
62e33982
GM
14879 (display_line): Handle tabs on window systems differently.
14880
14881 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
14882 with additional argument.
14883
14884 * dispextern.h (row_containing_pos): Adjust prototype.
14885
76cb5e06
GM
14886 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
14887 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
14888 (try_window_id, try_window_reusing_current_matrix)
14889 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 14890 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 14891
f00691a3 148922001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 14893
c9e60620
PJ
14894 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
14895 gnuemacs).
14896 (HAVE_BOXES): Fix typo in comment.
14897 (push_menu_pane): Fix typo in comment.
14898
3b552d56
PJ
14899 * xdisp.c: (display_prop_string_p): Remove unused local declaration
14900 of `Qwhen'.
14901 (single_display_prop_string_p): Remove unused local declarations
14902 of `Qwhen' and `Qmargin'.
14903 (string_buffer_position): Remove unused variable `around'.
14904 (store_frame_title): Remove unused variable `width'.
14905
15c565ac
PJ
14906 * window.c: Don't define max.
14907 (coordinates_in_window): Remove unused variable `uy'.
14908
a8818eb9
PJ
14909 * widget.c: Don't define max.
14910
996fee11
PJ
14911 * process.c: Don't define max.
14912 (create_process): Remove unused variable `buffer'.
14913
496e1a5b
GM
149142001-10-23 Gerd Moellmann <gerd@gnu.org>
14915
c2d53558 14916 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 14917
5905ae8b
EZ
149182001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
14919
14920 * xfaces.c (Finternal_set_lisp_face_attribute)
14921 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
14922 frame is on a windowed display.
14923
24db49fb
GM
149242001-10-23 Gerd Moellmann <gerd@gnu.org>
14925
c2d53558
SM
14926 * dispnew.c (sync_window_with_frame_matrix_rows):
14927 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
14928 of marginal areas.
14929
c2d53558 14930 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 14931
f0487f05
EZ
149322001-10-23 Andreas Schwab <schwab@suse.de>
14933
14934 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
14935 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
14936
f0a48a01
GM
149372001-10-23 Gerd Moellmann <gerd@gnu.org>
14938
c2d53558 14939 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
14940 REAL_END. Notice if cursor gets overwritten.
14941 (notice_overwritten_cursor): Take X positions as parameters.
14942 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
14943 around call to x_draw_glyphs.
14944
f00691a3 149452001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 14946
fc11dff0
PJ
14947 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
14948 instead of C) and usage.
a50a10a0 14949
fc11dff0
PJ
14950 * editfns.c (char-to-string): Fix argument names (use CHAR instead
14951 of C) and usage.
a50a10a0
PJ
14952
14953 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
14954 `left', `max_width' and `max_height'.
14955
8738febd
GM
149562001-10-23 Gerd Moellmann <gerd@gnu.org>
14957
14958 * xdisp.c (display_line): For a tab continued to the next line,
14959 set row's ends_in_middle_of_char_p.
14960
653c329b
GM
149612001-10-22 Gerd Moellmann <gerd@gnu.org>
14962
14963 * xdisp.c (display_line): Fix computation of continuation lines
14964 width for TABs.
14965
f00691a3 149662001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 14967
7ba51063
PJ
14968 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
14969 `Qlaplace'.
14970
f958c5ac
PJ
14971 * fileio.c: Remove unused code.
14972
eb360291
MB
149732001-10-22 Miles Bader <miles@gnu.org>
14974
14975 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
14976 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
14977 Remove `DOC_STRINGS_IN_COMMENTS' cases.
14978
98515cf0
JR
149792001-10-21 Jason Rumney <jasonr@gnu.org>
14980
14981 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
14982
93026d88
EZ
149832001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
14984
14985 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
14986 (Finsert_string): Avoid the multi-line string literals warning.
14987
c9a95b79
MB
149882001-10-22 Miles Bader <miles@gnu.org>
14989
14990 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
14991 (Fdocumentation): Don't use it.
14992 (syms_of_doc): Don't initialize it.
14993
14994 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
14995 * print.c (Fwith_output_to_temp_buffer): Likewise.
14996 * window.c (Fsave_window_excursion): Likewise.
c2d53558 14997 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 14998 (Fsave_restriction): Likewise.
c2d53558
SM
14999 * eval.c (Frun_hooks, Frun_hook_with_args)
15000 (Frun_hook_with_args_until_failure)
15001 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
15002 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
15003 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
15004 (Funwind_protect, Fcondition_case): Likewise.
15005 * coding.c (Ffind_operation_coding_system): Likewise.
15006 * keyboard.c (Ftrack_mouse): Likewise.
15007
a3b10252
MB
150082001-10-21 Miles Bader <miles@gnu.org>
15009
c2d53558 15010 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
15011 (Fmake_hash_table): Add usage: string to doc string.
15012 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 15013 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
15014 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
15015 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
15016 (Fml_prefix_argument_loop): Likewise.
15017
f00691a3 150182001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 15019
c2d53558 15020 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 15021
c6f73eec
PJ
15022 * sysdep.c (init_sys_modes): Change doc-string comments to `new
15023 style' [w/`doc:' keyword].
15024
15025 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
15026 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
15027 comments to `new style' [w/`doc:' keyword].
15028
3cf3436e
JR
150292001-10-21 Jason Rumney <jasonr@gnu.org>
15030
15031 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
15032
c169b8f1
JR
15033 * w32term.c (remember_mouse_glyph): New function.
15034 (w32_mouse_position): Use it.
15035 (note_mouse_movement): If the mouse moved off the glyph, remember
15036 its new position.
c2d53558 15037
4fdd691b
JR
15038 * w32term.h (struct w32_output): Correct spelling of x_compatible.
15039 (w32_display_info): Add mouse_face_overlay.
15040
c169b8f1
JR
15041 * w32term.c (notice_overwritten_cursor): Renamed from
15042 note_overwritten_text_cursor. Rewritten to take glyph widths into
15043 account.
15044 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
15045 (fast_find_string_pos): New function.
15046 (fast_find_position): Return the correct vpos. Add parameter
15047 STOP. In the final row, stop before glyphs having STOP as object.
15048 Don't consider glyphs that are not from a buffer.
15049 (fast_find_position) [0]: Add a presumably more correct version
15050 for after 21.1.
15051 (expose_window_tree, expose_frame): Don't compute intersections here.
15052 (expose_window): Do it here instead.
15053 (expose_window_tree, expose_window, expose_line): Return 1 when
15054 overwriting mouse-face.
15055 (expose_window): If W is the window currently being updated, mark
15056 the frame garbaged.
15057 (expose_frame): If mouse-face was overwritten, redo it.
15058 (x_use_underline_position_properties): New variable.
15059 (syms_of_xterm): DEFVAR_BOOL it.
15060 (x_draw_glyph_string): Add comment to use it in future.
15061 (x_draw_glyph_string): Restore clipping after drawing box.
15062 Fix a computation of the underline position.
15063 (w32_get_glyph_string_clip_rect): Minor cleanup.
15064 (x_fill_stretch_glyph_string): Remove an assertion.
15065 (x_produce_glyphs): Don't convert multibyte characters
15066 to unibyte characters in unibyte buffers.
15067 (cursor_in_mouse_face_p): New function.
15068 (x_draw_stretch_glyph_string): Use it to choose a different GC
15069 when drawing a cursor within highlighted text. Don't draw
15070 background again if it has already been drawn.
15071 (x_draw_glyph_string_box): Don't draw a full-width
15072 box just because the glyph row's full_width_p flag is set.
15073 (x_draw_glyphs): Fix computation of rightmost x for
15074 full-width rows.
15075 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
15076 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
f63fd14e 15077 change bottom shadow accordingly. Some cleanup.
c169b8f1
JR
15078 (x_update_window_end): Handle overwritten mouse face
15079 also for tool bar windows.
15080 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
15081 DRAW is DRAW_IMAGE_RAISED.
15082 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
15083 actually redrawn. Make the function static.
15084 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
15085 optimize away highlighting if we pass over that same overlay again.
15086 (note_mouse_highlight): Call mouse_face_overlay_overlaps
15087 to detect a case where we have to highlight a different region
15088 despite not having left the currently highlighted region.
15089 Set mouse_face_overlay in the x_display_info. Avoid changing the
15090 mouse pointer shape when show_mouse_face has already done it, or
15091 there is no need. Handle mouse-face and help-echo in strings.
15092 (glyph_rect): New function.
15093 (w32_mouse_position): Use it to raise the threshold for mouse
15094 movement event generation.
15095 (w32_initialize_display_info): Initialize the x_display_info's
15096 mouse_face_overlay.
15097 (w32_set_vertical_scroll_bar): Don't clear a zero height
15098 or width area.
15099 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
15100 a widget to zero height.
15101
3cf3436e 15102 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 15103 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
15104 equivalents in menu_items.
15105 (w32_menu_show): Don't overwrite an item's name with its key
15106 description in case the description is a multibyte string.
15107 (single_submenu): Some cleanup.
15108
15109 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
15110 (postprocess_image): New function.
15111 (lookup_image): Call it for all image types except PostScript.
15112 (x_kill_gs_process): Call postprocess_image.
15113 (tiff_error_handler, tiff_warning_handler): New functions.
15114 (tiff_load): Install them as handlers.
15115 (x_kill_gs_process): Recognize if someone has cleared the image
15116 cache under us.
15117 (valid_image_p): Protect better against invalid image
15118 specifications. Previous code could signal an error.
15119 (Fx_hide_tip, Fshow_tip): Doc fix.
15120 (Fv_max_tooltip_size): New variable.
15121 (syns_of_xfns): DEFVAR_LISP it.
15122 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
f63fd14e 15123 window buffer to *tip* right after creating the frame. Set frame's
3cf3436e
JR
15124 window_width. Use a maximum tooltip size specified by
15125 Vx_max_tooltip_size, if that has valid contents.
15126 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
15127 Make sure the tooltip is completely visible.
15128 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
15129 (Fx_create_frame): Adjust the frame's height for presence
15130 of the tool bar before calling x_figure_window_size.
15131 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
15132 when the window gets smaller.
15133 (x_set_foreground_color): Set frame's cursor_pixel.
15134 (x_set_foreground_color, x_set_background_color): Cleaned up.
15135 (x_set_font): Handle case of x_new_fontset returning the same name
15136 as before, although there was a change in fontsets.
15137
386ca361
MB
151382001-10-21 Miles Bader <miles@gnu.org>
15139
c2d53558 15140 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
15141 (Flogxor): Add usage: string to doc string.
15142 * charset.c (Fstring): Likewise.
15143 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
15144 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
15145
f00691a3 151462001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 15147
03be2694
PJ
15148 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
15149
15150 * alloc.c: Reindent DEFUNs with doc: keywords.
15151
15152 * abbrev.c (Finsert_abbrev_table_description): Reindent.
15153
14ff1ee0
PJ
15154 * frame.c: Change doc-string comments to `new style' [w/`doc:'
15155 keyword].
15156
2f147815 15157See ChangeLog.9 for earlier changes.
6922b018
KH
15158
15159;; Local Variables:
49b3bd82 15160;; coding: iso-2022-7bit
6922b018 15161;; End:
2a34a036 15162
2f147815 15163 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
15164 Copying and distribution of this file, with or without modification,
15165 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
15166
15167;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4