Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-615
[bpt/emacs.git] / src / ChangeLog
CommitLineData
329a7be2
KS
12004-10-14 Kim F. Storm <storm@cua.dk>
2
3 * xterm.h: Include Xutil.h after keysym.h to work around bug
4 (incorrectly recognising AltGr key) in some X versions.
5
9238467d
SM
62004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
7
8 * keymap.c (get_keymap): An autoload form is not a keymap.
9
10 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
11
4440e3ca
KS
122004-10-13 Kim F. Storm <storm@cua.dk>
13
7cfdabde
KS
14 * callproc.c (Fcall_process): Simplify handling of display arg.
15 Resume `display_on_the_fly' once a coding system is determined.
16
4440e3ca
KS
17 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
18
1c8dec6a
KS
192004-10-12 Kim F. Storm <storm@cua.dk>
20
21 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
22 caller, such as call-process, is not going to poll for input.
23 (calc_line_height_property): Handle case where it->object is nil.
24
25 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
26
170b174c
KH
272004-10-12 Kenichi Handa <handa@m17n.org>
28
9238467d
SM
29 * xdisp.c (get_next_display_element):
30 If unibyte_display_via_language_environment is zero, display 8-bit
170b174c
KH
31 chars in octal in unibyte buffer.
32
b583964c
KS
332004-10-12 Kim F. Storm <storm@cua.dk>
34
35 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
36 are no ordinary bindings.
37
29fabd8c
JD
382004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
39
9238467d 40 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
29fabd8c 41
c3f4c690
ST
422004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
43
9238467d
SM
44 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
45 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
c3f4c690 46 (make_mac_frame): Add BLOCK_INPUT around the making of a
9238467d
SM
47 terminal frame.
48 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
49 * macgui.h (mktime): Use emacs_mktime.
c3f4c690
ST
50 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
51 Make a cancel file-open dialog be like C-g.
9238467d
SM
52 * mac.c (mktime): Use emacs_mktime.
53 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
54 (Fmac_paste_function): Add better error handling for carbon cut/paste.
c3f4c690 55
9688f9eb
KS
562004-10-10 Kim F. Storm <storm@cua.dk>
57
58 * keyboard.c (timer_resume_idle): New function to resume idle
59 timer without resetting timers on the idle list.
60 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
61 (timer_start_idle, timer_stop_idle): Declare static.
62 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
63
64 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
65
f7f3a65f
ST
662004-10-08 Steven Tamm <steventamm@mac.com>
67
9238467d 68 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
f7f3a65f 69 * macterm.c (mac_check_for_quit_char): Remove warning for using
9238467d 70 NULL where 0 should be used.
f7f3a65f
ST
71 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
72 objc/malloc.h
9238467d 73 * mac.c: Include time.h for Tiger compatibility.
f7f3a65f 74
3c7d999a
KS
752004-10-07 Kim F. Storm <storm@cua.dk>
76
77 * xdisp.c (redisplay_window): Fix flicker on vertical line between
78 windows. Update vertical line after drawing window fringes, but
79 only if actually drawing any bitmaps--or there is no fringe.
80
81 * xterm.c (x_update_window_end): Likewise.
82 * macterm.c (x_update_window_end): Likewise.
83 * w32term.c (x_update_window_end): Likewise.
84
85 * fringe.c (draw_window_fringes): Return value now indicates if
86 any fringe bitmaps were redrawn (or there are no fringes).
87
88 * dispextern.h (draw_window_fringes): Update prototype.
89
bf06c82f
ST
902004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
91
92 * macfns.c (mac_get_window_bounds): Add extern.
93 (x_real_positions): Use mac_get_window_bounds.
94
95 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
96 xmenu.c (YAILOM).
3c7d999a 97
bf06c82f
ST
98 * macterm.c [!MAC_OSX]: Include Windows.h.
99 (front_emacs_window): Rename from mac_front_window. All uses
100 changed. Return the frontmost non-tooltip emacs window.
101 (mac_get_window_bounds): New function.
102 (x_calc_absolute_position): Use the difference of width and height
103 between the inner and outer window.
104 (x_set_offset): Specify window position by the coordinae of the
105 outer window. Adjust the position if the title bar is completely
106 outside the screen.
107 (app_is_suspended, app_sleep_time): Remove unused variables.
108 (do_app_resume, do_app_suspend): Remove their contents because
109 window-activate/deactivate events will do the job.
110 (do_zoom_window): Remove unused variables. Make compliant to the
111 standard way of zooming. Set f->left_pos and f->top_pos.
112 (XTread_socket): Don't use argument `expected'. Don't use
113 FrontWindow to determine the clicked window. Exclude unprocessed
114 mouseUp cases in the early stage. Add parentheses to fix operator
115 precedence.
116 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
117
118
4cbbf6b7 1192004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
d8b43276
JD
120
121 * config.in: Regenerate.
122
123 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
124 HAVE_EXECSHIELD.
125
b90ee8b5
JD
1262004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
127
128 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
129 a row if Alt or Meta has been found for that row. Also stop scanning
130 for Keysyms for that row.
131
904db1a2
KS
1322004-10-04 Kim F. Storm <storm@cua.dk>
133
0207b8ad
KS
134 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
135 to list. Include overlay arrow bitmap in return value.
136
25f7220c
KS
137 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
138 bars with fractional column width. If scroll bar separates two
139 windows, move it towards the window it belongs to. Only update
140 the padding area below the scroll bar widget when necessary,
141 i.e. when scroll bar widget is created, moved, or resized.
142
562020fe
KS
143 * xdisp.c (define_frame_cursor1): Do not change frame cursor
144 while tracking/dragging mouse.
145 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
146
37e34af7
KS
147 * window.c (coordinates_in_window): Relax check for cursor
148 on vertial border between mode lines.
149 (Fset_window_fringes): Do not allow negative widths.
150 (Fset_window_scroll_bars): Likewise.
151
904db1a2
KS
152 * .gdbinit (pp): Shorthand for p ARG + pr.
153 (ff): New command: flush frame updates (X only).
154
38fe4f64
MA
1552004-10-03 Michael Albinus <michael.albinus@gmx.de>
156
157 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
158
9de36315
KH
1592004-09-30 Kenichi Handa <handa@m17n.org>
160
07c381ad 161 * process.c (send_process): Free composition data.
9de36315 162
07c381ad 163 * fileio.c (Finsert_file_contents): Free composition data.
9de36315
KH
164
165 * coding.c (code_convert_region): Don't skip ASCIIs if there are
07c381ad
KH
166 compositions to encode.
167 (encode_coding_string): Likewise. Free composition data.
168
1692004-09-30 Florian Weimer <fw@deneb.enyo.de> (tiny change)
170
171 * coding.c (code_convert_region): Free composition data.
9de36315 172
f2a54fbc
KS
1732004-09-29 Kim F. Storm <storm@cua.dk>
174
dc5d6435
KS
175 * fringe.c: Remove limit on number of bitmaps.
176 (fringe_bitmaps, fringe_faces): Change to pointers.
177 (max_fringe_bitmaps): New var.
178 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
179 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
180
181 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
182 (struct glyph_row): Reorder fringe_bitmap related fields.
183 (struct it): Likewise.
184
185 * w32term.c (fringe_bmp): Change to pointer.
186 (max_fringe_bmp): New var.
187 (w32_define_fringe_bitmap): Expand fringe_bmp.
188 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
189 (w32_destroy_fringe_bitmap): Likewise.
190
1912004-09-29 Kim F. Storm <storm@cua.dk>
192
193 * fringe.c: Simplify last change.
f2a54fbc
KS
194 (lookup_fringe_bitmap): New function.
195 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
196 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
197 Keep standard bitmaps in Vfringe_bitmaps.
198 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
199 (Fset_fringe_bitmap_face): Likewise.
200
201 * dispextern.h (lookup_fringe_bitmap): Add prototype.
202 (valid_fringe_bitmap_p): Remove prototype.
203
204 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
205
841a8bca
KS
2062004-09-29 Kim F. Storm <storm@cua.dk>
207
1f2da365
KS
208 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
209 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
210
841a8bca
KS
211 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
212
213 * fringe.c (Vfringe_bitmaps): New variable.
214 (syms_of_fringe): DEFVAR_LISP it.
215 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
216 Change arg to Lisp_Object and fail if not an integer.
217 (get_fringe_bitmap_name, resolve_fringe_bitmap)
218 (destroy_fringe_bitmap): New functions.
9238467d
SM
219 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
220 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
841a8bca
KS
221 clear its fringe property.
222 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
223 Fdestroy_fringe_bitmap.
224 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
225 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
226 and set fringe property. Signal error if no free slots.
227 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
228 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
229
230 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
231 symbols with a fringe property.
232
4d965590
KS
2332004-09-27 Kim F. Storm <storm@cua.dk>
234
235 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
236 Doc fix. Format may now be a symbol or alist, not a cons.
237
238 * fringe.c (update_window_fringes): Handle new formats of
239 indicate-buffer-boundaries (symbol or alist). No longer
240 allow a simple cons.
241 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
242
e888c2b3
JD
2432004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
244
9238467d 245 * config.in: Rebuild.
e888c2b3 246
83f1cb94
JD
2472004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
248
249 * config.in: Rebuild.
250
dd3b1d60 251 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
83f1cb94 252
2c51754c
SM
2532004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
254
255 * xterm.c (x_term_init): Work around a bug in some X servers.
256
3df5f8aa
RS
2572004-09-18 Richard M. Stallman <rms@gnu.org>
258
557ca2c1
RS
259 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
260
3df5f8aa
RS
261 * xdisp.c (try_window_reusing_current_matrix):
262 Handle the case where we reach the old displayed text,
263 out of sync with the old line boundary.
264
9238467d 2652004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
4b70e2c9
SM
266
267 * fileio.c (Finsert_file_contents): Fix case of replacement in a
268 narrowed buffer.
269
bfa02563
KS
2702004-09-14 Kim F. Storm <storm@cua.dk>
271
a25fe164
KS
272 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
273
bfa02563
KS
274 * xfaces.c (Qface_no_inherit): New var.
275 (syms_of_xfaces): Intern and staticpro it.
276 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
277 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
278 Don't increment face_change_count when face has non-nil
279 face-no-inherit property.
280
126f9c02
SM
2812004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
282
892a8eb5
SM
283 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
284 (Fbyte_code): Remove dead code after `wrong_type_argument'.
285
126f9c02 286 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
9238467d 287 before doing the mark_stack_check_gcpros since they're not on the stack.
126f9c02 288
c0ad3b38
KS
2892004-09-12 Kim F. Storm <storm@cua.dk>
290
291 * editfns.c (Fformat): Handle format strings with multiple text
292 properties. Reverse text property list from the format string,
293 so the positions are in increasing order.
294
844fc085
JD
2952004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
296
297 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
298 x_uncatch_errors so that possible protocol errors are delivered.
299
b106731c
EZ
3002004-09-10 Eli Zaretskii <eliz@gnu.org>
301
21065c92
EZ
302 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
303 blockinput.h.
304 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
305 charset.h, and coding.h
9238467d 306 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
21065c92
EZ
307 (term.o): Depend on window.h and keymap.h.
308 (abbrev.o): Depend on syntax.h.
309 (callint.o): Depend on keymap.h.
310 (casefiddle.o): Depend on charset.h and keymap.h.
311 (category.o): Depend on keymap.h.
312 (coding.o): Depend on dispextern.h.
313 (cmds.o): Depend on keyboard.h and keymap.h.
314 (dispnew.o): Depend on indent.h and intervals.h.
315 (doc.o): Depend on keymap.h.
316 (editfns.o): Depend on frame.h.
317 (emacs.o): Depend on dispextern.h.
318 (fileio.o): Don't depend on ccl.h.
319 (filelock.o): Depend on charset.h and coding.h.
320 (frame.o): Depend on w32term.h and macterm.h.
321 (insdel.o): Depend on region-cache.h.
322 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
323 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
324 (search.o): Depend on $(INTERVALS_SRC).
325 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
326 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
327 xterm.h, w32term.h, and macterm.h.
328 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
329 w32term.h, and macterm.h.
330 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
331 region-cache.h, xterm.h, w32term.h, and macterm.h.
332 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
333 (data.o): Depend on frame.h.
334 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
335 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
336 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
337 (intervals.o): Depend on keymap.h.
338
9238467d
SM
339 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
340 Add debugging print-out to termscript.
b106731c 341
64b7122d
RS
3422004-09-09 Richard M. Stallman <rms@gnu.org>
343
344 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
345
5670531e
RS
3462004-09-08 Richard M. Stallman <rms@gnu.org>
347
6cb4a892
RS
348 * window.c (Fset_window_buffer): Doc fix.
349
5670531e
RS
350 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
351
7e388eb7
JL
3522004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
353
354 * minibuf.c (history_delete_duplicates): New variable.
355 (read_minibuf): Use it.
356 (syms_of_minibuf): Create the corresponding lisp variable.
357
370e3587
KS
3582004-09-08 Kim F. Storm <storm@cua.dk>
359
360 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
361 overlay just before point.
362
f844ba4e
LT
3632004-09-07 Luc Teirlinck <teirllm@auburn.edu>
364
365 * buffer.h (struct buffer): Add auto_save_file_format field.
9238467d
SM
366 * buffer.c (reset_buffer, init_buffer_once):
367 Handle auto_save_file_format field.
f844ba4e
LT
368 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
369 `buffer-auto-save-file-format'.
f844ba4e
LT
370 * fileio.c: Delete declaration for removed Vauto_save_file_format.
371 (build_annotations): Adapt to replacement of
372 `auto-save-file-format' with the new buffer-local variable
373 `buffer-auto-save-file-format'.
374 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
375
f0f90717
JR
3762004-09-07 Jason Rumney <jasonr@gnu.org>
377
378 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
379
9238467d
SM
380 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
381 Handle Unicode menu titles.
f0f90717 382
4e14f66c
KS
3832004-09-07 Kim F. Storm <storm@cua.dk>
384
385 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
386 property from text property or overlay strings at point.
387
9238467d 3882004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
1806714a
SM
389
390 * xmenu.c (update_submenu_strings): YAILOM.
391 (set_frame_menubar): Make sure last_i is initialized.
392
1f06d367
JR
3932004-09-03 Jason Rumney <jasonr@gnu.org>
394
1806714a 395 * w32menu.c (_widget_value): Add lname and lkey.
1f06d367
JR
396 (digest_single_submenu): Set lname and lkey in widget_value
397 instead of name and key.
398 (update_submenu_strings): New function.
399 (set_frame_menubar): Remove call to inhibit_garbage_collection,
400 call update_submenu_strings.
401
402 * w32menu.c (globals_of_w32menu): Check for Unicode API.
403 (digest_single_submenu, w32_menu_show): Encode menu strings as
404 UTF-8 if Unicode API is available.
405 (utf8to16): New function.
406 (add_menu_item): Use it when calling Unicode API.
1806714a 407
46540080
KS
4082004-09-03 Kim F. Storm <storm@cua.dk>
409
410 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
411 in overlay or text-property strings; set cursor on corresponding
412 glyph rather than at end of the string.
413
9277ba61 4142004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
46540080 415
9277ba61 416 * macfns.c (x_real_positions): Save the current window port and
1806714a
SM
417 set a new one before obtaining the global coordinate.
418 Use FRAME_MAC_WINDOW.
419 (x_set_name, x_set_title): Encode title to UTF8.
420 Use SetWindowTitleWithCFString.
9277ba61
ST
421 (Fx_server_version): Get correct OS version.
422
1806714a
SM
423 * macmenu.c (add_menu_item): Remove unused variable `i'.
424 Don't let separator items destroy refence constants of other menu items.
9277ba61
ST
425
426 * macterm.c (x_update_end): Move SetPortWindowPort to inside
427 BLOCK_INPUT.
428 (x_set_offset): Use FRAME_MAC_WINDOW.
429
430 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
431 nontext_cursor if it is on a scroll bar.
432
433 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
434 Carbon support.
1806714a
SM
435 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
436 Use LIBS_CARBON.
9277ba61 437
b10daec7
JD
4382004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
439
440 * xfns.c (x_set_name_internal): New function. Check if we shall call
441 xfree before ENCODE_UTF_8.
442 (x_set_name, x_set_title): Call x_set_name_internal.
443
f7e22385
JR
4442004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
445
446 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
447 reload it.
448
2bf436c3
JD
4492004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
450
1806714a 451 * macmenu.c (_widget_value): Add lname and lkey.
16ceacc2
JD
452 (single_submenu): Set lname and lkey in widget_value
453 instead of name and key.
454 (update_submenu_strings): New function.
455 (set_frame_menubar): Remove call to inhibit_garbage_collection,
456 call update_submenu_strings.
457
2bf436c3
JD
458 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
459 instead of name and key.
460 (update_submenu_strings): New function.
461 (set_frame_menubar): Remove call to inhibit_garbage_collection,
ec867797 462 call update_submenu_strings.
2bf436c3
JD
463
464 * gtkutil.h (_widget_value): Added lname and lkey.
465
11715f92
ST
4662004-08-30 Steven Tamm <steventamm@mac.com>
467
468 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
469 by using different names for inner loop variables.
470
5500be54
JD
4712004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
472
059cd329
JD
473 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
474 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
475
5500be54
JD
476 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
477 tool bar items is 0.
478
383418e5
ST
4792004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
480
481 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
482 strings in menu items.
483 (single_submenu): Use ENCODE_MENU_STRING
484 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
485 button release isn't passed to event loop
486 (add_menu_item): Use SetMenuItemWithCFString
487
6eb3ee72
ST
4882004-08-26 Steven Tamm <steventamm@mac.com>
489
490 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
491 tool-bar/menu click
492 * macfns.c (Fx_file_dialog): Implemented using NavServices
493
10b43ac3
JD
4942004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
495
2728b5d0
JD
496 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
497
10b43ac3
JD
498 * xfns.c (x_window_to_frame, x_any_window_to_frame)
499 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
500 (x_top_window_to_frame): Return 0 if wdesc is None.
501
2ee3b79e
RS
5022004-08-22 Richard M. Stallman <rms@gnu.org>
503
504 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
505 HAVE_TERMIOS]: If there's no char for this signal, drop through
506 and use system calls.
507
508 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
509
9a1ba2ea
KS
5102004-08-20 Kim F. Storm <storm@cua.dk>
511
512 * process.c (wait_reading_process_output): Rename from
513 wait_reading_process_input. All uses changed.
514 (wait_reading_process_output_1): Rename from
515 wait_reading_process_input_1. All uses changed.
516
517 * dispnew.c (Fsleep_for): Remove obsolete code.
518
295f3b30
KH
5192004-08-20 Kenichi Handa <handa@m17n.org>
520
521 * syntax.c (skip_chars): Fix for unibyte case.
522
27615979
SM
5232004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
524
525 * syntax.c (char_quoted): Mixup byte/char pos.
526 (back_comment): Fixup globals in all cases.
527
00267f94
JD
5282004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
529
530 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
531 passing it to gtk_window_set_title.
532
2439909e
KS
5332004-08-19 Kim F. Storm <storm@cua.dk>
534
6ba0f14c
KS
535 * process.c (wait_reading_process_input): Clean up.
536 Add wait_for_cell, wait_proc, and just_wait_proc args
537 to avoid overloading `read_kbd' and `do_display' args.
538 Change read_kbd arg to int. All callers changed.
539
2439909e
KS
540 * process.c (process_send_signal): Use CDISABLE.
541
542 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
543
101c421e
KS
5442004-08-18 Kim F. Storm <storm@cua.dk>
545
546 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
547 forward to wait_reading_process_input via DO_DISPLAY arg.
548 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
549 object, only process output from that process; also inhibit
550 running timers if DO_DISPLAY==-2.
551
c438dc33
KS
5522004-08-17 Kim F. Storm <storm@cua.dk>
553
554 * process.c (process_send_signal): Fix last change--use
555 _POSIX_VDISABLE instead of CVDISABLE when available.
556
8afc13c6
RS
5572004-08-16 Richard M. Stallman <rms@gnu.org>
558
559 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
560 Set VQUIT and VINTR chars to the standard ones if they are unset.
561 [AIX]: Don't do that here. And don't force VINTR to standard
562 when SIGNALS_VIA_CHARACTERS.
563
c438dc33 564 * process.c (process_send_signal)
8afc13c6
RS
565 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
566 Do nothing if the character is CVDISABLE.
567
568 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
569
c438dc33 570 * intervals.c (move_if_not_intangible):
8afc13c6
RS
571 Force POSITION to be between BEGV and ZV.
572
6dad1714
JPW
5732004-08-14 John Paul Wallington <jpw@gnu.org>
574
575 * buffer.c (Frestore_buffer_modified_p): Doc fix.
576
577 * fileio.c (Fread_file_name): Doc fix.
578
579 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
580
2bd77330
LT
5812004-08-09 Luc Teirlinck <teirllm@auburn.edu>
582
583 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
584
c90e7e43
LT
5852004-08-08 Luc Teirlinck <teirllm@auburn.edu>
586
587 * keyboard.c: Declare Qdisabled_command_function instead of
8392e138 588 Qdisabled_command_hook.
c90e7e43 589 (Fcommand_execute): Use Qdisabled_command_function instead of
8392e138 590 Qdisabled_command_hook.
c90e7e43
LT
591 (syms_of_keyboard): Ditto.
592
81909a1a
LT
5932004-08-07 Luc Teirlinck <teirllm@auburn.edu>
594
595 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
596 (syms_of_keymap) <key-translation-map>: Doc fixes.
597
0cedd530
SM
5982004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
599
1725a7c9
SM
600 * window.c (window_list_1): YAILOM.
601
0cedd530
SM
602 * fileio.c (make_temp_name): Handle multibyte prefixes.
603
2515a131
LT
6042004-08-06 Luc Teirlinck <teirllm@auburn.edu>
605
606 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
607 Doc fix.
608
c8b20fb7
KH
6092004-08-03 Kenichi Handa <handa@m17n.org>
610
611 * coding.c (decode_coding_string): Adjust coding->consumed, and
612 etc. with shrinked_bytes.
613
fb8b092b
KS
6142004-08-03 Kim F. Storm <storm@cua.dk>
615
616 * indent.c (compute_motion): Fix check for full width window
617 in non-window case. Do not count left truncation glyph on
618 window systems.
619
df133612
LT
6202004-08-02 Luc Teirlinck <teirllm@auburn.edu>
621
622 * data.c (Finteractive_form): Doc fix.
623
0f7a93c1
KS
6242004-08-02 Kim F. Storm <storm@cua.dk>
625
626 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
627 properly accounting for continuation glyph on non-window systems.
628 (Fcompute_motion): Use actual window width if WIDTH is nil, and
629 actual window width/height if TOPOS is nil, properly accounting for
630 continuation glyphs on non-window systems, and optional header lines.
631 (vmotion): Let compute_motion calculate actual window width.
632
633 * window.c (window_scroll_line_based): Let compute_motion
634 calculate actual window width.
635
f491e1ed
KS
6362004-08-02 Kim F. Storm <storm@cua.dk>
637
638 * process.c (read_process_output): Use whole read buffer.
639 Don't trigger adaptive read buffering on errors.
640
83f64226
LT
6412004-07-31 Luc Teirlinck <teirllm@auburn.edu>
642
643 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
644
645 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
646
647 * callint.c (Fcall_interactively): Doc fix.
648
8afc13c6
RS
6492004-07-30 Richard M. Stallman <rms@gnu.org>
650
651 * abbrev.c (Fexpand_abbrev): Undo previous change.
652
7c111482
KS
6532004-07-30 Kim F. Storm <storm@cua.dk>
654
655 * editfns.c (Fformat): Allocate extra (dummy) element in info.
656
ee945d08
LT
6572004-07-28 Luc Teirlinck <teirllm@auburn.edu>
658
659 * eval.c (Fdefvar, Fdefconst): Doc fixes.
660
3f911c94
KS
6612004-07-27 Kim F. Storm <storm@cua.dk>
662
663 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
664 we have ensured that the glyph fits on the current line (or returned
665 MOVE_LINE_CONTINUED otherwise).
666
f29ff8c7
KS
6672004-07-26 Kim F. Storm <storm@cua.dk>
668
669 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
670 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
671 if target position is at end of display line but char is not a newline.
672
81159bb9
RS
6732004-07-25 Richard M. Stallman <rms@gnu.org>
674
ab431b61
RS
675 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
676 instead of ON_VERTICAL_BORDER, when on scroll bar.
677 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
678
679 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
680
f29ff8c7 681 * window.c (Fcoordinates_in_window_p):
81159bb9
RS
682 Take account of FRAME_INTERNAL_BORDER_WIDTH.
683
684 * alloc.c (check_cons_list): New function (contents commented out).
685
fc820cc5
LT
6862004-07-24 Luc Teirlinck <teirllm@auburn.edu>
687
688 * xfaces.c (Fcolor_supported_p): Doc fix.
689
690 * frame.c (Fselect_frame, Fset_frame_selected_window)
691 (Fframe_visible_p, Fraise_frame): Doc fixes.
692
289978b5
LT
6932004-07-24 Richard M. Stallman <rms@gnu.org>
694
7630911d
RS
695 * keyboard.h (not_single_kboard_state): Declared.
696
697 * fileio.c (Fwrite_region): Doc fix.
698
699 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
700
701 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
702 only when a real abbrev is present.
703
289978b5
LT
704 * xfns.c (x_icon_verify): New function.
705 (Fx_create_frame): Use it.
706
63cc10ae
KS
7072004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
708
709 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
710
36f826d4
KS
7112004-07-21 Kim F. Storm <storm@cua.dk>
712
713 * window.h (struct glyph_matrix): New members nrows_scale_factor
714 and ncols_scale_factor.
715
716 * window.c (make_window): Initialize nrows_scale_factor and
717 ncols_scale_factor members.
718
719 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
720 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
721 (required_matrix_height): Apply nrows_scale_factor.
722 (required_matrix_width): Apply ncols_scale_factor.
723
724 * xdisp.c (display_line): Increment nrows_scale_factor and set
725 fonts_changed_p if past last allocated row.
726 (append_glyph, append_composite_glyph, produce_image_glyph)
727 (append_stretch_glyph): Increment ncols_scale_factor and set
728 fonts_changed_p if current area is full.
729
5fc1c546
JD
7302004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
731
732 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
733
cb7516e5
LT
7342004-07-19 Luc Teirlinck <teirllm@auburn.edu>
735
736 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
737 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
738 (Fset_window_start, Fscroll_up, Fscroll_down)
739 (Fother_window_for_scrolling, Fscroll_other_window)
740 (Fsave_window_excursion, Fset_window_vscroll)
741 (syms_of_window) <window-size-fixed>: Doc fixes.
742
dda741ec
JR
7432004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
744
745 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
746 ENCODE_SYSTEM for filenames.
747
bfcf6608
ST
7482004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
749
750 * mac.c (sys_select): Block input around call to
751 ReceiveNextEvent to prevent breakage. Correctly handle
752 blocking on event queue only by calling ReceiveNextEvent
753 instead of select (since GUI events aren't on an fd).
754 (sys_read): Remove function
755 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
756
e082ac9d
ST
7572004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
758
759 * mac.c (sys_select): Redo sys_select to use alarm-based
cb7516e5 760 polling instead of 1 sec timeouts (like solaris).
e082ac9d 761
cb7516e5 762 * macterm.c (x_make_frame_visible): Comment in polling on
e082ac9d
ST
763 frame creation.
764
765 * keyboard.c: Undef SIGIO on Carbon
766
767 * atimer.c (alarm_signal_handler): Call alarm handlers after
768 scheduling.
769
770 * eval.c (Feval): Remove quit_char test
771
772 * process.c (wait_reading_process_input): Remove clearing
773 stdin for select call on process input.
774
4b9da0fb
LT
7752004-07-18 Luc Teirlinck <teirllm@auburn.edu>
776
1204e81c
LT
777 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
778 capitalization error in docstring.
4b9da0fb 779
26503ad2
JB
7802004-07-17 Juanma Barranquero <lektu@terra.es>
781
782 * keyboard.c (not_single_kboard_state): Do nothing unless
783 MULTI_KBOARD is defined.
784
3751eb00
RS
7852004-07-17 Richard M. Stallman <rms@gnu.org>
786
787 * window.c (coordinates_in_window): Inside the window but outside
788 its box to the L or R, return ON_VERTICAL_BORDER.
789 (window_list_1): Rotate the list to start with WINDOW.
790
791 * print.c (print_preprocess): Test for print_depth at limit
792 before entering in being_printed.
793
794 * keyboard.c (not_single_kboard_state): New function.
795 (stuff_buffered_input): Now no-op only if no SIGTSTP.
796
797 * frame.c (Fdelete_frame): If we're in single_bboard_state on
798 this kboard, and we delete its last frame, go to any_kboard_state.
799
800 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
801
62eb6ca9
JR
8022004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
803
804 * w32fns.c (Fx_file_dialog): Encode strings in system coding
805 system before passing them to OS functions for display.
806
0f6af254
DK
8072004-07-15 David Kastrup <dak@gnu.org>
808
f9253326
KS
809 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
810 Apparently fixes an abort condition.
0f6af254 811
386c8f42
LT
8122004-07-14 Luc Teirlinck <teirllm@auburn.edu>
813
814 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
815 instead of a cons.
816
366511da
MB
8172004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
818
819 * keyboard.c (echo_dash): Do nothing if there already is a dash
820 at the end of the echo string.
821
f85409d3
KS
8222004-07-12 Kim F. Storm <storm@cua.dk>
823
824 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
825 if GC_MARK_STACK.
826
0ba2e87b
LT
8272004-07-10 Luc Teirlinck <teirllm@auburn.edu>
828
da38045d
LT
829 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
830
0ba2e87b
LT
831 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
832 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
833 (Freplace_buffer_in_windows, Fset_window_buffer)
834 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
835 (syms_of_window): Expand docstring of `display-buffer-function'.
836
5668fbb8
LT
8372004-07-09 Luc Teirlinck <teirllm@auburn.edu>
838
839 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
840 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
841 that time values of the type (HIGH . LOW) are considered obsolete.
842
a085bf9d
LT
8432004-07-06 Luc Teirlinck <teirllm@auburn.edu>
844
669de2fb
LT
845 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
846 docstring.
847
bac66325 848 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
a085bf9d 849
8e975df9
JPW
8502004-07-06 John Paul Wallington <jpw@gnu.org>
851
852 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
853
fa164e6a
JPW
854 * fns.c (Fclear_string): Signal an error if STRING is not a string.
855
2bac9bb1
JD
8562004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
857
858 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
859 instead of CGMainDisplayID (only in OSX 10.2 and later).
860
316ef0dc
JPW
8612004-07-04 John Paul Wallington <jpw@gnu.org>
862
863 * fileio.c (read_file_name_completion_ignore_case): New variable.
864 (syms_of_fileio): Declare and initialise it.
865 (Fread_file_name): Bind `completion-ignore-case' to respect it.
866
2a1a35c6
EZ
8672004-07-03 Eli Zaretskii <eliz@gnu.org>
868
869 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
870 for event.x and event.y.
871
33a72331
KH
8722004-07-01 Kenichi Handa <handa@m17n.org>
873
874 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
875 after getting a new string by pre-write-conversion.
876
9238467d 8772004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
07a6ab76
SM
878
879 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
880 (x_calc_absolute_position): Remove unused var `child'.
881
882 * xfaces.c (x_supports_face_attributes_p)
883 (Fdisplay_supports_face_attributes_p): YAILOM.
884 (tty_supports_face_attributes_p): Remove unused var `i'.
885
886 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
887 back_unibyte_ok.
888
889 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
890
891 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
892
893 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
894
f96ec754
AS
8952004-06-30 Andreas Schwab <schwab@suse.de>
896
897 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
898 (Finit_image_library): Pass LIBRARIES through to
899 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
900 (lookup_image_type): Pass Qnil as second argument to
901 Finit_image_library.
902
903 * lisp.h: Declare Finit_image_library.
904
59feca74 9052004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
c8d09ad8 906
31983645
AS
907 * macterm.c (do_window_activate, do_window_deactivate): Remove.
908 (XTread_socket): Send mouse button events to the toolbox
909 dispatcher even when the mouse is grabbed. Don't process window
910 activate events for non-Emacs windows. Replace function calls to
911 do_window_activate and do_window_deactivate with their contents.
912 Reset mouse grabbing status when a window is deactivated.
59feca74 913
c61278bb
ST
9142004-06-29 Steven Tamm <steventamm@mac.com>
915
916 * macterm.c (mac_get_emulated_btn)
917 (mac_event_to_emacs_modifiers): Fix emulated mouse button
918 support to correctly mask out modifiers.
919
c3762cbd
DK
9202004-06-29 David Kastrup <dak@gnu.org>
921
922 * search.c (Fset_match_data): Allow buffer before end of list
923 which can happen if set-match-data is using a pre-consed list.
924
c61278bb 9252004-06-28 Steven Tamm <steventamm@mac.com>
e439b925
ST
926
927 * macterm.c (XTread_socket): Correctly set the frame position
928 after the window is moved.
929
74cdfe05
JD
9302004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
931
932 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
933 gpix and gmask just before return to avoid memory leak.
03ecb80f
JD
934 (xg_get_image_for_pixmap): Add workaround for monochrome displays
935 so insensitive and activated icons look ok.
74cdfe05 936
ef544dc8
JR
9372004-06-27 Jason Rumney <jasonr@gnu.org>
938
939 * w32fns.c (file_dialog_callback): Disable edit control if set
940 to directories only on CDN_INITDONE message.
941 (Fx_file_dialog): Default to directories only when prompt starts
942 with "Dired".
943
7b7990cc
KS
9442004-06-25 Kim F. Storm <storm@cua.dk>
945
946 * alloc.c (allocate_misc): Update total_free_markers.
947 (free_misc): New function.
948 (safe_alloca_unwind, free_marker): Use it.
949
950 * lisp.h (free_misc): Add prototype.
951
952 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
953
d8c379f8
RS
9542004-06-24 Richard M. Stallman <rms@gnu.org>
955
956 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
957 (syms_of_emacs): Lisp variables deleted.
958
559cdd07
DK
9592004-06-23 David Kastrup <dak@gnu.org>
960
94939b84
DK
961 * search.c (Freplace_match): Adjust the match-data more thoroughly
962 when replacing strings in the buffer.
963 (Fmatch_data): When INTEGERS is non-nil and the last match was in
964 a buffer, add the buffer as last element to the match data.
965 (Fset_match_data): If an additional element of the match-data is a
966 buffer, restore it to last_thing_searched.
c8d09ad8 967 (save_search_regs): Save last_thing_searched as part of the match data.
559cdd07
DK
968 (restore_match_data): Restore it again.
969
dce417e7
LT
9702004-06-23 Luc Teirlinck <teirllm@auburn.edu>
971
972 * keymap.c (Ftext_char_description): Doc fix.
973 * doc.c (Fsnarf_documentation): Doc fix.
974
ef54b2d0
KS
9752004-06-22 Kim F. Storm <storm@cua.dk>
976
b5bc4d05
KS
977 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
978
ef54b2d0
KS
979 * lisp.h (struct Lisp_Save_Value): New member dogc.
980 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
981 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
982 (SAFE_FREE_LISP): New macro.
983
984 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
985 (make_save_value): Init new dogc member.
986 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
987
988 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
989 SAFE_FREE_LISP macros.
990
3d33d993
KS
9912004-06-22 Kim F. Storm <storm@cua.dk>
992
993 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
994 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
995 in that memory area are unknown to GC. Add comments.
996
997 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
998
5c917f98
KS
9992004-06-21 Kim F. Storm <storm@cua.dk>
1000
1001 * lisp.h (MAX_ALLOCA): Define here.
1002 (safe_alloca_unwind): Add prototype.
1003 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
1004
1005 * alloc.c (safe_alloca_unwind): New function.
1006
1007 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
1008
1009 * charset.c (Fstring): Use SAFE_ALLOCA.
1010
1011 * coding.c (MAX_ALLOCA): Remove define.
1012
1013 * data.c (MAX_ALLOCA): Remove define.
1014 (Faset): Use SAFE_ALLOCA.
1015
1016 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
1017
1018 * fns.c (string_make_multibyte, string_to_multibyte)
1019 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
1020 (MAX_ALLOCA): Remove define.
1021 (Fbase64_encode_region, Fbase64_encode_string)
1022 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
1023 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
1024 memory leak if encoding fails.
1025
1026 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
1027
9a09408e
EZ
10282004-06-21 Eli Zaretskii <eliz@gnu.org>
1029
1030 * print.c (Fwith_output_to_temp_buffer): Doc fix.
1031
376de739
RS
10322004-06-20 Richard M. Stallman <rms@gnu.org>
1033
1034 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
1035
1036 * search.c (match_limit): Cleaner err msg when no match data available.
1037
1038 * window.c (syms_of_window): Doc fix.
1039
1040 * keyboard.c (command_loop_1): Handle values `only' and `identity'
1041 for Vtransient_mark_mode.
1042
1043 * buffer.c (syms_of_buffer): Doc fix.
1044
acd81db9
DK
10452004-06-21 David Kastrup <dak@gnu.org>
1046
1047 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
1048 and unbinding of `case-fold-search' according to
1049 `completion-ignore-case' around calls of string-match and
1050 predicates, respectively. Should give satisfactory performance
1051 in all relevant cases.
1052
f303762d
JD
10532004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1054
95911c74
JD
1055 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
1056 clip_x/y_origin.
1057
a6cb6b78
JD
1058 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
1059
f303762d
JD
1060 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
1061
1062 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
1063 on Mac OSX.
1064
bbdb2684
LT
10652004-06-16 Luc Teirlinck <teirllm@auburn.edu>
1066
1067 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
1068
5ea48b1c
KS
10692004-06-16 Kim F. Storm <storm@cua.dk>
1070
1071 * dispextern.h (Vimage_types): Remove extern.
1072
803aac3e
MB
10732004-06-16 Miles Bader <miles@gnu.org>
1074
1075 * image.c (lookup_image_type): Initialize image type if necessary.
1076
cdc97764
KS
10772004-06-15 Kim F. Storm <storm@cua.dk>
1078
c4a5739c
KS
1079 * xdisp.c (try_cursor_movement): Exclude header line from scroll
1080 margin at top of window.
1081 (try_window_reusing_current_matrix): Calculate proper cursor position
1082 after scrolling up with non-zero scroll margin, as the old cursor
1083 position corresponds to value of PT before executing this command.
1084 (try_window_id): Consider scroll margin at bottom of window too;
1085 otherwise we fail to scroll when hl-line-mode is enabled.
1086
cdc97764
KS
1087 * syntax.c (skip_chars): Only recognize [:class:] when it has the
1088 proper format and class is a lower-case word.
1089
5b166323
JD
10902004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1091
1092 * gtkutil.c (xg_get_image_for_pixmap): New function.
c8d09ad8 1093 (xg_get_gdk_pixmap_and_mask): Remove.
5b166323
JD
1094 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
1095 xg_get_gdk_pixmap_and_mask.
cdc97764 1096
5b166323
JD
1097 * xterm.h (struct x_display_info): Typo in comment fixed.
1098
1ebd4f78
JB
10992004-06-14 Juanma Barranquero <lektu@terra.es>
1100
1101 * dispextern.h (Vimage_types): Make it conditional on
1102 HAVE_WINDOW_SYSTEM.
1103
1104 * image.c (Vimage_types): Move from xdisp.c.
1105 (Vimage_type_cache): New variable.
1106 (define_image_type): New argument indicating whether an image
1107 library was loaded; cache loaded status and return t on success,
1108 nil otherwise.
1109 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
1110 (w32_delayed_load): New function to load an image library from a
1111 list of possible filenames.
1112 (init_xpm_functions, init_png_functions, init_jpeg_functions)
1113 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
c8d09ad8 1114 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
1ebd4f78
JB
1115 (Finit_image_library): New function, extracted from `init_image'.
1116 Try to initialize an image library on demand and cache whether we
1117 were successful or not.
1118 (syms_of_image): Initialize `Vimage_types' and
1119 `Vimage_type_cache'. Add recognized image types to Vimage_types.
1120 Export `init-image-library'.
1121 (init_image): Remove initialization of all image types, except xbm
1122 and pbm.
1123
1124 * xdisp.c (Vimage_types): Delete (moved to image.c).
1125
904ee128
AS
11262004-06-14 Andreas Schwab <schwab@suse.de>
1127
1128 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
1129 Avoid calling specbind when completion-regexp-list is empty.
1130
092de21d
RS
11312004-06-13 Richard M. Stallman <rms@gnu.org>
1132
1133 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
1134 (re_wctype, re_iswctype, re_wctype_to_bit):
1135 Non-function definitions moved here from regex.c.
1ebd4f78 1136
092de21d
RS
1137 * regex.c (re_wctype, re_iswctype): Function defs longer static.
1138 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
1139 (re_wctype, re_iswctype, re_wctype_to_bit):
1140 Non-function definitions moved to regex.h.
1141
1142 * window.c (Fselect_window): Doc fix.
1143
1144 * syntax.c: Include regex.h.
1145 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
1146 If requested, make a list of classes, then check the scanned
1147 chars for membership in them.
1148 (in_classes): New function.
1149 Doc fix.
1150
1151 * keyboard.c (cmd_error): Don't call any_kboard_state
1152 if inside a recursive edit level.
1153
11542004-06-13 Lorentey K\e,Aa\e(Broly <lorentey@elte.hu>
1155
1156 * keyboard.c (command_loop): Call any_kboard_state before
1157 command_loop_2 when at top level.
1158
3ebc0939
AS
11592004-06-13 Andreas Schwab <schwab@suse.de>
1160
cea5d0d4
AS
1161 * print.c (print_object): Always use %ld for printing EMACS_INT.
1162
1163 * keyboard.c (cancel_hourglass_unwind): Return a value.
1164 (modify_event_symbol): Always use %ld for printing EMACS_INT.
1165 (Fexecute_extended_command): Likewise.
1166
1167 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
1168 avoid clashes.
1169 (SYNTAX): Likewise.
1170 (SYNTAX_WITH_FLAGS): Likewise.
1171 (SYNTAX_MATCH): Likewise.
1172
1173 * syntax.c (char_quoted): Avoid warning about undefined operation.
1174 (find_defun_start): Likewise.
1175 (scan_lists): Likewise.
1176 (INC_FROM): Likewise.
1177 (scan_sexps_forward): Likewise.
1178
be8c4ce4
AS
1179 * image.c: Include <ctype.h>.
1180
3ebc0939
AS
1181 * xfaces.c (face_attr_equal_p): Declare parameters.
1182
6fb41b5b
KH
11832004-06-13 Kenichi Handa <handa@m17n.org>
1184
1185 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
1186
fc3095ce
EZ
11872004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
1188
1189 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
1190
66189a40
KH
11912004-06-12 Kenichi Handa <handa@m17n.org>
1192
1193 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
1194 ccl_prog_stack_struct and update it.
1195 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
1196 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
1197 ccl->eof_ic on EOF.
1198 (ccl_debug_hook): New function.
1199 (struct ccl_prog_stack): New member eof_ic.
1200 (ccl_driver): Handle EOF in subrountine call correctly.
1201
12022004-06-11 Kenichi Handa <handa@m17n.org>
1203
1204 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
1205
1da71023
KS
12062004-06-11 Kim F. Storm <storm@cua.dk>
1207
1208 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
1209
e9efcef4
JB
12102004-06-11 Juanma Barranquero <lektu@terra.es>
1211
1212 * keyboard.c (Fposn_at_point): Doc fix.
1213
9b9ceb61
DK
12142004-06-11 David Kastrup <dak@gnu.org>
1215
1216 * search.c (match_limit): Don't flag an error if match-data
1217 exceeding the allocated search_regs.num_regs gets requested, just
1218 return Qnil.
1219
6e87ac8f
MB
12202004-06-08 Miles Bader <miles@gnu.org>
1221
1222 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
1223
0b0dea7b
JB
12242004-06-07 Juanma Barranquero <lektu@terra.es>
1225
1226 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
1227 (Fcurrent_time_string, Fcurrent_time_zone)
1228 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
1229
a0a23346
MB
12302004-06-07 Miles Bader <miles@gnu.org>
1231
08384afd 1232 * xfaces.c (struct named_merge_point): New type.
a0a23346
MB
1233 (push_named_merge_point): New function.
1234 (merge_named_face): New function.
1235 (merge_face_ref, face_at_buffer_position, face_at_string_position):
1236 Use `merge_named_face'.
1237 (merge_face_inheritance): Function removed.
c8d09ad8 1238 (merge_face_ref): Rename from `merge_face_vector_with_property'.
a0a23346
MB
1239 Add new `err_msgs' and `named_merge_points' args. Return error
1240 status. Only print error messages if ERR_MSGS is true. Don't try to
1241 do :inherit attribute validation.
1242 (merge_face_heights): Handle `unspecified' in both directions.
1243 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
1244 Call `merge_face_ref' instead of `merge_face_inheritance'.
1245 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
1246 (compute_char_face, face_at_buffer_position)
1247 (face_at_string_position): Call `merge_face_ref' instead of
1248 `merge_face_vector_with_property'.
1249
12d5b185
KH
12502004-06-07 Kenichi Handa <handa@m17n.org>
1251
1252 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
1253 the necessary places.
1254
2e2d7ee6
KS
12552004-06-07 Kim F. Storm <storm@cua.dk>
1256
1257 * process.c (Fdelete_process): Undo 2004-05-28 change.
1258 Instead, call status_notify also for network process.
1259 (status_message): Use process instead of status as arg.
1260 Give messages "deleted" or "connection broken by remote peer" for
1261 an exited network process.
1262 (status_notify): Change call to status_message.
1263 (read_process_output): Increase readmax to 4096. Do not increase
1264 buffer size for datagram channels (default is now large enough).
1265
fcf0d299
ST
12662004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
1267
1268 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
1269 problem due to newly defined variable.
1270
0722292b
MB
12712004-06-06 Miles Bader <miles@gnu.org>
1272
1273 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
1274 immediately if non-interactive or not initialized.
1275
ddfb8369
RS
12762004-06-05 Richard M. Stallman <rms@gnu.org>
1277
1278 * minibuf.c (Fcompleting_read): Doc fix.
1279
57015754
AS
12802004-06-05 Andreas Schwab <schwab@suse.de>
1281
1282 * macfns.c (x_create_tip_frame): Fix declaration after statement.
1283
23715ea6
JB
12842004-06-05 Juanma Barranquero <lektu@terra.es>
1285
1286 * keymap.c (Fdescribe_vector): Fix docstring.
1287 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
1288
8e330b22
MB
12892004-06-05 Miles Bader <miles@gnu.org>
1290
1291 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
1292 attributes have different values than the default face.
1293
9742a3a6
EZ
12942004-06-04 Eli Zaretskii <eliz@gnu.org>
1295
1296 * xfaces.c (x_supports_face_attributes_p): Make this function
1297 conditional on HAVE_WINDOW_SYSTEM.
c8d09ad8
SM
1298 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
1299 Don't call x_supports_face_attributes_p if it was not compiled in.
9742a3a6 1300
9717e36c
MB
13012004-06-04 Miles Bader <miles@gnu.org>
1302
1303 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
1304 from Ftty_supports_face_attributes_p.
1305 (x_supports_face_attributes_p): New function.
1306 (Ftty_supports_face_attributes_p): Function deleted.
1307 (Fdisplay_supports_face_attributes_p): New function.
1308 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
f9711de4 1309 (face_attr_equal_p): New function.
9717e36c
MB
1310 (lface_equal_p): Use it.
1311
52deb19f
JB
13122004-06-03 Juanma Barranquero <lektu@terra.es>
1313
1314 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
1315 (Vw32_color_map): Fix typo in docstring.
1316 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
1317 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
1318 Make argument names match their use in docstring.
1319
86d373e6
JB
13202004-06-02 Juanma Barranquero <lektu@terra.es>
1321
1322 Work around bugs/problems with MinGW builds of graphics libraries
1323 called from MSVC builds of Emacs.
1324
1325 * image.c (lookup_image): Make pointer to img static.
1326 (png_read_from_memory): Disable "global" optimization.
1327
2fb0ce67
SM
13282004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
1329
c8d09ad8
SM
1330 * eval.c (Fcondition_case): Fix usage. Simplify.
1331
2fb0ce67
SM
1332 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
1333
50bf7673
ST
13342004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1335
1336 * macfns.c: Don't include ccl.h.
1337 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
86d373e6
JB
1338 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
1339 TextUtils.h.
c8d09ad8 1340 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
50bf7673
ST
1341 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
1342 display height/width.
1343 (compute_tip_xy, Vx_max_tooltip_size): Declare.
1344 (unwind_create_tip_frame, compute_tip_xy): New functions.
1345 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
1346 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
1347 and last_show_tip_args.
2fb0ce67 1348
50bf7673
ST
1349 * macgui.h [!MAC_OSX]: Include Gestalt.h.
1350 (Cursor, No_Cursor): New defines.
c8d09ad8 1351 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
50bf7673
ST
1352 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
1353
1354 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
1355
1356 * macterm.c: Don't include Gestalt.h.
1357 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
1358 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
1359 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
1360 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
1361 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
1362 (construct_mouse_click, XTmouse_position)
1363 (x_scroll_bar_report_motion, x_calc_absolute_position)
1364 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
1365 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
1366 (note_mouse_movement): Clear the mouse face and reset the pointer
1367 shape when the pointer goes outside the frame without grabbing.
1368 (mac_front_window): New function.
1369 (mac_window_to_frame): New macro.
1370 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
1371 (do_window_activate, do_window_deactivate, do_app_resume)
1372 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
1373 (do_zoom_window, mac_do_receive_drag, XTread_socket)
1374 (mac_check_for_quit_char): Use mac_front_window and/or
1375 mac_window_to_frame.
1376 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
1377 scroll-bar click event.
1378 (mac_define_frame_cursor): Change the pointer shape.
c8d09ad8 1379 (x_free_frame_resources): Reset tip_window to NULL when it is disposed.
50bf7673 1380 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
c8d09ad8 1381 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
50bf7673
ST
1382 (do_window_update): Don't do anything if the updated window is the
1383 tooltip window.
1384 (do_mouse_moved): Handle mouse movement events here (previously in
1385 XTread_socket). Clear the mouse face if
1386 dpyinfo->mouse_face_hidden is set.
1387 (do_os_event, do_events): Remove (now in XTread_socket).
1388 (XTread_socket): Immediately return if interrupt_input_blocked.
c8d09ad8
SM
1389 Loop until all the events in the queue are processed.
1390 Rearrange codes for mouse grabbing. Add tooltip support. Include the
50bf7673
ST
1391 contents of do_os_event and do_events. Remove mouse movement
1392 handling (now in do_mouse_moved). Add the case where
1393 Vmouse_highlight has an integer value.
1394 (NewMacWindow): Remove.
1395 (make_mac_frame): Do what NewMacWindow previously did. Don't do
1396 excess initializations.
1397 (make_mac_terminal_frame): Previous initializations in
1398 make_mac_frame are moved here.
c8d09ad8
SM
1399 (mac_initialize_display_info):
1400 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
50bf7673
ST
1401
1402 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
1403 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
1404
08fd1251
RS
14052004-05-29 Richard M. Stallman <rms@gnu.org>
1406
1407 * lisp.h (truncate_undo_list): Update decl.
1408
1409 * alloc.c (undo_outer_limit): New variable.
1410 (syms_of_alloc): Defvar it.
1411 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
1412
1413 * undo.c (truncate_undo_list): New arg LIMITSIZE.
1414
1415 * alloc.c (lisp_align_malloc): Check for base == 0
1416 regardless of HAVE_POSIX_MEMALIGN.
1417 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
1418
227ef0ff
SM
14192004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
1420
1421 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
1422 (marker_blocks_pending_free): Remove.
1423 (Fgarbage_collect): Sweep after cleaning up undo-lists.
1424 Mark the undo lists after claning them up.
1425 Don't free block in marker_blocks_pending_free.
1426 (mark_buffer): Don't mark undo_list.
1427 (gc_sweep): Sweep hash-tables and strings first.
1428 Do free marker blocks that are empty.
1429
034a6113
SM
14302004-05-28 Jim Blandy <jimb@redhat.com>
1431
1432 * regex.c (print_partial_compiled_pattern): Add missing 'break'
1433 after 'case wordend'. For symbeg and symend, print to stderr,
1434 like the other cases.
1435
33594a8d
NF
14362004-05-28 Noah Friedman <friedman@splode.com>
1437
1438 * process.c (Fdelete_process): Do not call remove_process.
1439
ce50a847
SM
14402004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
1441
1442 * alloc.c (struct backtrace): Remove.
1443 (Fgarbage_collect): Use the new mark_backtrace.
1444
1445 * eval.c (mark_backtrace): New function.
1446
1447 * minibuf.c (run_exit_minibuf_hook): New function.
1448 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
1449 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
1450
1e8dae36
KS
14512004-05-27 Kim F. Storm <storm@cua.dk>
1452
1453 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
1454 over display properties, e.g. images, that replace buffer text.
1455
846faa3b
KS
14562004-05-25 Kim F. Storm <storm@cua.dk>
1457
1458 * alloc.c (marker_blocks_pending_free): New var.
1459 (gc_sweep): Store free marker blocks on that list.
1460 (Fgarbage_collect): Free them after undo-list cleanup.
1461
1462 * process.c (wait_reading_process_input): Check connect_wait_mask
1463 before actually accepting connection in case it has already been
1464 accepted due to recursion.
1465
6239a668
KH
14662004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu> (tiny change)
1467
ce50a847
SM
1468 * coding.c (Fset_safe_terminal_coding_system_internal):
1469 Set suppress_error in safe_terminal_coding, not terminal_coding.
6239a668 1470
71d5a208
RS
14712004-05-22 Richard M. Stallman <rms@gnu.org>
1472
1473 * alloc.c (Fmake_string): Doc fix.
1474
1475 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
1476 and the alist pairs too.
1477
1478 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
1479
1480 * emacs.c (main): Update copyright year.
1481
1482 * fileio.c (Fread_file_name): Expand DIR if not absolute.
1483
1484 * insdel.c (del_range_2, replace_range): Don't write an anchor
1485 if the gap is empty.
1486
1487 * xdisp.c (try_scrolling): If scroll-up-aggressively or
1488 scroll-down-aggressively is small but positive, put point
1489 near the screen edge.
1490
f63fd14e
JB
14912004-05-22 Juanma Barranquero <lektu@terra.es>
1492
1493 * keymap.c (Fdefine_key): Doc fix.
1494
4d12067c
KS
14952004-05-22 Kim F. Storm <storm@cua.dk>
1496
1497 * alloc.c (struct backtrace): Add debug_on_exit member.
1498 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
1499 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
1500 the removed cons cells.
1501 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
1502 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
1503 any cons cells pointing to unallocated stings.
1504 Do not lisp_free any marker blocks, as there may still be pointers
1505 to them from buffer undo lists at this stage of GC.
1506
1507 * keyboard.c (struct backtrace): Add debug_on_exit member.
1508 (Fcommand_execute): Clear it.
1509
931285e2
LT
15102004-05-20 Luc Teirlinck <teirllm@auburn.edu>
1511
1512 * intervals.c (lookup_char_property): Do not prematurely return nil.
1513
669fa600
SM
15142004-05-19 Jim Blandy <jimb@redhat.com>
1515
1516 Add support for new '\_<' and '\_>' regexp operators, matching the
f63fd14e 1517 beginning and end of symbols.
4d12067c 1518
669fa600
SM
1519 * regex.c (enum syntaxcode): Add Ssymbol.
1520 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
1521 (re_opcode_t): New opcodes `symbeg' and `symend'.
1522 (print_partial_compiled_pattern): Print the new opcodes properly.
1523 (regex_compile): Parse the new operators.
ce50a847 1524 (analyse_first): Skip sym(beg|end) (they match only the empty string).
669fa600
SM
1525 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
1526 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
1527 (re_match_2_internal): Match symbeg and symend.
1528
1529 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
1530
0d8c2e5c
KS
15312004-05-19 Kim F. Storm <storm@cua.dk>
1532
1533 * .gdbinit (xsymbol): Fix last change.
1534
669fa600
SM
15352004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
1536
1537 * .gdbinit (xprintstr): New fun.
1538 (xstring, xprintsym): Use it.
1539
1540 * w32proc.c (create_child): Use INTMASK.
1541
1542 * alloc.c (Fgarbage_collect): Do all the marking before flushing
1543 unmarked elements of the undo list.
1544
9a6a4c40
DP
15452004-05-18 David Ponce <david@dponce.com>
1546
1547 * print.c (print): Reset print_depth before to call print_object.
1548
f3c4ec74
JR
15492004-05-18 Jason Rumney <jasonr@gnu.org>
1550
1551 * w32console.c: Prefix RIF functions with w32con_ to avoid
1552 namespace clash with functions in term.c and w32term.c.
1553
1554 * w32menu.c (add_menu_item, w32_menu_display_help)
1555 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
1556
0d8c2e5c 1557 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
f3c4ec74 1558
6be49c3a
EZ
15592004-05-18 Eli Zaretskii <eliz@gnu.org>
1560
4d0b9a0a
EZ
1561 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
1562
6be49c3a
EZ
1563 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
1564 with make_number.
1565 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
1566 with XINT.
1567
0bc90bba
KS
15682004-05-18 Kim F. Storm <storm@cua.dk>
1569
89d19988
KS
1570 * blockinput.h (INPUT_BLOCKED_P): New macros.
1571
1572 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
1573 (Ftop_level): Unblock input if blocked.
1574
0bc90bba
KS
1575 * buffer.h (GET_OVERLAYS_AT): New macro.
1576 * msdos.c (IT_note_mouse_highlight): Use it.
1577 * textprop.c (get_char_property_and_overlay): Use it.
1578 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
1579 * xfaces.c (face_at_buffer_position): Use it.
1580
1581 * print.c (print_object): Increase buf size.
1582
653bd0f6
JR
15832004-05-17 Jason Rumney <jasonr@gnu.org>
1584
1585 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
1586 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
1587 Lisp_Object using i member.
1588 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
1589 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
1590 consistently.
1591
1592 * w32proc.c (create_child): Use make_number instead of masking pid.
1593
1594 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
1595 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
1596 Use EQ to compare Lisp_Objects.
1597 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
1598
1599 * w32term.c (w32_num_mouse_buttons): Rename from
1600 Vw32_num_mouse_buttons and make it an int.
1601
1602 * w32.c (init_environment): Use it.
1603
1604 * w32fns.c (w32_wnd_proc): Likewise.
1605
1606 * w32proc.c (w32_pipe_read_delay): Rename from
1607 Vw32_pipe_read_delay and make it an int.
1608
1609 * w32.c (_sys_read_ahead): Use it.
1610
1611 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
1612
1613 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
1614
1615 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
1616 (key_event): Don't mix Lisp_Object and int.
1617
1618 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
1619
1620 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
1621 modifiers in language change event.
1622
54b53ba7
KS
16232004-05-17 Kim F. Storm <storm@cua.dk>
1624
1625 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
1626 Such objects may be freed markers which still exist on an undo list.
1627
6e86a75d
JB
16282004-05-16 Juanma Barranquero <lektu@terra.es>
1629
1630 * data.c (Fset_default): Make argument names match their use in
1631 docstring.
1632
fc80da24
AS
16332004-05-15 Andreas Schwab <schwab@suse.de>
1634
1635 * emacs.c (gdb_array_mark_flag): Define.
1636 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
1637
c1380aa6
EZ
16382004-05-15 Eli Zaretskii <eliz@gnu.org>
1639
1640 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
1641 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
1642 defined for the MS-DOS build.
1643
89458937
SM
16442004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
1645
1646 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
1647
08020f9a
KH
16482004-05-14 Kenichi Handa <handa@m17n.org>
1649
1650 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
1651
a433994a
ST
16522004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1653
1654 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
1655 section to frame.c section.
1656 (Fxw_display_color_p, Fx_file_dialog): Declare if
89458937 1657 HAVE_WINDOW_SYSTEM defined.
0d8c2e5c 1658
a433994a 1659 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
0d8c2e5c 1660
a433994a 1661 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
0d8c2e5c 1662
a433994a
ST
1663 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
1664 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
1665 (XTread_socket): Fix int/Lisp_Object mixup.
1666 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
0d8c2e5c 1667
a433994a
ST
1668 * macterm.h (struct frame, struct face, struct image)
1669 (display_x_get_resource, Fx_display_color_p)
89458937
SM
1670 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
1671 Add prototypes.
a433994a 1672
b51a51b9
KS
16732004-05-14 Kim F. Storm <storm@cua.dk>
1674
1675 * process.c (wait_reading_process_input): Make reentrant.
1676 Make Available and Connecting non-static. Save and restore value
1677 of waiting_for_user_input_p.
1678
2bde1dd8
KS
16792004-05-13 Kim F. Storm <storm@cua.dk>
1680
1681 * keyboard.c (mark_kboards): Don't mark x and y members
1682 that are overloaded in selection request events.
1683
a267ab4d
SM
16842004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
1685
1686 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
1687
eb15ce9e
GM
16882004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
1689
1690 * window.c (Fdisplay_buffer, Fsplit_window)
1691 (split-height-threshold): Doc fix.
1692
7fc92635
JB
16932004-05-13 Juanma Barranquero <lektu@terra.es>
1694
1695 * xfaces.c (Ftty_supports_face_attributes_p)
1696 (Finternal_copy_lisp_face): Fix typo in docstring.
1697 (Finternal_get_lisp_face_attribute): Fix docstring.
1698
1ec2a572
JD
16992004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1700
1701 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
1702
ae9292e0
ST
17032004-05-11 Steven Tamm <steventamm@mac.com>
1704
1705 * macfns.c (Fx_create_frame): Default to using tool-bar by
1706 setting tool-bar-lines to 1 in default-frame-alist.
1707
17082004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ea1aaa6f
ST
1709
1710 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
1711 (xpm_get_color_table_v, xpm_make_color_table_h)
1712 (xpm_put_color_table_h, xpm_get_color_table_h)
1713 (xpm_str_to_color_key, xpm_load_image, xpm_load)
1714 (syms_of_image): Support XPM on Carbon Emacs. Does not
a267ab4d 1715 depend on libXpm, but only supports XPM version 3 without extensions.
ea1aaa6f 1716
fe97e8df
ST
17172004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1718
a267ab4d 1719 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
fe97e8df
ST
1720 instead of FRAME_X_P
1721
b47e779e
KS
17222004-05-11 Kim F. Storm <storm@cua.dk>
1723
1724 * process.c (read_process_output): Grow decoding_buf when needed;
1725 this could cause a crash in allocate_string and compact_small_strings.
1726
cdc9b845
EZ
17272004-04-29 Jim Blandy <jimb@redhat.com>
1728
1729 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
1730 against proper opcode.
1731
aa7094ba
JB
17322004-05-10 Juanma Barranquero <lektu@terra.es>
1733
1734 * process.c (Fstart_process): Fix docstring.
1735
1736 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
1737 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
1738 (Fsplit_char, Fchar_charset): Make argument names match their use
1739 in docstring.
1740
e109331a
RS
17412004-05-10 Richard M. Stallman <rms@gnu.org>
1742
1743 * print.c (print_preprocess): Use being_printed, loop_count and
1744 halftail to detect overdeep nesting and cyclic cdr chains.
1745
9a28b921
AS
17462004-05-10 Andreas Schwab <schwab@suse.de>
1747
1748 * lisp.h: Declare Fmake_symbolic_link.
1749
1750 * fileio.c (Frename_file): Remove extra argument in call to
1751 Fmake_symbolic_link.
1752
e2c02c1a
KS
17532004-05-10 Kim F. Storm <storm@cua.dk>
1754
1755 * xdisp.c (calc_line_height_property): Use string position when
1756 object is a string.
1757
cfe9d13e
KH
17582004-05-10 Kenichi Handa <handa@m17n.org>
1759
a57e8159
KH
1760 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
1761 inhibit-modification-hooks to t temporarily before calling
1762 Ferase_buffer.
1763
1764 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
1765 inhibit-modification-hooks to t temporarily before calling
1766 Ferase_buffer.
1767
1768 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
1769 inhibit-modification-hooks to t temporarily before calling
1770 Ferase_buffer.
1771
cfe9d13e
KH
1772 * fns.c (count_combining): Delete it.
1773 (concat): Don't check combining bytes.
1774
ceb96489
JR
17752004-05-09 Jason Rumney <jasonr@gnu.org>
1776
1777 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
1778 (globals_of_w32fns): Set it.
1779
b1c661c7
JB
17802004-05-09 Piet van Oostrum <piet@cs.uu.nl> (tiny change)
1781
1782 * data.c (Fquo): Simplify.
1783
28712a21
JB
17842004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
1785
1786 * data.c (Fquo): If any argument is float, do the computation in
1787 floating point.
1788
0f0af7a8
JB
17892004-05-08 Juanma Barranquero <lektu@terra.es>
1790
88214ef6
JB
1791 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
1792 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
1793 Fix spelling of Emacs on docstring.
1794 (Fset_process_coding_system, Fprocess_coding_system)
1795 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
1796 Make argument names match their use in docstring.
1797 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
1798 Fix docstring.
1799
0f0af7a8
JB
1800 * editfns.c (Finsert_buffer_substring): Make argument names match their
1801 use in docstring.
1802
1803 * syntax.c (Fmodify_syntax_entry): Fix docstring.
1804
2a316a84
ST
18052004-05-07 Steven Tamm <steventamm@mac.com>
1806
1807 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
1808 around call to ReceiveEvent to avoid certain crashes.
1809
18102004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
0d8c2e5c 1811
2a316a84
ST
1812 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
1813 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
1814 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
1815 Save/restore the current graphics port and device handle when
1816 drawing into an offscreen graphics world.
1817
1818 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
1819 (gif_load): Likewise.
1820
ab80314b
JB
18212004-05-07 Juanma Barranquero <lektu@terra.es>
1822
1823 * window.c (Fset_window_buffer): Fix docstring.
1824
70646bb5
TTN
18252004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
1826
1827 * emacs.c (main) [VMS]: Fix var ref.
1828
b03a4fdd
JB
18292004-05-06 Romain Francoise <romain@orebokech.com> (tiny change)
1830
1831 * data.c (Fsetq_default): Fix docstring.
1832
279d3293
JR
18332004-05-06 Jason Rumney <jasonr@gnu.org>
1834
1835 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
1836 to avoid name clash.
1837
f72b5416
JD
18382004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1839
1840 * fileio.c (barf_or_query_if_file_exists): Use lstat.
1841 (Frename_file): Handle renaming of symlinks across file systems.
440c7d00 1842 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
f72b5416 1843
6ab66799
KS
18442004-05-04 Kim F. Storm <storm@cua.dk>
1845
1846 * xdisp.c (Qtotal): New var.
1847 (syms_of_xdisp): Intern and staticpro it.
1848 (calc_line_height_property): New arg total. Set it if
1849 line-spacing property has format (total . VALUE).
1850 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
1851 Handle total line-spacing property.
1852
ab2d724b
JD
18532004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1854
1855 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
1856 "under" scroll bar when size/position changes.
1857
238add5e
JR
18582004-05-03 Jason Rumney <jasonr@gnu.org>
1859
1860 * makefile.nt: Remove.
1861
1644f4e4
EZ
18622004-05-02 Eli Zaretskii <eliz@gnu.org>
1863
a267ab4d
SM
1864 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
1865 Avoid compiler warnings.
05fdbeb8 1866
1644f4e4
EZ
1867 * Makefile.in (region-cache.o): Depend on config.h.
1868
6cbc951e
SM
18692004-05-02 Romain Francoise <romain@orebokech.com> (tiny change)
1870
1871 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
1872 with continuation lines, too.
1873
2b98b088
TTN
18742004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
1875
1876 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
1877
d9bf7950
SM
18782004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
1879
1880 * xdisp.c (calc_line_height_property): YAILOM (yet another
1881 int/Lisp_Object mixup).
1882
affa509c
EZ
18832004-05-01 Eli Zaretskii <eliz@gnu.org>
1884
1885 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
1886 undo bad effect of pack(4) in some versions of system headers.
1887
07c07cfe
JR
18882004-05-01 Jason Rumney <jasonr@gnu.org>
1889
1890 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
1891
e71caa4e
KS
18922004-04-30 Kim F. Storm <storm@cua.dk>
1893
1894 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
b2b55d03 1895 (syms_of_buffer) <cursor-type>: Doc fix.
e71caa4e
KS
1896
1897 * dispextern.h (struct it): Remove member use_default_face.
1898 Add members override_ascent, override_descent, override_boff.
1899
1900 * xdisp.c (init_iterator): Handle line-spacing float value.
1901 Initialize override_ascent member.
1902 (append_space_for_newline): Reset override_ascent.
1903 Remove use_default_face.
1904 (calc_line_height_property): New function to calculate value of
1905 line-height and line-spacing properties. Look at overlays, too.
1906 Set override_ascent, override_descent, override_boff members when
1907 using another face than the current face. Float values are now
1908 relative to the frame default font, by default; accept a cons
1909 of ratio and face name to specify value relative to a specific face.
1910 (x_produce_glyphs): Use calc_line_height_property.
1911 Use override_ascent etc. when set to handle different face heights.
1912 A negative line-spacing property value is interpreted as a total
1913 line height, rather than inter-line spacing.
1914 (note_mouse_highlight): Allocate room for 40 overlays initially.
1915
0fddae66
SM
19162004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
1917
1918 * data.c (Fsubr_name): New fun.
1919 (syms_of_data): Defsubr it.
1920
712d23dc
KS
19212004-04-29 Kim F. Storm <storm@cua.dk>
1922
1923 * xdisp.c (null_glyph_slice): New var.
1924 (append_glyph, append_composite_glyph, append_stretch_glyph):
1925 Use it to initialize glyph slice.
1926
033ad8c6
SM
19272004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
1928
1929 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
1930 (on_hot_spot_p): Make sure we always return a value.
1931 (Flookup_image_map): Remove unused var ix and iy.
1932 (note_mode_line_or_margin_highlight): Remove unused var `image'.
1933
93397360
EZ
19342004-04-27 Eli Zaretskii <eliz@gnu.org>
1935
1936 * msdos.c (init_environment): If one of the TMP... environment
1937 variables is set to a drive letter without a trailing slash,
1938 append a slash.
1939
0c54865e
EZ
19402004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
1941
1942 * editfns.c (lisp_time_argument): Provide externally.
1943
1944 * fileio.c (Fset_file_times): New function.
1945 (syms_of_fileio): Intern and staticpro it.
1946
d3b111bd
KS
19472004-04-27 Kim F. Storm <storm@cua.dk>
1948
07dc1231
KS
1949 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
1950 header line strings.
1951
360fe9d2
KS
1952 * dispextern.h (struct it): New member use_default_face.
1953
d3b111bd
KS
1954 * xdisp.c (Qline_height): New variable.
1955 (syms_of_xdisp): Intern and staticpro it.
1956 (append_space_for_newline): Partially undo 2004-04-25 change;
1957 add default_face_p arg, and restore callers.
1958 Clear it->use_default_face after use.
1959 (x_produce_glyphs): Set default font for ascii char if
1960 it->use_default_font is set. Change line-spacing property to set
1961 just extra line spacing. Handle new line-height property.
1962
0448588b
AS
19632004-04-26 Andreas Schwab <schwab@suse.de>
1964
1965 * print.c (print_object): Print non-ascii characters in bool
1966 vector representation as octal escapes.
1967
1968 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
1969 * print.c (print_object): Use it instead of BITS_PER_CHAR for
1970 bool vectors.
1971 * lread.c (read1): Likewise.
1972 * alloc.c (Fmake_bool_vector): Likewise.
1973 * data.c (Faref, Faset): Likewise.
1974 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
1975 (mapcar1): Likewise.
d3b111bd 1976
536d6baa
ST
19772004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
1978
1979 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
1980
ae11577a
MB
19812004-04-26 Miles Bader <miles@gnu.org>
1982
1983 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
1984
e198ba87
JB
19852004-04-26 Juanma Barranquero <lektu@terra.es>
1986
1987 * buffer.c (Fpop_to_buffer): Fix docstring.
1988
f3d5f92d 19892004-04-26 Steven Tamm <steventamm@mac.com>
e198ba87 1990
f3d5f92d
ST
1991 * lread.c (init_lread): Don't display missing lisp directory
1992 warnings with Carbon Emacs because self-contained bundled Emacs
e198ba87 1993 may be built without correct installation path.
f3d5f92d 1994
03e35edc
KS
19952004-04-25 Kim F. Storm <storm@cua.dk>
1996
9ff3aa31
KS
1997 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
1998
1999 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
2000
03e35edc
KS
2001 * xdisp.c (append_space_for_newline): Rename from append_space.
2002 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
2003 (x_produce_glyphs): Handle line-spacing property on newline char.
2004 If value is t, adjust ascent and descent to fit current row height.
2005 If value is an integer or float, set extra_line_spacing to integer
2006 value, or to float value x current line height.
2007
f24814e0
KH
20082004-04-23 Kenichi Handa <handa@m17n.org>
2009
2010 * fontset.c (Finternal_char_font): If POSITION is nil, return
2011 font for displaying CH with the default face.
2012
d814862a
JB
20132004-04-23 Juanma Barranquero <lektu@terra.es>
2014
2015 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
2016
063a45c5
SM
20172004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
2018
2019 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
2020 Don't make assumptions about the relative place of i and val.
2021 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
2022
ae7ab2d3
KS
20232004-04-21 Kim F. Storm <storm@cua.dk>
2024
2025 * dispextern.h (struct glyph_slice): New struct.
2026 (struct glyph): New member slice.
2027 (GLYPH_SLICE_EQUAL_P): New macro.
2028 (GLYPH_EQUAL_P): Use it.
2029 (struct glyph_string): New member slice.
2030 (struct it_slice): New struct.
2031 (struct it): New member slice, add member to stack too.
2032 New member constrain_row_ascent_descent_p.
2033 (image_ascent): Add prototype.
2034
2035 * dispnew.c (buffer_posn_from_coords): Return full image width
2036 and height even for image slices (posn is relative to full image).
2037 (marginal_area_string): Adjust x0,y0 for image slice.
2038
2039 * image.c (image_ascent): Add slice arg; calculate ascent for
2040 image slice (or full image).
2041
2042 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
2043 (syms_of_keyboard): Defsubr them.
2044
2045 * lisp.h (pos_visible_p): Fix prototype.
2046
c62aec78 2047 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
ae7ab2d3
KS
2048 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2049 (x_draw_image_foreground, x_draw_image_relief)
2050 (x_draw_image_foreground_1, x_draw_image_glyph_string):
2051 Draw sliced images.
2052
2053 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
2054 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2055 (x_draw_image_foreground, x_draw_image_relief)
2056 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
2057 Draw sliced images.
2058
2059 * w32term.h (image_ascent): Remove prototype.
2060
2061 * window.c (Fpos_visible_in_window_p): Return pixel position if
2062 PARTIALLY arg is non-nil. Simplify. Doc fix.
2063 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
2064 to return/set vscroll in pixels.
2065
2066 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
2067
2068 * xdisp.c (Qslice): New variable.
2069 (syms_of_xdisp): Intern and staticpro it.
2070 (pos_visible_p): Return pixel position in new x and y args.
2071 (init_iterator): Reset it->slice info.
2072 (handle_display_prop): Parse (slice ...) property.
2073 (push_it, pop_it): Save/restore slice info.
2074 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
2075 force repositioning of tall row if window is vscrolled, as that
2076 would reset vscroll.
2077 (append_space): Set it->constrain_row_ascent_descent_p to avoid
2078 increasing row height if row is non-empty.
2079 (fill_image_glyph_string): Copy slice info.
2080 (take_vertical_position_into_account): Simplify.
2081 (produce_image_glyph): Handle iterator slice info, setup glyph
2082 slice info. Do not force minimum line height.
2083 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
2084 do not increase height (ascent/descent) of non-empty row when
2085 adding normal character glyph; instead reduce glyph ascent/descent
2086 appropriately; if row is higher than current glyph, adjust glyph
2087 descent/ascent to reposition glyph within the existing row.
2088 Likewise, when char is newline, only set ascent/descent if row is
2089 currently empty.
2090 (note_mouse_highlight): Handle hotspots with sliced image.
2091
2092 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
2093 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2094 (x_draw_image_foreground, x_draw_image_relief)
2095 (x_draw_image_foreground_1, x_draw_image_glyph_string):
2096 Draw sliced images.
2097
2098 * xterm.h (image_ascent): Remove prototype.
2099
d58f8753
SM
21002004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
2101
2102 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
2103
4ce2719d
JPW
21042004-04-20 John Paul Wallington <jpw@gnu.org>
2105
2106 * fns.c (Fassoc, Feql): Fix indentation.
2107
d58f8753 2108 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
4ce2719d 2109
95f8c3b9
JPW
21102004-04-19 John Paul Wallington <jpw@gnu.org>
2111
2112 * fns.c (Feql): New function.
d58f8753 2113 (syms_of_fns): Defsubr it.
95f8c3b9 2114
b7e85537
JR
21152004-04-18 Jason Rumney <jasonr@gnu.org>
2116
2117 * w32select.c (Fw32_set_clipboard_data): Get sequence number
2118 after closing the clipboard.
2119
5a72efd4
LT
21202004-04-16 Luc Teirlinck <teirllm@auburn.edu>
2121
2122 * buffer.c (Fbuffer_base_buffer): Doc fix.
2123
20dc8583
KS
21242004-04-17 Kim F. Storm <storm@cua.dk>
2125
60962ec4
KS
2126 * keymap.c (Fkey_description): Add optional PREFIX arg.
2127 Combine prefix with KEYS to make up the full key sequence to describe.
2128 Correlate meta_prefix_char and following (simple) key to describe
2129 as meta modifier. All callers changed.
2130 (describe_map): Rename arg `keys' to `prefix'. Remove local
2131 `elt_prefix' var. Use Fkey_description with prefix instead of
2132 elt_prefix combined with Fsingle_key_description.
2133 (describe_vector): Declare static. Replace arg `elt_prefix' with
2134 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
2135 if !KEYMAP_P. Use Fkey_description with prefix instead of
2136 Fsingle_key_description.
2137
2138 * keymap.h (Fkey_description): Fix prototype.
2139 (describe_vector): Remove prototype.
2140
409368b9
KS
2141 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
2142
20dc8583
KS
2143 * image.c (PNG_BG_COLOR_SHIFT): Remove.
2144 (png_load): Fix calculation of transparent background color on X
2145 and W32 platforms.
2146
75c5501b
JB
21472004-04-16 Juanma Barranquero <lektu@terra.es>
2148
2149 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
2150 not too large before computing how much to scroll.
2151
da879ae8
SM
21522004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
2153
2154 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
2155
d01ca4a8
LT
21562004-04-14 Luc Teirlinck <teirllm@auburn.edu>
2157
2158 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
2159 Add hyperlink to Elisp manual to the docstring.
2160
572943b3
SM
21612004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
2162
2163 * callint.c (fix_command): Use XDCR.
2164
5e30a0fb
NR
21652004-04-14 Nick Roberts <nick@nick.uklinux.net>
2166
2167 * window.c (Fget_lru_window): Doc fix.
2168
a27ddfaf
KS
21692004-04-14 Kim F. Storm <storm@cua.dk>
2170
2171 * editfns.c (Fformat): Fix allocation size of precision array.
2172
2173 * dispnew.c (update_window): Only set changed_p if
2174 scrolling_window actually did scroll.
2175 (scrolling_window): Only return 1 if we actually did scroll.
2176
2177 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
2178 height to glyph height when cursor row is not fully visible.
2179 (make_cursor_line_fully_visible): Add FORCE_P arg to return
2180 failure in case row is higher than window. Callers changed.
2181 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
2182 Try to scroll partially visible, higher-than-window cursor row.
2183 (redisplay_window): Always try to scroll partially visible,
2184 higher-than-window cursor row - both initially and again with
2185 centering_position = 0.
2186 Clear desired matrix before retrying with centering_position = 0.
2187
da879ae8
SM
21882004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
2189
2190 * syntax.c (scan_lists): Simplify backward string scan.
2191 Fix off-by-one boundary check for string and comment fences.
2192
5fc16e8e
SM
21932004-04-13 Joe Buehler <jbuehler@hekimian.com>
2194
2195 * sheap.c, unexcw.c: New files.
2196
c9aac8e6
LT
21972004-04-12 Luc Teirlinck <teirllm@auburn.edu>
2198
2199 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
2200 base buffer has been killed. Correct the error message if the
2201 base buffer does not exist.
2202
1e88a355
SM
22032004-04-12 Joe Buehler <jbuehler@hekimian.com>
2204
2205 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
2206 Cygwin itself. Add support for Xaw3d scrollbars.
2207
2208 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
2209
2210 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
2211
2212 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
2213 before Cygwin unexec.
2214
2215 * Makefile.in: Link changes for Cygwin unexec() support.
2216
8dbff9a0
AS
22172004-04-12 Andreas Schwab <schwab@suse.de>
2218
2219 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
2220
54dffe35
LT
22212004-04-11 Luc Teirlinck <teirllm@auburn.edu>
2222
2223 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
2224 IGNORE argument equals NAME. Doc fix.
2225
99a72bdf
MY
22262004-04-11 Masatake YAMATO <jet@gyve.org>
2227
1e88a355 2228 * buffer.c (fix_start_end_in_overlays): Make overlays
99a72bdf
MY
2229 empty if they are backwards.
2230
40899d7b
SM
22312004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
2232
2233 * xfaces.c (face_color_supported_p): Fix compilation without X11.
2234
f8f853de
SM
22352004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
2236
2237 * doc.c (Fsnarf_documentation): Ignore new file name entries.
2238
c953fe1b
KS
22392004-04-06 Kim F. Storm <storm@cua.dk>
2240
661e85c1
KS
2241 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
2242 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
2243
2244 * w32term.c (w32_read_socket): Set mouse_face_hidden after
2245 clearing highlight.
2246
2247 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
2248
2249 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
2250 clearing highlight.
2251
c953fe1b
KS
2252 * indent.c (vmotion): Do not reserve one column for continuation
2253 marks on window frames.
2254
c1994268
EZ
22552004-04-04 Eli Zaretskii <eliz@gnu.org>
2256
2257 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
2258 from GCC.
2259
9f691b0d
SM
22602004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
2261
2262 * .gdbinit-union: Remove.
2263
2264 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
2265 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
2266 ($nonvalbits): Remove.
2267 ($valmask): Set it by calling xreload to avoid redundancy.
2268
2269 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
2270 (gdb_emacs_intbits): Remove.
2271
7a8560d7
JD
22722004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2273
9f691b0d 2274 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
7a8560d7 2275
3c8111fc
KH
22762004-03-30 Kenichi Handa <handa@m17n.org>
2277
2278 * editfns.c (Fformat): Fix initialization of the array info.
2279
48a0bce4
KS
22802004-03-30 Kim F. Storm <storm@cua.dk>
2281
2282 * xterm.c (x_mouse_click_focus_ignore_position): New var.
2283 (syms_of_xterm): DEFVAR_BOOL it.
2284 (ignore_next_mouse_click_timeout): New var.
2285 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
2286 Use it to filter mouse clicks following focus event.
2287
1cd0066c
KS
22882004-03-29 David Ponce <david@dponce.com>
2289
2290 * callint.c (Fcall_interactively): Fix last change.
2291
adb3b353
SM
22922004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
2293
2294 * eval.c (Fcommandp): Simplify.
2295
2296 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
2297 Extend to handle all kinds of functions.
2298
2299 * lisp.h (Finteractive_form): Declare.
2300
2301 * callint.c (Fcall_interactively): Use it.
2302
6fc4c9c9
KS
23032004-03-26 Kim F. Storm <storm@cua.dk>
2304
2305 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
2306 to catch errors in calc_pixel_width_or_height during redisplay.
2307
abdb9b83
MY
23082004-03-26 Masatake YAMATO <jet@gyve.org>
2309
b17856dd 2310 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
abdb9b83 2311
b17856dd 2312 * lisp.h (fix_start_end_in_overlays): Likewise.
abdb9b83 2313
b17856dd 2314 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
abdb9b83 2315
b17856dd 2316 * editfns.c (Ftranspose_regions): Likewise.
abdb9b83 2317
e8a84b6c
JD
23182004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2319
b17856dd 2320 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
e8a84b6c 2321
36a3fd05
RS
23222004-03-19 Richard M. Stallman <rms@gnu.org>
2323
2324 * s/sol2-6.h: Delete previous change.
2325
ab24c127
KS
23262004-03-19 Kim F. Storm <storm@cua.dk>
2327
2328 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
2329 to_charpos corresponds to newline in right fringe. Use local
2330 BUFFER_POS_REACHED_P macro.
2331
992126de
JD
23322004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2333
2334 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
2335 to compile on non-window system.
2336
45dbfc84
KS
23372004-03-19 Kim F. Storm <storm@cua.dk>
2338
2339 * dispextern.h (calc_pixel_width_or_height): Add prototype.
2340
2341 * image.c (Qcenter): Move to xdisp.c.
2342
2343 * xdisp.c (Qcenter): Declare here.
adb3b353 2344 (syms_of_xdisp): Intern and staticpro it.
45dbfc84
KS
2345 (handle_single_display_prop): Allow space display property on all
2346 platforms.
2347 (display_mode_line): Set mode_line_p before displaying line.
2348 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
2349 handling. Remove complex cases for fringes and scroll-bars.
2350 Add left, right, and center alignment positions. Add text (area)
2351 width/height. Return width or height for image specs.
2352 (produce_stretch_glyph): Improve handling of :align-to. Is now
2353 relative to left of text area by default, but other base offsets
2354 can be specified -- also for text lines.
2355
2356 * term.c (produce_glyphs): Handle IT_STRETCH.
2357 (produce_stretch_glyph): New function to handle space width and
2358 align-to display properties on non-window systems.
2359
37264101
SM
23602004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
2361
2362 * fileio.c (Fread_file_name): Set completion-ignore-case for
2363 case-insensitive systems.
2364
73bc43da
MY
23652004-03-14 Masatake YAMATO <jet@gyve.org>
2366
2367 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
2368 when keymap and cursor are setup.
2369
9062aa89
ST
23702004-03-14 Steven Tamm <steventamm@mac.com>
2371
b17856dd 2372 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
9062aa89 2373
e4b1b5ab
KS
23742004-03-14 Kim F. Storm <storm@cua.dk>
2375
2376 * dispextern.h (x_find_image_file): Add prototype.
2377
2378 * image.c (x_find_image_file): Make extern.
2379
2380 * xfns.c (x_find_image_file): Remove prototype.
2381
a6eeaa81 23822004-03-13 Eli Zaretskii <eliz@gnu.org>
5109b06a 2383
37264101 2384 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
5109b06a 2385
37264101 2386 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
5109b06a 2387
e69cfac2
RS
23882004-03-12 Richard M. Stallman <rms@gnu.org>
2389
2390 * fns.c (internal_equal): New arg PROPS controls comparing
2391 text properties. All callers changed.
2392 (Fequal_including_properties): New function.
2393 (syms_of_fns): defsubr it.
2394
45034953
KS
23952004-03-12 Kim F. Storm <storm@cua.dk>
2396
2397 Fix image support on MAC. From YAMAMOTO Mitsuharu.
37264101 2398
45034953
KS
2399 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
2400 (image_background, image_background_transparent): Fix prototypes.
2401
37264101 2402 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
45034953
KS
2403
2404 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
2405 (x_query_font, x_find_ccl_program, x_set_window_size)
2406 (x_make_frame_visible, mac_initialize, XCreatePixmap)
2407 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
2408 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
2409
2410 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
2411 (x_query_font, x_find_ccl_program, x_set_window_size)
2412 (x_make_frame_visible, mac_initialize, XCreatePixmap)
2413 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
2414 (mac_draw_line_to_pixmap): Add prototypes.
2415
24162004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2417
2418 * macterm.c (XTread_socket): Fix mouse click on tool bar.
2419
a12d3d87
KS
24202004-03-11 Kim F. Storm <storm@cua.dk>
2421
d3ab1cf1
KS
2422 * dispextern.h: Move image related prototypes from xfns.c section
2423 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
2424 HAVE_X_WINDOWS.
37264101 2425
37de9f51 2426 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
37264101 2427 Move gtkutil.o to new GTK_OBJ list.
a12d3d87
KS
2428 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
2429 (GTK_OBJ) [USE_GTK]: New declaration.
2430 (obj): Add $(GTK_OBJ) to list.
2431
5243c06a 24322004-03-11 Steven Tamm <steventamm@mac.com>
5109b06a 2433
5243c06a
ST
2434 * image.c [MAC_OSX]: Include sys/stat.h
2435
2436 * macfns.c (syms_of_macfns): Remove definitions of things now
2437 defined in image.c
2438
c0f97789
KS
24392004-03-11 Kim F. Storm <storm@cua.dk>
2440
2441 The following changes consolidates the identical/similar image
2442 support code previously found in xfns.c, w32fns.c, and macfns.c
2443 into a new file image.c.
2444
2445 * makefile.w32-in (OBJ1): Add image.o.
2446 ($(BLD)/image.$(O)): Add dependencies.
2447
2448 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
2449 (image.o): Add dependencies.
37264101 2450
c0f97789
KS
2451 * image.c: New file with consolidated image support code.
2452 (COLOR_TABLE_SUPPORT): New define to control whether
2453 color table support is available (X only).
2454 (Bitmap_Record): Common name for x_bitmap_record,
2455 w32_bitmap_record, and mac_bitmap_record.
2456 (XImagePtr): Common name for pointer to XImage or equivalent.
2457 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
2458 to XImagePtr on X+MAC, and to HDC on W32.
2459 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
2460 (NO_PIXMAP): Common name for "None" or equivalent.
2461 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
2462 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
2463 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
37264101
SM
2464 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
2465 Define with suitable equivalents on W32 and MAC for code sharing.
c0f97789
KS
2466 (XDrawLine): Define on MAC for code sharing.
2467 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
2468 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
2469 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2470 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2471 (x_reference_bitmap, x_create_bitmap_from_data)
2472 (x_create_bitmap_from_file, x_destroy_bitmap)
2473 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2474 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
2475 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2476 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2477 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2478 (define_image_type, lookup_image_type, valid_image_p)
2479 (image_error, enum image_value_type, struct image_keyword)
2480 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2481 (make_image, free_image, prepare_image_for_display, image_ascent)
2482 (four_corners_best, image_background, image_background_transparent)
2483 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2484 (make_image_cache, free_image_cache, clear_image_cache)
2485 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2486 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2487 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2488 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
2489 (init_image_func_pointer, image_load_quartz2d)
2490 (struct ct_color, init_color_table, free_color_table)
2491 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2492 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2493 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2494 (x_disable_image, x_build_heuristic_mask)
2495 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2496 (TIFF support, GIF support, Ghostscript support): Consolidate image
2497 code from xfns.c, w32fns.c, and macfns.c.
2498 (syms_of_image): Consolidate image related symbol setup here.
2499 (init_image): Consolidate image related initializations here.
37264101 2500
c0f97789
KS
2501 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
2502 and init_image. Remove call to init_xfns.
2503
37264101
SM
2504 * macterm.h (struct mac_bitmap_record): Add file member.
2505 Not currently used, but simplifies code sharing.
c0f97789
KS
2506
2507 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2508 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2509 (x_reference_bitmap, x_create_bitmap_from_data)
2510 (x_create_bitmap_from_file, x_destroy_bitmap)
2511 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2512 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
2513 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2514 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2515 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2516 (define_image_type, lookup_image_type, valid_image_p)
2517 (image_error, enum image_value_type, struct image_keyword)
2518 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2519 (make_image, free_image, prepare_image_for_display, image_ascent)
2520 (four_corners_best, image_background, image_background_transparent)
2521 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2522 (make_image_cache, free_image_cache, clear_image_cache)
2523 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2524 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2525 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2526 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
2527 (init_image_func_pointer, image_load_quartz2d)
2528 (struct ct_color, init_color_table, free_color_table)
2529 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2530 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2531 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2532 (x_disable_image, x_build_heuristic_mask)
2533 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2534 (TIFF support, GIF support, Ghostscript support): Merge with image
2535 code from xfns.c and macfns.c into image.c.
2536 (syms_of_xfns): Move image related symbols to image.c.
2537 (init_external_image_libraries, init_xfns): Remove; initialization
2538 moved to init_image in image.c.
2539
2540 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2541 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2542 (x_reference_bitmap, x_create_bitmap_from_data)
2543 (x_create_bitmap_from_file, x_destroy_bitmap)
2544 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2545 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2546 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2547 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2548 (define_image_type, lookup_image_type, valid_image_p)
2549 (image_error, enum image_value_type, struct image_keyword)
2550 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2551 (make_image, free_image, prepare_image_for_display, image_ascent)
2552 (four_corners_best, image_background, image_background_transparent)
2553 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2554 (make_image_cache, free_image_cache, clear_image_cache)
2555 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2556 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2557 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2558 (struct ct_color, init_color_table, free_color_table)
2559 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2560 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2561 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2562 (x_disable_image, x_build_heuristic_mask)
2563 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2564 (TIFF support, GIF support, Ghostscript support): Merge with image
2565 code from xfns.c and macfns.c into image.c.
2566 (syms_of_xfns): Move image related symbols to image.c.
2567 (init_external_image_libraries, init_xfns): Remove; initialization
2568 moved to init_image in image.c.
2569
2570 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2571 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2572 (x_reference_bitmap, x_create_bitmap_from_data)
2573 (x_create_bitmap_from_file, x_destroy_bitmap)
2574 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2575 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2576 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2577 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2578 (define_image_type, lookup_image_type, valid_image_p)
2579 (image_error, enum image_value_type, struct image_keyword)
2580 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2581 (make_image, free_image, prepare_image_for_display, image_ascent)
2582 (four_corners_best, image_background, image_background_transparent)
2583 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2584 (make_image_cache, free_image_cache, clear_image_cache)
2585 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2586 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2587 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2588 (struct ct_color, init_color_table, free_color_table)
2589 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2590 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2591 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2592 (x_disable_image, x_build_heuristic_mask)
2593 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2594 (TIFF support, GIF support, Ghostscript support): Merge with
2595 w32fns.c and macfns.c image code into image.c.
2596 (syms_of_xfns): Move image related symbols to image.c.
2597 (init_xfns): Remove; initialization moved to init_image in image.c.
2598
2599 * lisp.h (syms_of_image, init_image): Add protoypes.
2600 (init_xfns): Remove prototype.
2601
2602 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2603 (x_reference_bitmap, x_create_bitmap_from_data)
2604 (x_create_bitmap_from_file, x_destroy_bitmap)
2605 (x_create_bitmap_mask): Move prototypes from dispextern.h.
2606 (gamma_correct) [MAC_OS]: Add prototype.
2607
2608 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2609 (x_reference_bitmap, x_create_bitmap_from_data)
2610 (x_create_bitmap_from_file, x_destroy_bitmap)
2611 (x_create_bitmap_mask): Move prototypes to dispextern.h.
2612
6eced09c
KH
26132004-03-09 Kenichi Handa <handa@etlken2>
2614
2615 * coding.c (decode_coding_emacs_mule): Handle insufficent source
2616 correctly.
2617
9a7e95f3
RS
26182004-03-04 Richard M. Stallman <rms@gnu.org>
2619
04a6e76b
RS
2620 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
2621
9a7e95f3
RS
2622 * window.c (Fdisplay_buffer): Doc fix.
2623
2624 * buffer.c (Fpop_to_buffer): Doc fix.
2625
6c2488df
KS
26262004-03-03 Kim F. Storm <storm@cua.dk>
2627
2628 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
2629
d8d95bc7
SM
26302004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
2631
2632 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
2633
357589bf
RS
26342004-03-02 Richard M. Stallman <rms@gnu.org>
2635
2636 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
2637
409949b5
KH
26382004-03-02 Kenichi Handa <handa@m17n.org>
2639
2640 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
2641
d24bc50f
KS
26422004-03-02 Kim F. Storm <storm@cua.dk>
2643
2644 * window.h (struct window): New member overlay_arrow_bitmap.
2645
2646 * window.c (make_window): Initialize overlay_arrow_bitmap.
2647
2648 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
2649 implement and integrate multiple overlay arrows with redisplay.
2650 (syms_of_xdisp): DEFVAR_LISP and initialize it.
2651 (last_arrow_position, last_arrow_string): Replace by properties.
2652 (Qlast_arrow_position, Qlast_arrow_string)
2653 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
2654 (syms_of_xdisp): Intern and staticpro them.
2655 (overlay_arrow_string_or_property, update_overlay_arrows)
2656 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
2657 (overlay_arrow_at_row): New functions for multiple overlay arrows.
2658 (redisplay_internal): Use them instead of directly accessing
2659 Voverlay_arrow_position etc. for multiple overlay arrows.
2660 (mark_window_display_accurate): Use update_overlay_arrows.
2661 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
2662 (try_window_id): Use overlay_arrows_changed_p.
2663 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
2664 (display_line): Use overlay_arrow_at_row to check multiple
2665 overlay arrows, and get relevant overlay-arrow-string and
d8d95bc7 2666 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
d24bc50f
KS
2667 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
2668 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
2669
2670 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
2671 (update_window_fringes): Remove unused code.
2672
c1464661
JR
26732004-03-01 Jason Rumney <jasonr@gnu.org>
2674
2675 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
2676
a64387ee
JB
26772004-03-01 Juanma Barranquero <lektu@terra.es>
2678
2679 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
2680
2681 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
2682
334faa08
JD
26832004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2684
2685 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
2686 how many colors can be displayed.
2687
bb62616f
KH
26882004-03-01 Kenichi Handa <handa@m17n.org>
2689
2690 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
2691 correctly.
2692
0fd16104
KS
26932004-02-28 Kim F. Storm <storm@cua.dk>
2694
2695 * dispnew.c (update_window): Update header line also if there are
2696 no other changes in window (move code after set_cursor label).
2697
2698 * lisp.h (mark_window_display_accurate): Remove prototype.
2699
2700 * window.c (window_loop, Fforce_window_update): Force mode line
2701 updates by setting prevent_redisplay_optimizations_p and
2702 update_mode_lines.
2703
b59dd9c8
JD
27042004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2705
d8d95bc7 2706 * xfns.c (x_window): Fix indentation.
b59dd9c8
JD
2707
2708 * xterm.c (x_calc_absolute_position): Call x_real_positions
2709 to get WM window sizes and use those to calculate position.
d8d95bc7 2710 (x_set_offset): Remove code commented out.
b59dd9c8 2711
a874691c
MB
27122004-02-28 Miles Bader <miles@gnu.org>
2713
2714 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
2715
3e0c6482
KS
27162004-02-28 Kim F. Storm <storm@cua.dk>
2717
2718 * keyboard.c (kbd_buffer_store_event_hold): New function to store
2719 an event into kbd fifo, but with special handling of quit event;
2720 a quit event is saved for later, and further events are discarded
2721 until the saved quit event has been processed.
2722 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
2723 (gen_help_event): Store help event in kbd fifo.
2724 (NREAD_INPUT_EVENTS): Remove.
2725 (read_avail_input): Adapt to new read_socket_hook interface.
2726 Remove allocation and initialization of local input_event buffer,
2727 as read_socket_hook stores events directly in fifo. Allocate and
2728 initialize local hold_quit event to handle postponed quit event
2729 (and store it if set by kbd_buffer_store_event_hold).
2730
2731 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
2732 (gen_help_event): Fix prototype.
2733
a64387ee 2734 * macterm.c (XTread_socket): Remove bufp_r and
3e0c6482 2735 numcharsp args. Add hold_quit arg.
f63fd14e 2736 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
2737 directly in fifo using kbd_buffer_store_event_hold.
2738
2739 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
2740 (read_input_waiting): Adapt to new read_socket_hook interface.
2741 Remove allocation and initialization of local input_event buffer,
2742 as read_socket_hook stores events directly in fifo. Allocate and
2743 initialize local hold_quit event to handle postponed quit event
2744 (and store it if set by kbd_buffer_store_event_hold).
2745
a64387ee 2746 * term.c (read_socket_hook): Fix arg list.
3e0c6482
KS
2747
2748 * termhooks.h (read_socket_hook): Fix prototype.
2749
2750 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
2751 numcharsp args. Add hold_quit arg.
f63fd14e 2752 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
2753 directly in fifo using kbd_buffer_store_event_hold.
2754
2755 * w32inevt.h (w32_console_mouse_position): Fix prototype.
2756
2757 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
f63fd14e
JB
2758 Add hold_quit arg. Rework to use just one, local, inev
2759 input_event. Store inev directly in fifo using
3e0c6482
KS
2760 kbd_buffer_store_event_hold. Update count in one place.
2761 Postpone call to gen_help_event until inev is stored; use new
2762 local do_help for this.
2763 Remove local emacs_event in handing of ButtonPress event; just use
2764 inev instead (so no reason to copy it later).
2765
2766 * xsmfns.c (x_session_check_input): Remove numchars arg.
2767
d8d95bc7
SM
2768 * xterm.c (x_focus_changed, x_detect_focus_change):
2769 Remove numchars arg. Always store event into bufp arg.
2770 Return nothing. Callers changed accordingly.
3e0c6482
KS
2771 (glyph_rect): Simplify.
2772 (STORE_KEYSYM_FOR_DEBUG): New macro.
2773 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
2774 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
2775 (current_hold_quit) [USE_GTK]: Add.
2776 (event_handler_gdk): Adapt to new handle_one_xevent.
2777 (handle_one_xevent): Remove bufp_r and numcharsp args.
f63fd14e
JB
2778 Add hold_quit arg. Rework to use just one, local, inev
2779 input_event. Store inev directly in fifo using
3e0c6482
KS
2780 kbd_buffer_store_event_hold. Update count in one place.
2781 Postpone call to gen_help_event until inev is stored; use new
2782 local do_help for this.
2783 Simplify handling of keysyms (consolidate common code). Fix bug
2784 where count was updated with nchars instead of nbytes.
2785 Remove local emacs_event in handing of ButtonPress event; just use
2786 inev instead (so no reason to copy it later).
2787 Remove `out' label. Rename label `ret' to `done'; add various
2788 `goto done' to clarify code flow in deeply nested blocks.
2789 (x_dispatch_event): Simplify as handle_one_xevent now calls
2790 kbd_buffer_store_event itself.
f63fd14e 2791 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
3e0c6482
KS
2792 arg. Call handle_one_xevent with new arglist. Store event from
2793 x_session_check_input in fifo.
2794 [USE_GTK]: Setup current_hold_quit.
2795 Decrement handling_signal before unblocking input.
2796 (x_initialize) [USE_GTK]: Initialize current_count.
2797
2798 * xterm.h (x_session_check_input): Fix prototype.
2799
e3564461 28002004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
a64387ee 2801
d8d95bc7 2802 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
a64387ee 2803
e3564461
ST
2804 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
2805 macgui.h).
a64387ee 2806
e3564461 2807 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
a64387ee 2808
e3564461
ST
2809 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
2810 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
2811 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
2812 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
2813 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
2814 (Bitmap): Remove typedef.
2815 (Pixmap): Change int to GWorldPtr.
2816
d8d95bc7 2817 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
a64387ee 2818
d8d95bc7
SM
2819 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
2820 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
2821 New #define to extract 16-bit depth color components from unsigned
e3564461
ST
2822 long representation.
2823 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
2824 colors used for masks.
2825 (struct mac_display_info): Add color_p. Remove n_cbits.
a64387ee 2826
e3564461
ST
2827 * macfns.c: Include sys/types.h and sys/stat.h.
2828 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
2829 Include QuickTime/QuickTime.h.
2830 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
2831 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
2832 functions defined in macterm.c.
2833 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
2834 (ZPixmap): New #define for compatibility with xfns.c.
2835 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
2836 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
d8d95bc7
SM
2837 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
2838 New functions.
e3564461 2839 (four_corners_best, x_create_x_image_and_pixmap)
d8d95bc7
SM
2840 (x_destroy_x_image, unwind_create_frame, x_disable_image)
2841 (x_edge_detection, init_color_table, colors_in_color_table)
e3564461
ST
2842 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
2843 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
2844 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
2845 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
2846 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
2847 long mixup.
2848 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
2849 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
2850 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
2851 (x_set_cursor_type, Fxw_color_values, valid_image_p)
2852 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
2853 (x_alloc_image_color, clear_image_cache, lookup_image)
2854 (x_find_image_file, xbm_read_bitmap_file_data)
2855 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
2856 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
2857 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
2858 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
2859 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
d8d95bc7 2860 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
e3564461
ST
2861 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
2862 #if 0.
2863 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
2864 #if 0. Free white_relief.gc and black_relief.gc.
d8d95bc7
SM
2865 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
2866 New functions (from xfns.c).
e3564461
ST
2867 (Fx_create_frame): Record unwind_create_frame.
2868 (Fxw_display_color_p): Use dpyinfo->color_p.
2869 (Fx_display_grayscale_p, Fx_display_planes): Don't use
2870 dpyinfo->n_cbits.
2871 (Fx_display_color_cells): Use dpyinfo->n_planes;
2872 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
2873 (Qheuristic, cross_disabled_images, emboss_matrix)
2874 (laplace_matrix): New variables (from xfns.c).
2875 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
2876 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
2877 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
d8d95bc7
SM
2878 (image_background_transparent): New function (from xfns.c).
2879 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
2880 (image_load_quicktime): Add declaration.
2881 [MAC_OSX] (image_load_quartz2d): Likewise.
2882 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
2883 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
d8d95bc7 2884 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
e3564461
ST
2885 (xbm_load_image_from_file, x_laplace_read_row)
2886 (x_laplace_write_row, pbm_read_file): Remove functions.
2887 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
2888 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
2889 (colors_in_color_table): Sync with xfns.c (although not used).
2890 (lookup_rgb_color): Don't lookup color table. Just do gamma
2891 correction.
2892 (COLOR_INTENSITY): New #define (from xfns.c).
d8d95bc7
SM
2893 (x_disable_image): New function (from xfns.c).
2894 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
2895 (x_build_heuristic_mask): Sync with xfns.c.
2896 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
2897 (HAVE_PBM): Remove #ifdef.
2898 (pbm_load): Sync with xfns.c. Set img->width and img->height
2899 before IMAGE_BACKGROUND.
d8d95bc7 2900 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
e3564461
ST
2901 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
2902 Don't enclose with #if HAVE_PNG.
2903 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
d8d95bc7
SM
2904 symbol _CGImageCreateWithPNGDataProvider is defined.
2905 Otherwise use image_load_quicktime.
e3564461 2906 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
d8d95bc7
SM
2907 [HAVE_PNG] (png_load): Sync with xfns.c.
2908 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
2909 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
2910 HAVE_JPEG.
2911 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
2912 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
2913 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
2914 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
2915 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
2916 (tiff_image_p, tiff_load): Don't enclose declarations with #if
2917 HAVE_TIFF.
2918 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
2919 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
2920 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
d8d95bc7
SM
2921 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
2922 New functions (from xfns.c).
e3564461 2923 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
d8d95bc7 2924 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
e3564461
ST
2925 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
2926 Don't enclose with #if HAVE_GIF.
2927 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
2928 animated gif. Otherwise use image_load_quicktime.
2929 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
2930 gif_DrawText to avoid conflict with QuickdrawText.h.
2931 [HAVE_GIF] (gif_load): Sync with xfns.c.
2932 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
2933 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
2934 Ghostscript is not supported yet).
2935 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
2936 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
2937 cross_disabled_images (from xfns.c). Remove #if 0 for supported
2938 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
2939 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
2940 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
d8d95bc7
SM
2941 HAVE_PNG. Call EnterMovies to support animated gifs.
2942 Call init_image_func_pointer to bind a symbol
e3564461 2943 _CGImageCreateWithPNGDataProvider if it is defined.
a64387ee 2944
d8d95bc7 2945 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
e3564461
ST
2946 (x_draw_bar_cursor): Sync declaration with xterm.c.
2947 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
2948 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
2949 graphics).
2950 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
2951 (mac_draw_line_to_pixmap, XCreatePixmap)
2952 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
d8d95bc7
SM
2953 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
2954 New functions.
2955 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
2956 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
2957 Cast bits to char *.
e3564461
ST
2958 (reflect_byte): New function (from w32fns.c).
2959 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
2960 due to byte alignment.
d8d95bc7
SM
2961 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
2962 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
e3564461
ST
2963 (XSetForeground): Remove static (now used in macfns.c).
2964 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
2965 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
2966 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
2967 (x_draw_glyph_string_box, x_draw_image_foreground)
2968 (x_draw_image_foreground_1, x_draw_image_glyph_string)
2969 (x_draw_stretch_glyph_string, x_draw_glyph_string)
2970 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
2971 Sync with xterm.c.
2972 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
2973 than the xterm.c version when a strictly horizontal or vertical
2974 line is drawn.
2975 (XTset_terminal_window): Add static.
2976 (x_make_frame_visible): Add UNBLOCK_INPUT.
2977 (x_free_frame_resources): New funcion (from xterm.c).
2978 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
2979 occurs in tool bar area.
d8d95bc7
SM
2980 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
2981 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
e3564461
ST
2982 Initialize image cache.
2983 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
2984 Enclose unused functions with #if 0.
2985 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
2986 (decode_mac_font_name): New function to apply code conversions
d8d95bc7 2987 from a mac font name to an XLFD font name according to its script code.
e3564461 2988 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
d8d95bc7 2989 font name to a mac font name according to REGISTRY and ENCODING fields.
e3564461
ST
2990 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
2991 whose name starts with `.'.
2992 (init_font_name_table): Use decode_mac_font_name. Add both
2993 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
2994 of a font is smJapanese.
2995 (mac_do_list_fonts): New function to list fonts that match a given
2996 pattern.
2997 (x_list_fonts, XLoadQueryFont): Use it.
2998 (XLoadQueryFont): Set rbearing field for each variable width
2999 character to avoid needless redraw.
3000 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
3001
446f5f3d
KS
30022004-02-26 Kim F. Storm <storm@cua.dk>
3003
af617d0f
KS
3004 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
3005 as read_socket_hook handler on X aborts if buffer is too small
3006 and W32 handler doesn't always check buffer limit.
3007
446f5f3d
KS
3008 * xdisp.c (handle_single_display_prop): Handle left-fringe and
3009 right-fringe similar to a display margin image. Specifically,
3010 the characters having the fringe prop are no longer shown, and
3011 we use IT_IMAGE/next_element_from_image with image_id = -1 to
3012 do this. Set fringe bitmap face_id in it->face_id.
3013 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
3014 still realize it->face (i.e. the fringe bitmap face).
3015
7d8a0b55
MB
30162004-02-25 Miles Bader <miles@gnu.org>
3017
3018 * xdisp.c (check_it): Check string/string_pos consistency.
3019 (init_iterator): Initialize string-related fields properly.
3020
30212004-02-11 Miles Bader <miles@gnu.org>
3022
3023 * xdisp.c (produce_image_glyph): Force negative descents to zero.
3024
30252004-02-10 Miles Bader <miles@gnu.org>
3026
3027 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
3028 BLOCK_INPUT can be nested, so it doesn't make much sense.
3029
a64387ee 30302004-02-24 Michael Mauger <mmaug@yahoo.com>
ce35edd1
JR
3031
3032 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
3033 (xbm_read_bitmap_data): Use unsigned char for image data.
3034
92f5fba2
LT
30352004-02-23 Luc Teirlinck <teirllm@auburn.edu>
3036
3037 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
3038
8565fb3d
JR
30392004-02-22 Jason Rumney <jasonr@gnu.org>
3040
3041 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
3042 correctly over other bitmaps.
3043
a6eeaa81 30442004-02-21 Eli Zaretskii <eliz@gnu.org>
f8125c39
EZ
3045
3046 * emacs.c (USAGE1): Split into two halves.
3047 (USAGE2): Second half of the old USAGE1.
d8d95bc7
SM
3048 (USAGE3): Rename from USAGE2.
3049 (USAGE4): Rename from USAGE3.
f8125c39 3050
4effffca
EZ
30512004-02-21 Juri Linkov <juri@jurta.org>
3052
3053 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
3054 Fix --multibyte. Move --help, --version to USAGE2. Add alias
3055 --file. Fix -f, -l. Sort options. Untabify.
3056 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
3057
923c1e6f
LT
30582004-02-19 Luc Teirlinck <teirllm@auburn.edu>
3059
3060 * category.c (Fdefine_category, Fcategory_docstring)
3061 (Fget_unused_category, Fset_category_table)
3062 (Fcategory_set_mnemonics): Doc fixes.
3063
b0e225fd
KS
30642004-02-20 Kim F. Storm <storm@cua.dk>
3065
3066 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
3067 The following changes are relative to the 2004-01-21 revision.
3068 (NREAD_INPUT_EVENTS): Define as max number of input events to read
3069 in one call to read_socket_hook. Value is 8.
3070 (read_avail_input): Separate and rework handling of read_socket_hook
3071 and non-read_socket_hook cases. Use smaller input_event buffer
d8d95bc7
SM
3072 in read_socket_hook case, and repeat if full buffer is read.
3073 Use new local variable 'discard' to skip input after C-g.
b0e225fd
KS
3074 In non-read_socket_hook case, just use a single input_event, and
3075 call kbd_buffer_store_event on the fly for each character.
3076
b15aa9f9
SM
30772004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
3078
3079 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
3080 Remove unused `gu' alternative.
3081
83c9aa95
AS
30822004-02-19 Andreas Schwab <schwab@suse.de>
3083
3084 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
3085 warning.
3086
cc808173
KS
30872004-02-18 Kim F. Storm <storm@cua.dk>
3088
3089 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
3090 Fix last change.
3091
ab90a54d
KS
30922004-02-17 Kim F. Storm <storm@cua.dk>
3093
b26f249f
KS
3094 * xdisp.c (fast_find_position): Fix return value of new version;
3095 it was inverted compared to the 21.1 version.
3096 (get_window_cursor_type): Don't look at glyph if NULL.
3097 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 3098
ab90a54d
KS
3099 * keyboard.c: Rework previous change; it didn't consider that the
3100 buf array was allocated on the stack.
3101 (prev_read): Remove variable.
3102 (read_avail_input_buf): New static event buffer array.
b9568dfc 3103 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 3104 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
3105 Use in_read_avail_input to handle re-entrance; when re-entered,
3106 fully initialize and use tmp_buf array instead of read_avail_input_buf.
3107 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
3108 is always cleared on entry. To ensure that, we clear (just) the
3109 entries that were used before we return.
3110 (init_keyboard): Initialize read_avail_input_buf here.
3111
4e039f3f
EZ
31122004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change)
3113
3114 * cmds.c (Fend_of_line): Doc fix.
3115
7b5368c1
EZ
31162004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
3117
3118 * keyboard.c (prev_read): New static variable.
3119 (read_avail_input): Use it to zero out only those slots in buf[]
3120 that were used last time we were called.
3121
a6eeaa81 31222004-02-16 Eli Zaretskii <eliz@gnu.org>
ca4bc494
EZ
3123
3124 * Makefile.in (obj): Move fringe.o from here...
3125 (XOBJ, MAC_OBJ): ...to here.
3126
159c348e
SE
31272004-02-16 Stephen Eglen <stephen@gnu.org>
3128
3129 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
3130
d2f14999
SM
31312004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
3132
b15aa9f9
SM
3133 * data.c (Fbyteorder):
3134 * fringe.c (Fdefine_fringe_bitmap):
3135 * xdisp.c (handle_single_display_prop):
d2f14999
SM
3136 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
3137
8d50508a
JR
31382004-02-16 Jason Rumney <jasonr@gnu.org>
3139
3140 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
3141
dd4497dc
ST
31422004-02-15 Steven Tamm <steventamm@mac.com>
3143
3144 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
3145 controlling emulation of a three button mouse with option and
3146 command keys.
3147 (Qreverse, mac_get_enumlated_btn): Handle the emulation
b15aa9f9 3148 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
dd4497dc 3149
c9159cb3
KS
31502004-02-15 Kim F. Storm <storm@cua.dk>
3151
2cc52658
KS
3152 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
3153
c9159cb3
KS
3154 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
3155 Perform byte-swapping.
3156
12fde2dc
KS
31572004-02-14 Kim F. Storm <storm@cua.dk>
3158
3159 * dispextern.h (struct draw_fringe_bitmap_params): Change member
3160 bits from char to short to facilitate wider bitmaps.
3161 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
3162 member.
3163
3164 * fringe.c (struct fringe_bitmap): Change member bits from char to
3165 short to facilitate 16 bits wide bitmaps. Modify all standard
3166 bitmaps accordingly.
3167 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
3168 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
3169 (draw_fringe_bitmap): Ditto.
3170 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
3171 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
3172 handle up to 16 bits wide bitmaps.
3173 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 3174 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
3175
3176 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
3177 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
3178 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
3179
3180 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
3181 so it is no longer necessary to expand them here.
3182
3183 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
3184
9d7271e8
KS
31852004-02-12 Kim F. Storm <storm@cua.dk>
3186
3187 * window.c (Fwindow_fringes): Doc fix.
3188
706c1e4f
JD
31892004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3190
3191 * xselect.c (x_get_foreign_selection): Add new optional parameter
3192 time_stamp.
3193 (Fx_get_selection_internal): Ditto, pass time_stamp to
3194 x_get_foreign_selection.
3195
3196 * data.c (Fbyteorder): New function.
3197
c2d12b5d
JD
31982004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3199
3200 * atimer.c: Move include stdio.h to same place as in other files.
3201
3202 * region-cache.c: Ditto.
3203
3204 * sysdep.c: Ditto.
3205
3206 * xfaces.c: Ditto.
3207
4c1947b9
SS
32082004-02-09 Sam Steingold <sds@gnu.org>
3209
89458937 3210 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
4c1947b9 3211
82722af3
KS
32122004-02-09 Kim F. Storm <storm@cua.dk>
3213
3214 * fringe.c: New file. Move original fringe related declarations
3215 and code from dispextern.h and xdisp.c here.
3216 Rework code to support user defined fringe bitmaps, redefining
3217 standard bitmaps, ability to overlay user defined bitmap with
3218 overlay arrow bitmap, and add faces to bitmaps.
3219 (Voverflow_newline_into_fringe): Declare here.
3220 (enum fringe_bitmap_align): New enum.
3221 (..._bits): All bitmaps are now defined without bitswapping; that
3222 is now done in init_fringe_once (if necessary).
3223 (standard_bitmaps): New array with specifications for the
3224 standard fringe bitmaps.
3225 (fringe_faces): New array.
3226 (valid_fringe_bitmap_id_p): New function.
3227 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
3228 (draw_fringe_bitmap): New function which draws fringe bitmap,
3229 possibly overlaying bitmap with cursor in right fringe or the
3230 overlay arrow in the left fringe.
3231 (update_window_fringes): Do not handle overlay arrow here.
3232 Compare and copy fringe bitmap faces.
3233 (init_fringe_bitmap): New function.
3234 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
3235 define and destroy user defined fringe bitmaps.
3236 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
3237 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
3238 (syms_of_fringe): New function. Defsubr new DEFUNs.
3239 DEFVAR_LISP Voverflow_newline_into_fringe.
3240 (init_fringe_once, init_fringe): New functions.
3241 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 3242
82722af3
KS
3243 * Makefile.in (obj): Add fringe.o.
3244 (fringe.o): New dependencies.
3245
3246 * dispextern.h (FRINGE_ID_BITS): New definition for number of
3247 bits allocated to hold a fringe number. Increase number of bits
3248 from 4 to 8 to allow user defined fringe bitmaps.
3249 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
3250 left_user_fringe_face_id, right_user_fringe_bitmap,
3251 right_user_fringe_face_id.
3252 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
3253 Move to new file fringe.c.
3254 (MAX_FRINGE_BITMAPS): Define here.
3255 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
3256 and overlay_p. Change member which to int.
3257 (struct redisplay_interface): New members define_fringe_bitmap
3258 and destroy_fringe_bitmap.
3259 (valid_fringe_bitmap_id_p): Add prototype.
3260 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
3261
3262 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
3263 arrows.
3264 (update_frame): Do flush_display if force_flush_display_p to
3265 ensure display (specifically fringes) are updated in a timely
3266 manner when resizing the frame by dragging the mouse.
3267 (update_window_line): Update row if overlay arrow changed.
3268 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
3269 or overlay arrow changed.
3270
3271 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
3272 syms_of_fringe, and init_fringe.
3273
3274 * frame.h (struct frame): New member force_flush_display_p.
3275
3276 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
3277 Add prototypes.
3278
a3993cc8 3279 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
a64387ee 3280 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
a3993cc8
KS
3281 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
3282 Use cursor color for displaying cursor in fringe.
82722af3
KS
3283 (x_redisplay_interface): Add null handlers for
3284 define_fringe_bitmap and destroy_fringe_bitmap functions.
3285
3286 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
3287 xterm.c to handle overlayed fringe bitmaps and to use cursor color
3288 for displaying cursor in fringe.
3289 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
3290 specific functions to define and destroy fringe bitmaps in fringe_bmp.
3291 (w32_redisplay_interface): Add them to redisplay_interface.
3292 (w32_term_init): Call w32_init_fringe instead of explicitly
3293 defining fringe bitmaps in fringe_bmp array.
3294 (x_delete_display): Call w32_reset_fringes instead of explicitly
3295 destroying fringe bitmaps in fringe_bmp array.
3296
3297 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
3298 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
3299 (continued_bits, continuation_bits, ov_bits, first_line_bits)
3300 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
3301 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
3302 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
3303 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
3304 Move fringe handling vars and code to new file fringe.c.
3305 (handle_display_prop): Handle left-fringe and right-fringe
3306 display properties; store user fringe bitmaps in iterator.
3307 (move_it_in_display_line_to): Handle cursor in fringe at eob.
3308 (clear_garbaged_frames): Set force_flush_display_p if resized.
3309 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
3310 (display_line): Handle cursor in fringe at eob.
3311 (display_line): Set row user fringe bitmaps from iterator.
3312
3313 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
3314 Use cursor color for displaying cursor in fringe.
3315 (x_redisplay_interface): Add null handlers for
3316 define_fringe_bitmap and destroy_fringe_bitmap functions.
3317
030400eb
JD
33182004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3319
3320 * macfns.c (Fx_change_window_property): Make doc string and
3321 parameters same as for X version.
3322
3323 * w32fns.c (Fx_change_window_property): Ditto.
3324
3af55251
KS
33252004-02-07 Kim F. Storm <storm@cua.dk>
3326
ec110e9e
KS
3327 * xdisp.c (hscroll_window_tree): Position cursor near to right
3328 margin in hscrolled window when jumping to end of line (rather
3329 than centering cursor).
3330
3af55251
KS
3331 * process.c (wait_reading_process_input): Don't do adaptive read
3332 buffering if waiting for a specific process.
3333
b0c138ce
LT
33342004-02-05 Luc Teirlinck <teirllm@auburn.edu>
3335
3336 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
3337 (Fread_minibuffer, Feval_minibuffer)
3338 (Fread_string, Fread_no_blanks_input)
3339 (Fcompleting_read): Doc fixes.
3340 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
3341 completion-regexp-list. Define Qcase_fold_search and staticpro it.
3342 (read_minibuf): Fix initial comment.
3343 (Ftry_completion, Fall_completions, Ftest_completion): Bind
e8eeaed8 3344 case-fold-search to the value of completion-ignore-case when
b0c138ce
LT
3345 checking completion-regexp-list.
3346 (Fdisplay_completion_list): Make it handle arguments that are
3347 symbols. Doc fix.
3348
9676f5ad 33492004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 3350
9676f5ad 3351 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 3352
9676f5ad
JD
3353 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
3354 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 3355 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 3356 format. Remove unused variable cons.
5b698285
JD
3357
3358 * xselect.c: Include stdio,h.
3359
fc1d15f6
KH
33602004-02-05 Kenichi Handa <handa@m17n.org>
3361
ebaff4af
KH
3362 * fns.c (Fset_char_table_range): Fix previous change.
3363
fc1d15f6
KH
3364 * buffer.c (Fset_buffer_multibyte): Fix docstring.
3365
9676f5ad
JD
33662004-02-04 Luc Teirlinck <teirllm@auburn.edu>
3367
3368 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
3369
da75761f
SM
33702004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
3371
3372 * keymap.c (Vmouse_events): Rename from Vmenu_events.
3373 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
3374
13c5d120
KH
33752004-02-04 Kenichi Handa <handa@m17n.org>
3376
3377 * fns.c (Fset_char_table_range): Handle charsets ascii,
3378 eight-bit-control, and eight-bit-graphic correctly.
3379
2883d842
JR
33802004-02-03 Jason Rumney <jasonr@gnu.org>
3381
3382 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
3383
3384 * w32fns.c (x_to_w32_font): Likewise.
3385
69eff41f
JD
33862004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3387
3388 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
3389 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
3390
3391 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
3392 ClientMessages.
3393
3394 * xselect.c: Include termhooks.h and X11/Xproto.h
3395 (x_check_property_data, x_fill_property_data)
3396 (x_property_data_to_lisp, mouse_position_for_drop)
3397 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 3398 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
3399 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
3400
da75761f 3401 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
3402 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
3403 OUTER_P.
3404 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
3405 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
3406 if vector_ret_p is true.
3407 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 3408
a6eeaa81 34092004-02-02 Eli Zaretskii <eliz@gnu.org>
dcdbbb5d
EZ
3410
3411 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
3412 basename of FILE relative to it, not FILE itself.
3413
09721b31
KH
34142004-02-02 Kenichi Handa <handa@m17n.org>
3415
3416 * coding.c (coding_restore_composition): Check invalid
3417 composition data more rigidly.
3418
eb996101
LT
34192004-01-30 Luc Teirlinck <teirllm@auburn.edu>
3420
3421 * fileio.c (Fread_file_name_internal): Correctly handle the case
3422 where insert-default-directory is nil.
3423 (Fread_file_name): Always return an empty string if the user exits
3424 with an empty minibuffer. Adapt the docstring accordingly.
3425 (syms_of_fileio): Adapt the docstring of insert-default-directory
3426 to the change in Fread_file_name.
3427
a6eeaa81 34282004-01-29 Eli Zaretskii <eliz@gnu.org>
a0367d42
EZ
3429
3430 * alloca.c [!alloca]: Fix the prototype for xfree.
3431
13f52ed8
KH
34322004-01-29 Kenichi Handa <handa@m17n.org>
3433
3434 * fns.c (string_char_to_byte): Optimize for ASCII only string.
3435 (string_byte_to_char): Likewise.
3436
d57625a0
JR
34372004-01-28 Peter Runestig <peter@runestig.com>
3438
3439 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
3440
a64387ee 34412004-01-27 Steven Tamm <steventamm@mac.com>
911c78b4
ST
3442
3443 * unexmacosx.c (unexec_copy): Do not copy more than was
3444 requested to prevent overwriting during unexec.
3445
eb37b8fd
JD
34462004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3447
ce38070a
JD
3448 * process.c (sigchld_handler): Add comment about not calling malloc.
3449
eb37b8fd
JD
3450 * process.h: Add extern to synch_process_termsig.
3451
a64387ee 34522004-01-27 Steven Tamm <steventamm@mac.com>
21a3e657 3453
da75761f
SM
3454 * macterm.c (make_mac_frame, make_mac_terminal_frame):
3455 Move setting of scroll bars from make_mac_frame to
3456 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 3457
d62a265d
RS
34582004-01-26 Richard M. Stallman <rms@gnu.org>
3459
3460 * search.c (Freplace_match): Handle nonexistent
3461 back-references properly.
3462
34632004-01-03 Richard M. Stallman <rms@gnu.org>
3464
3465 * window.c (decode_any_window): New function.
3466 (Fwindow_height, Fwindow_width, Fwindow_edges)
3467 (Fwindow_pixel_edges, Fwindow_inside_edges)
3468 (Fwindow_inside_pixel_edges): Use decode_any_window.
3469
ff236419
JD
34702004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3471
3472 * process.h: synch_process_termsig new variable.
3473
3474 * callproc.c: Define synch_process_termsig.
3475 (Fcall_process): Initiate synch_process_termsig to zero and
3476 check if non-zero and get signal name after subprocess has ended.
3477
3478 * process.c (sigchld_handler): Set synch_process_termsig
3479 if terminated by a signal. synch_process_death setting removed.
3480
3481 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
3482
41b867ea
AS
34832004-01-26 Andreas Schwab <schwab@suse.de>
3484
3485 * print.c (print_preprocess): Declare size as EMACS_INT to not
3486 lose bits.
3487 (print_object): Likewise.
3488 * alloc.c (Fpurecopy): Likewise.
3489
a08084ff
LT
34902004-01-25 Luc Teirlinck <teirllm@auburn.edu>
3491
3492 * window.c (Fwindow_minibuffer_p): Doc fix.
3493
b19ac475
JY
34942004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
3495
3496 * editfns.c (Fformat): Make both passes accept the same set of flags.
3497
fe905025
KH
34982004-01-23 Kenichi Handa <handa@m17n.org>
3499
3500 * fns.c (Fmd5): If OBJECT is a buffer different from the current
3501 one, set buffer to OBJECT temporarily.
3502
438fc6c0
SM
35032004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
3504
455316e2
SM
3505 * keyboard.c (kbd_buffer_gcpro): Remove.
3506 (kbd_buffer_store_event, clear_event, Fdiscard_input)
3507 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
3508 Don't initialize and/or maintain the variable any more. It was made
3509 redundant by my commit of 2003-06-15.
3510
438fc6c0
SM
3511 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
3512
5335a4ee
JD
35132004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3514
3515 * lisp.h: Add undef DECL_ALIGN.
3516
dcdaeebc
SM
35172004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
3518
3519 * process.c (wait_reading_process_input) [SYNC_INPUT]:
3520 Check interrupt_input_pending explicitly.
3521
3522 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
3523
3524 * keyboard.c (handle_async_input): New fun,
3525 extracted from input_available_signal.
3526 (input_available_signal, reinvoke_input_signal): Use it.
3527
9076a823
SM
35282004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
3529
d7107586
SM
3530 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
3531
3532 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
3533 manipulation macros for when tags are in the lower bits.
3534 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
3535 (DECL_ALIGN): New macro.
3536 (DEFUN): Use it.
3537
3538 * lisp.h [ENABLE_CHECKING]: Don't force union type.
3539
3540 * s/darwin.h (__attribute__): Remove outdated workaround.
3541
3542 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
3543
3544 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
3545 Don't check range of malloc address.
3546 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
3547
9076a823
SM
3548 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
3549
3550 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
3551
ba029065
KH
35522004-01-19 Kenichi Handa <handa@m17n.org>
3553
3554 * fontset.c (fontset_font_pattern): Fix previous change.
3555
7af0e8d7
MB
35562004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
3557
3558 * xdisp.c (Voverflow_newline_into_fringe)
3559 (move_it_in_display_line_to, redisplay_internal)
3560 (update_window_fringes, redisplay_window, display_line, window):
3561 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
3562 that it compiles without a window-system.
3563 * dispnew.c (direct_output_for_insert, update_window): Likewise.
3564
77a9cf69
KS
35652004-01-16 Kim F. Storm <storm@cua.dk>
3566
3567 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
3568
a64387ee 3569 * buffer.c (init_buffer_once): Set buffer_defaults and
77a9cf69
KS
3570 buffer_local_flags for indicate_buffer_boundaries.
3571 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
3572 default- variable for it.
3573
3574 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
3575 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 3576 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
3577 overflowing newlines into right fringe.
3578 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
3579 and indicate_bottom_line_p for buffer boundaries and scrolling.
3580 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
3581 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
3582 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
3583 and HOLLOW_SQUARE_BITMAP.
3584 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
3585 Add prototypes.
3586
3587 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
3588 instead of related indicator fields.
3589 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
3590 (direct_output_for_insert): Handle exact width lines like
3591 contined lines. Call update_window_fringes.
3592 (update_window): Call update_window_fringes.
3593 (scrolling_window): Don't skip desired rows with changed bitmaps.
3594 Check if fringe bitmaps changes when assigning scrolled rows.
3595
3596 * xdisp.c (Voverflow_newline_into_fringe): New variable.
3597 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
3598 (move_it_in_display_line_to): Overflow newline into fringe for
3599 rows that are exactly as wide as the window.
3600 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
3601 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
3602 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
3603 (fringe_bitmaps): Add new bitmaps.
3604 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
3605 Select proper bitmap for cursor in fringe when appropriate.
3606 Handle alignment of bitmap to top or bottom of row.
3607 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
3608 done by update_window_fringes.
3609 (update_window_fringes, draw_window_fringes): New functions.
3610 (redisplay_internal): Call update_window_fringes in case only
3611 cursor row is updated.
3612 (redisplay_window): Call update_window_fringes.
3613 Explicitly call draw_window_fringes if redisplay was done using
3614 the current matrix or the overlay arrow is in the window.
3615 (try_window_reusing_current_matrix): Mark scrolled rows for
3616 fringe update (to update buffer-boundaries / scrolling icons).
3617 (find_last_unchanged_at_beg_row): Handle exact width lines line
3618 continued lines.
3619 (display_line): Overflow newline into fringe for rows that are
3620 exactly as wide as the window. Don't append space for newline
d7107586 3621 in this case.
77a9cf69
KS
3622 (notice_overwritten_cursor): Explicitly clear cursor bitmap
3623 in fringe as if it had been overwritten.
3624 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 3625 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
3626 void-text-area-pointer as user options.
3627 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 3628
77a9cf69
KS
3629 * xterm.c (x_update_window_end): Call draw_window_fringes.
3630 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
3631 in row instead of actually drawing fringe bitmaps.
3632 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
3633 (x_draw_window_cursor): Draw cursor in fringe.
3634
3635 * w32term.c (x_update_window_end): Call draw_window_fringes.
3636 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
3637 in row instead of actually drawing fringe bitmaps.
3638 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
3639 (w32_draw_window_cursor): Draw cursor in fringe.
3640
3641 * macterm.c (x_update_window_end): Call draw_window_fringes.
3642 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
3643 in row instead of actually drawing fringe bitmaps.
3644 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
3645 (mac_draw_window_cursor): Draw cursor in fringe.
3646
a633a954
JD
36472004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3648
3649 * xterm.c (handle_one_xevent): Don't handle characters that are part
3650 of an old style (XLookupString) compose sequence.
3651
80460525
KH
36522004-01-15 Kenichi Handa <handa@m17n.org>
3653
3654 * search.c (Freplace_match): Use make_multibyte_string or
3655 make_unibyte_string according to the buffer multibyteness.
3656
7fc34f85
SM
36572004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
3658
3659 * alloc.c (struct interval_block, struct string_block)
3660 (struct symbol_block, struct marker_block, live_string_p)
3661 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
3662 Better preserve alignment for objects in blocks.
3663 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
3664
3665 * lread.c (defvar_per_buffer): Remove dead declaration.
3666
3667 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
3668 space size.
3669
66070bd1
JD
36702004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3671
3672 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
3673 if a key press should pop down. Only pop down if a key is pressed
3674 outside the menu/dialog.
3675 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
3676 popup_get_selection.
3677 (create_and_show_dialog): Pass 1 for down_on_keypress to
3678 popup_get_selection.
3679
de7515d6
JD
36802004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3681
3682 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
3683 BLOCK/UNBLOCK_INPUT.
3684
160b1b50
JD
36852004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3686
3687 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
3688 specified.
3689
3a9f36e6
KH
36902004-01-08 Kenichi Handa <handa@m17n.org>
3691
3692 * editfns.c (Fformat): Fix '&' to '&&'.
3693
3803eb32
AS
36942004-01-08 Andreas Schwab <schwab@suse.de>
3695
3696 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
3697 size if PSEUDOVECTOR_FLAG is set.
3698
9da88f37
KH
36992004-01-07 Kenichi Handa <handa@m17n.org>
3700
74ac5074
KH
3701 * charset.c (Fdeclare_equiv_charset): Fix docstring.
3702
9da88f37
KH
3703 * fontset.c (fontset_ref_via_base): Fix previous change.
3704
05faee07
KS
37052004-01-07 Kim F. Storm <storm@cua.dk>
3706
3707 * process.c (read_process_output): Only activate adaptive
3708 buffering if we read less than 256 bytes at a time.
3709
634910c8
KS
37102004-01-06 Kim F. Storm <storm@cua.dk>
3711
3712 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
3713 object and image object. Return glyph width and height.
3714 (mode_line_string, marginal_area_string): Ditto.
3715
3716 * dispextern.h (buffer_posn_from_coords, mode_line_string)
3717 (marginal_area_string): Fix prototypes.
3718
3719 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
f63fd14e 3720 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
634910c8
KS
3721 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
3722
3723 * keyboard.c (make_lispy_position): Use modified mode_line_string,
3724 buffer_posn_from_coords, and marginal_area_string functions to
3725 include both string object and image object in the lispy position.
3726 Also add actual glyph width and height to position.
3727 (read_key_sequence): Use real buffer position from mouse
3728 event to find keymap property even when click is in marginal area.
3729
3730 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
3731 mode_line_string and marginal_area_string functions to handle
3732 both string object and image object properties.
d7107586 3733
57951c2e
AS
37342004-01-06 Andreas Schwab <schwab@suse.de>
3735
3736 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
3737 character.
3738
181e6a61
AS
37392004-01-02 Andreas Schwab <schwab@suse.de>
3740
d7107586
SM
3741 * macterm.c (emacs_options, x_initialized, same_x_server):
3742 Remove unused (and duplicated) definitions.
181e6a61 3743
31e0fbdd
KS
37442004-01-02 Kim F. Storm <storm@cua.dk>
3745
3746 * process.h (struct Lisp_Process): New members for adaptive read
3747 buffering: adaptive_read_buffering, read_output_delay, and
3748 read_output_skip.
3749
3750 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
3751 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
3752 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
3753 (process_output_delay_count, process_output_skip): New vars.
3754 (Vprocess_adaptive_read_buffering): New variable.
3755 (make_process): Initialize adaptive read buffering members.
3756 (Fstart_process): Set adaptive_read_buffering member.
3757 (deactivate_process): Cleanup adaptive read buffering.
3758 (wait_reading_process_input): Temporarily omit delayed
3759 subprocesses from the set of file descriptors to read from;
3760 adjust the select timeout if we skipped any subprocesses.
3761 (read_process_output): Increase adaptive read buffering delay if
3762 we read less than a full buffer; reduce delay when we read a
3763 full buffer.
3764 (send_process): Simplify using local Lisp_Process var.
3765 Reset adaptive read buffering delay after write.
3766 (init_process): Initialize process_output_delay_count and
3767 process_output_skip.
3768 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
3769
68c6a789
JR
37702004-01-01 Jason Rumney <jasonr@gnu.org>
3771
d7107586 3772 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 3773
3f70fe82
LT
37742003-12-30 Luc Teirlinck <teirllm@auburn.edu>
3775
3776 * print.c (Ferror_message_string): Add hyperlink in the docstring
3777 to the definition of `signal' in the Elisp manual.
3778 * eval.c (Fsignal): Ditto.
3779
a64387ee 37802003-12-29 James Clark <jjc@jclark.com> (tiny change)
c2be49ed
EZ
3781
3782 * fns.c (internal_equal): Return t for two NaN arguments.
3783
7abd90ea
RS
37842003-12-29 Richard M. Stallman <rms@gnu.org>
3785
3786 * data.c (store_symval_forwarding): Handle setting
3787 default-fill-column, etc., by changing the value in
3788 buffers that use the default.
3789
3790 * minibuf.c (Fset_minibuffer_window): Doc fix.
3791
3792 * fileio.c (choose_write_coding_system): Ignore auto_saving
3793 if using the visited file for auto saves.
3794 (Fwrite_region): Don't update SAVE_MODIFF
3795 if auto-saving in visited file.
3796
3e7cfcdc
KH
37972003-12-29 Kenichi Handa <handa@m17n.org>
3798
3799 * dispextern.h (face_font_available_p): Extern it.
3800
3801 * fontset.c (Voverriding_fontspec_alist): New variable.
3802 (lookup_overriding_fontspec): New function.
d7107586 3803 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
3804 (fontset_font_pattern): Likewise.
3805 (regulalize_fontname): New function.
3806 (Fset_fontset_font): Call regulalize_fontname.
3807 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
3808 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
3809 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
3810
3811 * xfaces.c (face_font_available_p): New function.
3812
7abd90ea
RS
38132003-12-28 Richard M. Stallman <rms@gnu.org>
3814
3815 * buffer.c (Fother_buffer): Don't crash if BUF is nil
3816 or if its name is nil.
3817
3818 * buffer.c (Fkill_buffer): Don't delete auto-save file
3819 if it's the same as the visited file.
3820
de1d1a40
LT
38212003-12-28 Luc Teirlinck <teirllm@auburn.edu>
3822
3823 * coding.c (Fcheck_coding_system): Doc fix.
3824
204fb75e
KS
38252003-12-28 Kim F. Storm <storm@cua.dk>
3826
3827 * Makefile.in (eval.o): Depend on dispextern.h.
3828
3829 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
3830 image glyph using image's ascent.
3831 (mode_line_string): Return image glyph as object clicked on.
3832 Adjust y0 for image glyph using image's ascent.
3833
3834 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
3835 (struct glyph): New members, ascent and descent. Used to save
3836 this glyph's ascent and descent, instead of having.
3837 (struct glyph): Declare member face_id using FACE_ID_BITS.
3838 (find_hot_spot): Add prototype.
3839
3840 * keyboard.c (Qimage): Remove extern (now in lisp.h).
3841 (QCmap): Declare extern.
3842 (make_lispy_position): When position is inside image hot-spot,
3843 use hot-spot element's id as posn element.
3844
3845 * lisp.h (IMAGEP): New macro to test for image object type.
3846 (Qimage): Declare extern.
3847
3848 * macfns.c (Qimage): Remove extern (now in lisp.h).
3849 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3850
3851 * macterm.c (Qface, Qmouse_face): Remove unused externs.
3852
3853 * w32fns.c (Qimage): Remove extern (now in lisp.h).
3854 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3855
3856 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
3857
3858 * w32term.c (Qface, Qmouse_face): Remove unused externs.
3859
3860 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
3861 pointer types.
3862 (Qrelative_width, Qalign_to): Remove unused variables.
3863 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
3864 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
3865 image maps.
d7107586 3866 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
3867 new dx and dy args.
3868 Remove buffer_only_p arg (always 0). Simplify code accordingly.
3869 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
3870 than row's ascent and height, to get sensible height on tall rows.
3871 (build_desired_tool_bar_string): Remove Qimage extern.
3872 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
3873 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
3874 image glyph is alone on the last line.
3875 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 3876 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 3877 (on_hot_spot_p): New function to check if position is inside an
d7107586 3878 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
3879 (find_hot_spot): New function to search for image hot-spot.
3880 (Flookup_image_map): New defun to search for image hot-spot.
3881 (define_frame_cursor1): New aux function to determine frame pointer.
3882 (note_mode_line_or_margin_highlight, note_mouse_highlight):
3883 Handle `pointer' text property and :pointer image property to
3884 control frame pointer shape. Detect image hot-spots for pointer
3885 and help_echo properties. Use define_frame_cursor1.
3886 (note_mouse_highlight): Use Vvoid_text_area_pointer.
f63fd14e 3887 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
204fb75e
KS
3888 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
3889
3890 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
3891
3892 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
3893 (Qimage): Remove extern (now in lisp.h).
3894 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3895
3896 * xmenu.c (show_help_event): Remove unused code.
3897
3898 * xterm.c (Qface, Qmouse_face): Remove unused externs.
3899 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
3900 row's ascent and descent, to get a sensible height on tall rows.
3901
fc052137
LT
39022003-12-25 Luc Teirlinck <teirllm@auburn.edu>
3903
3904 * minibuf.c (Fcompleting_read): Undo previous change.
3905
a64387ee 39062003-12-25 Lars Hansen <larsh@math.ku.dk>
b9148500
LH
3907
3908 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
3909 Arguments GCPRO'ed in call to file name handler.
3910
56ffd194
TTN
39112003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
3912
3913 * termcap.c (tgetst1): Scan for "%pN"; if all
3914 N are continuous in [1,9], remove all "%pN".
3915
5202d23d
JD
39162003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3917
f26fab36
JD
3918 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
3919
5202d23d
JD
3920 * xfaces.c (lface_fully_specified_p): Take into account that
3921 MAC OS always have unspecified stipple.
3922
8babaa59
TTN
39232003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
3924
3925 * tparam.c (tparam1): Add handling for `%pN', which
3926 means use param N for the next substitution.
3927
2d176448
TTN
39282003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
3929
3930 * xfaces.c (Fcolor_gray_p): Fix omission bug:
3931 In case `frame' is nil, consult the selected frame.
3932 (Fcolor_supported_p): Likewise.
3933
adb0708c
LT
39342003-12-23 Luc Teirlinck <teirllm@auburn.edu>
3935
000eeb15
LT
3936 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
3937 Doc fixes.
0dc72b11
LT
3938
3939 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
3940 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
3941 (Fread_from_minibuffer): Delete code moved into read_minibuf.
3942 Doc fix.
3943 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
3944 read_minibuf.
3945 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 3946 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 3947
2e4d132b
KH
39482003-12-03 Kenichi Handa <handa@m17n.org>
3949
3950 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
3951 encoding sequence.
3952
3999c705
KH
39532003-12-01 Kenichi Handa <handa@m17n.org>
3954
3955 * composite.c (syms_of_composite): Don't make the compostion hash
3956 table week.
3957
d344ecbb
LT
39582003-11-30 Luc Teirlinck <teirllm@auburn.edu>
3959
3960 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
3961 * textprop.c (Fget_char_property_and_overlay): New function.
3962 (syms_of_textprop): Defsubr it.
3963
03d6484e
JD
39642003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3965
019b1f0e
JD
3966 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
3967 to compile on terminal configuration.
3968
03d6484e
JD
3969 * fileio.c (Fread_file_name): Check use_file_dialog also before
3970 calling Fx_file_dialog.
3971
3972 * fns.c: use_file_dialog: New variable.
3973 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
3974
442d3fd0
KS
39752003-11-29 Kim F. Storm <storm@cua.dk>
3976
3977 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
3978 (syms_of_msdos): Don't intern and staticpro them.
3979
0f6a07a8
KS
39802003-11-27 Kim F. Storm <storm@cua.dk>
3981
3982 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
3983 coordinates relative to glyph at posn. If glyph is an image,
3984 return that as object at posn. Callers changed.
3985 (mode_line_string, marginal_area_string): Calculate and return
3986 pixel coordinates relative to glyph. Callers changed.
3987
3988 * dispextern.h (buffer_posn_from_coords, mode_line_string)
3989 (marginal_area_string): Fix prototypes.
3990 (window_box_left_offset, window_box_right_offset): Add prototypes.
3991
3992 * frame.h (get_specified_cursor_type, get_window_cursor_type):
3993 Remove prototypes.
3994
3995 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
3996
3997 * keyboard.c (make_lispy_position): Add x and y coordinates
3998 relative to the current glyph as 7th element of position.
3999 If glyph is an image, return it in the object element.
4000 (read_key_sequence): Skip checks for keymap property in cases
4001 where POSN_STRING is not a string (e.g. an image).
4002
4003 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
4004 (Vshow_text_cursor_in_void): New variable.
4005 (glyph_to_pixel_coords): Don't use negative hpos.
4006 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
4007 (append_stretch_glyph): Change ascent arg to be actual value
f63fd14e 4008 in pixels rather than ratio to height. Callers changed.
0f6a07a8
KS
4009 (calc_pixel_width_or_height): New aux function, implementing
4010 pixel based artihmetic for glyph widths and heights.
4011 (produce_stretch_glyph): Use calc_pixel_width_or_height for
4012 :width, :height, :align-to, and :ascent, thus allowing these to
4013 be specified in pixels as well as multiples of characters.
4014 Don't produce stretch glyphs with zero width or height.
4015 (get_specified_cursor_type): Declare static.
4016 (get_window_cursor_type): Declare static. Add glyph arg to be
4017 able to know when cursor is on an image; always substitute
4018 hollow-box cursor for filled-box cursor on images, to avoid
4019 negative images and flicker when blinking the cursor.
4020 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
4021 (note_mode_line_or_margin_highlight): Use non-text cursor rather
4022 than vertical scroll-bar cursor in display margins.
4023 (note_mouse_highlight): Use non-text cursor rather than text
4024 cursor in fringes and over images in the text area.
4025 Use non-text cursor when mouse pointer is outside editable text,
4026 i.e. in the void after end-of-line or end-of-buffer; this was
4027 already done for W32, but is now standard for all systems --
4028 user can toggle show-text-cursor-in-void to get old behaviour.
4029 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
4030 Vdisplay_pixels_per_inch.
4031
00498bfc
AS
40322003-11-25 Andreas Schwab <schwab@suse.de>
4033
4034 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
4035 EMACS_INT to not lose bits.
4036 (Ffillarray): Don't set bits beyond the size of a bool vector.
4037
edaa824d
KS
40382003-11-25 Kim F. Storm <storm@cua.dk>
4039
4040 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
4041 define this defun on systems that cannot use stderr as lvalue.
4042
74d6f539
GM
40432003-11-24 Gerd Moellmann <gerd@gnu.org>
4044
4045 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
4046 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
4047 ld's default is incompatible with unexec.
4048
6a1ff3ba
KS
40492003-11-23 Kim F. Storm <storm@cua.dk>
4050
63dc7c6b
KS
4051 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
4052 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
4053 (Fforce_window_update): New defun.
4054 (syms_of_window): Defsubr it.
4055 (Fset_window_margins, Fset_window_fringes): Doc fix.
4056
6a1ff3ba
KS
4057 * print.c (Fredirect_debugging_output): New defun.
4058 (syms_of_print): Defsubr it.
4059
aef109b7
LT
40602003-11-22 Luc Teirlinck <teirllm@auburn.edu>
4061
4062 * fns.c (Fset_char_table_parent): Doc fix.
4063
6a1ff3ba 40642003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
4065
4066 * dispnew.c (buffer_posn_from_coords): Return actual row/column
4067 for glyph clicked on, rather than (unused) pixel positions.
4068 (mode_line_string, marginal_area_string): Change X and Y args to
4069 pointers for returning actual row/column for glyph clicked on.
4070 Simplify and optimize loops.
4071
aef109b7
LT
4072 * dispextern.h (mode_line_string, marginal_area_string):
4073 Update prototypes.
63ccbe21
KS
4074
4075 * keyboard.c (make_lispy_position): New function for generating
4076 mouse click positions from frame and pixel coordinates.
4077 Enhanced to return buffer position and actual row/column for
4078 events outside the text area using updated mode_line_string and
4079 marginal_area_string functions.
4080 Return left-fringe and right-fringe clicks as such, rather than
4081 clicks in text area.
4082 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
4083 pixel_to_glyph_coords, as we never use the results.
4084 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
4085 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
4086 Eliminate unused code in WHEEL_EVENT handling.
4087 (make_lispy_movement): Use make_lispy_position.
4088
4089 * window.c (coordinates_in_window): Remove redundant tests.
4090 Fix returned X pixel value for left-margin.
4091
4092 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
4093 mode_line_string and marginal_area_string parameters.
4094
a64387ee 40952003-11-22 Lars Hansen <larsh@math.ku.dk>
930a9995 4096
d7107586
SM
4097 * w32.c (struct the_group, getgrgid): Add.
4098 * mac.c (struct my_group, getgrgid): Add.
aef109b7 4099
3dbf3426
LT
41002003-11-21 Luc Teirlinck <teirllm@auburn.edu>
4101
4102 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
4103
cae8ddbb 41042003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 4105
d7107586
SM
4106 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
4107 include in call to file name handler. Optionally translate numeric
4108 UID and GID to strings. Update docstring.
4109 (directory_files_internal): Add parameter ID-FORMAT.
4110 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
4111 include in call to file name handler and call to
4112 directory_files_internal. Update Docstring.
4113 (Fdirectory_files): Add dummy parameter in call to
4114 directory_files_internal.
4115 * lisp.h (Qinteger): Add.
4116 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
4117 (Ffile_attributes): Add parameter.
4118 * data.c (Qinteger): Export.
cae8ddbb 4119
2550b848
LT
41202003-11-21 Luc Teirlinck <teirllm@auburn.edu>
4121
3dbf3426 4122 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 4123
88380018
KS
41242003-11-19 Kim F. Storm <storm@cua.dk>
4125
4126 * xdisp.c (init_iterator): Initialize it->start to position
4127 before reseating (in case start position is invisible).
4128 (init_to_row_start): Set it->start to row-start.
4129 (redisplay_window): Accept optional_new_start if start position
4130 is invisible (in which case IT_CHARPOS overshoots PT).
4131 (display_line): Setup row->start from it->start (rather than
4132 it->current which is wrong if first char on line is invisible).
4133 When done, reseat it->start to it->current (= start of next row).
4134 (expose_area): Fix exposure of text area when first char (e.g. TAB)
4135 is only partially visible.
4136
4137 * dispextern.h (struct it): New member start.
4138
854c1a59
SM
41392003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
4140
455316e2
SM
4141 * alloc.c (make_float, Fcons): Clear the markbit at init time.
4142 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
4143 of block_index outside of the macro call.
4144 (Fgarbage_collect): Remove null code.
4145
4146 * m/amdx86-64.h: Don't redefine XPNTR.
4147
854c1a59
SM
4148 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
4149 of VALMASK.
4150
4151 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
4152 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
4153 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
4154
4155 * lisp.h (VALMASK): Only define for non-union type.
4156 (MARKBIT): Remove.
4157 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
4158 (XTYPE): Define unconditionally.
4159 (XSETTYPE): Remove one more remnant.
4160 (EQ): Define differently for the union and non-union cases.
4161 (INTMASK): New bit mask.
4162 (struct Lisp_Marker): Move down to prepare for upcoming patch.
4163 (GC_EQ): Delegate to EQ.
4164
4165 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
4166
a0c6ef2d
JD
41672003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4168
4169 * xterm.c (x_window_to_scroll_bar): Move check of display to
4170 where window_id is compared.
4171
859492c4
KS
41722003-11-17 Kim F. Storm <storm@cua.dk>
4173
4174 * dispextern.h (struct it): New member first_vpos.
4175
4176 * xdisp.c (start_display): Set it->first_vpos.
4177 (try_window_id): Use first_vpos to start display in first _text_
4178 line if no reusable lines at start of window with header line.
4179
810f2256
JD
41802003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4181
7c402969 4182 * w32fns.c (XPutPixel):
854c1a59
SM
4183 * w32bdf.c (w32_init_bdf_font):
4184 * sunfns.c (sel_read):
4185 * process.c (Fmake_network_process):
4186 * frame.c (store_frame_param):
4187 * fontset.c (Fset_fontset_font):
4188 * emacs.c (shut_down_emacs):
a64387ee 4189 * ccl.c (ccl_driver): Remove period at end of error message.
7c402969 4190
a32e9bfd
JD
4191 * config.in: Regenerate.
4192
810f2256
JD
4193 * xfns.c (x_window_to_frame, x_any_window_to_frame)
4194 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
4195 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
4196 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
4197 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
4198
4199 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
4200
4201 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
4202 (XTmouse_position, handle_one_xevent): Pass Display* to
4203 x_window_to_scroll_bar.
4204 (x_window_to_scroll_bar): Take a Display* argument.
4205 Check that display for frame is equal to Display* argument.
854c1a59 4206 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
4207 x_display_info_for_display instead. Use Display in xev instead
4208 of GDK_DISPLAY.
4209 (x_dispatch_event): Call x_display_info_for_display.
f63fd14e 4210 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
810f2256
JD
4211 (x_connection_closed): Call xg_display_close for GTK.
4212 (x_term_init): Call xg_display_open for additional displays.
4213 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
4214 for GTK.
4215
4216 * xmenu.c (single_menu_item, mouse_position_for_popup)
4217 (x_activate_menubar): Formatting adjustments.
4218
4219 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
4220 adjustments.
4221
4222 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
4223 (xg_display_close, xg_create_default_cursor)
4224 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
4225 handling.
854c1a59
SM
4226 (xg_left_ptr_cursor): Remove.
4227 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
4228 cursor here.
4229 (xg_win_to_widget): Take Display* argument, call
4230 gdk_xid_table_lookup_for_display.
4231 (xg_create_frame_widgets, xg_get_file_name, create_menus)
4232 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
4233 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
4234 in FRAME_X_DISPLAY_INFO.
4235 (xg_get_scroll_id_for_window): Take Display* argument.
4236 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 4237 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256
JD
4238
4239 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
4240 Display* argument also. Declare xg_display_open,
4241 xg_display_close, xg_create_default_cursor.
4242
0b03cc78
JD
42432003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4244
4245 * xterm.c (x_detect_focus_change): Do not change focus frame for
4246 Enter/LeaveNotify if the current focus frame has explicit focus.
4247
77e688fa
KS
42482003-11-14 Kim F. Storm <storm@cua.dk>
4249
4250 * dispnew.c (update_text_area): Fix redisplay error when hscroll
4251 is active and first glyph is only partially visible.
854c1a59 4252
dd429b03
KH
42532003-11-13 Kenichi Handa <handa@m17n.org>
4254
4255 * xdisp.c (select_frame_for_redisplay): New function.
4256 (redisplay_internal): Record also selected_frame for
4257 unwind_redisplay. Call select_frame_for_redisplay before
4258 redrawing each frame.
4259 (unwind_redisplay): Argument changed to a cons.
4260
6d9266f4
LT
42612003-11-12 Luc Teirlinck <teirllm@auburn.edu>
4262
4263 * fns.c (Fstring_to_multibyte): Doc fix.
4264
80060eb3
KH
42652003-11-11 Kenichi Handa <handa@m17n.org>
4266
4267 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
4268
74305183
JD
42692003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4270
4271 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
4272 program specified positions.
4273
cfda993e
JD
42742003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4275
4276 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
4277
df211069
KH
42782003-11-08 Kenichi Handa <handa@m17n.org>
4279
4280 * Makefile.in (lisp): Add kannada.el.
4281 (shortlisp): Likewise.
4282
4307d534
KH
42832003-11-07 Kenichi Handa <handa@m17n.org>
4284
854c1a59
SM
4285 * coding.c (coding_allocate_composition_data):
4286 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
4287 (coding_restore_composition): Detect invalid composition data.
4288 Give Fstring and Fvector a Lispy integer, not C int.
4289
854c1a59
SM
42902003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
4291
4292 * floatfns.c (Flogb): Don't use VALMASK.
4293
4294 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
4295 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
4296
4297 * lisp.h (XINT): Move the cast to clarify what is going on.
4298 (GCTYPEMASK, XSETTYPE): Remove.
4299 (XGCTYPE): Make it an alias of XTYPE.
4300
d04103a1
JD
43012003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4302
4303 * xterm.c (x_term_init): Fix formatting.
4304
da18b5ac
JD
43052003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4306
4307 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
4308 and xg_did_tearoff.
4309
4310 * gtkutil.c: Remove variable xg_did_tearoff.
4311 (xg_have_tear_offs): New function.
4312 (tearoff_remove): Just decrease xg_detached_menus.
4313 (tearoff_activate): Increase xg_detached_menus and call
4314 tearoff_remove when tearoff is removed.
854c1a59 4315 (xg_keep_popup): Remove function.
da18b5ac
JD
4316 (create_menus): Give add_tearoff_p as argument to recursive
4317 call to create_menus.
4318 (xg_create_widget): Use variables instead of multiple
4319 strcmp. Tell create_menus to create tear off only for
4320 menu bar menus.
4321 (xg_update_menubar): Change title for a detached menu also.
4322 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
4323 of deep_p.
4324 (xg_initialize): Initialize xg_detached_menus, remove
4325 initialization of xg_did_tearoff.
4326
4327 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
4328 xg_have_tear_offs returns non-zero.
4329 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
4330 call to xg_keep_popup.
4331
64d4923e
AC
43322003-11-01 Andrew Choi <akochoi@shaw.ca>
4333
4334 * macterm.c (XTread_socket): Handle menubar selection and grow
4335 window only for mouseDown events.
854c1a59 4336
6cc8bc07
JD
43372003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4338
4339 * xterm.c (x_term_init): For GTK part, increase x_initialized
4340 to check for more than one display. Use error instead of return 0.
4341
043131c4
AC
43422003-10-31 Andrew Choi <akochoi@shaw.ca>
4343
854c1a59 4344 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
4345 (copy_dysymtab): Call it.
4346
bdda99a1
LT
43472003-10-31 Luc Teirlinck <teirllm@auburn.edu>
4348
4349 * eval.c (Fdefvaralias): Doc fix.
4350
800f42ff 43512003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
4352
4353 * data.c (Fsetplist): Doc fix.
4354
ef35b389
LK
43552003-10-14 Lute Kamstra <lute@gnu.org>
4356
4357 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 4358
ef35b389 43592003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 4360
07107abc
KS
4361 * window.c (Fset_window_margins): Simplify arg checking.
4362
f7005886
RS
43632003-10-13 Richard M. Stallman <rms@gnu.org>
4364
4365 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
4366 (print_partial_compiled_pattern): Replace assert with a printout.
4367 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
4368
4369 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
4370
4371 * window.c (Fset_window_margins): Allow only integers as args.
4372 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
4373 Doc fixes.
4374
9c0c2af5
LK
43752003-10-13 Lute Kamstra <lute@gnu.org>
4376
4377 * window.c (Fset_window_fringes): Elaborate docstring.
4378
3f080e4e
AC
43792003-10-12 Andrew Choi <akochoi@shaw.ca>
4380
854c1a59 4381 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 4382
3f080e4e
AC
4383 * s/darwin.h (GC_MARK_STACK): Define.
4384
0aa513ed
JD
43852003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4386
4387 * window.c (shrink_windows): New function.
4388 (size_window): Call shrink_windows to calculate window sizes when
4389 shrinking frame with more than one window.
4390
6aa8858a
KS
43912003-10-12 Kim F. Storm <storm@cua.dk>
4392
4393 * xdisp.c (compute_fringe_widths): Doc fix.
4394
c2164d91
KH
43952003-10-08 Kenichi Handa <handa@m17n.org>
4396
854c1a59 4397 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 4398
f82ac129
KH
43992003-10-07 Kenichi Handa <handa@m17n.org>
4400
4401 * coding.c (Qcoding_system_define_form): New variable.
4402 (syms_of_coding): Intern and staticpro it.
4403 (Fcheck_coding_system): Try to autoload the definition of
4404 CODING-SYSTEM.
4405
9296c947
LT
44062003-10-05 Luc Teirlinck <teirllm@auburn.edu>
4407
4408 * fns.c (Frequire): Doc fix.
4409
c1f0671a
JD
44102003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4411
3d8c3826
JD
4412 * xfns.c (Fx_send_client_event): New function as a base for
4413 manipulating extended window manager hints.
6dc15d98 4414 (Fx_send_client_event): Remove unused variable s.
3d8c3826 4415
068ae0fd
JD
4416 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
4417 that function is removed.
4418
4419 * xterm.c (x_set_offset): Use move_offset_left/top instead of
4420 x/y_pixels_outer_diff.
4421 (x_check_expected_move): Calculate move_offset_left/top.
4422
4423 * xterm.h (struct x_output): New members: move_offset_top/left.
4424
854c1a59 4425 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
4426 call x_set_offset directly.
4427
4428 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
4429
96f09305
JD
4430 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
4431
4432 * xterm.c (x_delete_display): Free font names and font_encoder
4433 in dpyinfo->font_table.
4434
854c1a59
SM
4435 * xfns.c (Fx_close_connection): Only call XFreeFont here.
4436 Move xfree of font names to x_delete_display.
96f09305 4437
c1f0671a
JD
4438 * xterm.h (struct x_display_info): New member, wm_type.
4439 (struct x_output): New members, expected_top/left and
4440 check_expected_move.
4441
4442 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
4443 is received.
854c1a59
SM
4444 (handle_one_xevent): Rename x_check_expected_move from
4445 x_check_fullscreen_move.
c1f0671a
JD
4446 (x_set_offset): Only add WM decoration sizes to modified_top/left
4447 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 4448 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
4449 Removed fullscreen specific code. Use check_expected_move,
4450 expected_left/top instead. Also, set wm_type.
4451 (x_term_init): Initialize wm_type to unknown.
4452
4453 * frame.c (x_fullscreen_move): Remove addition of WM decoration
4454 sizes to move_x/y.
4455
be2fdba9
KH
44562003-10-03 Kenichi Handa <handa@m17n.org>
4457
4458 * macterm.c (x_load_font): Clear all members of FONTP before start
4459 filling them.
4460
44612003-10-02 Kenichi Handa <handa@m17n.org>
4462
4463 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
4464 before calling find_ccl_program_func. Call find_ccl_program_func
4465 only when fontp->font_encoder is not NULL.
4466
4467 * xterm.c (x_load_font): Clear all members of FONTP before start
4468 filling them.
4469
26a6e439
JPW
44702003-10-03 John Paul Wallington <jpw@gnu.org>
4471
4472 * keymap.c (map_keymap): Don't abort when binding is a vector.
4473
0d4c2dc2
JR
44742003-10-02 Jason Rumney <jasonr@gnu.org>
4475
854c1a59
SM
4476 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
4477 Sync dependencies with Makefile.in.
a63cf46f
JR
4478 (alloca.o): Remove.
4479
0d4c2dc2
JR
4480 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
4481 filling them.
4482
4483 * w32bdf.c (w32_load_bdf_font): Likewise.
4484
ab8f7d5c
RS
44852003-09-30 Richard M. Stallman <rms@gnu.org>
4486
4487 * term.c (set_tty_color_mode): Calculate current_mode_spec
4488 regardless of value of VAL.
4489
854c1a59 4490 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
4491 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
4492 Handle over_used when splitting UNDER.
4493
a64387ee 44942003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ab8f7d5c
RS
4495
4496 * regex.c (regex_compile): Free the stack when returning from function.
4497
3413f972
KH
44982003-09-28 Kenichi Handa <handa@m17n.org>
4499
4500 * fontset.c (Finternal_char_font): Change return value to
4501 cons (FONT-NAME . GLYPH-CODE).
4502
a6eeaa81 45032003-09-28 Eli Zaretskii <eliz@gnu.org>
40409f05
EZ
4504
4505 * term.c (tty_setup_colors): Treat any negative argument as -1.
4506
f98ddc99
KH
45072003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
4508
4509 * process.c (send_process): Delete unused temp_buf.
4510
66c8f1a8
DL
45112003-09-26 Dave Love <fx@gnu.org>
4512
4513 * xterm.c (x_bitmap_mask): Declare.
4514
ca716c26
DL
45152003-09-25 Dave Love <fx@gnu.org>
4516
4517 * Makefile.in (fns.o): Depend on md5.h.
4518
fbe57420
KS
45192003-09-25 Kim F. Storm <storm@cua.dk>
4520
4521 * window.c (set_window_buffer): Fix redisplay problems when
4522 switching between buffers with different display margin widths.
4523
ef6ae4ff
KS
45242003-09-23 Kim F. Storm <storm@cua.dk>
4525
4526 * process.c (set_socket_option): Fix :bindtodevice option.
4527 (Fset_network_process_option): Update process contact list when
4528 setting option succeeds.
4529 (Fmake_network_process): Doc fix.
4530
68e03c1c
DL
45312003-09-23 Dave Love <fx@gnu.org>
4532
7146d1c1 4533 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 4534
a6eeaa81 45352003-09-22 Eli Zaretskii <eliz@gnu.org>
2f809aae
EZ
4536
4537 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
4538 color mode is an integer number (it could be -1).
4539
8fe7d8c8
RS
45402003-09-22 Richard M. Stallman <rms@gnu.org>
4541
4542 * intervals.c (graft_intervals_into_buffer): Correct the main loop
4543 in the case where OVER is longer than UNDER.
4544
2f71b5ea
MY
45452003-09-22 Masatake YAMATO <jet@gyve.org>
4546
7146d1c1 4547 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 4548 `vertical_type'.
7146d1c1 4549
0c4da023
KS
45502003-09-21 Kim F. Storm <storm@cua.dk>
4551
4552 * frame.c (Vdefault_frame_scroll_bars): New variable.
4553 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
4554 (syms_of_frame): DEFVAR_LISP it, and initialize according to
4555 window-system default scroll bar position.
4556
b648413b
KS
4557 * window.c (Fwindow_scroll_bars): Doc fix.
4558
8f5b9e34
JD
45592003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4560
854c1a59 4561 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 4562
b0f23edf
RS
45632003-09-19 Richard M. Stallman <rms@gnu.org>
4564
4565 * atimer.h: Don't include lisp.h.
4566 (P_): Define it here (as well as elsewhere).
4567
4568 * print.c (Fprin1_to_string): Move the PRINTPREPARE
4569 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
4570
4571 * data.c (Fvariable_binding_locus): New function.
4572 (syms_of_data): defsubr it.
4573 (Flocal_variable_p): Delete duplicate call to indirect_variable.
4574
e1283999
DL
45752003-09-18 Dave Love <fx@gnu.org>
4576
ad5f3636
DL
4577 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
4578
e1283999
DL
4579 * process.c (Fnetwork_interface_info): Fix type error.
4580 (Fnetwork_interface_list): Doc fix.
4581 (read_process_output, read_process_output): Delete unused var.
4582
b8c7fd71
KS
45832003-09-17 Kim F. Storm <storm@cua.dk>
4584
4585 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
4586 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
4587 (Fnetwork_interface_info): Check that ifreq struct has required
4588 fields before accessing them; this requires that those fields are
4589 defined as macros, which may be too restrictive on some platforms,
4590 but it is better than failing on other platforms.
4591 (syms_of_process): Only defsubr above fns when included.
4592
11e0a411
DL
45932003-09-17 Dave Love <fx@gnu.org>
4594
4595 * unexalpha.c: Don't include varargs.h.
4596
e9c50801
KS
45972003-09-17 Kim F. Storm <storm@cua.dk>
4598
4599 * process.c (Fset_process_sentinel): Add sentinel to childp plist
4600 for network process.
4601 (socket_options): Add `:' prefix to option names. Add optbit field.
4602 (set_socket_option): Remove no_error arg and special handling of s < 0.
4603 Return 1<<optbit for known option, 0 for unknown.
4604 Do not interpret 0 as false for boolean option (only nil).
4605 Pass failed option and value to report_file_error.
7146d1c1 4606 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
4607 (Fset_network_process_option): New function to set just one option.
4608 (Fmake_network_process): Allow :coding arg to be a cons.
4609 Allow :server arg to be an integer specifying backlog size.
4610 Remove :options arg, and allow options to be specified directly
4611 as :KEY, VALUE pairs. Parse these options before binding socket.
4612 As before, :reuseaddr t is default for a server process, but this
4613 can now be disabled by specifying :reuseaddr nil.
4614 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
4615 (init_process): Availability of network options is now checked with
4616 simpler syntax (featurep 'make-network-process :OPTION); use loop to
4617 setup features.
4618 (syms_of_process): Fix defsubr's for the replaced functions.
4619
a0fc3644
DL
46202003-09-16 Dave Love <fx@gnu.org>
4621
4622 * Makefile.in: Depend on coding.h.
4623
6df2a645
KS
46242003-09-14 Kim F. Storm <storm@cua.dk>
4625
4626 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
4627 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
4628 (syms_of_process): Defsubr them.
4629
4630 * config.in: Regenerate.
7146d1c1
SM
4631
46322003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
4633
4634 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
4635 * m/news-r6.h (XUNMARK): Remove.
4636 * m/mips.h (XUNMARK): Remove.
4637 * m/mips-siemens.h (XUNMARK): Remove.
4638 * m/iris4d.h (XUNMARK): Remove.
4639 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
4640
0930c1a1
SM
46412003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
4642
31003b9e
SM
4643 * lisp.h (VALBITS): Don't remove 1 for the markbit.
4644 (union Lisp_Object): Use unsigned int for types. Remove markbit.
4645 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
4646 (XTYPE): Use unsigned right-shift.
4647 (XMARKBIT, XMARK, XUNMARK): Remove.
4648
0930c1a1
SM
4649 * alloc.c (init_intervals, init_symbol, init_marker):
4650 Don't preallocate anything.
4651 (Fgarbage_collect, mark_object): Ignore the markbit.
4652
4653 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
4654
19bb0fcd 46552003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
4656
4657 * xdisp.c (pint2hrstr): New function.
4658 (decode_mode_spec): Add `%i' and `%I' specs.
4659 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
4660 for `mode-line-format'.
4661
03bb6a06
AS
46622003-09-07 Andreas Schwab <schwab@suse.de>
4663
4664 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
4665 avoid warning.
4666
a6eeaa81 46672003-09-07 Eli Zaretskii <eliz@gnu.org>
2063d89c 4668
0930c1a1 4669 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 4670
ed159bbf
KS
46712003-09-03 Kim F. Storm <storm@cua.dk>
4672
4673 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
4674 change (superseded by 2002-08-30 change); the default blink-off
4675 cursor is now again "no cursor".
4676
fe64a394
JR
46772003-09-01 Jason Rumney <jasonr@gnu.org>
4678
4679 * makefile.w32-in (alloca.o): Remove.
4680 (coding.o): Depend on intervals.h
4681 (emacs.o, bytecode.o): Depend on window.h
4682
c0175e24
DL
46832003-09-01 Dave Love <fx@gnu.org>
4684
4685 * Makefile.in (alloca.o): Remove commands.
4686 (coding.o): Depend on intervals.h composite.h window.h.
4687 (emacs.o): Depend on window.h keyboard.h keymap.h.
4688 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
4689 (bytecode.o): Depend on window.h.
4690
a24d4cb2
JR
46912003-08-31 Jason Rumney <jasonr@gnu.org>
4692
4bc2315e
JR
4693 * w32term.c (w32_per_char_metric): Allow cached metrics to be
4694 returned even when font_type is unknown.
4695
a24d4cb2
JR
4696 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
4697
9d35adc7
JD
46982003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4699
4700 * xterm.c (x_term_init): Initialize new fields in x_display_info.
4701
4702 * xterm.h (struct x_display_info): Add red/green/blue_bits and
4703 *_offset.
4704
4705 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
4706 calculate pixel value.
4707
6f68b035
GM
47082003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
4709
0930c1a1
SM
4710 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
4711 Don't tell redisplay display is accurate when it's actually been
4712 paused for pending input.
6f68b035 4713
4828b4d7
RS
47142003-08-29 Richard M. Stallman <rms@gnu.org>
4715
4716 * dispnew.c (adjust_glyph_matrix): Call window_box
4717 whenever W is nonzero.
4718
4719 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
4720 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 4721 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
4722 Use indirect_variable to trace thru variable aliases.
4723
4724 * config.in: Updated.
4725
4726 * callint.c (Fcall_interactively): Save and restore
4727 Vthis_command, Vthis_original_command, real_this_command,
4728 and current_kboard->Vlast_command.
4729
4730 * abbrev.c (Fexpand_abbrev): Insert before deleting.
4731
e019878d
GM
47322003-08-29 Gerd Moellmann <gerd@gnu.org>
4733
4734 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
4735
85478bc6
KH
47362003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
4737
0930c1a1 4738 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
4739 (decode_coding_sjis_big5): Likewise.
4740
07ce82d3
JR
47412003-08-27 Jason Rumney <jasonr@gnu.org>
4742
d3703de3
JR
4743 * w32.c (sys_pipe): Protect against file descriptor overflow.
4744
ee4a01d1
JR
4745 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
4746
07ce82d3
JR
4747 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
4748
a64387ee 47492003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
72d19c66
LK
4750
4751 * xfns.c (Vgtk_version_string): New variable.
4752 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
4753
a6eeaa81 47542003-08-24 Eli Zaretskii <eliz@gnu.org>
5459e42a 4755
0930c1a1 4756 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 4757
5459e42a
EZ
4758 * Makefile.in (msdos.o): Depend on intervals.h.
4759
0930c1a1 4760 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 4761
231d6cfb
JD
47622003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4763
4764 * xterm.h (struct x_display_info): New fields: client_leader_window
4765 and Xatom_wm_client_leader.
4766
4767 * xterm.c (x_initialize): Move call to x_session_initialize to ...
4768 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
4769
4770 * xsmfns.c (create_client_leader_window): New function.
4771 (x_session_initialize): Call create_client_leader_window, take
4772 dpyinfo as argument.
4773
4774 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
4775
4776 * Makefile.in (xsmfns.o): Add more depenedencies.
4777
afa88464
DL
47782003-08-21 Dave Love <fx@gnu.org>
4779
4780 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
4781
f730033e
KH
47822003-08-21 Kenichi Handa <handa@m17n.org>
4783
4784 * term.c (term_init): Fix previous change; don't rely on the
4785 length of `buffer' if TERMINFO is defined.
4786
6dca786c
DL
47872003-08-20 Dave Love <fx@gnu.org>
4788
4789 * atimer.h: Include lisp.h.
4790
4791 * lisp.h (EMACS_LISP_H): New.
4792 (popup_activated_flag): Don't declare.
4793
4794 * alloca.c: Some merging with gnulib. Change logic and doc
4795 concerning (x)malloc/(x)free -- no longer Emacs-specific.
4796 [DO_BLOCK_INPUT]: Don't include lisp.h.
4797 (xmalloc, xfree): Declare.
4798 (malloc): Don't declare.
4799
0930c1a1 4800 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
4801 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
4802 atimer.h, blockinput.h.
4803
4804 * alloc.c (lisp_align_malloc): Change type of `aligned'.
4805
4806 * alloca.s: Removed.
4807
3a06a6d9
RS
48082003-08-19 Gerd Moellmann <gerd@gnu.org>
4809
4810 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
4811 use -lncurses.
4812
4813 * term.c (term_init): Use a buffer of size 4096 for tgetent since
4814 FreeBSD returns something longer than 2044. Abort if the end of
4815 the buffer is overwritten.
4816
27eeee55
MB
48172003-08-19 Miles Bader <miles@gnu.org>
4818
4819 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
4820
2f297815
GM
48212003-08-19 Gerd Moellmann <gerd@gnu.org>
4822
f4446bbf
GM
4823 * alloc.c (lisp_align_malloc): Check for memory full when
4824 allocating ablocks, which also avoids freeing a pointer into an
4825 ablocks structure.
4826
4827 * puresize.h (BASE_PURESIZE): Increase to 1100000.
4828
0930c1a1 4829 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 4830
0e7d7aae
RS
48312003-08-16 Richard M. Stallman <rms@gnu.org>
4832
4833 * editfns.c (Fencode_time): Doc fix.
4834
48352003-08-16 David Ponce <david@dponce.com>
4836
4837 * fileio.c (Fwrite_region): Fix conditional expression to issue
4838 the right message.
4839
48402003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
4841
4842 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 4843 Set default value to 1.
0e7d7aae 4844
5d551295
KH
48452003-08-15 Kenichi Handa <handa@m17n.org>
4846
4847 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
4848 what autoscaled.
4849 (best_matching_font): Once we find a better scalable font, set
4850 non_scalable_has_exact_height_p to 1.
4851 (try_font_list): Call try_alternative_families to try any family
4852 with the given registry.
4853
1661e56b
AS
48542003-08-09 Andreas Schwab <schwab@suse.de>
4855
f29181dc
AS
4856 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
4857
1661e56b
AS
4858 * print.c (print_string): Fix printing of multibyte string with
4859 nontrivial printcharfun.
4860
465aa50a
JD
48612003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4862
4863 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
4864
4865 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
4866
e430e5ba
KH
48672003-07-31 Kenichi Handa <handa@m17n.org>
4868
4869 * process.c (read_process_output): Return the actually read bytes
4870 instead of the result of decoding.
4871
97e7188e
KH
48722003-07-31 Kenichi Handa <handa@m17n.org>
4873
4874 * xterm.h (struct x_bitmap_record): New member have_mask.
4875
4876 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
4877 to 0.
4878 (x_create_bitmap_from_file): Likewise.
4879 (x_destroy_bitmap): Check have_mask member before freeing a mask.
4880 (x_destroy_all_bitmaps): Likewise.
4881 (x_create_bitmap_mask): Set have_mask member to 1.
4882
b53094d6
RS
48832003-07-30 Richard M. Stallman <rms@gnu.org>
4884
4885 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
4886
631f2082
JD
48872003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4888
4889 * gtkutil.c (xg_mark_data): Update calls to mark_object.
4890
c855f2ca
RS
48912003-07-29 Richard M. Stallman <rms@gnu.org>
4892
4893 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
4894 Conditionalize XIM code on HAVE_XIM.
4895
4896 * fns.c (Fclear_string): New function.
4897 (syms_of_fns): defsubr it.
4898
17e6d491
KH
48992003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
4900
0930c1a1 4901 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 4902
29ea8ae9
SM
49032003-07-22 Stefan Monnier <monnier@cs.yale.edu>
4904
4905 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
4906
4907 * buffer.c (delete_all_overlays): New function.
4908 * buffer.h (delete_all_overlays): Declare.
4909 * coding.c (run_pre_post_conversion_on_str):
4910 * print.c (temp_output_buffer_setup):
4911 * fileio.c (Finsert_file_contents):
4912 * minibuf.c (get_minibuffer): Use it.
4913
1dd7ccf2
AC
49142003-07-22 Andrew Choi <akochoi@shaw.ca>
4915
4916 * unexmacosx.c (unexec_regions_sort_compare):
4917 (unexec_regions_merge): New functions. Sort and merge unexec
4918 regions before dumping them.
4919
f57bd967
DL
49202003-07-22 Dave Love <fx@gnu.org>
4921
4922 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
4923
7cdee936
SM
49242003-07-21 Stefan Monnier <monnier@cs.yale.edu>
4925
4926 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
4927 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
4928 MARKBIT as the gcmarkbit for strings.
4929
e50886d3
RS
49302003-07-21 Richard M. Stallman <rms@gnu.org>
4931
4932 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
4933
29ea8ae9 4934 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
4935 (syms_of_fns): Corresponding change.
4936
4937 * alloc.c (syms_of_alloc): Doc fixes.
4938
49392003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
4940
4941 * s/netbsd.h: Use -Wl syntax.
4942
fdc39b59
RS
49432003-07-17 Richard M. Stallman <rms@gnu.org>
4944
4945 * xterm.c (xim_initialize): Redo 6/24 change.
4946
9c53385f
SM
49472003-07-15 Stefan Monnier <monnier@cs.yale.edu>
4948
4949 * buffer.c (copy_overlays): Use EMACS_INT for positions.
4950 (Fswitch_to_buffer): Don't signal an error when switching to the same
4951 buffer in a dedicated window.
4952
4953 * alloc.c: Use bitmaps for cons, as was done for floats.
4954 (init_float, init_cons): Let the normal code allocate the first block.
4955 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
4956 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
4957 New macros.
4958 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
4959 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
4960 (live_cons_p): Check the pointer is not past the `conses' array.
4961 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
4962 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
4963 (survives_gc_p): Use CONS_MARKED_P and simplify.
4964 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
4965
dde13196
PE
49662003-07-13 Paul Eggert <eggert@twinsun.com>
4967
4968 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
4969 puts it into BSS instead, at least on Solaris 8 and 9.
4970 This is a valid optimization, and it may occur on other platforms,
4971 so Emacs should not assume that initializing a static variable to
4972 zero puts it into data.
4973 * alloc.c (pure, staticvec):
4974 Initialize these arrays to nonzero, so that they're not
4975 put into BSS by that optimization.
4976
a801bc34
SM
49772003-07-13 Stefan Monnier <monnier@cs.yale.edu>
4978
4979 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
4980 (lisp_align_malloc): Use posix_memalign is available.
4981 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
4982 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
4983 for consistency. Update users.
4984
0c8b2afa
RS
49852003-07-13 Richard M. Stallman <rms@gnu.org>
4986
4987 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
4988
668c2ab0
JB
49892003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
4990
4991 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
4992 and use the Gtk+ function gtk_window_icon_from_file if available.
4993
4994 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
4995 handle mask of bitmaps.
4996 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
4997 mask property.
4998 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
4999
5000 * xterm.h (xg_set_icon): New function.
5001
800bebe3
RS
50022003-07-12 Paul Eggert <eggert@twinsun.com>
5003
5004 * unexelf.c (unexec): Consider a section to precede the .bss
5005 section if its addresses overlap that of .bss.
5006
69e38995
RS
50072003-07-12 Richard M. Stallman <rms@gnu.org>
5008
5009 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
5010
5011 * config.in (HAVE_CRTIN): Add #undef.
5012 (INLINE): Really inline only if OPTIMIZE is defined.
5013
5014 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
5015 END_FILES_1.
5016 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 5017 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
5018
5019 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
5020 (TERMINFO): Define.
5021 (LIBS_TERMCAP): Define.
5022 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
5023
5024 * xfns.c: Include libpng/png.h instead of png.h.
5025
f1d0c238
AS
50262003-07-11 Andreas Schwab <schwab@suse.de>
5027
5028 * buffer.c (modify_overlay): Update prototype.
5029 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
5030 Likewise.
5031
5f6bf5fe
SM
50322003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5033
5034 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
5035 (struct interval): Move to intervals.h.
5036 (struct Lisp_Marker): Use EMACS_INT for position info.
5037 (forward_point): Remove prototype of defunct function.
5038 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
5039 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
5040 (syms_of_textprop, set_text_properties): Remove prototypes that are
5041 already in intervals.h.
5042
5043 * intervals.h (struct interval): Move from lisp.h.
5044 Use EMACS_INT for position and size info.
5045
5046 * coding.c: Include intervals.h for Fset_text_properties.
5047
5048 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
5049 position and length information.
5050
2765b457
SM
50512003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5052
5053 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
5054 position and length information.
5055
2410d73a
SM
50562003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5057
5058 Change overlays_after and overlays_before so the overlays themselves
5059 are linked into lists, rather than using cons cells. After all each
5060 Lisp_Misc already occupies 5 words, so we can add a `next' field to
5061 Lisp_Overlay for free and save up one cons cell per overlay (not
5062 to mention one indirection when traversing the list of overlay).
5063
5064 * lisp.h (struct Lisp_Overlay): New field `next'.
5065
5066 * buffer.h (struct buffer): Change overlays_before and overlays_after
5067 from Lisp lists of overlays to pointers to overlays.
5068
5069 * buffer.c (overlay_strings, recenter_overlay_lists):
5070 Fix typo in eassert in last commit.
5071 (unchain_overlay): New function.
5072 (add_overlay_mod_hooklist): Use AREF.
5073 (copy_overlays, reset_buffer, overlays_at, overlays_in)
5074 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
5075 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
5076 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
5077 (report_overlay_modification, evaporate_overlays, init_buffer_once):
5078 Adjust to new type of overlays_(before|after).
5079
5080 * alloc.c (mark_object): Mark the new `next' field of overlays.
5081 (mark_buffer): Manually mark the overlays_(after|before) fields.
5082
5083 * coding.c (run_pre_post_conversion_on_str):
5084 * editfns.c (overlays_around):
5085 * xdisp.c (load_overlay_strings):
5086 * fileio.c (Finsert_file_contents):
5087 * indent.c (current_column):
5088 * insdel.c (signal_before_change, signal_after_change):
5089 * intervals.c (set_point_both):
5090 * print.c (temp_output_buffer_setup): Use new type for
5091 overlays_(before|after).
5092
04812929
SM
50932003-07-08 Stefan Monnier <monnier@cs.yale.edu>
5094
5095 * buffer.c (report_overlay_modification): Don't run hooks while
5096 traversing the list of overlays.
5097
5098 * buffer.h (struct buffer): Use an int for overlay_center.
5099 (overlays_at, evaporate_overlays, recenter_overlay_lists)
5100 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
5101
5102 * buffer.c (reset_buffer, recenter_overlay_lists)
5103 (adjust_overlays_for_insert, adjust_overlays_for_delete)
5104 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
5105 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
5106 (overlays_at, evaporate_overlays, recenter_overlay_lists)
5107 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
5108
5109 * xdisp.c (fast_find_position): Remove unused var.
5110
5111 * cmds.c (Qexpand_abbrev): New sym.
5112 (syms_of_cmds): Initialize it.
5113 (internal_self_insert): Use it to call expand-abbrev.
5114
2e7ecf15
KS
51152003-07-09 Kim F. Storm <storm@cua.dk>
5116
f9711de4 5117 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
2e7ecf15 5118 was configured with --without-xim.
42f81f64 5119 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 5120
c6de56a0
RS
51212003-07-07 Richard M. Stallman <rms@gnu.org>
5122
5123 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
5124
5125 * alloc.c (Fgarbage_collect): Doc fix.
5126
b93fb365
KH
51272003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
5128
5129 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
5130
bfe1a3f7
SM
51312003-07-06 Stefan Monnier <monnier@cs.yale.edu>
5132
04812929
SM
5133 * minibuf.c (read_minibuf): UNGCPRO before returning.
5134 (Ftry_completion, Fall_completions): Doc fix.
5135
bfe1a3f7
SM
5136 * alloc.c (live_float_p): Check that p is not past the `floats' array,
5137 now that `floats' is not the last element of the struct any more.
5138
ee79d1aa
JR
51392003-07-06 Jason Rumney <jasonr@gnu.org>
5140
5141 * w32term.h (ClipboardSequence_Proc): New type.
5142
5143 * w32fns.c (clipboard_sequence_fn): New variable.
5144 (globals_of_w32fns): Initialize it.
5145
5146 * w32select.c (last_clipboard_sequence_number): New variable.
5147 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
5148 number if possible.
5149
49723c04
SM
51502003-07-06 Stefan Monnier <monnier@cs.yale.edu>
5151
4698665f
SM
5152 * m/amdx86-64.h (MARKBIT):
5153 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
5154 MARKBIT and ARRAY_MARK_FLAG any more.
5155
5156 * m/hp800.h (XSETMARKBIT):
5157 * m/sr2k.h (XSETMARKBIT):
5158 * lisp.h (XSETMARKBIT): Remove unused macro.
5159
49723c04
SM
5160 * lisp.h (mark_object): Change prototype.
5161
5162 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
5163 (last_marked): Change accordingly.
5164 (mark_interval, mark_maybe_object, mark_maybe_pointer)
5165 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
5166 (mark_buffer): Update calls to mark_object.
5167
5168 * bytecode.c (mark_byte_stack):
5169 * fns.c (sweep_weak_table):
5170 * keyboard.c (mark_kboards): Update calls to mark_object.
5171
1d660eca
JR
51722003-07-06 Jason Rumney <jasonr@gnu.org>
5173
5174 * alloc.c (struct ablock): Only include padding when there is some.
5175
618b5ae4
SM
51762003-07-04 Stefan Monnier <monnier@cs.yale.edu>
5177
5178 * alloc.c (ALIGN): Add casts to simplify usage.
5179 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
5180 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
5181 (struct ablock, struct ablocks): New types.
5182 (free_ablock): New global var.
5183 (lisp_align_malloc, lisp_align_free): New functions.
5184 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
5185 (struct float_block): Reorder and add gcmarkbits.
5186 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
5187 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
5188 (init_float, make_float): Use lisp_align_malloc.
5189 (free_float, live_float_p): Don't use `type' any more.
5190 (make_float): Use FLOAT_UNMARK to access to mark bit.
5191 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
5192 Use FLOAT_MARKED_P to access the mark bit.
5193 (pure_alloc): Simplify use of ALIGN.
5194 (mark_object): Use FLOAT_MARK to access the mark bit.
5195 (gc_sweep): Use new macros to access the float's mark bit.
5196 (init_alloc_once): Init free_ablock.
5197
5198 * lisp.h (struct Lisp_Float): Remove unused field `type'.
5199
3ef06d12
SM
52002003-06-27 Stefan Monnier <monnier@cs.yale.edu>
5201
5202 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
5203 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
5204 (allocate_buffer): Move.
5205 (string_bytes): Don't mask markbit of `size_byte'.
5206 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
5207 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
5208 Use the `size' field of buffers (rather than the `name' field) for
5209 the mark bit, as is done for all other vectorlike objects.
5210 Use the new macros to access the mark bit of vectorlike objects.
5211
e81043aa
RS
52122003-06-26 Richard M. Stallman <rms@gnu.org>
5213
5214 * puresize.h (BASE_PURESIZE): Increment base size.
5215
5216 * xdisp.c (fast_find_position): Enable Gerd's new definition.
5217
5218 * xterm.c (xim_initialize): Undo previous change.
5219
2d0834cc
SM
52202003-06-26 Stefan Monnier <monnier@cs.yale.edu>
5221
5222 * alloc.c (survives_gc_p): Simplify.
5223
5224 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
5225
5226 * window.c (Fset_window_dedicated_p): Simplify.
5227 (display_buffer_1): Don't raise the win from which minibuf was entered.
5228 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
5229 (Fminibuffer_selected_window): Simplify.
5230
5231 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
5232
5233 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
5234 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
5235
5236 * insdel.c (check_markers, adjust_markers_for_delete)
5237 (adjust_markers_for_insert, adjust_markers_for_replace)
5238 (prepare_to_modify_buffer, RESTORE_VALUE):
5239 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
5240 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
5241 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
5242 * alloc.c (Fmake_marker, free_marker, gc_sweep):
5243 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
5244 * editfns.c (save_excursion_restore, transpose_markers):
5245 * window.c (delete_window):
5246 * xdisp.c (message_dolog): Update for new types.
5247
d54ae3d8
JD
52482003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5249
a5f696ac
JD
5250 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
5251 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 5252 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
5253
5254 * frame.c (make_frame): Initialize default_face_done_p.
5255
5256 * frame.h (struct frame): Add default_face_done_p.
5257
d54ae3d8
JD
5258 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
5259 will be defined.
5260
2336fe58
SM
52612003-06-25 Stefan Monnier <monnier@cs.yale.edu>
5262
5263 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
5264 Initialize the new field `gcmarkbit'.
5265 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
5266 (mark_interval_tree): Don't mark the tree separately from the nodes.
5267 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
5268 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
5269 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
5270
5271 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
5272 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
5273 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
5274 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
5275 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
5276
bcea31c2
DL
52772003-06-24 Dave Love <fx@gnu.org>
5278
5279 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
5280
5281 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
5282 from gnulib.
5283
2601f59e
RS
52842003-06-21 Richard M. Stallman <rms@gnu.org>
5285
5286 * fileio.c (Fwrite_region): Alternate messages
5287 for append and partial write.
5288
5289 * keyboard.c (read_key_sequence): When converting upcase fn key to
5290 downcase, update fkey and keytran so `backspace' gets translated.
5291
5292 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
5293
5294 * process.c (wait_reading_process_input): Don't signal SIGIO
5295 in batch mode.
5296
b5d2c621
KH
52972003-06-17 Kenichi Handa <handa@m17n.org>
5298
5299 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
5300 composite.h.
5301
5302 * xselect.c: Don't include charset.h, coding.h, composite.h.
5303 (Qforeign_selection): New variable.
5304 (syms_of_xselect): Intern and static it.
5305 (selection_data_to_lisp_data): Return a unibyte string made from
5306 data with `foreign-selection' text property.
5307
6793bc63
SM
53082003-06-15 Stefan Monnier <monnier@cs.yale.edu>
5309
5310 * termhooks.h (EVENT_INIT): New macro.
5311
5312 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
5313
5314 * alloc.c (mark_kboards): Move to keyboard.c.
5315
5316 * keyboard.c (record_asynch_buffer_change, read_avail_input):
5317 * xterm.c (x_dispatch_event):
5318 * xmenu.c (find_and_call_menu_selection):
5319 * xdisp.c (handle_tool_bar_click):
5320 * w32menu.c (menubar_selection_callback):
5321 * sysdep.c (kbd_input_ast, read_input_waiting):
5322 * msdos.c (dos_rawgetc):
5323 * macterm.c (mac_check_for_quit_char):
5324 * macmenu.c (menubar_selection_callback):
5325 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
5326 data to kbd_buffer_store_event.
5327
b3ea810c
KS
53282003-06-15 Kim F. Storm <storm@cua.dk>
5329
5330 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 5331 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 5332
b8f75eda
KG
53332003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
5334
5335 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
5336
ba92ce48
KH
53372003-06-12 Kenichi Handa <handa@m17n.org>
5338
5339 * fileio.c (Fwrite_region): Save and restore restriction.
5340
b80263be
DL
53412003-06-12 Dave Love <fx@gnu.org>
5342
5343 * alloca.c (alloca): Declare arg as size_t.
5344
6793bc63
SM
5345 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
5346 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 5347
b23c0a83
DL
53482003-06-11 Dave Love <fx@gnu.org>
5349
5350 * search.c (shrink_regexp_cache): Use xrealloc.
5351 (syms_of_search): Use xmalloc.
5352
700e47c2
KS
53532003-06-10 Kim F. Storm <storm@cua.dk>
5354
5355 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
5356 Adjust phys_cursor.x to be relative to window box, rather than
5357 text area before checking -- to ensure cursor is redrawn when
5358 exposing window.
5359 Note: This also fixes a similar (older) bug if display margins
5360 are present.
5361
f11aa0b2
KH
53622003-06-06 Kenichi Handa <handa@m17n.org>
5363
5364 * coding.c (encoding_buffer_size): If coding->type is
5365 coding_type_ccl, double magnification on CRLF encoding.
5366
3d143690
JR
53672003-06-06 Jason Rumney <jasonr@gnu.org>
5368
5369 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
5370 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
5371
5372 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
5373 Mac too.
5374
f16205ca
DL
53752003-06-05 Dave Love <fx@gnu.org>
5376
b23c0a83
DL
5377 * strftime.c: Merge changes from gnulib.
5378
f16205ca
DL
5379 * mktime.c (__mktime_internal): Merge changes from gnulib
5380 involving year 69 and dst2.
5381
5382 Changes to merge with gnulib version and be consistent with the
5383 autoconf test:
5384
6793bc63
SM
5385 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
5386 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
5387 [HAVE_LOCALE_H]: Include locale.h.
5388 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
5389
9b87a0bc
KS
53902003-06-05 Kim F. Storm <storm@cua.dk>
5391
5392 * window.c (coordinates_in_window): Convert X and Y to window
5393 relative coordinates inside mode-line and header-line parts.
5394 Convert X and Y to margin area relative coordinates inside left
5395 and right display margin parts.
5396
5a8a15ec
JR
53972003-06-05 Jason Rumney <jasonr@gnu.org>
5398
5399 * w32fns.c (add_system_logical_colors_to_map): New function.
5400 (Fx_open_connection): Use it.
5401
01ed8ff1
SM
54022003-06-04 Stefan Monnier <monnier@cs.yale.edu>
5403
5404 * process.c (allocate_pty): Revert part of the previous patch.
5405 (Faccept_process_output): Simplify.
5406
b427b65d
JR
54072003-06-04 Jason Rumney <jasonr@gnu.org>
5408
5409 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
5410
5411 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
5412 (lispy_mouse_wheel_names): Remove.
5413 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
5414 Always define drag_and_drop_syms.
5415
5416 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
5417 WHEEL_EVENT events.
5418
914a8c47
SM
54192003-06-03 Stefan Monnier <monnier@cs.yale.edu>
5420
01ed8ff1
SM
5421 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
5422
914a8c47
SM
5423 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
5424
adcb132c
JD
54252003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5426
5427 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
5428 menu item label.
5429
be781fa7
RS
54302003-06-03 Richard M. Stallman <rms@gnu.org>
5431
5432 * window.c (Fwindow_edges): Doc fix.
5433 (Fwindow_pixel_edges, Fwindow_inside_edges)
5434 (Fwindow_inside_pixel_edges): New functions.
5435 (syms_of_window): defsubr them.
5436
5437 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
5438 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
5439
914a8c47
SM
54402003-06-02 Stefan Monnier <monnier@cs.yale.edu>
5441
5442 * dispnew.c (Fsit_for): Don't lie about the number of args.
5443
5b07197a
DL
54442003-06-02 Dave Love <fx@gnu.org>
5445
5446 * callproc.c: Use HAVE_FCNTL_H, not USG5.
5447 (syms_of_callproc) <process-environment>: Doc fix.
5448
5449 * doc.c: Use HAVE_FCNTL_H, not USG5.
5450
5451 * xfaces.c (font_rescale_ratio): Fix for K&R.
5452
5453 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
5454
5455 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
5456
5457 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
5458
5459 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
5460 (xg_create_frame_widgets): Use ENCODE_UTF_8.
5461
d7107586 5462 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
5463
5464 * xmenu.c (ENCODE_MENU_STRING): New.
5465 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
5466 Use it.
5467
5468 * coding.h (ENCODE_UTF_8): New.
5469 (Qutf_8): Declare.
5470
5471 * coding.c (Qutf_8): New.
5472 (syms_of_coding): Intern it.
5473
5474 * fns.c: Doc fixes.
5475
7335b336
KH
54762003-06-02 Kenichi Handa <handa@m17n.org>
5477
5478 * buffer.c (Fset_buffer_multibyte): Fix previous change.
5479
914a8c47
SM
54802003-06-01 Stefan Monnier <monnier@cs.yale.edu>
5481
5482 * lread.c (openp): Make sure STR is a string.
5483
9862c135
JR
54842003-06-01 David Ponce <david@dponce.com>
5485
5486 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
5487 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
5488
5489 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
5490 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
5491 (discard_mouse_events): Discard WHEEL_EVENT events too.
5492 (lispy_wheel_names, wheel_syms): New.
5493 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
5494 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
5495 defined.
914a8c47 5496 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
5497
5498 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
5499 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
5500 WHEEL_EVENT events.
5501
f984e73e
JPW
55022003-05-31 John Paul Wallington <jpw@gnu.org>
5503
5504 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
5505 timer are in lisp/emacs-lisp.
5506
1efcd78f
KH
55072003-05-31 Kenichi Handa <handa@m17n.org>
5508
458c8af4
KH
5509 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
5510 region when a buffer is changed to unibyte.
5511
1efcd78f
KH
5512 * charset.h (VALID_LEADING_CODE_P): New macro.
5513 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
5514
778e2804
KH
5515 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
5516 is nonzero, accept multibyte form of eight-bit-control chars.
5517 (decode_composition_emacs_mule): Likewise.
5518 (decode_coding_emacs_mule): Likewise.
5519 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
5520 multibyte form of eight-bit-control chars.
5521
5522 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
5523 (Finsert_file_contents): If coding-system-for-read is bound to
5524 Qauto_save_coding, use the coding system emacs-mule with special
5525 setting for recovering a file.
5526 (choose_write_coding_system): On auto saving, use the coding
5527 system emacs-mule with special setting for auto saving.
5528 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
5529
034060e4
KH
55302003-05-30 Kenichi Handa <handa@m17n.org>
5531
5532 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
5533 properly before calling ccl_driver.
5534
778e2804 5535 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4
KH
5536
5537 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
5538 nonzero.
5539 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
5540 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
5541
595f5aa5
GM
55422003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
5543
5544 * xfaces.c (realize_default_face): Do not abort if lface is
5545 non-existent - reverts change from 2003-05-19.
5546
103e0180
KH
55472003-05-29 Kenichi Handa <handa@m17n.org>
5548
5549 * coding.c (decode_coding_iso2022): Pay attention to the byte
5550 sequence of CTEXT extended segment, and retain those bytes as is.
5551
55522003-05-28 Kenichi Handa <handa@m17n.org>
5553
5554 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
5555 of CODING_REPLACEMENT_CHARACTER.
5556 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
5557 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
5558 check this flag on encoding.
5559 (encode_coding_sjis_big5): Check
5560 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
5561 (Fset_terminal_coding_system_internal): Set
5562 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
5563 instead of setting CODING_FLAG_ISO_SAFE flag in
5564 terminal_coding.flags.
5565
5566 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
5567 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
5568 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
5569
ff6a3bfb 55702003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 5571
ff6a3bfb
RS
5572 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
5573
5574 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 5575
1963c428
KS
55762003-05-28 Kim F. Storm <storm@cua.dk>
5577
5578 * xdisp.c (expose_window): Fix error in calculation of
5579 window relative coordinates of area to redisplay.
5580
2b5d4601
JR
55812003-05-27 Jason Rumney <jasonr@gnu.org>
5582
5583 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
5584
1c64a4a2
JB
55852003-05-27 David Ponce <david@dponce.com>
5586
5587 Handle W32 mouse wheel events as mouse click events, like in X.
5588
5589 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
5590 MOUSE_WHEEL_EVENT anymore.
5591
5592 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
5593 Scrolling down/up the mouse wheel is respectively mapped to mouse
5594 button 4 and 5.
5595 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
5596 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
5597 WM_MOUSEWHEEL events.
5598
2d031b89
AS
55992003-05-27 Andreas Schwab <schwab@suse.de>
5600
20464fdf
AS
5601 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
5602
2d031b89
AS
5603 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
5604 partially visible line.
5605
5606 * alloc.c (Fgarbage_collect): Fix last change.
5607
97bc76d4
JPW
56082003-05-26 John Paul Wallington <jpw@gnu.org>
5609
5610 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
5611
56613f06
SM
56122003-05-25 Stefan Monnier <monnier@cs.yale.edu>
5613
5614 * window.c (Fset_window_buffer): Add type of `keep_margins'.
5615 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
5616
5617 * window.h (window_box_text_cols): Declare.
5618
5619 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
5620 (x_draw_vertical_border): Remove unused var `f'.
5621
5622 * xfaces.c (build_scalable_font_name): Remove `unused var
5623 pixel_size' warning.
5624
5625 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
5626
5627 * unexelf.c (unexec): Remove `unused var n' warning.
5628
5629 * strftime.c (my_strftime_localtime_r): Remove `defined but
5630 unused' warning.
5631
5632 * process.c (allocate_pty): Remove `unused var stb' and
5633 `cp might be used uninitialized' warnings.
5634
5635 * dispnew.c (mode_line_string): Remove unused var `f'.
5636
5637 * coding.c (find_safe_codings): Remove unused var `i'.
5638
5639 * bytecode.c (Fbyte_code): Remove `unused val' warning.
5640
5641 * buffer.c (Fkill_buffer): Remove unused var `list'.
5642
5643 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
5644
93421a1f
JD
56452003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5646
5647 * frame.c (make_frame): Condition want_fullscreen with
5648 HAVE_WINDOW_SYSTEM.
5649
c4b8aebc
JB
56502003-05-25 Juanma Barranquero <lektu@terra.es>
5651
5652 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
5653 (Fwindow_scroll_bars): Fix typo in docstring.
5654
0416870b
KS
56552003-05-24 Kim F. Storm <storm@cua.dk>
5656
5657 The following changes serve several purposes:
5658
5659 1) Swap the position of fringes and display margins in windows, i.e.
5660 the fringes are now displayed between the margins and the text area
5661 (by default).
5662
5663 2) Allow fringe and scroll bar parameters to be set per-buffer and
5664 per-window (like display margins). Such settings are now stored
5665 in window configurations, preserved when frames are resized, and
9018a88e 5666 copied when windows are split vertically or horizontally.
0416870b
KS
5667 Several bugs related to display margins have been fixed.
5668
5669 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 5670
0416870b
KS
5671 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
5672 rather than FRAME_WIDTH (FRAME_FONT (f)).
5673
5674 5) Introduce a consistent naming of variables, members and macros
5675 depending on whether their value is measured in pixels or in
5676 canonical columns/lines. Pixel dimensions are named *_width and
5677 *_height, while canonical columns/lines are named *_cols and
5678 *_lines. Pixel positions are named *_x and *_y, while column/line
5679 positions are named *_col and *_line.
5680
5681 6) Consolidate more of the X, W32, and MAC gui code by moving
5682 common data into struct frame, and generalize it for the non-gui
5683 case by using suitable defaults.
5684
5685 7) Cleanup and consolidate the macros controlling frame and window
5686 layout into frame.h and window.h, and generalize the use of the
5687 various window_box_* functions (enhanced to handle the new fringe
5688 position and the per-window fringe and scroll bar settings).
5689
5690 * frame.h (struct frame): Rename members height to text_lines,
5691 width to text_cols, window_height to total_lines, window_width to
5692 total_cols, new_height to new_text_lines, new_width to
5693 new_text_cols. All uses changed.
5694 (struct frame): New members which consolidate common members of
5695 x_output, w32_output, and mac_output structures: left_pos,
5696 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
5697 win_gravity, size_hint_flags, border_width, internal_border_width,
5698 line_height, fringe_cols, left_fringe_width, right_fringe_width,
5699 want_fullscreen. All uses changed.
5700 (struct frame): New member column_width contaning the canonical
5701 column width, analogue to line_height. All uses changed.
5702 (struct frame): Rename members scroll_bar_pixel_width to
5703 config_scroll_bar_width, and scroll_bar_cols to
5704 config_scroll_bar_cols. All uses changed.
5705 (struct frame): New member scroll_bar_actual_width which
5706 consolidates and renames the vertical_scroll_bar_extra member of
5707 x_output, w32_output, and mac_output structures. All uses changed.
5708 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
5709 from x/w32/macterm.h files. All uses changed. Also change code
5710 which referred to f->output_data...->pixel_height.
5711 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
f63fd14e 5712 from x/w32/macterm.h files. All uses changed. Also change code
0416870b
KS
5713 which referred to f->output_data...->pixel_width.
5714 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
5715 Also change code which referred to f->height.
5716 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
5717 Also change code which referred to f->width.
5718 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
5719 to update new_text_lines and new_text_cols members directly.
5720 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
5721 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
5722 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
5723 FRAME_SCROLL_BAR_COLS. All uses changed.
5724 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
5725 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
5726 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
5727 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
5728 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
5729 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
5730 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
5731 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
5732 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
5733 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
5734 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
5735 return line_height member (it now has proper value also for
5736 non-window frames).
5737 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
5738 return new column_width member (rather than the default font width).
5739 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
5740 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
5741 from x/w32/macterm.h files. Unconditionally return corresponding
5742 member of frame structure (they now have proper values also for
5743 non-window frames).
5744 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
5745 Calculate return value from left and right widths.
5746 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
5747 internal_border_width member (has proper value for non-window frame).
5748 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
5749 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
5750 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
5751 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
5752 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
5753 consolidated from xterm.h, macterm.h, and w32term.h.
5754 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
5755 consolidated from xterm.h, macterm.h, and w32term.h.
5756 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
5757 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
5758 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
5759 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
5760 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
5761 consolidated from x/mac/w32term.h.
5762 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
5763 consolidated from x/mac/w32term.h.
5764 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
5765 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
5766 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
5767 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
5768
5769 * window.h (struct window): Rename members left to left_col,
5770 top to top_line, height to total_lines, width to total_cols,
5771 left_margin_width to left_margin_cols, right_margin_width to
5772 right_margin_cols, orig_height to orig_total_lines, orig_top to
5773 orig_top_line. All uses changed.
5774 (struct window): New members left_fringe_width, right_fringe_width,
5775 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
5776 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
5777 New macros primarily used to simplify other macros.
5778 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
5779 referred to XINT (w->width).
5780 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
5781 referred to XINT (w->height).
5782 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
5783 referred to XINT (w->width) * canon_x_unit.
5784 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
5785 referred to XINT (w->height) * canon_y_unit.
5786 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
5787 referred to XINT (w->left).
5788 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
5789 all uses and code that referred to XINT (w->left) + XINT (w->width).
5790 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
5791 referred to XINT (w->top).
5792 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
5793 referred to XINT (w->top) + XINT (w->height).
5794 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
5795 referred to XINT (w->left) * canon_x_unit.
5796 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
5797 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
5798 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
5799 referred to XINT (w->top) * canon_y_unit.
5800 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
5801 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
5802 (WINDOW_LEFTMOST_P): New macro.
5803 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
5804 All uses changed.
5805 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
5806 All uses changed.
5807 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
5808 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
5809 Do not exclude left fringe width.
5810 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
5811 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
5812 Do not exclude fringe widths.
5813 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
5814 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
5815 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
5816 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
5817 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
5818 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
5819 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
5820 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
5821 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
5822 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
5823 New macros. Change code which referenced corresponding
5824 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
5825 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
5826 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
5827 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
5828 allow per-window scroll-bar settings.
5829 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
5830 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
5831 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
5832 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
5833 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
5834 FRAME_SCROLL_BAR_WIDTH.
5835 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 5836 (WINDOW_SCROLL_BAR_AREA_X): New macros.
0416870b
KS
5837 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
5838 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
5839 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
5840 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
5841 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
5842 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
5843 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
5844 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
5845 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
5846 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
5847 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
5848 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
5849 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
5850 (window_from_coordinates): Update prototype.
5851 (Fset_window_buffer): Update EXFUN.
5852 (set_window_buffer): Update prototype.
9018a88e 5853
0416870b 5854 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 5855 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
5856 changed.
5857 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
5858 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
5859 internal_border_width is now set to 0 for non-window frames.
5860 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
5861 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
5862 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
5863 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
5864 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
5865 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
5866 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
5867 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
5868 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 5869 Move to window.h and renamed [see window.h changes].
0416870b
KS
5870 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
5871 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
5872 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
5873 Use WINDOW_TOTAL_LINES.
0416870b
KS
5874 (frame_update_line_height): Remove prototype.
5875
5876 * buffer.h (struct buffer): Rename members measured in columns:
5877 left_margin_width to left_margin_cols, right_margin_width to
5878 right_margin_cols. All uses changed.
5879 New members left_fringe_width, right_fringe_width,
5880 fringes_outside_margins for per-buffer fringe settings.
5881 New members scroll_bar_width and vertical_scroll_bar_type for
5882 per-buffer scroll bar settings.
5883
5884 * buffer.c (init_buffer_once): Set buffer_defaults and
5885 buffer_local_flags for new buffer-local variables
5886 left_fringe_width, right_fringe_width, fringes_outside_margins,
5887 scroll_bar_width, and vertical_scroll_bar_type.
5888 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
5889 default-* variables for them.
5890
5891 * dispnew.c: Make (many) trivial substitutions for renamed and
5892 new macros in dispextern.h, frame.h and window.h.
5893 (mode_line_string): No need to adjust width for mode lines, as it
5894 is already adjusted by the caller.
5895 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 5896
0416870b
KS
5897 * frame.c: Make (many) trivial substitutions for renamed and
5898 new macros in dispextern.h, frame.h and window.h.
5899 (make_frame): Initialize left_fringe_width, right_fringe_width,
5900 fringe_cols, scroll_bar_actual_width, border_width,
5901 internal_border_width, column_width, line_height, x_pixels_diff,
5902 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
5903 members with values suitable for a non-window frames.
5904
5905 * gtkutil.c: Make (many) trivial substitutions for renamed and
5906 new macros in dispextern.h, frame.h and window.h.
9018a88e 5907
0416870b
KS
5908 * indent.c: Make (few) trivial substitutions for renamed and
5909 new macros in dispextern.h, frame.h and window.h.
5910
5911 * keyboard.c: Make (many) trivial substitutions for renamed and
5912 new macros in dispextern.h, frame.h and window.h.
5913 (make_lispy_event): Use window positions returned from
5914 window_from_coordinates when constructing the lisp event for
5915 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
5916 (incorrect) values locally.
5917 (make_lispy_movement): Use window positions returned from
5918 window_from_coordinates when constructing the lisp event, rather
5919 than calculating (incorrect) values locally.
5920
5921 * scroll.c: Make (some) trivial substitutions for renamed and
5922 new macros in dispextern.h, frame.h and window.h.
5923
5924 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
5925 scroll-bars.
5926
5927 * sysdep.c: Make (few) trivial substitutions for renamed and
5928 new macros in dispextern.h, frame.h and window.h.
5929
5930 * term.c: Make (some) trivial substitutions for renamed and
5931 new macros in dispextern.h, frame.h and window.h.
5932
5933 * widget.c: Make (few) trivial substitutions for renamed and
5934 new macros in dispextern.h, frame.h and window.h.
5935
5936 * window.c: Make (many) trivial substitutions for renamed and
5937 new macros in dispextern.h, frame.h and window.h.
5938 (make_window): Initialize new members
5939 left_margin_cols, right_margin_cols, left_fringe_width,
5940 right_fringe_width, fringes_outside_margins, scroll_bar_width,
5941 and vertical_scroll_bar_type.
5942 (coordinates_in_window): Adapted to new fringe/margin positions
9018a88e 5943 and per-window fringes and scroll-bars.
0416870b 5944 Fix bug related to incorrectly adjusting coordinates by
9018a88e 5945 frame's internal_border_width (the effect normally negible since
0416870b
KS
5946 the internal_border_width is typically 0 or 1 pixel, but very
5947 noticeable for an internal_border_width of e.g. 25 pixels).
5948 Upon successful return (other than ON_NOTHING), the coordinates
5949 are now always properly converted to window relative for the
5950 given display element.
5951 (window_from_coordinates): Add new parameters wx and wy to
5952 return the window relative x and y position in the returned
5953 window and part. A null arg means, don't return the position.
5954 All callers changed.
5955 (adjust_window_margins): New function which may reduce the width
5956 of the display margins if a window's text area is too small after
5957 resizing or splitting windows.
5958 (size_window): Fix bug that did not account for display margin
5959 widths when checking the minimum width of a window; use
5960 adjust_window_margins.
5961 (set_window_buffer): Call Fset_window_fringes and
5962 Fset_window_scroll_bars to setup per-window elements.
5963 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
5964 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
5965 (e.g. after splitting a window or resizing the frame).
5966 All callers changed.
0416870b
KS
5967 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
5968 (Fsplit_window): Duplicate original window's display margin,
5969 fringe, and scroll-bar settings; then call Fset_window_buffer with
5970 KEEP_MARGINS non-nil. This fixes a bug which caused a split
5971 window to only preserve the display margins in one of the windows.
c4b8aebc 5972 When splitting horizontally, call adjust_window_margins on both
0416870b 5973 windows to ensure that the text area of the new windows is non too
f9711de4 5974 narrow. This fixes a bug which could cause Emacs to trap if the
0416870b
KS
5975 width of the split window was less than the width of the display
5976 margins.
9018a88e
SM
5977 (window_box_text_cols): Renamed from window_internal_width.
5978 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
5979 Fix bug that caused vertical separator to be subtracted also on
5980 window frames. Fix another bug that did not reduce the returned
5981 value by the columns used for display margins.
5982 (window_scroll_line_based): Fix bug related to scrolling too much
5983 when display margins are present (implicitly fixed by the fix to
5984 window_box_text_cols).
5985 (scroll_left, scroll_right): Fix bug related to scrolling too far
5986 by default when display margins are present (implicitly fixed by
5987 the fix to window_box_text_cols).
5988 (struct saved_window): Rename members left to left_col, top to
5989 top_line, width to total_cols, height to total_lines, orig_top to
5990 orig_top_line, orig_height to orig_total_lines. All uses changed.
5991 New members left_margin_cols, right_margin_cols,
5992 left_fringe_width, right_fringe_width, fringes_outside_margins,
5993 scroll_bar_width, and vertical_scroll_bar_type for saving
5994 per-window display elements.
5995 (Fset_window_configuration): Restore display margins, fringes,
5996 and scroll bar settings. This fixes a bug which caused display
5997 margins to be discarded when saving and restoring a window
5998 configuration.
5999 (save_window_save): Save display margins, fringes, and scroll bar
6000 settings. This fixes a bug which caused display margins to be
6001 discarded when saving and restoring a window configuration.
6002 (Fset_window_margins): Do nothing if display margins are not
6003 really changed. Otherwise, call adjust_window_margins to ensure
6004 the text area doesn't get too narrow. This fixes a bug which
f9711de4 6005 could cause Emacs to trap if setting display margins wider than
0416870b
KS
6006 the width of the window.
6007 (Fset_window_fringes): New defun to allow user to specifically set
6008 this window's fringe widths and position vs. display margins.
6009 (Fwindow_fringes): New defun to return window's actual fringe
6010 settings.
6011 (Fset_window_scroll_bars): New defun to allow user to specifically
6012 set this window's scroll bar width and position.
6013 (Fwindow_scroll_bars): New defun to return window's actual scroll
6014 bar settings.
6015 (compare_window_configurations): Also compare display margins,
6016 fringes, and scroll bar settings.
6017 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
6018
6019 * xdisp.c: Make (many) trivial substitutions for renamed and
6020 new macros in dispextern.h, frame.h and window.h.
6021 (window_box_width): Adapt to per-window fringes and scroll bars,
f63fd14e 6022 and new fringe vs. display margin position. Note that returned
0416870b
KS
6023 value is no longer guaranteed to be a whole multiple of the frame
6024 column width, since per-window fringes may now be any width.
6025 (window_box_left_offset): New function like window_box_left, but
6026 value is relative to left border of window (rather than frame).
6027 (window_box_right_offset): New function like window_box_right,
6028 but value is relative to left border of window.
6029 (window_box_left): Adapt to per-window fringes and scroll bars,
6030 and new fringe vs. display margin position. Simplify by using
6031 WINDOW_LEFT_EDGE_X and window_box_left_offset.
6032 (window_box): Allow null args for unnecessary return values;
6033 change/simplify relevant callers.
6034 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
6035 and new fringe vs. display margin position.
6036 Use window_box_left_offset and window_box_right_offset
0416870b 6037 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
6038 scroll bars, and new fringe vs. display margin position.
6039 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
6040 (draw_fringe_bitmap): Rework to handle per-window fringes and new
6041 fringe vs. display margin position.
6042 (hscroll_window_tree): Use window_box_width instead of window_box.
a64387ee
JB
6043 (redisplay_window): Adapt to per-window scroll bars.
6044 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
6045 bars, and new fringe vs. display margin position.
6046 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
a64387ee 6047 (x_clear_end_of_line): Adapt to per-window fringes and scroll
0416870b
KS
6048 bars, and new fringe vs. display margin position. Fix bug which
6049 increased total width of full_width rows by width of scroll bars
6050 although window's total width already includes that.
6051 (x_fix_overlapping_area): Simplify using window_box_left_offset.
6052 (expose_area): Simplify using window_box_left_offset.
6053 (x_draw_vertical_border): Handle per-window scroll bar settings,
6054 mixing windows with left, right and no scroll bars.
6055
6056 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
6057 where it's used in x_list_fonts (for clarity).
6058 (frame_update_line_height): Remove unused function; functionality
6059 is now done directly when setting the default font in x_set_font.
6060
6061 * xfns.c: Make (many) trivial substitutions for renamed and
6062 new macros in dispextern.h, frame.h and window.h.
6063
6064 * xmenu.c: Make (some) trivial substitutions for renamed and
6065 new macros in dispextern.h, frame.h and window.h.
6066
6067 * xterm.h (struct x_output): Move members left_pos, top_pos,
6068 border_width, pixel_height, pixel_width, line_height,
6069 internal_border_width, vertical_scroll_bar_extra,
6070 left_fringe_width, right_fringe_width, fringe_cols,
6071 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6072 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
6073 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6074 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6075 (PIXEL_WIDTH, PIXEL_HEIGHT)
6076 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6077 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6078 frame.h and renamed [see frame.h changes].
6079 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6080 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6081 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6082 and renamed [see frame.h changes].
9018a88e 6083
0416870b
KS
6084 * xterm.c: Make (several) trivial substitutions for renamed and
6085 new macros in dispextern.h, frame.h and window.h.
6086 (x_draw_glyph_string_box): Adapt to per-window fringes and
6087 scroll-bars.
6088 (scroll_run): Adapt to new fringe position.
6089 (glyph_rect): Use window coordinates returned from
6090 window_from_coordinates rather than frame_to_window_pixel_xy.
6091 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6092 scroll-bars.
6093 (handle_one_xevent): Simplify a USE_GTK conditional.
6094 (x_clip_to_row): Remove superfluous whole_line_p arg and code
6095 (fringes are now inside margins, i.e. always in the clipping area).
6096 All callers changed.
6097 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6098 directly, then call compute_fringe_widths. Don't call
6099 frame_update_line_height.
6100
6101 * w32term.h (struct w32_output): Move members left_pos, top_pos,
6102 border_width, pixel_height, pixel_width, line_height,
6103 internal_border_width, vertical_scroll_bar_extra,
6104 left_fringe_width, right_fringe_width, fringe_cols,
6105 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6106 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
6107 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6108 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6109 (PIXEL_WIDTH, PIXEL_HEIGHT)
6110 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6111 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6112 frame.h and renamed [see frame.h changes].
6113 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6114 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6115 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6116 and renamed [see frame.h changes].
9018a88e 6117
0416870b
KS
6118 * w32term.c: Make (several) trivial substitutions for renamed and
6119 new macros in dispextern.h, frame.h and window.h.
6120 (x_draw_glyph_string_box): Adapt to per-window fringes and
6121 scroll-bars.
6122 (glyph_rect): Use window coordinates returned from
6123 window_from_coordinates rather than frame_to_window_pixel_xy.
6124 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6125 scroll-bars.
6126 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
6127 (fringes are now inside margins, i.e. always in the clipping area).
6128 All callers changed.
6129 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6130 directly, then call compute_fringe_widths. Don't call
6131 frame_update_line_height.
6132
6133 * w32console.c: Make (few) trivial substitutions for renamed and
6134 new macros in dispextern.h, frame.h and window.h.
6135
6136 * w32fns.c: Make (many) trivial substitutions for renamed and
6137 new macros in dispextern.h, frame.h and window.h.
6138
6139 * w32menu.c: Make (few) trivial substitutions for renamed and
6140 new macros in dispextern.h, frame.h and window.h.
6141
6142 * macterm.h (struct mac_output): Move members left_pos, top_pos,
6143 border_width, pixel_height, pixel_width, line_height,
6144 internal_border_width, vertical_scroll_bar_extra,
6145 left_fringe_width, right_fringe_width, fringe_cols,
6146 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6147 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
6148 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6149 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6150 (PIXEL_WIDTH, PIXEL_HEIGHT)
6151 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6152 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6153 frame.h and renamed [see frame.h changes].
6154 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6155 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6156 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6157 and renamed [see frame.h changes].
9018a88e 6158
0416870b
KS
6159 * macterm.c: Make (several) trivial substitutions for renamed and
6160 new macros in dispextern.h, frame.h and window.h.
6161 (x_draw_glyph_string_box): Adapt to per-window fringes and
6162 scroll-bars.
6163 (glyph_rect): Use window coordinates returned from
6164 window_from_coordinates rather than frame_to_window_pixel_xy.
6165 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6166 scroll-bars.
6167 (x_clip_to_row): Remove superfluous whole_line_p arg and code
6168 (fringes are now inside margins, i.e. always in the clipping area).
6169 All callers changed.
6170 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6171 directly, then call compute_fringe_widths. Don't call
6172 frame_update_line_height.
6173
6174 * macfns.c: Make (several) trivial substitutions for renamed and
6175 new macros in dispextern.h, frame.h and window.h.
9018a88e 6176 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
6177
6178 * macmenu.c: Make (few) trivial substitutions for renamed and
6179 new macros in dispextern.h, frame.h and window.h.
6180
6181 * msdos.h (struct x_output): Remove members left_pos, top_pos,
6182 and line_height, and use corresponding new members in struct
6183 frame. All uses changed.
6184 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
6185 superseeded by corresponding macros in frame.h.
6186
6187 * msdos.c: Make (several) trivial substitutions for renamed and
6188 new macros in dispextern.h, frame.h and window.h.
6189 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 6190 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
6191 (internal_terminal_init): No need to initialize line_height here;
6192 it now defaults to 1.
6193
9018a88e
SM
61942003-05-24 Stefan Monnier <monnier@cs.yale.edu>
6195
6196 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
6197 dropping `down' events.
6198
016bd3c0
AS
61992003-05-24 Andreas Schwab <schwab@suse.de>
6200
6201 * coding.c (find_safe_codings): Fix last change.
6202
4dacadcc
TTN
62032003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
6204
6205 * xfns.c (x_window): Fix typo from 2003-05-21 change.
6206
319830ce
SM
62072003-05-23 Stefan Monnier <monnier@cs.yale.edu>
6208
9018a88e
SM
6209 * xdisp.c (display_mode_element): Increase max depth.
6210 Simplify the error handling code. Use a different error string
6211 for the case where we hit the depth limit.
6212
319830ce
SM
6213 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
6214
6215 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
6216
62172003-05-21 Stefan Monnier <monnier@cs.yale.edu>
6218
6219 * intervals.c (get_local_map): Don't get char-property of previous
6220 point any more: get_pos_property already does it and better.
6221
c67de8ba
DL
62222003-05-21 Dave Love <fx@gnu.org>
6223
6224 [Merged from unicode branch.]
6225
6226 * xfns.c (x_window, x_window): Use use_xim.
6227
6228 * xterm.c (use_xim): Initialize.
6229 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
6230 (x_term_init): Maybe set use_xim.
6231
6232 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
6233
edd3ff1d
JR
62342003-05-21 Jason Rumney <jasonr@gnu.org>
6235
6236 * unexw32.c (_start): Remove _fmode initialization.
6237
6238 * emacs.c (main) [WINDOWSNT]: Move it here.
6239
463f55ee
DL
62402003-05-20 Dave Love <fx@gnu.org>
6241
6242 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
6243
af253914
RS
62442003-05-19 Richard M. Stallman <rms@gnu.org>
6245
6246 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
6247 as value for QCfont attribute.
6248 (realize_default_face): lface should already exist; crash if not.
6249 Specify 0 for FORCE_P when calling set_lface_from_font_name.
6250
6251 * frame.c (Fignore_event): Doc fix.
6252
1d211019
KH
62532003-05-19 Kenichi Handa <handa@m17n.org>
6254
6255 * coding.c (decode_coding_string): Handle post-read-conversion
6256 even if the coding doesn't require decoding.
6257
4dd68254
RS
62582003-05-18 Richard M. Stallman <rms@gnu.org>
6259
6260 * callproc.c (Fcall_process_region): Doc fix.
6261
14d87dc9
SM
62622003-05-17 Stefan Monnier <monnier@cs.yale.edu>
6263
deca5d96
SM
6264 * lread.c (Fload): Print a message if package is obsolete.
6265
14d87dc9
SM
6266 * window.c (Fselect_window): Add optional `norecord' arg.
6267 (select_window_1): Fold into Fselect_window.
6268 (select_window_norecord): New function.
6269 (temp_output_buffer_show): Use it. Preserve current buffer.
6270
6271 * window.h (Fselect_window): Update declaration.
6272
6273 * window.c (delete_window, Fother_window, Fset_window_configuration):
6274 * minibuf.c (read_minibuf):
6275 * macterm.c (x_new_focus_frame):
6276 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
6277 * callint.c (Fcall_interactively):
6278 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
6279
6280 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
6281
78f52183
DK
62822003-05-17 David Kastrup <dak@gnu.org>
6283
6284 * process.c (read_process_output): Back out change from 2003-03-09.
6285
14d87dc9
SM
62862003-05-17 Stefan Monnier <monnier@cs.yale.edu>
6287
6288 * editfns.c (get_pos_property): Don't assume that `object' = nil.
6289
6290 * textprop.c (text_property_stickiness): New arg `buffer'.
6291
6292 * intervals.h (text_property_stickiness): New arg `buffer'.
6293 (get_pos_property): Declare.
6294
6295 * intervals.c (get_local_map): Use get_pos_property, to obey
6296 stickiness and empty overlays.
6297 (create_root_interval, graft_intervals_into_buffer): Use BEG.
6298 (merge_properties, intervals_equal, merge_properties_sticky):
6299 Use XCAR, XCDR.
6300 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
6301
1fd1cc2f
RS
63022003-05-17 Richard M. Stallman <rms@gnu.org>
6303
4f9f637a
RS
6304 * minibuf.c (read_minibuf): If buffer is empty, record the default
6305 in the history.
6306 (Fminibuffer_complete_word): When deleting the overlap, take account
6307 of its real position.
6308
6309 * fns.c (map_char_table): Fix previous change.
6310
1fd1cc2f
RS
6311 * syntax.c (find_defun_start):
6312 When open_paren_in_column_0_is_defun_start,
6313 return beginning of buffer.
6314
6315 * lisp.h (map_char_table): Declare added arg.
6316
6317 * fns.c (map_char_table): New arg TABLE gets the master table.
6318 All calls changed.
6319 Process default and inheritance, resorting to Faref if necessary.
6320
6321 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
6322 (Faccessible_keymaps): Pass new arg to map_char_table.
6323
6324 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
6325
6326 * casetab.c (set_case_table): Pass new arg to map_char_table.
6327
6328 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
6329
6330 * lisp.h (specbinding_func): New typedef.
6331 (struct specbinding): Use specbinding_func, to put the `volatile'
6332 in the right place.
6333
6334 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
6335 to avoid GCC warning.
14d87dc9 6336
b4bd27c5
RS
63372003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
6338
14d87dc9 6339 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 6340
35fb885d
SM
63412003-05-15 Stefan Monnier <monnier@cs.yale.edu>
6342
6343 * keyboard.c (apply_modifiers): Don't fill the other cache.
6344
9a274fbd
SM
63452003-05-14 Stefan Monnier <monnier@cs.yale.edu>
6346
c55b5fad
SM
6347 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
6348
9a274fbd
SM
6349 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
6350 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
6351 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
6352 (Fset_window_configuration, Fcurrent_window_configuration)
6353 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
6354 (Fpos_visible_in_window_p, mark_window_cursors_off)
6355 (window_internal_height, window_internal_width, Frecenter)
6356 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
6357 (replace_buffer_in_all_windows, init_window_once, init_window)
6358 (syms_of_window, keys_of_window): Move from lisp.h.
6359 * lisp.h: Move window.c declarations to window.h.
6360
6361 * bytecode.c: Include window.h.
6362 * emacs.c: Include window.h.
6363
14d87dc9 6364 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
6365 (keyremap): Add `parent' field.
6366 (keyremap_step): Use it. Remove `parent' argument.
6367 (read_key_sequence): Setup and use the new `parent' field.
6368
fd93e331
SM
63692003-05-11 Stefan Monnier <monnier@cs.yale.edu>
6370
6371 * keyboard.c (adjust_point_for_property): Ensure termination.
6372
1c4001a1
SM
63732003-05-10 Stefan Monnier <monnier@cs.yale.edu>
6374
6375 * keyboard.c (follow_key): Remove dead variable `did_meta'.
6376 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
6377 duplicated handling of function-key-map and key-translation-map
6378 in read_key_sequence.
6379 (read_key_sequence): Use them.
6380
6381 * keyboard.c (adjust_point_for_property): Try harder to move point
6382 to the non-sticky end of an invisible property.
6383
6384 * xdisp.c (single_display_prop_intangible_p): Make `space' display
6385 property intangible as well.
6386
780379b1
AS
63872003-05-10 Andreas Schwab <schwab@suse.de>
6388
6389 * xmenu.c (single_menu_item): Change last parameter to void* to
6390 avoid warning.
6391
ca2de342
RS
63922003-05-09 Richard M. Stallman <rms@gnu.org>
6393
6394 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
6395 Bind Qinhibit_modification_hooks to t so there will be no GC.
6396 Rename local `tem' to `save_deactivate_mark'.
6397
6398 * eval.c (specpdl_ptr): Declare volatile.
6399 (unbind_to): Copy the whole binding and decrement specpdl_ptr
6400 before doing the work of unbinding it.
6401
6402 * lisp.h (struct specbinding): Declare elements volatile.
6403 (specpdl_ptr): Declare volatile.
6404
6405 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
6406
6407 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
6408 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
6409
347003be
DL
64102003-05-08 Dave Love <fx@gnu.org>
6411
6412 * coding.c (Vlast_coding_system_used): Doc fix.
6413
5adcec23
JR
64142003-05-07 Jason Rumney <jasonr@gnu.org>
6415
6416 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
6417 when system does not support them.
6418
5fe3b8a4
SM
64192003-05-05 Stefan Monnier <monnier@cs.yale.edu>
6420
6421 * fileio.c (Qwrite_region_annotate_functions): New var.
6422 (build_annotations): Use it to process the global part of the hook.
6423 (syms_of_fileio): Init and staticpro it.
6424
6425 * keyboard.c (safe_run_hooks_error): Display a message instead of
6426 silently ignoring the error.
6427
64282003-05-03 Stefan Monnier <monnier@cs.yale.edu>
6429
6430 * keyboard.c (input_available_signal): Mark static.
6431 (menu_bar_items): Use map_keymap.
6432 (menu_bar_one_keymap): Remove.
6433 (menu_bar_item): Adjust arglist (for use in map_keymap).
6434 Properly hide a second binding when not both are keymaps.
6435
6436 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
6437 (single_keymap_panes): Use it and map_keymap.
6438 (single_menu_item): Use skp as well.
6439
6440 * keymap.h (map_keymap_function_t): New type.
6441 (map_keymap): Declare.
6442
6443 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
6444 (map_keymap_call, Fmap_keymap): New functions.
6445 (syms_of_keymap): Defsubr map-keymap.
6446
4b1b4443
JD
64472003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6448
6449 * gtkutil.c (create_dialog, make_widget_for_menu_item)
6450 (make_menu_item, create_menus, xg_update_menu_item): Don't call
6451 ..._with_mnemonic functions for menu items.
6452
1f816871
KH
64532003-05-01 Kenichi Handa <handa@m17n.org>
6454
6455 * coding.c (coding_system_accept_latin_extra_p): Delete this
6456 function.
6457 (find_safe_codings): Pay attention to
6458 the property tranlsation-table-for-encode of each codings.
6459 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
6460
5ed6ba5b
SM
64612003-05-01 Stefan Monnier <monnier@cs.yale.edu>
6462
6463 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
6464
32c06229
SM
64652003-04-30 Stefan Monnier <monnier@cs.yale.edu>
6466
6467 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
6468
6469 * lisp.h (CHECK): Wrap args in parenthesis.
6470 (specbind): Fix doc: symbol = Qnil is not supported any more.
6471
6472 * bytecode.c (Fbyte_code) <unwind-protect>:
6473 Use Fprogn rather than 0 and Qnil.
6474
6475 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
6476 `double', and `triple' modifiers as well.
6477
ed3c3314
RS
64782003-04-30 Richard M. Stallman <rms@gnu.org>
6479
6480 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
6481
6482 * alloc.c (abort_on_gc): New variable.
6483 (Fgarbage_collect): Abort if abort_on_gc is set.
6484
6485 * lisp.h (abort_on_gc): Add decl.
6486
6487 * eval.c (Fsignal): Clear abort_on_gc.
6488
6489 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 6490 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
6491
6492 * xdisp.c (move_it_vertically_backward): Do the final big else
6493 even if nlines is 0.
6494
6495 * xdisp.c (redisplay_internal): Finish the per-frame loop
6496 even if redisplay is suspended by input.
6497
0b325c12
AC
64982003-04-24 Andrew Choi <akochoi@shaw.ca>
6499
6500 * macterm.c (x_list_fonts): Return all fonts that match if
6501 maxnames = -1.
6502
4e837cd0
KH
65032003-04-25 Kenichi Handa <handa@m17n.org>
6504
6505 * syntax.c (skip_chars): Fix previous change.
6506
9af7511a
KH
65072003-04-24 Kenichi Handa <handa@m17n.org>
6508
6509 * syntax.c (skip_chars): Make the code faster by using the common
6510 technique of *p, *stop, and *endp.
6511
e3b2c21f
JD
65122003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6513
6514 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 6515 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
6516 being updated.
6517
32c06229
SM
65182003-04-19 Stefan Monnier <monnier@cs.yale.edu>
6519
6520 * eval.c (Fapply): Undo last change and add a comment about why.
6521
c6464167
MB
65222003-04-18 Miles Bader <miles@gnu.org>
6523
6524 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
6525 pickier PARSE_MULTIBYTE_SEQ.
6526
e509f168
SM
65272003-04-17 Stefan Monnier <monnier@cs.yale.edu>
6528
6529 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
6530 Use XCDR, XCAR, CONSP.
6531 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
6532 (Fapply): Remove unnecessary GCPRO.
6533
6534 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
6535
6536 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
6537
6538 * buffer.h: Don't hardcode BEG==1.
6539
6540 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
6541
5ceea398
RS
65422003-04-16 Richard M. Stallman <rms@gnu.org>
6543
6544 * xdisp.c (try_window, try_window_reusing_current_matrix):
6545 When at end of window, set window_end_pos to Z-ZV.
6546
6547 * buffer.c (Foverlay_recenter): Doc fix.
6548
e509f168
SM
65492003-04-14 Stefan Monnier <monnier@cs.yale.edu>
6550
6551 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
6552
d243e605
AC
65532003-04-14 Andrew Choi <akochoi@shaw.ca>
6554
6555 * macterm.c (mac_check_for_quit_char): Don't check more often than
6556 once a second.
6557
6901b111
SM
65582003-04-11 Stefan Monnier <monnier@cs.yale.edu>
6559
6560 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
6561 specially, so that they can't hide an implicit switch-frame event.
6562 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
6563 (head_table): Use switch-frame as event_kind for select-window.
6564 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
6565
6566 * editfns.c (Fformat): Lisp_Object/int mixup.
6567 (format2): Remove unused var numargs.
6568
e301806f 65692003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 6570
6901b111 6571 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
6572 (Qafter_insert_file_set_coding): New variable.
6573 (syms_of_fileio): Initialize and staticpro it. Delete declaration
6574 for after-insert-file-adjust-coding-function.
6575 (Finsert_file_contents): Call Qafter_insert_file_set_coding
6576 instead of Vafter_insert_file_adjust_coding_function.
6577
38914424
KH
65782003-04-11 Kenichi Handa <handa@m17n.org>
6579
6580 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
6581
6582 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
6583 string. Callers changed.
6584
65852003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 6586
6901b111 6587 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 6588 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
6589 (Finsert_file_contents):
6590 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
6591 decode-format.
6592
f979dc05
JD
65932003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6594
6595 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
6596 get GtkAdjustment as widget now is a GtkRange.
6597
6598 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
6599 GtkRange to avoid memory leak.
6600
f8c6b4c2 66012003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 6602
50ebc53d
KH
6603 * xfaces.c (Vface_font_rescale_alist): New variable.
6604 (struct font_name): New member rescale_ratio.
6605 (font_rescale_ratio): New function.
6901b111 6606 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
6607 (better_font_p): On comparing point sized, pay attention to
6608 recale_ratio member of fonts.
6609 (build_scalable_font_name): Reflect font->rescale_ratio in the
6610 font name.
6901b111 6611 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 6612
cb98871c
KH
6613 * lread.c (read1): Before calling index, check if the 2nd
6614 arguemnt is in ASCII range.
6615
4773b8ca
RS
66162003-04-08 Richard M. Stallman <rms@gnu.org>
6617
b0ada147
RS
6618 * fileio.c (Ffile_symlink_p): Doc fix.
6619
6620 * editfns.c (Fformat): Translate positions of text properties
6621 in the format string to apply them to the result.
6622
4773b8ca
RS
6623 * fileio.c (Finsert_file_contents): Doc fix.
6624 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
6625
66262003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 6627
4773b8ca
RS
6628 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
6629
e8f25745 66302003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 6631
e8f25745
ST
6632 * mac.c (init_mac_osx_environment): Switch libexec and bin so
6633 that self-contained application finds libexec files.
6634
f8c6b4c2 66352003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 6636
6901b111
SM
6637 * coding.c (code_convert_region_unwind):
6638 Set Vlast_coding_system_used to the argument.
2310d84c
KH
6639 (code_convert_region): If post-read-conversion function changed
6640 the value of last-coding-sytem, keep the new value in
6641 coding->symbol so that it won't be overridden.
6642 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
6643 (coding_system_accept_latin_extra_p): New function.
6644 (find_safe_codings): Pay attention to characters registered in
6645 latin-extra-code-table.
2310d84c 6646
39c9a034
TTN
66472003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
6648
6649 * Makefile.in (md5.o): Add missing dependency info.
6650
eb67c5d6
RS
66512003-04-06 Richard M. Stallman <rms@gnu.org>
6652
6653 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
6654
6655 * marker.c (verify_bytepos): New function.
6656
6657 * intervals.c (set_intervals_multibyte_1): When becoming
6658 multibyte, adjust right and left child sizes to a whole set of
6659 characters. If an interval gets zero total-length, delete it.
6660 If an interval consists of just its children, delete one of them.
6661
6662 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
6663 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 6664
eb67c5d6
RS
6665 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
6666 All calls deleted.
6667 (lisp_malloc): Do the work here directly.
6668
b1f81fc5
JB
66692003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
6670
6671 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
6672 char tables.
6673
66742003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
6675
6676 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
6677 destructively change "%S" to "%s".
6678
774666fb
MB
66792003-04-03 Miles Bader <miles@gnu.org>
6680
6681 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
6682 always set.
6683
19c37f01
DL
66842003-04-01 Dave Love <fx@gnu.org>
6685
6686 * xfns.c (xpm_lookup_color): Grok "opaque".
6687
2f4b24c3
AC
66882003-03-31 Andrew Choi <akochoi@shaw.ca>
6689
6690 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
6691 parent window ID.
6692
6693 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
6694
6695 * macterm.h (struct mac_output): Define x_pixels_diff and
6696 y_pixels_diff.
b1f81fc5 6697
9443fcf6
JB
66982003-03-31 Juanma Barranquero <lektu@terra.es>
6699
6700 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
6701 blockinput.h and files included from it.
6702
e072891b
KS
67032003-03-31 Kim F. Storm <storm@cua.dk>
6704
6705 The following changes consolidates the common code related to
6706 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
6707 files into frame.c.
9443fcf6 6708
e072891b
KS
6709 * frame.c: Include blockinput.h.
6710 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
6711 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
6712 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
6713 related vars here.
6714 (struct frame_parm_table, frame_parms): New table for describing
6715 frame parameters and their associated Q-variable.
6716 The order of the parameters corresponds to the sequence of the
6717 frame_parm_handlers table in redisplay_interface.
6718 (x_fullscreen_move, x_set_frame_parameters)
6719 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
6720 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
6721 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6722 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
6723 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
6724 Generic functions for processing of frame parameters.
6725 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
6726 (display_x_get_resource, x_get_resource_string): Functions for
6727 generic access to X resources.
6728 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
6729 (x_default_parameter, Fx_parse_geometry): Functions for generic
6730 access to frame parameters.
6901b111
SM
6731 (x_figure_window_size): Generic calculation of frame size.
6732 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
6733 (syms_of_frame): Intern and staticpro frame parameter variables.
6734 Defvar_lisp Vx_resource_class and Vx_resource_name here.
6735 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 6736
e072891b
KS
6737 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
6738 parameter related vars defined in frame.c.
6739 (EMACS_CLASS): Define here.
6740 (enum FULLSCREEN_*): Define here.
6741 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
6742 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
6743 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
6744 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
6745 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
6746 (x_set_visibility, x_set_autoraise, x_set_autolower)
6747 (x_set_unsplittable, x_set_vertical_scroll_bars)
6748 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
6749 (x_figure_window_size): Add prototypes.
6750
6751 * dispextern.h (frame_parm_handler): New typedef.
6752 (struct redisplay_interface): New member frame_parm_handlers.
6753 (enum resource_types): Move declaration here.
6754 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
6755 (x_default_parameter): Add prototypes.
6756
6757 * window.c: Remove extern decl for frame parameter vars.
6758 (change_window_heights): New generic function;
6759 replaces x_change_window_heights. All users changed.
6760
6761 * window.h (change_window_heights): Add prototype.
6762
6763 * xfaces.c: Remove extern decl for frame parameter vars.
6764
6765 * xterm.h (EMACS_CLASS): Remove. Use generic define.
6766 (struct w32_display_info): Fix type of xrdb member.
6767 (enum FULLSCREEN_*): Remove.
6768 Remove prototypes for generic functions (in frame.h).
6769
6770 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
6771 parameters now defined in frame.h and frame.c.
f63fd14e 6772 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
6773 (enum x_frame_parms): Remove (bogus, unused enum).
6774 (check_x_display_info): Make non-static (for frame.c).
6775 (struct x_frame_parm_table, x_frame_parms): Remove.
6776 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
6777 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
6778 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6779 (x_change_window_heights, x_set_autoraise, x_set_autolower)
6780 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
6781 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
6782 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
6783 Remove. Use generic functions instead.
6784 (enum resource_types): Remove.
6785 (x_set_scroll_bar_default_width): New global function (for frame.c).
6786 (Fx_create_frame): Depend on x_figure_window_size to add space for
6787 toolbar and setup size_hint_flags.
6788 (x_frame_parm_handlers): New table for redisplay_interface.
6789 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 6790
e072891b 6791 * xterm.c: Remove unnecessary extern declarations.
f63fd14e 6792 (x_fullscreen_adjust): Remove. Use generic instead.
e072891b
KS
6793 (x_redisplay_interface): Add x_frame_parm_handlers member.
6794
6795 * w32gui.h (XrmDatabase): New (dummy) typedef.
6796
6797 * w32term.h (EMACS_CLASS): Remove. Use generic define.
6798 (struct w32_display_info): Fix type of xrdb member.
6799 (enum FULLSCREEN_*): Remove.
6800 (x_fullscreen_adjust): Remove prototype.
6801
6802 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
6803 parameters now defined in frame.h and frame.c.
f63fd14e 6804 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
6805 (enum x_frame_parms): Remove (bogus, unused enum).
6806 (check_x_display_info): Make non-static (for frame.c).
6807 (struct x_frame_parm_table, x_frame_parms): Remove.
6808 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
6809 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
6810 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6811 (x_change_window_heights, x_set_autoraise, x_set_autolower)
6812 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
6813 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
6814 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
6815 Remove. Use generic functions instead.
6816 (enum resource_types): Remove.
6817 (x_set_scroll_bar_default_width): New global function (for frame.c).
6818 (Fx_create_frame): Depend on x_figure_window_size to add space for
6819 toolbar and setup size_hint_flags.
6820 (w32_frame_parm_handlers): New table for redisplay_interface.
6821 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 6822
e072891b
KS
6823 * w32term.c: Remove unnecessary extern declarations.
6824 (x_fullscreen_adjust): Remove. Use generic instead.
6825 (x_redisplay_interface): Add w32_frame_parm_handlers member.
6826
6827 * w32reg.c (x_get_string_resource): Use XrmDatabase.
6828
6829 * macgui.h (XrmDatabase): New (dummy) typedef.
6830
6831 * macterm.h (EMACS_CLASS): Remove.
6832 (struct mac_display_info): Add xrdb member.
6833 (struct mac_output): Add want_fullscreen member.
6834
6835 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
6836 parameters now defined in frame.h and frame.c.
f63fd14e 6837 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
6838 (check_x_display_info): Make non-static (for frame.c).
6839 (struct x_frame_parm_table, x_frame_parms): Remove.
6840 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
6841 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
6842 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6843 (x_change_window_heights, x_set_autoraise, x_set_autolower)
6844 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
6845 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
6846 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
6847 Remove. Use generic functions instead.
6848 (enum resource_types): Remove.
6849 (x_set_scroll_bar_default_width): New global function (for frame.c).
6850 (mac_frame_parm_handlers): New table for redisplay_interface.
6851 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 6852
e072891b
KS
6853 * macterm.c: Remove unnecessary extern declarations.
6854 (x_redisplay_interface): Add mac_frame_parm_handlers member.
6855
3e6a560b
KS
6856 * Makefile.in (frame.o): Add dependency on blockinput.h and files
6857 included from it (atimer.h and systime.h).
6858
7b7b454e
AS
68592003-03-30 Andreas Schwab <schwab@suse.de>
6860
6861 * xdisp.c (x_insert_glyphs): Fix swapped width and height
6862 parameters for shift_glyphs_for_insert.
6863
6864 * macterm.c (x_redisplay_interface): Add missing entry for
6865 draw_vertical_window_border.
6866
beb402de
KG
68672003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
6868
6869 * fileio.c (Fexpand_file_name): In the no-handler case, after
6870 expanding, look again for a handler and invoke it. This is needed
6871 for filenames like "/foo/../user@host:/bar/../baz" -- the first
6872 expansion produces "/user@host:/bar/../baz" which needs to be
6873 expanded again for the finame result "/user@host:/baz".
6874
b676f356
JD
68752003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6876
6877 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
6878 of area to be redrawn for better performance.
6879
3c671a56
SM
68802003-03-28 Stefan Monnier <monnier@cs.yale.edu>
6881
6882 * xterm.c (take_vertical_position_into_account): Remove.
6883 (xt_action_hook): Call set_vertical_scroll_bar if needed.
6884 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
6885 (xm_scroll_callback, x_create_toolkit_scroll_bar)
6886 (x_set_toolkit_scroll_bar_thumb): Simplify.
6887 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
6888 (XTread_socket): Remove unused var.
6889 (x_make_frame_invisible): Replace goto with else.
6890
6891 * xdisp.c (set_vertical_scroll_bar): New fun.
6892 (redisplay_window): Use it.
6893
84f2e615
RS
68942003-03-26 Richard M. Stallman <rms@gnu.org>
6895
6896 * xdisp.c (update_tool_bar): Recompute tool bar if
6897 update_mode_lines is set. Set w->update_mode_line
6898 only if the tool bar contents actually change.
6899 (update_menu_bar): Undo previous change.
6900
70b6104c
JD
69012003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6902
5fd6f727
JD
6903 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
6904 (xg_frame_set_char_size): Calculate scroll bar width before frame
6905 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
6906 (xg_separator_p): Check for all documented separator types.
6907 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
6908 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
6909
70b6104c
JD
6910 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
6911 so tool bar gets updated.
6912
d9b36d19
SM
69132003-03-26 Stefan Monnier <monnier@cs.yale.edu>
6914
6915 * data.c (store_symval_forwarding): Re-instate part of the code
6916 that was deleted with too much enthusiasm.
6917
69182003-03-25 Stefan Monnier <monnier@cs.yale.edu>
6919
6920 * data.c (store_symval_forwarding): Delete special read-only
6921 hack for type == -1, since we now use ->constant instead.
6922 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
6923
6924 * buffer.c (overlays_in): Declare static.
6925 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
6926 `constant' field rather than the variable's `type' field.
6927
365fa1b3
AC
69282003-03-24 Andrew Choi <akochoi@shaw.ca>
6929
6930 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
6931
6932 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
6933
6934 * fns.c [MAC_OSX]: Do not redefine vector.
6935
6936 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
6937
6938 * macgui.h: Remove definition of No_Cursor.
6939
d9b36d19 6940 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
6941
6942 * xdisp.c: Define No_Cursor.
6943 (x_write_glyphs, notice_overwritten_cursor)
6944 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
6945 (note_mouse_highlight): Remove Mac-specific code.
6946 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 6947
c0bcce6f
JPW
69482003-03-24 John Paul Wallington <jpw@gnu.org>
6949
6950 * xdisp.c (redisplay_window): If mini window's buffer is not
6951 empty, then redisplay it like other windows.
6952
a526b96c
KS
69532003-03-23 Kim F. Storm <storm@cua.dk>
6954
6955 * w32term.c (w32_draw_window_cursor): Fix last change.
6956
37ab321e
KH
69572003-03-23 Kenichi Handa <handa@m17n.org>
6958
a526b96c
KS
6959 * alloc.c (make_string_from_bytes, make_specified_string):
6960 Add `const' for the arg CONTENTS.
37ab321e
KH
6961
6962 * lisp.h (make_string_from_bytes, make_specified_string):
6963 Prototypes adjusted.
6964
7863d625
JD
69652003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6966
a526b96c 6967 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 6968
7863d625
JD
6969 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
6970 (XG_SB_RANGE): New define.
6971
6972 * gtkutil.c (xg_fixed_handle_expose): New function.
6973 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
6974 expose events.
6975 (xg_update_scrollbar_pos): Take two more arguments, left and width
6976 of scroll bar including borders.
6977 Clear left and right part outside scroll bar separately as some
6978 themes have bars that are not an even number of pixels.
d9b36d19 6979 Don't set reallocate_redraws, don't call
7863d625
JD
6980 gdk_window_process_all_updates.
6981 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
6982 so no need to change it. Calculate size and value with XG_SB_RANGE.
6983
d9b36d19
SM
6984 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
6985 Pass left and width of scroll bar including borders to
7863d625
JD
6986 xg_update_scrollbar_pos.
6987
af0ad939
TTN
69882003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
6989
6990 * Makefile.in: Make sure space precedes end-of-line backslashes.
6991
b22139fd
KS
69922003-03-22 Kim F. Storm <storm@cua.dk>
6993
6994 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
6995 Add generic versions here. Remove system specific versions
6996 defined elsewhere.
6997
6998 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
6999 Add prototypes.
7000
6e6410cf
KS
7001 * xterm.h (STORE_NATIVE_RECT): New macro.
7002
5c9cc435
KS
70032003-03-21 Kim F. Storm <storm@cua.dk>
7004
00c64fab
SM
7005 * xdisp.c (get_glyph_string_clip_rect):
7006 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
7007
7008 * dispextern.h (struct redisplay_interface): Add active_p
7009 argument to draw_window_cursor member. All uses changed.
7010
acd37560
KS
70112003-03-21 Kim F. Storm <storm@cua.dk>
7012
7013 The following changes consolidate code related to writing and
7014 inserting glyphs, exposing frame, the tool bar, the mouse face,
7015 the output cursor, and help echo from xterm.c, w32term.c and
7016 macterm.c into xdisp.c. It also generalizes the use of the
7017 window_part enum instead of using numeric values throughout.
af0ad939 7018
acd37560
KS
7019 * xdisp.c: Consolidate gui-independent code here.
7020 Include keymap.h.
7021 (Qhelp_echo): Import.
7022 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
7023 (help_echo_string, help_echo_window, help_echo_object)
7024 (previous_help_echo_string, help_echo_pos): Declare here.
7025 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
7026 (estimate_mode_line_height): Define here. Handle windowing
7027 systems directly (without using estimate_mode_line_height_hook).
7028 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
7029 (update_window_cursor, update_cursor_in_window_tree)
7030 (fast_find_position, fast_find_string_pos)
7031 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
7032 (expose_area, expose_line, expose_overlaps, expose_window)
7033 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
7034 declared static as they are only used locally in xdisp.c.
7035 (draw_glyphs): Rename from x_draw_glyphs and make static.
7036 (tool_bar_item_info, notice_overwritten_cursor): Make static.
7037 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
7038 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 7039 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
7040 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
7041 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
7042 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
7043 (note_mouse_highlight, x_clear_window_mouse_face)
7044 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
7045 (x_intersect_rectangles): New generic functions for use by xdisp.c
7046 and GUI front-ends.
7047 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
7048 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
7049
7050 * dispextern.h (Display_Info): Generic typedef for *_display_info.
7051 (NativeRectangle): Generic typedef for rectangle type.
7052 (enum window_part): Move here from window.c.
7053 (struct redisplay_interface): New members flush_display_optional,
7054 define_frame_cursor, clear_frame_area, draw_window_cursor,
7055 draw_vertical_window_border, shift_glyphs_for_insert.
7056 Rename member clear_mouse_face to clear_window_mouse_face.
7057 (estimate_mode_line_height_hook): Remove hook.
7058 (auto_raise_tool_bar_buttons_p): Don't declare extern.
7059 (tool_bar_item_info): Remove prototype.
7060 (help_echo_string, help_echo_window, help_echo_object)
7061 (previous_help_echo_string, help_echo_pos)
7062 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
7063 (x_stretch_cursor_p, output_cursor): Declare extern.
7064 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
7065 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
7066 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
7067 (display_and_set_cursor, set_output_cursor, x_cursor_to)
7068 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
7069 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
7070 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
7071 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
7072 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
7073 Add prototypes.
7074 (mode_line_string, marginal_area_string): Fix prototypes.
7075
7076 * window.c (enum window_part): Move to dispextern.h.
7077 (coordinates_in_window): Use enum window_part member names
7078 instead of numbers to describe return value.
7079 (struct check_window_data): Change part member to window_part.
7080 (check_window_containing): Return window_part unaltered.
7081 (window_from_coordinates): Change part arg from int to enum
7082 window_part. Allow part arg to be null. All users changed.
7083
7084 * window.h (window_from_coordinates): Fix prototype.
7085
7086 * term.c (estimate_mode_line_height): Move to xdisp.c.
7087
7088 * keyboard.c (make_lispy_event): Use enum window_part.
7089
7090 * dispnew.c (mode_line_string, marginal_area_string): Use enum
7091 window_part instead of int in arg list. Users changed.
7092
7093 * xterm.h (No_Cursor): Declare as None for X.
7094 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 7095
acd37560
KS
7096 * xterm.c: Remove consolidated defines and code.
7097 (BETWEEN): Remove unused macro.
7098 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
7099 (x_define_frame_cursor, x_clear_frame_area)
7100 (x_draw_window_cursor): New X-specific functions for RIF.
7101 (x_redisplay_interface): Add new members.
7102
7103 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
7104
7105 * w32term.h (struct w32_output): Remove cross_cursor member.
7106
7107 * w32term.c: Remove consolidated defines and code.
7108 (BETWEEN): Remove unused macro.
7109 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
7110 (w32_define_frame_cursor, w32_clear_frame_area)
7111 (w32_draw_window_cursor): New W32-specific functions for RIF.
7112 (w32_redisplay_interface): Add new members.
7113
a64387ee 7114 * w32gui.h (No_Cursor): Define as 0 for W32.
acd37560
KS
7115 (XRectangle): Add X compatible rectangle type.
7116 (NativeRectangle): Declare as RECT for W32.
7117 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
7118
7119 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
7120
7121 * w32console.c: Remove consolidated defines and code.
af0ad939 7122
acd37560
KS
7123 * msdos.h (Display_Info): Add generic typedef.
7124
7125 * msdos.c: Remove consolidated defines and code.
7126 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
7127
7128 * macterm.h (struct mac_output): Replace member cross_cursor by
7129 hand_cursor.
7130 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
7131
7132 * macterm.c: Remove consolidated defines and code.
7133 (BETWEEN): Remove unused macro.
7134 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
7135 (mac_define_frame_cursor, mac_clear_frame_area)
7136 (mac_draw_window_cursor): New Mac-specific functions for RIF.
7137 (x_redisplay_interface): Add new members.
7138
7139 * macgui.h (No_Cursor): Define as 0 for Mac.
7140 (XRectangle): Add X compatible rectangle type.
7141 (NativeRectangle): Declare as Rect for Mac.
7142 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
7143
204ccab1
KS
7144 * macfns.c (x_set_mouse_color): Setup hand_cursor.
7145 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 7146
9443fcf6 7147 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
7148 included from it. Add dependency on keymap.h.
7149
7150 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
7151
8ba01a70 71522003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
7153
7154 * fileio.c (Fexpand_file_name): Fix previous change.
7155
8ba01a70 71562003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
7157
7158 * fileio.c (Ffile_name_directory): Reconstruct file name by
7159 make_specified_string.
7160 (Ffile_name_nondirectory, Ffile_name_as_directory)
7161 (Fdirectory_file_name, Fexpand_file_name)
7162 (Fsubstitute_in_file_name): Likewise.
7163 (Fread_file_name): Compare decoded homedir with DIR and
7164 DEFAULT_FILENAME.
7165
7166 * alloc.c (make_specified_string): If NCHARS is negative, count
7167 the number of characters.
7168
19536747
JD
71692003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7170
de38ae5a
JD
7171 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
7172 all widgets.
7173
19536747
JD
7174 * gtkutil.h: Removed xg_ignore_next_thumb.
7175
37ab321e 71762003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
7177
7178 * coding.c (Vchar_coding_system_table): Remove this variable.
7179 (Vcoding_system_safe_chars): New variable.
7180 (intersection): Remove this function.
7181 (find_safe_codings): Don't use Vchar_coding_system_table, but try
7182 all codings in SAFE_CODINGS.
00c64fab 7183 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
7184 find_safe_codings. Get generic coding systems from
7185 Vcoding_system_safe_chars.
7186 (Fdefine_coding_system_internal): New function.
7187 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
7188 Initialize and staticpro Vcoding_system_safe_chars.
7189
17097258
JD
71902003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7191
2a2071c3
JD
7192 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
7193 equal old values before updating.
7194
17097258
JD
7195 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
7196
7197 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
7198
71992003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7200
7201 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
7202 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
7203 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
7204 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
7205 (xg_create_scroll_bar): Pass bar to button event callback.
7206 (xg_find_top_left_in_fixed): New function.
7207 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
7208 whole scroll bar area. Get old position with
7209 xg_find_top_left_in_fixed, calculate and only clear needed areas.
7210 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
7211 dragging is in progress. Calculate whole as for Motif.
7212 Remove code that saved last values. Call gtk_range functions to
7213 set scroll bar sizes.
7214
7215 * gtkutil.h: Removed xg_ignore_next_thumb.
7216
8cb9dfbf
JB
72172003-03-17 Juanma Barranquero <lektu@terra.es>
7218
7219 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
7220 and files included from it.
7221
00c64fab
SM
72222003-03-18 Stefan Monnier <monnier@cs.yale.edu>
7223
7224 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
7225 multiple occurrences of the same keymap under different prefixes.
7226 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
7227
c45bb3b2
JR
72282003-03-16 Jason Rumney <jasonr@gnu.org>
7229
7230 * w32gui.h: Use HDC for Display.
7231
7232 * w32term.c (w32_encode_char): Prevent double-byte chars from
7233 crashing Emacs.
7234
7235 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
7236 as binary.
7237
2a6d0874
JB
72382003-03-16 Juanma Barranquero <lektu@terra.es>
7239
7240 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
7241
03eb5fab
KS
72422003-03-16 Kim F. Storm <storm@cua.dk>
7243
7244 The following changes consolidate some of the gui-independent
7245 parts of the processing and drawing of "glyph strings" from
7246 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 7247
03eb5fab
KS
7248 * dispextern.h (struct glyph): Reduce face_id member from 22 to
7249 21 bits (this reduces number of faces from 4M to 2M).
7250 Replace W32 specific w32_font_type member (2 bits) by generic
7251 font_type member (3 bits) for portability.
7252 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
7253 (enum draw_glyphs_face): Define here.
7254 (struct glyph_string): Define here. Merge W32 and X versions.
7255 (struct redisplay_interface): New members per_char_metric,
7256 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
7257 (VCENTER_BASELINE_OFFSET): Define here.
7258 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
7259 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
7260
7261 * xdisp.c: Consolidate gui-independent "glyph string" code here.
7262 (dump_glyph_string): Moved here.
7263 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
7264 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
7265 (fill_composite_glyph_string, fill_glyph_string)
7266 (fill_image_glyph_string, fill_stretch_glyph_string)
7267 (left_overwritten, left_overwriting, right_overwritten)
7268 (right_overwriting, get_char_face_and_encoding)
7269 (set_glyph_string_background_width, compute_overhangs_and_x)
7270 (append_glyph, append_composite_glyph, produce_image_glyph)
7271 (take_vertical_position_into_account, append_stretch_glyph)
7272 (produce_stretch_glyph): New generic functions (based on X version).
7273 Call platform specific functions through rif.
7274 (INIT_GLYPH_STRING): New macro, hides W32 details.
7275 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
7276 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
7277 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
7278 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
7279 (notice_overwritten_cursor):
7280 Generic functions exported to platform modules. Users changed.
7281
7282 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
7283 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
7284 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 7285 New macros for consolidated code.
2a6d0874 7286
03eb5fab
KS
7287 * xterm.c: Remove consolidated defines and code.
7288 (x_per_char_metric, x_encode_char)
7289 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
7290 (x_redisplay_interface): Add new members.
7291
7292 * w32gui.h (Display): Add dummy typedef for consolidation.
7293 (XChar2b): Define alias for wchar_t for consolidation.
7294 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
7295
7296 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 7297 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
7298 New macros for consolidation.
7299
fad49844 7300 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
7301 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
7302 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
7303 (w32_per_char_metric): Change font_type arg to int for RIF.
7304 (w32_encode_char): Return int according to RIF requirements.
7305 (w32_compute_glyph_string_overhangs): Adapt to RIF.
7306 (w32_get_glyph_overhangs): New function for RIF. Uses generic
7307 x_get_glyph_overhangs.
7308 (w32_redisplay_interface): Add new members.
7309
7310 * macgui.h (XChar2b): Move typedef here for consolidation.
7311 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
7312
7313 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
7314 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
7315 consolidation.
7316
7317 * macterm.c: Remove consolidated defines and code.
7318 (mac_per_char_metric): New function for RIF.
00c64fab 7319 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
7320 (mac_compute_glyph_string_overhangs): Adapt for RIF.
7321 (x_redisplay_interface): Add new members.
7322
00c64fab
SM
73232003-03-15 Stefan Monnier <monnier@cs.yale.edu>
7324
7325 * keymap.c (Vmenu_events): New var.
7326 (syms_of_keymap): Initialize it.
7327 (where_is_internal): Check more carefully what is a menu event.
7328
225c7a07
RS
73292003-03-14 Richard M. Stallman <rms@gnu.org>
7330
7331 * lread.c (read1): After #!, exit loop on eof.
7332
cea9be54
JD
73332003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7334
9ea0e54d
JD
7335 * gtkutil.h: Add declaration for xg_frame_cleared.
7336
0cb35f4e
JD
7337 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
7338
cea9be54
JD
7339 * gtkutil.c (struct xg_last_sb_pos): New structure.
7340 (handle_fixed_child): New function.
7341 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
7342 and force a redraw on them.
7343 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
7344 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
7345 so we can avoid unneeded redraws.
7346 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
7347 and force a redraw on the scroll bar.
7348 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
7349 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 7350 (xg_frame_cleared): New function.
cea9be54 7351
20b853f3
KH
73522003-03-13 Kenichi Handa <handa@m17n.org>
7353
7354 * coding.c (Fdetect_coding_region): Fix docstring.
7355 (Fdetect_coding_string): Fix docstring.
7356
7a555aff
AS
73572003-03-13 Andreas Schwab <schwab@suse.de>
7358
25cc0080
AS
7359 * gtkutil.c: Add prototype for create_menus.
7360
30225431
AS
7361 * data.c (long_to_cons): Fix type of top.
7362
7363 * xselect.c (selection_data_to_lisp_data): Use int instead of
7364 long for an integer of size 4.
7365
7a555aff 7366 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 7367 (xg_tool_bar_help_callback): Likewise.
7a555aff 7368
a3e4741f
AS
73692003-03-12 Andreas Schwab <schwab@suse.de>
7370
7371 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
7372
9668be7c
KS
73732003-03-12 Kim F. Storm <storm@cua.dk>
7374
03eb5fab 7375 The following changes consolidate the fringe handling from
9668be7c 7376 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 7377
9668be7c
KS
7378 * xdisp.c: Consolidate fringe handling code here.
7379 (left_bits, right_bits, continued_bits, continuation_bits)
7380 (ov_bits, zv_bits): Define fringe bitmaps.
7381 (fringe_bitmaps): New array holding fringe bitmaps.
7382 (draw_fringe_bitmap): Draw a specific bitmap; call display
7383 specific drawing routine via rif->draw_fringe_bitmap.
7384 (draw_row_fringe_bitmaps): Generic replacement for
7385 x_draw_row_fringe_bitmaps; all callers changed.
7386 (compute_fringe_widths): Generic replacement for
7387 x_compute_fringe_widths; all callers changed.
7388
7389 * dispextern.h (enum fringe_bitmap_type): Define here.
7390 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
7391 (fringe_bitmaps): Declare extern.
7392 (struct redisplay_interface): New member draw_fringe_bitmap.
7393 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
7394
7395 * xterm.c: Remove generic fringe code.
7396 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
7397 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
7398
7399 * w32term.c: Remove generic fringe code.
7400 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
7401 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 7402
9668be7c
KS
7403 * macterm.c: Remove generic fringe code.
7404 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
7405 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
7406
00a88f32
SM
74072003-03-11 Stefan Monnier <monnier@cs.yale.edu>
7408
7409 * print.c (Fprin1_to_string): Return unibyte string if possible.
7410
1d1de695
DK
74112003-03-09 David Kastrup <dak@gnu.org>
7412
7413 * process.c (read_process_output): We have allocated enough space
7414 for readmax and carryover, so actually use the alloted space.
7415
257f40f2
JD
74162003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7417
7418 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
7419 toolkit scrollbar click.
7420
7421 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
7422 for USE_GTK.
7423 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
7424 also.
7425 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
7426 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 7427
257f40f2
JD
7428 * gtkutil.h: Declare xg_get_scroll_id_for_window.
7429
7430 * gtkutil.c (xg_get_scroll_id_for_window): New function.
7431 (xg_tool_bar_item_expose_callback): New function.
7432 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
7433 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
7434 on the tool bar widget.
7435 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
7436 to expose on the tool bar item widgets.
7437
15213141
JD
74382003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7439
26b74a0b 7440 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 7441 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
7442 deleted from the image cache).
7443
15213141
JD
7444 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
7445 the event isn't for a frame (i.e. for dialogs).
7446
20b853f3 74472003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
7448
7449 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
7450 composition components reaches the limit, terminate composing.
7451 (COMPOSITION_OK): New macro.
00a88f32 7452 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
7453 composition is found.
7454 (coding_restore_composition): Adjust the number of composition
7455 components if it is not sane.
7456
c9029fe5
JB
74572003-03-06 Juanma Barranquero <lektu@terra.es>
7458
7459 * w32term.h (struct w32_display_info): Add xrdb member to support
7460 passing resources via -xrm on Windows.
7461
7462 * w32term.c (w32_make_rdb): New function.
7463 (w32_term_init): Use it to initialize xrdb member of w32_display_info
7464 struct. Delete leftover code.
7465
7466 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
7467 for resources passed on the command line.
7468
7469 * w32reg.c (w32_get_rdb_resource): New function.
7470 (x_get_string_resource): Use it, so resources passed with -xrm
7471 supercede the ones in the registry.
7472
9d00001f
JD
74732003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7474
7475 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
7476 instead of x_top_window_to_frame.
7477
ca2417b9
JD
74782003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7479
7480 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
7481 when restarting Emacs.
7482
5b20caf0
RS
74832003-03-03 Richard M. Stallman <rms@gnu.org>
7484
7485 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
7486 to run kill-buffer-query-functions.
7487 (Qkill_buffer_query_functions): New var.
7488 (syms_of_buffer): Init and staticpro it.
7489
58e91b77
JD
74902003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7491
7492 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
7493
932357b4
KS
74942003-02-25 Kim F. Storm <storm@cua.dk>
7495
7496 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
7497 If centering point failed to make whole line visible and vscroll
7498 is non-zero, disable vscroll and try centering point again.
7499
7500 * lread.c (read1): Accept `single space' syntax like (? x).
7501
bb8db7e1
JD
75022003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7503
7504 * keyboard.c (cancel_hourglass_unwind): Surround with
7505 #ifdef HAVE_X_WINDOWS
7506
47d77aab
KH
75072003-02-25 Kenichi Handa <handa@m17n.org>
7508
7509 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
7510 process only when "subprocesses" is defined.
7511
6a097c0c
SM
75122003-02-24 Stefan Monnier <monnier@cs.yale.edu>
7513
7514 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
7515
0b063c27
JB
75162003-02-24 Juanma Barranquero <lektu@terra.es>
7517
d1135afc
JB
7518 * callint.c (fix_command): Declare as static void and move before
7519 Fcall_interactively.
7520
0b063c27
JB
7521 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
7522 (syms_of_xdisp): Don't initialize Qwhen.
7523
0af912f0
JD
75242003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7525
7526 * keyboard.c (cancel_hourglass_unwind): New function.
7527 (command_loop_1): Cancel hourglass with unwind-protect.
7528
120d0a23
RS
75292003-02-23 Richard M. Stallman <rms@gnu.org>
7530
7531 * callint.c (fix_command): New subroutine, from Fcall_interactively.
7532 Detect (when ... (region-beginning)) etc.
7533 (Fcall_interactively): Call fix_command.
7534 (Qif, Qwhen): New variables.
7535 (syms_of_callint): Init and staticpro them.
0b063c27 7536
120d0a23
RS
7537 * regex.c (print_partial_compiled_pattern): Output to stderr.
7538
4ece81a6
KG
75392003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
7540
7541 * dired.c (directory_files_internal): Don't expand directory.
7542 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
7543 instead. From Lars Hansen <larsh@math.ku.dk>.
7544
e52bd6b7
SM
75452003-02-22 Stefan Monnier <monnier@cs.yale.edu>
7546
7547 * fns.c (string_to_multibyte): Remove unused var i.
7548 (Flanginfo): Fix int/Lisp_Object mixup.
7549 (void_call2): New fun.
7550 (Fmap_char_table): Use it in place of call2.
7551
7552 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
7553
7554 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
7555
7556 * keymap.c (copy_keymap_1): Make it static.
7557
7558 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
7559
c33ef7c4
JB
75602003-02-22 David Ponce <david@dponce.com>
7561
7562 * lread.c (Fload): Don't check STRING_MULTIBYTE.
7563
16782258
JD
75642003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7565
7566 * process.h: Removed subtty field from struct Lisp_Process.
7567
7568 * process.c (create_process): Remove setting of subtty.
7569 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
7570 (Fprocess_running_child_p, process_send_signal):
7571 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
7572 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
7573
3abeca61
KG
75742003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
7575
7576 * keymap.c (Fdefine_key): Doc fix.
7577
92a8ce63
JB
75782003-02-21 Juanma Barranquero <lektu@terra.es>
7579
7580 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
7581
7582 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
7583 POLLING_PROBLEM_IN_SELECT.
7584
7585 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
7586 Delete #undef of POLLING_PROBLEM_IN_SELECT.
7587
7588 * s/hpux10-20.h: New file.
7589
e52bd6b7
SM
7590 * process.c (wait_reading_process_input):
7591 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 7592
20f1ef2e
KH
75932003-02-20 Kenichi Handa <handa@m17n.org>
7594
32d0a9dc
KH
7595 * fontset.c (check_fontset_name): If NAME is nil, return the
7596 default fontset.
7597 (override_font_info): New function.
e52bd6b7 7598 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
7599 (Ffontset_info): If FONTSET is not the default fontset, merge
7600 FONTSET onto the copy of the default fontset, and work on that
7601 copy. Document that NAME nil means the default fontset.
7602 (Ffontset_font): Document that NAME nil means the default fontset.
7603
20f1ef2e
KH
7604 * process.c (setup_process_coding_systems): If the process's
7605 in/out descriptor is -1, do nothing.
7606
77d1daf2
AS
76072003-02-19 Andreas Schwab <schwab@suse.de>
7608
e52bd6b7
SM
7609 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
7610 Add prototypes.
77d1daf2 7611
f9a45bb3
KH
76122003-02-19 Kenichi Handa <handa@m17n.org>
7613
7614 * xfaces.c (try_alternative_families): Try all scalable fonts if
7615 Vscalable_fonts_allowed is not Qt.
7616
72ecb43c
JD
76172003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7618
7619 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
7620
ee5be7c3
JD
76212003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7622
7623 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
7624 names.
7625
7626 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 7627 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
7628 x_face_list_fonts.
7629 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
7630 (Fx_list_fonts): Set maxnames to -1 to get all font names.
7631
4cd519a7
KS
76322003-02-18 Kim F. Storm <storm@cua.dk>
7633
068f9882
KS
7634 * lread.c (read1): Fix last change.
7635 "`" is not always special. Allow "?" after a character constant.
4cd519a7 7636
7290a344
AC
76372003-02-18 Andrew Choi <akochoi@shaw.ca>
7638
7639 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
7640
1f7fa69b
AS
76412003-02-18 Andreas Schwab <schwab@suse.de>
7642
7643 * window.c (window_scroll_pixel_based): Move outside a
7644 multi-glyph character before setting new window start.
7645
7646 * xdisp.c (in_display_vector_p): New function.
7647 * dispextern.h (in_display_vector_p): Declare.
7648
23e21195
KS
76492003-02-18 Kim F. Storm <storm@cua.dk>
7650
7651 * lread.c (read1): Fix and relax read syntax.
7652 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
7653 Only recognize "," after dotted-pair dot if inside backquote.
7654 Never include "`" or "," (inside backquote) in a symbol.
7655 Allow dotted-pair dot after a character constant.
7656 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 7657
f098b121
JD
76582003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7659
7660 * gtkutil.c (xg_tool_bar_expose_callback): New function.
7661 (xg_create_tool_bar): Force style of tool bar to be horizontal with
7662 icons. Set name of tool bar to emacs-toolbar.
7663 (update_frame_tool_bar): Connect expose event to
7664 xg_tool_bar_expose_callback.
7665
63020c46
RS
76662003-02-17 Richard M. Stallman <rms@gnu.org>
7667
7668 * keyboard.c (this_command_key_count_reset): New variable.
7669 Initiatize to 0 where this_command_key_count is set.
7670 (read_char): Save and restore this_command_key_count_reset
7671 around input method code.
7672 (read_char): If this_command_key_count_reset, echo reread commands.
7673 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
7674
fb4452cc
KH
76752003-02-17 Kenichi Handa <handa@m17n.org>
7676
7677 * fns.c (string_to_multibyte): Always return a multibyte string.
7678
bd11cc09
JR
76792003-02-16 Jason Rumney <jasonr@gnu.org>
7680
e52bd6b7
SM
7681 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
7682 Negative max_fonts parameter means list all.
bd11cc09 7683
4cdf4bde
DL
76842003-02-14 Dave Love <fx@gnu.org>
7685
7686 * fns.c (Flanginfo): Doc fix.
7687
023b93f6
KS
76882003-02-13 Kim F. Storm <storm@cua.dk>
7689
37cd4238
KS
7690 * lread.c (read_escape): Interpret \s as a SPACE character, except
7691 for \s-X in a character constant which still is the super modifier.
7692 (read1): Signal an `invalid read syntax' error if a character
7693 constant is immediately followed by a digit or symbol character.
7694
140a6b7e
KS
7695 * search.c (Fmatch_data): Doc fix. Explicitly state that
7696 match-data is undefined if last search failed.
7697
023b93f6
KS
7698 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
7699 All uses changed.
7700
7d5c86e5
JB
77012003-02-12 Juanma Barranquero <lektu@terra.es>
7702
7703 * eval.c (Fdefmacro): Fix typo.
7704
295fff2c
KS
77052003-02-12 Kim F. Storm <storm@cua.dk>
7706
7707 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
7708 macro is a string, convert meta modifiers in string when copying
7709 the string into a vector.
7710
60f3202d
KS
77112003-02-11 Kim F. Storm <storm@cua.dk>
7712
7713 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
7714
61cb0b53
KH
77152003-02-11 Kenichi Handa <handa@m17n.org>
7716
7717 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
7718
7392e23c
KS
77192003-02-10 Kim F. Storm <storm@cua.dk>
7720
7721 * process.c: Doc fixes.
7722 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
7723
ce4254bd
KH
77242003-02-10 Kenichi Handa <handa@m17n.org>
7725
9c7a329a
KH
7726 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
7727
ce4254bd
KH
7728 * process.c (QCfilter_multibyte): New variable.
7729 (setup_process_coding_systems): New function.
e52bd6b7
SM
7730 (Fset_process_buffer, Fset_process_filter):
7731 Call setup_process_coding_systems.
ce4254bd
KH
7732 (Fstart_process): Initialize the member `filter_multibyte' of
7733 struct Lisp_Process.
7734 (create_process): Call setup_process_coding_systems.
7735 (Fmake_network_process): New keyward `:filter-multibyte'.
7736 Initialize the member `filter_multibyte' of struct Lisp_Process.
7737 Call setup_process_coding_systems.
7738 (server_accept_connection): Call setup_process_coding_systems.
7739 (read_process_output): If the process has a filter, decide the
7740 multibyteness of a string to given to the filter by
7741 `filter_multibyte' member of the process. If the process doesn't
7742 have a filter and the result of conversion is unibyte, use
7743 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
7744 multibyte form.
7745 (Fset_process_coding_system): Call setup_process_coding_systems.
7746 (Fset_process_filter_multibyte): New function.
7747 (Fprocess_filter_multibyte_p): New function.
7748 (syms_of_process): Intern and staticpro QCfilter_multibyte.
7749 Defsubr Sset_process_filter_multibyte and
7750 Sprocess_filter_multibyte_p.
7751
7752 * process.h (struct Lisp_Process): New member filter_multibyte.
7753
7754 * lisp.h (setup_process_coding_systems): Add prototype.
7755
7756 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
7757 process, update coding systems for the process.
7758
b08d5f59
KH
77592003-02-09 Kenichi Handa <handa@m17n.org>
7760
7761 * fns.c (string_to_multibyte): New function.
7762 (Fstring_to_multibyte): New function.
7763 (syms_of_fns): Defsubr it.
7764
0dfd93c0
AS
77652003-02-08 Andreas Schwab <schwab@suse.de>
7766
7767 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
7768 instead of the substitution.
7769
7b76ca1c
JD
77702003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7771
7772 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
7773
7774 * xmenu.c (menu_position_func): Adjust menu popup position so that
7775 the menu is fully visible.
7b76ca1c 7776
2436a4e4
JD
77772003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7778
7779 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
7780 (x_make_frame_invisible, x_wm_set_icon_position):
7781 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
7782
7783 * xfns.c (x_set_name, x_set_title): Ditto.
7784
37d1e680
RS
77852003-02-04 Richard M. Stallman <rms@gnu.org>
7786
7787 * keyboard.c (echo_now): Update before_command_echo_length.
7788 (Freset_this_command_lengths): Reset this_command_key_count etc.
7789 immediately rather than arranging to do it later.
7790 (before_command_key_count_1, before_command_echo_length_1)
7791 (before_command_restore_flag): Vars deleted.
7792 (add_command_key): Don't handle before_command_restore_flag.
7793 (read_char, record_menu_key): Don't update before_command_key_count or
7794 before_command_echo_length.
7795 (read_char): Don't handle before_command_restore_flag.
7796
7797 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
7798 in direct-output clauses if it wouldn't be called in the ordinary case.
7799
578846a3
KS
78002003-02-04 Kim F. Storm <storm@cua.dk>
7801
7802 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
7803
49853a4d
JD
78042003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7805
7806 * gtkutil.c (remove_from_container): Copying list is not needed.
7807 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
7808 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
7809 on list returned from gtk_container_get_children to avoid memory leak.
7810
8b53dc06
JR
78112003-02-01 Jason Rumney <jasonr@gnu.org>
7812
5d54d177
JR
7813 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
7814 local malloc.
7815 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
7816 definitions in xpm.h.
7817 (init_xpm_functions): New function.
f63fd14e 7818 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5d54d177
JR
7819 (init_external_image_libraries): Try to load libXpm.dll.
7820
8b53dc06
JR
7821 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
7822 timestamp.
7823
b222e415
DL
78242003-01-31 Dave Love <fx@gnu.org>
7825
7826 * syntax.c (Fskip_chars_forward)
7827 (open-paren-in-column-0-is-defun-start): Doc fix.
7828
c60ee5e7
JB
78292003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
7830
7831 * fileio.c: Support // at start of name for Cygwin (just added proper
7832 preprocessor tests).
7833
7834 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
7835
7836 * Makefile.in: Use @EXEEXT@ for Cygwin.
7837
7838 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
7839
7840 * s/cygwin.h: Added for Cygwin port.
7841
53b37591
JB
78422003-01-31 Juanma Barranquero <lektu@terra.es>
7843
7844 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
7845 when including gif_lib.h.
fe929957 7846 (init_gif_functions, init_tiff_functions): New functions.
f63fd14e
JB
7847 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
7848 Windows. Disable color table lookups. Call library functions
53b37591 7849 through pointers determined at runtime.
fe929957
JB
7850 (init_external_image_libraries): Try to load libungif.dll and
7851 libtiff.dll.
53b37591 7852
45415a8f
KH
78532003-01-31 Kenichi Handa <handa@m17n.org>
7854
7855 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 7856 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 7857
a97e4138
JD
78582003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7859
e52bd6b7 7860 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 7861
6eed9bed
DL
78622003-01-30 Dave Love <fx@gnu.org>
7863
7864 * alloc.c (Vgc_elapsed, gcs_done): New variables.
7865 (Fgarbage_collect): Use them.
7866 (init_alloc, syms_of_alloc): Set them up.
7867
100dcd40
JB
78682003-01-30 Juanma Barranquero <lektu@terra.es>
7869
7870 * w32fns.c (init_external_image_libraries): Add missing operator.
7871
fbd852af
JR
78722003-01-29 Jason Rumney <jasonr@gnu.org>
7873
7874 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
7875 an alternative name for jpeg.dll.
7876
8a2d8020
KH
78772003-01-29 Kenichi Handa <handa@m17n.org>
7878
7879 * xdisp.c (set_cursor_from_row): Pay attention to string display
7880 properties.
7881
058c18c7
AC
78822003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
7883
7884 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
7885 <escape>.
7886 (keycode_to_xkeysym_table): Reformat and add more comments.
7887 (XTread_socket): Drop special case for backspace.
7888
385f11cf
AC
78892003-01-28 Andrew Choi <akochoi@shaw.ca>
7890
7891 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
7892 values in old-style RGB specs.
7893
c922a224
JB
78942003-01-27 Juanma Barranquero <lektu@terra.es>
7895
7896 * w32fns.c (init_external_image_libraries): Try alternate names for the
7897 jpeg dll.
7898
0a1d6de0
JD
78992003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7900
7901 * gtkutil.c (create_dialog, xg_separator_p)
7902 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
7903 before calling strcmp or strlen.
7904
a97e4138 79052003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
7906
7907 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
7908 and handle image load failure.
7909
28908312
JR
79102003-01-26 Jason Rumney <jasonr@gnu.org>
7911
7912 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
7913 New functions.
f63fd14e
JB
7914 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
7915 Disable color table lookups. Call jpeg library functions
28908312
JR
7916 through pointers determined at runtime.
7917 (init_external_image_libraries): Try to load jpeg.dll.
7918
84e47416
RS
79192003-01-25 Richard M. Stallman <rms@gnu.org>
7920
7921 * lisp.h: Declare format2 instead of format1.
7922
7923 * fileio.c (barf_or_query_if_file_exists):
7924 Call format2 instead of format1.
7925
7926 * editfns.c (format2): New function, replaces format1
7927 but takes exactly two Lisp Objects as format args.
7928
7929 * buffer.c (Fkill_buffer): Call format2 instead of format1.
7930
a97e4138 79312003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
7932
7933 * xterm.h: Change to return value of x_dispatch_event to int.
7934
7935 * xterm.c (x_filter_event): New function.
7936 (event_handler_gdk, XTread_socket): Call x_filter_event.
7937 (x_dispatch_event): Change to return value of finish.
7938 (event_handler_gdk): Use return value from x_dispatch_event.
7939
7940 * xfns.c (x_window): Call create_frame_xic for GTK version to
7941 initialize input methods.
7942
7943 * gtkutil.h: Add (void) prototypes.
7944
7945 * gtkutil.c (create_menus): Remove code that puts the help menu to
7946 the right.
7947
54eefef1
JR
79482003-01-25 Jason Rumney <jasonr@gnu.org>
7949
7950 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
7951 [HAVE_PNG]: Sync with xfns.c version.
f63fd14e
JB
7952 (png_load): Adjust colors for Windows. Use Windows
7953 bitmaps. Disable color table lookups.
c262430d
JR
7954 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
7955 (init_png_functions): New function.
7956 (png_read_from_memory, png_load): Call png library functions
7957 through pointers determined at runtime.
7958 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
7959 (init_external_image_libraries): New function.
7960 (init_xfns): Call it.
54eefef1 7961
1a9e275b
AS
79622003-01-24 Andreas Schwab <schwab@suse.de>
7963
7964 * minibuf.c (Fminibuffer_message): Verify type of parameter.
7965
a97e4138 79662003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
7967
7968 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
7969 of static initializer.
7970
422eec7e
DL
79712003-01-24 Dave Love <fx@gnu.org>
7972
7973 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
7974 architectures.
7975
7976 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
7977 Use __alignof__.
7978
2a026b04
KH
79792003-01-24 Kenichi Handa <handa@m17n.org>
7980
7981 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 7982 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
7983 (command_loop_1): Call adjust_point_for_property with proper
7984 second arg.
7985
a18bb28d
JR
79862003-01-22 Jason Rumney <jasonr@gnu.org>
7987
7988 Sync changes with xterm.c and xfns.c.
7989
7990 * w32term.c (x_draw_glyph_string_foreground)
7991 (x_draw_composite_glyph_string_foreground): Implement overstriking.
7992
7993 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
7994 phys_cursor's hpos is overwritten. This is still not completely
7995 correct, as it doesn't really make sense to use hpos at all to
7996 get the cursor glyph (as that is relative to the width of the
7997 characters on the line, which may have changed during the update).
7998
7999 * w32term.c (notice_overwritten_cursor): Handle the special case
8000 of the cursor being in the first blank non-text line at the
8001 end of a window.
8002
8003 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
8004 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
8005 Compute from the x position returned by x_draw_glyphs.
8006
8007 (x_display_and_set_cursor): Don't set phys_cursor_width here,
8008 except for NO_CURSOR and system caret, to make phys_cursor_width
8009 contain what its name suggests.
8010 (notice_overwritten_cursor): Consider the cursor image erased if
8011 the output area intersects the cursor image in y-direction.
8012
6a097c0c
SM
8013 * w32term.c (note_mode_line_or_margin_highlight): Rename from
8014 note_mode_line_highlight and extend.
a18bb28d
JR
8015
8016 * w32term.c (last_window): New variable.
8017 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
8018 (note_mouse_movement): Remove reimplemented code in #if 0.
8019
8020 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
8021 not update_mode_lines, and always set it to 1.
8022
ac6e47ef
JR
80232003-01-21 Jason Rumney <jasonr@gnu.org>
8024
8025 * w32fns.c (IDC_HAND): Define it if system headers don't.
8026
80272003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
8028
8029 * w32term.h (struct w32_output): New member hand_cursor.
8030 (WM_EMACS_SETCURSOR): New message definition.
8031
8032 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
8033 function w32_define_cursor.
8034 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
8035 position, change member name output_data.x to output_data.w32 and
8036 add function w32_define_cursor.
8037 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
8038 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
8039 (w32_initialize_display_info):
8040 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
8041
8042 * w32fns.c (Vx_hand_shape): New variable.
8043 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
8044 WM_EMACS_SETCURSOR.
8045 (x-create-frame): Setup Cursor types.
8046
ceb39a17
JB
80472003-01-21 David Ponce <david@dponce.com>
8048
ac6e47ef 8049 * w32term.c (w32_encode_char): For DIM=1 charset, set
f63fd14e 8050 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
ac6e47ef 8051 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 8052 2002-09-30.)
ac6e47ef
JR
8053 (w32_draw_relief_rect): Declare all args.
8054 (w32_define_cursor): New.
8055
8056 * w32fns.c (w32_load_cursor): New function.
8057 (w32_init_class): Use it.
8058 (x_put_x_image): Declare all args.
8059
46cf0bed
JB
80602003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
8061
8062 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
8063
a97e4138 80642003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
8065
8066 * gtkutil.c: Must include stdio.h before termhooks.h
8067
83fc9c63
DL
80682003-01-21 Dave Love <fx@gnu.org>
8069
8070 * alloc.c (Fgc_status): Print zombie list.
8071 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
8072 Fix assignment of zombies.
8073 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
8074 Don't take car of non-cons.
8075
8076 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
8077
8078 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
8079
fe04b8c8
JR
80802003-01-20 David Ponce <david@dponce.com>
8081
8082 * w32menu.c (digest_single_submenu): Declare all args.
8083
8084 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
8085 changes in xmenu.c:
8086
8087 (parse_single_submenu): Use individual keymap's prompt
8088 string as pane name, if there is one.
8089 (set_frame_menubar): Save menu_items_n_panes from each call to
8090 parse_single_submenu and use it when calling digest_single_submenu.
8091
539e69a9
ST
80922003-01-20 Steven Tamm <steventamm@mac.com>
8093
8094 * macterm.c (XTread_socket): Checks for valid, visible window
8095 before sending a scroll-wheel event.
8096
675d000f
RS
80972003-01-20 Richard M. Stallman <rms@gnu.org>
8098
8099 * xdisp.c (redisplay_window): If mini window's buffer is not
8100 a minibuffer, then redisplay it like other windows.
8101
a97e4138 81022003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
8103
8104 * gtkutil.c (xg_create_frame_widgets): Check if there is an
8105 external tool bar before setting tool bar height.
8106
048addec
JD
81072003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8108
8109 * xterm.c (handle_one_xevent): Surround popup_activated
8110 with #ifdef:s for non-toolkit version.
8111
8112 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
8113 (gtkutil.o): New file.
8114 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
8115 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
8116
8117 * gtkutil.c: New file for GTK version.
8118
8119 * gtkutil.h: New file for GTK version.
8120
8121 * xterm.h: Add xt_or_gtk_widget.
8122 Include gtk files for USE_GTK.
8123 (struct x_output): Add toolbar_height.
8124 (struct x_output): Add GTK widgets and Gdk size_hints.
8125 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
8126 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
8127 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
8128
8129 * xterm.c: Include gtkutil.h for USE_GTK.
8130 Declare extern void free_frame_menubar for USE_GTK.
8131 (note_mouse_highlight): Check popup_activated for USE_GTK.
8132 (xt_action_hook): Don't compile if USE_GTK.
8133 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
8134 (xg_scroll_callback): New function.
8135 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
8136 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
8137 for USE_GTK.
8138 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
8139 xg_show_scroll_bar for USE_GTK.
8140 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
8141 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
8142 (event_handler_gdk): New function for USE_GTK.
8143 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
8144 (handle_one_xevent): Make sure widget is mapped before
8145 calling x_real_positions for USE_GTK.
8146 (XTread_socket): Add GTK event loop for USE_GTK.
8147 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
8148 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
8149 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
8150 (x_iconify_frame): Add code for USE_GTK.
8151 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
8152 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
8153 is in gtkutil.c.
8154 (x_term_init): Add initialization for GTK.
8155 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
8156
8157 * xmenu.c: Include gtkutil.h for USE_GTK.
8158 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
8159 (single_menu_item, single_menu_item, Fx_popup_dialog):
8160 Check for USE_GTK.
048addec
JD
8161 (popup_widget_loop): New function for USE_GTK.
8162 (x_activate_menubar): Add code for USE_GTK.
8163 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
8164 (menu_highlight_callback, menubar_selection_callback):
8165 Add USE_GTK versions.
048addec
JD
8166 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
8167 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
8168 (free_frame_menubar): Only compile if not USE_GTK. GTK version
8169 is in gtkutil.c.
8170 (popup_selection_callback): New version for USE_GTK.
8171 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 8172 one USE_X_TOOLKIT version.
048addec
JD
8173 (xmenu_show): Call create_and_show_popup_menu.
8174 (dialog_selection_callback): New version for USE_GTK.
8175 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 8176 one USE_X_TOOLKIT version.
048addec
JD
8177 (xdialog_show): Call create_and_show_dialog.
8178
8179 * xfns.c: Include gtkutil for USE_GTK.
8180 (x_window_to_frame, x_any_window_to_frame)
8181 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
8182 (x_top_window_to_frame): Add code for USE_GTK.
8183 (x_set_background_color): Call xg_set_background_color for GTK.
8184 (x_set_menu_bar_lines): Check for USE_GTK.
8185 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
8186 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
8187 (x_window): Call xg_create_frame_widgets for USE_GTK.
8188 (Fx_create_frame): Check for USE_GTK
8189 (Fx_file_dialog): New implementation for USE_GTK.
8190
8191 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
8192 (update_menu_bar): Add check for USE_GTK.
8193 (update_tool_bar): Add check for USE_GTK and external tool bar.
8194 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
8195 (redisplay_internal): Add check for USE_GTK and popup_activated.
8196 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
8197 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
8198 (display_menu_bar): Add check for USE_GTK
8199
8200 * lisp.h: Declare Vx_resource_name extern.
8201
a64387ee 8202 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
048addec
JD
8203 for USE_GTK.
8204 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
8205
8206 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
8207 (FRAME_EXTERNAL_TOOL_BAR): New macro.
8208 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
8209
8210 * fileio.c (Fread_file_name): Add check for USE_GTK.
8211
6bdb309a
SM
8212 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
8213 Add check for USE_GTK.
048addec
JD
8214
8215 * config.in: Added HAVE_GTK
8216
8217 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
8218
82192003-01-18 Stefan Monnier <monnier@cs.yale.edu>
8220
8221 * charset.h (Funibyte_char_to_multibyte): Export.
8222
82232003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8224
8225 * xmenu.c (mouse_position_for_popup): New function.
8226 (Fx_popup_menu): Call mouse_position_for_popup for X and
8227 mouse_position_hook for others.
8228
82292003-01-17 Kim F. Storm <storm@cua.dk>
8230
8231 * editfns.c (Finsert): Mention `string-make-multibyte' and
8232 `string-as-multibyte' in doc string.
8233
82342003-01-17 Kenichi Handa <handa@m17n.org>
8235
8236 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 8237
048addec
JD
8238 * editfns.c (Fformat): Convert an unibyte char argument that is
8239 formatted by "%c" to multibyte if the total result must be a
8240 multibyte string.
cd7df9c0 8241
048addec 82422003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 8243
048addec
JD
8244 * process.c (set-process-filter): Document unibyte/multibyte-ness
8245 of string argument.
56210ecd 8246
048addec 82472003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 8248
048addec 8249 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 8250
048addec
JD
8251 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
8252 (re_search_2): Likewise.
6df8b9fe 8253
048addec 82542003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 8255
048addec
JD
8256 * xdisp.c (message_dolog): Fix bug of the case that *Message*
8257 buffer is unibyte.
292ddc31 8258
048addec 82592003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 8260
048addec 8261 * fns.c (Fsubstring): Clarify doc string.
292ddc31 8262
048addec
JD
8263 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
8264 (Fprevious_char_property_change)
8265 (Fnext_single_char_property_change)
8266 (Fprevious_single_char_property_change, Fnext_property_change)
8267 (Fnext_single_property_change, Fprevious_property_change)
8268 (Fprevious_single_property_change, Fadd_text_properties)
8269 (Fput_text_property, Fset_text_properties)
8270 (Fremove_text_properties, Fremove_list_of_text_properties)
8271 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 8272
048addec 82732003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 8274
048addec
JD
8275 * process.h (struct Lisp_Process): New member plist replaces old
8276 member private_vars. All uses changed.
63e4e4c6 8277
048addec 8278 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 8279 (QCplist): Rename from QCvars. Change all uses.
048addec 8280 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 8281 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 8282 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 8283 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 8284
048addec 82852003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 8286
6bdb309a 8287 * m/delta.h: Remove (obsolete).
e833850f 8288
048addec 82892003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 8290
048addec
JD
8291 * fileio.c (Fdelete_directory, Fdelete_file): Document the
8292 behaviour in front of symlinks.
8293 (Fdelete_file): Raise an error on directories.
817cb127 8294
048addec 82952003-01-13 Dave Love <fx@gnu.org>
817cb127 8296
048addec 8297 * fns.c (Freverse): Use QUIT.
3e8cf2ea 8298
048addec 82992003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 8300
048addec
JD
8301 * minibuf.c (minibuffer_completion_contents):
8302 Error if point is inside prompt.
3e8cf2ea 8303
048addec
JD
8304 * keyboard.c (command_loop_1): Don't redisplay directly
8305 if there's a post-command-hook.
3e8cf2ea 8306
048addec
JD
8307 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
8308 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 8309
048addec 83102003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 8311
048addec 8312 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 8313
048addec
JD
8314 * process.c (QCvars): New variable.
8315 (syms_of_process): Intern and staticpro it.
8316 (Fset_process_contact): Removed function.
8317 (Fprocess_variable, Fset_process_variable): New functions.
8318 (syms_of_process): Defsubr them.
8319 (Fstart_process): Initialize private_vars plist to nil.
8320 (Fmake_network_process): New arg :vars to setup the private
8321 variables for new network process.
8322 (server_accept_connection): Copy server's private variables to
8323 client process.
2c10f029 8324
048addec
JD
8325 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
8326 crashes). Code rewritten and simplified. Now directly aligns the
8327 pointer and recalculates pure_bytes_used, rather than aligning the
8328 size and adjusting the pointer.
b8a76c6c 8329
048addec 83302003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 8331
048addec
JD
8332 * process.c (Fset_process_contact): New function.
8333 (syms_of_process): defsubr it.
8334 (make-network-process): Update doc.
3a8d0899 8335
048addec 83362003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 8337
048addec
JD
8338 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
8339 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 8340
048addec 83412003-01-10 Dave Love <fx@gnu.org>
4abc7470 8342
048addec 8343 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 8344
048addec 83452003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 8346
048addec
JD
8347 * process.c (Fmake_network_process): Convert new port number
8348 to host byte order for `:service t' case. From Mario Lang.
bf338245 8349
048addec 83502003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 8351
048addec
JD
8352 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
8353 instead of XtAppProcessEvent.
bf338245 8354
048addec
JD
8355 * xterm.c (handle_one_xevent): New function.
8356 (x_dispatch_event): New function.
8357 (XTread_socket): Call handle_one_xevent.
bf338245 8358
048addec 8359 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 8360
048addec
JD
8361 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
8362 call XQueryPointer to get coordinates.
8363 (popup_get_selection): Do not set popup_activated_flag to zero,
8364 let popup_deactivate_callback do that. Needed for Motif.
8365 Call x_dispatch_event instead of XtDispatchEvent.
8366 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 8367
048addec 83682003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 8369
6bdb309a 8370 * process.c (server_accept_connection): Fix recording of new
048addec
JD
8371 connection's local address in :local property of contact info.
8372 (Fmake_network_process): Record local network address for new
8373 client processes in :local property of contact info.
6bdb309a 8374 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 8375
048addec 83762003-01-07 Dave Love <fx@gnu.org>
00e3ab56 8377
048addec 8378 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 8379
048addec 83802003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 8381
048addec 8382 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 8383
048addec
JD
8384 * eval.c (Fuser_variable_p): Doc change. For custom variables,
8385 use the same test as for custom-variable-p.
8c6d74c6 8386
048addec 83872003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 8388
048addec
JD
8389 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
8390 Count LAST_LINE_MISFIT in scroll margin for end of window.
8391 Move label too_near_end before setting SCROLL_MARGIN_POS.
8392 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 8393
048addec
JD
8394 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
8395 scroll_conservatively case. If scrolling that much doesn't change
8396 STARTP, move it down one line.
e833850f 8397
048addec
JD
8398 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
8399 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 8400
048addec
JD
8401 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
8402 selected frame.
8c6d74c6 8403
048addec
JD
8404 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
8405 (syms_of_keymap): staticpro them.
8406 (Fapropos_internal): Initialize them and clear them out.
8407 Don't GCPRO them.
8c6d74c6 8408
048addec
JD
8409 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
8410 Doc fixes.
8c6d74c6 8411
048addec
JD
8412 * lisp.h: New misc type Lisp_Save_Value.
8413 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
8414 (XSAVE_VALUE): New macro.
8415 (struct Lisp_Save_Value): New data type.
8416 (union Lisp_Misc): Add u_save_value alternative.
8417 (make_save_value): Declared.
8c6d74c6 8418
048addec 8419 * alloc.c (make_save_value): New function.
8c6d74c6 8420
048addec
JD
8421 * xterm.c (x_catch_errors): Save dpy using make_save_value.
8422 (x_catch_errors_unwind): Call XSync.
8c6d74c6 8423
048addec 84242003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 8425
048addec 8426 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 8427
048addec
JD
8428 * keyboard.c (command_loop_1): Call adjust_point_for_property
8429 in direct action cases for Qforward_char and Qbackward_char.
8430 Set already_adjusted so it won't be done twice.
8c6d74c6 8431
048addec 84322002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
8c6d74c6 8433
048addec
JD
8434 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
8435 type definition of size_t.
8c609cff 8436
048addec 84372003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 8438
048addec
JD
8439 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
8440 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 8441
048addec 84422002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 8443
048addec
JD
8444 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
8445 to default to t.
fa634a5e 8446
048addec 84472002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 8448
048addec 8449 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 8450
048addec 84512002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 8452
048addec
JD
8453 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
8454 allow building in a different directory than source. Uses some
8455 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 8456
048addec 84572002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 8458
048addec
JD
8459 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
8460 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
8461 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
8462 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 8463
048addec 84642002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 8465
048addec
JD
8466 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
8467 <scroll-down-aggressively>: Doc fix.
2155ecf3 8468
048addec
JD
8469 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
8470 string as pane name, if there is one.
8471 (set_frame_menubar): Save menu_items_n_panes from each call to
8472 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 8473
048addec
JD
8474 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
8475 Don't try to make last line fully visible if it is past end of window.
61f1d295 8476
048addec 84772002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 8478
048addec
JD
8479 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
8480 (mac_menu_show): Add support for hierarchical popup menus.
8481 (add_menu_item): Remove indentation support.
8482 (fill_submenu, fill_menu): Create hierarchical menus
8483 instead of using indentation.
0b17a217 8484
048addec 84852002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 8486
048addec
JD
8487 * xdisp.c (try_cursor_movement): Don't call try_window here.
8488 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 8489
048addec 8490 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 8491
048addec 84922002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 8493
048addec
JD
8494 * macterm.c (XTread_socket): Call KeyTranslate for control and
8495 meta to deal correctly shifted non-alpha characters, like C-S-5
8496 being treated like C-%. Does not look for shift key to deal
8497 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 8498
048addec 84992002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 8500
048addec
JD
8501 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
8502 If it is non-nil, run timers. Use an unwind-protect to requeue
8503 the events that were read ahead.
8504 (popup_get_selection_unwind): New subroutine.
8505 (popup_get_selection_queue): File-scope variable now holds that queue.
8506 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
8507 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
8508 Use an unwind-protect to pop down the dialog box.
8509 (xdialog_show_unwind): New subroutine implements that.
f02cac82 8510
048addec
JD
8511 * xdisp.c (row_containing_pos): Change exit test using last_y.
8512 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 8513
048addec
JD
8514 * lread.c (load_error_handler): New function.
8515 (Fload): Handle errors in Fsubstitute_in_file_name.
8516 Don't expect Fsignal to return.
f02cac82 8517
048addec
JD
8518 * eval.c: Errors and throws work right with interrupt blocking.
8519 (struct catchtag): New elt interrupt_input_blocked.
8520 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
8521 (internal_catch, Fcondition_case, internal_condition_case)
8522 (internal_condition_case_1, internal_condition_case_2): Save it.
8523 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 8524
048addec 8525 * editfns.c (Fformat): Add parens.
f02cac82 8526
048addec
JD
8527 * dired.c (file_name_completion): Fix that change.
8528 Delete special quit-handling code; just use QUIT.
f02cac82 8529
048addec 85302002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
f02cac82 8531
048addec
JD
8532 * dired.c (file_name_completion): Close directory on error
8533 just as in directory_files_internal.
1a590729 8534
048addec 85352002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 8536
048addec
JD
8537 * window.c (Fset_window_configuration): Set old_point to correct
8538 value when new_current_buffer == current_buffer.
f02cac82 8539
048addec 85402002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 8541
048addec
JD
8542 Revisited my earlier fix for the following entry in etc/PROBLEMS:
8543 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
8544 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 8545
048addec
JD
8546 These changes were in part based upon suggestions made by Peter
8547 'Luna' Runestig [peter@runestig.com].
9785d95b 8548
048addec
JD
8549 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
8550 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 8551 g_b_init_get_sid_identifier_authority ): Add several static
048addec 8552 global variables.
9785d95b 8553
048addec
JD
8554 * w32.c (globals_of_w32): New function. Used to initialize those
8555 global variables that must always be initialized on startup even
8556 when the global variable initialized is non zero. Its primary
8557 purpose at this time is to set the global variables
8558 g_b_init_is_windows_9x, g_b_init_open_process_token,
8559 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
8560 g_b_init_get_sid_identifier_authority to 0 on startup.
8561 Called from main.
9785d95b 8562
048addec
JD
8563 * w32.c (is_windows_9x): Perform initialization only if
8564 g_b_init_is_windows_9x is equal to 0. On initialization set
8565 g_b_init_is_windows_9x equal to 1.
2308af15 8566
048addec
JD
8567 * w32.c (open_process_token): Perform initialization only if
8568 g_b_init_open_process_token is equal to 0. On initialization set
8569 g_b_init_open_process_token equal to 1.
2308af15 8570
048addec
JD
8571 * w32.c (get_token_information): Perform initialization only if
8572 g_b_init_get_token_information is equal to 0. On initialization
8573 set g_b_init_get_token_information equal to 1.
9785d95b 8574
048addec
JD
8575 * w32.c (lookup_account_sid): Perform initialization only if
8576 g_b_init_lookup_account_sid is equal to 0. On initialization
8577 set g_b_init_lookup_account_sid equal to 1.
9785d95b 8578
048addec
JD
8579 * w32.c (get_sid_identifier_authority): Perform initialization
8580 only if g_b_init_get_sid_identifier_authority is equal to 0.
8581 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 8582
f63fd14e 8583 * w32fns.c (globals_of_w32fns): New function. Used to initialize
048addec
JD
8584 those global variables that must always be initialized on startup
8585 even when the global variable initialized is non zero.
8586 Its primary purpose at this time is to initialize the global variable
8587 track_mouse_event_fn.
9785d95b 8588
a64387ee 8589 * w32fns.c (w32_wnd_proc): Remove initialization of
048addec 8590 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 8591
048addec 8592 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 8593
f63fd14e 8594 * w32menu.c (globals_of_w32menu): New function. Used to
048addec
JD
8595 initialize those global variables that must always be initialized
8596 on startup even when the global variable initialized is non zero.
8597 Its primary purpose at this time is to initialize the global
8598 variables get_menu_item_info and set_menu_item_info.
9785d95b 8599
048addec
JD
8600 * w32menu.c (initialize_frame_menubar): Remove initialization of
8601 get_menu_item_info and set_menu_item_info.
9785d95b 8602
048addec 8603 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 8604
048addec
JD
8605 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
8606 Declare them.
9785d95b 8607
048addec
JD
8608 * emacs.c (main): Call globals_of_w32 prior to calling
8609 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
8610 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
8611 is defined.
9785d95b 8612
048addec
JD
8613 * w32term.c (x_update_window_begin): Fix Windows API error
8614 detected by BoundsChecker. Test to determine if
8615 w32_system_caret_hwnd is NULL prior to attempting to use
8616 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 8617
048addec
JD
8618 * w32term.c (x_update_window_end): Fix Windows API error
8619 detected by BoundsChecker. Test to determine if
8620 w32_system_caret_hwnd is NULL prior to attempting to use
8621 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 8622
048addec 86232002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 8624
048addec
JD
8625 * coding.c (coding_system_require_warning): New variable.
8626 (syms_of_coding): DEFVAR it.
b6da19ef 8627
048addec 8628 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 8629
048addec
JD
8630 * fileio.c (choose_write_coding_system): Even if
8631 Vcoding_system_for_write is non-nil, if
8632 coding_system_require_warning is nonzero, call
8633 Vselect_safe_coding_system_function.
bfcf6dbe 8634
048addec 86352002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 8636
048addec
JD
8637 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
8638 (lisp): Add font-core.
2c568af5 8639
048addec 86402002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 8641
048addec
JD
8642 * textprop.c (text_read_only): New arg `propval'.
8643 (get_char_property_and_overlay): Remove unused var `next_overlay'.
8644 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 8645
048addec 86462002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 8647
048addec 8648 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 8649
048addec 86502002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 8651
048addec
JD
8652 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
8653 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
8654 Be more careful about when help_events are generated.
96720f09 8655
048addec 86562002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 8657
048addec
JD
8658 * macterm.c (mac_check_for_quit_char): Correctly set the
8659 modifiers of the event to 0.
8660 * mac.c (sys_select): Duplicate rfds before calling select to
8661 ensure that rfds survive the while loop.
e5ae1c49 8662
048addec 86632002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 8664
048addec
JD
8665 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
8666 row_containing_pos returned NULL.
2eb46b2d 8667
048addec 86682002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 8669
6bdb309a 8670 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 8671 non-blocking.
6bdb309a 8672 (sys_select): Fix sys_select to not use a timeout larger than
048addec 8673 the one given.
b11f1d8a 8674
048addec 86752002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 8676
048addec 8677 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 8678
048addec 86792002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 8680
048addec
JD
8681 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
8682 as the last thing.
a4ac5b17 8683
048addec 86842002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 8685
048addec 8686 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 8687
048addec 86882002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 8689
048addec
JD
8690 * editfns.c (Fformat): Handle precision in string conversion
8691 specifiers like libc functions do (ie, print at most that many
8692 characters).
85cce843 8693
048addec 86942002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 8695
048addec
JD
8696 * xdisp.c (row_containing_pos): Check more carefully
8697 whether charpos is really in the row before returning it.
0d4d26a7 8698
048addec 86992002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 8700
048addec 8701 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 8702
048addec
JD
8703 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
8704 each stack frame. This may change as it could be time consuming.
0d4d26a7 8705
048addec
JD
8706 * macterm.c (mac_check_for_quit_char, quit_char_comp)
8707 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 8708 (mac_initialize): Add code to check for pressing of quit_char
048addec 8709 in the OS event queue.
b11f1d8a 8710
048addec
JD
8711 * mac.c (sys_select): Call mac_check_for_quit_char every second
8712 while blocking on select.
0d4d26a7 8713
048addec
JD
8714 * mac.c (sys_read): Use sys_select to test for input first
8715 before calling read, to allow C-g to break.
9252f7bc 8716
048addec 87172002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 8718
048addec 8719 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 8720
048addec 8721 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 8722
048addec 8723 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 8724
048addec
JD
8725 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
8726 autoload.
9252f7bc 8727
048addec 8728 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 8729
048addec 8730 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 8731
048addec 87322002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 8733
048addec 8734 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 8735
048addec 87362002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 8737
048addec 8738 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 8739
048addec 8740 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 8741
048addec 8742 * alloca.c: Don't use #error.
02d588e2 8743
048addec 87442002-12-03 Dave Love <fx@gnu.org>
02d588e2 8745
048addec
JD
8746 * buffer.c (Qucs_set_table_for_input): New.
8747 (Fget_buffer_create): Use it.
8748 (Qset_buffer_major_mode_hook): Deleted.
8749 (Fset_buffer_major_mode): Revert previous change.
8750 (init_buffer_once): Intern ucs-set-table-for-input.
8751 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
8752 Add &Qucs_set_table_for_input.
451e2697 8753
048addec 87542002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 8755
048addec
JD
8756 * callint.c (Fcall_interactively): Use next_event only if less
8757 than key_count.
72742a99 8758
048addec 87592002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 8760
048addec
JD
8761 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
8762 names to 255 characters.
72742a99 8763
048addec
JD
8764 * macterm.c (XTread_socket): If all frames have been collapsed,
8765 expand the first one before handling drag-and-drop events.
72742a99 8766
048addec
JD
8767 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
8768 which is detected by autoconf.
40e6ff95 8769
048addec 87702002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 8771
048addec
JD
8772 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
8773 offset in two hints table to allow prebinding to be redone and
8774 allow the executable to be stripped.
c02138c6 8775
048addec 87762002-11-29 Dave Love <fx@gnu.org>
c02138c6 8777
048addec
JD
8778 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
8779 already provided.
0e47bbf7 8780
048addec 87812002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 8782
048addec
JD
8783 * xdisp.c (start_display): Check more intelligently for
8784 whether the line is continued.
8785 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 8786
048addec 87872002-11-28 Dave Love <fx@gnu.org>
44129dcb 8788
048addec
JD
8789 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
8790 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 8791
048addec 87922002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 8793
048addec
JD
8794 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
8795 more descriptive error output from lread.c:Fload upon most require
8796 cycles during boostrapping.
1637fd2c 8797
048addec 87982002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 8799
048addec
JD
8800 * fileio.c (Finsert_file_contents): Give a more appropriate error
8801 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 8802
048addec
JD
8803 * dired.c (Ffile_attributes): Don't return negative file sizes for
8804 files bigger than 2Gb when off_t is 32 bit.
540c2788 8805
048addec 88062002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 8807
048addec 8808 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 8809
048addec
JD
8810 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
8811 Test GETPGRP_VOID instead.
8812 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 8813
048addec
JD
8814 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
8815 Don't define.
8816 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 8817
048addec 8818 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 8819
048addec 88202002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 8821
048addec
JD
8822 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
8823 supported.
4042a81a 8824
048addec 88252002-11-25 Dave Love <fx@gnu.org>
4042a81a 8826
048addec 8827 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 8828
048addec 8829 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 8830
048addec 88312002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 8832
048addec 8833 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 8834
048addec 88352002-11-24 Steven Tamm <steventamm@mac.com>
82122254 8836
048addec
JD
8837 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
8838 determine the size of pointers alloced in unexed space instead
8839 of using possibly invalid emacs_zone pointers. This fixes the
8840 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 8841
048addec 88422002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 8843
048addec 8844 * search.c (Fstring_match): Doc fix.
c1ee53bc 8845
048addec
JD
8846 * callint.c (Fcall_interactively): If a command fails because
8847 `*' detects a read-only buffer, but RECORD_FLAG is set,
8848 record it anyway if the args don't actually do tty input.
5598c32e 8849
048addec 88502002-11-22 Dave Love <fx@gnu.org>
5598c32e 8851
048addec 8852 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 8853
048addec
JD
8854 * keyboard.c (interrupt_signal): Provide forward declaration.
8855 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 8856
048addec 8857 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 8858
048addec 88592002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 8860
048addec
JD
8861 * eval.c (interactive_p): Skip any number of bytecode
8862 and special form frames, in any order.
516eea8e 8863
048addec 88642002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 8865
048addec
JD
8866 * w32fns.c (convert_mono_to_color_image): New function.
8867 (xbm_load, xbm_load_image): Use it when foreground or background
8868 is explicitly set.
04dbfa08 8869
048addec 88702002-11-19 Dave Love <fx@gnu.org>
04dbfa08 8871
048addec 8872 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 8873
048addec 88742002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 8875
048addec
JD
8876 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
8877 (XPutPixel): Swap blue and red.
8878 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
8879 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
8880 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
8881 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 8882
048addec 88832002-11-18 Dave Love <fx@gnu.org>
d824beee 8884
048addec 8885 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 8886
048addec 8887 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 8888
048addec 8889 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 8890
048addec
JD
8891 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
8892 malloc, realloc, calloc.
d824beee 8893
048addec
JD
8894 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
8895 (bcmp): Don't define.
d824beee 8896
048addec 8897 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 8898
048addec 8899 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 8900
048addec 8901 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 8902
048addec 8903 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 8904
048addec
JD
8905 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
8906 Don't include alloca.h.
d824beee 8907
048addec 8908 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 8909
048addec 8910 * regex.c (_GNU_SOURCE): Don't define.
1998560a 8911
048addec 8912 * process.c (_GNU_SOURCE): Don't define.
1998560a 8913
048addec 8914 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 8915
048addec 89162002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 8917
048addec 8918 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 8919
048addec 89202002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 8921
048addec
JD
8922 * dispextern.h (struct face): Add `overstrike' field.
8923 * xterm.c (x_draw_glyph_string_foreground)
8924 (x_draw_composite_glyph_string_foreground): Implement overstriking.
8925 * xfaces.c (load_face_font): Set `face->overstrike' based on
8926 result from choose_face_font.
8927 (best_matching_font, choose_face_font): Add `needs_overstrike'
8928 argument, and use it to return whether overstriking is desirable
8929 for this face/font combo.
8930 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 8931
048addec 89322002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 8933
048addec
JD
8934 This change is my fix for the following entry in etc/PROBLEMS:
8935 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
8936 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 8937
048addec
JD
8938 * w32.c: Added wrapper functions around the win32 API functions
8939 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
8940 GetSidIdentifierAuthority. These wrapper functions serve two
8941 purposes:
8942 1. They ensure that the wrapped function can never be called
8943 when Emacs is running on an operating system on which they are
8944 not supported (Microsoft Windows 95 / 98 / ME).
8945 2. They call the wrapped functions via function pointers rather
8946 than calling them directly. This avoids taking advantage of the
8947 undocumented fact that although these functions are not supported
8948 in the 9x branch of Microsoft Windows, the functions do exist in
8949 the version of advapi32.dll that is found in the 9x branch of
8950 Microsoft Windows.
f60ae425 8951
6bdb309a 8952 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
8953 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
8954 and GetSidIdentifierAuthority with calls to the newly added
8955 wrapper functions.
f60ae425 8956
048addec
JD
8957 * w32.h: Added extern declarations for the following functions:
8958 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
8959 syms_of_w32menu, and void syms_of_fontset.
f60ae425 8960
6bdb309a 8961 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
8962 function pointer track_mouse_event_fn in the handler for the
8963 WM_SETFOCUS message.
3582b6a3 8964
6bdb309a 8965 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
8966 reinitialize the function pointers set_menu_item_info and
8967 get_menu_item_info.
f60ae425 8968
048addec 89692002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 8970
048addec
JD
8971 * sound.c: Added a partial implementation of play-sound-internal
8972 for Microsoft Windows. Added various #ifdef / #else / #endif
8973 code blocks to separate the code that will compile under
8974 Microsoft Windows from the code that is specific to Gnu/Linux.
8975 Moved several blocks of code around to make this separation of code
8976 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 8977
048addec 8978 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 8979
048addec
JD
8980 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
8981 added support for play-sound-internal under Windows would be
8982 included in the build of Emacs.
517f42a0 8983
048addec 89842002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 8985
048addec 8986 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 8987
048addec 8988 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 8989
048addec 89902002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 8991
048addec
JD
8992 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
8993 (adjust_point_for_property): Move out of display and invisible even if
8994 we were already inside before (in case a property was added while
8995 we weren't looking). Be more careful when handling invisible props.
8996 Skip invisible text as if it really wasn't there at all.
aab83f91 8997
048addec 89982002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 8999
048addec
JD
9000 * w32term.c (x_draw_image_foreground)
9001 (w32_draw_image_foreground_1): Use standard copy and invert
9002 operations to draw images.
aab83f91 9003
048addec
JD
9004 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
9005 depth of 1.
9006 (xbm_read_bitmap_data): Invert bits as xbm is read in.
9007 (XPutPixel): Don't invert bits here.
a4478a76 9008
048addec 90092002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 9010
048addec
JD
9011 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
9012 (w32_draw_image_foreground_1): Handle image masks.
9013 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 9014
048addec
JD
9015 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
9016 (x_from_xcolors): Adjust RGB values for W32.
9017 (image_background, image_background_transparent)
9018 (postprocess_image, x_to_xcolors, x_disable_image)
9019 (x_build_heuristic_mask): Adapt for W32 and enable.
9020 (x_create_x_image_and_pixmap): Mark images with palettes as such.
9021 (xbm_load): Remove unused variable.
03670a65 9022
048addec 90232002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 9024
048addec 9025 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 9026
048addec 90272002-11-14 Dave Love <fx@gnu.org>
59daa29a 9028
048addec 9029 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 9030
048addec
JD
9031 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
9032 * xmenu.c (unuse_menu_items, digest_single_submenu):
9033 * xfns.c (x_put_x_image):
9034 * xdisp.c (message2_nolog, set_message):
9035 * undo.c (record_point):
9036 * terminfo.c (tparam):
9037 * syntax.c (scan_sexps_forward):
9038 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
9039 * composite.c (update_compositions):
9040 * cm.c (calccost, cmgoto):
9041 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 9042
048addec 9043 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 9044
048addec
JD
9045 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
9046 Don't declare.
59daa29a 9047
048addec 9048 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 9049
048addec
JD
9050 * fns.c (Fcopy_sequence): Doc fix.
9051 (Fmap_char_table): Cast `call2'.
3947677c 9052
048addec
JD
90532002-11-14 Francesco Potorti` <pot@gnu.org>
9054
9055 * s/sol2-8.h: New file.
9056
90572002-11-14 Kim F. Storm <storm@cua.dk>
9058
9059 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
9060 dependency on `risky-local-variable' and the :propertize form.
9061
90622002-11-12 Stefan Monnier <monnier@cs.yale.edu>
9063
9064 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
9065
9066 * syntax.c (scan_sexps_forward): Undo last patch.
9067 Use a more obvious fix: check eob before updating the syntax table.
9068
90692002-11-09 Stefan Monnier <monnier@cs.yale.edu>
9070
9071 * syntax.c (scan_sexps_forward): Update syntax table before reading
9072 a char rather than after so we don't update the table past eob.
9073
90742002-11-09 Dave Love <fx@gnu.org>
9075
9076 * buffer.c (Fset_buffer_major_mode): Fix last change.
9077
9078 * regex.c (regexec): Fix pmatch declaration.
9079
9080 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
9081
9082 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
9083 to self-inserting characters.
9084 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
9085
9086 * coding.c (Vtranslation_table_for_input): New.
9087 (syms_of_coding): DEFVAR it.
9088
90892002-11-08 Juanma Barranquero <lektu@terra.es>
9090
9091 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
9092 window.
9093
90942002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9095
6bdb309a 9096 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
9097 cp, and i.
9098
90992002-11-06 Dave Love <fx@gnu.org>
9100
9101 * buffer.c (Qset_buffer_major_mode_hook): New.
9102 (Fset_buffer_major_mode): Use it.
9103
91042002-11-06 Richard M. Stallman <rms@gnu.org>
9105
9106 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
9107 and stop_polling.
9108
9109 * process.c (wait_reading_process_input):
9110 Test POLLING_PROBLEM_IN_SELECT, not hpux.
9111 Avoid initialization for auto Lisp_Object var.
9112
9113 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
9114
9115 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
9116
91172002-11-05 Richard M. Stallman <rms@gnu.org>
9118
9119 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
9120
9121 * callint.c (Fcall_interactively): New local filter_specs.
9122 (Fcall_interactively): Check for progn as well as let.
9123 Add a gcpro.
9124 (Qprogn): New variable.
9125 (syms_of_callint): Staticpro and init Qprogn.
9126
91272002-11-04 John Paul Wallington <jpw@shootybangbang.com>
9128
9129 * lread.c (Feval_buffer): Doc fix.
9130
91312002-11-04 Dave Love <fx@gnu.org>
9132
9133 * keyboard.c (read_char): Always translate iff
9134 Vkeyboard_translate_table is a char table and c is valid.
9135
9136 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
9137 and fix C types.
9138
91392002-11-03 Stefan Monnier <monnier@cs.yale.edu>
9140
9141 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
9142
9143 * editfns.c (get_pos_property): Don't hardcode Qfield.
9144
9145 * keyboard.c (adjust_point_for_property): Handle `display' prop on
9146 overlays. Also handle `invisible' prop.
9147
91482002-11-02 Stefan Monnier <monnier@cs.yale.edu>
9149
9150 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
9151 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
9152
91532002-11-01 Andreas Schwab <schwab@suse.de>
9154
9155 * editfns.c (Fmessage): Revert last change to properly handle %%.
9156
91572002-11-01 Stefan Monnier <monnier@cs.yale.edu>
9158
9159 * xmenu.c (unuse_menu_items): New fun.
9160 (menu_items_inuse): New var.
9161 (syms_of_xmenu): Initialize it.
9162 (init_menu_items): Use it to detect re-entrance.
9163 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
9164 (Fx_popup_menu): Remove spurious XSETFRAME.
9165
9166 * editfns.c (find_field): Make an exception for nil fields.
9167
91682002-11-01 Dave Love <fx@gnu.org>
9169
9170 * m/gec63.h: Deleted.
9171
91722002-10-31 Dave Love <fx@gnu.org>
9173
9174 * xterm.c (XTread_socket): Fix last change.
9175 (xaw_scroll_callback): Cast call_data to long to avoid warning.
9176
91772002-10-31 Stefan Monnier <monnier@cs.yale.edu>
9178
9179 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
9180
91812002-10-30 Stefan Monnier <monnier@cs.yale.edu>
9182
9183 * editfns.c (overlays_around, get_pos_property): New funs.
9184 (find_field): Use them.
9185 Also be careful not to modify POS before its last use.
9186 (Fmessage): Don't Fformat if there's nothing to format.
9187
91882002-10-30 Dave Love <fx@gnu.org>
9189
9190 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
9191 [HAVE_PTY_H]; Include pty.h.
9192
9193 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
9194
9195 * xterm.c (Qeql): Declare.
9196 (Vx_keysym_table): New.
9197 (syms_of_xterm): Initialize it.
9198 (XTread_socket): Use it. Deal with ASCII keysyms.
9199 (XSetIMValues) [HAVE_X11R6]: Prototype.
9200
9201 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
9202 (lispy_kana_keys): Comment out.
9203 (make_lispy_event) [XK_kana_A]: Comment out.
9204 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
9205 Fix sprintf call.
9206
9207 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
9208 regexp.h change).
9209 (TERMINFO, LIBS_TERMCAP): Define.
9210
9211 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
9212 (bcmp): Define conditional on HAVE_BCMP.
9213 (NO_SIOCTL_H): Don't define.
9214 (TIOCSIGSEND): Don't make conditional on IRIX6.
9215
9216 * s/sol2-5.h: Don't include strings.h.
9217 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
9218
9219 * s/irix6-0.h (IRIX6): Don't define.
9220 (bcopy, bcmp, bzero): Don't undef.
9221
9222 * s/irix6-5.h: Don't include strings.h.
9223 (IRIX6): Don't define.
9224 (bcopy, bcmp, bzero): Don't undef.
9225
9226 * syntax.c (Fforward_comment): Doc fix.
9227
92282002-10-29 Kim F. Storm <storm@cua.dk>
9229
9230 * process.c (Fsignal_process): Allow PROCESS to be specified by
9231 name in addition to pid (as integer or string).
9232
92332002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
9234
9235 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
9236 environments.
9237
92382002-10-27 Kim F. Storm <storm@cua.dk>
9239
9240 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
9241
9242 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
9243
9244 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
9245
9246 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
9247
92482002-10-26 Richard M. Stallman <rms@gnu.org>
9249
9250 * editfns.c (Fformat): Detect invalid format letters for floats.
9251
92522002-10-25 Kenichi Handa <handa@m17n.org>
9253
9254 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
9255 (x_set_title): Likewise.
9256
92572002-10-25 Juanma Barranquero <lektu@terra.es>
9258
9259 * macgui.h:
9260 * w32gui.h: Remove definition of XColor.
9261
9262 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
9263
92642002-10-24 Kim F. Storm <storm@cua.dk>
9265
9266 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
9267 Callers changed (supply dummy arg).
9268
9269 * lisp.h (get_window_cursor_type): Update prototype.
9270
9271 * w32term.c (x_display_and_set_cursor): Get active_cursor from
9272 get_window_cursor_type to track system caret.
9273
92742002-10-24 Kim F. Storm <storm@cua.dk>
9275
9276 * process.c (Fformat_network_address): New function.
9277 (syms_of_process): Defsubr it.
9278 (list_processes_1): Use it to format :local/:remote address if
f9711de4 9279 service/host is not set; before Emacs would crash in that case.
048addec
JD
9280 (Fmake_network_process): Don't use Ffind_operation_coding_system
9281 to setup coding system if host or service is not set.
9282
92832002-10-23 Juanma Barranquero <lektu@terra.es>
9284
9285 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
9286
9287 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
9288 COLORREF.
9289
9290 * macgui.h:
9291 * w32gui.h: Add definition of XColor.
9292
9293 * macfns.c:
9294 * w32fns.c:
9295 * xfaces.c: Remove definition of XColor.
9296
92972002-10-22 Stefan Monnier <monnier@cs.yale.edu>
9298
9299 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
9300
9301 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
9302 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
9303 window if it is dedicated.
9304 (Fshrink_window): Add preserve_before as was done for enlarge_window.
9305 (Vspecial_display_function): Update docstring.
9306
9307 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
9308 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
9309 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
9310
93112002-10-21 Stefan Monnier <monnier@cs.yale.edu>
9312
9313 * casefiddle.c (casify_region): Don't treat a prefix char as part
9314 of a word when at the beginning.
9315
93162002-10-17 Juanma Barranquero <lektu@terra.es>
9317
9318 * lread.c (syms_of_lread): Fix typos.
9319
93202002-10-17 Dave Love <fx@gnu.org>
9321
9322 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
9323
93242002-10-16 Richard M. Stallman <rms@gnu.org>
9325
9326 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
9327
93282002-10-14 Juanma Barranquero <lektu@terra.es>
9329
9330 * w16select.c (syms_of_win16select): Fix docstring for
9331 `selection-coding-system'.
9332
9333 * w32select.c (syms_of_w32select): Likewise.
9334
93352002-10-14 Stefan Monnier <monnier@cs.yale.edu>
9336
9337 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
9338 a backslash-quoted char.
9339 (scan_lists, scan_sexps_forward): Pacify the compiler.
9340
93412002-10-13 Richard M. Stallman <rms@gnu.org>
9342
9343 * window.c (window_scroll): Set immediate_quit.
9344
9345 * print.c (print): When backquote form is the car of a list,
9346 output in old style. Use old_backquote_output to output all
9347 comma forms inside it in old style too.
9348
9349 * buffer.h (struct buffer): Move `undo_list' down below `name'.
9350
93512002-10-11 Markus Rost <rost@math.ohio-state.edu>
9352
9353 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
9354 batch mode).
9355
9356 * lread.c (Fload): Doc fix (load-suffixes).
9357
93582002-10-10 Steven Tamm <steventamm@mac.com>
9359
9360 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
9361 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
9362 Also switch the default to Qnil from Qt.
9363
93642002-10-08 Kenichi Handa <handa@m17n.org>
9365
9366 * coding.c (code_convert_region): When we need more GAP for
9367 conversion, pay attention to the case that coding->produced is not
9368 greater than coding->consumed.
9369
93702002-10-07 Richard M. Stallman <rms@gnu.org>
9371
9372 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
9373
93742002-10-06 Andrew Choi <akochoi@shaw.ca>
9375
9376 * macmenu.c (mac_menu_show): Add j to count menu items; match
9377 menu_item_selection to it to find selected item.
9378
93792002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9380
9381 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
9382 cases. The correct fix is to pass ReparentNotify to Xt.
9383 The shell widget interprets ConfigureNotify differently depending
9384 on if it has been reparented or not.
9385
93862002-10-05 Markus Rost <rost@math.ohio-state.edu>
9387
9388 * editfns.c (Fformat_time_string): Doc fix.
9389
93902002-10-05 John Paul Wallington <jpw@shootybangbang.com>
9391
9392 * fns.c (Flength): Doc fix.
9393
93942002-10-04 Stefan Monnier <monnier@cs.yale.edu>
9395
9396 * keyboard.c (keyremap): New struct.
9397 (read_key_sequence): Use it: globally replace keytran_foo with
9398 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
9399 keytran_next and fkey_next to just `next'.
9400
94012002-10-04 Steven Tamm <steventamm@mac.com>
9402
9403 * macterm.c (keycode_to_xkeysym_table): Change return to be
9404 treated like an X keysym.
9405
94062002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9407
9408 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
9409 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
9410 This is to also handle x/y changes that occur because of a resize.
9411
94122002-10-02 John Paul Wallington <jpw@shootybangbang.com>
9413
9414 * frame.c (Vdelete_frame_functions): New variable.
9415 (syms_of_frame): Initialize and defvar it.
9416 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
9417 it when frame's `tooltip' parameter is non-nil.
9418
9419 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
9420
9421 * w32fns.c (x_create_tip_frame): Likewise.
9422
9423 * macfns.c (x_create_tip_frame): Likewise.
9424
94252002-09-30 Kenichi Handa <handa@m17n.org>
9426
9427 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
9428 -1 before calling ccl_driver.
9429
9430 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
9431 Only when it is non-nil, handle composition sequence.
9432 (setup_coding_system) <0>: Don't force composition handling.
9433
9434 * Makefile.in (lisp, shortlisp): Add utf-16.elc
9435
94362002-09-29 Richard M. Stallman <rms@gnu.org>
9437
9438 * search.c (Freplace_match): Adjust match data for the substitution
9439 just made in the buffer.
9440
9441 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
9442 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
9443
94442002-09-27 Richard M. Stallman <rms@gnu.org>
9445
9446 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
9447 (read_char): Use them. Do all exits thru the end of the function.
9448
94492002-09-27 Kenichi Handa <handa@etl.go.jp>
9450
9451 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
9452 is nil.
9453
94542002-09-26 Richard M. Stallman <rms@gnu.org>
9455
9456 * regex.h (__restrict_arr): Don't define if already defined.
9457
9458 * coding.c (run_pre_post_conversion_on_str):
9459 Save and restore Vdeactivate_mark.
9460
94612002-09-26 John Paul Wallington <jpw@shootybangbang.com>
9462
9463 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
9464
94652002-09-26 Kenichi Handa <handa@etl.go.jp>
9466
9467 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
9468 nonzero, try face's family at first. Otherwise try FAMILY at first.
9469 (choose_face_font): If C is a single byte char or latin-1, call
9470 try_font_list with PREFER_FACE_FAMILY 1.
9471
94722002-09-21 Richard M. Stallman <rms@gnu.org>
9473
9474 * window.c (select_window_1): Don't select frame.
9475 Set frame's selected window only when frame itself is selected.
9476 (Fselect_window): Doc fix.
9477
94782002-09-18 Kim F. Storm <storm@cua.dk>
9479
9480 * process.c (make-network-process): Doc fix (there is no
9481 network-server-log-function hook).
9482
94832002-09-18 Richard M. Stallman <rms@gnu.org>
9484
9485 * print.c (print): Clear out the unused parts of Vprint_number_table.
9486 (syms_of_print): Doc fix for `print-number-table'.
9487
9488 * unexelf.c (unexec): Undo previous change.
9489
94902002-09-17 Andreas Schwab <schwab@suse.de>
9491
9492 * m/alpha.h [LINUX]: Don't define DATA_START.
9493
94942002-09-16 Dave Love <fx@gnu.org>
9495
9496 * unexelf.c (unexec): Deal with .got, reinstating change from
9497 25-08-1999.
9498
94992002-09-13 Richard M. Stallman <rms@gnu.org>
9500
9501 * s/sol2-6.h (UNEXEC): Comment out definition.
9502
9503 * unexsol.c (unexec): Don't downcase first letter of error msg.
9504
9505 * xfaces.c (Fcolor_supported_p): Just one arg is required.
9506
95072002-09-12 Markus Rost <rost@math.ohio-state.edu>
9508
9509 * unexsol.c: Include buffer.h, charset.h, coding.h.
9510
95112002-09-11 Richard M. Stallman <rms@gnu.org>
9512
9513 * unexsol.c: Don't use report_file_error; do it by hand
9514 using dlerror.
9515
9516 * process.c (wait_reading_process_input, both versions):
9517 Before calling turn_on_atimers, call stop_polling.
9518
9519 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
9520
9521 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
9522 we go to too_near_end, call clear_glyph_matrix.
9523 (redisplay_window): After make_cursor_line_fully_visible,
9524 call clear_glyph_matrix and bypass `goto done'.
9525
9526 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
9527 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
9528
95292002-09-10 Richard M. Stallman <rms@gnu.org>
9530
9531 * fileio.c (Fdo_auto_save): Catch error making directory.
9532 Only call push_message if we need to.
9533 At the same time, make an unwind-protect to pop it.
9534 Rename local message_p to old_message_p.
9535 (do_auto_save_make_dir, do_auto_save_eh): New functions.
9536 (do_auto_save_unwind): Don't call pop_message.
9537
9538 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
9539
9540 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
9541
9542 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
9543
9544 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
9545
95462002-09-10 Stefan Monnier <monnier@cs.yale.edu>
9547
9548 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
9549 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
9550 (re_match_2_internal): Be more careful with infinite loops.
9551
95522002-09-10 Kim F. Storm <storm@cua.dk>
9553
9554 * macros.c (end_kbd_macro): New function.
9555 (Fend_kbd_macro): Use it.
9556
9557 * macros.h (end_kbd_macro): Declare extern.
9558
9559 * keyboard.c (Fdiscard_input): If defining keyboard macro,
9560 end and save it instead of discarding it.
9561
95622002-09-09 Markus Rost <rost@math.ohio-state.edu>
9563
9564 * s/sol2-6.h: Fix typo. Add comment.
9565
95662002-09-09 Richard M. Stallman <rms@gnu.org>
9567
9568 * regex.c (regnum_t): Use signed int, not unsigned int.
9569
9570 * s/sol2-6.h: New file.
9571
9572 * s/sol2-5.h (UNEXEC): Definition deleted.
9573
95742002-09-08 Kim F. Storm <storm@cua.dk>
9575
9576 * macros.c (executing_macro_index): Change type to EMACS_INT.
9577 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
9578
9579 * macros.h (executing_macro_index): Change type to EMACS_INT.
9580
95812002-09-06 Richard M. Stallman <rms@gnu.org>
9582
9583 * casetab.c (set_case_table): Make canon table point to eqv table.
9584
95852002-09-06 Juanma Barranquero <lektu@terra.es>
9586
9587 * coding.c (syms_of_coding): Fix spacing.
9588
9589 * composite.c (Fcompose_region_internal)
9590 (Fcompose_string_internal): Likewise.
9591
9592 * data.c (Flsh): Likewise.
9593
9594 * fontset.c (Fset_fontset_font): Likewise.
9595
9596 * macfns.c (Fx_server_max_request_size): Likewise.
9597
9598 * w16select.c (syms_of_win16select): Likewise.
9599
9600 * w32select.c (syms_of_w32select): Likewise.
9601
9602 * xselect.c (syms_of_xselect): Likewise.
9603
96042002-09-05 Richard M. Stallman <rms@gnu.org>
9605
9606 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
9607 call EXTEND_RANGE_TABLE and return a proper value.
9608 (set_image_of_range): Don't call set_image_of_range_1
9609 if no TRANSLATE or if range includes all of Latin-1.
9610 Only call it for the Latin-1 part of the range.
9611 For other cases, make two separate ranges,
9612 one for the original specified characters and one for
9613 their case-conversions.
9614
96152002-09-04 Richard M. Stallman <rms@gnu.org>
9616
9617 * s/sol2-5.h (UNEXEC): Use unexsol.o.
9618
9619 * window.c (displayed_window_lines): Correct for one-off bug
9620 in HEIGHT on non-window displays.
9621
9622 * regex.c (set_image_of_range_1): New function.
9623 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
9624 Return a value to indicate running out of memory.
9625 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
9626 (extend_range_table_work_area): New subroutine.
9627 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
9628 Different calling conventions, and used from set_image_of_range{,_1}.
9629 (IMMEDIATE_QUIT_CHECK): Definitions moved.
9630
96312002-09-04 Juanma Barranquero <lektu@terra.es>
9632
9633 * makefile.w32-in: All dependencies updated.
9634
96352002-09-01 Richard M. Stallman <rms@gnu.org>
9636
9637 * unexsol.c: New file.
9638
9639 * xfns.c (Qbox): Declare external, don't define.
9640
9641 * xdisp.c (redisplay_window) <force-start case>:
9642 If point is on semi-visible last line, reposition
9643 it at previous line.
9644
9645 * alloc.c (display_malloc_warning): Use display-warning.
9646 (malloc_warning_1): Function deleted.
9647
9648 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
9649
9650 * lread.c (read1): Handle #! by skipping the line.
9651
96522002-08-31 Richard M. Stallman <rms@gnu.org>
9653
9654 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
9655 Don't include LDFLAGS.
9656 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
9657
96582002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
9659
9660 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
9661 member of x_display_info unless we compile for some window system.
9662
96632002-08-31 Kim F. Storm <storm@cua.dk>
9664
9665 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
9666 (get_window_cursor_type): Don't use them.
9667 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
9668
96692002-08-30 Kenichi Handa <handa@etl.go.jp>
9670
9671 * xdisp.c (get_next_display_element): Fix previous change.
9672
96732002-08-30 Andrew Choi <akochoi@shaw.ca>
9674
9675 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
9676 (expose_window): Use it to fix the display of overlapping
9677 rows (merge code from xterm.c).
9678
9679 * macfns.c (Qbox): Add extern declaration.
9680
96812002-08-30 Juanma Barranquero <lektu@terra.es>
9682
9683 * w32fns.c (Qbox): Make extern.
9684 (syms_of_w32fns): Remove initialization of Qbox.
9685
96862002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
9687
9688 * xfns.c (Fx_open_connection): Fix error message.
9689
96902002-08-30 Kim F. Storm <storm@cua.dk>
9691
9692 The following changes consolidates the handling of the cursor
9693 type in xdisp.c, moving duplicate code and functionality from
9694 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
9695
9696 * frame.h (enum text_cursor_kinds): Consolidated here.
9697 Added DEFAULT_CURSOR value.
9698 (struct frame) <desired_cursor, cursor_width>
9699 <blink_off_cursor, blink_off_cursor_width>: New fields.
9700 Consolidated from output_x, output_w32 and output_mac structs.
9701 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
9702 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
9703
9704 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
9705 Variables consolidated here.
9706 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
9707 (Vcursor_in_non_selected_windows): Renamed from
9708 cursor_in_non_selected_windows and changed to Lisp_Object.
9709 (syms_of_xdisp): Define and staticpro new and moved variables.
9710 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
9711 consolidated here. Recognize Qhollow setting.
9712 (set_frame_cursor_types): New function to set frame cursor types
9713 based on the frame parameters.
9714 (get_window_cursor_type): New function to calculate new cursor
9715 type and width for the specified window. Based on duplicated
9716 code consolidated here.
9717 Enhancements: cursor-in-non-selected-windows may be a cursor type,
9718 check buffer-local alternate-cursor-type and blink-cursor-alist
9719 before using built-in blink off methods.
9720
9721 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
9722
9723 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
9724 (get_specified_cursor_type, get_window_cursor_type)
9725 (set_frame_cursor_types): Added prototypes.
9726
9727 * macfns.c (x_specified_cursor_type): Removed.
9728 (x_set_cursor_type): Use set_frame_cursor_types.
9729 (Qbar, Qbox): Removed.
9730 (syms_of_macfns): Don't intern or staticpro them.
9731
9732 * macterm.c (x_specified_cursor_type): Remove prototype.
9733 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
9734 (x_display_and_set_cursor): Use get_window_cursor_type.
9735 Remove unused local variables cursor_non_selected, active_cursor.
9736 Redraw cursor if hbar cursor width changes.
9737 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
9738
9739 * macterm.h (enum text_cursor_kinds): Removed.
9740 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
9741 <blink_off_cursor, blink_off_cursor_width>: Members removed.
9742 (FRAME_DESIRED_CURSOR): Macro removed.
9743
9744 * w32fns.c (Vblink_cursor_alist): Removed.
9745 (Qbar, Qhbar, Qbox, Qhollow): Removed.
9746 (syms_of_w32fns): Don't intern, staticpro, or define them.
9747 (x_specified_cursor_type): Removed.
9748 (x_set_cursor_type): Use set_frame_cursor_types.
9749
9750 * w32term.c (x_specified_cursor_type): Remove prototype.
9751 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
9752 (x_display_and_set_cursor): Use get_window_cursor_type.
9753 Remove unused local variables cursor_off_state.
9754 Redraw cursor if hbar cursor width changes.
9755 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
9756
9757 * w32term.h (enum text_cursor_kinds): Removed.
9758 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
9759 <blink_off_cursor, blink_off_cursor_width>: Members removed.
9760 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
9761 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
9762 (struct w32_display_info) <x_highlight_frame>: Renamed member from
9763 w32_highlight_frame.
9764
9765 * xfns.c (Vblink_cursor_alist): Removed.
9766 (Qbar, Qhbar, Qbox, Qhollow): Removed.
9767 (syms_of_xfns): Don't intern, staticpro, or define them.
9768 (x_specified_cursor_type): Removed.
9769 (x_set_cursor_type): Use set_frame_cursor_types.
9770
9771 * xterm.c (x_specified_cursor_type): Remove prototype.
9772 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
9773 (x_display_and_set_cursor): Use get_window_cursor_type.
9774 Remove unused local variables cursor_off_state.
9775 Redraw cursor if hbar cursor width changes.
9776
9777 * xterm.h (enum text_cursor_kinds): Removed.
9778 (struct output_x) <current_cursor, desired_cursor, cursor_width>
9779 <blink_off_cursor, blink_off_cursor_width>: Members removed.
9780 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
9781 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
9782 (x_specified_cursor_type): Remove prototype.
9783
97842002-08-28 Richard M. Stallman <rms@gnu.org>
9785
9786 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
9787 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
9788 (Vblink_cursor_alist): New variable.
9789 (syms_of_w32fns): Initialize and defvar it.
9790 (x_specified_cursor_type): Recognize Qbox for filled box.
9791 Exceptions are hollow boxes.
9792 (Qbox, Qhollow): New variables.
9793 (syms_of_w32fns): Initialize and staticpro them.
9794
9795 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
9796 New macros.
9797 (struct w32_output): New fields blink_off_cursor,
9798 blink_off_cursor_width.
9799 (FRAME_CURSOR_WIDTH): New macro.
9800
9801 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
9802 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
9803
9804 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
9805 for bar cursor.
9806
9807 * w32term.c (expose_overlaps): New function.
9808 (expose_window): Use it to fix the display of overlapping rows.
9809
98102002-08-28 Simon Josefsson <jas@extundo.com>
9811
9812 * xfns.c (Fx_open_connection): Improve help when X connection
9813 fails, xhost is insecure and xauth is better.
9814
98152002-08-28 Juanma Barranquero <lektu@terra.es>
9816
9817 * makefile.w32-in: Add missing dependencies on w32term.h and
9818 composite.h.
9819
9820 * emacs.c (USAGE1): Add missing newline.
9821
98222002-08-27 Andrew Choi <akochoi@shaw.ca>
9823
9824 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
9825
98262002-08-27 Richard M. Stallman <rms@gnu.org>
9827
9828 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
9829 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
9830 (Vblink_cursor_alist): New variable.
9831 (syms_of_xfns): Initialize and defvar it.
9832 (x_specified_cursor_type): Recognize Qbox for filled box.
9833 Exceptions are hollow boxes.
9834 (Qbox, Qhollow): New variables.
9835 (syms_of_xfns): Initialize and staticpro them.
9836
9837 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
9838 New macros.
9839 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
9840
9841 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
9842 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
9843
9844 * emacs.c (main): Handle --script.
9845 (USAGE1): Mention --script.
9846 (standard_args): Define sort order for --script.
9847
98482002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
9849
9850 * xdisp.c (redisplay_updating_p): Variable removed.
9851 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
9852 New variables.
9853 (init_iterator): Don't free realized faces if
9854 inhibit_free_realized_faces is set.
9855 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
9856 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
9857 initialize Qinhibit_free_realized_faces.
9858
9859 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
9860 when iterator is adding glyphs to a glyph matrix.
9861
98622002-08-27 Kenichi Handa <handa@etl.go.jp>
9863
9864 * xdisp.c (get_next_display_element): In unibyte case, don't use
9865 octal form for such eight-bit characters that can be converted to
9866 multibyte char.
9867
98682002-08-26 Kim F. Storm <storm@cua.dk>
9869
9870 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
9871 and background colors. From Joe Buehler (tiny change).
9872
98732002-08-26 Miles Bader <miles@gnu.org>
9874
9875 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
9876
98772002-08-25 Andrew Choi <akochoi@shaw.ca>
9878
9879 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
9880 defined instead of MAC_OSX.
9881
9882 * s/darwin.h (select): Define select to sys_select only if
9883 HAVE_CARBON is defined.
9884 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
9885 (DONT_REOPEN_PTY): #def it.
9886
9887 * macterm.c (XTread_socket): Remove code to call
9888 SendEventToEventTarget for keys with command modifiers when
9889 mac_command_key_is_meta is nil.
9890
98912002-08-24 Andreas Schwab <schwab@suse.de>
9892
9893 * eval.c (Fdefvar): Fix last change.
9894
98952002-08-23 Richard M. Stallman <rms@gnu.org>
9896
9897 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
9898 Record variables in load history as (defvar . VAR).
9899 (Fdefvar): Don't record in load history if no initial value.
9900 (Qdefvar): New variable.
9901 (syms_of_eval): Init and staticpro it.
9902
9903 * lread.c (syms_of_lread): Doc fix.
9904 (build_load_history): Use Fmember to see if a definition
9905 is already in the Vload_history element.
9906
9907 * process.c (Fstart_process): Remove /: from program name.
9908
9909 * emacs.c (decode_env_path): Don't add /: if file name handler
9910 has a `safe-magic' property.
9911
9912 * callproc.c (Fcall_process): Remove /: from program name.
9913
99142002-08-23 Stefan Monnier <monnier@cs.yale.edu>
9915
9916 * regex.c (PATFETCH): Remove the translating fetch.
9917 (PATFETCH_RAW): Rename to PATFETCH.
9918 (set_image_of_range): New fun.
9919 (SET_RANGE_TABLE_WORK_AREA): Use it.
9920 (regex_compile): Don't translate the pattern chars so eagerly.
9921 Only do it when inserting an `exactn' bytecode or when handling
9922 a char-range.
9923 (mutually_exclusive_p): Avoid empty statement.
9924
99252002-08-22 Kim F. Storm <storm@cua.dk>
9926
9927 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
9928 end up on a partially visible line; this reverts a specific part
9929 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
9930 display error which has been reported several times now.
9931 However it introduces the problem that changes was supposed to fix.
9932 See my comments in the source if you want to debug this further.
9933
99342002-08-20 Kenichi Handa <handa@etl.go.jp>
9935
9936 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
9937
99382002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
9939
9940 * msdos.c (croak): Add `void' to definition.
9941
c1380aa6 9942 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
048addec
JD
9943 Don't define them, they are defined in msdos.c.
9944
9945 * mem-limits.h [MSDOS]: Declare etext.
9946
9947 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
9948 `const' since CORRECT_DIR_SEPS modifies its target.
9949
99502002-08-19 Kim F. Storm <storm@cua.dk>
9951
2fb0ce67 9952 * keyboard.c (Fclear_this_command_keys): Add optional arg
048addec
JD
9953 KEEP-RECORD to avoid clearing lossage when we just want to clear
9954 the current key sequence (kmacro needs this).
9955
99562002-08-19 Kenichi Handa <handa@localhost>
9957
9958 * composite.c (run_composition_function): Call FUNC if it is fboundp.
9959
9960 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
9961 cons, return Qnil.
9962
99632002-08-17 Richard M. Stallman <rms@gnu.org>
9964
9965 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
9966
9967 * sysdep.c [!VMS]: Include sys/files.h.
9968
9969 * editfns.c (save_restriction_restore): Defend from unchained marker.
9970
9971 * buffer.c (overlays_at): Handle extending vec uniformly.
9972 (overlays_in): Handle extending vec from length 0 as in overlays_at.
9973
99742002-08-15 Andrew Choi <akochoi@shaw.ca>
9975
9976 * mac.c (init_mac_osx_environment): New function.
9977
9978 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
9979
99802002-08-14 Kim F. Storm <storm@cua.dk>
9981
9982 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
9983 executing macro before appending to it (when used from Lisp).
9984 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
9985 which is called prior to each iteration of macro (for kmacro.el).
9986 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
9987
9988 * lisp.h (Fexecute_kbd_macro): Update prototype.
9989
9990 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
9991
99922002-08-14 Kenichi Handa <handa@etl.go.jp>
9993
9994 * xselect.c (QUTF8_STRING): New variable.
9995 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
9996 (x_atom_to_symbol): Likewise.
9997 (x_get_local_selection): New argument local_request. If it is
9998 nonzero, call handler_fn with the second arg nil.
9999 (x_handle_selection_request): Call x_get_local_selection with
10000 local_request 0.
10001 (lisp_data_to_selection_data): Don't encode the string here.
10002 (Fx_get_selection_internal): Call x_get_local_selection with
10003 local_request 1.
10004 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
10005
10006 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
10007
10008 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
10009
100102002-08-13 Richard M. Stallman <rms@gnu.org>
10011
10012 * minibuf.c (Fminibufferp): New function.
10013 (syms_of_minibuf): Defsubr it.
10014 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
10015
100162002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
10017
10018 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
10019
100202002-08-12 Richard M. Stallman <rms@gnu.org>
10021
10022 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
10023 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
10024 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
10025 already.
10026
10027 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
10028
100292002-08-11 Andrew Choi <akochoi@shaw.ca>
10030
10031 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
10032 (Vmac_pass_command_to_system): New variable.
10033 (Vmac_pass_control_to_system): New variable.
10034 (do_mouse_moved): Check wp with is_emacs_window.
10035 (XTread_socket): Check window_ptr with is_emacs_window.
10036 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
10037 events back to Mac Toolbox for processing, depending on values of
10038 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
10039 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
10040 Vmac_pass_control_to_system.
10041
100422002-08-10 Kenichi Handa <handa@etl.go.jp>
10043
10044 * coding.c (unencodable_char_position): New function.
10045 (Funencodable_char_position): New function.
10046 (syms_of_coding): Defsubr Funencodable_char_position.
10047
100482002-08-10 Andrew Choi <akochoi@shaw.ca>
10049
10050 * mac.c (sys_select) [MAC_OSX]: New function.
10051
10052 * macterm.c (MakeMeTheFrontProcess): New function.
10053 (mac_initialize): Call MakeMeTheFrontProcess.
10054
10055 * s/darwin.h: Define select to sys_select.
10056
100572002-08-09 Richard M. Stallman <rms@gnu.org>
10058
10059 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
10060
100612002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
10062
10063 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
10064 end of the buffer.
10065
100662002-08-08 Ken Raeburn <raeburn@mit.edu>
10067
10068 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
10069
10070 * puresize.h (BASE_PURESIZE): Increase to 910000.
10071
100722002-08-08 Kenichi Handa <handa@etl.go.jp>
10073
10074 * coding.c (Ffind_operation_coding_system): For write-region, if
10075 VISIT is a filename, make it the target.
10076
100772002-08-07 Richard M. Stallman <rms@gnu.org>
10078
10079 * alloc.c (mark_object): Detect long lists for debugging.
10080 (mark_object_loop_halt): New variable.
10081
10082 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
10083
10084 * data.c (Fmake_variable_frame_local): Doc fix.
10085
100862002-08-01 David Ponce <david@dponce.com>
10087
10088 * w32menu.c (local_heap, local_alloc, local_free): New macros.
10089 (malloc_widget_value, free_widget_value)
10090 (w32_free_submenu_strings): Use them.
10091
10092 (push_submenu_start, push_submenu_end, push_left_right_boundary)
10093 (push_menu_pane, push_menu_item, single_keymap_panes)
10094 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
10095 (single_submenu, set_frame_menubar)
10096 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
10097
10098 (Fx_popup_menu): Don't show pop up menu until preceding one is
10099 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
10100
10101 * w32menu.c: Changes adapted from xmenu.c
10102 (set_frame_menubar): First parse all submenus,
10103 then make widget_value trees from them.
10104 Don't allocate any widget_value objects
10105 until we are done with the parsing.
10106 (parse_single_submenu): New function.
10107 (digest_single_submenu): New function.
10108 (single_submenu): Function deleted, replaced by those two.
10109
101102002-08-04 Andrew Choi <akochoi@shaw.ca>
10111
10112 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
10113 returns a valid window pointer before proceeding for keyDown and
10114 autoKey events.
10115
101162002-08-03 Andrew Choi <akochoi@shaw.ca>
10117
10118 * macterm.c (USE_CARBON_EVENTS): New macro.
10119 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
10120 (x_iconify_frame): Call CollapseWindow.
10121 (Vmac_reverse_ctrl_meta): New variable.
10122 (Vmac_wheel_button_is_mouse_2): New variable.
10123 (init_mac_drag_n_drop): New function.
10124 (mac_do_receive_drag): New function.
10125 (mac_handle_service_event): New function.
10126 (init_service_handler): New function.
10127 (mac_to_emacs_modifiers): New function.
10128 (mac_event_to_emacs_modifiers): New function.
10129 (mac_get_mouse_btn): New function.
10130 (mac_convert_event_ref): New function.
10131 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
10132 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
10133 mac_get_mouse_btn.
10134 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
10135
10136 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
10137 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
10138 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
10139 TOOL_BAR_EVENT for MAC_OS as well.
10140 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
10141 as for WINDOWS_NT.
10142 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
10143
10144 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
10145
101462002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
10147
10148 * xdisp.c (forward_to_next_line_start): Fix a condition that
10149 lead to a newline being skipped.
10150
101512002-08-02 Andrew Choi <akochoi@shaw.ca>
10152
10153 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
10154
101552002-08-01 Richard M. Stallman <rms@gnu.org>
10156
10157 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
10158
101592002-07-31 Andrew Choi <akochoi@shaw.ca>
10160
10161 * macfns.c: #undef init_process before #define-ing it.
10162
10163 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
10164 HAVE_CARBON is defined.
10165
101662002-07-31 Richard M. Stallman <rms@gnu.org>
10167
10168 * xmenu.c (set_frame_menubar): First parse all submenus,
10169 then make widget_value trees from them.
10170 Don't allocate any widget_value objects
10171 until we are done with the parsing.
10172 (parse_single_submenu): New function.
10173 (digest_single_submenu): New function.
10174 (single_submenu): Function deleted, replaced by those two.
10175
101762002-07-30 Juanma Barranquero <lektu@terra.es>
10177
10178 * w32proc.c (syms_of_ntproc): Fix docstring of
10179 `w32-get-true-file-attributes'.
10180
101812002-07-28 Richard M. Stallman <rms@gnu.org>
10182
10183 * s/hpux8.h (HPUX8): Define this before including hpux.h.
10184 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
10185
10186 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
10187
10188 * keyboard.c (make_lispy_event):
10189 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
10190 Explicitly clear up_modifier in event->modifiers.
10191
101922002-07-27 Richard M. Stallman <rms@gnu.org>
10193
10194 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
10195
10196 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
10197 for bar cursor.
10198
101992002-07-26 Kenichi Handa <handa@etl.go.jp>
10200
10201 * coding.c (detect_coding_iso2022): While checking a byte sequence
10202 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
10203 it in the normal loop.
10204
102052002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
10206
10207 * xterm.c (expose_overlaps): New function.
10208 (expose_window): Use it to fix the display of overlapping rows.
10209
10210 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
10211
102122002-07-23 Ken Raeburn <raeburn@gnu.org>
10213
10214 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
10215 since it only depends on XUINT.
10216
10217 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
10218 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
10219 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
10220 Macros deleted.
3947677c 10221
77d1daf2
AS
10222 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
10223 its value over other approaches.
10224 * sysdep.c (start_of_data): Don't define the function if a macro
10225 form has been defined.
8a8e19a3 10226
048addec
JD
102272002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
10228
10229 * xdisp.c (redisplay_updating_p): New variable.
10230 (init_iterator): Don't free realized faces when
10231 redisplay_updating_p is set.
10232 (redisplay_internal): Set redisplay_updating_p while updating
10233 the display.
10234
102352002-07-23 Richard M. Stallman <rms@gnu.org>
10236
10237 * editfns.c (Fmessage): Treat "" like nil.
10238
102392002-07-23 Kenichi Handa <handa@etl.go.jp>
10240
10241 * xdisp.c (face_before_or_after_it_pos):
10242 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
10243
102442002-07-22 Juanma Barranquero <lektu@terra.es>
10245
10246 * callproc.c (init_callproc) [DOS_NT]:
10247 Initialize Vshared_game_score_directory to nil.
10248 (syms_of_callproc) [DOS_NT]: Likewise.
10249
102502002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
10251
10252 * xdisp.c (display_line): Replace an abort with xassert.
10253
102542002-07-21 Richard M. Stallman <rms@gnu.org>
10255
10256 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
10257 and END_UNCHANGED when setting buffer_unchanged_p.
10258 Use current_matrix_up_to_date_p to decide whether to use
10259 try_cursor_movement.
10260
10261 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
10262
10263 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
10264
10265 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
10266 Set to nil if dir does not exist.
10267 (syms_of_callproc): Init unconditionally and simply.
10268
10269 * buffer.c (Fbuffer_list): Doc fix.
10270
102712002-07-21 Ken Raeburn <raeburn@gnu.org>
10272
10273 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
10274
10275 * buffer.c (mmap_realloc): When shrinking, make sure number of
10276 pages to unmap is rounded towards zero.
10277
10278 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
10279 (XSETINT): Deleted.
10280
10281 * m/att3b.h (XINT): Don't define.
10282 (VALBITS, VALMASK, XTYPE): Deleted.
10283 (DATA_SEG_BITS): Define.
10284 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
10285 ARRAY_MARK_FLAG): Deleted.
10286 (DATA_SEG_BITS): Define.
10287 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
10288 (DATA_SEG_BITS): Define.
10289
102902002-07-20 Richard M. Stallman <rms@gnu.org>
10291
10292 * print.c (print_error_message): New args CONTEXT and CALLER.
10293 Calls changed.
10294
10295 * lisp.h (print_error_message): Declare new args.
10296
10297 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
10298 and CONTEXT to print_error_message, don't print them here.
10299 For a Quit, don't use Vsignaling_function.
10300 Call message_log_maybe_newline.
10301
10302 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
10303
103042002-07-20 Kim F. Storm <storm@cua.dk>
10305
10306 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
10307
103082002-07-19 Ken Raeburn <raeburn@gnu.org>
10309
10310 * bytecode.c (struct byte_stack): Pointers into byte string now
10311 point to const.
10312 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
10313 const.
10314 * charset.h (BCOPY_SHORT): Source pointer now points to const.
10315 * coding.c (encode_eol, detect_coding, detect_eol):
10316 (decode_coding, encode_coding, detect_coding_system):
10317 Source strings now treated as const.
10318 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
10319 modify Lisp string contents.
10320 * coding.h (decode_coding, encode_coding, detect_coding,
10321 detect_eol): Declarations updated.
10322 * composite.c (compose_chars_in_text): Treat Lisp string contents
10323 as const.
10324 * dispnew.c (safe_bcopy): Source pointer now points to const.
10325 * lisp.h (STRING_COPYIN): New macro.
10326 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
10327 (internal_with_output_to_temp_buffer): Declarations updated.
10328 * print.c (temp_output_buffer_setup):
10329 (internal_with_output_to_temp_buffer): Buffer name argument is now
10330 pointer to const.
10331 * sound.c (struct sound_device): Function pointer field "write"
10332 buffer argument now points to const.
10333 (vox_write): Buffer argument points to const.
10334 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
10335 contents as const.
10336 * sysdep.c (emacs_write): Buffer pointer now const.
10337 * term.c (encode_terminal_code): Buffer pointer now const.
10338 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
10339 (x_face_list_fonts, x_update_menu_appearance):
10340 (hash_string_case_insensitive): Treat Lisp string contents as const.
10341
103422002-07-19 Juanma Barranquero <lektu@terra.es>
10343
048addec
JD
10344 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
10345
10346 * fileio.c (syms_of_fileio): Likewise.
c62aec78
JB
10347 (Ffile_name_as_directory): Fix argument name in docstring.
10348 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
048addec
JD
10349
103502002-07-18 Richard M. Stallman <rms@gnu.org>
10351
10352 * data.c (Fdefalias): Doc fix.
10353
103542002-07-17 Dave Love <fx@gnu.org>
10355
10356 * intervals.h (text_property_stickiness): Use P_.
10357
10358 * ccl.c: Remove `emacs' conditionals.
10359 (ccl_backtrace_table): Fix size spec.
10360 (ccl_driver): Fix type errors.
10361
103622002-07-16 Ken Raeburn <raeburn@gnu.org>
10363
10364 * alloc.c (xstrdup, make_string, make_unibyte_string)
10365 (make_multibyte_string, build_string): String pointer args now
10366 point to const.
10367 * charset.c (find_charset_in_text, c_string_width):
10368 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
10369 * fileio.c (report_file_error):
10370 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
10371 (count_combining_before, count_combining_after, insert_1_both):
10372 (insert, insert_and_inherit, insert_string):
10373 (insert_before_markers, insert_before_markers_and_inherit):
10374 * lread.c (intern, oblookup, hash_string):
10375 * minibuf.c (temp_echo_area_glyphs):
10376 * search.c (fast_c_string_match_ignore_case):
10377 * sysdep.c (emacs_open, set_file_times):
10378 * xfaces.c (xstricmp):
10379 * xdisp.c (store_frame_title, string_char_and_length):
10380 (message_dolog, message2, message2_nolog, set_message): Likewise.
10381 (set_message_1): Cast message string argument to const pointer.
10382 * editfns.c (general_insert_function): Insertion function now
10383 takes pointer to const for input data.
10384 * charset.h (find_charset_in_text, c_string_width):
10385 (parse_str_as_multibyte): Declarations updated.
10386 * dispextern.h (xstricmp): Declaration updated.
10387 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
10388 (count_size_as_multibyte, count_combining_before):
10389 (count_combining_after, insert_1, insert_1_both, message_dolog):
10390 (insert, insert_and_inherit, insert_before_markers)
10391 (insert_before_markers_and_inherit, set_message, message2):
10392 (message2_dolog, build_string, make_string, make_unibyte_string):
10393 (make_multibyte_string, intern, oblookup, report_file_error):
10394 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
10395 (emacs_open, xstrdup): Declarations updated.
10396 * systime.h (set_file_times): Declaration updated.
10397
10398 * charset.c (find_charset_in_text, lisp_string_width): Use const
10399 for pointer to lisp string data.
10400 * charset.h (FETCH_STRING_CHAR_ADVANCE):
10401 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
10402 * coding.c (Ffind_coding_systems_region_interval):
10403 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
10404 (Fmake_directory_internal, Fdelete_directory):
10405 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
10406 * fontset.c (font_family_registry, fs_query_fontset):
10407 (list_fontsets):
10408 * frame.c (Fframe_parameter):
10409 * keyboard.c (cmd_error_internal):
10410 * keymap.c (Fdescribe_buffer_bindings):
10411 * lread.c (complete_filename_p, openp):
10412 * minibuf.c (Fminibuffer_complete_word):
10413 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
10414 (face_before_or_after_it_pos, next_element_from_string):
10415 (get_overlay_arrow_glyph_row, display_mode_element):
10416 (decode_mode_spec_coding):
10417 * xterm.c (same_x_server): Likewise.
10418
10419 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
10420 settings of non-existent fields.
10421
10422 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
10423 copy a lisp value.
10424
10425 * lread.c (Fintern_soft): Use string macros instead of
10426 Lisp_String fields.
10427 * keyboard.c (echo_char, parse_modifiers_uncached):
10428 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
10429 * textprop.c (validate_interval_range, interval_of): Likewise.
10430
10431 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
10432
10433 * charset.h (FETCH_STRING_CHAR_ADVANCE)
10434 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
10435 XSTRING()->size_byte.
10436
10437 * lisp.h (SDATA, SREF): Produce rvalue.
10438 (SSET): New macro.
10439 * alloc.c (make_event_array): Use SSET for storing into a string.
10440 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
10441 a string.
10442 * casefiddle.c (casify_object): Use SSET.
10443 * charset.h (FETCH_STRING_CHAR_ADVANCE)
10444 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
10445 address of string contents.
10446 * data.c (Faref): Use SDATA.
10447 (Faset): Use SDATA, SSET.
10448 * dired.c (directory_files_internal): Use SSET.
10449 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
10450 (Fread_file_name): Use SREF, SSET.
10451 * fns.c (concat): Use SSET.
10452 (concat, Fdelete): Use SDATA.
10453 * insdel.c (insert_from_string_1): Use SDATA.
10454 * keyboard.c (Fevent_convert_list): Use SREF.
10455 * lread.c (Fload): Use SDATA, SSET.
10456 * macfns.c (validate_x_resource_name): Use SSET.
10457 * process.c (status_message): Use SSET.
10458 * search.c (wordify): Use SDATA.
10459 (Freplace_match): Use SREF.
10460 * w32fns.c (validate_x_resource_name): Use SSET.
10461 * xfns.c (validate_x_resource_name): Use SSET.
10462 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
10463
104642002-07-16 Richard M. Stallman <rms@gnu.org>
10465
10466 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
10467
10468 * xdisp.c (reconsider_clip_changes):
10469 Don't test prevent_redisplay_optimizations_p.
10470 (redisplay_internal): Test prevent_redisplay_optimizations_p
10471 along with clip_changed in some cases.
10472 (try_window_id): Likewise.
10473 (redisplay_window): New local var buffer_unchanged_p.
10474
10475 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
10476
10477 * process.c (create_process): Test USG_SUBTTY_WORKS.
10478 (process_send_signal): Clean up handling of GID.
10479 Detect errors in ioctls meant to set GID.
10480
10481 * window.c (temp_output_buffer_show):
10482 Don't set prevent_redisplay_optimizations_p.
10483
104842002-07-15 Juanma Barranquero <lektu@terra.es>
10485
10486 * eval.c (Fdefvaralias): Add docstring argument.
10487
104882002-07-15 Ken Raeburn <raeburn@gnu.org>
10489
10490 * lisp.h (STRING_INTERVALS): Produce rvalue.
10491 (STRING_SET_INTERVALS): New macro.
10492 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
10493 * fns.c (Fstring_as_multibyte): Likewise.
10494 * intervals.c (balance_possible_root_interval, delete_interval)
10495 (create_root_interval, copy_intervals_to_string): Likewise.
10496 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
10497 instead of 0.
10498
104992002-07-14 Ken Raeburn <raeburn@gnu.org>
10500
10501 * lisp.h (STRING_SET_CHARS): New macro.
10502 (SCHARS, SBYTES): Produce rvalues.
10503 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
10504 * fns.c (concat): Likewise.
10505 * lread.c (read_vector): Likewise.
10506
10507 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
10508 (STRING_SET_UNIBYTE): New macro.
10509 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
10510 length of -1) changed to use STRING_SET_UNIBYTE.
10511 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
10512 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
10513 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
10514 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
10515 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
10516 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
10517 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
10518 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
10519 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
10520 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
10521 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
10522 STRING_BYTES or indirection changed to SCHARS, SBYTES,
10523 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
10524 unchanged for now.
10525
105262002-07-13 Kim F. Storm <storm@cua.dk>
10527
10528 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
10529
105302002-07-12 Richard M. Stallman <rms@gnu.org>
10531
10532 * fileio.c (Fwrite_region): Doc fix.
10533
10534 * print.c (print_error_message): Don't handle Vsignaling_function here.
10535
10536 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
10537 (command_loop_1): Avoid certain actions after memory-full error.
10538
10539 * eval.c (Fsignal): Don't call cancel_hourglass.
10540 For a memory-full error, don't call Vsignal_hook_function
10541 and don't set Vsignaling_function.
10542
10543 * process.c (process_send_signal): Add abort call.
10544
105452002-07-11 Markus Rost <rost@math.ohio-state.edu>
10546
10547 * keymap.c (Fkey_binding): Fix typo.
10548
105492002-07-11 Richard M. Stallman <rms@gnu.org>
10550
10551 * alloc.c (Vmemory_full): New variable.
10552 (Vmemory_signal_data): Renamed from memory_signal_data.
10553 Uses changed.
10554 (syms_of_alloc): Defvar them.
10555 (memory_full, buffer_memory_full): Set Vmemory_full.
10556
10557 * lisp.h (Vmemory_full): Add declaration.
10558 (current_column, indented_beyond_p): Change declaration.
10559
10560 * indent.c (last_known_column): Declare as double, not float.
10561 (current_column, current_column_1, string_display_width)
10562 (position_indentation): Return `double'.
10563 (indented_beyond_p): Arg `column' is `double'. Callers changed.
10564
10565 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
10566 (back_to_previous_visible_line_start)
10567 (reseat_at_next_visible_line_start, next_element_from_buffer):
10568 Use `double', not `float', when calling indented_beyond_p.
10569
10570 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
10571
10572 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
10573
105742002-07-11 Juanma Barranquero <lektu@terra.es>
10575
10576 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
f9711de4
JB
10577 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
10578 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
10579 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
10580 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
10581 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
048addec
JD
10582
105832002-07-10 Juanma Barranquero <lektu@terra.es>
10584
d814862a
JB
10585 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
10586 All callers changed.
048addec
JD
10587
105882002-07-09 Stefan Monnier <monnier@cs.yale.edu>
10589
10590 * data.c (Fdefalias): Add an optional `docstring' argument.
10591 (set_internal, Fsetq_default): Use XCAR/XCDR.
10592
10593 * composite.c (HASH_VALUE, HASH_KEY):
10594 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
10595
105962002-07-09 Kenichi Handa <handa@etl.go.jp>
10597
10598 * callproc.c (Fcall_process): Fix previous change.
10599
106002002-07-07 Stefan Monnier <monnier@cs.yale.edu>
10601
10602 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
10603 Add support for hash-tables.
10604 (Ftry_completion): Return t even if the string appears multiple times.
10605
10606 * fns.c (Fnconc): Use XCDR.
10607 (Fprovide): Use CONSP and XCDR.
10608 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
10609 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
10610 (Fmake_hash_table): Accept `:size nil'.
10611 (Fmakehash): Delete: moved to subr.el.
10612 (syms_of_fns): Don't defsubr makehash.
10613
10614 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
10615 (HASH_TABLE_SIZE): Move from fns.c.
10616
106172002-07-07 Richard M. Stallman <rms@gnu.org>
10618
10619 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
10620 Instead just return 0 when there is something to be done.
10621 (try_scrolling): If make_cursor_line_fully_visible returns 0,
10622 retry scrolling as if cursor were off the bottom.
10623 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
10624 return CURSOR_MOVEMENT_MUST_SCROLL.
10625 (redisplay_window): If make_cursor_line_fully_visible returns 0,
10626 go to try_to_scroll.
10627
10628 * buffer.c (Fbuffer_local_value): Store current value into its binding
10629 so we get the up-to-date value for the binding that is loaded.
10630
10631 * eval.c (Fdefmacro): Doc fix.
10632
106332002-07-05 Dave Love <fx@gnu.org>
10634
10635 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
10636 correctly.
10637
10638 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
10639 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
10640 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
10641 CCL_LookupCharConstTbl.
10642 (syms_of_ccl): Defvar translation-hash-table-vector.
10643
106442002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10645
10646 * xdisp.c: Remove unused variable `face'.
10647
106482002-07-04 Juanma Barranquero <lektu@terra.es>
10649
10650 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
10651 obsolescence information.
10652
106532002-07-03 Andrew Choi <akochoi@shaw.ca>
10654
10655 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
10656 pattern. Search cache first.
10657 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
10658 for Japanese font.
10659 (XLoadQueryFont): Use it.
10660
106612002-07-02 Richard M. Stallman <rms@gnu.org>
10662
10663 * keymap.c (Fdefine_key): Doc fix.
10664
10665 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
10666
106672002-07-02 Juanma Barranquero <lektu@terra.es>
10668
10669 * keymap.c (syms_of_keymap): Fix typo.
10670
106712002-07-01 Andrew Choi <akochoi@shaw.ca>
10672
10673 * s/darwin.h: Define POSIX_SIGNALS.
10674
10675 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
10676 and FSRefMakePath to convert FSSpec returned with Apple Event to
10677 Posix pathname.
10678 (mac_initialize) [TARGET_API_MAC_CARBON]:
10679 Call init_required_apple_events and disable the `Quit' menu item
10680 provided automatically by the Carbon Toolbox.
10681
106822002-07-01 Dave Love <fx@gnu.org>
10683
10684 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
10685 for K&R.
10686
10687 * xterm.c: Fix prototype for K&R.
10688
10689 * term.c (costs_set): Declare static, non-initialized for pcc.
10690
106912002-07-01 Richard M. Stallman <rms@gnu.org>
10692
10693 * keyboard.c (timer_last_idleness_start_time): New variable.
10694 (timer_start_idle): Set that.
10695 (read_key_sequence): Use that to reset timer_idleness_start_time
10696 to previous value.
10697
10698 * window.c (Frecenter): With arg, set optional_new_start.
10699
10700 * xdisp.c (redisplay_internal): Make optional_new_start really work.
10701
10702 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
10703 buffer for completion.
10704
107052002-06-29 Ken Raeburn <raeburn@gnu.org>
10706
10707 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
10708
107092002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10710
10711 * keyboard.c (readable_filtered_events): New function that filters
10712 FOCUS_IN_EVENT depending on parameter.
10713 (readable_events): Calls readable_filtered_events, not filtering
10714 FOCUS_IN_EVENT.
10715 (get_filtered_input_pending): New function, filtering parameter passed
10716 to readable_filtered_events.
10717 (get_input_pending): Calls get_filtered_input_pending, not filtering
10718 FOCUS_IN_EVENT.
10719 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
10720 FOCUS_IN_EVENT.
10721
10722 * xterm.h (struct x_output): Add focus_state.
10723
10724 * xterm.c (x_focus_changed): New function.
10725 (x_detect_focus_change): New function.
10726 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
10727 EnterNotify and LeaveNotify to track X focus changes.
10728
107292002-06-28 Andreas Schwab <schwab@suse.de>
10730
10731 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
10732
107332002-06-27 Kim F. Storm <storm@cua.dk>
10734
10735 * xdisp.c: (mode_line_string_list, mode_line_string_face)
10736 (mode_line_string_face_prop): New variables.
10737 (store_mode_line_string): New function.
10738 (display_mode_element): Use store_mode_line_string to
10739 add mode-line string elements to mode_line_string_list
10740 when mode_line_string_list is non-nil.
10741 (Fformat_mode_line): Now returns propertized string by
10742 default. New arg NO-PROPS to ignore properties.
10743 (decode_mode_spec): Only add two dashes for %- in propertized
10744 mode-line string.
10745 (syms_of_xdisp): Init and staticpro mode_line_string_list.
10746
107472002-06-27 Stefan Monnier <monnier@cs.yale.edu>
10748
10749 * minibuf.c (minibuffer_completion_contents): Add return type.
10750
107512002-06-27 Juanma Barranquero <lektu@terra.es>
10752
10753 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
10754
107552002-06-26 Juanma Barranquero <lektu@terra.es>
10756
10757 * fileio.c (read_file_name_cleanup): Add missing return.
10758
107592002-06-26 Richard M. Stallman <rms@gnu.org>
10760
10761 * window.c (Frecenter): Don't set force_start flag.
10762
10763 * minibuf.c (do_completion, Fminibuffer_complete_word)
10764 (Fminibuffer_completion_help): Complete just the text before point.
10765 (minibuffer_completion_contents): New function.
10766
10767 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
10768
10769 * frame.c (frames_bury_buffer): Function deleted.
10770
107712002-06-25 Miles Bader <miles@gnu.org>
10772
10773 * callint.c (Fcall_interactively): When checking to see if doprnt hit
10774 the end of callint_message, allow for a terminating '\0'.
10775
107762002-06-24 Juanma Barranquero <lektu@terra.es>
10777
10778 * w32select.c: Include composite.h
10779
10780 * w16select.c: Likewise.
10781
107822002-06-24 Kenichi Handa <handa@etl.go.jp>
10783
10784 * callproc.c (Fcall_process): If code detection is necessary,
10785 call detect_coding directly here.
10786
10787 * coding.c (detect_eol): Preserve coding->cmp_data.
10788
10789 * w16select.c (Fw16_get_clipboard_data):
10790 * w32fns.c (w32_to_x_font):
10791 * w32select.c (Fw32_get_clipboard_data):
10792 * xselect.c (selection_data_to_lisp_data):
10793 * xterm.c (XTread_socket): Disable composition handling.
10794
107952002-06-24 Stefan Monnier <monnier@cs.yale.edu>
10796
10797 * print.c (temp_output_buffer_setup): Kill all local variables.
10798
107992002-06-22 Stefan Monnier <monnier@cs.yale.edu>
10800
10801 * lread.c (Fread): Remove redundant and imprecise declaration.
10802
10803 * xfns.c (check_x_display_info): Use check_x_frame.
10804
10805 * .gdbinit (xprintsym): Use the new `xname' field.
10806 (xsymbol): Use it.
10807
108082002-06-22 Jason Rumney <jasonr@gnu.org>
10809
10810 * w32fns.c (file_dialog_callback): New function.
10811 (Fx_file_dialog): Allow selecting directories as well as files.
10812
108132002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10814
10815 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
f63fd14e 10816 OpenBSD. Add support for mipseb-*-netbsd* machines.
048addec
JD
10817
108182002-06-17 Andrew Choi <akochoi@shaw.ca>
10819
10820 * macterm.c (mac_scroll_area): Set foreground and backcolor to
10821 black and white before scrolling. Restore frame background and
10822 foreground color after scrolling.
10823 (do_window_update): Call XClearWindow before calling expose_frame.
10824 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
10825 FRAME_FOREGROUND_PIXEL of frame.
10826
10827 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
10828 test Mac command key as <ALT> key.
10829
108302002-06-17 Stefan Monnier <monnier@cs.yale.edu>
10831
10832 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
10833
10834 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
10835 Lookup keys in function-key-map immediately so that key-translation-map
10836 can be applied earlier.
10837 Remove function_key_possible and key_translation_possible, replaced
10838 by checking `keytran_start < t'.
10839
10840 * .gdbinit (xsymbol): Use the new `xname' field.
10841
108422002-06-17 Andrew Choi <akochoi@shaw.ca>
10843
10844 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
10845 test Mac command key as <ALT> key.
10846
10847 * mac.c (do_applescript): Call initialize_applescript if necessary
10848 when first called. Dispose of result_desc only when there is no error.
10849 (Fdo_applescript): Use %d format specifier instead of %ld.
10850
108512002-06-16 Andrew Choi <akochoi@shaw.ca>
10852
10853 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
10854 of FrontWindow for cases keyDown and autoKey.
10855
10856 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
10857 Vdefault_fontset to Monaco with mac-roman coding.
10858
10859 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
10860 init_process before and after inclusion of Carbon/Carbon.h, resp.
10861
10862 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
10863 cursor_gc.
10864 (add_font_name_table_entry): New function.
10865 (init_font_name_table): Use add_font_name_table_entry; add italic,
10866 bold, and bold-italic entries for truetype fonts.
10867
10868 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
10869 for Mac too.
10870 (try_font_list) [MAC_OS]: If no font matches given registry, try
10871 fonts with any registry matching face_family.
10872 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
10873
10874 * s/darwin.h: If autoconf detects the Ncurses library, define
10875 LIBS_TERMCAP to -lncurses to use it.
10876
108772002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
10878
10879 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
10880
108812002-06-15 Richard M. Stallman <rms@gnu.org>
10882
10883 * window.c (Fset_window_configuration): Explicitly preserve
10884 the point value that new_current_buffer had at the start.
10885
108862002-06-14 Juanma Barranquero <lektu@terra.es>
10887
10888 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
10889 Fix typos.
10890
108912002-06-14 Kim F. Storm <storm@cua.dk>
10892
10893 * insdel.c (insert_1_both, insert_from_string_1)
10894 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
10895 insert happened in the end_unchanged region. Otherwise, the
10896 redisplay may be confused and duplicate the last line in the
10897 buffer [seen after save-buffer when require-final-newline==t].
10898
108992002-06-13 Jason Rumney <jasonr@gnu.org>
10900
10901 * w32.c (init_environment): Remove EMACSLOCKDIR.
10902 (stat): Swap _S_IFDIR and _S_IFREG.
10903
109042002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10905
10906 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
10907 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
10908 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
10909 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
10910 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
10911 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
10912 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
10913 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
10914 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
10915 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
10916 SELECTION_REQUEST_EVENT, selection_clear_event to
10917 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
10918 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
10919 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
10920 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
10921 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
10922 no_event to NO_EVENT.
10923
109242002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10925
10926 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
10927
109282002-06-12 Stefan Monnier <monnier@cs.yale.edu>
10929
10930 * intervals.c (textget): Don't forget to `return'.
10931 (lookup_char_property): Use XCAR/XCDR.
10932
109332002-06-12 Juanma Barranquero <lektu@terra.es>
10934
10935 * xdisp.c (Fformat_mode_line): Fix typo.
10936
109372002-06-12 Kim F. Storm <storm@cua.dk>
10938
10939 * xdisp.c (Fformat_mode_line): New function.
10940 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
10941 (store_frame_title_char, store_frame_title): Use unconditionally.
10942 (init_xdisp): Defsubr Fformat_mode_line.
10943 Initialize frame_title_buf etc. unconditionally.
10944
109452002-06-11 Stefan Monnier <monnier@cs.yale.edu>
10946
10947 * keyboard.c (read_key_sequence):
10948 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
10949 things through those maps after downcasing events.
10950 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
10951 applies after function-key-map.
10952 Make sure that keytran can be done in the middle in the sequence.
10953 Be careful not to throw away events past the one we downcase.
10954
10955 * lread.c (read_integer): Remove unused var `tem'.
10956 (read1): Fix int/Lisp_Object mixup.
10957
10958 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
10959
109602002-06-11 Richard M. Stallman <rms@gnu.org>
10961
10962 * keyboard.c (readable_events): Ignore any number of
10963 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
10964
109652002-06-09 Miles Bader <miles@gnu.org>
10966
10967 * xfaces.c (Ftty_supports_face_attributes_p): New function.
10968 (parse_rgb_list, tty_lookup_color): New functions.
10969 (tty_defined_color): Use `tty_lookup_color' to do all the work.
10970 (color_distance, Fcolor_distance): New functions.
10971 (TTY_SAME_COLOR_THRESHOLD): New macro.
10972 (Qtty_color_standard_values): New variable.
10973 (syms_of_xfaces): Initialize new vars & functions.
10974
109752002-06-08 Colin Walters <walters@verbum.org>
10976
10977 * textprop.c (Vchar_property_alias_alist): New variable.
10978 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
10979
10980 * intervals.c (lookup_char_property): New function for looking up
10981 overlay and text properties, created from textget.
10982 (textget): Use it.
10983
10984 * intervals.h (lookup_char_property): Declare.
10985 (Vchar_property_alias_alist): Declare.
10986
10987 * buffer.c (Foverlay_get): Use lookup_char_property.
10988
109892002-06-07 Sam Steingold <sds@gnu.org>
10990
10991 * xselect.c (lisp_data_to_selection_data): Fix last change:
10992 *data_ret is not a Lisp string, while unibyte_string is.
10993
109942002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
10995
10996 * xselect.c (lisp_data_to_selection_data): Fix last change:
10997 set size_ret.
10998
109992002-06-07 Andreas Schwab <schwab@suse.de>
11000
11001 * m/amdx86-64.h: New file.
11002
110032002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
11004
11005 * fns.c (Fstring_make_unibyte): Doc fix.
11006
11007 * xselect.c (lisp_data_to_selection_data): If the requested type
11008 is STRING, call string_make_unibyte to encode the selected text
11009 as a string.
11010
11011 * window.c (Fset_window_hscroll): Doc fix.
11012
110132002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11014
11015 * fileio.c (choose_write_coding_system):
11016 Call select-safe-coding-system properly.
11017
110182002-06-03 Richard M. Stallman <rms@gnu.org>
11019
11020 * xdisp.c (message_with_string): Error if STRING is not a string.
11021
11022 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
11023
11024 * fileio.c (choose_write_coding_system): Pass FILE arg to
11025 Vselect_safe_coding_system_function.
11026
110272002-06-03 Ken Raeburn <raeburn@gnu.org>
11028
11029 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
11030
110312002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
11032
11033 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
11034 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
11035 * keymap.c (describe_command): Likewise.
11036 * minibuf.c (read_minibuf): Likewise.
11037
11038 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
11039 Cast `current_column' return value to int.
11040 (back_to_previous_visible_line_start)
11041 (reseat_at_next_visible_line_start, next_element_from_buffer):
11042 Cast `indented_beyond_p' 3rd arg to float.
11043
11044 * indent.c (last_known_column): Now a float.
11045 (current_column_1, position_indentation, current_column)
11046 (string_display_width): Return float.
11047 (Fcurrent_column): Cast `current_column' return value to int.
11048 (Fcurrent_indentation): Cast `position_indentation' retval to int.
11049 (indented_beyond_p): Third arg now a float.
11050 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
11051
11052 * lisp.h (current_column): Now returns float.
11053 (indented_beyond_p): 3rd arg now a float.
11054
110552002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
11056
11057 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
11058 is Qcompound_text_with_extensions.
11059
11060 * xselect.c (lisp_data_to_selection_data): Always set selection
11061 type as string if x_encode_text returns streingp non-NULL.
11062
11063 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
11064
110652002-05-30 Richard M. Stallman <rms@gnu.org>
11066
11067 * window.c (Fset_window_configuration): Correct the handling
11068 of point in current buffer, to work with multiple windows.
11069
110702002-05-29 Colin Walters <walters@verbum.org>
11071
11072 * lread.c (Fread_from_string): Don't depend on order of evaluation
11073 for C function parameters.
11074
110752002-05-28 Richard M. Stallman <rms@gnu.org>
11076
11077 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
11078 way for blinked-off state and for a nonselected window.
11079
11080 * window.c (window_scroll_pixel_based): Don't call Fbolp;
11081 instead, see if the new start pos is at beginning of line.
11082
11083 * fileio.c (Fwrite_region): If START is a string, don't
11084 make any annotations.
11085
11086 * eval.c (syms_of_eval): Doc fix.
11087
110882002-05-28 Colin Walters <walters@debian.org>
11089
11090 * emacs.c (USAGE1): Add --no-splash.
11091 (standard_args): Ditto.
11092
110932002-05-28 Colin Walters <walters@gnu.org>
11094
11095 * lread.c (readchar_count): New variable.
11096 (readchar): Increment it.
11097 (unreadchar): Decrement it.
11098 (read_multibyte): Decrement it.
11099 (Vread_with_symbol_positions): New variable.
11100 (Vread_symbol_positions_list): New variable.
11101 (read_internal_start): New function, created from Fread and
11102 Fread_from_string. Handle Vread_symbol_positions_list and
11103 Vread_with_symbol_positions.
11104 (readevalloop, Fread, Fread_from_string): Use it.
11105 (read1): Use readchar_count to add symbol positions to
11106 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
11107 (syms_of_lread): DEFVAR_LISP and initialize them.
11108
11109 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
11110 (substitute_object_recurse, substitute_object_in_subtree)
11111 (substitute_in_interval): Prototype.
11112 (read_multibyte): Return c if it's less than zero.
11113
111142002-05-28 Kim F. Storm <storm@cua.dk>
11115
11116 * fileio.c (Fread_file_name_internal): Added brute-force
11117 speed up for using predicate file-directory-p.
11118
111192002-05-28 Kim F. Storm <storm@cua.dk>
11120
11121 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
11122 New variables.
11123 (syms_of_fileio): DEFVAR_LISP them.
11124 (read_file_name_cleanup): New unwind function.
11125 (Fread_file_name_internal): Only return completions satifying
11126 Vread_file_name_predicate. Temporarily unwind protect and rebind
11127 default-directory while checking completions against the predicate.
11128 (Fread_file_name): Added PREDICATE argument. Specbind it to
11129 Vread_file_name_predicate during completion.
11130 Call Vread_file_name_function to read the file name if non-nil.
11131
11132 * lisp.h (Fread_file_name): Now has 6 args.
11133
11134 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
11135 predicate for Fread_file_name when reading directory name.
11136 Supply Qnil for predicate in other calls to Fread_file_name.
11137
111382002-05-26 Miles Bader <miles@gnu.org>
11139
11140 * term.c (tty_capable_p): New function.
11141 * dispextern.h (tty_capable_p): New function declaration.
11142 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
11143 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
11144
111452002-05-23 Stefan Monnier <monnier@cs.yale.edu>
11146
11147 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
11148 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
11149 (Vwrite_region_annotate_functions): Docstring fix.
11150
111512002-05-23 Kim F. Storm <storm@cua.dk>
11152
11153 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
11154 phys_cursor's hpos is overwritten. This is still not completely
11155 correct, as it doesn't really make sense to use hpos at all to
11156 get the cursor glyph (as that is relative to the width of the
11157 characters on the line, which may have changed during the update).
11158
111592002-05-22 Jason Rumney <jasonr@gnu.org>
11160
11161 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
11162 Lisp_Object.
11163 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
11164 Use modified enumfont_t struct.
11165
11166 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
11167
11168 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
11169 Handle the `hbar' cursor type.
11170 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
11171
11172 * w32fns.c (Qhbar): New variable.
11173 (x_specified_cursor_type): Use it.
11174
111752002-05-21 Ken Raeburn <raeburn@gnu.org>
11176
11177 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
11178 now, when the address is needed.
11179
111802002-05-21 Colin Walters <walters@gnu.org>
11181
11182 * Makefile.in (shortlisp): Add font-core.el.
11183
111842002-05-20 Richard M. Stallman <rms@gnu.org>
11185
11186 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
11187
11188 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
11189 equivalent key bindings here.
11190
111912002-05-20 Ken Raeburn <raeburn@gnu.org>
11192
11193 Change symbol structure to contain a lisp object for the symbol
11194 name:
11195 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
11196 object field named "xname".
11197 (SYMBOL_NAME): New macro.
11198 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
11199 name field.
11200 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
11201 (mark_object, gc_sweep): Use symbol xname field and XSTRING
11202 instead of name field.
11203 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
11204 SYMBOL_NAME instead of XSYMBOL and name field.
11205 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
11206 instead of XSYMBOL and name field.
11207 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
11208 and SYMBOL_NAME instead of XSYMBOL and name field.
11209 * coding.c (Fread_coding_system, code_convert_region1)
11210 (code_convert_string1, code_convert_string_norecord)
11211 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
11212 XSYMBOL and name field.
11213 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
11214 (Fmake_variable_buffer_local, Fmake_local_variable)
11215 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
11216 of XSYMBOL and name field.
11217 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
11218 XSYMBOL and name field.
11219 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
11220 instead of XSYMBOL and name field.
11221 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
11222 XSYMBOL and name field.
11223 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
11224 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11225 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
11226 instead of XSYMBOL and name field.
11227 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
11228 (parse_modifiers, apply_modifiers, Fevent_convert_list)
11229 (parse_solitary_modifier, Fexecute_extended_command):
11230 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11231 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
11232 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
11233 of XSYMBOL and name field.
11234 (describe_command, describe_translation): Use SYMBOL_NAME and
11235 assignment instead of XSYMBOL and name field and XSETSTRING.
11236 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
11237 instead of XSYMBOL and name field.
11238 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
11239 name field and XSETSTRING.
11240 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
11241 of XSYMBOL and name field.
11242 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
11243 assignment instead of XSYMBOL and name field and XSETSTRING.
11244 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
11245 XSTRING instead of XSYMBOL and name field.
11246 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
11247 and XSTRING instead of XSYMBOL and name field.
11248 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
11249 and XSTRING instead of XSYMBOL and name field.
11250 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
11251 XSTRING instead of XSYMBOL and name field.
11252 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
11253 of XSYMBOL and name field.
11254 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
11255 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11256
112572002-05-19 Ken Raeburn <raeburn@gnu.org>
11258
11259 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
11260 and XCDR real rvalues in most configurations.
11261
11262 * buffer.c (fix_overlays_in_range, fix_overlays_before):
11263 Don't take the address of the cdr part of a cons cell; instead, track
11264 the parent cell and call XSETCDR, or set the variable for the head
11265 of the list if we haven't started down the list yet.
11266
112672002-05-19 Richard M. Stallman <rms@gnu.org>
11268
11269 * doc.c (reread_doc_file): Don't ask for confirmation.
11270
112712002-05-18 Jason Rumney <jasonr@gnu.org>
11272
11273 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
11274 (xbm_load_image): Use it.
11275 (xbm_load): Ditto.
11276 (xbm_read_bitmap_data): Reverted to xfns.c version.
11277 From David Ponce <david@dponce.com>.
11278
112792002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
11280
11281 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
11282 2.02 and later.
11283
112842002-05-16 Juanma Barranquero <lektu@terra.es>
11285
11286 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
11287
112882002-05-15 Stefan Monnier <monnier@cs.yale.edu>
11289
11290 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
11291 meaningful test.
11292 (read_char_minibuf_menu_prompt): Fix typo.
11293
112942002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
11295
11296 * eval.c (Fcommandp): Doc fix.
11297
112982002-05-13 Stefan Monnier <monnier@cs.yale.edu>
11299
11300 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
11301 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
11302 (Fset_keymap_parent): Gcpro a bit more.
11303 (access_keymap): Gcpro around meta_map call and around the main loop.
11304 (get_keyelt): Gcpro when following indirect references.
11305 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
11306 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
11307 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
11308 Remove useless ad-hoc remap code.
11309
113102002-05-13 Richard M. Stallman <rms@gnu.org>
11311
11312 * search.c (search_buffer): Give up boyer moore search if inverse
11313 translation change charset_base.
11314
113152002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
11316
11317 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
11318 characters is carried over from the previous block of text, adjust
11319 coding->produced to account for the extra character.
11320
113212002-05-11 Andreas Schwab <schwab@suse.de>
11322
11323 * coding.c (intersection): Keep the elements of the returned list
11324 in the same order as in the first list.
11325
113262002-05-11 Kim F. Storm <storm@cua.dk>
11327
11328 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
11329 only update cmm_size if realloc actually succeeds.
11330 Testing with initial size of 2 elements revealed that using
11331 realloc on GNU/Linux would cause a random trap in xmalloc
11332 later on, so I rewrote the code to use malloc/bcopy/free instead
11333 of realloc.
11334
113352002-05-10 Jason Rumney <jasonr@gnu.org>
11336
11337 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
11338
113392002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
11340
11341 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
11342 parens, to ensure correct evaluation order.
11343
113442002-05-10 Kim F. Storm <storm@cua.dk>
11345
11346 * keymap.c (Vemulation_mode_map_alists): New variable.
11347 (syms_of_keymap): DEFVAR_LISP it.
11348 (current_minor_maps): Process keymap alists in that list before
11349 minor-mode-overriding-map-alist and minor-mode-map-alist.
11350
113512002-05-09 Richard M. Stallman <rms@gnu.org>
11352
11353 * search.c (Freplace_match): Doc fix.
11354
113552002-05-09 Kim F. Storm <storm@cua.dk>
11356
11357 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
11358 Enlarge cursor rectangle drawn around image with non-zero relief.
11359
11360 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
11361 Enlarge cursor rectangle drawn around image with non-zero relief.
11362
11363 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
11364 Enlarge cursor rectangle drawn around image with non-zero relief.
11365
113662002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
11367
11368 * xselect.c (lisp_data_to_selection_data): Don't set selection
11369 type if comes from the Lisp object's car. If the selection
11370 contains a pure ASCII text, always return QSTRING as its type.
11371
113722002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11373
11374 * mac.c (mac-cut-function): Doc fix.
11375
113762002-05-05 Richard M. Stallman <rms@gnu.org>
11377
11378 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
11379
113802002-05-04 Jason Rumney <jasonr@gnu.org>
11381
11382 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
11383 for event-click-count.
11384
11385 * process.c (init_process): Only add server subfeature if we can
11386 use non-blocking I/O.
11387
113882002-05-04 Andrew Choi <akochoi@shaw.ca>
11389
11390 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
11391 repeatedly.
11392
113932002-05-03 Jason Rumney <jasonr@gnu.org>
11394
11395 * process.c (Fmake_network_process): Only support server sockets
11396 when we can make them non-blocking.
11397
11398 * s/ms-w32.h (HAVE_SELECT): Define.
11399
11400 * w32.h (FILE_NDELAY): New flag.
11401
11402 * w32.c (sys_getpeername, fcntl): New functions.
11403 (_sys_read_ahead): Temporarily block on non-blocking sockets.
11404
11405 * w32proc.c: include sys/file.h.
11406
114072002-05-03 Colin Walters <walters@verbum.org>
11408
11409 * callproc.c (Vgame_score_directory): Renamed to
11410 Vshared_game_score_directory.
11411
114122002-04-30 Richard M. Stallman <rms@gnu.org>
11413
11414 * s/gnu.h [emacs]: Include stdio.h.
11415 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
11416
11417 * eval.c (do_autoload): Error if called while preparing to dump.
11418
11419 * fns.c (Frequire): Error if need to load while preparing to dump.
11420
114212002-04-28 Colin Walters <walters@verbum.org>
11422
11423 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
11424 Default to "~/.emacs.d/games".
11425
114262002-04-29 Stefan Monnier <monnier@cs.yale.edu>
11427
11428 * lread.c (openp): Change arg exec_only to predicate.
11429 (build_load_history): Use XCAR/XCDR.
11430 (Flocate_file_internal): New fun.
11431 (syms_of_lread): Defsubr it.
11432 (Fload): Update call to openp.
11433
11434 * lisp.h (openp): Update prototype.
11435
11436 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
11437 * w32proc.c (sys_spawnve):
11438 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
11439 * w32.c (check_windows_init_file):
11440 * sound.c (Fplay_sound_internal):
11441 * process.c (Fstart_process):
11442 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
11443 * mac.c (run_mac_command):
11444 * emacs.c (init_cmdargs):
11445 * callproc.c (Fcall_process): Update call to openp.
11446
11447 * textprop.c (remove_properties): Don't use XCAR without CONSP.
11448
11449 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
11450
114512002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11452
11453 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
11454 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
11455
114562002-04-28 Richard M. Stallman <rms@gnu.org>
11457
11458 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
11459
11460 * eval.c (Fcommandp): New arg for_call_interactively.
11461 * lisp.h (Fcommandp): Declare new arg.
11462
114632002-04-28 Jason Rumney <jasonr@gnu.org>
11464
11465 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
11466
11467 * w32.c (stat, fstat): Use file index information to generate
11468 inodes for directories where available.
11469
114702002-04-26 Andrew Choi <akochoi@shaw.ca>
11471
11472 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
11473 [HAVE_CARBON]: Include Mac object files.
11474
11475 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
11476 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
11477 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
11478 MAC_OSX, and MAC_OS instead of macintosh.
11479
11480 * editfns.c [MAC_OS8]: Include stdio.h.
11481
11482 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
11483
11484 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
11485 Apple Monaco.
11486
11487 * process.c: Declare QCfamily and QCfilter as extern.
11488 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
11489 calling select.
11490
11491 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
11492
11493 * tparam.c [MAC_OSX]: Don't define BC and UP.
11494
11495 * config.in [HAVE_CARBON]: Add.
11496
11497 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
11498 Move here from mac/src and mac/inc.
11499
11500 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
11501
115022002-04-26 Gerd Moellmann <gerd@gnu.org>
11503
11504 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
11505 Compute phys_cursor_width from the x position returned
11506 by x_draw_glyhs, which is cheaper.
11507 (x_display_and_set_cursor): Compute the buffer-local value
11508 of `cursor-in-non-selected-windows' only when needed.
11509
115102002-04-25 Gerd Moellmann <gerd@gnu.org>
11511
11512 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
11513 cursor on a stretch glyph has a width that depends on
11514 x_stretch_cursor_p.
11515
115162002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11517
11518 * abbrev.c (abbrev-start-location): Doc fix.
11519
11520 * indent.c (Fvertical_motion): Fix last change.
11521
115222002-04-25 Gerd Moellmann <gerd@gnu.org>
11523
11524 * indent.c (Fvertical_motion): Move to the start of the line
11525 containing PT before moving up or down.
11526
115272002-04-24 Gerd Moellmann <gerd@gnu.org>
11528
11529 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
11530 case of writing a whole row, more or less analogous to the case of
11531 writing only parts of a row.
11532
11533 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
11534 0 for NO_CURSOR.
11535
11536 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
11537
115382002-04-23 Colin Walters <walters@verbum.org>
11539
11540 * buffer.c (syms_of_buffer): Doc fix.
11541
115422002-04-23 Gerd Moellmann <gerd@gnu.org>
11543
11544 * xterm.c (notice_overwritten_cursor): Handle the special case
11545 of the cursor being in the first blank non-text line at the
11546 end of a window.
11547
11548 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
11549 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
11550 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
11551 bar cursors only, to make phys_cursor_width contain what its name
11552 suggests.
11553 (notice_overwritten_cursor): Consider the cursor image erased if
11554 the output area intersects the cursor image in y-direction.
11555
115562002-04-23 Simon Marshall <simon@gnu.org>
11557
11558 * xfns.c (x_set_mouse_color): Change default for cross_cursor
11559 to XC_hand2.
11560
115612002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11562
11563 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
11564
115652002-04-22 Kim F. Storm <storm@cua.dk>
11566
11567 * textprop.c (remove_properties): Fixed trap for malformed plist.
11568
115692002-04-22 Richard M. Stallman <rms@gnu.org>
11570
11571 * cmds.c (Fend_of_line): Handle intangible text in mid line.
11572
11573 * window.c (make_window): Initialize height_fixed_p,
11574 last_cursor_off_p, and p->cursor_off_p slots.
11575
115762002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11577
11578 * fns.c (use-dialog-box): Doc fix.
11579
115802002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11581
11582 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
11583 variables `row', `i' and `area'.
11584 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
11585 toolkit library.
11586
115872002-04-19 Stefan Monnier <monnier@cs.yale.edu>
11588
11589 * xfaces.c (clear_font_table): Don't free the default font of
11590 a frame even if it's on another display.
11591 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
11592 that could be Qt.
11593
115942002-04-19 Juanma Barranquero <lektu@terra.es>
11595
11596 * indent.c (Fmove_to_column): Remove unused local variable
11597 `next_boundary_byte'.
11598 (current_column_1): Likewise.
11599
116002002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
11601
11602 * msdos.c (Qhbar): New variable.
11603 (syms_of_msdos): Intern and staticpro it.
11604 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
11605 cursor type.
11606
116072002-04-19 Dave Lambert <dlambert@acm.org>
11608
11609 Theses change implement an underscore-like (`hbar') cursor.
11610
11611 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
11612
11613 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
11614 Handle the `hbar' cursor type.
11615 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
11616
11617 * xfns.c (Qhbar): New variable.
11618 (syms_of_xfns): Intern and staticpro it.
11619 (x_specified_cursor_type): Handle `hbar' cursor.
11620
11621 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
11622 not defined.
11623
116242002-04-18 Richard M. Stallman <rms@gnu.org>
11625
11626 * textprop.c (remove_properties): New arg LIST allows scanning
11627 either a list or a plist.
11628 (interval_has_some_properties_list): New function, like
11629 interval_has_some_properties using list instead of plist.
11630 All callers changed.
11631 (Fremove_list_of_text_properties): New function.
11632 (syms_of_textprop): Defsubr it.
11633
116342002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
11635
11636 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
11637
116382002-04-17 Juanma Barranquero <lektu@terra.es>
11639
11640 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
11641
116422002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
11643
11644 * window.c (coordinates_in_window): Don't report on margin area
11645 if its width is zero.
11646
116472002-04-16 Jason Rumney <jasonr@gnu.org>
11648
11649 * w32fns.c (Fx_file_dialog): Decode file name before using.
11650
11651 * w32term.c (construct_drag_n_drop): Likewise.
11652
116532002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
11654
11655 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
11656 store load-history in pure space.
11657
11658 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
11659
116602002-04-16 Stefan Monnier <monnier@cs.yale.edu>
11661
11662 * xterm.c (Qlatin_1, Qutf_8): New vars.
11663 (syms_of_xterm): Initialize them.
11664 (XTread_socket): Eliminate incorrect optimization that tried to avoid
11665 decoding the output of X*LookupString.
11666 Always use latin-1 to decode the output of XLookupString.
11667 Try Xutf8LookupString if XmbLookupString failed.
11668
11669 * region-cache.c (new_region_cache): Use BEG.
11670
116712002-04-16 Gerd Moellmann <gerd@gnu.org>
11672
11673 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
11674 configuration files.
11675 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
11676 returns 0.
11677
116782002-04-15 Andreas Schwab <schwab@suse.de>
11679
11680 * config.in: Regenerated using autoheader.
11681
11682 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
11683 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
11684 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
11685 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
11686 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
11687 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
11688 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
11689 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
11690 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
11691 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
11692 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
11693 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
11694 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
11695 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
11696 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
11697 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
11698 STACK_DIRECTION, now set by autoconf.
11699
117002002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11701
11702 * dispnew.c (marginal_area_string): Sort arguments.
11703
11704 * dispextern.h (marginal_area_string): Add prototype.
11705
117062002-04-13 Richard M. Stallman <rms@gnu.org>
11707
11708 * fileio.c (Finsert_file_contents):
11709 Don't call temp_output_buffer_setup--do just part, by hand.
11710
11711 * coding.c (run_pre_post_conversion_on_str):
11712 Don't call temp_output_buffer_setup--do just part, by hand.
11713
11714 * keyboard.c (command_loop_1): Don't call start_hourglass
11715 or cancel_hourglass when executing a macro.
11716
11717 * marker.c (count_markers): New function.
11718
11719 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
11720 grow without limit. Move recently used elements to the front.
11721
117222002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
11723
11724 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
11725
117262002-04-12 Gerd Moellmann <gerd@gnu.org>
11727
11728 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
11729 rows marginal areas.
11730 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
11731 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
11732
11733 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
11734
117352002-04-12 Dave Love <fx@gnu.org>
11736
11737 * dispnew.c (marginal_area_string): New.
11738
11739 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
11740 (Qleft_margin, Qright_margin): Declare.
11741 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
11742
11743 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
11744 note_mode_line_highlight and extended.
11745
11746 * keyboard.c (Qleft_margin, Qright_margin): Declare.
11747 (make_lispy_event): Deal with mouse events in margins.
11748
117492002-04-12 Stefan Monnier <monnier@cs.yale.edu>
11750
11751 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
11752
11753 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
11754 than deactivating the mark if tmm is set to `lambda'.
11755 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
11756 Use a single event for HELP_EVENT.
11757 (Fexecute_extended_command): Save last_point_position.
11758
117592002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11760
11761 * lisp.h (Fpropertize): Add prototype.
11762
11763 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
11764
117652002-04-10 Colin Walters <walters@verbum.org>
11766
11767 * config.in: Add HAVE_SHARED_GAME_DIR.
11768
11769 * callproc.c: (Vgame_score_directory): New variable.
11770 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
11771
117722002-04-10 Richard M. Stallman <rms@gnu.org>
11773
11774 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
11775
117762002-04-09 Stefan Monnier <monnier@cs.yale.edu>
11777
11778 * minibuf.c (read_minibuf): Use empty_string.
11779 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
11780 Short-circuit the search as soon as it "failed".
11781 (Fall_completions): Allow lambda forms and lists of strings for alist.
11782 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
11783 when require_match is nil.
11784 (Ftest_completion): Rename from `test_completion' and export to elisp.
11785 Call the predicate also when alist is a list.
11786 Obey Vcompletion_regexp_list.
11787 (do_completion, Fminibuffer_complete_and_exit): Use it.
11788 (Fassoc_string): Rename from `assoc_for_completion'.
11789 Allow list of strings as well and export to elisp.
11790
117912002-04-08 Stefan Monnier <monnier@cs.yale.edu>
11792
11793 * puresize.h (BASE_PURESIZE): Increase to 900KB.
11794
117952002-04-08 Juanma Barranquero <lektu@terra.es>
11796
11797 * w32.c (sys_accept): Don't hide variable `s'.
11798
117992002-04-05 Gerd Moellmann <gerd@gnu.org>
11800
11801 * callint.c (Fcall_interactively): Use INTEGERP instead of
11802 NUMBERP for checking Vhistory_length.
11803
118042002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11805
11806 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
11807 Doc fix to reflect it.
11808
118092002-04-04 Richard M. Stallman <rms@gnu.org>
11810
11811 * xdisp.c (display_mode_element): New arg RISKY.
11812 Disregard text props found or specified within a variable
11813 that isn't marked risky-local-variable.
11814 (Qrisky_local_variable): New variable.
11815 (syms_of_xdisp): Init and staticpro it.
11816
118172002-04-04 Stefan Monnier <monnier@cs.yale.edu>
11818
11819 * undo.c (record_point): New fun.
11820 (record_delete, record_insert): Use it.
11821
118222002-04-03 Juanma Barranquero <lektu@terra.es>
11823
11824 * doc.c (Fdocumentation): Add missing parentheses.
11825 (Fdocumentation_property): Likewise.
11826
118272002-04-03 Stefan Monnier <monnier@cs.yale.edu>
11828
11829 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
11830 data is 0, just return nil.
11831
118322002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
11833
11834 * msdos.c (syms_of_msdos): Fix last change with
11835 mouse_autoselect_window.
11836
118372002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11838
11839 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
11840 mouse_autoselect_window.
11841
118422002-04-02 Stefan Monnier <monnier@cs.yale.edu>
11843
11844 * keyboard.c (make_lispy_event): Handle unknown keysyms together
11845 with system-specific keysyms. Use it also for unknown function keys.
11846
11847 * doc.c (reread_doc_file): Return whether reload was attempted.
11848 (Fdocumentation, Fdocumentation_property): Don't try to reload
11849 if the doc is 0 and only ask once.
11850
11851 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
11852
118532002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
11854
11855 * keyboard.c (read_char): If the event was Qselect_window,
11856 restore timer_idleness_start_time to its previous value.
11857
11858 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
11859
118602002-04-01 Stefan Monnier <monnier@cs.yale.edu>
11861
11862 * region-cache.c (new_region_cache): Use BEG.
11863
11864 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
11865 Use BEG and BEG_BYTE.
11866
11867 * doc.c (get_doc_string): Return nil if the location is wrong.
11868 (reread_doc_file): New fun.
11869 (Fdocumentation, Fdocumentation_property):
11870 Call it if get_doc_string fails.
11871 (Fsnarf_documentation): Make it work for a dumped Emacs.
11872
11873 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
11874 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
11875
11876 * charset.c (Fstring): Allow 0 arguments.
11877
11878 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
11879
11880 * process.c (DATAGRAM_CONN_P, list_processes_1)
11881 (Fprocess_datagram_address, Fset_process_datagram_address)
11882 (Fset_network_process_options, server_accept_connection):
11883 Fix some int/Lisp_Object confusions (thank you union types).
11884
118852002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11886
11887 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
11888
11889 * w32term.c: Likewise.
11890 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
11891
11892 * keyboard.c (Qselect_window): New symbol.
11893 (head_table): Use it.
11894 (keys_of_keyboard): Bound select-window event to handle-select-window.
11895 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
11896
11897 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
11898 (last_window): New variable.
11899 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
11900 (note_mouse_movement): Remove reimplemented code in #if 0.
11901 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
11902 Emacs windows.
11903
11904 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
11905
119062002-03-31 Gerd Moellmann <gerd@gnu.org>
11907
11908 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
11909 Callers changed.
11910
119112002-03-30 Richard M. Stallman <rms@gnu.org>
11912
11913 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
11914 loop whenever it stops making progress.
11915
11916 * widget.c (set_frame_size): Don't call change_frame_size.
11917
119182002-03-30 Gerd Moellmann <gerd@gnu.org>
11919
11920 * dispnew.c (direct_output_for_insert):
11921 Call mark_window_display_accurate.
11922
119232002-03-29 Jason Rumney <jasonr@gnu.org>
11924
11925 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
11926
119272002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
11928
11929 * Makefile.in (lread.o): Depend on coding.h.
11930
11931 * lread.c (openp, Fload): Encode the file name before passing it
11932 to `stat', `access', and `emacs_open'.
11933 (openp): GCPRO the encoded file name. Don't recompute Lisp
11934 strings unnecessarily.
11935
119362002-03-29 Kim F. Storm <storm@cua.dk>
11937
11938 * fns.c (Flax_plist_put): Doc fix.
11939
119402002-03-28 Miles Bader <miles@gnu.org>
11941
11942 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
11943
119442002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11945
11946 * process.c (set-network-process-options): Add usage.
11947 (make-network-process): Doc fix.
11948
119492002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
11950
11951 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
11952
119532002-03-26 Richard M. Stallman <rms@gnu.org>
11954
11955 * fns.c (Fsubstring_no_properties): New function.
11956 (Flax_plist_get, Flax_plist_put): New functions.
11957 (syms_of_fns): defsubr them.
11958
11959 * xdisp.c (update_menu_bar): Test only update_mode_lines;
11960 don't test or alter w->update_mode_line.
11961
11962 * window.c (Fdisplay_buffer): Doc fix.
11963
119642002-03-24 Richard M. Stallman <rms@gnu.org>
11965
11966 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
11967
119682002-03-24 Gerd Moellmann <gerd@gnu.org>
11969
11970 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
11971 (Fdefmacro): Handle `(declare ...)'.
11972 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
11973 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
11974
119752002-03-24 Jason Rumney <jasonr@gnu.org>
11976
11977 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
11978 (xbm_file_p): Add prototypes.
11979 (xbm_format, xbm_image_p): Sync with xfns.c.
11980 (reflect_byte): New function.
11981 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
11982 (xbm_load_image): Create bitmaps with a depth of 1.
11983 (init_xfns): Enable XBM images.
11984
119852002-03-23 Jason Rumney <jasonr@gnu.org>
11986
11987 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
11988 correctly. Do not pass up_modifier to keyboard buffer.
11989
11990 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
11991
119922002-03-22 Stefan Monnier <monnier@cs.yale.edu>
11993
11994 * Makefile.in (bootstrapclean): New target.
11995 (bootstrap-temacs, bootstrap-doc): Remove.
11996 (bootstrap-emacs): Use a bog-standard `temacs'.
11997 Don't bother to build a DOC file.
11998
11999 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
12000
12001 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
12002 in temacs even if !CANNOT_DUMP.
12003 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
12004
12005 * alloc.c (check_pure_size): Only output a warning.
12006
120072002-03-22 Jason Rumney <jasonr@gnu.org>
12008
12009 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
12010 supported.
12011
12012 * w32term.c (zv_bits): Declare as short, for word alignment.
12013 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
12014 (syms_of_w32term): Define x-use-underline-position-properties.
12015
12016 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
12017 (clear_image_cache): Block input, fix logic, clear matrices in
12018 all frames that share this cache.
12019
120202002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
12021
12022 * emacs.c (main): Update the Copyright year in the blurb printed
12023 by "emacs --version".
12024
12025 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
12026
12027 * xterm.c (XTread_socket): If XK_ISO_Lock and
12028 XK_ISO_Last_Group_Lock are defined, handle keysyms between
12029 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
12030
120312002-03-21 Kim F. Storm <storm@cua.dk>
12032
12033 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
12034 menu-bar bindings in keymap and local-map properties _are_ used.
12035 But try keymap property first in accordance with 2002-01-03 patch.
12036 Added comment describing why this is not always reliable.
12037 (tool_bar_items): Ditto for tool-bar.
12038
120392002-03-21 Jason Rumney <jasonr@gnu.org>
12040
12041 * w32fns.c (x_clear_image_1): Disable color table code.
12042
120432002-03-21 Kim F. Storm <storm@cua.dk>
12044
12045 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
12046 removed the wrong version of the DEFUN macro; fixed it.
12047
12048 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
12049 Fmember rather than Fmemq).
12050 (Fprovide): Check that subfeatures is a list.
12051
12052 * process.c (QCfeature, QCdatagram): Removed variables.
12053 (QCtype, Qdatagram): New variables.
12054 (network_process_featurep): Removed function.
12055 (Fmake_network_process): Removed :feature check.
12056 Use :type 'datagram instead of :datagram t to create a datagram
12057 socket. This allows us to add other connection types (e.g. raw
12058 sockets) later in a consistent manner.
12059 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
12060 supported subfeatures for feature make-network-process.
12061 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
12062 Intern and staticpro QCtype and Qdatagram.
12063 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
12064
12065 * xfns.c: (QCtype): Remove duplicate declaration and
12066 initialization (is now declared in process.c).
12067
12068 * w32fns.c: (QCtype): Remove duplicate declaration and
12069 initialization (is now declared in process.c).
12070
120712002-03-21 Richard M. Stallman <rms@gnu.org>
12072
12073 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
12074 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
12075 when jumping to `fail' to avoid undoing reg changes in the
12076 last iteration of the loop.
12077 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
12078
12079 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
12080 Depend on process.h.
12081
120822002-03-20 Jason Rumney <jasonr@gnu.org>
12083
12084 Most of the following changes are still conditional on HAVE_IMAGES
12085 which is not set by default on Windows.
12086
12087 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
12088
12089 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
12090 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
12091 (four_corners_best, x_clear_image_1, x_clear_image)
12092 (x_alloc_image_color, postprocess_image)
12093 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
12094 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
12095 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
12096
12097 * w32gui.h (struct XImage): Define.
12098
12099 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
12100 extract mouse co-ordinates.
12101
121022002-03-20 Jason Rumney <jasonr@gnu.org>
12103
12104 * w32.c (init_winsock): Dynamically load new server and UDP
12105 socket functions.
12106 (socket_to_fd): New function.
12107 (sys_socket): Use it.
12108 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
12109 (sys_recvfrom, sys_sendto): New wrapper functions.
12110
12111 * process.c (QCfamily, QCfilter): Remove duplicate declaration
12112 and initialization.
12113
12114 * makefile.w32-in (LIBS): Remove $(WSOCK32).
12115
121162002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
12117
12118 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
12119 Don't use "sun" as a variable, it's a predefined constant on Sun
12120 machines.
12121
121222002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12123
12124 * bytecode.c (Fbyte_code): Revert last change.
12125
121262002-03-19 Kim F. Storm <storm@cua.dk>
12127
12128 * makefile.w32-in (LIBS): Add $(WSOCK32).
12129 From David Ponce <dponce@voila.fr>.
12130
121312002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12132
12133 * process.c (wait_reading_process_input): Move variables `pname'
12134 and `pnamelen' down where they are used.
12135
12136 * bytecode.c (Fbyte_code): Discard unused computed value to
12137 prevent gcc warning.
12138
12139 * lisp.h (Fplist_member): Add prototype.
12140
121412002-03-18 Kim F. Storm <storm@cua.dk>
12142
12143 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
12144 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
12145
12146 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
12147 Remove explicit GNU_LINUX settings for datagram support.
12148
121492002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12150
12151 * process.c (Fmake_network_process): Remove unused variable `sa'.
12152 Doc fix. Add usage:.
12153 (set_socket_options): Remove unused variables `optnum' and `opttype'.
12154
121552002-03-17 Richard M. Stallman <rms@gnu.org>
12156
12157 * xdisp.c (cursor_type_changed): New variable.
12158 (redisplay_internal): Redisplay all windows if cursor_type_changed.
12159 Clear it when clearing windows_or_buffers_changed.
12160 (try_cursor_movement, redisplay_window, try_window_id)
12161 (try_window_reusing_current_matrix): Test cursor_type_changed
12162 along with windows_or_buffers_changed.
12163
12164 * window.h (cursor_type_changed): New variable.
12165
12166 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
12167 not update_mode_lines, and always set it to 1.
12168
12169 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
12170 if no frames needed redrawing.
12171
121722002-03-17 Kim F. Storm <storm@cua.dk>
12173
12174 The following changes add support for network server processes,
12175 datagram connections, and local (unix) sockets.
12176
12177 * process.h (struct Lisp_Process): New member log.
12178 Doc fix: Member command used to indicate stopped network process.
12179 Doc fix: Member childp contains plist for network process.
12180 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
12181
12182 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
12183 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
12184 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
12185 New variables.
12186 (NETCONN1_P): New macro.
12187 (DATAGRAM_SOCKETS): New conditional symbol.
12188 (datagram_address): New array.
12189 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
12190 (status_message): Use concat3.
12191 (Fprocess_status): Add `listen' status to doc string. Return `stop'
12192 for a stopped network process.
12193 (Fset_process_buffer): Update contact plist for network process.
12194 (Fset_process_filter): Ditto. Don't enable input for stopped
12195 network processes. Server must listen, even if filter is t.
12196 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
12197 New functions.
12198 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
12199 (Fprocess_contact): Added KEY argument. Handle datagrams.
12200 (list_processes_1): Optionally show only processes with the query
12201 on exit flag set. Dynamically adjust column widths. Omit tty
12202 column if not needed. Report stopped network processes.
12203 Identify server and datagram network processes.
12204 (Flist_processes): New optional arg `query-only'.
12205 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
12206 (conv_lisp_to_sockaddr, set_socket_options)
12207 (network_process_featurep, unwind_request_sigio): New helper functions.
12208 (Fprocess_datagram_address, Fset_process_datagram_address):
12209 (Fset_network_process_options): New lisp functions.
12210 (Fopen_network_stream): Removed. Now defined in simple.el.
12211 (Fmake_network_process): New lisp function. Code is based on previous
12212 Fopen_network_stream, but heavily reworked with new property list based
12213 argument list, support for datagrams, server processes, and local
12214 sockets in addition to old client-only functionality.
12215 (server_accept_connection): New function.
12216 (wait_reading_process_input): Use it to handle incoming connects.
12217 Do not enable input on a new connection if process is stopped.
f63fd14e 12218 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
048addec
JD
12219 (send_process): Handle datagram sockets.
12220 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
12221 network process is indicated by setting command field to t .
12222 (Fprocess_send_eof): No-op if datagram connection.
12223 (Fstatus_notify): Don't read input for a stream server socket or a
12224 stopped network process.
12225 (init_process): Initialize datagram_address array.
12226 (syms_of_process): Intern and staticpro new variables, defsubr new
12227 functions.
12228
122292002-03-16 Jason Rumney <jasonr@gnu.org>
12230
12231 * w32fns.c (w32_to_all_x_charsets): Return correct type in
12232 startup case.
12233
122342002-03-16 Richard M. Stallman <rms@gnu.org>
12235
12236 * xdisp.c (redisplay_internal, redisplay_windows):
12237 Use list_of_error to call internal_condition_case_1.
12238 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
12239 so as to catch all errors with no possibility of debugger redisplay.
12240 (list_of_error): New variable.
12241 (syms_of_xdisp): Init and staticpro it.
12242
12243 * print.c (print_object): Delete `\ ' from printed rep of frame.
12244
122452002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
12246
12247 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
12248 until its implementation is fixed.
12249
122502002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12251
12252 * xfns.c (png_load): Remove unused variable `gamma_str'.
12253
122542002-03-14 Richard M. Stallman <rms@gnu.org>
12255
12256 * xfns.c (x_real_positions): Handle failure in XQueryTree.
12257
122582002-03-14 Miles Bader <miles@gnu.org>
12259
12260 * intervals.c (adjust_for_invis_intang): New function.
12261 (set_point_both): Use `adjust_for_invis_intang' to do most of the
12262 work for dealing with invisible+intangible regions. Do so before
12263 and after both forward and backward movements, to handle both
12264 front-sticky and rear-sticky cases.
12265 * textprop.c (text_property_stickiness): Function moved here from
12266 `editfns.c'.
12267 * intervals.h (text_property_stickiness): New declaration.
12268 * editfns.c (char_property_eq): Function removed.
12269 (text_property_stickiness): Function moved to `textprop.c'.
12270
122712002-03-13 Jason Rumney <jasonr@gnu.org>
12272
12273 * config.in: Add STRFTIME_NO_POSIX2.
12274
12275 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
12276 and %OX when underlying strftime does not.
12277
122782002-03-13 Stefan Monnier <monnier@cs.yale.edu>
12279
12280 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
12281 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
12282 line) to avoid annoying flicker.
12283 (xm_scroll_callback): Get rid of the now unnecessary kludge.
12284 (XTread_socket): Mark it static.
12285
12286 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
12287
122882002-03-13 Kim F. Storm <storm@cua.dk>
12289
12290 * puresize.h (BASE_PURESIZE): Increase to 775000.
12291
122922002-03-12 Juanma Barranquero <lektu@terra.es>
12293
12294 * editfns.c (syms_of_editfns): Fix typo.
12295
122962002-03-12 Gerd Moellmann <gerd@gnu.org>
12297
12298 * xsmfns.c: Include stdio.h because termhooks.h needs it.
12299 Include termopt.h for interrupt_input.
12300
123012002-03-11 Andreas Schwab <schwab@suse.de>
12302
12303 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
12304
123052002-03-11 Gerd Moellmann <gerd@gnu.org>
12306
12307 * xterm.c (note_mouse_movement): Put code for
12308 x_autoselect_window_p in #if 0.
12309
12310 * lread.c (Fload): Don't assume that message_with_string uses the
12311 string it is given like a C string.
12312
123132002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12314
12315 * xterm.h (x_session_check_input, x_session_initialize): Declared.
12316
12317 * xterm.c: (XTread_socket): Add call to x_session_check_input and
12318 x_session_have_connection.
12319 (x_initialize): Add call to x_session_initialize.
12320
12321 * termhooks.h (enum event_kind): Add save_session_event.
12322
12323 * keyboard.c: Add Emacs event save_session_event.
12324
12325 * emacs.c (main): Add call to syms_of_xsmfns.
12326
12327 * lisp.h: Declare syms_of_xsmfns as extern.
12328
12329 * config.in: Add HAVE_X_SM.
12330
12331 * Makefile.in (LIBXT): Add -lSM -lICE
12332 if HAVE_X_SM and not USE_X_TOOLKIT.
12333 (XOBJ): New file xsmfns.c added.
12334
12335 * xsmfns.c: New file for X session management.
12336
123372002-03-09 Jason Rumney <jasonr@gnu.org>
12338
12339 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
12340 read-only when setting modified time.
12341
123422002-03-08 Gerd Moellmann <gerd@gnu.org>
12343
12344 * xdisp.c (move_it_vertically_backward): At the end of the function,
12345 when moving forward by lines, treat terminal frames specially.
12346
12347 * keyboard.c (echo_char): Make sure to add a separator between
12348 keys even if echo_dash hasn't been called.
12349
12350 * xdisp.c: Use new string macros.
12351 (update_echo_area): Pass number of bytes to message3 instead of
12352 number of chars.
12353 (set_message_1): Don't access a string's size_byte directly.
12354 (decode_mode_spec_coding): Use number of bytes of eoltype string
12355 instead number of chars.
12356
12357 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
12358
123592002-03-08 Juanma Barranquero <lektu@terra.es>
12360
12361 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
12362 24-bit.
12363
123642002-03-06 Jason Rumney <jasonr@gnu.org>
12365
12366 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
12367
123682002-03-06 Gerd Moellmann <gerd@gnu.org>
12369
12370 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
12371 (cancel_echoing, echo_length, echo_truncate): Changed to
12372 work with new kboard definition.
12373 (echo_now): Use message3_nolog instead of message2_nolog.
12374
12375 * alloc.c (mark_kboards): Mark echo_string.
12376
12377 * keyboard.h (ECHOBUFSIZE): Removed.
12378 (struct kboard): Member echoptr removed, member echobuf renamed
12379 to echo_string.
12380
12381 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
12382 message3 instead of message2 to display the message using STRING's
12383 text properties.
12384
123852002-03-05 Andreas Schwab <schwab@suse.de>
12386
12387 * xdisp.c (hscroll_margin): Change to EMACS_INT.
12388
123892002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
12390
12391 * frame.c (default-frame-alist): Explain that setting it doesn't
12392 affect existing frames.
12393
123942002-03-05 Stefan Monnier <monnier@cs.yale.edu>
12395
12396 * indent.c (skip_invisible): Fix my brain fart.
12397
12398 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
12399
124002002-03-04 Stefan Monnier <monnier@cs.yale.edu>
12401
12402 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
12403 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
12404 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
12405 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
12406 and variables to use EMACS_INT instead of just int.
12407
12408 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
12409
124102002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
12411
12412 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
12413 environment, pass it down with corrected value.
12414
124152002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12416
12417 * lread.c (read_filtered_event): Do not call start_hourglass
12418 before returning.
12419
124202002-03-04 Juanma Barranquero <lektu@terra.es>
12421
12422 * w32term.c (x_display_and_set_cursor): Fix typo.
12423
124242002-03-03 Richard M. Stallman <rms@gnu.org>
12425
12426 * fileio.c (Fmake_temp_name): Doc fix.
12427
124282002-03-03 Gary Wong <gtw@gnu.org>
12429
12430 * termcap.c [!emacs]: Replace ospeed for building standalone
12431 libtermcap, for binary compatibility.
12432
12433 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
12434
124352002-03-03 Richard M. Stallman <rms@gnu.org>
12436
12437 * xrdb.c (file_p): Rename arg `path' to `filename'.
12438
12439 * abbrev.c (Fexpand_abbrev): Increment plist as use count
12440 only if it is an integer.
12441
12442 * xfns.c (png_load): Set screen_gamma based on f->gamma.
12443 If png_get_sRGB gives an answer, call png_set_gamma
12444 using the default image gamma value.
12445
12446 * lread.c (read1): When reading from a file, default string to
12447 multibyte only if it has some multibyte characters.
12448
12449 * print.c (print_object): Output multibyte chars 128...255
12450 using \x even if ! print_escape_multibyte.
12451
12452 * xdisp.c (display_mode_element): Move the places where
12453 bytepos, charpos, this, and lisp_string are set.
12454 Use lisp_string to set bytepos.
12455
12456 * xdisp.c (redisplay_internal):
12457 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
12458
12459 * xdisp.c (display_mode_element): Merge properties specified with
12460 :propertize onto those that come with the string.
12461
124622002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
12463
12464 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
12465 automatic-hscrolling. Users changed.
12466 <hscroll-margin>: Renamed from automatic-hscroll-margin.
12467 Users changed.
12468 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
12469
124702002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
12471
12472 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
12473
124742002-03-02 Kim F. Storm <storm@cua.dk>
12475
12476 * window.c (Fminibuffer_selected_window): New function.
12477 (syms_of_window): Defsubr it.
12478
124792002-03-01 Kim F. Storm <storm@cua.dk>
12480
12481 * window.h (struct window): New member phys_cursor_width.
12482
12483 * window.c (make_window, replace_window): Init phys_cursor_width.
12484
12485 * xterm.c (x_display_and_set_cursor): Blink box cursor using
12486 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
12487
12488 * w32term.c (x_display_and_set_cursor): Blink box cursor using
12489 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
12490
12491 * lisp.h (GCPRO6): New macro.
12492
12493 * process.c (Fopen_network_stream): Use GCPRO6.
12494
124952002-03-01 Kim F. Storm <storm@cua.dk>
12496
12497 * process.c (Qconnect, Qfailed): New variables.
12498 (syms_of_process): Intern and staticpro them.
12499 (Fprocess_status): Document connect and failed return values.
12500 [NON_BLOCKING_CONNECT]: New conditional.
12501 (connect_wait_mask, num_pending_connects): New variables.
12502 (status_message): Convert Qfailed status.
12503 (Fopen_network_stream): Added support for non-blocking connect.
12504 New optional args: filter, sentinel, non_blocking. Doc updated.
12505 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
12506 (deactivate_process): Handle pending non-blocking connect.
12507 (wait_reading_process_input): Poll for status of non-blocking
12508 connects. Exec sentinel directly when connect succeeds.
12509 (status_notify): Don't read process output if not yet connected.
12510
125112002-02-28 Kim F. Storm <storm@cua.dk>
12512
12513 * window.c: (minibuf_selected_window): Renamed from
12514 Vminibuf_selected_window. Users changed.
12515 (syms_of_window): Staticpro it.
12516
125172002-02-26 Kim F. Storm <storm@cua.dk>
12518
12519 The following changes add a new Vminibuf_selected_window variable
12520 which is similar to Vminibuf_scroll_window, but which is only set
12521 on entry to the minibuffer (from a non-minibuffer window):
12522
12523 * window.c: (Vminibuf_selected_window): New variable.
12524 (struct save_window_data): New member minibuf_selected_window.
12525 (Fset_window_configuration): Restore Vminibuf_selected_window.
12526 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
12527 Set minibuf_scroll_window member to nil if minibuf_level is 0.
12528 (compare_window_configurations): Compare minibuf_selected_window.
12529
12530 * window.h: (Vminibuf_selected_window): Declare extern.
12531
12532 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
12533 entry to minibuffer or on entry from a non-minibuffer window.
12534
12535 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
12536 Vminibuf_selected_window instead of Vminibuf_scroll_window.
12537
12538 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
12539 instead of Vminibuf_scroll_window when deciding in which window
12540 the region should be highlighted. Consequently, the region remains
12541 highlighteded even when a completion buffer is also displayed.
12542
125432002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
12544
12545 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
12546
12547 * xselect.c (Qcompound_text_with_extensions): Renamed from
12548 Qcompound_text_no_extensions.
12549 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
12550
125512002-02-26 Juanma Barranquero <lektu@terra.es>
12552
12553 * w32proc.c (syms_of_ntproc): Doc fix.
12554
125552002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12556
12557 * intervals.h: Include "dispextern.h" unconditionally.
12558
125592002-02-24 Jason Rumney <jasonr@gnu.org>
12560
12561 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
12562 and disp-table.elc.
12563 (lisp): Add emacs-lisp/backquote.elc.
12564
125652002-02-24 Kim F. Storm <storm@cua.dk>
12566
12567 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
12568 The validation of the event type was too strict as it didn't
12569 allow string events; buffer names are used in bindings for
12570 menu-bar-select-buffer (see `menu-bar-update-buffers').
12571
125722002-02-23 Kim F. Storm <storm@cua.dk>
12573
12574 The following changes rework my patch of 2002-02-06 which
12575 added command remapping by entering the commands directly into
12576 the keymaps. Now, command remapping uses an explicit `remap'
12577 prefix in the keymaps, i.e. [remap COMMAND].
12578
12579 * keymap.c (Qremap, remap_command_vector): New variables.
12580 (is_command_symbol): Removed function.
12581 (Fdefine_key): No longer accept a symbol for KEY.
12582 Added validation of [remap COMMAND] argument for KEY.
12583 The DEF is no longer required to be a symbol when remapping a command.
12584 (Fremap_command): New function to remap command through keymaps.
12585 (Flookup_key): Perform command remapping initiated by
12586 Fremap_command directly for speed.
12587 (Fkey_binding): Use Fremap_command for command remapping.
12588 (where_is_internal): Handle new command remapping representation.
12589 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
12590 staticpro them. Defsubr Fremap_command.
12591
12592 * keymap.h (Fremap_command): Declare extern.
12593 (is_command_symbol): Remove extern.
12594
12595 * keyboard.c (command_loop_1): Use Fremap_command for command
12596 remapping; now try command remapping for all symbols.
12597
125982002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
12599
12600 * coding.h (run_pre_post_conversion_on_str): Add prototype.
12601
126022002-02-23 Jason Rumney <jasonr@gnu.org>
12603
12604 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
12605 on the string before encoding it.
12606 (Fw32_get_clipboard_data): Run post-read-conversion on the string
12607 after decoding it.
12608
12609 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
12610
126112002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12612
12613 * w32term.c (enter_timestamp): Remove unused static variable to
12614 prevent warning.
12615
12616 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
12617
126182002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
12619
12620 * w16select.c (Fw16_get_clipboard_data): Fix last change.
12621
12622 * xselect.c (selection_data_to_lisp_data): Fix last change.
12623
126242002-02-22 Jason Rumney <jasonr@gnu.org>
12625
12626 * w32term.h (struct w32_output): New member menu_command_in_progress.
12627
12628 * w32menu.c (menubar_selection_callback): Free the menu and
12629 clear the menu_command_in_progress flag.
12630
12631 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
12632 (menu_free_timer): New variable.
12633 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
12634 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
12635 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
12636 menu command is in progress.
12637 <WM_COMMAND>: Set the menu_command_in_progress flag.
12638 Kill any menu_free_timer that is running.
12639
12640 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
12641 Call ExtTextOutA rather than ExtTextOut.
12642
126432002-02-22 Eli Zaretskii <eliz@gnu.org>
12644
12645 * puresize.h (BASE_PURESIZE): Increase to 755000.
12646
126472002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
12648
12649 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
12650 on the string before encoding it.
12651 (Fw16_get_clipboard_data): Run post-read-conversion on the string
12652 after decoding it.
12653
126542002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
12655
12656 Support for ICCCM Extended Segments in X selections:
12657
12658 * xselect.c <Qcompound_text_no_extensions>: New variable.
12659 (syms_of_xselect): Intern and staticpro it.
12660 (selection_data_to_lisp_data): Run post-read-conversion on decoded
12661 selection text.
12662 (lisp_data_to_selection_data): If next-selection-coding-system is
12663 compound-text-no-extensions, set the type of selection to be
12664 compound-text.
12665
12666 * xterm.h (x_encode_text): Update prototype.
12667
12668 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
12669 callers changed. If SELECTIONP is non-zero, run the
12670 pre-write-conversion function before encoding the selection text.
12671
126722002-02-21 Kim F. Storm <storm@cua.dk>
12673
12674 * frame.c (syms_of_frame): Change mouse-highlight default to t.
12675
12676 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
12677 Correct composing of language-change event.
12678
126792002-02-20 Kim F. Storm <storm@cua.dk>
12680
12681 * keyboard.c (menu_bar_items): Don't include keymap or local-map
12682 bindings at PT when building menu (the menu is not updated often
12683 enough for this to work reliable).
12684 (tool_bar_items): Likewise.
12685 (current_active_maps): Removed unused (and buggy) function.
12686
126872002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12688
12689 * xfns.c (gif_load): Use correct width and height for GIF images.
12690
126912002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
12692
12693 * floatfns.c (Fatan): Accept an optional second arg and call
12694 atan2 if passed 2 args.
12695
126962002-02-18 Jason Rumney <jasonr@gnu.org>
12697
12698 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
12699
127002002-02-17 Jason Rumney <jasonr@gnu.org>
12701
12702 * w32term.c (x_autoselect_window_p): New variable.
12703 (syms_of_w32term): DEFVAR_BOOL and initialize it.
12704 (note_mouse_movement): Use it.
12705
12706 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
12707
12708 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
12709
12710 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
12711 New variables.
12712 (syms_of_w32fns): Intern and staticpro them.
12713 (x_frame_parms) <"fullscreen">: New parameter.
12714 (x_fullscreen_move, x_set_fullscreen): New functions.
12715 (x_set_frame_parameters): Support Qfullscreen.
12716 (x_real_positions): Save x/y_pixels_diff frame params.
12717 (x_figure_window_size): Support full-screen frames.
12718 (Fx_create_frame): Default the fullscreen parameter.
12719
12720 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
12721 (x_fullscreen_adjust): New functions.
12722 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
12723 fullscreen. Call x_check_fullscreen_move, and set the
12724 want_fullscreen member of output_data.w32
12725 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
12726
12727 * w32term.h: New enum for FULLSCREEN_* constants.
12728 (struct w32_output): New members want_fullscreen, x_pixels_diff,
12729 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
12730 (x-fullscreen-adjust): New prototype.
12731
127322002-02-17 Kim F. Storm <storm@cua.dk>
12733
12734 * frame.c: (Vmouse_highlight): New variable.
12735 (syms_of_frame): DEFVAR_LISP it.
12736
12737 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 12738
048addec 12739 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 12740
048addec
JD
12741 * xterm.c (disable_mouse_highlight): Removed variable.
12742 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
12743 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
12744 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
12745 and on after keyboard input.
12746 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 12747
048addec 12748 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 12749
048addec
JD
12750 * msdos.c (disable_mouse_highlight): Removed variable.
12751 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
12752 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
12753 (internal_terminal_init): Initialize mouse_face_hidden.
12754 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
12755 and on after keyboard input.
4f1b1854 12756
048addec 12757 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 12758
048addec
JD
12759 * w32term.c (disable_mouse_highlight): Removed variable.
12760 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
12761 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
12762 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
12763 and on after keyboard input.
12764 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 12765
048addec 127662002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 12767
048addec
JD
12768 * msdos.c (last_mouse_window): New variable.
12769 (dos_rawgetc): Fix last change--if the mouse is in the same window
12770 as recorded in last_mouse_window, don't select this window.
5cb6905d 12771
048addec 12772 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 12773
048addec
JD
12774 * msdos.c (x_autoselect_window_p): New variable.
12775 (syms_of_msdos): Defvar it.
12776 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
12777 which the last mouse movement occured, unless it is already selected.
437dfb9f 12778
048addec
JD
12779 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
12780 New variables.
12781 (syms_of_xdisp): DEVFAR them.
12782 (hscroll_window_tree): Use automatic_hscroll_margin and
12783 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 12784
048addec 127852002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 12786
048addec
JD
12787 * xterm.c (x-autoselect-window): New variable.
12788 (note_mouse_movement): Use it.
9f696a00 12789
048addec 12790 * keyboard.c: Do not include "systime.h" twice.
d57966d7 12791
048addec 127922002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 12793
bfa02563 12794 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
d57966d7 12795
048addec 12796 * alloc.c (NSTATICS): Increase to 1280.
74779f52 12797
048addec 127982002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 12799
048addec 12800 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 12801
048addec
JD
12802 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
12803 (Vx_super_keysym): New variables.
12804 (syms_of_xterm): DEFVAR_LISP them.
12805 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
12806 variables to determine which keys to use for the various modifiers.
a474d59c 12807
048addec 128082002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 12809
048addec
JD
12810 * window.c: (Vmode_line_in_non_selected_windows): Removed.
12811 (mode_line_in_non_selected_windows): New variable.
12812 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 12813
048addec
JD
12814 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
12815 Use mode_line_in_non_selected_windows.
12816 (mode_line_in_non_selected_windows): Declare extern.
12817 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 12818
048addec 128192002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 12820
048addec
JD
12821 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
12822 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
12823 (Fclear_this_command_keys): Doc fixes.
2d10309f 12824
048addec
JD
12825 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
12826 (update_face_from_frame_parameter): Increment face_change_count
12827 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 12828
048addec
JD
12829 * xdisp.c (QCpropertize): New variable.
12830 (mode_line_proptrans_alist): New variable.
12831 (display_mode_element): New arg PROPS; all calls changed.
12832 Implement this, for strings.
12833 Handle literal output of strings by sharing the
12834 main-line code for strings, using local var `literal'.
12835 Handle :propertize feature.
12836 (syms_of_xdisp): Initialze and staticpro QCpropertize and
12837 mode_line_proptrans_alist.
0b1e6b54 12838
048addec 128392002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 12840
048addec
JD
12841 * window.c: (Vmode_line_in_non_selected_windows): New variable.
12842 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 12843
048addec
JD
12844 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
12845 (CURRENT_MODE_LINE_FACE_ID): Use it.
12846 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 12847
048addec
JD
12848 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
12849 to get mode line face.
e17144de 12850
048addec 128512002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 12852
048addec
JD
12853 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
12854 variables; cus-start.el doesn't need them anymore.
44368f8f 12855
048addec 128562002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 12857
048addec
JD
12858 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
12859 reduction. This fixes a display problem where stray newlines were
12860 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 12861
048addec 128622002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 12863
048addec 12864 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 12865
048addec 12866 * xdisp.c (display_mode_lines): Fix last change.
453c5510 12867
048addec 128682002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 12869
048addec
JD
12870 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
12871 match each other.
12872 (w32_load_system_font): Prevent Cleartype fonts from loading.
12873 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 12874
048addec 128752002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 12876
048addec
JD
12877 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
12878 (CURRENT_MODE_LINE_HEIGHT): Use it.
12879 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 12880
048addec
JD
12881 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
12882 (pos_visible_p, handle_face_prop): Likewise.
12883 (display_mode_lines): Likewise, but for the real selected window.
12884 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 12885
048addec
JD
12886 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
12887 in non-selected windows.
12888 (realize_basic_faces): Realize it.
12889 (syms_of_term): Intern and staticpro it.
308dd672 12890
048addec 128912002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 12892
048addec
JD
12893 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
12894 Changed mail addresses to emacs-devel@gnu.org.
308dd672 12895
048addec 128962002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 12897
048addec
JD
12898 * fileio.c (Fsubstitute_in_file_name): If the file name includes
12899 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 12900
048addec 12901 * floatfns.c (Fround): Doc fix.
3c1e6b46 12902
048addec 129032002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 12904
048addec 12905 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 12906
048addec 129072002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 12908
048addec 12909 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 12910
048addec 129112002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 12912
048addec
JD
12913 * keymap.c (where_is_internal): Only check whether definition is
12914 remapped if it fulfills is_command_symbol.
0065bb74 12915
048addec 129162002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 12917
048addec 12918 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 12919
048addec 12920 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 12921
048addec 129222002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 12923
048addec
JD
12924 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
12925 defining command remapping. Doc updated.
12926 (Flookup_key): Remap command through keymap if KEY is a symbol.
12927 (is_command_symbol): New function.
12928 (Fkey_binding): Use it. New optional argument NO-REMAP.
12929 Doc updated. Callers changed. Perform command remapping via
12930 recursive call unless that arg is non-nil.
12931 (where_is_internal): New argument no_remap. Callers changed.
12932 Call recursively to find original key bindings for a remapped
12933 comand unless that arg is non-nil.
12934 (Fwhere_is_internal): New optional argument NO-REMAP.
12935 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 12936
048addec
JD
12937 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
12938 (is_command_symbol): Added prototype.
0d8466cc 12939
048addec
JD
12940 * keyboard.c (Vthis_original_command): New variable.
12941 (syms_of_keyboard): DEFVAR_LISP it.
12942 (command_loop_1): Set it, and perform command remapping.
15fff01d 12943
048addec 129442002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 12945
048addec 12946 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 12947
048addec 129482002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 12949
048addec 12950 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 12951
048addec 129522002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 12953
048addec 12954 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 12955
048addec 129562002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 12957
048addec 12958 * filelock.c (S_ISLNK): Define if not defined.
3a232704 12959
048addec 129602002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 12961
048addec 12962 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 12963
048addec
JD
12964 * lread.c (read1): Redesign strategy for force_multibyte and
12965 force_singlebyte. Now is_multibyte records whether read_buffer
12966 is multibyte. Encountering any multibyte character makes it so.
4e02881b 12967
048addec 129682002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 12969
048addec
JD
12970 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
12971 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 12972
048addec 129732002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 12974
048addec
JD
12975 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
12976 latter never being defined on GNU/Linux.
749f499f 12977
048addec 129782002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 12979
048addec
JD
12980 * xfaces.c (realize_default_face): Don't set the weight and slant of
12981 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 12982
048addec 129832002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 12984
048addec
JD
12985 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
12986 Call cancel_hourglass unconditionally.
d0fd26dd 12987
048addec
JD
12988 * eval.c (Fsignal): Remove duplicated declaration of
12989 the variable `display_hourglass_p'.
b4c45162 12990
048addec 129912002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 12992
048addec 12993 * editfns.c (region_limit): Nicer error message.
c95eaa61 12994
048addec
JD
12995 * coding.c (decode_composition_emacs_mule):
12996 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 12997
048addec
JD
12998 * callint.c (check_mark): New arg to specify clearer error message.
12999 Callers changed.
c95eaa61 13000
048addec 130012002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 13002
048addec 13003 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 13004
048addec 130052002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 13006
048addec
JD
13007 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
13008 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
13009 Fix doc-strings.
c95eaa61 13010
048addec 130112002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 13012
048addec 13013 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 13014
048addec
JD
13015 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
13016 and scroll_up_aggressively.
c95eaa61 13017
048addec 130182002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 13019
048addec 13020 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 13021
048addec 130222002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 13023
048addec
JD
13024 * textprop.c (Fnext_property_change, Fnext_single_property_change)
13025 (Fprevious_property_change, Fprevious_single_property_change):
13026 Stay within the narrowed-buffer boundaries.
e2c3786a 13027
048addec 130282002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 13029
048addec
JD
13030 * term.c (Ftty_display_color_cells): New function.
13031 (syms_of_term): Defsubr it.
13032 (Ftty_display_color_cells, Ftty_display_color_p): Change the
13033 argument name to DISPLAY. Doc fix.
bf794306 13034
048addec
JD
13035 * dispextern.h: Add prototype for set_tty_color_mode and
13036 tty_setup_colors.
bf794306 13037
048addec 130382002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 13039
048addec
JD
13040 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
13041 If region left to draw is not what was expected, mark the frame as
13042 garbaged.
62582985 13043
048addec
JD
13044 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
13045 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 13046
048addec 130472002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 13048
048addec
JD
13049 * w32term.c (x_update_window_begin): Only hide caret if
13050 w32_use_visible_system_caret is set.
13051 (x_update_window_end): Only show caret if
13052 w32_use_visible_system_caret is set.
13053 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 13054
048addec 13055 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 13056
048addec 130572002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 13058
048addec
JD
13059 * unexelf.c (unexec): Define n so as to cause compilation error
13060 for the code where people have often written n instead of nn.
1e9a6186 13061
048addec 13062 * .gdbinit (hookpost-run): Defined.
1e9a6186 13063
048addec 130642002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 13065
048addec 13066 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 13067
048addec 130682002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 13069
048addec
JD
13070 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
13071 if fullscreen is being set.
7c75be36 13072
048addec 130732002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 13074
048addec
JD
13075 * minibuf.c (Fminibuffer_contents)
13076 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
13077 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 13078
048addec 130792002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 13080
048addec 13081 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 13082
048addec 130832002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 13084
048addec
JD
13085 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
13086 height before comparison.
13087 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 13088
048addec 130892002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 13090
048addec
JD
13091 * w32term.c (w32_system_caret_width): Remove.
13092 (w32_use_visible_system_caret): New user flag.
13093 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
13094 Windows reports a screen reader running.
13095 (x_update_window_begin): Hide the system caret.
13096 (x_update_window_end): Show the system caret.
13097 (x_display_and_set_cursor): Don't draw a cursor when
13098 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 13099
048addec
JD
13100 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
13101 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
13102 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
13103 the user requests it. Use system default width when creating.
13104 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 13105
048addec
JD
13106 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
13107 New window messages.
905cc05a 13108
048addec 131092002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 13110
048addec 13111 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 13112
048addec 131132002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 13114
048addec 13115 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 13116
048addec 131172002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 13118
048addec 13119 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 13120
048addec 131212002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 13122
048addec
JD
13123 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
13124 that Windows returns. If a double check fails, try to guess how
13125 ExtTextOut is going to act.
4d0fa4f3 13126
048addec
JD
13127 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
13128 in place of stricmp.
13129 (w32_list_synthesized_fonts): Removed.
13130 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
13131 (struct enumfont_t): New element; list.
13132 (enum_font_cb2): List all style and charset variations of a font.
13133 (Fw32_select_font): New optional argument; include_proportional.
13134 Exclude vertical fonts. Exclude proportional fonts unless
13135 include_proportional is non-nil.
13136 (w32_enable_synthesized_fonts): Change to a boolean.
13137 (Fw32_send_sys_command): Doc fix.
493faf20 13138
048addec 131392002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 13140
048addec
JD
13141 * dispnew.c (update_frame): Move the variable `tem' to the block
13142 where it is used.
4971e491 13143
048addec 131442002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 13145
048addec
JD
13146 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
13147 call to face-set-after-frame-default.
4971e491 13148
048addec 131492002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 13150
048addec
JD
13151 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
13152 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 13153
048addec 131542002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 13155
048addec
JD
13156 * window.c (enlarge_window): When exceeding size of parent,
13157 directly delete all the siblings instead of trying to resize it.
201c831a 13158
048addec 131592002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 13160
048addec 13161 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 13162
048addec 131632002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 13164
048addec 13165 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 13166
048addec 131672002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 13168
048addec
JD
13169 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
13170 is invisible. This can happen if cursor is on top line of a
13171 window, and we switch to a buffer with a header line.
d77fbc16 13172
048addec 13173 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 13174
048addec 131752002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 13176
048addec
JD
13177 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
13178 `dont_resize' only when used.
61e3b944 13179
048addec 13180 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 13181
048addec 131822002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 13183
048addec
JD
13184 * xdisp.c (display_mode_element): When computing charpos, depend
13185 on multibyteness of elt, not the text in field.
8af01033 13186
048addec 131872002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 13188
048addec
JD
13189 * buffer.c (Fkill_all_local_variables):
13190 Increment `update_mode_lines' only once.
7363986a 13191
048addec 131922002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 13193
048addec
JD
13194 * lisp.h (adjust_after_replace_noundo)
13195 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 13196
048addec 13197 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 13198
048addec 131992002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 13200
048addec
JD
13201 Support for the --color command-line argument and tty-color-mode
13202 frame parameter:
f1a85b89 13203
048addec
JD
13204 * term.c (tty_default_color_capabilities, tty_setup_colors)
13205 (set_tty_color_mode): New functions.
13206 (term_init): Call tty_default_color_capabilities.
13207 (Qtty_color_mode_alist): New variable.
13208 (syms_of_term): Intern and staticpro it.
f1a85b89 13209
048addec
JD
13210 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
13211 frames.
13212 (do_switch_frame): For termcap frames, switch the tty
13213 color mode as specified by the frame's parameters.
13214 (Qtty_color_mode): New variable.
13215 (syms_of_frame): Intern and staticpro it.
3a62677f 13216
048addec
JD
13217 * emacs.c (USAGE2): Add the --color option.
13218 (standard_args): Ditto.
72244db2 13219
048addec
JD
132202002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13221
13222 * xterm.h (struct x_output): New members want_fullscreen,
13223 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
13224 y_pixels_outer_diff.
13225 New enum for FULLSCREEN_* constants.
13226 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
13227 is NULL.
13228 (x_fullscreen_adjust): Add prototype.
3a62677f 13229
048addec
JD
13230 * emacs.c (USAGE2): Add the new full-screen arguments.
13231 (standard_args): Ditto.
3a62677f 13232
048addec
JD
13233 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
13234 New variables.
13235 (syms_of_xfns): Intern and staticpro them.
13236 (x_frame_parms) <"fullscreen">: New parameter.
13237 (x_fullscreen_move, x_set_fullscreen): New functions.
13238 (x_set_frame_parameters): Support for Qfullscreen.
13239 (x_real_positions): More accurate computation of the frame position.
13240 (x_figure_window_size): Support full-screen frames.
13241 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 13242
048addec
JD
13243 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
13244 (XTread_socket) <Expose>: Call x_check_fullscreen.
13245 <ConfigureNotify>: Don't resize to fullscreen.
13246 Call x_check_fullscreen_move, and set the want_fullscreen member of
13247 output_data.x.
3a62677f 13248
048addec 132492002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 13250
048addec
JD
13251 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
13252 for mice with more than 3 buttons.
b8523839 13253
048addec
JD
13254 * w32term.c (parse_button): New parameter xbutton. Callers changed.
13255 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 13256
048addec
JD
13257 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
13258 (syms_of_w32fns): DEFVAR_BOOL it.
13259 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 13260
048addec 132612002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 13262
048addec 13263 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 13264
048addec 132652002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 13266
048addec 13267 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 13268
048addec 132692002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 13270
048addec
JD
13271 * .gdbinit (xbuffer): Remove address operator since data is now a
13272 pointer.
c93674bb 13273
048addec 132742002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 13275
048addec 13276 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 13277
048addec 13278 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 13279
048addec 132802002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 13281
048addec
JD
13282 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
13283 when checking for multiple frames.
91175673 13284
048addec 132852002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 13286
048addec
JD
13287 * window.c (delete_window): Rewrite the code for changing the
13288 selected window to handle the case where WINDOW is not a leaf.
91175673 13289
048addec 132902002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 13291
048addec
JD
13292 * process.c (send_process): Set src_multibyte to 1 after the call
13293 top setup_coding_system, not before the call.
e0fead5d 13294
048addec 132952002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 13296
048addec
JD
13297 * xmenu.c (set_frame_menubar, xmenu_show):
13298 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 13299
048addec
JD
13300 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
13301 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 13302
048addec 133032002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 13304
048addec 13305 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 13306
048addec 13307 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 13308
048addec 13309 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 13310
048addec 133112002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 13312
048addec
JD
13313 * insdel.c (make_gap_larger): Make sure buffer size does not
13314 overflow range of int.
62854fe2 13315
048addec 133162002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 13317
048addec
JD
13318 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
13319 OVERLAPS_P.
656f46bb 13320
048addec 13321 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 13322
048addec
JD
13323 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
13324 to the left or to the right of the pointer, put it against
13325 the left screen edge.
13326 (x_frame_parms): Add missing braces around initializer.
036e218d 13327
048addec
JD
13328 * w32term.c (x_setup_relief_colors): Don't compute an image's
13329 background color if it doesn't have a Pixmap.
13330 (notice_overwritten_cursor): Don't depend on
13331 output_cursor and updated_area. Compare pixel coordinates with
13332 window's cursor pixel coordinates.
13333 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
13334 Call notice_overwritten_cursor with new arg list.
13335 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
13336 unconditionally.
13337 (x_draw_image_relief): Use predefined macro instead of
13338 constant when the value of `tool_bar_button_relief' is negative.
036e218d 13339
048addec 13340 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 13341
048addec 133422002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 13343
048addec 13344 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 13345
048addec 133462002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 13347
048addec
JD
13348 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
13349 (Fkey_binding): Try the `keymap' property map first.
13350 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
13351 minor mode bindings.
90647b07 13352
048addec 133532002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 13354
048addec 13355 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 13356
048addec 133572002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 13358
048addec
JD
13359 * keyboard.c (read_key_sequence): Handle the keymap property
13360 before minor mode maps.
9fbc32aa 13361
048addec
JD
13362 * editfns.c (Fformat): Update thissize from field_width
13363 based on the actual width, in the string case.
036e218d 13364
048addec 133652002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 13366
048addec
JD
13367 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
13368 when used as truth value to prevent gcc warnings.
9fbc32aa 13369
048addec
JD
13370 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
13371 * w32proc.c: Include <config.h>.
9fbc32aa 13372
048addec 133732002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 13374
048addec
JD
13375 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
13376 not EMACS_INT, to make them compatible with DEFVAR_INT.
13377 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 13378
048addec 133792002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 13380
048addec
JD
13381 * print.c (print_object): Test print_escape_nonascii only for
13382 unibyte strings.
13383 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
13384 when outputting to a multibyte buffer.
9fbc32aa 13385
048addec 133862001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 13387
048addec
JD
13388 * print.c (print_object): In multibyte string, use hex escapes.
13389 Use octal only for unibyte strings.
13390 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 13391
048addec
JD
13392 * lread.c (read_escape): New arg BYTEREP for reporting whether
13393 escape forces unibyte or multibyte.
13394 (read1): When reading a string, take note of that info.
0142178a 13395
048addec 133962001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 13397
048addec
JD
13398 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
13399 comparison to test lisp value returned by Fget.
d4824a5d 13400
048addec 134012001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 13402
048addec 13403 * lisp.h (max_specpdl_size): Add declaration.
b1356234 13404
048addec 13405 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 13406
048addec
JD
13407 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
13408 Handle modifier bits. Correct typo in error message.
99e380ee 13409
048addec 134102001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 13411
048addec
JD
13412 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
13413 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
13414 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
13415 Update calls to Fdefine_abbrev.
13416 (write_abbrev): Update for changed data format.
13417 Don't list "system" abbrevs.
13418 (Fexpand_abbrev): Update use count with new data format.
13419 (describe_abbrev): Update for changed data format.
13420 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 13421
048addec 13422 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 13423
048addec 13424 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 13425
048addec
JD
13426 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
13427 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 13428
048addec
JD
13429 * keymap.c (Flookup_key): Error message if key has wrong data type.
13430 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
13431 (exclude_key): New variable.
59a86c99 13432
048addec 134332001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 13434
048addec
JD
13435 * xterm.c (x_setup_relief_colors): Don't compute an image's
13436 background color if it doesn't have a Pixmap.
eb77a5f4 13437
048addec
JD
13438 * xterm.c (notice_overwritten_cursor): Don't depend on
13439 output_cursor and updated_area. Compare pixel coordinates with
13440 window's cursor pixel coordinates.
13441 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
13442 Call notice_overwritten_cursor with new arg list.
13443 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
13444 unconditionally.
eb77a5f4 13445
048addec
JD
13446 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
13447 height of the cursor line to the amount to scroll.
eb77a5f4 13448
048addec 134492001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 13450
048addec
JD
13451 * intervals.c (set_point_both): The position after an invisible,
13452 intangible character is not an acceptable stopping point.
bb313871 13453
048addec 134542001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 13455
048addec
JD
13456 * window.c (enlarge_window): In new preserve_before code, convert
13457 CURBEG from lisp object to integer before doing arithmetic.
6052529b 13458
048addec 134592001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 13460
048addec 13461 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 13462
048addec 134632001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 13464
048addec
JD
13465 * keyboard.c (record_char): Ignore duplicate help-echo events only
13466 separated by mouse-movement. When tracking mouse, only record
13467 first and last mouse-movement event in same window.
13468 Don't record mouse-movement events in keyboard macros.
3ce081f5 13469
048addec 134702001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 13471
048addec
JD
13472 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
13473 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 13474
048addec
JD
13475 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
13476 instead of Fstring_as_unibyte.
9fabb2f5 13477
048addec 134782001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 13479
048addec 13480 The following changes remove mocklisp support:
9fabb2f5 13481
048addec 13482 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 13483
048addec
JD
13484 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
13485 `Qmocklisp' and `Qmocklisp_arguments'.
13486 Remove prototype of syms_of_mocklisp.
2fa0eedf 13487
048addec 13488 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 13489
048addec
JD
13490 * callint.c: Do not include mocklisp.h.
13491 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 13492
048addec
JD
13493 * eval.c: Remove variables `Qmocklisp_arguments',
13494 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
13495 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
13496 Do not test for mocklisp case.
13497 (Fwhile): Remove unused variable `tem'.
13498 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 13499
048addec 13500 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 13501
048addec 13502 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 13503
048addec 13504 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 13505
048addec 135062001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 13507
048addec
JD
13508 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
13509 to the left or to the right of the pointer, put it against
13510 the left screen edge.
6108b49c 13511
048addec 135122001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 13513
048addec
JD
13514 * Makefile.in (distclean): Remove .gdbinit if we are building
13515 outside the source tree.
5eea19a4 13516
048addec 135172001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 13518
048addec 13519 * w32.c (emacs_root_dir): New function.
5eea19a4 13520
048addec 13521 * msdos.c (emacs_root_dir): New function.
5eea19a4 13522
048addec
JD
13523 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
13524 of the current drive as the fallback for default_directory.
438e57dd 13525
048addec
JD
13526 * dired.c (file_name_completion): Run the elements of
13527 completion-ignored-extensions through ENCODE_FILE.
438e57dd 13528
048addec
JD
13529 * lisp.h (scmp): Remove prototype, since it's now a static
13530 function private to dired.c.
c88e5347 13531
048addec 135322001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 13533
048addec
JD
13534 * dired.c (scmp): Function moved from minibuf.c.
13535 Delete multibyte handling--used only on encoded strings.
59ce1461 13536
048addec 13537 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 13538
048addec 13539 * fns.c (merge): Add QUIT call.
59ce1461 13540
048addec 135412001-12-18 Dave Love <fx@gnu.org>
8727d588 13542
048addec
JD
13543 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
13544 language/georgian.el.
8727d588 13545
048addec 135462001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 13547
048addec
JD
13548 * Makefile.in (lisp, shortlisp): Synchronize with changes to
13549 lisp/Makefile.in:DONTCOMPILE.
cc63037e 13550
048addec 135512001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 13552
048addec
JD
13553 * xdisp.c (window_box_height): Do not return negative values.
13554 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 13555
048addec 13556 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 13557
048addec 13558 * term.c (keys): Likewise.
deece6f5 13559
048addec 13560 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 13561
048addec 135622001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 13563
048addec
JD
13564 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
13565 patch (COMPOSING_P, not COMPOSING).
28ff4293 13566
048addec 135672001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 13568
048addec 13569 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 13570
048addec
JD
13571 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
13572 before calling decode_coding.
9b46de40 13573
048addec 13574 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 13575
048addec
JD
13576 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
13577 instead of only for COMPOSITION_DISABLED.
9b46de40 13578
048addec 135792001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 13580
048addec 13581 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 13582
048addec 13583 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 13584
048addec
JD
13585 * buffer.h (struct buffer): New field `display_error_modiff'.
13586 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 13587
048addec 13588 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 13589
048addec
JD
13590 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
13591 Call redisplay_window, but not if display_error_modiff field says no.
13592 (redisplay_window_error): New function.
13593 (displayed_buffer): New variable.
13594 (redisplay_internal, redisplay_windows): Call the new functions
13595 instead of redisplay_window directly.
2cd23960 13596
048addec 135972001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 13598
048addec 13599 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 13600
048addec 136012001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 13602
048addec 13603 * makefile.w32-in (EMACSLOADPATH): Define.
f9711de4 13604 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
048addec 13605 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 13606
048addec 136072001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 13608
048addec
JD
13609 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
13610 parameter have a numeric value all the time.
f6fa0866 13611
048addec 13612 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 13613
048addec 136142001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 13615
048addec 13616 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 13617
048addec
JD
13618 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
13619 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 13620
048addec 136212001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 13622
048addec
JD
13623 * xdisp.c (move_it_vertically_backward): Change heuristic
13624 for the case that we didn't move far enough initially.
91c153e2 13625
048addec
JD
13626 * window.c (Frecenter): Simplify computation in the case of window
13627 system frames and ARG < 0; use window_box_height.
65b7d3e7 13628
048addec 136292001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 13630
048addec
JD
13631 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
13632 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 13633
048addec 136342001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 13635
048addec
JD
13636 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
13637 arg is negative.
be676094 13638
048addec 136392001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 13640
048addec
JD
13641 * m/hp800.h: Split the __hpux conditional into the parts
13642 that are right for GNU/Linux too and the parts that are not.
13643 Use the former if GNU_LINUX.
13644 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 13645
048addec 13646 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 13647
048addec 136482001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 13649
048addec
JD
13650 * macros.c, msdos.c, w16select.c: Change doc-string comments to
13651 `new style' [w/`doc:' keyword].
032a857d 13652
048addec 136532001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 13654
048addec
JD
13655 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
13656 before using.
b6270150 13657
048addec 136582001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 13659
048addec
JD
13660 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
13661 keyword].
98cbb9fa 13662
048addec 136632001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 13664
048addec 13665 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 13666
048addec 13667 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 13668
048addec 136692001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 13670
048addec
JD
13671 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
13672 Add comment to explain where the struct came from.
13673 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
13674 (add_menu_item): Process pop-up menus first to avoid memory leak.
13675 (add_menu_item, w32_menu_display_help): Use `help' field as
13676 Lisp_Object.
13677 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 13678
048addec 136792001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 13680
048addec 13681 * COPYING: Moved back.
fa336b91 13682
048addec
JD
13683 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
13684 Add parentheses around && within ||.
077907d4 13685
048addec 13686 * indent.c (compute_motion): Likewise.
aa2af83a 13687
048addec 13688 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 13689
048addec
JD
13690 * coding.c (setup_coding_system, shrink_encoding_region)
13691 (Fdecode_sjis_char): Likewise.
60a653f1 13692
048addec 136932001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 13694
048addec
JD
13695 * xdisp.c (display_mode_element): Don't read past end of string if
13696 it ends with '%'.
60a653f1 13697
048addec
JD
13698 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
13699 can hold.
60a653f1 13700
048addec
JD
13701 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
13702 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
13703 type changed to Lisp_Object.
13704 (syms_of_data): DEFVAR_LISP them.
60a653f1 13705
048addec 137062001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 13707
048addec
JD
13708 * callproc.c (init_callproc): Set Vdata_directory based on the source
13709 location whenever Emacs was run uninstalled.
60a653f1 13710
048addec 137112001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 13712
048addec
JD
13713 * config.in (HAVE_WORKING_VFORK): New #undefs.
13714 * process.c (create_process):
13715 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
13716 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
13717 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
13718 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
13719 * m/intel386.h (HAVE_VFORK): Likewise.
13720 * m/mips-siemens.h (HAVE_VFORK): Likewise.
13721 * m/mips.h (HAVE_VFORK): Likewise.
13722 * s/freebsd.h (vfork): Remove #define.
13723 * s/lynxos.h (HAVE_VFORK): Remove #undef.
13724 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 13725
048addec 137262001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 13727
048addec
JD
13728 * s/hpux10.h (random): Add undef.
13729 (HAVE_RANDOM): Define it just once.
60a653f1 13730
048addec 137312001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13732
048addec 13733 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 13734
048addec 137352001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 13736
048addec
JD
13737 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
13738 scroll bars of the frame before deleting the frame itself. If the
13739 frame has a widget, delete the frame with XtDestroyWidget, and do
13740 not call XDestroyWindow before that.
60a653f1 13741
048addec 137422001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 13743
048addec 13744 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 13745
048addec 13746 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 13747
048addec 137482001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 13749
048addec
JD
13750 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
13751 excessively large.
60a653f1 13752
048addec
JD
13753 * insdel.c (make_gap_larger): New function.
13754 (make_gap_smaller): New function.
13755 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
13756 Call make_gap_smaller if arg is negative.
60a653f1 13757
048addec 137582001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13759
048addec
JD
13760 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
13761 Pass a dummy argument when calling interrupt_signal.
13762 (parse_menu_item): Mark disabled items before checking for empty def.
13763 (read_char_minibuf_menu_prompt): Make safety more visible.
13764 (read_key_sequence): Add a `first_unbound' variable.
13765 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
13766 unbound prefix as soon as we can detect it.
60a653f1 13767
048addec
JD
13768 * doc.c (Fsnarf_documentation): Add prototype.
13769 (get_doc_string): Handle negative arguments.
13770 (Fdocumentation): Use AREF and ASIZE.
13771 Move the calls to get_doc_string to a single place.
13772 Don't confuse an interactive-spec for a docstring reference.
13773 (Fdocumentation_property): Take advantage of the fact that
13774 get_doc_string now ignores the sign of the docstring position.
60a653f1 13775
048addec 13776 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 13777
048addec 137782001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13779
a64387ee 13780 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
60a653f1 13781
048addec 137822001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13783
048addec
JD
13784 * xterm.c (x_draw_image_relief): Use predefined macro instead of
13785 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 13786
048addec 137872001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 13788
048addec
JD
13789 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
13790 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 13791
048addec 13792 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 13793
048addec 137942001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13795
048addec 13796 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 13797
048addec 137982001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 13799
048addec 13800 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 13801
048addec 138022001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 13803
f63fd14e 13804 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 13805
048addec
JD
13806 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
13807 [!WM_MOUSELEAVE]: Define.
60a653f1 13808
048addec
JD
13809 * w32menu.c (current_popup_menu, get_menu_item_info):
13810 (set_menu_item_info): New vars.
13811 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
13812 (w32_menu_show): Set current_popup_menu.
13813 (add_menu_item): Allocate new strings for owner-drawn menu items
13814 and help strings.
13815 Use owner-draw for disabled menu items again.
13816 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
13817 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 13818
048addec
JD
13819 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
13820 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
13821 <WM_EXITMENULOOP>: Free menu strings.
13822 <WM_MOUSELEAVE>: Stop tracking mouse.
13823 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 13824
048addec
JD
13825 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
13826 and mouse face.
60a653f1 13827
048addec 138282001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 13829
048addec
JD
13830 The following changes add left-fringe and right-fringe
13831 frame parameters to adjust fringe widths, or remove one or
13832 both fringes.
60a653f1 13833
048addec
JD
13834 * frame.h (struct frame): Remove trunc_area_pixel_width and
13835 trunc_area_cols fields.
13836 (Qleft_fringe, Qright_fringe): Declare.
13837 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 13838
048addec
JD
13839 * frame.c (Qleft_fringe, Qright_fringe): New vars.
13840 (syms_of_frame): Initialize them.
60a653f1 13841
048addec
JD
13842 * window.c (coordinates_in_window): Handle separate left and right
13843 fringe widths.
60a653f1 13844
048addec
JD
13845 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
13846 and fringe_cols fields.
13847 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
13848 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
13849 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
13850 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
13851 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
13852 (x_compute_fringe_widths): Add prototype.
60a653f1 13853
048addec
JD
13854 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
13855 fill fringe evenly with small dashes.
f63fd14e 13856 (x_draw_fringe_bitmap): Clear background if necessary. Align and
048addec
JD
13857 clip the new ZV bitmap to avoid jitter between rows.
13858 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
13859 background. Don't draw fringe bitmaps if fringe width is zero.
13860 (x_compute_fringe_widths): New function.
13861 (x_new_font, x_set_window_size_1): Use it.
60a653f1 13862
048addec
JD
13863 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
13864 (x_set_frame_parameters): Process `font' parameter before other
13865 parameters as fringe widths depend on it.
13866 (x_set_fringe_width): New function.
13867 (x_figure_window_size): Use x_compute_fringe_widths.
13868 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
13869 parameters.
60a653f1 13870
048addec
JD
13871 * widget.c (set_frame_size): Use x_compute_fringe_widths.
13872 (EmacsFrameSetCharSize): Ditto.
60a653f1 13873
048addec
JD
13874 * w32term.h: Merged changes from xterm.h.
13875 * w32term.c: Merged changes from xterm.c.
13876 * w32fns.c: Merged changes from xfns.c.
60a653f1 13877
048addec 138782001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13879
048addec 13880 * COPYING: Removed.
60a653f1 13881
048addec 138822001-11-29 Dave Love <fx@gnu.org>
60a653f1 13883
048addec
JD
13884 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
13885 extra extra slot.
13886 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 13887
048addec 138882001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13889
048addec
JD
13890 * fileio.c (file-name-coding-system)
13891 (default-file-name-coding-system): Doc fix (links to referenced
13892 variables added).
60a653f1 13893
048addec 138942001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13895
048addec
JD
13896 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
13897 Add dummy uses of gcproN variables.
60a653f1 13898
048addec
JD
13899 * category.c (describe_category, describe_category_1)
13900 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
13901 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 13902
048addec 139032001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 13904
048addec 13905 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 13906
048addec
JD
13907 * Makefile.in (lispdir): New variable, referring to build dir.
13908 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 13909
048addec 139102001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 13911
048addec
JD
13912 * w32menu.c (w32_menu_display_help): Actually add the new argument
13913 OWNER.
60a653f1 13914
048addec 139152001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 13916
048addec
JD
13917 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
13918 menu items. From David Ponce <dponce@wanadoo.fr>.
13919 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
13920 conditionally.
f63fd14e 13921 (w32_menu_display_help): New argument OWNER. Rewritten to store a
048addec 13922 help event in the owner frame's keyboard buffer.
60a653f1 13923
048addec
JD
13924 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
13925 (Fx_show_tip): Don't subtract last width from row width.
13926
13927 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
13928 (w32_read_socket): Use EQ to compare frames.
60a653f1 13929
048addec 139302001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 13931
048addec
JD
13932 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
13933 OVERLAPS_P.
60a653f1 13934
048addec 139352001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13936
048addec
JD
13937 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
13938 `gcpro3' and `gcpro4'.
60a653f1 13939
048addec 13940 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 13941
048addec 139422001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13943
048addec 13944 * ccl.c: Use AREF and ASIZE.
60a653f1 13945
048addec 139462001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13947
048addec
JD
13948 * lisp.h (run_hook_list_with_args): Remove.
13949 (LIST_END_P): Fix call to wrong_type_argument.
13950 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 13951
048addec 139522001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13953
048addec
JD
13954 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
13955 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 13956
048addec
JD
13957 * eval.c: Use AREF and ASIZE.
13958 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 13959
048addec
JD
13960 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
13961 which match the end of the file-name.
13962 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
13963 is not a valid env var, but leave it as is instead.
60a653f1 13964
048addec
JD
13965 * keymap.c (access_keymap): Handle t bindings like nil bindings.
13966 Make nil bindings in char-tables transparent.
13967 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 13968
048addec 139692001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 13970
048addec
JD
13971 * textprop.c (set_text_properties_1): Allow START, END in either order.
13972 Do nothing if range is empty.
60a653f1 13973
048addec 13974 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 13975
048addec
JD
13976 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
13977 (clean): Not here.
60a653f1 13978
048addec 139792001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13980
048addec
JD
13981 * textprop.c (set_text_properties_1): Clearly mark that the
13982 interval should not be empty.
60a653f1 13983
048addec
JD
13984 * intervals.c (graft_intervals_into_buffer):
13985 Don't call set_text_properties_1 on an empty interval.
60a653f1 13986
048addec 139872001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 13988
048addec 13989 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 13990
048addec
JD
13991 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
13992 don't lose the data in it.
60a653f1 13993
048addec 139942001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 13995
048addec 13996 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 13997
c62aec78 13998 * buffer.c (Fkill_buffer): Likewise.
60a653f1 13999
c62aec78 14000 * print.c (temp_output_buffer_setup): Likewise.
60a653f1 14001
048addec 140022001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14003
048addec 14004 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 14005
048addec 140062001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 14007
048addec
JD
14008 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
14009 Niemitalo <kon@iki.fi>.
60a653f1 14010
048addec 140112001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 14012
048addec 14013 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 14014
048addec
JD
14015 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
14016 (Fx_show_tip): Block input during frame creation.
14017 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 14018
048addec 140192001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 14020
048addec
JD
14021 * lread.c (Fload): Detect recursive load error for more than 3
14022 nestings of the same file.
14023 (Vrecursive_load_depth_limit): Variable deleted.
14024 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 14025
048addec 140262001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 14027
048addec
JD
14028 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
14029 mouse position if either left or top is not specified.
60a653f1 14030
048addec
JD
14031 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
14032 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
14033 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
14034 (my_create_tip_window): Assign tip_window.
14035 (x_create_tip_frame): Use same defaults as X.
14036 (compute_tip_xy): Remove unused variable. Use full screen width.
f63fd14e 14037 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 14038
048addec
JD
14039 * w32term.c (x_after_update_window_line): Doc fix.
14040 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
14041 frames.
14042 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 14043
048addec
JD
14044 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
14045 for all Windowed systems.
60a653f1 14046
048addec 140472001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 14048
048addec
JD
14049 * msdos.c (IT_clear_screen): If the frame's faces are not yet
14050 realized, use the initial screen colors to clear the screen.
60a653f1 14051
048addec 140522001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 14053
048addec
JD
14054 * textprop.c (Fset_text_properties): Remove unused variables
14055 `unchanged', `prev_changed', `s' and `len'.
60a653f1 14056
048addec
JD
14057 * search.c (Freplace_match): Remove unused variable `inslen'.
14058
14059 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
14060
140612001-11-22 Jason Rumney <jasonr@gnu.org>
14062
14063 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
14064 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
14065 (my_create_tip_window): New function.
14066 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
14067 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
14068
140692001-11-20 Jason Rumney <jasonr@gnu.org>
14070
14071 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
14072 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
14073
14074 * w32fns.c (Vw32_system_coding_system): Remove.
14075 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
14076
140772001-11-19 Stefan Monnier <monnier@cs.yale.edu>
14078
14079 * fileio.c (Fwrite_region): Move choose_write_coding_system to
14080 after build_annotations.
14081
14082 * syntax.c (describe_syntax): Add dummy arg.
14083 (describe_syntax_1): Update call to describe_vector.
14084
14085 * category.c (describe_category): Add dummy arg.
14086 (describe_category_1): Update call to describe_vector.
14087
14088 * keymap.c (Fdescribe_vector): Add `describer' parameter.
14089 (describe_command, describe_translation): Add dummy second param.
14090 (describe_map): Call elt_describer with two arguments.
14091 (describe_vector_princ): Add `fun' parameter.
14092 Call it instead of the hardcoded `princ'.
14093 (describe_vector): Add arg `args'.
14094 Pass it as a new second argument to elt_describer.
60a653f1 14095
048addec 14096 * keymap.h (describe_vector): Update prototype.
60a653f1 14097
048addec
JD
14098 * frame.c: Don't include keymap.h any more.
14099 (keys_of_frame): Remove.
60a653f1 14100
048addec 14101 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 14102
048addec 14103 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 14104
048addec 141052001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 14106
048addec
JD
14107 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
14108 if defined, 0 otherwise.
14109 (MAP_FAILED): Define if not defined and use it to test mmap failure.
14110 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 14111
048addec 141122001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 14113
048addec 14114 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 14115
048addec 141162001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 14117
048addec
JD
14118 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
14119 (x_draw_bar_cursor): If the background color of the glyph under
14120 the cursor equals the frame's cursor color, use the glyph's
14121 foreground color for drawing the bar cursor.
14122 (x_after_update_window_line): Clear internal border in different
14123 circumstances.
14124 (w32_set_vertical_scroll_bar): Check for width and height > 0.
14125 (w32_draw_relief_rect): Correct relief by 1 pixel.
14126 (x_set_glyph_string_background_width):
14127 Set extends_to_end_of_line_p if the row's fill_line_p is set and
14128 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
14129 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
14130 if cursor_in_non_selected_windows is false.
14131 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
14132 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
14133 Notice if cursor gets overwritten.
14134 (notice_overwritten_cursor): Renamed from
14135 note_overwritten_text_cursor. Rewritten to take glyph widths
14136 into account, and to take X positions as parameters.
14137 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
14138 around call to x_draw_glyphs.
14139 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
14140 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
14141 color to use for image glyph reliefs.
14142 (x_draw_image_relief): Accept zero tool_bar_button_relief.
14143 (glyph_rect): Remove unused variable `area'.
60a653f1 14144
048addec
JD
14145 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
14146 some items.
14147 (x_set_internal_border_width): Set frame garbaged when window
14148 doesn't exist yet.
14149 (Fx_create_frame): Accept zero tool_bar_button_relief.
14150 (x_clear_image_1, four_corners_best, image_background)
14151 (image_background_transparent): New functions.
14152 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
14153 (gs_format): Add `:background' entry.
14154 (lookup_image): Set IMG's background color if specified.
14155 (pbm_load, xbm_load_image, png_load): Set IMG's background field
14156 when appropriate.
14157 (x_clear_image_1): Reset `background_valid' and
14158 `background_transparent_valid' fields.
14159 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
14160 calculating it here. Set IMG's background_transparent field.
14161 (enum xpm_keyword_index): Add XPM_BACKGROUND.
14162 (enum png_keyword_index): Add PNG_BACKGROUND.
14163 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
14164 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
14165 (enum gif_keyword_index): Add GIF_BACKGROUND.
14166 (enum gs_keyword_index): Add GS_BACKGROUND.
14167 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
14168 Pre-calculate image background color where necessary.
14169 (x_create_x_image_and_pixmap, xbm_load, gs_load):
14170 Use display info's n_cbits entry for screen depth.
14171 (Fx_show_tip): Remove unused variables `buffer', `top',
14172 `left', `max_width' and `max_height'.
60a653f1 14173
048addec 14174 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 14175
048addec 141762001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 14177
048addec 14178 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 14179
048addec 141802001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 14181
048addec 14182 * frame.c (Fframe_live_p): Doc fix.
60a653f1 14183
048addec 141842001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 14185
048addec
JD
14186 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
14187 (message_dolog_marker3): New static variables hold three markers.
14188 (syms_of_xdisp): Initialize and staticpro them.
14189 (message_dolog): Use message_dolog_marker1..3 instead of
14190 allocating markers each time. Unchain them when done.
60a653f1 14191
048addec 141922001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 14193
048addec 14194 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 14195
048addec 141962001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 14197
048addec 14198 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 14199
048addec 142002001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 14201
048addec 14202 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 14203
048addec 142042001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 14205
048addec 14206 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 14207
048addec 142082001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 14209
048addec
JD
14210 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
14211 with invalid position.
60a653f1 14212
048addec 142132001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 14214
048addec 14215 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 14216
048addec
JD
14217 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
14218 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
14219 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 14220
048addec 14221 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 14222
048addec 142232001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14224
048addec
JD
14225 * fileio.c (build_annotations): Split off the tail.
14226 (build_annotations_2): New fun. Extracted from build_annotations.
14227 (Fwrite_region): Split the call to build_annotations into two
14228 calls to build_annotations and build_annotations_2.
077907d4 14229
048addec 142302001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 14231
048addec
JD
14232 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
14233 clear_waiting_for_input with argument.
1756e2fb 14234
048addec 14235 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 14236
048addec 14237 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 14238
048addec 14239 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 14240
048addec 14241 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 14242
048addec 142432001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 14244
048addec
JD
14245 * fileio.c (choose_write_coding_system): New fun, extracted
14246 from Fwrite_region.
14247 (Fwrite_region): Use it.
fa336b91 14248
048addec
JD
14249 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
14250 (funcall_lambda, run_hook_with_args): Make static and add prototype.
14251 (ml_apply, find_handler_clause): Add prototype.
fa336b91 14252
048addec 142532001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 14254
048addec 14255 * config.in: Add #undef HAVE_COFF_H.
fa336b91 14256
048addec
JD
14257 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
14258 Required for ISC 4.1.
fa336b91 14259
048addec 142602001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 14261
048addec
JD
14262 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
14263 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 14264
048addec 142652001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 14266
048addec
JD
14267 The following changes are made to clean up the various internal
14268 references to the fringes to actually use the term `fringe' for
14269 them. Previously, they were called `flags areas', `bitmap areas',
14270 `left/right side of windows', or implicitly as `flags' or
14271 `bitmaps':
fa336b91 14272
048addec 14273 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
f63fd14e 14274 Comments fixed. Use renamed symbols.
06e8f738 14275
f63fd14e 14276 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 14277
048addec
JD
14278 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
14279 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
14280 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 14281
048addec 14282 * msdos.c: Comment fix.
9ce647f4 14283
048addec 14284 * w32fns.c: Use renamed symbols.
9b784ab8 14285
f63fd14e 14286 * w32term.c: Comment fixes. Use renamed symbols.
048addec
JD
14287 (fringe_bitmap_type): Renamed from bitmap_type.
14288 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
14289 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
14290 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 14291
f63fd14e 14292 * w32term.h: Comment fixes. Use renamed symbols.
048addec
JD
14293 (fringes_extra): Renamed from flags_areas_extra.
14294 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
14295 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
14296 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
14297 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
14298 (FRAME_X_LEFT_FRINGE_WIDTH):
14299 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
14300 (FRAME_X_RIGHT_FRINGE_WIDTH):
14301 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 14302
048addec 14303 * widget.c: Use renamed symbols.
9f7e52b4 14304
f63fd14e 14305 * window.c: Comment fixes. Use renamed symbols.
048addec 14306 (coordinates-in-window-p): Doc fix.
fa336b91 14307
f63fd14e 14308 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 14309
048addec 14310 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 14311
048addec 14312 * xfns.c: Use renamed symbols.
89512fcd 14313
f63fd14e 14314 * xterm.c: Comment fixes. Use renamed symbols.
048addec
JD
14315 (fringe_bitmap_type): Renamed from bitmap_type.
14316 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
14317 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
14318 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 14319
f63fd14e 14320 * xterm.h: Comment fixes. Use renamed symbols.
048addec
JD
14321 (fringes_extra): Renamed from flags_areas_extra.
14322 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
14323 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
14324 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
14325 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
14326 (FRAME_X_LEFT_FRINGE_WIDTH):
14327 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
14328 (FRAME_X_RIGHT_FRINGE_WIDTH):
14329 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
14330
143312001-11-15 Jason Rumney <jasonr@gnu.org>
14332
14333 * w32menu.c (add-menu-item): Make help_echo and radio buttons
14334 work for most menu items. From David Ponce
14335 <david.ponce@wanadoo.fr>.
14336
143372001-11-15 Gerd Moellmann <gerd@gnu.org>
14338
14339 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
14340 Some x_set_* function expect to be called even if old and new
14341 value are equal.
14342
14343 * xdisp.c (build_desired_tool_bar_string): Accept zero
14344 tool_bar_button_relief.
14345
14346 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
14347
14348 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
14349
14350 * xterm.c (x_draw_bar_cursor): If the background color of the
14351 glyph under the cursor equals the frame's cursor color, use
14352 the glyph's foreground color for drawing the bar cursor.
14353
14354 * dispnew.c (direct_output_forward_char): Fix character/byte
14355 position comparison.
7d18891d 14356
048addec 143572001-11-15 Miles Bader <miles@gnu.org>
d2936d21 14358
048addec
JD
14359 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
14360 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
14361 Update arguments to find_field.
14362 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
14363 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
14364 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
14365 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 14366
048addec 143672001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 14368
048addec 14369 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 14370
048addec
JD
14371 * dispextern.h (image_background, image_background_transparent):
14372 Conditionalize on HAVE_X_WINDOWS.
7d18891d 14373
048addec 143742001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 14375
048addec 14376 * print.c (Fprin1_to_string): Doc fix.
7d18891d 14377
048addec 14378 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 14379
048addec 14380 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 14381
048addec 14382 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 14383
048addec 14384 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 14385
048addec 14386 * eval.c (syms_of_eval): Doc fix.
7d18891d 14387
048addec 14388 * coding.c (syms_of_coding): Doc fix.
7d18891d 14389
048addec 14390 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 14391
048addec 14392 * dispnew.c (syms_of_display): Doc fix.
9474c847 14393
048addec 14394 * category.c (Fget_unused_category): Doc fix.
9474c847 14395
048addec 14396 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 14397
048addec 143982001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 14399
048addec 14400 * print.c (prin1, print): Doc fix.
e3059a5d 14401
048addec 144022001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 14403
048addec
JD
14404 * fontset.h: Remove declarations of variables
14405 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 14406
048addec
JD
14407 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
14408 `Vclip_large_size_font'.
eae936e2 14409
048addec 144102001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 14411
048addec 14412 * w32fns.c: Doc fix.
ddb67bdc 14413
048addec 144142001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 14415
048addec 14416 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 14417
048addec 14418 * fns.c: Doc fix.
6e1b91d7 14419
048addec 14420 * emacs.c: Doc fix.
1c1d3d69 14421
048addec 14422 * coding.c: Doc fix.
1c1d3d69 14423
048addec
JD
14424 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
14425 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
14426 `new style' [w/`doc:' keyword].
b6f4c7ba 14427
048addec 144282001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 14429
048addec
JD
14430 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
14431 LeaveNotify events. Only FocusIn and FocusOut do that now.
14432 (x_display_and_set_cursor): Do display hollow cursors in active
14433 minibuffer windows when they are not selected.
b6f4c7ba 14434
048addec 144352001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 14436
048addec 14437 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
f63fd14e
JB
14438 * w32term.c: Change doc-string comments to `new style'
14439 [w/`doc:' keyword]. Doc fixes.
a89f435d 14440
048addec
JD
14441 * w32fns.c: Don't define max.
14442 (Fx_open_connection): Only execute once.
a4cd0cd7 14443
048addec 144442001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 14445
048addec
JD
14446 * ccl.c: Change macros to use do-while block instead of if-else.
14447 Use braces to follow GNU Coding Standards.
eafb659a 14448
048addec 144492001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 14450
048addec 14451 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 14452
048addec 14453 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 14454
048addec
JD
14455 * insdel.c (replace_range): Use adjust_markers_for_replace
14456 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 14457
048addec 14458 * intervals.h: Declare set_text_properties and set_text_properties_1.
a4cd0cd7 14459
048addec
JD
14460 * textprop.c (set_text_properties_1): New subroutine
14461 broken out of set_text_properties.
14462 (set_text_properties): Use set_text_properties_1.
91823618 14463
048addec
JD
14464 * intervals.c (graft_intervals_into_buffer):
14465 Use set_text_properties_1 to clear out properties.
91823618 14466
048addec
JD
14467 * search.c (Freplace_match): Use replace_range to insert
14468 and delete. Don't request property inheritance from
14469 surrounding text.
86928dfb 14470
048addec 144712001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 14472
048addec 14473 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
f63fd14e 14474 vertical fonts. Allow them if face name is explicitly specified.
048addec 14475 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 14476
048addec 144772001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 14478
048addec
JD
14479 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
14480 instead of malloc/free.
a78e0303 14481
048addec 144822001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 14483
048addec
JD
14484 * xfaces.c (merge_face_vectors): Use braces to follow GNU
14485 Coding Standards.
14486 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 14487
048addec 14488 * buffer.c (Fbury_buffer): Likewise.
0c99b139 14489
048addec 14490 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 14491
048addec
JD
14492 * coding.c (encode_coding): Use precomputed value of `src'.
14493 (encode_coding): Remove unused variable `src_end'.
14494 (code_convert_region): Remove unused variables `count'.
830ddd77 14495
048addec 144962001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 14497
048addec
JD
14498 * w32term.c (x_display_and_set_cursor): Do not move system caret
14499 if cursor_glyph is NULL.
55c6d645 14500
048addec 145012001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 14502
048addec 14503 * keymap.c (access_keymap): Fix compilation error.
5de38842 14504
048addec 145052001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 14506
048addec 14507 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 14508
048addec 145092001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 14510
048addec
JD
14511 * intervals.c (graft_intervals_into_buffer):
14512 Remove #ifdef'd-out code.
14513 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 14514
048addec
JD
14515 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
14516 code (eval-current-buffer).
14517 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 14518
048addec 145192001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 14520
048addec 14521 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 14522
048addec 145232001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 14524
048addec 14525 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 14526
048addec
JD
14527 * keyboard.c (make_lispy_event): Check integerness and fix
14528 Lisp_Object/int mixup.
17893c65 14529
048addec 145302001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 14531
048addec 14532 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 14533
048addec
JD
14534 * fontset.c (fontset_font_pattern): Remove unused variable
14535 `family_registry'.
d5360cc7 14536
048addec 14537 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 14538
048addec 145392001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 14540
048addec 14541 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 14542
048addec
JD
14543 * buffer.c (Fkill_buffer): Don't delete auto save file
14544 if buffer is modified.
d9d54213 14545
048addec 145462001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 14547
048addec
JD
14548 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
14549 CHECK_NUMBER_CDR.
b116830b 14550
048addec 145512001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 14552
048addec 14553 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 14554
048addec 145552001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 14556
048addec 14557 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 14558
048addec 145592001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 14560
048addec 14561 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 14562
048addec 145632001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 14564
048addec
JD
14565 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
14566 the program image directly.
982f6c7e 14567
048addec 145682001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 14569
048addec 14570 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 14571
048addec 145722001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 14573
048addec
JD
14574 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
14575 and CHECK_BUFFER.
d31053f9 14576
048addec
JD
14577 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
14578 (record_char): Likewise.
d31053f9 14579
048addec
JD
14580 * keyboard.c (make_lispy_event): Don't insist a drag event must
14581 move to a different buffer position. Instead, check for moving at
14582 least double_click_fuzz.
982f6c7e 14583
048addec 14584 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 14585
048addec 14586 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 14587
048addec
JD
14588 * indent.c (current_column_1, Fmove_to_column): Separate the code
14589 for display-table glyphs from the code for buffer text, to fix
14590 bugs in the former.
830047fd 14591
048addec 145922001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 14593
048addec
JD
14594 * buffer.c (Fbuffer_local_value): New function.
14595 (syms_of_buffer): Defsubr it.
2df5238c 14596
048addec
JD
14597 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
14598 value of `cursor-in-non-selected-windows'.
4e397688 14599
048addec
JD
14600 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
14601 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
14602 (syms_of_xdisp): Initialize it.
48b0f3ae 14603
048addec 146042001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 14605
048addec 14606 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 14607
048addec
JD
14608 * coding.c: Change doc-string comments to `new style' [w/`doc:'
14609 keyword].
3ecaf7e5 14610
048addec
JD
14611 * eval.c (top_level_value, top_level_set): Remove commented and
14612 #ifdef'd-out code.
14613 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 14614
048addec 146152001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 14616
048addec 14617 * xfns.c: Include unistd.h, if it exists.
8db2e33b 14618
048addec 14619 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 14620
048addec 14621 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 14622
048addec 146232001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 14624
048addec
JD
14625 * lisp.h (CHECK_STRING_CAR): New macro.
14626 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
14627 treating XCAR and XCDR as lvalues.
14628 (openp): Use CHECK_STRING_CAR.
14629 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 14630
048addec 146312001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 14632
048addec
JD
14633 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
14634 (SIGMASKTYPE): Define.
1b1acc13 14635
048addec 14636 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 14637
048addec 146382001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 14639
048addec
JD
14640 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
14641 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
14642 Fix typos in comments.
6cb16f95 14643
048addec
JD
14644 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
14645 and #ifdef'd-out code.
14646 Fix and reindent comments.
6cb16f95 14647
048addec 14648 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 14649
048addec
JD
14650 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
14651 argument `i' in macros.
6cb16f95 14652
048addec
JD
14653 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
14654 `i' in macros.
7e9d3c2f 14655
048addec
JD
14656 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
14657 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
14658 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
14659 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
14660 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
14661 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
14662 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
14663 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
14664 in macros.
7e9d3c2f 14665
048addec
JD
14666 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
14667 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
14668 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
14669 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
14670 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
14671 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
14672 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
14673 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
14674 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
14675 (remove unused second argument).
7e9d3c2f 14676
048addec 146772001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 14678
048addec
JD
14679 * syntax.c (describe_syntax): New wrapper.
14680 (Finternal_describe_syntax_value): Rename from describe_syntax.
14681 Don't insert space at front and \n at the end.
14682 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 14683
048addec
JD
14684 * regex.c (re_wctype): Try to fix some warnings.
14685 (regcomp, regexec): Don't forget the __restrict.
9ba48103 14686
048addec 146872001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 14688
048addec 14689 * textprop.c (Fget_char_property): Doc fix.
9ba48103 14690
048addec 146912001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 14692
048addec 14693 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 14694
048addec 14695 * data.c (Fsetq_default): Ditto.
c22e59e1 14696
048addec 14697 * callint.c (Finteractive): Ditto.
9271ed2c 14698
048addec 146992001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 14700
048addec
JD
14701 * macros.c: Don't include keymap.h any more.
14702
147032001-11-01 Richard M. Stallman <rms@gnu.org>
14704
14705 * data.c (Fmake_local_variable): Doc fix.
14706
14707 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
14708 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 14709
048addec 14710 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
14711 bindings along with or instead of the buffer local map.
14712 Make the overriding maps override what they should.
14713
f00691a3 147142001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
14715
14716 * window.c (grow_mini_window): Fix typo in comment.
14717
27188d11
GM
147182001-11-01 Gerd Moellmann <gerd@gnu.org>
14719
7b49b9d2
GM
14720 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
14721 (XTset_vertical_scroll_bar): Likewise.
14722
43f7c3ea
GM
14723 * xfns.c (x_build_heuristic_mask): Use four_corners_best
14724 instead of IMAGE_BACKGROUND.
c22e59e1 14725
b350c2e5
GM
14726 * xfns.c (four_corners_best): Reindent.
14727
c22e59e1 14728 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
14729 Handle :box so that it is possible to specify sexprs.
14730
bf00d461
EZ
147312001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
14732
14733 * s/hpux11.h: New file.
14734
f00691a3 147352001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 14736
2b209b97
PJ
14737 * emacs.c (USAGE1): Show command line option --no-window-system
14738 instead of --no-windows in usage.
14739 (standard_args): Rename --no-windows to --no-window-system.
14740 (bug_reporting_address): Follow Emacs coding conventions.
14741
9dbc9081
PJ
14742 * eval.c (Fcommandp): Doc fix.
14743 Change doc-string comments to `new style' [w/`doc:' keyword].
14744
4e10df59
PJ
14745 * frame.c (Fframe_live_p): Doc fix.
14746
14747 * buffer.c (selective-display-ellipses): Doc fix.
14748
dd387b25
GM
147492001-10-31 Gerd Moellmann <gerd@gnu.org>
14750
fe957e65
GM
14751 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
14752
dd387b25
GM
14753 * xfaces.c (realize_x_face): If C is not a single-byte character,
14754 set the face's colors_copied_bitwise_p instead of the defaulted_p
14755 members which have a different meaning.
14756 (free_face_colors): Do nothing for a face whose colors have been
14757 copied bitwise.
14758
c22e59e1 14759 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 14760
f00691a3 147612001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 14762
687784e8
PJ
14763 * marker.c, mocklisp.c: Change doc-string comments to `new style'
14764 [w/`doc:' keyword].
2e1280f8 14765
b9d9a9b9
GM
147662001-10-31 Gerd Moellmann <gerd@gnu.org>
14767
14768 * fns.c (require_unwind): Return Lisp_Object.
14769
f00691a3 147702001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 14771
fa1361cb
PJ
14772 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
14773 (last-input-char): Revert doc-string to be the same as the
14774 doc-string of `last-input-event'.
14775
6c465a15 14776 * xdisp.c: Fix typos in comments.
48400103 14777
eafa3196
GM
147782001-10-31 Gerd Moellmann <gerd@gnu.org>
14779
14780 * window.c (grow_mini_window): Handle case that the root
14781 window is already smaller than the nominal mininum height.
14782
747d3f2a
SM
147832001-10-30 Stefan Monnier <monnier@cs.yale.edu>
14784
bf9bb76f
SM
14785 * emacs.c (main): Don't call keys_of_macros any more.
14786
14787 * lisp.h (keys_of_macros): Remove.
14788
14789 * macros.c (keys_of_macros): Remove.
14790
747d3f2a
SM
14791 * xfaces.c (Fface_attribute_relative_p): Declare args.
14792
5e905a57
JR
147932001-10-30 Jason Rumney <jasonr@gnu.org>
14794
14795 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
14796 (enum_font_cb2): Ignore fonts with vertical orientation.
14797
3a426197
RS
147982001-10-30 Richard M. Stallman <rms@gnu.org>
14799
14800 * keyboard.c (Finput_pending_p): Doc fix.
14801
a742d646
GM
148022001-10-30 Gerd Moellmann <gerd@gnu.org>
14803
259cf6bc
GM
14804 * xterm.c (x_after_update_window_line): Don't run the code
14805 clearing in borders for rows whose visible height is 0.
14806
3f99f948
GM
14807 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
14808 resized_p flag is set. If not set, use the much less flickering
14809 method previously used.
14810
14811 * dispnew.c (change_frame_size_1): Set frame's resized_p.
14812
14813 * frame.h (struct frame) <resized_p>: New member.
14814
b4a3be43
GM
14815 * lread.c (to_multibyte): Ensure read_buffer is at least twice
14816 as large as the number of bytes to convert.
747d3f2a 14817
a742d646
GM
14818 * lread.c (to_multibyte): New function.
14819 (read1): Use it.
14820
cacbb9e9
EZ
148212001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
14822
14823 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
14824
99cb6b2f
GM
148252001-10-30 Gerd Moellmann <gerd@gnu.org>
14826
327f42ee 14827 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
14828 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
14829 if the row's fill_line_p is set and drawing the last glyph with
14830 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 14831
99cb6b2f
GM
14832 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
14833
8e8223e2
SM
148342001-10-29 Stefan Monnier <monnier@cs.yale.edu>
14835
14836 * xmenu.c: Include coding.h and charset.h.
14837 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
14838 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
14839 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
14840 Explicitly set wv->help. Use `TRUE' rather than `True'.
14841 (menu_help_callback): Use empty_string.
14842
14843 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
14844 (Fx_popup_dialog): Explicitly init f.
14845 (w32_menu_display_help): Use empty_string.
14846
4d083a8f
RS
148472001-10-29 Richard M. Stallman <rms@gnu.org>
14848
b2304472
RS
14849 * fns.c (Frequire): Detect recursive try to require the same
14850 feature 3 or more levels deep, and get error.
14851 (require_unwind): New subroutine.
14852 (require_nesting_list): New variable.
14853 (syms_of_fns): Init and staticpro it.
14854
4d083a8f
RS
14855 * print.c (print_object): Clarify indication of insertion type.
14856
2fe41216
EZ
148572001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
14858
90480000
EZ
14859 * coding.c (syms_of_coding): Document that locale-coding-system is
14860 used for decoding input on X.
14861
2fe41216
EZ
14862 * window.c (Fscroll_left, Fscroll_right): Doc fix.
14863
f00691a3 148642001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
14865
14866 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
14867 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
14868
60ebcfe8
GM
148692001-10-29 Gerd Moellmann <gerd@gnu.org>
14870
9a7bdceb
GM
14871 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
14872 use NO_CURSOR if cursor_in_non_selected_windows is false.
14873
3f08fcd2
GM
14874 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
14875 the slant attribute if FRAME is t.
14876
0ccfdad2
GM
14877 * xfns.c (x_set_internal_border_width): Set frame garbaged
14878 when X window doesn't exist yet.
14879
ef253080
GM
14880 * xterm.c (x_after_update_window_line): Clear internal border
14881 in different circumstances.
b116830b 14882
60ebcfe8
GM
14883 * xterm.c (XTread_socket) <KeyPress>: Don't use
14884 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
14885 <handa@etl.go.jp>.
14886
73d25f9c
EZ
148872001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
14888
14889 * m/ibms390.h: New file. From Adam Thornton
14890 <athornton@sinenomine.net>.
14891
cac1daf0
GM
148922001-10-28 Gerd Moellmann <gerd@gnu.org>
14893
053b3256 14894 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 14895
cac1daf0
GM
14896 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
14897 a loop counter.
14898
f00691a3 148992001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 14900
f9711de4 14901 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
186486eb 14902
4707d2d0
PJ
14903 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
14904 keyword].
14905 Fix typos in comments.
b116830b 14906
d883731c
PJ
14907 * emacs.c (bug_reporting_address): New function.
14908 Use it when displaying usage message.
14909
04012254
PJ
14910 * minibuf.c (read_minibuf): Remove unused external declaration of
14911 variable `Qread_only'.
14912
13b1a09c
PJ
14913 * keymap.c (access_keymap): Remove unused variable `charset'.
14914
5bbf4378
MB
149152001-10-28 Miles Bader <miles@gnu.org>
14916
14917 * xfaces.c (merge_face_heights): Handle TO being relative as well.
14918 Remove #ifdef'd-out code.
14919 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
14920 (syms_of_xfaces): Initialize them.
14921
1ce1e4ee
JR
149222001-10-27 Jason Rumney <jasonr@gnu.org>
14923
14924 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
14925 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
14926 position using the system caret.
14927
14928 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
14929 (w32_system_caret_height, w32_system_caret_x)
14930 (w32_system_caret_y): New variables for tracking system caret.
14931 (w32_initialize): Initialize them.
c2d53558 14932 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 14933
c2d53558
SM
14934 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
14935 New messages types.
1ce1e4ee
JR
14936
14937 * w32term.c (note_mouse_highlight): Clear old help_echo.
14938
f00691a3 149392001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 14940
bb4600a4
PJ
14941 * xterm.c: Fix typo in a comment.
14942
7db35a48
PJ
14943 * emacs.c: Fix typos in comments.
14944 Remove unnecessary spaces.
14945 Change doc-string comments to `new style' [w/`doc:' keyword].
14946 (USAGE2): Fix typos in usage string.
14947
a7248e4f
PJ
14948 * xterm.c: Fix typo in a comment.
14949
4e30ce42
PJ
14950 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
14951 emacs.c.
14952
62725a92
GM
149532001-10-27 Gerd Moellmann <gerd@gnu.org>
14954
798dbe1f 14955 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 14956 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
14957 farther backward when target_y was not reached.
14958
62725a92
GM
14959 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
14960 Display errno only if non-zero.
14961 (sound_warning): New function.
14962 (vox_configure): Don't treat failing to set sample rate as error.
14963 (various places): Improve error messages.
14964
d4e34d24
EZ
149652001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
14966
944e6f60
EZ
14967 * fileio.c (Faccess_file): Run the argument filename through
14968 Fexpand_file_name, before using it.
14969
d4e34d24
EZ
14970 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
14971 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
14972
38d2af0c
GM
149732001-10-26 Gerd Moellmann <gerd@gnu.org>
14974
da80a8d5
GM
14975 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
14976
38d2af0c
GM
14977 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
14978 Fix clearing in the case of scroll bars on the right.
c2d53558 14979
45de4a6f 149802001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
14981
14982 * w32gui.h (XImage): Add a dummy typedef.
14983
fbd5ceb2
GM
149842001-10-26 Gerd Moellmann <gerd@gnu.org>
14985
c2d53558 14986 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 14987
b23236fb
EZ
149882001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
14989
14990 * frame.c (Fframe_parameter): Fix last change.
14991
5d991fc4
EZ
14992 * fileio.c: Revert last change (which removed old commented-out
14993 version of expand-file-name). Add a comment that explains why
14994 this old version should not be removed.
14995
879eadc3
GM
149962001-10-25 Gerd Moellmann <gerd@gnu.org>
14997
75700ff2
GM
14998 * frame.c (Fframe_parameter): Fix a bug whereby some
14999 ``artificial'' frame parameters, like `minibuffer' were not
15000 obtained by calling Fframe_parameters.
15001
dfe92a6a
GM
15002 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
15003 cursor differently.
15004
879eadc3
GM
15005 * xdisp.c (move_it_vertically_backward): Compute line height
15006 differently. Add heuristic to try to be more compatible to 20.x.
15007
e1010ebe
SM
150082001-10-25 Stefan Monnier <monnier@cs.yale.edu>
15009
d73a471b
SM
15010 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
15011
d6da5a06
GM
15012 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
15013 boolean.
e1010ebe 15014
f66bd220
MB
150152001-10-25 Miles Bader <miles@gnu.org>
15016
15017 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
15018 BG is a pointer to a structure, not a structure.
15019 (gif_format, png_format): Add missing commas.
15020
d436d538
RS
150212001-10-24 Richard M. Stallman <rms@gnu.org>
15022
15023 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 15024 (syms_of_xfaces): Defsubr it.
d436d538 15025
f00691a3 150262001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
15027
15028 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
15029 variable `area'.
15030
f00691a3 150312001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 15032
c2d53558 15033 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 15034
e2a57b34
MB
150352001-10-25 Miles Bader <miles@gnu.org>
15036
15037 * dispextern.h (struct image): Add `background',
15038 `background_valid', and `background_transparent' fields.
15039 (image_background, image_background_transparent): New declarations.
15040 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
15041 * xfns.c (image_background, image_background_transparent)
15042 (four_corners_best): New functions.
c2d53558 15043 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
15044 (gs_format): Add `:background' entry.
15045 (lookup_image): Set IMG's background color if specified.
15046 (pbm_load, xbm_load_image, png_load): Set IMG's background field
15047 when appropriate.
15048 (x_clear_image_1): Reset `background_valid' and
15049 `background_transparent_valid' fields.
15050 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
15051 calculating it here. Set IMG's background_transparent field.
15052 (enum xpm_keyword_index): Add XPM_BACKGROUND.
15053 (enum png_keyword_index): Add PNG_BACKGROUND.
15054 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
15055 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
15056 (enum gif_keyword_index): Add GIF_BACKGROUND.
15057 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 15058 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
15059 Pre-calculate image background color where necessary.
15060 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
15061 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
15062 color to use for image glyph reliefs.
15063
b547b6e8
GM
150642001-10-24 Gerd Moellmann <gerd@gnu.org>
15065
d9e3b8c6
GM
15066 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
15067 in full-width rows.
c2d53558 15068
b547b6e8
GM
15069 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
15070 Fix clearing of area not covered by scroll bar.
15071
f00691a3 150722001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
15073
15074 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
15075 and `real_start'.
c2d53558 15076 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
15077 (glyph_rect): Remove unused variable `area'.
15078
76cb5e06
GM
150792001-10-24 Gerd Moellmann <gerd@gnu.org>
15080
bdbdebff 15081 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
15082
15083 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
15084 (row_containing_pos): Take additional argument DY.
15085 Treat rows ending in middle of char differently.
62e33982
GM
15086 (display_line): Handle tabs on window systems differently.
15087
15088 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
15089 with additional argument.
15090
15091 * dispextern.h (row_containing_pos): Adjust prototype.
15092
76cb5e06
GM
15093 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
15094 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
15095 (try_window_id, try_window_reusing_current_matrix)
15096 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 15097 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 15098
f00691a3 150992001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 15100
c9e60620
PJ
15101 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
15102 gnuemacs).
15103 (HAVE_BOXES): Fix typo in comment.
15104 (push_menu_pane): Fix typo in comment.
15105
3b552d56
PJ
15106 * xdisp.c: (display_prop_string_p): Remove unused local declaration
15107 of `Qwhen'.
15108 (single_display_prop_string_p): Remove unused local declarations
15109 of `Qwhen' and `Qmargin'.
15110 (string_buffer_position): Remove unused variable `around'.
15111 (store_frame_title): Remove unused variable `width'.
15112
15c565ac
PJ
15113 * window.c: Don't define max.
15114 (coordinates_in_window): Remove unused variable `uy'.
15115
a8818eb9
PJ
15116 * widget.c: Don't define max.
15117
996fee11
PJ
15118 * process.c: Don't define max.
15119 (create_process): Remove unused variable `buffer'.
15120
496e1a5b
GM
151212001-10-23 Gerd Moellmann <gerd@gnu.org>
15122
c2d53558 15123 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 15124
5905ae8b
EZ
151252001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
15126
15127 * xfaces.c (Finternal_set_lisp_face_attribute)
15128 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
15129 frame is on a windowed display.
15130
24db49fb
GM
151312001-10-23 Gerd Moellmann <gerd@gnu.org>
15132
c2d53558
SM
15133 * dispnew.c (sync_window_with_frame_matrix_rows):
15134 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
15135 of marginal areas.
15136
c2d53558 15137 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 15138
f0487f05
EZ
151392001-10-23 Andreas Schwab <schwab@suse.de>
15140
15141 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
15142 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
15143
f0a48a01
GM
151442001-10-23 Gerd Moellmann <gerd@gnu.org>
15145
c2d53558 15146 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
15147 REAL_END. Notice if cursor gets overwritten.
15148 (notice_overwritten_cursor): Take X positions as parameters.
15149 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
15150 around call to x_draw_glyphs.
15151
f00691a3 151522001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 15153
fc11dff0
PJ
15154 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
15155 instead of C) and usage.
a50a10a0 15156
fc11dff0
PJ
15157 * editfns.c (char-to-string): Fix argument names (use CHAR instead
15158 of C) and usage.
a50a10a0
PJ
15159
15160 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
15161 `left', `max_width' and `max_height'.
15162
8738febd
GM
151632001-10-23 Gerd Moellmann <gerd@gnu.org>
15164
15165 * xdisp.c (display_line): For a tab continued to the next line,
15166 set row's ends_in_middle_of_char_p.
15167
653c329b
GM
151682001-10-22 Gerd Moellmann <gerd@gnu.org>
15169
15170 * xdisp.c (display_line): Fix computation of continuation lines
15171 width for TABs.
15172
f00691a3 151732001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 15174
7ba51063
PJ
15175 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
15176 `Qlaplace'.
15177
f958c5ac
PJ
15178 * fileio.c: Remove unused code.
15179
eb360291
MB
151802001-10-22 Miles Bader <miles@gnu.org>
15181
15182 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
15183 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
15184 Remove `DOC_STRINGS_IN_COMMENTS' cases.
15185
98515cf0
JR
151862001-10-21 Jason Rumney <jasonr@gnu.org>
15187
15188 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
15189
93026d88
EZ
151902001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
15191
15192 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
15193 (Finsert_string): Avoid the multi-line string literals warning.
15194
c9a95b79
MB
151952001-10-22 Miles Bader <miles@gnu.org>
15196
15197 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
15198 (Fdocumentation): Don't use it.
15199 (syms_of_doc): Don't initialize it.
15200
15201 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
15202 * print.c (Fwith_output_to_temp_buffer): Likewise.
15203 * window.c (Fsave_window_excursion): Likewise.
c2d53558 15204 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 15205 (Fsave_restriction): Likewise.
c2d53558
SM
15206 * eval.c (Frun_hooks, Frun_hook_with_args)
15207 (Frun_hook_with_args_until_failure)
15208 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
15209 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
15210 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
15211 (Funwind_protect, Fcondition_case): Likewise.
15212 * coding.c (Ffind_operation_coding_system): Likewise.
15213 * keyboard.c (Ftrack_mouse): Likewise.
15214
a3b10252
MB
152152001-10-21 Miles Bader <miles@gnu.org>
15216
c2d53558 15217 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
15218 (Fmake_hash_table): Add usage: string to doc string.
15219 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 15220 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
15221 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
15222 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
15223 (Fml_prefix_argument_loop): Likewise.
15224
f00691a3 152252001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 15226
c2d53558 15227 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 15228
c6f73eec
PJ
15229 * sysdep.c (init_sys_modes): Change doc-string comments to `new
15230 style' [w/`doc:' keyword].
15231
15232 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
15233 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
15234 comments to `new style' [w/`doc:' keyword].
15235
3cf3436e
JR
152362001-10-21 Jason Rumney <jasonr@gnu.org>
15237
15238 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
15239
c169b8f1
JR
15240 * w32term.c (remember_mouse_glyph): New function.
15241 (w32_mouse_position): Use it.
15242 (note_mouse_movement): If the mouse moved off the glyph, remember
15243 its new position.
c2d53558 15244
4fdd691b
JR
15245 * w32term.h (struct w32_output): Correct spelling of x_compatible.
15246 (w32_display_info): Add mouse_face_overlay.
15247
c169b8f1
JR
15248 * w32term.c (notice_overwritten_cursor): Renamed from
15249 note_overwritten_text_cursor. Rewritten to take glyph widths into
15250 account.
15251 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
15252 (fast_find_string_pos): New function.
15253 (fast_find_position): Return the correct vpos. Add parameter
15254 STOP. In the final row, stop before glyphs having STOP as object.
15255 Don't consider glyphs that are not from a buffer.
15256 (fast_find_position) [0]: Add a presumably more correct version
15257 for after 21.1.
15258 (expose_window_tree, expose_frame): Don't compute intersections here.
15259 (expose_window): Do it here instead.
15260 (expose_window_tree, expose_window, expose_line): Return 1 when
15261 overwriting mouse-face.
15262 (expose_window): If W is the window currently being updated, mark
15263 the frame garbaged.
15264 (expose_frame): If mouse-face was overwritten, redo it.
15265 (x_use_underline_position_properties): New variable.
15266 (syms_of_xterm): DEFVAR_BOOL it.
15267 (x_draw_glyph_string): Add comment to use it in future.
15268 (x_draw_glyph_string): Restore clipping after drawing box.
15269 Fix a computation of the underline position.
15270 (w32_get_glyph_string_clip_rect): Minor cleanup.
15271 (x_fill_stretch_glyph_string): Remove an assertion.
15272 (x_produce_glyphs): Don't convert multibyte characters
15273 to unibyte characters in unibyte buffers.
15274 (cursor_in_mouse_face_p): New function.
15275 (x_draw_stretch_glyph_string): Use it to choose a different GC
15276 when drawing a cursor within highlighted text. Don't draw
15277 background again if it has already been drawn.
15278 (x_draw_glyph_string_box): Don't draw a full-width
15279 box just because the glyph row's full_width_p flag is set.
15280 (x_draw_glyphs): Fix computation of rightmost x for
15281 full-width rows.
15282 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
15283 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
f63fd14e 15284 change bottom shadow accordingly. Some cleanup.
c169b8f1
JR
15285 (x_update_window_end): Handle overwritten mouse face
15286 also for tool bar windows.
15287 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
15288 DRAW is DRAW_IMAGE_RAISED.
15289 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
15290 actually redrawn. Make the function static.
15291 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
15292 optimize away highlighting if we pass over that same overlay again.
15293 (note_mouse_highlight): Call mouse_face_overlay_overlaps
15294 to detect a case where we have to highlight a different region
15295 despite not having left the currently highlighted region.
15296 Set mouse_face_overlay in the x_display_info. Avoid changing the
15297 mouse pointer shape when show_mouse_face has already done it, or
15298 there is no need. Handle mouse-face and help-echo in strings.
15299 (glyph_rect): New function.
15300 (w32_mouse_position): Use it to raise the threshold for mouse
15301 movement event generation.
15302 (w32_initialize_display_info): Initialize the x_display_info's
15303 mouse_face_overlay.
15304 (w32_set_vertical_scroll_bar): Don't clear a zero height
15305 or width area.
15306 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
15307 a widget to zero height.
15308
3cf3436e 15309 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 15310 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
15311 equivalents in menu_items.
15312 (w32_menu_show): Don't overwrite an item's name with its key
15313 description in case the description is a multibyte string.
15314 (single_submenu): Some cleanup.
15315
15316 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
15317 (postprocess_image): New function.
15318 (lookup_image): Call it for all image types except PostScript.
15319 (x_kill_gs_process): Call postprocess_image.
15320 (tiff_error_handler, tiff_warning_handler): New functions.
15321 (tiff_load): Install them as handlers.
15322 (x_kill_gs_process): Recognize if someone has cleared the image
15323 cache under us.
15324 (valid_image_p): Protect better against invalid image
15325 specifications. Previous code could signal an error.
15326 (Fx_hide_tip, Fshow_tip): Doc fix.
15327 (Fv_max_tooltip_size): New variable.
15328 (syns_of_xfns): DEFVAR_LISP it.
15329 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
f63fd14e 15330 window buffer to *tip* right after creating the frame. Set frame's
3cf3436e
JR
15331 window_width. Use a maximum tooltip size specified by
15332 Vx_max_tooltip_size, if that has valid contents.
15333 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
15334 Make sure the tooltip is completely visible.
15335 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
15336 (Fx_create_frame): Adjust the frame's height for presence
15337 of the tool bar before calling x_figure_window_size.
15338 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
15339 when the window gets smaller.
15340 (x_set_foreground_color): Set frame's cursor_pixel.
15341 (x_set_foreground_color, x_set_background_color): Cleaned up.
15342 (x_set_font): Handle case of x_new_fontset returning the same name
15343 as before, although there was a change in fontsets.
15344
386ca361
MB
153452001-10-21 Miles Bader <miles@gnu.org>
15346
c2d53558 15347 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
15348 (Flogxor): Add usage: string to doc string.
15349 * charset.c (Fstring): Likewise.
15350 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
15351 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
15352
f00691a3 153532001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 15354
03be2694
PJ
15355 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
15356
15357 * alloc.c: Reindent DEFUNs with doc: keywords.
15358
15359 * abbrev.c (Finsert_abbrev_table_description): Reindent.
15360
14ff1ee0
PJ
15361 * frame.c: Change doc-string comments to `new style' [w/`doc:'
15362 keyword].
15363
2f147815 15364See ChangeLog.9 for earlier changes.
6922b018
KH
15365
15366;; Local Variables:
49b3bd82 15367;; coding: iso-2022-7bit
6922b018 15368;; End:
2a34a036 15369
2f147815 15370 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
15371 Copying and distribution of this file, with or without modification,
15372 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
15373
15374;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4