* fileio.c (barf_or_query_if_file_exists): Use lstat.
[bpt/emacs.git] / src / ChangeLog
1 2004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2
3 * fileio.c (barf_or_query_if_file_exists): Use lstat.
4 (Frename_file): Handle renaming of symlinks across file systems.
5
6 2004-05-04 Kim F. Storm <storm@cua.dk>
7
8 * xdisp.c (Qtotal): New var.
9 (syms_of_xdisp): Intern and staticpro it.
10 (calc_line_height_property): New arg total. Set it if
11 line-spacing property has format (total . VALUE).
12 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
13 Handle total line-spacing property.
14
15 2004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16
17 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
18 "under" scroll bar when size/position changes.
19
20 2004-05-03 Jason Rumney <jasonr@gnu.org>
21
22 * makefile.nt: Remove.
23
24 2004-05-02 Eli Zaretskii <eliz@gnu.org>
25
26 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT): Avoid
27 compiler warnings.
28
29 * Makefile.in (region-cache.o): Depend on config.h.
30
31 2004-05-02 Romain Francoise <romain@orebokech.com> (tiny change)
32
33 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
34 with continuation lines, too.
35
36 2004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
37
38 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
39
40 2004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
41
42 * xdisp.c (calc_line_height_property): YAILOM (yet another
43 int/Lisp_Object mixup).
44
45 2004-05-01 Eli Zaretskii <eliz@gnu.org>
46
47 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
48 undo bad effect of pack(4) in some versions of system headers.
49
50 2004-05-01 Jason Rumney <jasonr@gnu.org>
51
52 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
53
54 2004-04-30 Kim F. Storm <storm@cua.dk>
55
56 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
57 (syms_of_buffer) <cursor-type>: Doc fix.
58
59 * dispextern.h (struct it): Remove member use_default_face.
60 Add members override_ascent, override_descent, override_boff.
61
62 * xdisp.c (init_iterator): Handle line-spacing float value.
63 Initialize override_ascent member.
64 (append_space_for_newline): Reset override_ascent.
65 Remove use_default_face.
66 (calc_line_height_property): New function to calculate value of
67 line-height and line-spacing properties. Look at overlays, too.
68 Set override_ascent, override_descent, override_boff members when
69 using another face than the current face. Float values are now
70 relative to the frame default font, by default; accept a cons
71 of ratio and face name to specify value relative to a specific face.
72 (x_produce_glyphs): Use calc_line_height_property.
73 Use override_ascent etc. when set to handle different face heights.
74 A negative line-spacing property value is interpreted as a total
75 line height, rather than inter-line spacing.
76 (note_mouse_highlight): Allocate room for 40 overlays initially.
77
78 2004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
79
80 * data.c (Fsubr_name): New fun.
81 (syms_of_data): Defsubr it.
82
83 2004-04-29 Kim F. Storm <storm@cua.dk>
84
85 * xdisp.c (null_glyph_slice): New var.
86 (append_glyph, append_composite_glyph, append_stretch_glyph):
87 Use it to initialize glyph slice.
88
89 2004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
90
91 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
92 (on_hot_spot_p): Make sure we always return a value.
93 (Flookup_image_map): Remove unused var ix and iy.
94 (note_mode_line_or_margin_highlight): Remove unused var `image'.
95
96 2004-04-27 Eli Zaretskii <eliz@gnu.org>
97
98 * msdos.c (init_environment): If one of the TMP... environment
99 variables is set to a drive letter without a trailing slash,
100 append a slash.
101
102 2004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
103
104 * editfns.c (lisp_time_argument): Provide externally.
105
106 * fileio.c (Fset_file_times): New function.
107 (syms_of_fileio): Intern and staticpro it.
108
109 2004-04-27 Kim F. Storm <storm@cua.dk>
110
111 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
112 header line strings.
113
114 * dispextern.h (struct it): New member use_default_face.
115
116 * xdisp.c (Qline_height): New variable.
117 (syms_of_xdisp): Intern and staticpro it.
118 (append_space_for_newline): Partially undo 2004-04-25 change;
119 add default_face_p arg, and restore callers.
120 Clear it->use_default_face after use.
121 (x_produce_glyphs): Set default font for ascii char if
122 it->use_default_font is set. Change line-spacing property to set
123 just extra line spacing. Handle new line-height property.
124
125 2004-04-26 Andreas Schwab <schwab@suse.de>
126
127 * print.c (print_object): Print non-ascii characters in bool
128 vector representation as octal escapes.
129
130 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
131 * print.c (print_object): Use it instead of BITS_PER_CHAR for
132 bool vectors.
133 * lread.c (read1): Likewise.
134 * alloc.c (Fmake_bool_vector): Likewise.
135 * data.c (Faref, Faset): Likewise.
136 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
137 (mapcar1): Likewise.
138
139 2004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
140
141 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
142
143 2004-04-26 Miles Bader <miles@gnu.org>
144
145 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
146
147 2004-04-26 Juanma Barranquero <lektu@terra.es>
148
149 * buffer.c (Fpop_to_buffer): Fix docstring.
150
151 2004-04-26 Steven Tamm <steventamm@mac.com>
152
153 * lread.c (init_lread): Don't display missing lisp directory
154 warnings with Carbon Emacs because self-contained bundled Emacs
155 may be built without correct installation path.
156
157 2004-04-25 Kim F. Storm <storm@cua.dk>
158
159 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
160
161 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
162
163 * xdisp.c (append_space_for_newline): Rename from append_space.
164 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
165 (x_produce_glyphs): Handle line-spacing property on newline char.
166 If value is t, adjust ascent and descent to fit current row height.
167 If value is an integer or float, set extra_line_spacing to integer
168 value, or to float value x current line height.
169
170 2004-04-23 Kenichi Handa <handa@m17n.org>
171
172 * fontset.c (Finternal_char_font): If POSITION is nil, return
173 font for displaying CH with the default face.
174
175 2004-04-23 Juanma Barranquero <lektu@terra.es>
176
177 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
178
179 2004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
180
181 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
182 Don't make assumptions about the relative place of i and val.
183 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
184
185 2004-04-21 Kim F. Storm <storm@cua.dk>
186
187 * dispextern.h (struct glyph_slice): New struct.
188 (struct glyph): New member slice.
189 (GLYPH_SLICE_EQUAL_P): New macro.
190 (GLYPH_EQUAL_P): Use it.
191 (struct glyph_string): New member slice.
192 (struct it_slice): New struct.
193 (struct it): New member slice, add member to stack too.
194 New member constrain_row_ascent_descent_p.
195 (image_ascent): Add prototype.
196
197 * dispnew.c (buffer_posn_from_coords): Return full image width
198 and height even for image slices (posn is relative to full image).
199 (marginal_area_string): Adjust x0,y0 for image slice.
200
201 * image.c (image_ascent): Add slice arg; calculate ascent for
202 image slice (or full image).
203
204 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
205 (syms_of_keyboard): Defsubr them.
206
207 * lisp.h (pos_visible_p): Fix prototype.
208
209 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
210 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
211 (x_draw_image_foreground, x_draw_image_relief)
212 (x_draw_image_foreground_1, x_draw_image_glyph_string):
213 Draw sliced images.
214
215 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
216 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
217 (x_draw_image_foreground, x_draw_image_relief)
218 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
219 Draw sliced images.
220
221 * w32term.h (image_ascent): Remove prototype.
222
223 * window.c (Fpos_visible_in_window_p): Return pixel position if
224 PARTIALLY arg is non-nil. Simplify. Doc fix.
225 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
226 to return/set vscroll in pixels.
227
228 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
229
230 * xdisp.c (Qslice): New variable.
231 (syms_of_xdisp): Intern and staticpro it.
232 (pos_visible_p): Return pixel position in new x and y args.
233 (init_iterator): Reset it->slice info.
234 (handle_display_prop): Parse (slice ...) property.
235 (push_it, pop_it): Save/restore slice info.
236 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
237 force repositioning of tall row if window is vscrolled, as that
238 would reset vscroll.
239 (append_space): Set it->constrain_row_ascent_descent_p to avoid
240 increasing row height if row is non-empty.
241 (fill_image_glyph_string): Copy slice info.
242 (take_vertical_position_into_account): Simplify.
243 (produce_image_glyph): Handle iterator slice info, setup glyph
244 slice info. Do not force minimum line height.
245 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
246 do not increase height (ascent/descent) of non-empty row when
247 adding normal character glyph; instead reduce glyph ascent/descent
248 appropriately; if row is higher than current glyph, adjust glyph
249 descent/ascent to reposition glyph within the existing row.
250 Likewise, when char is newline, only set ascent/descent if row is
251 currently empty.
252 (note_mouse_highlight): Handle hotspots with sliced image.
253
254 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
255 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
256 (x_draw_image_foreground, x_draw_image_relief)
257 (x_draw_image_foreground_1, x_draw_image_glyph_string):
258 Draw sliced images.
259
260 * xterm.h (image_ascent): Remove prototype.
261
262 2004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
263
264 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
265
266 2004-04-20 John Paul Wallington <jpw@gnu.org>
267
268 * fns.c (Fassoc, Feql): Fix indentation.
269
270 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
271
272 2004-04-19 John Paul Wallington <jpw@gnu.org>
273
274 * fns.c (Feql): New function.
275 (syms_of_fns): Defsubr it.
276
277 2004-04-18 Jason Rumney <jasonr@gnu.org>
278
279 * w32select.c (Fw32_set_clipboard_data): Get sequence number
280 after closing the clipboard.
281
282 2004-04-16 Luc Teirlinck <teirllm@auburn.edu>
283
284 * buffer.c (Fbuffer_base_buffer): Doc fix.
285
286 2004-04-17 Kim F. Storm <storm@cua.dk>
287
288 * keymap.c (Fkey_description): Add optional PREFIX arg.
289 Combine prefix with KEYS to make up the full key sequence to describe.
290 Correlate meta_prefix_char and following (simple) key to describe
291 as meta modifier. All callers changed.
292 (describe_map): Rename arg `keys' to `prefix'. Remove local
293 `elt_prefix' var. Use Fkey_description with prefix instead of
294 elt_prefix combined with Fsingle_key_description.
295 (describe_vector): Declare static. Replace arg `elt_prefix' with
296 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
297 if !KEYMAP_P. Use Fkey_description with prefix instead of
298 Fsingle_key_description.
299
300 * keymap.h (Fkey_description): Fix prototype.
301 (describe_vector): Remove prototype.
302
303 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
304
305 * image.c (PNG_BG_COLOR_SHIFT): Remove.
306 (png_load): Fix calculation of transparent background color on X
307 and W32 platforms.
308
309 2004-04-16 Juanma Barranquero <lektu@terra.es>
310
311 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
312 not too large before computing how much to scroll.
313
314 2004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
315
316 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
317
318 2004-04-14 Luc Teirlinck <teirllm@auburn.edu>
319
320 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
321 Add hyperlink to Elisp manual to the docstring.
322
323 2004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
324
325 * callint.c (fix_command): Use XDCR.
326
327 2004-04-14 Nick Roberts <nick@nick.uklinux.net>
328
329 * window.c (Fget_lru_window): Doc fix.
330
331 2004-04-14 Kim F. Storm <storm@cua.dk>
332
333 * editfns.c (Fformat): Fix allocation size of precision array.
334
335 * dispnew.c (update_window): Only set changed_p if
336 scrolling_window actually did scroll.
337 (scrolling_window): Only return 1 if we actually did scroll.
338
339 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
340 height to glyph height when cursor row is not fully visible.
341 (make_cursor_line_fully_visible): Add FORCE_P arg to return
342 failure in case row is higher than window. Callers changed.
343 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
344 Try to scroll partially visible, higher-than-window cursor row.
345 (redisplay_window): Always try to scroll partially visible,
346 higher-than-window cursor row - both initially and again with
347 centering_position = 0.
348 Clear desired matrix before retrying with centering_position = 0.
349
350 2004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
351
352 * syntax.c (scan_lists): Simplify backward string scan.
353 Fix off-by-one boundary check for string and comment fences.
354
355 2004-04-13 Joe Buehler <jbuehler@hekimian.com>
356
357 * sheap.c, unexcw.c: New files.
358
359 2004-04-12 Luc Teirlinck <teirllm@auburn.edu>
360
361 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
362 base buffer has been killed. Correct the error message if the
363 base buffer does not exist.
364
365 2004-04-12 Joe Buehler <jbuehler@hekimian.com>
366
367 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
368 Cygwin itself. Add support for Xaw3d scrollbars.
369
370 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
371
372 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
373
374 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
375 before Cygwin unexec.
376
377 * Makefile.in: Link changes for Cygwin unexec() support.
378
379 2004-04-12 Andreas Schwab <schwab@suse.de>
380
381 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
382
383 2004-04-11 Luc Teirlinck <teirllm@auburn.edu>
384
385 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
386 IGNORE argument equals NAME. Doc fix.
387
388 2004-04-11 Masatake YAMATO <jet@gyve.org>
389
390 * buffer.c (fix_start_end_in_overlays): Make overlays
391 empty if they are backwards.
392
393 2004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
394
395 * xfaces.c (face_color_supported_p): Fix compilation without X11.
396
397 2004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
398
399 * doc.c (Fsnarf_documentation): Ignore new file name entries.
400
401 2004-04-06 Kim F. Storm <storm@cua.dk>
402
403 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
404 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
405
406 * w32term.c (w32_read_socket): Set mouse_face_hidden after
407 clearing highlight.
408
409 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
410
411 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
412 clearing highlight.
413
414 * indent.c (vmotion): Do not reserve one column for continuation
415 marks on window frames.
416
417 2004-04-04 Eli Zaretskii <eliz@gnu.org>
418
419 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
420 from GCC.
421
422 2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
423
424 * .gdbinit-union: Remove.
425
426 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
427 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
428 ($nonvalbits): Remove.
429 ($valmask): Set it by calling xreload to avoid redundancy.
430
431 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
432 (gdb_emacs_intbits): Remove.
433
434 2004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
435
436 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
437
438 2004-03-30 Kenichi Handa <handa@m17n.org>
439
440 * editfns.c (Fformat): Fix initialization of the array info.
441
442 2004-03-30 Kim F. Storm <storm@cua.dk>
443
444 * xterm.c (x_mouse_click_focus_ignore_position): New var.
445 (syms_of_xterm): DEFVAR_BOOL it.
446 (ignore_next_mouse_click_timeout): New var.
447 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
448 Use it to filter mouse clicks following focus event.
449
450 2004-03-29 David Ponce <david@dponce.com>
451
452 * callint.c (Fcall_interactively): Fix last change.
453
454 2004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
455
456 * eval.c (Fcommandp): Simplify.
457
458 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
459 Extend to handle all kinds of functions.
460
461 * lisp.h (Finteractive_form): Declare.
462
463 * callint.c (Fcall_interactively): Use it.
464
465 2004-03-26 Kim F. Storm <storm@cua.dk>
466
467 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
468 to catch errors in calc_pixel_width_or_height during redisplay.
469
470 2004-03-26 Masatake YAMATO <jet@gyve.org>
471
472 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
473
474 * lisp.h (fix_start_end_in_overlays): Likewise.
475
476 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
477
478 * editfns.c (Ftranspose_regions): Likewise.
479
480 2004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
481
482 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
483
484 2004-03-19 Richard M. Stallman <rms@gnu.org>
485
486 * s/sol2-6.h: Delete previous change.
487
488 2004-03-19 Kim F. Storm <storm@cua.dk>
489
490 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
491 to_charpos corresponds to newline in right fringe. Use local
492 BUFFER_POS_REACHED_P macro.
493
494 2004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
495
496 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
497 to compile on non-window system.
498
499 2004-03-19 Kim F. Storm <storm@cua.dk>
500
501 * dispextern.h (calc_pixel_width_or_height): Add prototype.
502
503 * image.c (Qcenter): Move to xdisp.c.
504
505 * xdisp.c (Qcenter): Declare here.
506 (syms_of_xdisp): Intern and staticpro it.
507 (handle_single_display_prop): Allow space display property on all
508 platforms.
509 (display_mode_line): Set mode_line_p before displaying line.
510 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
511 handling. Remove complex cases for fringes and scroll-bars.
512 Add left, right, and center alignment positions. Add text (area)
513 width/height. Return width or height for image specs.
514 (produce_stretch_glyph): Improve handling of :align-to. Is now
515 relative to left of text area by default, but other base offsets
516 can be specified -- also for text lines.
517
518 * term.c (produce_glyphs): Handle IT_STRETCH.
519 (produce_stretch_glyph): New function to handle space width and
520 align-to display properties on non-window systems.
521
522 2004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
523
524 * fileio.c (Fread_file_name): Set completion-ignore-case for
525 case-insensitive systems.
526
527 2004-03-14 Masatake YAMATO <jet@gyve.org>
528
529 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
530 when keymap and cursor are setup.
531
532 2004-03-14 Steven Tamm <steventamm@mac.com>
533
534 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
535
536 2004-03-14 Kim F. Storm <storm@cua.dk>
537
538 * dispextern.h (x_find_image_file): Add prototype.
539
540 * image.c (x_find_image_file): Make extern.
541
542 * xfns.c (x_find_image_file): Remove prototype.
543
544 2004-03-13 Eli Zaretskii <eliz@gnu.org>
545
546 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
547
548 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
549
550 2004-03-12 Richard M. Stallman <rms@gnu.org>
551
552 * fns.c (internal_equal): New arg PROPS controls comparing
553 text properties. All callers changed.
554 (Fequal_including_properties): New function.
555 (syms_of_fns): defsubr it.
556
557 2004-03-12 Kim F. Storm <storm@cua.dk>
558
559 Fix image support on MAC. From YAMAMOTO Mitsuharu.
560
561 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
562 (image_background, image_background_transparent): Fix prototypes.
563
564 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
565
566 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
567 (x_query_font, x_find_ccl_program, x_set_window_size)
568 (x_make_frame_visible, mac_initialize, XCreatePixmap)
569 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
570 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
571
572 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
573 (x_query_font, x_find_ccl_program, x_set_window_size)
574 (x_make_frame_visible, mac_initialize, XCreatePixmap)
575 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
576 (mac_draw_line_to_pixmap): Add prototypes.
577
578 2004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
579
580 * macterm.c (XTread_socket): Fix mouse click on tool bar.
581
582 2004-03-11 Kim F. Storm <storm@cua.dk>
583
584 * dispextern.h: Move image related prototypes from xfns.c section
585 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
586 HAVE_X_WINDOWS.
587
588 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
589 Move gtkutil.o to new GTK_OBJ list.
590 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
591 (GTK_OBJ) [USE_GTK]: New declaration.
592 (obj): Add $(GTK_OBJ) to list.
593
594 2004-03-11 Steven Tamm <steventamm@mac.com>
595
596 * image.c [MAC_OSX]: Include sys/stat.h
597
598 * macfns.c (syms_of_macfns): Remove definitions of things now
599 defined in image.c
600
601 2004-03-11 Kim F. Storm <storm@cua.dk>
602
603 The following changes consolidates the identical/similar image
604 support code previously found in xfns.c, w32fns.c, and macfns.c
605 into a new file image.c.
606
607 * makefile.w32-in (OBJ1): Add image.o.
608 ($(BLD)/image.$(O)): Add dependencies.
609
610 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
611 (image.o): Add dependencies.
612
613 * image.c: New file with consolidated image support code.
614 (COLOR_TABLE_SUPPORT): New define to control whether
615 color table support is available (X only).
616 (Bitmap_Record): Common name for x_bitmap_record,
617 w32_bitmap_record, and mac_bitmap_record.
618 (XImagePtr): Common name for pointer to XImage or equivalent.
619 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
620 to XImagePtr on X+MAC, and to HDC on W32.
621 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
622 (NO_PIXMAP): Common name for "None" or equivalent.
623 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
624 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
625 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
626 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
627 Define with suitable equivalents on W32 and MAC for code sharing.
628 (XDrawLine): Define on MAC for code sharing.
629 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
630 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
631 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
632 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
633 (x_reference_bitmap, x_create_bitmap_from_data)
634 (x_create_bitmap_from_file, x_destroy_bitmap)
635 (x_destroy_all_bitmaps, x_create_bitmap_mask)
636 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
637 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
638 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
639 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
640 (define_image_type, lookup_image_type, valid_image_p)
641 (image_error, enum image_value_type, struct image_keyword)
642 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
643 (make_image, free_image, prepare_image_for_display, image_ascent)
644 (four_corners_best, image_background, image_background_transparent)
645 (x_clear_image_1, x_clear_image, x_alloc_image_color)
646 (make_image_cache, free_image_cache, clear_image_cache)
647 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
648 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
649 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
650 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
651 (init_image_func_pointer, image_load_quartz2d)
652 (struct ct_color, init_color_table, free_color_table)
653 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
654 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
655 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
656 (x_disable_image, x_build_heuristic_mask)
657 (XBM support, XPM support, PBM support, PNG support, JPEG support)
658 (TIFF support, GIF support, Ghostscript support): Consolidate image
659 code from xfns.c, w32fns.c, and macfns.c.
660 (syms_of_image): Consolidate image related symbol setup here.
661 (init_image): Consolidate image related initializations here.
662
663 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
664 and init_image. Remove call to init_xfns.
665
666 * macterm.h (struct mac_bitmap_record): Add file member.
667 Not currently used, but simplifies code sharing.
668
669 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
670 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
671 (x_reference_bitmap, x_create_bitmap_from_data)
672 (x_create_bitmap_from_file, x_destroy_bitmap)
673 (x_destroy_all_bitmaps, x_create_bitmap_mask)
674 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
675 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
676 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
677 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
678 (define_image_type, lookup_image_type, valid_image_p)
679 (image_error, enum image_value_type, struct image_keyword)
680 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
681 (make_image, free_image, prepare_image_for_display, image_ascent)
682 (four_corners_best, image_background, image_background_transparent)
683 (x_clear_image_1, x_clear_image, x_alloc_image_color)
684 (make_image_cache, free_image_cache, clear_image_cache)
685 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
686 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
687 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
688 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
689 (init_image_func_pointer, image_load_quartz2d)
690 (struct ct_color, init_color_table, free_color_table)
691 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
692 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
693 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
694 (x_disable_image, x_build_heuristic_mask)
695 (XBM support, XPM support, PBM support, PNG support, JPEG support)
696 (TIFF support, GIF support, Ghostscript support): Merge with image
697 code from xfns.c and macfns.c into image.c.
698 (syms_of_xfns): Move image related symbols to image.c.
699 (init_external_image_libraries, init_xfns): Remove; initialization
700 moved to init_image in image.c.
701
702 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
703 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
704 (x_reference_bitmap, x_create_bitmap_from_data)
705 (x_create_bitmap_from_file, x_destroy_bitmap)
706 (x_destroy_all_bitmaps, x_create_bitmap_mask)
707 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
708 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
709 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
710 (define_image_type, lookup_image_type, valid_image_p)
711 (image_error, enum image_value_type, struct image_keyword)
712 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
713 (make_image, free_image, prepare_image_for_display, image_ascent)
714 (four_corners_best, image_background, image_background_transparent)
715 (x_clear_image_1, x_clear_image, x_alloc_image_color)
716 (make_image_cache, free_image_cache, clear_image_cache)
717 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
718 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
719 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
720 (struct ct_color, init_color_table, free_color_table)
721 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
722 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
723 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
724 (x_disable_image, x_build_heuristic_mask)
725 (XBM support, XPM support, PBM support, PNG support, JPEG support)
726 (TIFF support, GIF support, Ghostscript support): Merge with image
727 code from xfns.c and macfns.c into image.c.
728 (syms_of_xfns): Move image related symbols to image.c.
729 (init_external_image_libraries, init_xfns): Remove; initialization
730 moved to init_image in image.c.
731
732 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
733 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
734 (x_reference_bitmap, x_create_bitmap_from_data)
735 (x_create_bitmap_from_file, x_destroy_bitmap)
736 (x_destroy_all_bitmaps, x_create_bitmap_mask)
737 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
738 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
739 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
740 (define_image_type, lookup_image_type, valid_image_p)
741 (image_error, enum image_value_type, struct image_keyword)
742 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
743 (make_image, free_image, prepare_image_for_display, image_ascent)
744 (four_corners_best, image_background, image_background_transparent)
745 (x_clear_image_1, x_clear_image, x_alloc_image_color)
746 (make_image_cache, free_image_cache, clear_image_cache)
747 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
748 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
749 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
750 (struct ct_color, init_color_table, free_color_table)
751 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
752 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
753 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
754 (x_disable_image, x_build_heuristic_mask)
755 (XBM support, XPM support, PBM support, PNG support, JPEG support)
756 (TIFF support, GIF support, Ghostscript support): Merge with
757 w32fns.c and macfns.c image code into image.c.
758 (syms_of_xfns): Move image related symbols to image.c.
759 (init_xfns): Remove; initialization moved to init_image in image.c.
760
761 * lisp.h (syms_of_image, init_image): Add protoypes.
762 (init_xfns): Remove prototype.
763
764 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
765 (x_reference_bitmap, x_create_bitmap_from_data)
766 (x_create_bitmap_from_file, x_destroy_bitmap)
767 (x_create_bitmap_mask): Move prototypes from dispextern.h.
768 (gamma_correct) [MAC_OS]: Add prototype.
769
770 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
771 (x_reference_bitmap, x_create_bitmap_from_data)
772 (x_create_bitmap_from_file, x_destroy_bitmap)
773 (x_create_bitmap_mask): Move prototypes to dispextern.h.
774
775 2004-03-09 Kenichi Handa <handa@etlken2>
776
777 * coding.c (decode_coding_emacs_mule): Handle insufficent source
778 correctly.
779
780 2004-03-04 Richard M. Stallman <rms@gnu.org>
781
782 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
783
784 * window.c (Fdisplay_buffer): Doc fix.
785
786 * buffer.c (Fpop_to_buffer): Doc fix.
787
788 2004-03-03 Kim F. Storm <storm@cua.dk>
789
790 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
791
792 2004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
793
794 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
795
796 2004-03-02 Richard M. Stallman <rms@gnu.org>
797
798 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
799
800 2004-03-02 Kenichi Handa <handa@m17n.org>
801
802 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
803
804 2004-03-02 Kim F. Storm <storm@cua.dk>
805
806 * window.h (struct window): New member overlay_arrow_bitmap.
807
808 * window.c (make_window): Initialize overlay_arrow_bitmap.
809
810 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
811 implement and integrate multiple overlay arrows with redisplay.
812 (syms_of_xdisp): DEFVAR_LISP and initialize it.
813 (last_arrow_position, last_arrow_string): Replace by properties.
814 (Qlast_arrow_position, Qlast_arrow_string)
815 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
816 (syms_of_xdisp): Intern and staticpro them.
817 (overlay_arrow_string_or_property, update_overlay_arrows)
818 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
819 (overlay_arrow_at_row): New functions for multiple overlay arrows.
820 (redisplay_internal): Use them instead of directly accessing
821 Voverlay_arrow_position etc. for multiple overlay arrows.
822 (mark_window_display_accurate): Use update_overlay_arrows.
823 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
824 (try_window_id): Use overlay_arrows_changed_p.
825 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
826 (display_line): Use overlay_arrow_at_row to check multiple
827 overlay arrows, and get relevant overlay-arrow-string and
828 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
829 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
830 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
831
832 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
833 (update_window_fringes): Remove unused code.
834
835 2004-03-01 Jason Rumney <jasonr@gnu.org>
836
837 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
838
839 2004-03-01 Juanma Barranquero <lektu@terra.es>
840
841 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
842
843 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
844
845 2004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
846
847 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
848 how many colors can be displayed.
849
850 2004-03-01 Kenichi Handa <handa@m17n.org>
851
852 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
853 correctly.
854
855 2004-02-28 Kim F. Storm <storm@cua.dk>
856
857 * dispnew.c (update_window): Update header line also if there are
858 no other changes in window (move code after set_cursor label).
859
860 * lisp.h (mark_window_display_accurate): Remove prototype.
861
862 * window.c (window_loop, Fforce_window_update): Force mode line
863 updates by setting prevent_redisplay_optimizations_p and
864 update_mode_lines.
865
866 2004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
867
868 * xfns.c (x_window): Fix indentation.
869
870 * xterm.c (x_calc_absolute_position): Call x_real_positions
871 to get WM window sizes and use those to calculate position.
872 (x_set_offset): Remove code commented out.
873
874 2004-02-28 Miles Bader <miles@gnu.org>
875
876 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
877
878 2004-02-28 Kim F. Storm <storm@cua.dk>
879
880 * keyboard.c (kbd_buffer_store_event_hold): New function to store
881 an event into kbd fifo, but with special handling of quit event;
882 a quit event is saved for later, and further events are discarded
883 until the saved quit event has been processed.
884 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
885 (gen_help_event): Store help event in kbd fifo.
886 (NREAD_INPUT_EVENTS): Remove.
887 (read_avail_input): Adapt to new read_socket_hook interface.
888 Remove allocation and initialization of local input_event buffer,
889 as read_socket_hook stores events directly in fifo. Allocate and
890 initialize local hold_quit event to handle postponed quit event
891 (and store it if set by kbd_buffer_store_event_hold).
892
893 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
894 (gen_help_event): Fix prototype.
895
896 * macterm.c (XTread_socket): Remove bufp_r and
897 numcharsp args. Add hold_quit arg.
898 Rework to use just one, local, inev input_event. Store inev
899 directly in fifo using kbd_buffer_store_event_hold.
900
901 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
902 (read_input_waiting): Adapt to new read_socket_hook interface.
903 Remove allocation and initialization of local input_event buffer,
904 as read_socket_hook stores events directly in fifo. Allocate and
905 initialize local hold_quit event to handle postponed quit event
906 (and store it if set by kbd_buffer_store_event_hold).
907
908 * term.c (read_socket_hook): Fix arg list.
909
910 * termhooks.h (read_socket_hook): Fix prototype.
911
912 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
913 numcharsp args. Add hold_quit arg.
914 Rework to use just one, local, inev input_event. Store inev
915 directly in fifo using kbd_buffer_store_event_hold.
916
917 * w32inevt.h (w32_console_mouse_position): Fix prototype.
918
919 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
920 Add hold_quit arg. Rework to use just one, local, inev
921 input_event. Store inev directly in fifo using
922 kbd_buffer_store_event_hold. Update count in one place.
923 Postpone call to gen_help_event until inev is stored; use new
924 local do_help for this.
925 Remove local emacs_event in handing of ButtonPress event; just use
926 inev instead (so no reason to copy it later).
927
928 * xsmfns.c (x_session_check_input): Remove numchars arg.
929
930 * xterm.c (x_focus_changed, x_detect_focus_change):
931 Remove numchars arg. Always store event into bufp arg.
932 Return nothing. Callers changed accordingly.
933 (glyph_rect): Simplify.
934 (STORE_KEYSYM_FOR_DEBUG): New macro.
935 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
936 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
937 (current_hold_quit) [USE_GTK]: Add.
938 (event_handler_gdk): Adapt to new handle_one_xevent.
939 (handle_one_xevent): Remove bufp_r and numcharsp args.
940 Add hold_quit arg. Rework to use just one, local, inev
941 input_event. Store inev directly in fifo using
942 kbd_buffer_store_event_hold. Update count in one place.
943 Postpone call to gen_help_event until inev is stored; use new
944 local do_help for this.
945 Simplify handling of keysyms (consolidate common code). Fix bug
946 where count was updated with nchars instead of nbytes.
947 Remove local emacs_event in handing of ButtonPress event; just use
948 inev instead (so no reason to copy it later).
949 Remove `out' label. Rename label `ret' to `done'; add various
950 `goto done' to clarify code flow in deeply nested blocks.
951 (x_dispatch_event): Simplify as handle_one_xevent now calls
952 kbd_buffer_store_event itself.
953 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
954 arg. Call handle_one_xevent with new arglist. Store event from
955 x_session_check_input in fifo.
956 [USE_GTK]: Setup current_hold_quit.
957 Decrement handling_signal before unblocking input.
958 (x_initialize) [USE_GTK]: Initialize current_count.
959
960 * xterm.h (x_session_check_input): Fix prototype.
961
962 2004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
963
964 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
965
966 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
967 macgui.h).
968
969 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
970
971 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
972 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
973 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
974 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
975 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
976 (Bitmap): Remove typedef.
977 (Pixmap): Change int to GWorldPtr.
978
979 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
980
981 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
982 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
983 New #define to extract 16-bit depth color components from unsigned
984 long representation.
985 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
986 colors used for masks.
987 (struct mac_display_info): Add color_p. Remove n_cbits.
988
989 * macfns.c: Include sys/types.h and sys/stat.h.
990 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
991 Include QuickTime/QuickTime.h.
992 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
993 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
994 functions defined in macterm.c.
995 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
996 (ZPixmap): New #define for compatibility with xfns.c.
997 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
998 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
999 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
1000 New functions.
1001 (four_corners_best, x_create_x_image_and_pixmap)
1002 (x_destroy_x_image, unwind_create_frame, x_disable_image)
1003 (x_edge_detection, init_color_table, colors_in_color_table)
1004 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
1005 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
1006 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
1007 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
1008 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
1009 long mixup.
1010 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
1011 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
1012 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
1013 (x_set_cursor_type, Fxw_color_values, valid_image_p)
1014 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
1015 (x_alloc_image_color, clear_image_cache, lookup_image)
1016 (x_find_image_file, xbm_read_bitmap_file_data)
1017 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
1018 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
1019 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
1020 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
1021 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
1022 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
1023 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
1024 #if 0.
1025 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
1026 #if 0. Free white_relief.gc and black_relief.gc.
1027 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
1028 New functions (from xfns.c).
1029 (Fx_create_frame): Record unwind_create_frame.
1030 (Fxw_display_color_p): Use dpyinfo->color_p.
1031 (Fx_display_grayscale_p, Fx_display_planes): Don't use
1032 dpyinfo->n_cbits.
1033 (Fx_display_color_cells): Use dpyinfo->n_planes;
1034 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
1035 (Qheuristic, cross_disabled_images, emboss_matrix)
1036 (laplace_matrix): New variables (from xfns.c).
1037 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
1038 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
1039 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
1040 (image_background_transparent): New function (from xfns.c).
1041 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
1042 (image_load_quicktime): Add declaration.
1043 [MAC_OSX] (image_load_quartz2d): Likewise.
1044 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
1045 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
1046 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
1047 (xbm_load_image_from_file, x_laplace_read_row)
1048 (x_laplace_write_row, pbm_read_file): Remove functions.
1049 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
1050 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
1051 (colors_in_color_table): Sync with xfns.c (although not used).
1052 (lookup_rgb_color): Don't lookup color table. Just do gamma
1053 correction.
1054 (COLOR_INTENSITY): New #define (from xfns.c).
1055 (x_disable_image): New function (from xfns.c).
1056 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
1057 (x_build_heuristic_mask): Sync with xfns.c.
1058 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
1059 (HAVE_PBM): Remove #ifdef.
1060 (pbm_load): Sync with xfns.c. Set img->width and img->height
1061 before IMAGE_BACKGROUND.
1062 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
1063 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
1064 Don't enclose with #if HAVE_PNG.
1065 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
1066 symbol _CGImageCreateWithPNGDataProvider is defined.
1067 Otherwise use image_load_quicktime.
1068 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
1069 [HAVE_PNG] (png_load): Sync with xfns.c.
1070 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
1071 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
1072 HAVE_JPEG.
1073 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
1074 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
1075 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
1076 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
1077 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
1078 (tiff_image_p, tiff_load): Don't enclose declarations with #if
1079 HAVE_TIFF.
1080 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
1081 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
1082 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
1083 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
1084 New functions (from xfns.c).
1085 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
1086 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
1087 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
1088 Don't enclose with #if HAVE_GIF.
1089 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
1090 animated gif. Otherwise use image_load_quicktime.
1091 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
1092 gif_DrawText to avoid conflict with QuickdrawText.h.
1093 [HAVE_GIF] (gif_load): Sync with xfns.c.
1094 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
1095 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
1096 Ghostscript is not supported yet).
1097 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
1098 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
1099 cross_disabled_images (from xfns.c). Remove #if 0 for supported
1100 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
1101 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
1102 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
1103 HAVE_PNG. Call EnterMovies to support animated gifs.
1104 Call init_image_func_pointer to bind a symbol
1105 _CGImageCreateWithPNGDataProvider if it is defined.
1106
1107 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
1108 (x_draw_bar_cursor): Sync declaration with xterm.c.
1109 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
1110 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
1111 graphics).
1112 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
1113 (mac_draw_line_to_pixmap, XCreatePixmap)
1114 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
1115 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
1116 New functions.
1117 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
1118 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
1119 Cast bits to char *.
1120 (reflect_byte): New function (from w32fns.c).
1121 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
1122 due to byte alignment.
1123 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
1124 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
1125 (XSetForeground): Remove static (now used in macfns.c).
1126 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
1127 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
1128 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
1129 (x_draw_glyph_string_box, x_draw_image_foreground)
1130 (x_draw_image_foreground_1, x_draw_image_glyph_string)
1131 (x_draw_stretch_glyph_string, x_draw_glyph_string)
1132 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
1133 Sync with xterm.c.
1134 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
1135 than the xterm.c version when a strictly horizontal or vertical
1136 line is drawn.
1137 (XTset_terminal_window): Add static.
1138 (x_make_frame_visible): Add UNBLOCK_INPUT.
1139 (x_free_frame_resources): New funcion (from xterm.c).
1140 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
1141 occurs in tool bar area.
1142 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
1143 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
1144 Initialize image cache.
1145 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
1146 Enclose unused functions with #if 0.
1147 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
1148 (decode_mac_font_name): New function to apply code conversions
1149 from a mac font name to an XLFD font name according to its script code.
1150 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
1151 font name to a mac font name according to REGISTRY and ENCODING fields.
1152 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
1153 whose name starts with `.'.
1154 (init_font_name_table): Use decode_mac_font_name. Add both
1155 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
1156 of a font is smJapanese.
1157 (mac_do_list_fonts): New function to list fonts that match a given
1158 pattern.
1159 (x_list_fonts, XLoadQueryFont): Use it.
1160 (XLoadQueryFont): Set rbearing field for each variable width
1161 character to avoid needless redraw.
1162 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
1163
1164 2004-02-26 Kim F. Storm <storm@cua.dk>
1165
1166 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
1167 as read_socket_hook handler on X aborts if buffer is too small
1168 and W32 handler doesn't always check buffer limit.
1169
1170 * xdisp.c (handle_single_display_prop): Handle left-fringe and
1171 right-fringe similar to a display margin image. Specifically,
1172 the characters having the fringe prop are no longer shown, and
1173 we use IT_IMAGE/next_element_from_image with image_id = -1 to
1174 do this. Set fringe bitmap face_id in it->face_id.
1175 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
1176 still realize it->face (i.e. the fringe bitmap face).
1177
1178 2004-02-25 Miles Bader <miles@gnu.org>
1179
1180 * xdisp.c (check_it): Check string/string_pos consistency.
1181 (init_iterator): Initialize string-related fields properly.
1182
1183 2004-02-11 Miles Bader <miles@gnu.org>
1184
1185 * xdisp.c (produce_image_glyph): Force negative descents to zero.
1186
1187 2004-02-10 Miles Bader <miles@gnu.org>
1188
1189 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
1190 BLOCK_INPUT can be nested, so it doesn't make much sense.
1191
1192 2004-02-24 Michael Mauger <mmaug@yahoo.com>
1193
1194 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
1195 (xbm_read_bitmap_data): Use unsigned char for image data.
1196
1197 2004-02-23 Luc Teirlinck <teirllm@auburn.edu>
1198
1199 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
1200
1201 2004-02-22 Jason Rumney <jasonr@gnu.org>
1202
1203 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
1204 correctly over other bitmaps.
1205
1206 2004-02-21 Eli Zaretskii <eliz@gnu.org>
1207
1208 * emacs.c (USAGE1): Split into two halves.
1209 (USAGE2): Second half of the old USAGE1.
1210 (USAGE3): Rename from USAGE2.
1211 (USAGE4): Rename from USAGE3.
1212
1213 2004-02-21 Juri Linkov <juri@jurta.org>
1214
1215 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
1216 Fix --multibyte. Move --help, --version to USAGE2. Add alias
1217 --file. Fix -f, -l. Sort options. Untabify.
1218 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
1219
1220 2004-02-19 Luc Teirlinck <teirllm@auburn.edu>
1221
1222 * category.c (Fdefine_category, Fcategory_docstring)
1223 (Fget_unused_category, Fset_category_table)
1224 (Fcategory_set_mnemonics): Doc fixes.
1225
1226 2004-02-20 Kim F. Storm <storm@cua.dk>
1227
1228 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
1229 The following changes are relative to the 2004-01-21 revision.
1230 (NREAD_INPUT_EVENTS): Define as max number of input events to read
1231 in one call to read_socket_hook. Value is 8.
1232 (read_avail_input): Separate and rework handling of read_socket_hook
1233 and non-read_socket_hook cases. Use smaller input_event buffer
1234 in read_socket_hook case, and repeat if full buffer is read.
1235 Use new local variable 'discard' to skip input after C-g.
1236 In non-read_socket_hook case, just use a single input_event, and
1237 call kbd_buffer_store_event on the fly for each character.
1238
1239 2004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
1240
1241 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
1242 Remove unused `gu' alternative.
1243
1244 2004-02-19 Andreas Schwab <schwab@suse.de>
1245
1246 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
1247 warning.
1248
1249 2004-02-18 Kim F. Storm <storm@cua.dk>
1250
1251 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
1252 Fix last change.
1253
1254 2004-02-17 Kim F. Storm <storm@cua.dk>
1255
1256 * xdisp.c (fast_find_position): Fix return value of new version;
1257 it was inverted compared to the 21.1 version.
1258 (get_window_cursor_type): Don't look at glyph if NULL.
1259 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
1260
1261 * keyboard.c: Rework previous change; it didn't consider that the
1262 buf array was allocated on the stack.
1263 (prev_read): Remove variable.
1264 (read_avail_input_buf): New static event buffer array.
1265 (in_read_avail_input): New static variable to handle re-entrancy.
1266 (read_avail_input): Change buf to pinter to read_avail_input_buf.
1267 Use in_read_avail_input to handle re-entrance; when re-entered,
1268 fully initialize and use tmp_buf array instead of read_avail_input_buf.
1269 Do not initialize read_avail_input_buf in full here; instead assume it
1270 is always cleared on entry. To ensure that, we clear (just) the
1271 entries that were used before we return.
1272 (init_keyboard): Initialize read_avail_input_buf here.
1273
1274 2004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change)
1275
1276 * cmds.c (Fend_of_line): Doc fix.
1277
1278 2004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
1279
1280 * keyboard.c (prev_read): New static variable.
1281 (read_avail_input): Use it to zero out only those slots in buf[]
1282 that were used last time we were called.
1283
1284 2004-02-16 Eli Zaretskii <eliz@gnu.org>
1285
1286 * Makefile.in (obj): Move fringe.o from here...
1287 (XOBJ, MAC_OBJ): ...to here.
1288
1289 2004-02-16 Stephen Eglen <stephen@gnu.org>
1290
1291 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
1292
1293 2004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
1294
1295 * data.c (Fbyteorder):
1296 * fringe.c (Fdefine_fringe_bitmap):
1297 * xdisp.c (handle_single_display_prop):
1298 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
1299
1300 2004-02-16 Jason Rumney <jasonr@gnu.org>
1301
1302 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
1303
1304 2004-02-15 Steven Tamm <steventamm@mac.com>
1305
1306 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
1307 controlling emulation of a three button mouse with option and
1308 command keys.
1309 (Qreverse, mac_get_enumlated_btn): Handle the emulation
1310 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
1311
1312 2004-02-15 Kim F. Storm <storm@cua.dk>
1313
1314 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
1315
1316 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
1317 Perform byte-swapping.
1318
1319 2004-02-14 Kim F. Storm <storm@cua.dk>
1320
1321 * dispextern.h (struct draw_fringe_bitmap_params): Change member
1322 bits from char to short to facilitate wider bitmaps.
1323 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
1324 member.
1325
1326 * fringe.c (struct fringe_bitmap): Change member bits from char to
1327 short to facilitate 16 bits wide bitmaps. Modify all standard
1328 bitmaps accordingly.
1329 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
1330 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
1331 (draw_fringe_bitmap): Ditto.
1332 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
1333 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
1334 handle up to 16 bits wide bitmaps.
1335 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
1336 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
1337
1338 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
1339 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
1340 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
1341
1342 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
1343 so it is no longer necessary to expand them here.
1344
1345 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
1346
1347 2004-02-12 Kim F. Storm <storm@cua.dk>
1348
1349 * window.c (Fwindow_fringes): Doc fix.
1350
1351 2004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1352
1353 * xselect.c (x_get_foreign_selection): Add new optional parameter
1354 time_stamp.
1355 (Fx_get_selection_internal): Ditto, pass time_stamp to
1356 x_get_foreign_selection.
1357
1358 * data.c (Fbyteorder): New function.
1359
1360 2004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1361
1362 * atimer.c: Move include stdio.h to same place as in other files.
1363
1364 * region-cache.c: Ditto.
1365
1366 * sysdep.c: Ditto.
1367
1368 * xfaces.c: Ditto.
1369
1370 2004-02-09 Sam Steingold <sds@gnu.org>
1371
1372 * w32term.c (w32_draw_fringe_bitmap): Fixed a typo in the last patch.
1373
1374 2004-02-09 Kim F. Storm <storm@cua.dk>
1375
1376 * fringe.c: New file. Move original fringe related declarations
1377 and code from dispextern.h and xdisp.c here.
1378 Rework code to support user defined fringe bitmaps, redefining
1379 standard bitmaps, ability to overlay user defined bitmap with
1380 overlay arrow bitmap, and add faces to bitmaps.
1381 (Voverflow_newline_into_fringe): Declare here.
1382 (enum fringe_bitmap_align): New enum.
1383 (..._bits): All bitmaps are now defined without bitswapping; that
1384 is now done in init_fringe_once (if necessary).
1385 (standard_bitmaps): New array with specifications for the
1386 standard fringe bitmaps.
1387 (fringe_faces): New array.
1388 (valid_fringe_bitmap_id_p): New function.
1389 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
1390 (draw_fringe_bitmap): New function which draws fringe bitmap,
1391 possibly overlaying bitmap with cursor in right fringe or the
1392 overlay arrow in the left fringe.
1393 (update_window_fringes): Do not handle overlay arrow here.
1394 Compare and copy fringe bitmap faces.
1395 (init_fringe_bitmap): New function.
1396 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
1397 define and destroy user defined fringe bitmaps.
1398 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
1399 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
1400 (syms_of_fringe): New function. Defsubr new DEFUNs.
1401 DEFVAR_LISP Voverflow_newline_into_fringe.
1402 (init_fringe_once, init_fringe): New functions.
1403 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
1404
1405 * Makefile.in (obj): Add fringe.o.
1406 (fringe.o): New dependencies.
1407
1408 * dispextern.h (FRINGE_ID_BITS): New definition for number of
1409 bits allocated to hold a fringe number. Increase number of bits
1410 from 4 to 8 to allow user defined fringe bitmaps.
1411 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
1412 left_user_fringe_face_id, right_user_fringe_bitmap,
1413 right_user_fringe_face_id.
1414 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
1415 Move to new file fringe.c.
1416 (MAX_FRINGE_BITMAPS): Define here.
1417 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
1418 and overlay_p. Change member which to int.
1419 (struct redisplay_interface): New members define_fringe_bitmap
1420 and destroy_fringe_bitmap.
1421 (valid_fringe_bitmap_id_p): Add prototype.
1422 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
1423
1424 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
1425 arrows.
1426 (update_frame): Do flush_display if force_flush_display_p to
1427 ensure display (specifically fringes) are updated in a timely
1428 manner when resizing the frame by dragging the mouse.
1429 (update_window_line): Update row if overlay arrow changed.
1430 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
1431 or overlay arrow changed.
1432
1433 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
1434 syms_of_fringe, and init_fringe.
1435
1436 * frame.h (struct frame): New member force_flush_display_p.
1437
1438 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
1439 Add prototypes.
1440
1441 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
1442 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
1443 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
1444 Use cursor color for displaying cursor in fringe.
1445 (x_redisplay_interface): Add null handlers for
1446 define_fringe_bitmap and destroy_fringe_bitmap functions.
1447
1448 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
1449 xterm.c to handle overlayed fringe bitmaps and to use cursor color
1450 for displaying cursor in fringe.
1451 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
1452 specific functions to define and destroy fringe bitmaps in fringe_bmp.
1453 (w32_redisplay_interface): Add them to redisplay_interface.
1454 (w32_term_init): Call w32_init_fringe instead of explicitly
1455 defining fringe bitmaps in fringe_bmp array.
1456 (x_delete_display): Call w32_reset_fringes instead of explicitly
1457 destroying fringe bitmaps in fringe_bmp array.
1458
1459 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
1460 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
1461 (continued_bits, continuation_bits, ov_bits, first_line_bits)
1462 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
1463 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
1464 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
1465 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
1466 Move fringe handling vars and code to new file fringe.c.
1467 (handle_display_prop): Handle left-fringe and right-fringe
1468 display properties; store user fringe bitmaps in iterator.
1469 (move_it_in_display_line_to): Handle cursor in fringe at eob.
1470 (clear_garbaged_frames): Set force_flush_display_p if resized.
1471 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
1472 (display_line): Handle cursor in fringe at eob.
1473 (display_line): Set row user fringe bitmaps from iterator.
1474
1475 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
1476 Use cursor color for displaying cursor in fringe.
1477 (x_redisplay_interface): Add null handlers for
1478 define_fringe_bitmap and destroy_fringe_bitmap functions.
1479
1480 2004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1481
1482 * macfns.c (Fx_change_window_property): Make doc string and
1483 parameters same as for X version.
1484
1485 * w32fns.c (Fx_change_window_property): Ditto.
1486
1487 2004-02-07 Kim F. Storm <storm@cua.dk>
1488
1489 * xdisp.c (hscroll_window_tree): Position cursor near to right
1490 margin in hscrolled window when jumping to end of line (rather
1491 than centering cursor).
1492
1493 * process.c (wait_reading_process_input): Don't do adaptive read
1494 buffering if waiting for a specific process.
1495
1496 2004-02-05 Luc Teirlinck <teirllm@auburn.edu>
1497
1498 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
1499 (Fread_minibuffer, Feval_minibuffer)
1500 (Fread_string, Fread_no_blanks_input)
1501 (Fcompleting_read): Doc fixes.
1502 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
1503 completion-regexp-list. Define Qcase_fold_search and staticpro it.
1504 (read_minibuf): Fix initial comment.
1505 (Ftry_completion, Fall_completions, Ftest_completion): Bind
1506 case-fold-serach to the value of completion-ignore-case when
1507 checking completion-regexp-list.
1508 (Fdisplay_completion_list): Make it handle arguments that are
1509 symbols. Doc fix.
1510
1511 2004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1512
1513 * xterm.h: Add declaration of free_frame_menubar.
1514
1515 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
1516 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
1517 (Fx_change_window_property): Add declaration of parameters type and
1518 format. Remove unused variable cons.
1519
1520 * xselect.c: Include stdio,h.
1521
1522 2004-02-05 Kenichi Handa <handa@m17n.org>
1523
1524 * fns.c (Fset_char_table_range): Fix previous change.
1525
1526 * buffer.c (Fset_buffer_multibyte): Fix docstring.
1527
1528 2004-02-04 Luc Teirlinck <teirllm@auburn.edu>
1529
1530 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
1531
1532 2004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
1533
1534 * keymap.c (Vmouse_events): Rename from Vmenu_events.
1535 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
1536
1537 2004-02-04 Kenichi Handa <handa@m17n.org>
1538
1539 * fns.c (Fset_char_table_range): Handle charsets ascii,
1540 eight-bit-control, and eight-bit-graphic correctly.
1541
1542 2004-02-03 Jason Rumney <jasonr@gnu.org>
1543
1544 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
1545
1546 * w32fns.c (x_to_w32_font): Likewise.
1547
1548 2004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1549
1550 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
1551 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
1552
1553 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
1554 ClientMessages.
1555
1556 * xselect.c: Include termhooks.h and X11/Xproto.h
1557 (x_check_property_data, x_fill_property_data)
1558 (x_property_data_to_lisp, mouse_position_for_drop)
1559 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
1560 (Fx_send_client_event): Move here from xfns.c.
1561 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
1562
1563 * xfns.c (x-send-client-message): Move to xselect.c
1564 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
1565 OUTER_P.
1566 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
1567 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
1568 if vector_ret_p is true.
1569 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
1570
1571 2004-02-02 Eli Zaretskii <eliz@gnu.org>
1572
1573 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
1574 basename of FILE relative to it, not FILE itself.
1575
1576 2004-02-02 Kenichi Handa <handa@m17n.org>
1577
1578 * coding.c (coding_restore_composition): Check invalid
1579 composition data more rigidly.
1580
1581 2004-01-30 Luc Teirlinck <teirllm@auburn.edu>
1582
1583 * fileio.c (Fread_file_name_internal): Correctly handle the case
1584 where insert-default-directory is nil.
1585 (Fread_file_name): Always return an empty string if the user exits
1586 with an empty minibuffer. Adapt the docstring accordingly.
1587 (syms_of_fileio): Adapt the docstring of insert-default-directory
1588 to the change in Fread_file_name.
1589
1590 2004-01-29 Eli Zaretskii <eliz@gnu.org>
1591
1592 * alloca.c [!alloca]: Fix the prototype for xfree.
1593
1594 2004-01-29 Kenichi Handa <handa@m17n.org>
1595
1596 * fns.c (string_char_to_byte): Optimize for ASCII only string.
1597 (string_byte_to_char): Likewise.
1598
1599 2004-01-28 Peter Runestig <peter@runestig.com>
1600
1601 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
1602
1603 2004-01-27 Steven Tamm <steventamm@mac.com>
1604
1605 * unexmacosx.c (unexec_copy): Do not copy more than was
1606 requested to prevent overwriting during unexec.
1607
1608 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1609
1610 * process.c (sigchld_handler): Add comment about not calling malloc.
1611
1612 * process.h: Add extern to synch_process_termsig.
1613
1614 2004-01-27 Steven Tamm <steventamm@mac.com>
1615
1616 * macterm.c (make_mac_frame, make_mac_terminal_frame):
1617 Move setting of scroll bars from make_mac_frame to
1618 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
1619
1620 2004-01-26 Richard M. Stallman <rms@gnu.org>
1621
1622 * search.c (Freplace_match): Handle nonexistent
1623 back-references properly.
1624
1625 2004-01-03 Richard M. Stallman <rms@gnu.org>
1626
1627 * window.c (decode_any_window): New function.
1628 (Fwindow_height, Fwindow_width, Fwindow_edges)
1629 (Fwindow_pixel_edges, Fwindow_inside_edges)
1630 (Fwindow_inside_pixel_edges): Use decode_any_window.
1631
1632 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1633
1634 * process.h: synch_process_termsig new variable.
1635
1636 * callproc.c: Define synch_process_termsig.
1637 (Fcall_process): Initiate synch_process_termsig to zero and
1638 check if non-zero and get signal name after subprocess has ended.
1639
1640 * process.c (sigchld_handler): Set synch_process_termsig
1641 if terminated by a signal. synch_process_death setting removed.
1642
1643 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
1644
1645 2004-01-26 Andreas Schwab <schwab@suse.de>
1646
1647 * print.c (print_preprocess): Declare size as EMACS_INT to not
1648 lose bits.
1649 (print_object): Likewise.
1650 * alloc.c (Fpurecopy): Likewise.
1651
1652 2004-01-25 Luc Teirlinck <teirllm@auburn.edu>
1653
1654 * window.c (Fwindow_minibuffer_p): Doc fix.
1655
1656 2004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
1657
1658 * editfns.c (Fformat): Make both passes accept the same set of flags.
1659
1660 2004-01-23 Kenichi Handa <handa@m17n.org>
1661
1662 * fns.c (Fmd5): If OBJECT is a buffer different from the current
1663 one, set buffer to OBJECT temporarily.
1664
1665 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
1666
1667 * keyboard.c (kbd_buffer_gcpro): Remove.
1668 (kbd_buffer_store_event, clear_event, Fdiscard_input)
1669 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
1670 Don't initialize and/or maintain the variable any more. It was made
1671 redundant by my commit of 2003-06-15.
1672
1673 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
1674
1675 2004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1676
1677 * lisp.h: Add undef DECL_ALIGN.
1678
1679 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
1680
1681 * process.c (wait_reading_process_input) [SYNC_INPUT]:
1682 Check interrupt_input_pending explicitly.
1683
1684 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
1685
1686 * keyboard.c (handle_async_input): New fun,
1687 extracted from input_available_signal.
1688 (input_available_signal, reinvoke_input_signal): Use it.
1689
1690 2004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
1691
1692 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
1693
1694 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
1695 manipulation macros for when tags are in the lower bits.
1696 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
1697 (DECL_ALIGN): New macro.
1698 (DEFUN): Use it.
1699
1700 * lisp.h [ENABLE_CHECKING]: Don't force union type.
1701
1702 * s/darwin.h (__attribute__): Remove outdated workaround.
1703
1704 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
1705
1706 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
1707 Don't check range of malloc address.
1708 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
1709
1710 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
1711
1712 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
1713
1714 2004-01-19 Kenichi Handa <handa@m17n.org>
1715
1716 * fontset.c (fontset_font_pattern): Fix previous change.
1717
1718 2004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
1719
1720 * xdisp.c (Voverflow_newline_into_fringe)
1721 (move_it_in_display_line_to, redisplay_internal)
1722 (update_window_fringes, redisplay_window, display_line, window):
1723 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
1724 that it compiles without a window-system.
1725 * dispnew.c (direct_output_for_insert, update_window): Likewise.
1726
1727 2004-01-16 Kim F. Storm <storm@cua.dk>
1728
1729 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
1730
1731 * buffer.c (init_buffer_once): Set buffer_defaults and
1732 buffer_local_flags for indicate_buffer_boundaries.
1733 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
1734 default- variable for it.
1735
1736 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
1737 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
1738 New members exact_window_width_line_p and cursor_in_fringe_p for
1739 overflowing newlines into right fringe.
1740 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
1741 and indicate_bottom_line_p for buffer boundaries and scrolling.
1742 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
1743 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
1744 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
1745 and HOLLOW_SQUARE_BITMAP.
1746 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
1747 Add prototypes.
1748
1749 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
1750 instead of related indicator fields.
1751 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
1752 (direct_output_for_insert): Handle exact width lines like
1753 contined lines. Call update_window_fringes.
1754 (update_window): Call update_window_fringes.
1755 (scrolling_window): Don't skip desired rows with changed bitmaps.
1756 Check if fringe bitmaps changes when assigning scrolled rows.
1757
1758 * xdisp.c (Voverflow_newline_into_fringe): New variable.
1759 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
1760 (move_it_in_display_line_to): Overflow newline into fringe for
1761 rows that are exactly as wide as the window.
1762 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
1763 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
1764 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
1765 (fringe_bitmaps): Add new bitmaps.
1766 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
1767 Select proper bitmap for cursor in fringe when appropriate.
1768 Handle alignment of bitmap to top or bottom of row.
1769 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
1770 done by update_window_fringes.
1771 (update_window_fringes, draw_window_fringes): New functions.
1772 (redisplay_internal): Call update_window_fringes in case only
1773 cursor row is updated.
1774 (redisplay_window): Call update_window_fringes.
1775 Explicitly call draw_window_fringes if redisplay was done using
1776 the current matrix or the overlay arrow is in the window.
1777 (try_window_reusing_current_matrix): Mark scrolled rows for
1778 fringe update (to update buffer-boundaries / scrolling icons).
1779 (find_last_unchanged_at_beg_row): Handle exact width lines line
1780 continued lines.
1781 (display_line): Overflow newline into fringe for rows that are
1782 exactly as wide as the window. Don't append space for newline
1783 in this case.
1784 (notice_overwritten_cursor): Explicitly clear cursor bitmap
1785 in fringe as if it had been overwritten.
1786 (erase_phys_cursor): Erase cursor bitmap in fringe.
1787 (syms_of_xdisp): Mark show-trailing-whitespace and
1788 void-text-area-pointer as user options.
1789 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
1790
1791 * xterm.c (x_update_window_end): Call draw_window_fringes.
1792 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
1793 in row instead of actually drawing fringe bitmaps.
1794 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
1795 (x_draw_window_cursor): Draw cursor in fringe.
1796
1797 * w32term.c (x_update_window_end): Call draw_window_fringes.
1798 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
1799 in row instead of actually drawing fringe bitmaps.
1800 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
1801 (w32_draw_window_cursor): Draw cursor in fringe.
1802
1803 * macterm.c (x_update_window_end): Call draw_window_fringes.
1804 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
1805 in row instead of actually drawing fringe bitmaps.
1806 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
1807 (mac_draw_window_cursor): Draw cursor in fringe.
1808
1809 2004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1810
1811 * xterm.c (handle_one_xevent): Don't handle characters that are part
1812 of an old style (XLookupString) compose sequence.
1813
1814 2004-01-15 Kenichi Handa <handa@m17n.org>
1815
1816 * search.c (Freplace_match): Use make_multibyte_string or
1817 make_unibyte_string according to the buffer multibyteness.
1818
1819 2004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
1820
1821 * alloc.c (struct interval_block, struct string_block)
1822 (struct symbol_block, struct marker_block, live_string_p)
1823 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
1824 Better preserve alignment for objects in blocks.
1825 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
1826
1827 * lread.c (defvar_per_buffer): Remove dead declaration.
1828
1829 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
1830 space size.
1831
1832 2004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1833
1834 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
1835 if a key press should pop down. Only pop down if a key is pressed
1836 outside the menu/dialog.
1837 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
1838 popup_get_selection.
1839 (create_and_show_dialog): Pass 1 for down_on_keypress to
1840 popup_get_selection.
1841
1842 2004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1843
1844 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
1845 BLOCK/UNBLOCK_INPUT.
1846
1847 2004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1848
1849 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
1850 specified.
1851
1852 2004-01-08 Kenichi Handa <handa@m17n.org>
1853
1854 * editfns.c (Fformat): Fix '&' to '&&'.
1855
1856 2004-01-08 Andreas Schwab <schwab@suse.de>
1857
1858 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
1859 size if PSEUDOVECTOR_FLAG is set.
1860
1861 2004-01-07 Kenichi Handa <handa@m17n.org>
1862
1863 * charset.c (Fdeclare_equiv_charset): Fix docstring.
1864
1865 * fontset.c (fontset_ref_via_base): Fix previous change.
1866
1867 2004-01-07 Kim F. Storm <storm@cua.dk>
1868
1869 * process.c (read_process_output): Only activate adaptive
1870 buffering if we read less than 256 bytes at a time.
1871
1872 2004-01-06 Kim F. Storm <storm@cua.dk>
1873
1874 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
1875 object and image object. Return glyph width and height.
1876 (mode_line_string, marginal_area_string): Ditto.
1877
1878 * dispextern.h (buffer_posn_from_coords, mode_line_string)
1879 (marginal_area_string): Fix prototypes.
1880
1881 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
1882 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
1883 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
1884
1885 * keyboard.c (make_lispy_position): Use modified mode_line_string,
1886 buffer_posn_from_coords, and marginal_area_string functions to
1887 include both string object and image object in the lispy position.
1888 Also add actual glyph width and height to position.
1889 (read_key_sequence): Use real buffer position from mouse
1890 event to find keymap property even when click is in marginal area.
1891
1892 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
1893 mode_line_string and marginal_area_string functions to handle
1894 both string object and image object properties.
1895
1896 2004-01-06 Andreas Schwab <schwab@suse.de>
1897
1898 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
1899 character.
1900
1901 2004-01-02 Andreas Schwab <schwab@suse.de>
1902
1903 * macterm.c (emacs_options, x_initialized, same_x_server):
1904 Remove unused (and duplicated) definitions.
1905
1906 2004-01-02 Kim F. Storm <storm@cua.dk>
1907
1908 * process.h (struct Lisp_Process): New members for adaptive read
1909 buffering: adaptive_read_buffering, read_output_delay, and
1910 read_output_skip.
1911
1912 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
1913 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
1914 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
1915 (process_output_delay_count, process_output_skip): New vars.
1916 (Vprocess_adaptive_read_buffering): New variable.
1917 (make_process): Initialize adaptive read buffering members.
1918 (Fstart_process): Set adaptive_read_buffering member.
1919 (deactivate_process): Cleanup adaptive read buffering.
1920 (wait_reading_process_input): Temporarily omit delayed
1921 subprocesses from the set of file descriptors to read from;
1922 adjust the select timeout if we skipped any subprocesses.
1923 (read_process_output): Increase adaptive read buffering delay if
1924 we read less than a full buffer; reduce delay when we read a
1925 full buffer.
1926 (send_process): Simplify using local Lisp_Process var.
1927 Reset adaptive read buffering delay after write.
1928 (init_process): Initialize process_output_delay_count and
1929 process_output_skip.
1930 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
1931
1932 2004-01-01 Jason Rumney <jasonr@gnu.org>
1933
1934 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
1935
1936 2003-12-30 Luc Teirlinck <teirllm@auburn.edu>
1937
1938 * print.c (Ferror_message_string): Add hyperlink in the docstring
1939 to the definition of `signal' in the Elisp manual.
1940 * eval.c (Fsignal): Ditto.
1941
1942 2003-12-29 James Clark <jjc@jclark.com> (tiny change)
1943
1944 * fns.c (internal_equal): Return t for two NaN arguments.
1945
1946 2003-12-29 Richard M. Stallman <rms@gnu.org>
1947
1948 * data.c (store_symval_forwarding): Handle setting
1949 default-fill-column, etc., by changing the value in
1950 buffers that use the default.
1951
1952 * minibuf.c (Fset_minibuffer_window): Doc fix.
1953
1954 * fileio.c (choose_write_coding_system): Ignore auto_saving
1955 if using the visited file for auto saves.
1956 (Fwrite_region): Don't update SAVE_MODIFF
1957 if auto-saving in visited file.
1958
1959 2003-12-29 Kenichi Handa <handa@m17n.org>
1960
1961 * dispextern.h (face_font_available_p): Extern it.
1962
1963 * fontset.c (Voverriding_fontspec_alist): New variable.
1964 (lookup_overriding_fontspec): New function.
1965 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
1966 (fontset_font_pattern): Likewise.
1967 (regulalize_fontname): New function.
1968 (Fset_fontset_font): Call regulalize_fontname.
1969 (Fset_overriding_fontspec_internal): New function.
1970 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
1971 Defsubr Sset_overriding_fontspec_internal.
1972
1973 * xfaces.c (face_font_available_p): New function.
1974
1975 2003-12-28 Richard M. Stallman <rms@gnu.org>
1976
1977 * buffer.c (Fother_buffer): Don't crash if BUF is nil
1978 or if its name is nil.
1979
1980 * buffer.c (Fkill_buffer): Don't delete auto-save file
1981 if it's the same as the visited file.
1982
1983 2003-12-28 Luc Teirlinck <teirllm@auburn.edu>
1984
1985 * coding.c (Fcheck_coding_system): Doc fix.
1986
1987 2003-12-28 Kim F. Storm <storm@cua.dk>
1988
1989 * Makefile.in (eval.o): Depend on dispextern.h.
1990
1991 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
1992 image glyph using image's ascent.
1993 (mode_line_string): Return image glyph as object clicked on.
1994 Adjust y0 for image glyph using image's ascent.
1995
1996 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
1997 (struct glyph): New members, ascent and descent. Used to save
1998 this glyph's ascent and descent, instead of having.
1999 (struct glyph): Declare member face_id using FACE_ID_BITS.
2000 (find_hot_spot): Add prototype.
2001
2002 * keyboard.c (Qimage): Remove extern (now in lisp.h).
2003 (QCmap): Declare extern.
2004 (make_lispy_position): When position is inside image hot-spot,
2005 use hot-spot element's id as posn element.
2006
2007 * lisp.h (IMAGEP): New macro to test for image object type.
2008 (Qimage): Declare extern.
2009
2010 * macfns.c (Qimage): Remove extern (now in lisp.h).
2011 (valid_image_p, parse_image_spec): Use IMAGEP macro.
2012
2013 * macterm.c (Qface, Qmouse_face): Remove unused externs.
2014
2015 * w32fns.c (Qimage): Remove extern (now in lisp.h).
2016 (valid_image_p, parse_image_spec): Use IMAGEP macro.
2017
2018 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
2019
2020 * w32term.c (Qface, Qmouse_face): Remove unused externs.
2021
2022 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
2023 pointer types.
2024 (Qrelative_width, Qalign_to): Remove unused variables.
2025 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
2026 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
2027 image maps.
2028 (x_y_to_hpos_vpos): Return glyph relative coordinates through
2029 new dx and dy args.
2030 Remove buffer_only_p arg (always 0). Simplify code accordingly.
2031 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
2032 than row's ascent and height, to get sensible height on tall rows.
2033 (build_desired_tool_bar_string): Remove Qimage extern.
2034 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
2035 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
2036 image glyph is alone on the last line.
2037 (append_glyph, append_composite_glyph, produce_image_glyph)
2038 (append_stretch_glyph): Set glyph's ascent and descent.
2039 (on_hot_spot_p): New function to check if position is inside an
2040 rectangular, circular, or polygon-shaped image hot-spot,
2041 (find_hot_spot): New function to search for image hot-spot.
2042 (Flookup_image_map): New defun to search for image hot-spot.
2043 (define_frame_cursor1): New aux function to determine frame pointer.
2044 (note_mode_line_or_margin_highlight, note_mouse_highlight):
2045 Handle `pointer' text property and :pointer image property to
2046 control frame pointer shape. Detect image hot-spots for pointer
2047 and help_echo properties. Use define_frame_cursor1.
2048 (note_mouse_highlight): Use Vvoid_text_area_pointer.
2049 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
2050 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
2051
2052 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
2053
2054 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
2055 (Qimage): Remove extern (now in lisp.h).
2056 (valid_image_p, parse_image_spec): Use IMAGEP macro.
2057
2058 * xmenu.c (show_help_event): Remove unused code.
2059
2060 * xterm.c (Qface, Qmouse_face): Remove unused externs.
2061 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
2062 row's ascent and descent, to get a sensible height on tall rows.
2063
2064 2003-12-25 Luc Teirlinck <teirllm@auburn.edu>
2065
2066 * minibuf.c (Fcompleting_read): Undo previous change.
2067
2068 2003-12-25 Lars Hansen <larsh@math.ku.dk>
2069
2070 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
2071 Arguments GCPRO'ed in call to file name handler.
2072
2073 2003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
2074
2075 * termcap.c (tgetst1): Scan for "%pN"; if all
2076 N are continuous in [1,9], remove all "%pN".
2077
2078 2003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2079
2080 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
2081
2082 * xfaces.c (lface_fully_specified_p): Take into account that
2083 MAC OS always have unspecified stipple.
2084
2085 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
2086
2087 * tparam.c (tparam1): Add handling for `%pN', which
2088 means use param N for the next substitution.
2089
2090 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
2091
2092 * xfaces.c (Fcolor_gray_p): Fix omission bug:
2093 In case `frame' is nil, consult the selected frame.
2094 (Fcolor_supported_p): Likewise.
2095
2096 2003-12-23 Luc Teirlinck <teirllm@auburn.edu>
2097
2098 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
2099 Doc fixes.
2100
2101 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
2102 and an integer. Adapt the introductory comment accordingly.
2103 (Fread_from_minibuffer): Delete code moved into read_minibuf.
2104 Doc fix.
2105 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
2106 read_minibuf.
2107 (Fcompleting_read): Delete code moved into read_minibuf.
2108 (Ftest_completion): Make it handle obarrays and hash tables correctly.
2109
2110 2003-12-03 Kenichi Handa <handa@m17n.org>
2111
2112 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
2113 encoding sequence.
2114
2115 2003-12-01 Kenichi Handa <handa@m17n.org>
2116
2117 * composite.c (syms_of_composite): Don't make the compostion hash
2118 table week.
2119
2120 2003-11-30 Luc Teirlinck <teirllm@auburn.edu>
2121
2122 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
2123 * textprop.c (Fget_char_property_and_overlay): New function.
2124 (syms_of_textprop): Defsubr it.
2125
2126 2003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2127
2128 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
2129 to compile on terminal configuration.
2130
2131 * fileio.c (Fread_file_name): Check use_file_dialog also before
2132 calling Fx_file_dialog.
2133
2134 * fns.c: use_file_dialog: New variable.
2135 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
2136
2137 2003-11-29 Kim F. Storm <storm@cua.dk>
2138
2139 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
2140 (syms_of_msdos): Don't intern and staticpro them.
2141
2142 2003-11-27 Kim F. Storm <storm@cua.dk>
2143
2144 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
2145 coordinates relative to glyph at posn. If glyph is an image,
2146 return that as object at posn. Callers changed.
2147 (mode_line_string, marginal_area_string): Calculate and return
2148 pixel coordinates relative to glyph. Callers changed.
2149
2150 * dispextern.h (buffer_posn_from_coords, mode_line_string)
2151 (marginal_area_string): Fix prototypes.
2152 (window_box_left_offset, window_box_right_offset): Add prototypes.
2153
2154 * frame.h (get_specified_cursor_type, get_window_cursor_type):
2155 Remove prototypes.
2156
2157 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
2158
2159 * keyboard.c (make_lispy_position): Add x and y coordinates
2160 relative to the current glyph as 7th element of position.
2161 If glyph is an image, return it in the object element.
2162 (read_key_sequence): Skip checks for keymap property in cases
2163 where POSN_STRING is not a string (e.g. an image).
2164
2165 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
2166 (Vshow_text_cursor_in_void): New variable.
2167 (glyph_to_pixel_coords): Don't use negative hpos.
2168 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
2169 (append_stretch_glyph): Change ascent arg to be actual value
2170 in pixels rather than ratio to height. Callers changed.
2171 (calc_pixel_width_or_height): New aux function, implementing
2172 pixel based artihmetic for glyph widths and heights.
2173 (produce_stretch_glyph): Use calc_pixel_width_or_height for
2174 :width, :height, :align-to, and :ascent, thus allowing these to
2175 be specified in pixels as well as multiples of characters.
2176 Don't produce stretch glyphs with zero width or height.
2177 (get_specified_cursor_type): Declare static.
2178 (get_window_cursor_type): Declare static. Add glyph arg to be
2179 able to know when cursor is on an image; always substitute
2180 hollow-box cursor for filled-box cursor on images, to avoid
2181 negative images and flicker when blinking the cursor.
2182 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
2183 (note_mode_line_or_margin_highlight): Use non-text cursor rather
2184 than vertical scroll-bar cursor in display margins.
2185 (note_mouse_highlight): Use non-text cursor rather than text
2186 cursor in fringes and over images in the text area.
2187 Use non-text cursor when mouse pointer is outside editable text,
2188 i.e. in the void after end-of-line or end-of-buffer; this was
2189 already done for W32, but is now standard for all systems --
2190 user can toggle show-text-cursor-in-void to get old behaviour.
2191 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
2192 Vdisplay_pixels_per_inch.
2193
2194 2003-11-25 Andreas Schwab <schwab@suse.de>
2195
2196 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
2197 EMACS_INT to not lose bits.
2198 (Ffillarray): Don't set bits beyond the size of a bool vector.
2199
2200 2003-11-25 Kim F. Storm <storm@cua.dk>
2201
2202 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
2203 define this defun on systems that cannot use stderr as lvalue.
2204
2205 2003-11-24 Gerd Moellmann <gerd@gnu.org>
2206
2207 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
2208 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
2209 ld's default is incompatible with unexec.
2210
2211 2003-11-23 Kim F. Storm <storm@cua.dk>
2212
2213 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
2214 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
2215 (Fforce_window_update): New defun.
2216 (syms_of_window): Defsubr it.
2217 (Fset_window_margins, Fset_window_fringes): Doc fix.
2218
2219 * print.c (Fredirect_debugging_output): New defun.
2220 (syms_of_print): Defsubr it.
2221
2222 2003-11-22 Luc Teirlinck <teirllm@auburn.edu>
2223
2224 * fns.c (Fset_char_table_parent): Doc fix.
2225
2226 2003-11-22 Kim F. Storm <storm@cua.dk>
2227
2228 * dispnew.c (buffer_posn_from_coords): Return actual row/column
2229 for glyph clicked on, rather than (unused) pixel positions.
2230 (mode_line_string, marginal_area_string): Change X and Y args to
2231 pointers for returning actual row/column for glyph clicked on.
2232 Simplify and optimize loops.
2233
2234 * dispextern.h (mode_line_string, marginal_area_string):
2235 Update prototypes.
2236
2237 * keyboard.c (make_lispy_position): New function for generating
2238 mouse click positions from frame and pixel coordinates.
2239 Enhanced to return buffer position and actual row/column for
2240 events outside the text area using updated mode_line_string and
2241 marginal_area_string functions.
2242 Return left-fringe and right-fringe clicks as such, rather than
2243 clicks in text area.
2244 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
2245 pixel_to_glyph_coords, as we never use the results.
2246 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
2247 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
2248 Eliminate unused code in WHEEL_EVENT handling.
2249 (make_lispy_movement): Use make_lispy_position.
2250
2251 * window.c (coordinates_in_window): Remove redundant tests.
2252 Fix returned X pixel value for left-margin.
2253
2254 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
2255 mode_line_string and marginal_area_string parameters.
2256
2257 2003-11-22 Lars Hansen <larsh@math.ku.dk>
2258
2259 * w32.c (struct the_group, getgrgid): Add.
2260 * mac.c (struct my_group, getgrgid): Add.
2261
2262 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
2263
2264 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
2265
2266 2003-11-21 Lars Hansen <larsh@math.ku.dk>
2267
2268 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
2269 include in call to file name handler. Optionally translate numeric
2270 UID and GID to strings. Update docstring.
2271 (directory_files_internal): Add parameter ID-FORMAT.
2272 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
2273 include in call to file name handler and call to
2274 directory_files_internal. Update Docstring.
2275 (Fdirectory_files): Add dummy parameter in call to
2276 directory_files_internal.
2277 * lisp.h (Qinteger): Add.
2278 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
2279 (Ffile_attributes): Add parameter.
2280 * data.c (Qinteger): Export.
2281
2282 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
2283
2284 * fns.c (Freverse, Fnreverse): Doc fixes.
2285
2286 2003-11-19 Kim F. Storm <storm@cua.dk>
2287
2288 * xdisp.c (init_iterator): Initialize it->start to position
2289 before reseating (in case start position is invisible).
2290 (init_to_row_start): Set it->start to row-start.
2291 (redisplay_window): Accept optional_new_start if start position
2292 is invisible (in which case IT_CHARPOS overshoots PT).
2293 (display_line): Setup row->start from it->start (rather than
2294 it->current which is wrong if first char on line is invisible).
2295 When done, reseat it->start to it->current (= start of next row).
2296 (expose_area): Fix exposure of text area when first char (e.g. TAB)
2297 is only partially visible.
2298
2299 * dispextern.h (struct it): New member start.
2300
2301 2003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
2302
2303 * alloc.c (make_float, Fcons): Clear the markbit at init time.
2304 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
2305 of block_index outside of the macro call.
2306 (Fgarbage_collect): Remove null code.
2307
2308 * m/amdx86-64.h: Don't redefine XPNTR.
2309
2310 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
2311 of VALMASK.
2312
2313 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
2314 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
2315 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
2316
2317 * lisp.h (VALMASK): Only define for non-union type.
2318 (MARKBIT): Remove.
2319 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
2320 (XTYPE): Define unconditionally.
2321 (XSETTYPE): Remove one more remnant.
2322 (EQ): Define differently for the union and non-union cases.
2323 (INTMASK): New bit mask.
2324 (struct Lisp_Marker): Move down to prepare for upcoming patch.
2325 (GC_EQ): Delegate to EQ.
2326
2327 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
2328
2329 2003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2330
2331 * xterm.c (x_window_to_scroll_bar): Move check of display to
2332 where window_id is compared.
2333
2334 2003-11-17 Kim F. Storm <storm@cua.dk>
2335
2336 * dispextern.h (struct it): New member first_vpos.
2337
2338 * xdisp.c (start_display): Set it->first_vpos.
2339 (try_window_id): Use first_vpos to start display in first _text_
2340 line if no reusable lines at start of window with header line.
2341
2342 2003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2343
2344 * w32fns.c (XPutPixel):
2345 * w32bdf.c (w32_init_bdf_font):
2346 * sunfns.c (sel_read):
2347 * process.c (Fmake_network_process):
2348 * frame.c (store_frame_param):
2349 * fontset.c (Fset_fontset_font):
2350 * emacs.c (shut_down_emacs):
2351 * ccl.c (ccl_driver): Remove period at end of error message.
2352
2353 * config.in: Regenerate.
2354
2355 * xfns.c (x_window_to_frame, x_any_window_to_frame)
2356 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
2357 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
2358 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
2359 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
2360
2361 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
2362
2363 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
2364 (XTmouse_position, handle_one_xevent): Pass Display* to
2365 x_window_to_scroll_bar.
2366 (x_window_to_scroll_bar): Take a Display* argument.
2367 Check that display for frame is equal to Display* argument.
2368 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
2369 x_display_info_for_display instead. Use Display in xev instead
2370 of GDK_DISPLAY.
2371 (x_dispatch_event): Call x_display_info_for_display.
2372 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
2373 (x_connection_closed): Call xg_display_close for GTK.
2374 (x_term_init): Call xg_display_open for additional displays.
2375 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
2376 for GTK.
2377
2378 * xmenu.c (single_menu_item, mouse_position_for_popup)
2379 (x_activate_menubar): Formatting adjustments.
2380
2381 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
2382 adjustments.
2383
2384 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
2385 (xg_display_close, xg_create_default_cursor)
2386 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
2387 handling.
2388 (xg_left_ptr_cursor): Remove.
2389 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
2390 cursor here.
2391 (xg_win_to_widget): Take Display* argument, call
2392 gdk_xid_table_lookup_for_display.
2393 (xg_create_frame_widgets, xg_get_file_name, create_menus)
2394 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
2395 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
2396 in FRAME_X_DISPLAY_INFO.
2397 (xg_get_scroll_id_for_window): Take Display* argument.
2398 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
2399 (xg_initialize): Remove xg_left_ptr_cursor.
2400
2401 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
2402 Display* argument also. Declare xg_display_open,
2403 xg_display_close, xg_create_default_cursor.
2404
2405 2003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2406
2407 * xterm.c (x_detect_focus_change): Do not change focus frame for
2408 Enter/LeaveNotify if the current focus frame has explicit focus.
2409
2410 2003-11-14 Kim F. Storm <storm@cua.dk>
2411
2412 * dispnew.c (update_text_area): Fix redisplay error when hscroll
2413 is active and first glyph is only partially visible.
2414
2415 2003-11-13 Kenichi Handa <handa@m17n.org>
2416
2417 * xdisp.c (select_frame_for_redisplay): New function.
2418 (redisplay_internal): Record also selected_frame for
2419 unwind_redisplay. Call select_frame_for_redisplay before
2420 redrawing each frame.
2421 (unwind_redisplay): Argument changed to a cons.
2422
2423 2003-11-12 Luc Teirlinck <teirllm@auburn.edu>
2424
2425 * fns.c (Fstring_to_multibyte): Doc fix.
2426
2427 2003-11-11 Kenichi Handa <handa@m17n.org>
2428
2429 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
2430
2431 2003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2432
2433 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
2434 program specified positions.
2435
2436 2003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2437
2438 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
2439
2440 2003-11-08 Kenichi Handa <handa@m17n.org>
2441
2442 * Makefile.in (lisp): Add kannada.el.
2443 (shortlisp): Likewise.
2444
2445 2003-11-07 Kenichi Handa <handa@m17n.org>
2446
2447 * coding.c (coding_allocate_composition_data):
2448 Reset coding->composing to COMPOSITION_NO.
2449 (coding_restore_composition): Detect invalid composition data.
2450 Give Fstring and Fvector a Lispy integer, not C int.
2451
2452 2003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
2453
2454 * floatfns.c (Flogb): Don't use VALMASK.
2455
2456 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
2457 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
2458
2459 * lisp.h (XINT): Move the cast to clarify what is going on.
2460 (GCTYPEMASK, XSETTYPE): Remove.
2461 (XGCTYPE): Make it an alias of XTYPE.
2462
2463 2003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2464
2465 * xterm.c (x_term_init): Fix formatting.
2466
2467 2003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2468
2469 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
2470 and xg_did_tearoff.
2471
2472 * gtkutil.c: Remove variable xg_did_tearoff.
2473 (xg_have_tear_offs): New function.
2474 (tearoff_remove): Just decrease xg_detached_menus.
2475 (tearoff_activate): Increase xg_detached_menus and call
2476 tearoff_remove when tearoff is removed.
2477 (xg_keep_popup): Remove function.
2478 (create_menus): Give add_tearoff_p as argument to recursive
2479 call to create_menus.
2480 (xg_create_widget): Use variables instead of multiple
2481 strcmp. Tell create_menus to create tear off only for
2482 menu bar menus.
2483 (xg_update_menubar): Change title for a detached menu also.
2484 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
2485 of deep_p.
2486 (xg_initialize): Initialize xg_detached_menus, remove
2487 initialization of xg_did_tearoff.
2488
2489 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
2490 xg_have_tear_offs returns non-zero.
2491 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
2492 call to xg_keep_popup.
2493
2494 2003-11-01 Andrew Choi <akochoi@shaw.ca>
2495
2496 * macterm.c (XTread_socket): Handle menubar selection and grow
2497 window only for mouseDown events.
2498
2499 2003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2500
2501 * xterm.c (x_term_init): For GTK part, increase x_initialized
2502 to check for more than one display. Use error instead of return 0.
2503
2504 2003-10-31 Andrew Choi <akochoi@shaw.ca>
2505
2506 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
2507 (copy_dysymtab): Call it.
2508
2509 2003-10-31 Luc Teirlinck <teirllm@auburn.edu>
2510
2511 * eval.c (Fdefvaralias): Doc fix.
2512
2513 2003-10-26 Luc Teirlinck <teirllm@auburn.edu>
2514
2515 * data.c (Fsetplist): Doc fix.
2516
2517 2003-10-14 Lute Kamstra <lute@gnu.org>
2518
2519 * window.c (Fset_window_fringes): Clarify docstring.
2520
2521 2003-10-14 Kim F. Storm <storm@cua.dk>
2522
2523 * window.c (Fset_window_margins): Simplify arg checking.
2524
2525 2003-10-13 Richard M. Stallman <rms@gnu.org>
2526
2527 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
2528 (print_partial_compiled_pattern): Replace assert with a printout.
2529 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
2530
2531 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
2532
2533 * window.c (Fset_window_margins): Allow only integers as args.
2534 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
2535 Doc fixes.
2536
2537 2003-10-13 Lute Kamstra <lute@gnu.org>
2538
2539 * window.c (Fset_window_fringes): Elaborate docstring.
2540
2541 2003-10-12 Andrew Choi <akochoi@shaw.ca>
2542
2543 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
2544
2545 * s/darwin.h (GC_MARK_STACK): Define.
2546
2547 2003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2548
2549 * window.c (shrink_windows): New function.
2550 (size_window): Call shrink_windows to calculate window sizes when
2551 shrinking frame with more than one window.
2552
2553 2003-10-12 Kim F. Storm <storm@cua.dk>
2554
2555 * xdisp.c (compute_fringe_widths): Doc fix.
2556
2557 2003-10-08 Kenichi Handa <handa@m17n.org>
2558
2559 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
2560
2561 2003-10-07 Kenichi Handa <handa@m17n.org>
2562
2563 * coding.c (Qcoding_system_define_form): New variable.
2564 (syms_of_coding): Intern and staticpro it.
2565 (Fcheck_coding_system): Try to autoload the definition of
2566 CODING-SYSTEM.
2567
2568 2003-10-05 Luc Teirlinck <teirllm@auburn.edu>
2569
2570 * fns.c (Frequire): Doc fix.
2571
2572 2003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2573
2574 * xfns.c (Fx_send_client_event): New function as a base for
2575 manipulating extended window manager hints.
2576 (Fx_send_client_event): Remove unused variable s.
2577
2578 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
2579 that function is removed.
2580
2581 * xterm.c (x_set_offset): Use move_offset_left/top instead of
2582 x/y_pixels_outer_diff.
2583 (x_check_expected_move): Calculate move_offset_left/top.
2584
2585 * xterm.h (struct x_output): New members: move_offset_top/left.
2586
2587 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
2588 call x_set_offset directly.
2589
2590 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
2591
2592 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
2593
2594 * xterm.c (x_delete_display): Free font names and font_encoder
2595 in dpyinfo->font_table.
2596
2597 * xfns.c (Fx_close_connection): Only call XFreeFont here.
2598 Move xfree of font names to x_delete_display.
2599
2600 * xterm.h (struct x_display_info): New member, wm_type.
2601 (struct x_output): New members, expected_top/left and
2602 check_expected_move.
2603
2604 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
2605 is received.
2606 (handle_one_xevent): Rename x_check_expected_move from
2607 x_check_fullscreen_move.
2608 (x_set_offset): Only add WM decoration sizes to modified_top/left
2609 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
2610 (x_check_expected_move): Rename from x_check_fullscreen_move.
2611 Removed fullscreen specific code. Use check_expected_move,
2612 expected_left/top instead. Also, set wm_type.
2613 (x_term_init): Initialize wm_type to unknown.
2614
2615 * frame.c (x_fullscreen_move): Remove addition of WM decoration
2616 sizes to move_x/y.
2617
2618 2003-10-03 Kenichi Handa <handa@m17n.org>
2619
2620 * macterm.c (x_load_font): Clear all members of FONTP before start
2621 filling them.
2622
2623 2003-10-02 Kenichi Handa <handa@m17n.org>
2624
2625 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
2626 before calling find_ccl_program_func. Call find_ccl_program_func
2627 only when fontp->font_encoder is not NULL.
2628
2629 * xterm.c (x_load_font): Clear all members of FONTP before start
2630 filling them.
2631
2632 2003-10-03 John Paul Wallington <jpw@gnu.org>
2633
2634 * keymap.c (map_keymap): Don't abort when binding is a vector.
2635
2636 2003-10-02 Jason Rumney <jasonr@gnu.org>
2637
2638 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
2639 Sync dependencies with Makefile.in.
2640 (alloca.o): Remove.
2641
2642 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
2643 filling them.
2644
2645 * w32bdf.c (w32_load_bdf_font): Likewise.
2646
2647 2003-09-30 Richard M. Stallman <rms@gnu.org>
2648
2649 * term.c (set_tty_color_mode): Calculate current_mode_spec
2650 regardless of value of VAL.
2651
2652 * intervals.c (graft_intervals_into_buffer):
2653 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
2654 Handle over_used when splitting UNDER.
2655
2656 2003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2657
2658 * regex.c (regex_compile): Free the stack when returning from function.
2659
2660 2003-09-28 Kenichi Handa <handa@m17n.org>
2661
2662 * fontset.c (Finternal_char_font): Change return value to
2663 cons (FONT-NAME . GLYPH-CODE).
2664
2665 2003-09-28 Eli Zaretskii <eliz@gnu.org>
2666
2667 * term.c (tty_setup_colors): Treat any negative argument as -1.
2668
2669 2003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
2670
2671 * process.c (send_process): Delete unused temp_buf.
2672
2673 2003-09-26 Dave Love <fx@gnu.org>
2674
2675 * xterm.c (x_bitmap_mask): Declare.
2676
2677 2003-09-25 Dave Love <fx@gnu.org>
2678
2679 * Makefile.in (fns.o): Depend on md5.h.
2680
2681 2003-09-25 Kim F. Storm <storm@cua.dk>
2682
2683 * window.c (set_window_buffer): Fix redisplay problems when
2684 switching between buffers with different display margin widths.
2685
2686 2003-09-23 Kim F. Storm <storm@cua.dk>
2687
2688 * process.c (set_socket_option): Fix :bindtodevice option.
2689 (Fset_network_process_option): Update process contact list when
2690 setting option succeeds.
2691 (Fmake_network_process): Doc fix.
2692
2693 2003-09-23 Dave Love <fx@gnu.org>
2694
2695 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
2696
2697 2003-09-22 Eli Zaretskii <eliz@gnu.org>
2698
2699 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
2700 color mode is an integer number (it could be -1).
2701
2702 2003-09-22 Richard M. Stallman <rms@gnu.org>
2703
2704 * intervals.c (graft_intervals_into_buffer): Correct the main loop
2705 in the case where OVER is longer than UNDER.
2706
2707 2003-09-22 Masatake YAMATO <jet@gyve.org>
2708
2709 * window.c (Fset_window_scroll_bars): Validate the value of
2710 `vertical_type'.
2711
2712 2003-09-21 Kim F. Storm <storm@cua.dk>
2713
2714 * frame.c (Vdefault_frame_scroll_bars): New variable.
2715 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
2716 (syms_of_frame): DEFVAR_LISP it, and initialize according to
2717 window-system default scroll bar position.
2718
2719 * window.c (Fwindow_scroll_bars): Doc fix.
2720
2721 2003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2722
2723 * xterm.c (x_set_offset): Take window manager decorations into account.
2724
2725 2003-09-19 Richard M. Stallman <rms@gnu.org>
2726
2727 * atimer.h: Don't include lisp.h.
2728 (P_): Define it here (as well as elsewhere).
2729
2730 * print.c (Fprin1_to_string): Move the PRINTPREPARE
2731 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
2732
2733 * data.c (Fvariable_binding_locus): New function.
2734 (syms_of_data): defsubr it.
2735 (Flocal_variable_p): Delete duplicate call to indirect_variable.
2736
2737 2003-09-18 Dave Love <fx@gnu.org>
2738
2739 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
2740
2741 * process.c (Fnetwork_interface_info): Fix type error.
2742 (Fnetwork_interface_list): Doc fix.
2743 (read_process_output, read_process_output): Delete unused var.
2744
2745 2003-09-17 Kim F. Storm <storm@cua.dk>
2746
2747 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
2748 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
2749 (Fnetwork_interface_info): Check that ifreq struct has required
2750 fields before accessing them; this requires that those fields are
2751 defined as macros, which may be too restrictive on some platforms,
2752 but it is better than failing on other platforms.
2753 (syms_of_process): Only defsubr above fns when included.
2754
2755 2003-09-17 Dave Love <fx@gnu.org>
2756
2757 * unexalpha.c: Don't include varargs.h.
2758
2759 2003-09-17 Kim F. Storm <storm@cua.dk>
2760
2761 * process.c (Fset_process_sentinel): Add sentinel to childp plist
2762 for network process.
2763 (socket_options): Add `:' prefix to option names. Add optbit field.
2764 (set_socket_option): Remove no_error arg and special handling of s < 0.
2765 Return 1<<optbit for known option, 0 for unknown.
2766 Do not interpret 0 as false for boolean option (only nil).
2767 Pass failed option and value to report_file_error.
2768 (Fset_network_process_options): Replace by Fset_network_process_option.
2769 (Fset_network_process_option): New function to set just one option.
2770 (Fmake_network_process): Allow :coding arg to be a cons.
2771 Allow :server arg to be an integer specifying backlog size.
2772 Remove :options arg, and allow options to be specified directly
2773 as :KEY, VALUE pairs. Parse these options before binding socket.
2774 As before, :reuseaddr t is default for a server process, but this
2775 can now be disabled by specifying :reuseaddr nil.
2776 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
2777 (init_process): Availability of network options is now checked with
2778 simpler syntax (featurep 'make-network-process :OPTION); use loop to
2779 setup features.
2780 (syms_of_process): Fix defsubr's for the replaced functions.
2781
2782 2003-09-16 Dave Love <fx@gnu.org>
2783
2784 * Makefile.in: Depend on coding.h.
2785
2786 2003-09-14 Kim F. Storm <storm@cua.dk>
2787
2788 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
2789 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
2790 (syms_of_process): Defsubr them.
2791
2792 * config.in: Regenerate.
2793
2794 2003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
2795
2796 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
2797 * m/news-r6.h (XUNMARK): Remove.
2798 * m/mips.h (XUNMARK): Remove.
2799 * m/mips-siemens.h (XUNMARK): Remove.
2800 * m/iris4d.h (XUNMARK): Remove.
2801 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
2802
2803 2003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
2804
2805 * lisp.h (VALBITS): Don't remove 1 for the markbit.
2806 (union Lisp_Object): Use unsigned int for types. Remove markbit.
2807 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
2808 (XTYPE): Use unsigned right-shift.
2809 (XMARKBIT, XMARK, XUNMARK): Remove.
2810
2811 * alloc.c (init_intervals, init_symbol, init_marker):
2812 Don't preallocate anything.
2813 (Fgarbage_collect, mark_object): Ignore the markbit.
2814
2815 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
2816
2817 2003-09-08 Lute Kamstra <lute@gnu.org>
2818
2819 * xdisp.c (pint2hrstr): New function.
2820 (decode_mode_spec): Add `%i' and `%I' specs.
2821 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
2822 for `mode-line-format'.
2823
2824 2003-09-07 Andreas Schwab <schwab@suse.de>
2825
2826 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
2827 avoid warning.
2828
2829 2003-09-07 Eli Zaretskii <eliz@gnu.org>
2830
2831 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2832
2833 2003-09-03 Kim F. Storm <storm@cua.dk>
2834
2835 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
2836 change (superseded by 2002-08-30 change); the default blink-off
2837 cursor is now again "no cursor".
2838
2839 2003-09-01 Jason Rumney <jasonr@gnu.org>
2840
2841 * makefile.w32-in (alloca.o): Remove.
2842 (coding.o): Depend on intervals.h
2843 (emacs.o, bytecode.o): Depend on window.h
2844
2845 2003-09-01 Dave Love <fx@gnu.org>
2846
2847 * Makefile.in (alloca.o): Remove commands.
2848 (coding.o): Depend on intervals.h composite.h window.h.
2849 (emacs.o): Depend on window.h keyboard.h keymap.h.
2850 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
2851 (bytecode.o): Depend on window.h.
2852
2853 2003-08-31 Jason Rumney <jasonr@gnu.org>
2854
2855 * w32term.c (w32_per_char_metric): Allow cached metrics to be
2856 returned even when font_type is unknown.
2857
2858 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
2859
2860 2003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2861
2862 * xterm.c (x_term_init): Initialize new fields in x_display_info.
2863
2864 * xterm.h (struct x_display_info): Add red/green/blue_bits and
2865 *_offset.
2866
2867 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
2868 calculate pixel value.
2869
2870 2003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
2871
2872 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
2873 Don't tell redisplay display is accurate when it's actually been
2874 paused for pending input.
2875
2876 2003-08-29 Richard M. Stallman <rms@gnu.org>
2877
2878 * dispnew.c (adjust_glyph_matrix): Call window_box
2879 whenever W is nonzero.
2880
2881 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
2882 (Fkill_local_variable, Fmake_variable_frame_local)
2883 (Flocal_variable_p, Flocal_variable_if_set_p):
2884 Use indirect_variable to trace thru variable aliases.
2885
2886 * config.in: Updated.
2887
2888 * callint.c (Fcall_interactively): Save and restore
2889 Vthis_command, Vthis_original_command, real_this_command,
2890 and current_kboard->Vlast_command.
2891
2892 * abbrev.c (Fexpand_abbrev): Insert before deleting.
2893
2894 2003-08-29 Gerd Moellmann <gerd@gnu.org>
2895
2896 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
2897
2898 2003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
2899
2900 * coding.c (decode_coding_iso2022): Initialize local variable c2.
2901 (decode_coding_sjis_big5): Likewise.
2902
2903 2003-08-27 Jason Rumney <jasonr@gnu.org>
2904
2905 * w32.c (sys_pipe): Protect against file descriptor overflow.
2906
2907 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
2908
2909 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
2910
2911 2003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
2912
2913 * xfns.c (Vgtk_version_string): New variable.
2914 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
2915
2916 2003-08-24 Eli Zaretskii <eliz@gnu.org>
2917
2918 * term.c (term_init): Remove `const' from buffer_size's declaration.
2919
2920 * Makefile.in (msdos.o): Depend on intervals.h.
2921
2922 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
2923
2924 2003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2925
2926 * xterm.h (struct x_display_info): New fields: client_leader_window
2927 and Xatom_wm_client_leader.
2928
2929 * xterm.c (x_initialize): Move call to x_session_initialize to ...
2930 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
2931
2932 * xsmfns.c (create_client_leader_window): New function.
2933 (x_session_initialize): Call create_client_leader_window, take
2934 dpyinfo as argument.
2935
2936 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
2937
2938 * Makefile.in (xsmfns.o): Add more depenedencies.
2939
2940 2003-08-21 Dave Love <fx@gnu.org>
2941
2942 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
2943
2944 2003-08-21 Kenichi Handa <handa@m17n.org>
2945
2946 * term.c (term_init): Fix previous change; don't rely on the
2947 length of `buffer' if TERMINFO is defined.
2948
2949 2003-08-20 Dave Love <fx@gnu.org>
2950
2951 * atimer.h: Include lisp.h.
2952
2953 * lisp.h (EMACS_LISP_H): New.
2954 (popup_activated_flag): Don't declare.
2955
2956 * alloca.c: Some merging with gnulib. Change logic and doc
2957 concerning (x)malloc/(x)free -- no longer Emacs-specific.
2958 [DO_BLOCK_INPUT]: Don't include lisp.h.
2959 (xmalloc, xfree): Declare.
2960 (malloc): Don't declare.
2961
2962 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
2963 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
2964 atimer.h, blockinput.h.
2965
2966 * alloc.c (lisp_align_malloc): Change type of `aligned'.
2967
2968 * alloca.s: Removed.
2969
2970 2003-08-19 Gerd Moellmann <gerd@gnu.org>
2971
2972 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
2973 use -lncurses.
2974
2975 * term.c (term_init): Use a buffer of size 4096 for tgetent since
2976 FreeBSD returns something longer than 2044. Abort if the end of
2977 the buffer is overwritten.
2978
2979 2003-08-19 Miles Bader <miles@gnu.org>
2980
2981 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
2982
2983 2003-08-19 Gerd Moellmann <gerd@gnu.org>
2984
2985 * alloc.c (lisp_align_malloc): Check for memory full when
2986 allocating ablocks, which also avoids freeing a pointer into an
2987 ablocks structure.
2988
2989 * puresize.h (BASE_PURESIZE): Increase to 1100000.
2990
2991 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2992
2993 2003-08-16 Richard M. Stallman <rms@gnu.org>
2994
2995 * editfns.c (Fencode_time): Doc fix.
2996
2997 2003-08-16 David Ponce <david@dponce.com>
2998
2999 * fileio.c (Fwrite_region): Fix conditional expression to issue
3000 the right message.
3001
3002 2003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
3003
3004 * syntax.c (Fforward_word): Argument changed to optional.
3005 Set default value to 1.
3006
3007 2003-08-15 Kenichi Handa <handa@m17n.org>
3008
3009 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
3010 what autoscaled.
3011 (best_matching_font): Once we find a better scalable font, set
3012 non_scalable_has_exact_height_p to 1.
3013 (try_font_list): Call try_alternative_families to try any family
3014 with the given registry.
3015
3016 2003-08-09 Andreas Schwab <schwab@suse.de>
3017
3018 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
3019
3020 * print.c (print_string): Fix printing of multibyte string with
3021 nontrivial printcharfun.
3022
3023 2003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3024
3025 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
3026
3027 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
3028
3029 2003-07-31 Kenichi Handa <handa@m17n.org>
3030
3031 * process.c (read_process_output): Return the actually read bytes
3032 instead of the result of decoding.
3033
3034 2003-07-31 Kenichi Handa <handa@m17n.org>
3035
3036 * xterm.h (struct x_bitmap_record): New member have_mask.
3037
3038 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
3039 to 0.
3040 (x_create_bitmap_from_file): Likewise.
3041 (x_destroy_bitmap): Check have_mask member before freeing a mask.
3042 (x_destroy_all_bitmaps): Likewise.
3043 (x_create_bitmap_mask): Set have_mask member to 1.
3044
3045 2003-07-30 Richard M. Stallman <rms@gnu.org>
3046
3047 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
3048
3049 2003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3050
3051 * gtkutil.c (xg_mark_data): Update calls to mark_object.
3052
3053 2003-07-29 Richard M. Stallman <rms@gnu.org>
3054
3055 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
3056 Conditionalize XIM code on HAVE_XIM.
3057
3058 * fns.c (Fclear_string): New function.
3059 (syms_of_fns): defsubr it.
3060
3061 2003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
3062
3063 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
3064
3065 2003-07-22 Stefan Monnier <monnier@cs.yale.edu>
3066
3067 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
3068
3069 * buffer.c (delete_all_overlays): New function.
3070 * buffer.h (delete_all_overlays): Declare.
3071 * coding.c (run_pre_post_conversion_on_str):
3072 * print.c (temp_output_buffer_setup):
3073 * fileio.c (Finsert_file_contents):
3074 * minibuf.c (get_minibuffer): Use it.
3075
3076 2003-07-22 Andrew Choi <akochoi@shaw.ca>
3077
3078 * unexmacosx.c (unexec_regions_sort_compare):
3079 (unexec_regions_merge): New functions. Sort and merge unexec
3080 regions before dumping them.
3081
3082 2003-07-22 Dave Love <fx@gnu.org>
3083
3084 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
3085
3086 2003-07-21 Stefan Monnier <monnier@cs.yale.edu>
3087
3088 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
3089 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
3090 MARKBIT as the gcmarkbit for strings.
3091
3092 2003-07-21 Richard M. Stallman <rms@gnu.org>
3093
3094 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
3095
3096 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
3097 (syms_of_fns): Corresponding change.
3098
3099 * alloc.c (syms_of_alloc): Doc fixes.
3100
3101 2003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
3102
3103 * s/netbsd.h: Use -Wl syntax.
3104
3105 2003-07-17 Richard M. Stallman <rms@gnu.org>
3106
3107 * xterm.c (xim_initialize): Redo 6/24 change.
3108
3109 2003-07-15 Stefan Monnier <monnier@cs.yale.edu>
3110
3111 * buffer.c (copy_overlays): Use EMACS_INT for positions.
3112 (Fswitch_to_buffer): Don't signal an error when switching to the same
3113 buffer in a dedicated window.
3114
3115 * alloc.c: Use bitmaps for cons, as was done for floats.
3116 (init_float, init_cons): Let the normal code allocate the first block.
3117 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
3118 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
3119 New macros.
3120 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
3121 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
3122 (live_cons_p): Check the pointer is not past the `conses' array.
3123 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
3124 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
3125 (survives_gc_p): Use CONS_MARKED_P and simplify.
3126 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
3127
3128 2003-07-13 Paul Eggert <eggert@twinsun.com>
3129
3130 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
3131 puts it into BSS instead, at least on Solaris 8 and 9.
3132 This is a valid optimization, and it may occur on other platforms,
3133 so Emacs should not assume that initializing a static variable to
3134 zero puts it into data.
3135 * alloc.c (pure, staticvec):
3136 Initialize these arrays to nonzero, so that they're not
3137 put into BSS by that optimization.
3138
3139 2003-07-13 Stefan Monnier <monnier@cs.yale.edu>
3140
3141 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
3142 (lisp_align_malloc): Use posix_memalign is available.
3143 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
3144 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
3145 for consistency. Update users.
3146
3147 2003-07-13 Richard M. Stallman <rms@gnu.org>
3148
3149 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
3150
3151 2003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
3152
3153 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
3154 and use the Gtk+ function gtk_window_icon_from_file if available.
3155
3156 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
3157 handle mask of bitmaps.
3158 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
3159 mask property.
3160 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
3161
3162 * xterm.h (xg_set_icon): New function.
3163
3164 2003-07-12 Paul Eggert <eggert@twinsun.com>
3165
3166 * unexelf.c (unexec): Consider a section to precede the .bss
3167 section if its addresses overlap that of .bss.
3168
3169 2003-07-12 Richard M. Stallman <rms@gnu.org>
3170
3171 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
3172
3173 * config.in (HAVE_CRTIN): Add #undef.
3174 (INLINE): Really inline only if OPTIMIZE is defined.
3175
3176 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
3177 END_FILES_1.
3178 (START_FILES_1, END_FILES_1): New macros (conditional).
3179 (LD_SWITCH_SYSTEM_TEMACS): Define.
3180
3181 * s/openbsd.h: Don't include bsd4-3.h.
3182 (TERMINFO): Define.
3183 (LIBS_TERMCAP): Define.
3184 (LD_SWITCH_SYSTEM): Define (two definitions).
3185
3186 * xfns.c: Include libpng/png.h instead of png.h.
3187
3188 2003-07-11 Andreas Schwab <schwab@suse.de>
3189
3190 * buffer.c (modify_overlay): Update prototype.
3191 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
3192 Likewise.
3193
3194 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
3195
3196 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
3197 (struct interval): Move to intervals.h.
3198 (struct Lisp_Marker): Use EMACS_INT for position info.
3199 (forward_point): Remove prototype of defunct function.
3200 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
3201 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
3202 (syms_of_textprop, set_text_properties): Remove prototypes that are
3203 already in intervals.h.
3204
3205 * intervals.h (struct interval): Move from lisp.h.
3206 Use EMACS_INT for position and size info.
3207
3208 * coding.c: Include intervals.h for Fset_text_properties.
3209
3210 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
3211 position and length information.
3212
3213 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
3214
3215 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
3216 position and length information.
3217
3218 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
3219
3220 Change overlays_after and overlays_before so the overlays themselves
3221 are linked into lists, rather than using cons cells. After all each
3222 Lisp_Misc already occupies 5 words, so we can add a `next' field to
3223 Lisp_Overlay for free and save up one cons cell per overlay (not
3224 to mention one indirection when traversing the list of overlay).
3225
3226 * lisp.h (struct Lisp_Overlay): New field `next'.
3227
3228 * buffer.h (struct buffer): Change overlays_before and overlays_after
3229 from Lisp lists of overlays to pointers to overlays.
3230
3231 * buffer.c (overlay_strings, recenter_overlay_lists):
3232 Fix typo in eassert in last commit.
3233 (unchain_overlay): New function.
3234 (add_overlay_mod_hooklist): Use AREF.
3235 (copy_overlays, reset_buffer, overlays_at, overlays_in)
3236 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
3237 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
3238 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
3239 (report_overlay_modification, evaporate_overlays, init_buffer_once):
3240 Adjust to new type of overlays_(before|after).
3241
3242 * alloc.c (mark_object): Mark the new `next' field of overlays.
3243 (mark_buffer): Manually mark the overlays_(after|before) fields.
3244
3245 * coding.c (run_pre_post_conversion_on_str):
3246 * editfns.c (overlays_around):
3247 * xdisp.c (load_overlay_strings):
3248 * fileio.c (Finsert_file_contents):
3249 * indent.c (current_column):
3250 * insdel.c (signal_before_change, signal_after_change):
3251 * intervals.c (set_point_both):
3252 * print.c (temp_output_buffer_setup): Use new type for
3253 overlays_(before|after).
3254
3255 2003-07-08 Stefan Monnier <monnier@cs.yale.edu>
3256
3257 * buffer.c (report_overlay_modification): Don't run hooks while
3258 traversing the list of overlays.
3259
3260 * buffer.h (struct buffer): Use an int for overlay_center.
3261 (overlays_at, evaporate_overlays, recenter_overlay_lists)
3262 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
3263
3264 * buffer.c (reset_buffer, recenter_overlay_lists)
3265 (adjust_overlays_for_insert, adjust_overlays_for_delete)
3266 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
3267 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
3268 (overlays_at, evaporate_overlays, recenter_overlay_lists)
3269 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
3270
3271 * xdisp.c (fast_find_position): Remove unused var.
3272
3273 * cmds.c (Qexpand_abbrev): New sym.
3274 (syms_of_cmds): Initialize it.
3275 (internal_self_insert): Use it to call expand-abbrev.
3276
3277 2003-07-09 Kim F. Storm <storm@cua.dk>
3278
3279 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if emacs
3280 was configured with --without-xim.
3281 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
3282
3283 2003-07-07 Richard M. Stallman <rms@gnu.org>
3284
3285 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
3286
3287 * alloc.c (Fgarbage_collect): Doc fix.
3288
3289 2003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
3290
3291 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
3292
3293 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
3294
3295 * minibuf.c (read_minibuf): UNGCPRO before returning.
3296 (Ftry_completion, Fall_completions): Doc fix.
3297
3298 * alloc.c (live_float_p): Check that p is not past the `floats' array,
3299 now that `floats' is not the last element of the struct any more.
3300
3301 2003-07-06 Jason Rumney <jasonr@gnu.org>
3302
3303 * w32term.h (ClipboardSequence_Proc): New type.
3304
3305 * w32fns.c (clipboard_sequence_fn): New variable.
3306 (globals_of_w32fns): Initialize it.
3307
3308 * w32select.c (last_clipboard_sequence_number): New variable.
3309 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
3310 number if possible.
3311
3312 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
3313
3314 * m/amdx86-64.h (MARKBIT):
3315 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
3316 MARKBIT and ARRAY_MARK_FLAG any more.
3317
3318 * m/hp800.h (XSETMARKBIT):
3319 * m/sr2k.h (XSETMARKBIT):
3320 * lisp.h (XSETMARKBIT): Remove unused macro.
3321
3322 * lisp.h (mark_object): Change prototype.
3323
3324 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
3325 (last_marked): Change accordingly.
3326 (mark_interval, mark_maybe_object, mark_maybe_pointer)
3327 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
3328 (mark_buffer): Update calls to mark_object.
3329
3330 * bytecode.c (mark_byte_stack):
3331 * fns.c (sweep_weak_table):
3332 * keyboard.c (mark_kboards): Update calls to mark_object.
3333
3334 2003-07-06 Jason Rumney <jasonr@gnu.org>
3335
3336 * alloc.c (struct ablock): Only include padding when there is some.
3337
3338 2003-07-04 Stefan Monnier <monnier@cs.yale.edu>
3339
3340 * alloc.c (ALIGN): Add casts to simplify usage.
3341 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
3342 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
3343 (struct ablock, struct ablocks): New types.
3344 (free_ablock): New global var.
3345 (lisp_align_malloc, lisp_align_free): New functions.
3346 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
3347 (struct float_block): Reorder and add gcmarkbits.
3348 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
3349 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
3350 (init_float, make_float): Use lisp_align_malloc.
3351 (free_float, live_float_p): Don't use `type' any more.
3352 (make_float): Use FLOAT_UNMARK to access to mark bit.
3353 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
3354 Use FLOAT_MARKED_P to access the mark bit.
3355 (pure_alloc): Simplify use of ALIGN.
3356 (mark_object): Use FLOAT_MARK to access the mark bit.
3357 (gc_sweep): Use new macros to access the float's mark bit.
3358 (init_alloc_once): Init free_ablock.
3359
3360 * lisp.h (struct Lisp_Float): Remove unused field `type'.
3361
3362 2003-06-27 Stefan Monnier <monnier@cs.yale.edu>
3363
3364 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
3365 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
3366 (allocate_buffer): Move.
3367 (string_bytes): Don't mask markbit of `size_byte'.
3368 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
3369 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
3370 Use the `size' field of buffers (rather than the `name' field) for
3371 the mark bit, as is done for all other vectorlike objects.
3372 Use the new macros to access the mark bit of vectorlike objects.
3373
3374 2003-06-26 Richard M. Stallman <rms@gnu.org>
3375
3376 * puresize.h (BASE_PURESIZE): Increment base size.
3377
3378 * xdisp.c (fast_find_position): Enable Gerd's new definition.
3379
3380 * xterm.c (xim_initialize): Undo previous change.
3381
3382 2003-06-26 Stefan Monnier <monnier@cs.yale.edu>
3383
3384 * alloc.c (survives_gc_p): Simplify.
3385
3386 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
3387
3388 * window.c (Fset_window_dedicated_p): Simplify.
3389 (display_buffer_1): Don't raise the win from which minibuf was entered.
3390 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
3391 (Fminibuffer_selected_window): Simplify.
3392
3393 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
3394
3395 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
3396 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
3397
3398 * insdel.c (check_markers, adjust_markers_for_delete)
3399 (adjust_markers_for_insert, adjust_markers_for_replace)
3400 (prepare_to_modify_buffer, RESTORE_VALUE):
3401 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
3402 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
3403 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
3404 * alloc.c (Fmake_marker, free_marker, gc_sweep):
3405 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
3406 * editfns.c (save_excursion_restore, transpose_markers):
3407 * window.c (delete_window):
3408 * xdisp.c (message_dolog): Update for new types.
3409
3410 2003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3411
3412 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
3413 (realize_default_face): Use default_face_done_p for the force_p
3414 argument to set_lface_from_font_name. Set default_face_done_p to one.
3415
3416 * frame.c (make_frame): Initialize default_face_done_p.
3417
3418 * frame.h (struct frame): Add default_face_done_p.
3419
3420 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
3421 will be defined.
3422
3423 2003-06-25 Stefan Monnier <monnier@cs.yale.edu>
3424
3425 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
3426 Initialize the new field `gcmarkbit'.
3427 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
3428 (mark_interval_tree): Don't mark the tree separately from the nodes.
3429 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
3430 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
3431 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
3432
3433 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
3434 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
3435 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
3436 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
3437 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
3438
3439 2003-06-24 Dave Love <fx@gnu.org>
3440
3441 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
3442
3443 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
3444 from gnulib.
3445
3446 2003-06-21 Richard M. Stallman <rms@gnu.org>
3447
3448 * fileio.c (Fwrite_region): Alternate messages
3449 for append and partial write.
3450
3451 * keyboard.c (read_key_sequence): When converting upcase fn key to
3452 downcase, update fkey and keytran so `backspace' gets translated.
3453
3454 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
3455
3456 * process.c (wait_reading_process_input): Don't signal SIGIO
3457 in batch mode.
3458
3459 2003-06-17 Kenichi Handa <handa@m17n.org>
3460
3461 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
3462 composite.h.
3463
3464 * xselect.c: Don't include charset.h, coding.h, composite.h.
3465 (Qforeign_selection): New variable.
3466 (syms_of_xselect): Intern and static it.
3467 (selection_data_to_lisp_data): Return a unibyte string made from
3468 data with `foreign-selection' text property.
3469
3470 2003-06-15 Stefan Monnier <monnier@cs.yale.edu>
3471
3472 * termhooks.h (EVENT_INIT): New macro.
3473
3474 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
3475
3476 * alloc.c (mark_kboards): Move to keyboard.c.
3477
3478 * keyboard.c (record_asynch_buffer_change, read_avail_input):
3479 * xterm.c (x_dispatch_event):
3480 * xmenu.c (find_and_call_menu_selection):
3481 * xdisp.c (handle_tool_bar_click):
3482 * w32menu.c (menubar_selection_callback):
3483 * sysdep.c (kbd_input_ast, read_input_waiting):
3484 * msdos.c (dos_rawgetc):
3485 * macterm.c (mac_check_for_quit_char):
3486 * macmenu.c (menubar_selection_callback):
3487 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
3488 data to kbd_buffer_store_event.
3489
3490 2003-06-15 Kim F. Storm <storm@cua.dk>
3491
3492 * xdisp.c (x_fix_overlapping_area): Always use area relative X
3493 to fix redisplay problem with tall characters (such as \e,AC\e(B).
3494
3495 2003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
3496
3497 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
3498
3499 2003-06-12 Kenichi Handa <handa@m17n.org>
3500
3501 * fileio.c (Fwrite_region): Save and restore restriction.
3502
3503 2003-06-12 Dave Love <fx@gnu.org>
3504
3505 * alloca.c (alloca): Declare arg as size_t.
3506
3507 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
3508 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
3509
3510 2003-06-11 Dave Love <fx@gnu.org>
3511
3512 * search.c (shrink_regexp_cache): Use xrealloc.
3513 (syms_of_search): Use xmalloc.
3514
3515 2003-06-10 Kim F. Storm <storm@cua.dk>
3516
3517 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
3518 Adjust phys_cursor.x to be relative to window box, rather than
3519 text area before checking -- to ensure cursor is redrawn when
3520 exposing window.
3521 Note: This also fixes a similar (older) bug if display margins
3522 are present.
3523
3524 2003-06-06 Kenichi Handa <handa@m17n.org>
3525
3526 * coding.c (encoding_buffer_size): If coding->type is
3527 coding_type_ccl, double magnification on CRLF encoding.
3528
3529 2003-06-06 Jason Rumney <jasonr@gnu.org>
3530
3531 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
3532 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
3533
3534 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
3535 Mac too.
3536
3537 2003-06-05 Dave Love <fx@gnu.org>
3538
3539 * strftime.c: Merge changes from gnulib.
3540
3541 * mktime.c (__mktime_internal): Merge changes from gnulib
3542 involving year 69 and dst2.
3543
3544 Changes to merge with gnulib version and be consistent with the
3545 autoconf test:
3546
3547 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
3548 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
3549 [HAVE_LOCALE_H]: Include locale.h.
3550 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
3551
3552 2003-06-05 Kim F. Storm <storm@cua.dk>
3553
3554 * window.c (coordinates_in_window): Convert X and Y to window
3555 relative coordinates inside mode-line and header-line parts.
3556 Convert X and Y to margin area relative coordinates inside left
3557 and right display margin parts.
3558
3559 2003-06-05 Jason Rumney <jasonr@gnu.org>
3560
3561 * w32fns.c (add_system_logical_colors_to_map): New function.
3562 (Fx_open_connection): Use it.
3563
3564 2003-06-04 Stefan Monnier <monnier@cs.yale.edu>
3565
3566 * process.c (allocate_pty): Revert part of the previous patch.
3567 (Faccept_process_output): Simplify.
3568
3569 2003-06-04 Jason Rumney <jasonr@gnu.org>
3570
3571 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
3572
3573 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
3574 (lispy_mouse_wheel_names): Remove.
3575 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
3576 Always define drag_and_drop_syms.
3577
3578 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
3579 WHEEL_EVENT events.
3580
3581 2003-06-03 Stefan Monnier <monnier@cs.yale.edu>
3582
3583 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
3584
3585 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
3586
3587 2003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3588
3589 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
3590 menu item label.
3591
3592 2003-06-03 Richard M. Stallman <rms@gnu.org>
3593
3594 * window.c (Fwindow_edges): Doc fix.
3595 (Fwindow_pixel_edges, Fwindow_inside_edges)
3596 (Fwindow_inside_pixel_edges): New functions.
3597 (syms_of_window): defsubr them.
3598
3599 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
3600 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
3601
3602 2003-06-02 Stefan Monnier <monnier@cs.yale.edu>
3603
3604 * dispnew.c (Fsit_for): Don't lie about the number of args.
3605
3606 2003-06-02 Dave Love <fx@gnu.org>
3607
3608 * callproc.c: Use HAVE_FCNTL_H, not USG5.
3609 (syms_of_callproc) <process-environment>: Doc fix.
3610
3611 * doc.c: Use HAVE_FCNTL_H, not USG5.
3612
3613 * xfaces.c (font_rescale_ratio): Fix for K&R.
3614
3615 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
3616
3617 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
3618
3619 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
3620
3621 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
3622 (xg_create_frame_widgets): Use ENCODE_UTF_8.
3623
3624 * xterm.c (Qutf_8): Move to coding.c
3625
3626 * xmenu.c (ENCODE_MENU_STRING): New.
3627 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
3628 Use it.
3629
3630 * coding.h (ENCODE_UTF_8): New.
3631 (Qutf_8): Declare.
3632
3633 * coding.c (Qutf_8): New.
3634 (syms_of_coding): Intern it.
3635
3636 * fns.c: Doc fixes.
3637
3638 2003-06-02 Kenichi Handa <handa@m17n.org>
3639
3640 * buffer.c (Fset_buffer_multibyte): Fix previous change.
3641
3642 2003-06-01 Stefan Monnier <monnier@cs.yale.edu>
3643
3644 * lread.c (openp): Make sure STR is a string.
3645
3646 2003-06-01 David Ponce <david@dponce.com>
3647
3648 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
3649 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
3650
3651 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
3652 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
3653 (discard_mouse_events): Discard WHEEL_EVENT events too.
3654 (lispy_wheel_names, wheel_syms): New.
3655 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
3656 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
3657 defined.
3658 (make_lispy_event): Add WHEEL_EVENT handler.
3659
3660 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
3661 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
3662 WHEEL_EVENT events.
3663
3664 2003-05-31 John Paul Wallington <jpw@gnu.org>
3665
3666 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
3667 timer are in lisp/emacs-lisp.
3668
3669 2003-05-31 Kenichi Handa <handa@m17n.org>
3670
3671 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
3672 region when a buffer is changed to unibyte.
3673
3674 * charset.h (VALID_LEADING_CODE_P): New macro.
3675 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
3676
3677 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
3678 is nonzero, accept multibyte form of eight-bit-control chars.
3679 (decode_composition_emacs_mule): Likewise.
3680 (decode_coding_emacs_mule): Likewise.
3681 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
3682 multibyte form of eight-bit-control chars.
3683
3684 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
3685 (Finsert_file_contents): If coding-system-for-read is bound to
3686 Qauto_save_coding, use the coding system emacs-mule with special
3687 setting for recovering a file.
3688 (choose_write_coding_system): On auto saving, use the coding
3689 system emacs-mule with special setting for auto saving.
3690 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
3691
3692 2003-05-30 Kenichi Handa <handa@m17n.org>
3693
3694 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
3695 properly before calling ccl_driver.
3696
3697 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
3698
3699 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
3700 nonzero.
3701 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
3702 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
3703
3704 2003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
3705
3706 * xfaces.c (realize_default_face): Do not abort if lface is
3707 non-existent - reverts change from 2003-05-19.
3708
3709 2003-05-29 Kenichi Handa <handa@m17n.org>
3710
3711 * coding.c (decode_coding_iso2022): Pay attention to the byte
3712 sequence of CTEXT extended segment, and retain those bytes as is.
3713
3714 2003-05-28 Kenichi Handa <handa@m17n.org>
3715
3716 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
3717 of CODING_REPLACEMENT_CHARACTER.
3718 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
3719 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
3720 check this flag on encoding.
3721 (encode_coding_sjis_big5): Check
3722 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
3723 (Fset_terminal_coding_system_internal): Set
3724 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
3725 instead of setting CODING_FLAG_ISO_SAFE flag in
3726 terminal_coding.flags.
3727
3728 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
3729 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
3730 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
3731
3732 2003-05-28 Richard M. Stallman <rms@gnu.org>
3733
3734 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
3735
3736 * eval.c (unbind_to): Move init of this_binding to separate statement.
3737
3738 2003-05-28 Kim F. Storm <storm@cua.dk>
3739
3740 * xdisp.c (expose_window): Fix error in calculation of
3741 window relative coordinates of area to redisplay.
3742
3743 2003-05-27 Jason Rumney <jasonr@gnu.org>
3744
3745 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
3746
3747 2003-05-27 David Ponce <david@dponce.com>
3748
3749 Handle W32 mouse wheel events as mouse click events, like in X.
3750
3751 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
3752 MOUSE_WHEEL_EVENT anymore.
3753
3754 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
3755 Scrolling down/up the mouse wheel is respectively mapped to mouse
3756 button 4 and 5.
3757 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
3758 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
3759 WM_MOUSEWHEEL events.
3760
3761 2003-05-27 Andreas Schwab <schwab@suse.de>
3762
3763 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
3764
3765 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
3766 partially visible line.
3767
3768 * alloc.c (Fgarbage_collect): Fix last change.
3769
3770 2003-05-26 John Paul Wallington <jpw@gnu.org>
3771
3772 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
3773
3774 2003-05-25 Stefan Monnier <monnier@cs.yale.edu>
3775
3776 * window.c (Fset_window_buffer): Add type of `keep_margins'.
3777 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
3778
3779 * window.h (window_box_text_cols): Declare.
3780
3781 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
3782 (x_draw_vertical_border): Remove unused var `f'.
3783
3784 * xfaces.c (build_scalable_font_name): Remove `unused var
3785 pixel_size' warning.
3786
3787 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
3788
3789 * unexelf.c (unexec): Remove `unused var n' warning.
3790
3791 * strftime.c (my_strftime_localtime_r): Remove `defined but
3792 unused' warning.
3793
3794 * process.c (allocate_pty): Remove `unused var stb' and
3795 `cp might be used uninitialized' warnings.
3796
3797 * dispnew.c (mode_line_string): Remove unused var `f'.
3798
3799 * coding.c (find_safe_codings): Remove unused var `i'.
3800
3801 * bytecode.c (Fbyte_code): Remove `unused val' warning.
3802
3803 * buffer.c (Fkill_buffer): Remove unused var `list'.
3804
3805 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
3806
3807 2003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3808
3809 * frame.c (make_frame): Condition want_fullscreen with
3810 HAVE_WINDOW_SYSTEM.
3811
3812 2003-05-25 Juanma Barranquero <lektu@terra.es>
3813
3814 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
3815 (Fwindow_scroll_bars): Fix typo in docstring.
3816
3817 2003-05-24 Kim F. Storm <storm@cua.dk>
3818
3819 The following changes serve several purposes:
3820
3821 1) Swap the position of fringes and display margins in windows, i.e.
3822 the fringes are now displayed between the margins and the text area
3823 (by default).
3824
3825 2) Allow fringe and scroll bar parameters to be set per-buffer and
3826 per-window (like display margins). Such settings are now stored
3827 in window configurations, preserved when frames are resized, and
3828 copied when windows are split vertically or horizontally.
3829 Several bugs related to display margins have been fixed.
3830
3831 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
3832
3833 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
3834 rather than FRAME_WIDTH (FRAME_FONT (f)).
3835
3836 5) Introduce a consistent naming of variables, members and macros
3837 depending on whether their value is measured in pixels or in
3838 canonical columns/lines. Pixel dimensions are named *_width and
3839 *_height, while canonical columns/lines are named *_cols and
3840 *_lines. Pixel positions are named *_x and *_y, while column/line
3841 positions are named *_col and *_line.
3842
3843 6) Consolidate more of the X, W32, and MAC gui code by moving
3844 common data into struct frame, and generalize it for the non-gui
3845 case by using suitable defaults.
3846
3847 7) Cleanup and consolidate the macros controlling frame and window
3848 layout into frame.h and window.h, and generalize the use of the
3849 various window_box_* functions (enhanced to handle the new fringe
3850 position and the per-window fringe and scroll bar settings).
3851
3852 * frame.h (struct frame): Rename members height to text_lines,
3853 width to text_cols, window_height to total_lines, window_width to
3854 total_cols, new_height to new_text_lines, new_width to
3855 new_text_cols. All uses changed.
3856 (struct frame): New members which consolidate common members of
3857 x_output, w32_output, and mac_output structures: left_pos,
3858 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
3859 win_gravity, size_hint_flags, border_width, internal_border_width,
3860 line_height, fringe_cols, left_fringe_width, right_fringe_width,
3861 want_fullscreen. All uses changed.
3862 (struct frame): New member column_width contaning the canonical
3863 column width, analogue to line_height. All uses changed.
3864 (struct frame): Rename members scroll_bar_pixel_width to
3865 config_scroll_bar_width, and scroll_bar_cols to
3866 config_scroll_bar_cols. All uses changed.
3867 (struct frame): New member scroll_bar_actual_width which
3868 consolidates and renames the vertical_scroll_bar_extra member of
3869 x_output, w32_output, and mac_output structures. All uses changed.
3870 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
3871 from x/w32/macterm.h files. All uses changed. Also change code
3872 which referred to f->output_data...->pixel_height.
3873 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
3874 from x/w32/macterm.h files. All uses changed. Also change code
3875 which referred to f->output_data...->pixel_width.
3876 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
3877 Also change code which referred to f->height.
3878 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
3879 Also change code which referred to f->width.
3880 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
3881 to update new_text_lines and new_text_cols members directly.
3882 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
3883 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
3884 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
3885 FRAME_SCROLL_BAR_COLS. All uses changed.
3886 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
3887 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
3888 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
3889 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
3890 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
3891 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
3892 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
3893 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
3894 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
3895 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
3896 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
3897 return line_height member (it now has proper value also for
3898 non-window frames).
3899 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
3900 return new column_width member (rather than the default font width).
3901 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
3902 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
3903 from x/w32/macterm.h files. Unconditionally return corresponding
3904 member of frame structure (they now have proper values also for
3905 non-window frames).
3906 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
3907 Calculate return value from left and right widths.
3908 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
3909 internal_border_width member (has proper value for non-window frame).
3910 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
3911 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
3912 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
3913 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
3914 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
3915 consolidated from xterm.h, macterm.h, and w32term.h.
3916 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
3917 consolidated from xterm.h, macterm.h, and w32term.h.
3918 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
3919 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
3920 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
3921 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
3922 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
3923 consolidated from x/mac/w32term.h.
3924 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
3925 consolidated from x/mac/w32term.h.
3926 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
3927 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
3928 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
3929 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
3930
3931 * window.h (struct window): Rename members left to left_col,
3932 top to top_line, height to total_lines, width to total_cols,
3933 left_margin_width to left_margin_cols, right_margin_width to
3934 right_margin_cols, orig_height to orig_total_lines, orig_top to
3935 orig_top_line. All uses changed.
3936 (struct window): New members left_fringe_width, right_fringe_width,
3937 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
3938 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
3939 New macros primarily used to simplify other macros.
3940 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
3941 referred to XINT (w->width).
3942 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
3943 referred to XINT (w->height).
3944 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
3945 referred to XINT (w->width) * canon_x_unit.
3946 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
3947 referred to XINT (w->height) * canon_y_unit.
3948 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
3949 referred to XINT (w->left).
3950 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
3951 all uses and code that referred to XINT (w->left) + XINT (w->width).
3952 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
3953 referred to XINT (w->top).
3954 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
3955 referred to XINT (w->top) + XINT (w->height).
3956 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
3957 referred to XINT (w->left) * canon_x_unit.
3958 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
3959 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
3960 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
3961 referred to XINT (w->top) * canon_y_unit.
3962 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
3963 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
3964 (WINDOW_LEFTMOST_P): New macro.
3965 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
3966 All uses changed.
3967 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
3968 All uses changed.
3969 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
3970 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
3971 Do not exclude left fringe width.
3972 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
3973 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
3974 Do not exclude fringe widths.
3975 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
3976 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
3977 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
3978 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
3979 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
3980 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
3981 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
3982 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
3983 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
3984 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
3985 New macros. Change code which referenced corresponding
3986 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
3987 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
3988 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
3989 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
3990 allow per-window scroll-bar settings.
3991 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
3992 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
3993 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
3994 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
3995 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
3996 FRAME_SCROLL_BAR_WIDTH.
3997 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
3998 (WINDOW_SCROLL_BAR_AREA_X): New macros.
3999 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
4000 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
4001 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
4002 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
4003 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
4004 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
4005 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
4006 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
4007 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
4008 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
4009 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
4010 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
4011 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
4012 (window_from_coordinates): Update prototype.
4013 (Fset_window_buffer): Update EXFUN.
4014 (set_window_buffer): Update prototype.
4015
4016 * dispextern.h (struct glyph_matrix): Rename members window_left_x
4017 to window_left_col, window_top_y to window_top_line. All uses
4018 changed.
4019 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
4020 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
4021 internal_border_width is now set to 0 for non-window frames.
4022 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
4023 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
4024 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
4025 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
4026 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
4027 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
4028 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
4029 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
4030 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
4031 Move to window.h and renamed [see window.h changes].
4032 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
4033 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
4034 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
4035 Use WINDOW_TOTAL_LINES.
4036 (frame_update_line_height): Remove prototype.
4037
4038 * buffer.h (struct buffer): Rename members measured in columns:
4039 left_margin_width to left_margin_cols, right_margin_width to
4040 right_margin_cols. All uses changed.
4041 New members left_fringe_width, right_fringe_width,
4042 fringes_outside_margins for per-buffer fringe settings.
4043 New members scroll_bar_width and vertical_scroll_bar_type for
4044 per-buffer scroll bar settings.
4045
4046 * buffer.c (init_buffer_once): Set buffer_defaults and
4047 buffer_local_flags for new buffer-local variables
4048 left_fringe_width, right_fringe_width, fringes_outside_margins,
4049 scroll_bar_width, and vertical_scroll_bar_type.
4050 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
4051 default-* variables for them.
4052
4053 * dispnew.c: Make (many) trivial substitutions for renamed and
4054 new macros in dispextern.h, frame.h and window.h.
4055 (mode_line_string): No need to adjust width for mode lines, as it
4056 is already adjusted by the caller.
4057 (marginal_area_string): Handle fringes inside/outside margins.
4058
4059 * frame.c: Make (many) trivial substitutions for renamed and
4060 new macros in dispextern.h, frame.h and window.h.
4061 (make_frame): Initialize left_fringe_width, right_fringe_width,
4062 fringe_cols, scroll_bar_actual_width, border_width,
4063 internal_border_width, column_width, line_height, x_pixels_diff,
4064 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
4065 members with values suitable for a non-window frames.
4066
4067 * gtkutil.c: Make (many) trivial substitutions for renamed and
4068 new macros in dispextern.h, frame.h and window.h.
4069
4070 * indent.c: Make (few) trivial substitutions for renamed and
4071 new macros in dispextern.h, frame.h and window.h.
4072
4073 * keyboard.c: Make (many) trivial substitutions for renamed and
4074 new macros in dispextern.h, frame.h and window.h.
4075 (make_lispy_event): Use window positions returned from
4076 window_from_coordinates when constructing the lisp event for
4077 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
4078 (incorrect) values locally.
4079 (make_lispy_movement): Use window positions returned from
4080 window_from_coordinates when constructing the lisp event, rather
4081 than calculating (incorrect) values locally.
4082
4083 * scroll.c: Make (some) trivial substitutions for renamed and
4084 new macros in dispextern.h, frame.h and window.h.
4085
4086 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
4087 scroll-bars.
4088
4089 * sysdep.c: Make (few) trivial substitutions for renamed and
4090 new macros in dispextern.h, frame.h and window.h.
4091
4092 * term.c: Make (some) trivial substitutions for renamed and
4093 new macros in dispextern.h, frame.h and window.h.
4094
4095 * widget.c: Make (few) trivial substitutions for renamed and
4096 new macros in dispextern.h, frame.h and window.h.
4097
4098 * window.c: Make (many) trivial substitutions for renamed and
4099 new macros in dispextern.h, frame.h and window.h.
4100 (make_window): Initialize new members
4101 left_margin_cols, right_margin_cols, left_fringe_width,
4102 right_fringe_width, fringes_outside_margins, scroll_bar_width,
4103 and vertical_scroll_bar_type.
4104 (coordinates_in_window): Adapted to new fringe/margin positions
4105 and per-window fringes and scroll-bars.
4106 Fix bug related to incorrectly adjusting coordinates by
4107 frame's internal_border_width (the effect normally negible since
4108 the internal_border_width is typically 0 or 1 pixel, but very
4109 noticeable for an internal_border_width of e.g. 25 pixels).
4110 Upon successful return (other than ON_NOTHING), the coordinates
4111 are now always properly converted to window relative for the
4112 given display element.
4113 (window_from_coordinates): Add new parameters wx and wy to
4114 return the window relative x and y position in the returned
4115 window and part. A null arg means, don't return the position.
4116 All callers changed.
4117 (adjust_window_margins): New function which may reduce the width
4118 of the display margins if a window's text area is too small after
4119 resizing or splitting windows.
4120 (size_window): Fix bug that did not account for display margin
4121 widths when checking the minimum width of a window; use
4122 adjust_window_margins.
4123 (set_window_buffer): Call Fset_window_fringes and
4124 Fset_window_scroll_bars to setup per-window elements.
4125 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
4126 existing display margin, fringe widths, and scroll bar settings
4127 (e.g. after splitting a window or resizing the frame).
4128 All callers changed.
4129 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
4130 (Fsplit_window): Duplicate original window's display margin,
4131 fringe, and scroll-bar settings; then call Fset_window_buffer with
4132 KEEP_MARGINS non-nil. This fixes a bug which caused a split
4133 window to only preserve the display margins in one of the windows.
4134 When splitting horizontally, call adjust_window_margins on both
4135 windows to ensure that the text area of the new windows is non too
4136 narrow. This fixes a bug which could cause emacs to trap if the
4137 width of the split window was less than the width of the display
4138 margins.
4139 (window_box_text_cols): Renamed from window_internal_width.
4140 All uses changed. Adapt to per-window fringes and scroll bars.
4141 Fix bug that caused vertical separator to be subtracted also on
4142 window frames. Fix another bug that did not reduce the returned
4143 value by the columns used for display margins.
4144 (window_scroll_line_based): Fix bug related to scrolling too much
4145 when display margins are present (implicitly fixed by the fix to
4146 window_box_text_cols).
4147 (scroll_left, scroll_right): Fix bug related to scrolling too far
4148 by default when display margins are present (implicitly fixed by
4149 the fix to window_box_text_cols).
4150 (struct saved_window): Rename members left to left_col, top to
4151 top_line, width to total_cols, height to total_lines, orig_top to
4152 orig_top_line, orig_height to orig_total_lines. All uses changed.
4153 New members left_margin_cols, right_margin_cols,
4154 left_fringe_width, right_fringe_width, fringes_outside_margins,
4155 scroll_bar_width, and vertical_scroll_bar_type for saving
4156 per-window display elements.
4157 (Fset_window_configuration): Restore display margins, fringes,
4158 and scroll bar settings. This fixes a bug which caused display
4159 margins to be discarded when saving and restoring a window
4160 configuration.
4161 (save_window_save): Save display margins, fringes, and scroll bar
4162 settings. This fixes a bug which caused display margins to be
4163 discarded when saving and restoring a window configuration.
4164 (Fset_window_margins): Do nothing if display margins are not
4165 really changed. Otherwise, call adjust_window_margins to ensure
4166 the text area doesn't get too narrow. This fixes a bug which
4167 could cause emacs to trap if setting display margins wider than
4168 the width of the window.
4169 (Fset_window_fringes): New defun to allow user to specifically set
4170 this window's fringe widths and position vs. display margins.
4171 (Fwindow_fringes): New defun to return window's actual fringe
4172 settings.
4173 (Fset_window_scroll_bars): New defun to allow user to specifically
4174 set this window's scroll bar width and position.
4175 (Fwindow_scroll_bars): New defun to return window's actual scroll
4176 bar settings.
4177 (compare_window_configurations): Also compare display margins,
4178 fringes, and scroll bar settings.
4179 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
4180
4181 * xdisp.c: Make (many) trivial substitutions for renamed and
4182 new macros in dispextern.h, frame.h and window.h.
4183 (window_box_width): Adapt to per-window fringes and scroll bars,
4184 and new fringe vs. display margin position. Note that returned
4185 value is no longer guaranteed to be a whole multiple of the frame
4186 column width, since per-window fringes may now be any width.
4187 (window_box_left_offset): New function like window_box_left, but
4188 value is relative to left border of window (rather than frame).
4189 (window_box_right_offset): New function like window_box_right,
4190 but value is relative to left border of window.
4191 (window_box_left): Adapt to per-window fringes and scroll bars,
4192 and new fringe vs. display margin position. Simplify by using
4193 WINDOW_LEFT_EDGE_X and window_box_left_offset.
4194 (window_box): Allow null args for unnecessary return values;
4195 change/simplify relevant callers.
4196 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
4197 and new fringe vs. display margin position.
4198 Use window_box_left_offset and window_box_right_offset
4199 (get_glyph_string_clip_rect): Adapt to per-window fringes and
4200 scroll bars, and new fringe vs. display margin position.
4201 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
4202 (draw_fringe_bitmap): Rework to handle per-window fringes and new
4203 fringe vs. display margin position.
4204 (hscroll_window_tree): Use window_box_width instead of window_box.
4205 (redisplay_window): Adapt to per-window scroll bars.
4206 (draw_glyphs): Rework to handle per-window fringes and scroll
4207 bars, and new fringe vs. display margin position.
4208 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
4209 (x_clear_end_of_line): Adapt to per-window fringes and scroll
4210 bars, and new fringe vs. display margin position. Fix bug which
4211 increased total width of full_width rows by width of scroll bars
4212 although window's total width already includes that.
4213 (x_fix_overlapping_area): Simplify using window_box_left_offset.
4214 (expose_area): Simplify using window_box_left_offset.
4215 (x_draw_vertical_border): Handle per-window scroll bar settings,
4216 mixing windows with left, right and no scroll bars.
4217
4218 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
4219 where it's used in x_list_fonts (for clarity).
4220 (frame_update_line_height): Remove unused function; functionality
4221 is now done directly when setting the default font in x_set_font.
4222
4223 * xfns.c: Make (many) trivial substitutions for renamed and
4224 new macros in dispextern.h, frame.h and window.h.
4225
4226 * xmenu.c: Make (some) trivial substitutions for renamed and
4227 new macros in dispextern.h, frame.h and window.h.
4228
4229 * xterm.h (struct x_output): Move members left_pos, top_pos,
4230 border_width, pixel_height, pixel_width, line_height,
4231 internal_border_width, vertical_scroll_bar_extra,
4232 left_fringe_width, right_fringe_width, fringe_cols,
4233 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
4234 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
4235 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
4236 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
4237 (PIXEL_WIDTH, PIXEL_HEIGHT)
4238 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
4239 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
4240 frame.h and renamed [see frame.h changes].
4241 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
4242 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
4243 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
4244 and renamed [see frame.h changes].
4245
4246 * xterm.c: Make (several) trivial substitutions for renamed and
4247 new macros in dispextern.h, frame.h and window.h.
4248 (x_draw_glyph_string_box): Adapt to per-window fringes and
4249 scroll-bars.
4250 (scroll_run): Adapt to new fringe position.
4251 (glyph_rect): Use window coordinates returned from
4252 window_from_coordinates rather than frame_to_window_pixel_xy.
4253 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
4254 scroll-bars.
4255 (handle_one_xevent): Simplify a USE_GTK conditional.
4256 (x_clip_to_row): Remove superfluous whole_line_p arg and code
4257 (fringes are now inside margins, i.e. always in the clipping area).
4258 All callers changed.
4259 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
4260 directly, then call compute_fringe_widths. Don't call
4261 frame_update_line_height.
4262
4263 * w32term.h (struct w32_output): Move members left_pos, top_pos,
4264 border_width, pixel_height, pixel_width, line_height,
4265 internal_border_width, vertical_scroll_bar_extra,
4266 left_fringe_width, right_fringe_width, fringe_cols,
4267 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
4268 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
4269 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
4270 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
4271 (PIXEL_WIDTH, PIXEL_HEIGHT)
4272 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
4273 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
4274 frame.h and renamed [see frame.h changes].
4275 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
4276 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
4277 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
4278 and renamed [see frame.h changes].
4279
4280 * w32term.c: Make (several) trivial substitutions for renamed and
4281 new macros in dispextern.h, frame.h and window.h.
4282 (x_draw_glyph_string_box): Adapt to per-window fringes and
4283 scroll-bars.
4284 (glyph_rect): Use window coordinates returned from
4285 window_from_coordinates rather than frame_to_window_pixel_xy.
4286 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
4287 scroll-bars.
4288 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
4289 (fringes are now inside margins, i.e. always in the clipping area).
4290 All callers changed.
4291 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
4292 directly, then call compute_fringe_widths. Don't call
4293 frame_update_line_height.
4294
4295 * w32console.c: Make (few) trivial substitutions for renamed and
4296 new macros in dispextern.h, frame.h and window.h.
4297
4298 * w32fns.c: Make (many) trivial substitutions for renamed and
4299 new macros in dispextern.h, frame.h and window.h.
4300
4301 * w32menu.c: Make (few) trivial substitutions for renamed and
4302 new macros in dispextern.h, frame.h and window.h.
4303
4304 * macterm.h (struct mac_output): Move members left_pos, top_pos,
4305 border_width, pixel_height, pixel_width, line_height,
4306 internal_border_width, vertical_scroll_bar_extra,
4307 left_fringe_width, right_fringe_width, fringe_cols,
4308 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
4309 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
4310 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
4311 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
4312 (PIXEL_WIDTH, PIXEL_HEIGHT)
4313 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
4314 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
4315 frame.h and renamed [see frame.h changes].
4316 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
4317 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
4318 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
4319 and renamed [see frame.h changes].
4320
4321 * macterm.c: Make (several) trivial substitutions for renamed and
4322 new macros in dispextern.h, frame.h and window.h.
4323 (x_draw_glyph_string_box): Adapt to per-window fringes and
4324 scroll-bars.
4325 (glyph_rect): Use window coordinates returned from
4326 window_from_coordinates rather than frame_to_window_pixel_xy.
4327 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
4328 scroll-bars.
4329 (x_clip_to_row): Remove superfluous whole_line_p arg and code
4330 (fringes are now inside margins, i.e. always in the clipping area).
4331 All callers changed.
4332 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
4333 directly, then call compute_fringe_widths. Don't call
4334 frame_update_line_height.
4335
4336 * macfns.c: Make (several) trivial substitutions for renamed and
4337 new macros in dispextern.h, frame.h and window.h.
4338 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
4339
4340 * macmenu.c: Make (few) trivial substitutions for renamed and
4341 new macros in dispextern.h, frame.h and window.h.
4342
4343 * msdos.h (struct x_output): Remove members left_pos, top_pos,
4344 and line_height, and use corresponding new members in struct
4345 frame. All uses changed.
4346 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
4347 superseeded by corresponding macros in frame.h.
4348
4349 * msdos.c: Make (several) trivial substitutions for renamed and
4350 new macros in dispextern.h, frame.h and window.h.
4351 (IT_note_mouse_highlight): Use updated window coordinates returned
4352 by window_from_coordinates, rather than adjusting them locally.
4353 (internal_terminal_init): No need to initialize line_height here;
4354 it now defaults to 1.
4355
4356 2003-05-24 Stefan Monnier <monnier@cs.yale.edu>
4357
4358 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
4359 dropping `down' events.
4360
4361 2003-05-24 Andreas Schwab <schwab@suse.de>
4362
4363 * coding.c (find_safe_codings): Fix last change.
4364
4365 2003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
4366
4367 * xfns.c (x_window): Fix typo from 2003-05-21 change.
4368
4369 2003-05-23 Stefan Monnier <monnier@cs.yale.edu>
4370
4371 * xdisp.c (display_mode_element): Increase max depth.
4372 Simplify the error handling code. Use a different error string
4373 for the case where we hit the depth limit.
4374
4375 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
4376
4377 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
4378
4379 2003-05-21 Stefan Monnier <monnier@cs.yale.edu>
4380
4381 * intervals.c (get_local_map): Don't get char-property of previous
4382 point any more: get_pos_property already does it and better.
4383
4384 2003-05-21 Dave Love <fx@gnu.org>
4385
4386 [Merged from unicode branch.]
4387
4388 * xfns.c (x_window, x_window): Use use_xim.
4389
4390 * xterm.c (use_xim): Initialize.
4391 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
4392 (x_term_init): Maybe set use_xim.
4393
4394 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
4395
4396 2003-05-21 Jason Rumney <jasonr@gnu.org>
4397
4398 * unexw32.c (_start): Remove _fmode initialization.
4399
4400 * emacs.c (main) [WINDOWSNT]: Move it here.
4401
4402 2003-05-20 Dave Love <fx@gnu.org>
4403
4404 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
4405
4406 2003-05-19 Richard M. Stallman <rms@gnu.org>
4407
4408 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
4409 as value for QCfont attribute.
4410 (realize_default_face): lface should already exist; crash if not.
4411 Specify 0 for FORCE_P when calling set_lface_from_font_name.
4412
4413 * frame.c (Fignore_event): Doc fix.
4414
4415 2003-05-19 Kenichi Handa <handa@m17n.org>
4416
4417 * coding.c (decode_coding_string): Handle post-read-conversion
4418 even if the coding doesn't require decoding.
4419
4420 2003-05-18 Richard M. Stallman <rms@gnu.org>
4421
4422 * callproc.c (Fcall_process_region): Doc fix.
4423
4424 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
4425
4426 * lread.c (Fload): Print a message if package is obsolete.
4427
4428 * window.c (Fselect_window): Add optional `norecord' arg.
4429 (select_window_1): Fold into Fselect_window.
4430 (select_window_norecord): New function.
4431 (temp_output_buffer_show): Use it. Preserve current buffer.
4432
4433 * window.h (Fselect_window): Update declaration.
4434
4435 * window.c (delete_window, Fother_window, Fset_window_configuration):
4436 * minibuf.c (read_minibuf):
4437 * macterm.c (x_new_focus_frame):
4438 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
4439 * callint.c (Fcall_interactively):
4440 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
4441
4442 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
4443
4444 2003-05-17 David Kastrup <dak@gnu.org>
4445
4446 * process.c (read_process_output): Back out change from 2003-03-09.
4447
4448 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
4449
4450 * editfns.c (get_pos_property): Don't assume that `object' = nil.
4451
4452 * textprop.c (text_property_stickiness): New arg `buffer'.
4453
4454 * intervals.h (text_property_stickiness): New arg `buffer'.
4455 (get_pos_property): Declare.
4456
4457 * intervals.c (get_local_map): Use get_pos_property, to obey
4458 stickiness and empty overlays.
4459 (create_root_interval, graft_intervals_into_buffer): Use BEG.
4460 (merge_properties, intervals_equal, merge_properties_sticky):
4461 Use XCAR, XCDR.
4462 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
4463
4464 2003-05-17 Richard M. Stallman <rms@gnu.org>
4465
4466 * minibuf.c (read_minibuf): If buffer is empty, record the default
4467 in the history.
4468 (Fminibuffer_complete_word): When deleting the overlap, take account
4469 of its real position.
4470
4471 * fns.c (map_char_table): Fix previous change.
4472
4473 * syntax.c (find_defun_start):
4474 When open_paren_in_column_0_is_defun_start,
4475 return beginning of buffer.
4476
4477 * lisp.h (map_char_table): Declare added arg.
4478
4479 * fns.c (map_char_table): New arg TABLE gets the master table.
4480 All calls changed.
4481 Process default and inheritance, resorting to Faref if necessary.
4482
4483 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
4484 (Faccessible_keymaps): Pass new arg to map_char_table.
4485
4486 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
4487
4488 * casetab.c (set_case_table): Pass new arg to map_char_table.
4489
4490 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
4491
4492 * lisp.h (specbinding_func): New typedef.
4493 (struct specbinding): Use specbinding_func, to put the `volatile'
4494 in the right place.
4495
4496 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
4497 to avoid GCC warning.
4498
4499 2003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
4500
4501 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
4502
4503 2003-05-15 Stefan Monnier <monnier@cs.yale.edu>
4504
4505 * keyboard.c (apply_modifiers): Don't fill the other cache.
4506
4507 2003-05-14 Stefan Monnier <monnier@cs.yale.edu>
4508
4509 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
4510
4511 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
4512 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
4513 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
4514 (Fset_window_configuration, Fcurrent_window_configuration)
4515 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
4516 (Fpos_visible_in_window_p, mark_window_cursors_off)
4517 (window_internal_height, window_internal_width, Frecenter)
4518 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
4519 (replace_buffer_in_all_windows, init_window_once, init_window)
4520 (syms_of_window, keys_of_window): Move from lisp.h.
4521 * lisp.h: Move window.c declarations to window.h.
4522
4523 * bytecode.c: Include window.h.
4524 * emacs.c: Include window.h.
4525
4526 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
4527 (keyremap): Add `parent' field.
4528 (keyremap_step): Use it. Remove `parent' argument.
4529 (read_key_sequence): Setup and use the new `parent' field.
4530
4531 2003-05-11 Stefan Monnier <monnier@cs.yale.edu>
4532
4533 * keyboard.c (adjust_point_for_property): Ensure termination.
4534
4535 2003-05-10 Stefan Monnier <monnier@cs.yale.edu>
4536
4537 * keyboard.c (follow_key): Remove dead variable `did_meta'.
4538 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
4539 duplicated handling of function-key-map and key-translation-map
4540 in read_key_sequence.
4541 (read_key_sequence): Use them.
4542
4543 * keyboard.c (adjust_point_for_property): Try harder to move point
4544 to the non-sticky end of an invisible property.
4545
4546 * xdisp.c (single_display_prop_intangible_p): Make `space' display
4547 property intangible as well.
4548
4549 2003-05-10 Andreas Schwab <schwab@suse.de>
4550
4551 * xmenu.c (single_menu_item): Change last parameter to void* to
4552 avoid warning.
4553
4554 2003-05-09 Richard M. Stallman <rms@gnu.org>
4555
4556 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
4557 Bind Qinhibit_modification_hooks to t so there will be no GC.
4558 Rename local `tem' to `save_deactivate_mark'.
4559
4560 * eval.c (specpdl_ptr): Declare volatile.
4561 (unbind_to): Copy the whole binding and decrement specpdl_ptr
4562 before doing the work of unbinding it.
4563
4564 * lisp.h (struct specbinding): Declare elements volatile.
4565 (specpdl_ptr): Declare volatile.
4566
4567 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
4568
4569 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
4570 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
4571
4572 2003-05-08 Dave Love <fx@gnu.org>
4573
4574 * coding.c (Vlast_coding_system_used): Doc fix.
4575
4576 2003-05-07 Jason Rumney <jasonr@gnu.org>
4577
4578 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
4579 when system does not support them.
4580
4581 2003-05-05 Stefan Monnier <monnier@cs.yale.edu>
4582
4583 * fileio.c (Qwrite_region_annotate_functions): New var.
4584 (build_annotations): Use it to process the global part of the hook.
4585 (syms_of_fileio): Init and staticpro it.
4586
4587 * keyboard.c (safe_run_hooks_error): Display a message instead of
4588 silently ignoring the error.
4589
4590 2003-05-03 Stefan Monnier <monnier@cs.yale.edu>
4591
4592 * keyboard.c (input_available_signal): Mark static.
4593 (menu_bar_items): Use map_keymap.
4594 (menu_bar_one_keymap): Remove.
4595 (menu_bar_item): Adjust arglist (for use in map_keymap).
4596 Properly hide a second binding when not both are keymaps.
4597
4598 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
4599 (single_keymap_panes): Use it and map_keymap.
4600 (single_menu_item): Use skp as well.
4601
4602 * keymap.h (map_keymap_function_t): New type.
4603 (map_keymap): Declare.
4604
4605 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
4606 (map_keymap_call, Fmap_keymap): New functions.
4607 (syms_of_keymap): Defsubr map-keymap.
4608
4609 2003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4610
4611 * gtkutil.c (create_dialog, make_widget_for_menu_item)
4612 (make_menu_item, create_menus, xg_update_menu_item): Don't call
4613 ..._with_mnemonic functions for menu items.
4614
4615 2003-05-01 Kenichi Handa <handa@m17n.org>
4616
4617 * coding.c (coding_system_accept_latin_extra_p): Delete this
4618 function.
4619 (find_safe_codings): Pay attention to
4620 the property tranlsation-table-for-encode of each codings.
4621 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
4622
4623 2003-05-01 Stefan Monnier <monnier@cs.yale.edu>
4624
4625 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
4626
4627 2003-04-30 Stefan Monnier <monnier@cs.yale.edu>
4628
4629 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
4630
4631 * lisp.h (CHECK): Wrap args in parenthesis.
4632 (specbind): Fix doc: symbol = Qnil is not supported any more.
4633
4634 * bytecode.c (Fbyte_code) <unwind-protect>:
4635 Use Fprogn rather than 0 and Qnil.
4636
4637 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
4638 `double', and `triple' modifiers as well.
4639
4640 2003-04-30 Richard M. Stallman <rms@gnu.org>
4641
4642 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
4643
4644 * alloc.c (abort_on_gc): New variable.
4645 (Fgarbage_collect): Abort if abort_on_gc is set.
4646
4647 * lisp.h (abort_on_gc): Add decl.
4648
4649 * eval.c (Fsignal): Clear abort_on_gc.
4650
4651 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
4652 Reinit FORMAT_START and END before second scan.
4653
4654 * xdisp.c (move_it_vertically_backward): Do the final big else
4655 even if nlines is 0.
4656
4657 * xdisp.c (redisplay_internal): Finish the per-frame loop
4658 even if redisplay is suspended by input.
4659
4660 2003-04-24 Andrew Choi <akochoi@shaw.ca>
4661
4662 * macterm.c (x_list_fonts): Return all fonts that match if
4663 maxnames = -1.
4664
4665 2003-04-25 Kenichi Handa <handa@m17n.org>
4666
4667 * syntax.c (skip_chars): Fix previous change.
4668
4669 2003-04-24 Kenichi Handa <handa@m17n.org>
4670
4671 * syntax.c (skip_chars): Make the code faster by using the common
4672 technique of *p, *stop, and *endp.
4673
4674 2003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4675
4676 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
4677 tool_bar_items so GTK tool bar expose callback does not access items
4678 being updated.
4679
4680 2003-04-19 Stefan Monnier <monnier@cs.yale.edu>
4681
4682 * eval.c (Fapply): Undo last change and add a comment about why.
4683
4684 2003-04-18 Miles Bader <miles@gnu.org>
4685
4686 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
4687 pickier PARSE_MULTIBYTE_SEQ.
4688
4689 2003-04-17 Stefan Monnier <monnier@cs.yale.edu>
4690
4691 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
4692 Use XCDR, XCAR, CONSP.
4693 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
4694 (Fapply): Remove unnecessary GCPRO.
4695
4696 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
4697
4698 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
4699
4700 * buffer.h: Don't hardcode BEG==1.
4701
4702 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
4703
4704 2003-04-16 Richard M. Stallman <rms@gnu.org>
4705
4706 * xdisp.c (try_window, try_window_reusing_current_matrix):
4707 When at end of window, set window_end_pos to Z-ZV.
4708
4709 * buffer.c (Foverlay_recenter): Doc fix.
4710
4711 2003-04-14 Stefan Monnier <monnier@cs.yale.edu>
4712
4713 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
4714
4715 2003-04-14 Andrew Choi <akochoi@shaw.ca>
4716
4717 * macterm.c (mac_check_for_quit_char): Don't check more often than
4718 once a second.
4719
4720 2003-04-11 Stefan Monnier <monnier@cs.yale.edu>
4721
4722 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
4723 specially, so that they can't hide an implicit switch-frame event.
4724 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
4725 (head_table): Use switch-frame as event_kind for select-window.
4726 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
4727
4728 * editfns.c (Fformat): Lisp_Object/int mixup.
4729 (format2): Remove unused var numargs.
4730
4731 2003-04-11 Kenichi Handa <handa@m17n.org>
4732
4733 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
4734 (Qafter_insert_file_set_coding): New variable.
4735 (syms_of_fileio): Initialize and staticpro it. Delete declaration
4736 for after-insert-file-adjust-coding-function.
4737 (Finsert_file_contents): Call Qafter_insert_file_set_coding
4738 instead of Vafter_insert_file_adjust_coding_function.
4739
4740 2003-04-11 Kenichi Handa <handa@m17n.org>
4741
4742 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
4743
4744 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
4745 string. Callers changed.
4746
4747 2003-04-10 Kenichi Handa <handa@m17n.org>
4748
4749 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
4750 (syms_of_fileio): Declare it as a lisp variable.
4751 (Finsert_file_contents):
4752 Call Vafter_insert_file_adjust_coding_function before calling
4753 decode-format.
4754
4755 2003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4756
4757 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
4758 get GtkAdjustment as widget now is a GtkRange.
4759
4760 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
4761 GtkRange to avoid memory leak.
4762
4763 2003-04-09 Kenichi Handa <handa@m17n.org>
4764
4765 * xfaces.c (Vface_font_rescale_alist): New variable.
4766 (struct font_name): New member rescale_ratio.
4767 (font_rescale_ratio): New function.
4768 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
4769 (better_font_p): On comparing point sized, pay attention to
4770 recale_ratio member of fonts.
4771 (build_scalable_font_name): Reflect font->rescale_ratio in the
4772 font name.
4773 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
4774
4775 * lread.c (read1): Before calling index, check if the 2nd
4776 arguemnt is in ASCII range.
4777
4778 2003-04-08 Richard M. Stallman <rms@gnu.org>
4779
4780 * fileio.c (Ffile_symlink_p): Doc fix.
4781
4782 * editfns.c (Fformat): Translate positions of text properties
4783 in the format string to apply them to the result.
4784
4785 * fileio.c (Finsert_file_contents): Doc fix.
4786 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
4787
4788 2003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
4789
4790 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
4791
4792 2003-04-08 Steven Tamm <steventamm@mac.com>
4793
4794 * mac.c (init_mac_osx_environment): Switch libexec and bin so
4795 that self-contained application finds libexec files.
4796
4797 2003-04-08 Kenichi Handa <handa@m17n.org>
4798
4799 * coding.c (code_convert_region_unwind):
4800 Set Vlast_coding_system_used to the argument.
4801 (code_convert_region): If post-read-conversion function changed
4802 the value of last-coding-sytem, keep the new value in
4803 coding->symbol so that it won't be overridden.
4804 (run_pre_post_conversion_on_str): Likewise.
4805 (coding_system_accept_latin_extra_p): New function.
4806 (find_safe_codings): Pay attention to characters registered in
4807 latin-extra-code-table.
4808
4809 2003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
4810
4811 * Makefile.in (md5.o): Add missing dependency info.
4812
4813 2003-04-06 Richard M. Stallman <rms@gnu.org>
4814
4815 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
4816
4817 * marker.c (verify_bytepos): New function.
4818
4819 * intervals.c (set_intervals_multibyte_1): When becoming
4820 multibyte, adjust right and left child sizes to a whole set of
4821 characters. If an interval gets zero total-length, delete it.
4822 If an interval consists of just its children, delete one of them.
4823
4824 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
4825 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
4826
4827 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
4828 All calls deleted.
4829 (lisp_malloc): Do the work here directly.
4830
4831 2003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
4832
4833 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
4834 char tables.
4835
4836 2003-04-04 Kenichi Handa <handa@m17n.org>
4837
4838 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
4839 destructively change "%S" to "%s".
4840
4841 2003-04-03 Miles Bader <miles@gnu.org>
4842
4843 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
4844 always set.
4845
4846 2003-04-01 Dave Love <fx@gnu.org>
4847
4848 * xfns.c (xpm_lookup_color): Grok "opaque".
4849
4850 2003-03-31 Andrew Choi <akochoi@shaw.ca>
4851
4852 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
4853 parent window ID.
4854
4855 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
4856
4857 * macterm.h (struct mac_output): Define x_pixels_diff and
4858 y_pixels_diff.
4859
4860 2003-03-31 Juanma Barranquero <lektu@terra.es>
4861
4862 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
4863 blockinput.h and files included from it.
4864
4865 2003-03-31 Kim F. Storm <storm@cua.dk>
4866
4867 The following changes consolidates the common code related to
4868 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
4869 files into frame.c.
4870
4871 * frame.c: Include blockinput.h.
4872 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
4873 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
4874 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
4875 related vars here.
4876 (struct frame_parm_table, frame_parms): New table for describing
4877 frame parameters and their associated Q-variable.
4878 The order of the parameters corresponds to the sequence of the
4879 frame_parm_handlers table in redisplay_interface.
4880 (x_fullscreen_move, x_set_frame_parameters)
4881 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
4882 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
4883 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4884 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
4885 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
4886 Generic functions for processing of frame parameters.
4887 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
4888 (display_x_get_resource, x_get_resource_string): Functions for
4889 generic access to X resources.
4890 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
4891 (x_default_parameter, Fx_parse_geometry): Functions for generic
4892 access to frame parameters.
4893 (x_figure_window_size): Generic calculation of frame size.
4894 Fixed to add space needed for tool bar. Also setup size_hint_flags.
4895 (syms_of_frame): Intern and staticpro frame parameter variables.
4896 Defvar_lisp Vx_resource_class and Vx_resource_name here.
4897 Defsubr Sx_get_resource and Sx_parse_geometry.
4898
4899 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
4900 parameter related vars defined in frame.c.
4901 (EMACS_CLASS): Define here.
4902 (enum FULLSCREEN_*): Define here.
4903 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
4904 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
4905 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
4906 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
4907 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
4908 (x_set_visibility, x_set_autoraise, x_set_autolower)
4909 (x_set_unsplittable, x_set_vertical_scroll_bars)
4910 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
4911 (x_figure_window_size): Add prototypes.
4912
4913 * dispextern.h (frame_parm_handler): New typedef.
4914 (struct redisplay_interface): New member frame_parm_handlers.
4915 (enum resource_types): Move declaration here.
4916 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
4917 (x_default_parameter): Add prototypes.
4918
4919 * window.c: Remove extern decl for frame parameter vars.
4920 (change_window_heights): New generic function;
4921 replaces x_change_window_heights. All users changed.
4922
4923 * window.h (change_window_heights): Add prototype.
4924
4925 * xfaces.c: Remove extern decl for frame parameter vars.
4926
4927 * xterm.h (EMACS_CLASS): Remove. Use generic define.
4928 (struct w32_display_info): Fix type of xrdb member.
4929 (enum FULLSCREEN_*): Remove.
4930 Remove prototypes for generic functions (in frame.h).
4931
4932 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
4933 parameters now defined in frame.h and frame.c.
4934 (Vx_resource_name): Remove. Use generic var.
4935 (enum x_frame_parms): Remove (bogus, unused enum).
4936 (check_x_display_info): Make non-static (for frame.c).
4937 (struct x_frame_parm_table, x_frame_parms): Remove.
4938 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
4939 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
4940 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4941 (x_change_window_heights, x_set_autoraise, x_set_autolower)
4942 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
4943 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
4944 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
4945 Remove. Use generic functions instead.
4946 (enum resource_types): Remove.
4947 (x_set_scroll_bar_default_width): New global function (for frame.c).
4948 (Fx_create_frame): Depend on x_figure_window_size to add space for
4949 toolbar and setup size_hint_flags.
4950 (x_frame_parm_handlers): New table for redisplay_interface.
4951 (syms_of_xfns): Don't intern/staticpro removed vars.
4952
4953 * xterm.c: Remove unnecessary extern declarations.
4954 (x_fullscreen_adjust): Remove. Use generic instead.
4955 (x_redisplay_interface): Add x_frame_parm_handlers member.
4956
4957 * w32gui.h (XrmDatabase): New (dummy) typedef.
4958
4959 * w32term.h (EMACS_CLASS): Remove. Use generic define.
4960 (struct w32_display_info): Fix type of xrdb member.
4961 (enum FULLSCREEN_*): Remove.
4962 (x_fullscreen_adjust): Remove prototype.
4963
4964 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
4965 parameters now defined in frame.h and frame.c.
4966 (Vx_resource_name): Remove. Use generic var.
4967 (enum x_frame_parms): Remove (bogus, unused enum).
4968 (check_x_display_info): Make non-static (for frame.c).
4969 (struct x_frame_parm_table, x_frame_parms): Remove.
4970 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
4971 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
4972 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4973 (x_change_window_heights, x_set_autoraise, x_set_autolower)
4974 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
4975 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
4976 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
4977 Remove. Use generic functions instead.
4978 (enum resource_types): Remove.
4979 (x_set_scroll_bar_default_width): New global function (for frame.c).
4980 (Fx_create_frame): Depend on x_figure_window_size to add space for
4981 toolbar and setup size_hint_flags.
4982 (w32_frame_parm_handlers): New table for redisplay_interface.
4983 (syms_of_w32fns): Don't intern/staticpro removed vars.
4984
4985 * w32term.c: Remove unnecessary extern declarations.
4986 (x_fullscreen_adjust): Remove. Use generic instead.
4987 (x_redisplay_interface): Add w32_frame_parm_handlers member.
4988
4989 * w32reg.c (x_get_string_resource): Use XrmDatabase.
4990
4991 * macgui.h (XrmDatabase): New (dummy) typedef.
4992
4993 * macterm.h (EMACS_CLASS): Remove.
4994 (struct mac_display_info): Add xrdb member.
4995 (struct mac_output): Add want_fullscreen member.
4996
4997 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
4998 parameters now defined in frame.h and frame.c.
4999 (Vx_resource_name): Remove. Use generic var.
5000 (check_x_display_info): Make non-static (for frame.c).
5001 (struct x_frame_parm_table, x_frame_parms): Remove.
5002 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
5003 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
5004 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5005 (x_change_window_heights, x_set_autoraise, x_set_autolower)
5006 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
5007 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
5008 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
5009 Remove. Use generic functions instead.
5010 (enum resource_types): Remove.
5011 (x_set_scroll_bar_default_width): New global function (for frame.c).
5012 (mac_frame_parm_handlers): New table for redisplay_interface.
5013 (syms_of_macfns): Don't intern/staticpro removed vars.
5014
5015 * macterm.c: Remove unnecessary extern declarations.
5016 (x_redisplay_interface): Add mac_frame_parm_handlers member.
5017
5018 * Makefile.in (frame.o): Add dependency on blockinput.h and files
5019 included from it (atimer.h and systime.h).
5020
5021 2003-03-30 Andreas Schwab <schwab@suse.de>
5022
5023 * xdisp.c (x_insert_glyphs): Fix swapped width and height
5024 parameters for shift_glyphs_for_insert.
5025
5026 * macterm.c (x_redisplay_interface): Add missing entry for
5027 draw_vertical_window_border.
5028
5029 2003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
5030
5031 * fileio.c (Fexpand_file_name): In the no-handler case, after
5032 expanding, look again for a handler and invoke it. This is needed
5033 for filenames like "/foo/../user@host:/bar/../baz" -- the first
5034 expansion produces "/user@host:/bar/../baz" which needs to be
5035 expanded again for the finame result "/user@host:/baz".
5036
5037 2003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5038
5039 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
5040 of area to be redrawn for better performance.
5041
5042 2003-03-28 Stefan Monnier <monnier@cs.yale.edu>
5043
5044 * xterm.c (take_vertical_position_into_account): Remove.
5045 (xt_action_hook): Call set_vertical_scroll_bar if needed.
5046 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
5047 (xm_scroll_callback, x_create_toolkit_scroll_bar)
5048 (x_set_toolkit_scroll_bar_thumb): Simplify.
5049 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
5050 (XTread_socket): Remove unused var.
5051 (x_make_frame_invisible): Replace goto with else.
5052
5053 * xdisp.c (set_vertical_scroll_bar): New fun.
5054 (redisplay_window): Use it.
5055
5056 2003-03-26 Richard M. Stallman <rms@gnu.org>
5057
5058 * xdisp.c (update_tool_bar): Recompute tool bar if
5059 update_mode_lines is set. Set w->update_mode_line
5060 only if the tool bar contents actually change.
5061 (update_menu_bar): Undo previous change.
5062
5063 2003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5064
5065 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
5066 (xg_frame_set_char_size): Calculate scroll bar width before frame
5067 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
5068 (xg_separator_p): Check for all documented separator types.
5069 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
5070 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
5071
5072 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
5073 so tool bar gets updated.
5074
5075 2003-03-26 Stefan Monnier <monnier@cs.yale.edu>
5076
5077 * data.c (store_symval_forwarding): Re-instate part of the code
5078 that was deleted with too much enthusiasm.
5079
5080 2003-03-25 Stefan Monnier <monnier@cs.yale.edu>
5081
5082 * data.c (store_symval_forwarding): Delete special read-only
5083 hack for type == -1, since we now use ->constant instead.
5084 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
5085
5086 * buffer.c (overlays_in): Declare static.
5087 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
5088 `constant' field rather than the variable's `type' field.
5089
5090 2003-03-24 Andrew Choi <akochoi@shaw.ca>
5091
5092 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
5093
5094 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
5095
5096 * fns.c [MAC_OSX]: Do not redefine vector.
5097
5098 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
5099
5100 * macgui.h: Remove definition of No_Cursor.
5101
5102 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
5103
5104 * xdisp.c: Define No_Cursor.
5105 (x_write_glyphs, notice_overwritten_cursor)
5106 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
5107 (note_mouse_highlight): Remove Mac-specific code.
5108 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
5109
5110 2003-03-24 John Paul Wallington <jpw@gnu.org>
5111
5112 * xdisp.c (redisplay_window): If mini window's buffer is not
5113 empty, then redisplay it like other windows.
5114
5115 2003-03-23 Kim F. Storm <storm@cua.dk>
5116
5117 * w32term.c (w32_draw_window_cursor): Fix last change.
5118
5119 2003-03-23 Kenichi Handa <handa@m17n.org>
5120
5121 * alloc.c (make_string_from_bytes, make_specified_string):
5122 Add `const' for the arg CONTENTS.
5123
5124 * lisp.h (make_string_from_bytes, make_specified_string):
5125 Prototypes adjusted.
5126
5127 2003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5128
5129 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
5130
5131 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
5132 (XG_SB_RANGE): New define.
5133
5134 * gtkutil.c (xg_fixed_handle_expose): New function.
5135 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
5136 expose events.
5137 (xg_update_scrollbar_pos): Take two more arguments, left and width
5138 of scroll bar including borders.
5139 Clear left and right part outside scroll bar separately as some
5140 themes have bars that are not an even number of pixels.
5141 Don't set reallocate_redraws, don't call
5142 gdk_window_process_all_updates.
5143 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
5144 so no need to change it. Calculate size and value with XG_SB_RANGE.
5145
5146 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
5147 Pass left and width of scroll bar including borders to
5148 xg_update_scrollbar_pos.
5149
5150 2003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
5151
5152 * Makefile.in: Make sure space precedes end-of-line backslashes.
5153
5154 2003-03-22 Kim F. Storm <storm@cua.dk>
5155
5156 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
5157 Add generic versions here. Remove system specific versions
5158 defined elsewhere.
5159
5160 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
5161 Add prototypes.
5162
5163 * xterm.h (STORE_NATIVE_RECT): New macro.
5164
5165 2003-03-21 Kim F. Storm <storm@cua.dk>
5166
5167 * xdisp.c (get_glyph_string_clip_rect):
5168 Use FRAME_INTERNAL_BORDER_WIDTH.
5169
5170 * dispextern.h (struct redisplay_interface): Add active_p
5171 argument to draw_window_cursor member. All uses changed.
5172
5173 2003-03-21 Kim F. Storm <storm@cua.dk>
5174
5175 The following changes consolidate code related to writing and
5176 inserting glyphs, exposing frame, the tool bar, the mouse face,
5177 the output cursor, and help echo from xterm.c, w32term.c and
5178 macterm.c into xdisp.c. It also generalizes the use of the
5179 window_part enum instead of using numeric values throughout.
5180
5181 * xdisp.c: Consolidate gui-independent code here.
5182 Include keymap.h.
5183 (Qhelp_echo): Import.
5184 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
5185 (help_echo_string, help_echo_window, help_echo_object)
5186 (previous_help_echo_string, help_echo_pos): Declare here.
5187 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
5188 (estimate_mode_line_height): Define here. Handle windowing
5189 systems directly (without using estimate_mode_line_height_hook).
5190 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
5191 (update_window_cursor, update_cursor_in_window_tree)
5192 (fast_find_position, fast_find_string_pos)
5193 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
5194 (expose_area, expose_line, expose_overlaps, expose_window)
5195 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
5196 declared static as they are only used locally in xdisp.c.
5197 (draw_glyphs): Rename from x_draw_glyphs and make static.
5198 (tool_bar_item_info, notice_overwritten_cursor): Make static.
5199 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
5200 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
5201 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
5202 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
5203 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
5204 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
5205 (note_mouse_highlight, x_clear_window_mouse_face)
5206 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
5207 (x_intersect_rectangles): New generic functions for use by xdisp.c
5208 and GUI front-ends.
5209 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
5210 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
5211
5212 * dispextern.h (Display_Info): Generic typedef for *_display_info.
5213 (NativeRectangle): Generic typedef for rectangle type.
5214 (enum window_part): Move here from window.c.
5215 (struct redisplay_interface): New members flush_display_optional,
5216 define_frame_cursor, clear_frame_area, draw_window_cursor,
5217 draw_vertical_window_border, shift_glyphs_for_insert.
5218 Rename member clear_mouse_face to clear_window_mouse_face.
5219 (estimate_mode_line_height_hook): Remove hook.
5220 (auto_raise_tool_bar_buttons_p): Don't declare extern.
5221 (tool_bar_item_info): Remove prototype.
5222 (help_echo_string, help_echo_window, help_echo_object)
5223 (previous_help_echo_string, help_echo_pos)
5224 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
5225 (x_stretch_cursor_p, output_cursor): Declare extern.
5226 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
5227 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
5228 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
5229 (display_and_set_cursor, set_output_cursor, x_cursor_to)
5230 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
5231 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
5232 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
5233 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
5234 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
5235 Add prototypes.
5236 (mode_line_string, marginal_area_string): Fix prototypes.
5237
5238 * window.c (enum window_part): Move to dispextern.h.
5239 (coordinates_in_window): Use enum window_part member names
5240 instead of numbers to describe return value.
5241 (struct check_window_data): Change part member to window_part.
5242 (check_window_containing): Return window_part unaltered.
5243 (window_from_coordinates): Change part arg from int to enum
5244 window_part. Allow part arg to be null. All users changed.
5245
5246 * window.h (window_from_coordinates): Fix prototype.
5247
5248 * term.c (estimate_mode_line_height): Move to xdisp.c.
5249
5250 * keyboard.c (make_lispy_event): Use enum window_part.
5251
5252 * dispnew.c (mode_line_string, marginal_area_string): Use enum
5253 window_part instead of int in arg list. Users changed.
5254
5255 * xterm.h (No_Cursor): Declare as None for X.
5256 (struct mac_output): Replace member cross_cursor by hand_cursor.
5257
5258 * xterm.c: Remove consolidated defines and code.
5259 (BETWEEN): Remove unused macro.
5260 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
5261 (x_define_frame_cursor, x_clear_frame_area)
5262 (x_draw_window_cursor): New X-specific functions for RIF.
5263 (x_redisplay_interface): Add new members.
5264
5265 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
5266
5267 * w32term.h (struct w32_output): Remove cross_cursor member.
5268
5269 * w32term.c: Remove consolidated defines and code.
5270 (BETWEEN): Remove unused macro.
5271 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
5272 (w32_define_frame_cursor, w32_clear_frame_area)
5273 (w32_draw_window_cursor): New W32-specific functions for RIF.
5274 (w32_redisplay_interface): Add new members.
5275
5276 * w32gui.h (No_Cursor): Define as 0 for W32.
5277 (XRectangle): Add X compatible rectangle type.
5278 (NativeRectangle): Declare as RECT for W32.
5279 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
5280
5281 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
5282
5283 * w32console.c: Remove consolidated defines and code.
5284
5285 * msdos.h (Display_Info): Add generic typedef.
5286
5287 * msdos.c: Remove consolidated defines and code.
5288 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
5289
5290 * macterm.h (struct mac_output): Replace member cross_cursor by
5291 hand_cursor.
5292 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
5293
5294 * macterm.c: Remove consolidated defines and code.
5295 (BETWEEN): Remove unused macro.
5296 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
5297 (mac_define_frame_cursor, mac_clear_frame_area)
5298 (mac_draw_window_cursor): New Mac-specific functions for RIF.
5299 (x_redisplay_interface): Add new members.
5300
5301 * macgui.h (No_Cursor): Define as 0 for Mac.
5302 (XRectangle): Add X compatible rectangle type.
5303 (NativeRectangle): Declare as Rect for Mac.
5304 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
5305
5306 * macfns.c (x_set_mouse_color): Setup hand_cursor.
5307 (x_set_cursor_color): Use x_display_and_set_cursor.
5308
5309 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
5310 included from it. Add dependency on keymap.h.
5311
5312 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
5313
5314 2003-03-21 Kenichi Handa <handa@m17n.org>
5315
5316 * fileio.c (Fexpand_file_name): Fix previous change.
5317
5318 2003-03-19 Kenichi Handa <handa@m17n.org>
5319
5320 * fileio.c (Ffile_name_directory): Reconstruct file name by
5321 make_specified_string.
5322 (Ffile_name_nondirectory, Ffile_name_as_directory)
5323 (Fdirectory_file_name, Fexpand_file_name)
5324 (Fsubstitute_in_file_name): Likewise.
5325 (Fread_file_name): Compare decoded homedir with DIR and
5326 DEFAULT_FILENAME.
5327
5328 * alloc.c (make_specified_string): If NCHARS is negative, count
5329 the number of characters.
5330
5331 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5332
5333 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
5334 all widgets.
5335
5336 * gtkutil.h: Removed xg_ignore_next_thumb.
5337
5338 2003-03-18 Kenichi Handa <handa@m17n.org>
5339
5340 * coding.c (Vchar_coding_system_table): Remove this variable.
5341 (Vcoding_system_safe_chars): New variable.
5342 (intersection): Remove this function.
5343 (find_safe_codings): Don't use Vchar_coding_system_table, but try
5344 all codings in SAFE_CODINGS.
5345 (Ffind_coding_systems_region_internal): Adjust for the change of
5346 find_safe_codings. Get generic coding systems from
5347 Vcoding_system_safe_chars.
5348 (Fdefine_coding_system_internal): New function.
5349 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
5350 Initialize and staticpro Vcoding_system_safe_chars.
5351
5352 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5353
5354 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
5355 equal old values before updating.
5356
5357 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
5358
5359 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
5360
5361 2003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5362
5363 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
5364 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
5365 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
5366 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
5367 (xg_create_scroll_bar): Pass bar to button event callback.
5368 (xg_find_top_left_in_fixed): New function.
5369 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
5370 whole scroll bar area. Get old position with
5371 xg_find_top_left_in_fixed, calculate and only clear needed areas.
5372 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
5373 dragging is in progress. Calculate whole as for Motif.
5374 Remove code that saved last values. Call gtk_range functions to
5375 set scroll bar sizes.
5376
5377 * gtkutil.h: Removed xg_ignore_next_thumb.
5378
5379 2003-03-17 Juanma Barranquero <lektu@terra.es>
5380
5381 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
5382 and files included from it.
5383
5384 2003-03-18 Stefan Monnier <monnier@cs.yale.edu>
5385
5386 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
5387 multiple occurrences of the same keymap under different prefixes.
5388 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
5389
5390 2003-03-16 Jason Rumney <jasonr@gnu.org>
5391
5392 * w32gui.h: Use HDC for Display.
5393
5394 * w32term.c (w32_encode_char): Prevent double-byte chars from
5395 crashing Emacs.
5396
5397 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
5398 as binary.
5399
5400 2003-03-16 Juanma Barranquero <lektu@terra.es>
5401
5402 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
5403
5404 2003-03-16 Kim F. Storm <storm@cua.dk>
5405
5406 The following changes consolidate some of the gui-independent
5407 parts of the processing and drawing of "glyph strings" from
5408 xterm.c, w32term.c, and macterm.c into xdisp.c.
5409
5410 * dispextern.h (struct glyph): Reduce face_id member from 22 to
5411 21 bits (this reduces number of faces from 4M to 2M).
5412 Replace W32 specific w32_font_type member (2 bits) by generic
5413 font_type member (3 bits) for portability.
5414 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
5415 (enum draw_glyphs_face): Define here.
5416 (struct glyph_string): Define here. Merge W32 and X versions.
5417 (struct redisplay_interface): New members per_char_metric,
5418 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
5419 (VCENTER_BASELINE_OFFSET): Define here.
5420 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
5421 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
5422
5423 * xdisp.c: Consolidate gui-independent "glyph string" code here.
5424 (dump_glyph_string): Moved here.
5425 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
5426 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
5427 (fill_composite_glyph_string, fill_glyph_string)
5428 (fill_image_glyph_string, fill_stretch_glyph_string)
5429 (left_overwritten, left_overwriting, right_overwritten)
5430 (right_overwriting, get_char_face_and_encoding)
5431 (set_glyph_string_background_width, compute_overhangs_and_x)
5432 (append_glyph, append_composite_glyph, produce_image_glyph)
5433 (take_vertical_position_into_account, append_stretch_glyph)
5434 (produce_stretch_glyph): New generic functions (based on X version).
5435 Call platform specific functions through rif.
5436 (INIT_GLYPH_STRING): New macro, hides W32 details.
5437 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
5438 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
5439 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
5440 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
5441 (notice_overwritten_cursor):
5442 Generic functions exported to platform modules. Users changed.
5443
5444 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
5445 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
5446 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
5447 New macros for consolidated code.
5448
5449 * xterm.c: Remove consolidated defines and code.
5450 (x_per_char_metric, x_encode_char)
5451 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
5452 (x_redisplay_interface): Add new members.
5453
5454 * w32gui.h (Display): Add dummy typedef for consolidation.
5455 (XChar2b): Define alias for wchar_t for consolidation.
5456 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
5457
5458 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
5459 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
5460 New macros for consolidation.
5461
5462 * w32term.c: Remove consolidated defines and code.
5463 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
5464 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
5465 (w32_per_char_metric): Change font_type arg to int for RIF.
5466 (w32_encode_char): Return int according to RIF requirements.
5467 (w32_compute_glyph_string_overhangs): Adapt to RIF.
5468 (w32_get_glyph_overhangs): New function for RIF. Uses generic
5469 x_get_glyph_overhangs.
5470 (w32_redisplay_interface): Add new members.
5471
5472 * macgui.h (XChar2b): Move typedef here for consolidation.
5473 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
5474
5475 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
5476 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
5477 consolidation.
5478
5479 * macterm.c: Remove consolidated defines and code.
5480 (mac_per_char_metric): New function for RIF.
5481 (mac_encode_char): Adapt to new RIF requirements.
5482 (mac_compute_glyph_string_overhangs): Adapt for RIF.
5483 (x_redisplay_interface): Add new members.
5484
5485 2003-03-15 Stefan Monnier <monnier@cs.yale.edu>
5486
5487 * keymap.c (Vmenu_events): New var.
5488 (syms_of_keymap): Initialize it.
5489 (where_is_internal): Check more carefully what is a menu event.
5490
5491 2003-03-14 Richard M. Stallman <rms@gnu.org>
5492
5493 * lread.c (read1): After #!, exit loop on eof.
5494
5495 2003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5496
5497 * gtkutil.h: Add declaration for xg_frame_cleared.
5498
5499 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
5500
5501 * gtkutil.c (struct xg_last_sb_pos): New structure.
5502 (handle_fixed_child): New function.
5503 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
5504 and force a redraw on them.
5505 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
5506 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
5507 so we can avoid unneeded redraws.
5508 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
5509 and force a redraw on the scroll bar.
5510 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
5511 if xg_last_sb_pos shows the positions are up to date.
5512 (xg_frame_cleared): New function.
5513
5514 2003-03-13 Kenichi Handa <handa@m17n.org>
5515
5516 * coding.c (Fdetect_coding_region): Fix docstring.
5517 (Fdetect_coding_string): Fix docstring.
5518
5519 2003-03-13 Andreas Schwab <schwab@suse.de>
5520
5521 * gtkutil.c: Add prototype for create_menus.
5522
5523 * data.c (long_to_cons): Fix type of top.
5524
5525 * xselect.c (selection_data_to_lisp_data): Use int instead of
5526 long for an integer of size 4.
5527
5528 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
5529 (xg_tool_bar_help_callback): Likewise.
5530
5531 2003-03-12 Andreas Schwab <schwab@suse.de>
5532
5533 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
5534
5535 2003-03-12 Kim F. Storm <storm@cua.dk>
5536
5537 The following changes consolidate the fringe handling from
5538 xterm.c, w32term.c, and macterm.c into xdisp.c.
5539
5540 * xdisp.c: Consolidate fringe handling code here.
5541 (left_bits, right_bits, continued_bits, continuation_bits)
5542 (ov_bits, zv_bits): Define fringe bitmaps.
5543 (fringe_bitmaps): New array holding fringe bitmaps.
5544 (draw_fringe_bitmap): Draw a specific bitmap; call display
5545 specific drawing routine via rif->draw_fringe_bitmap.
5546 (draw_row_fringe_bitmaps): Generic replacement for
5547 x_draw_row_fringe_bitmaps; all callers changed.
5548 (compute_fringe_widths): Generic replacement for
5549 x_compute_fringe_widths; all callers changed.
5550
5551 * dispextern.h (enum fringe_bitmap_type): Define here.
5552 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
5553 (fringe_bitmaps): Declare extern.
5554 (struct redisplay_interface): New member draw_fringe_bitmap.
5555 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
5556
5557 * xterm.c: Remove generic fringe code.
5558 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
5559 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
5560
5561 * w32term.c: Remove generic fringe code.
5562 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
5563 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
5564
5565 * macterm.c: Remove generic fringe code.
5566 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
5567 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
5568
5569 2003-03-11 Stefan Monnier <monnier@cs.yale.edu>
5570
5571 * print.c (Fprin1_to_string): Return unibyte string if possible.
5572
5573 2003-03-09 David Kastrup <dak@gnu.org>
5574
5575 * process.c (read_process_output): We have allocated enough space
5576 for readmax and carryover, so actually use the alloted space.
5577
5578 2003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5579
5580 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
5581 toolkit scrollbar click.
5582
5583 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
5584 for USE_GTK.
5585 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
5586 also.
5587 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
5588 scrollbar and control is pressed, call x_scroll_bar_handle_click.
5589
5590 * gtkutil.h: Declare xg_get_scroll_id_for_window.
5591
5592 * gtkutil.c (xg_get_scroll_id_for_window): New function.
5593 (xg_tool_bar_item_expose_callback): New function.
5594 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
5595 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
5596 on the tool bar widget.
5597 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
5598 to expose on the tool bar item widgets.
5599
5600 2003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5601
5602 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
5603 struct image* when deciding to update (struct image* may have been
5604 deleted from the image cache).
5605
5606 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
5607 the event isn't for a frame (i.e. for dialogs).
5608
5609 2003-03-07 Kenichi Handa <handa@m17n.org>
5610
5611 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
5612 composition components reaches the limit, terminate composing.
5613 (COMPOSITION_OK): New macro.
5614 (detect_coding_iso2022): Use it if an escape sequence for
5615 composition is found.
5616 (coding_restore_composition): Adjust the number of composition
5617 components if it is not sane.
5618
5619 2003-03-06 Juanma Barranquero <lektu@terra.es>
5620
5621 * w32term.h (struct w32_display_info): Add xrdb member to support
5622 passing resources via -xrm on Windows.
5623
5624 * w32term.c (w32_make_rdb): New function.
5625 (w32_term_init): Use it to initialize xrdb member of w32_display_info
5626 struct. Delete leftover code.
5627
5628 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
5629 for resources passed on the command line.
5630
5631 * w32reg.c (w32_get_rdb_resource): New function.
5632 (x_get_string_resource): Use it, so resources passed with -xrm
5633 supercede the ones in the registry.
5634
5635 2003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5636
5637 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
5638 instead of x_top_window_to_frame.
5639
5640 2003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5641
5642 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
5643 when restarting Emacs.
5644
5645 2003-03-03 Richard M. Stallman <rms@gnu.org>
5646
5647 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
5648 to run kill-buffer-query-functions.
5649 (Qkill_buffer_query_functions): New var.
5650 (syms_of_buffer): Init and staticpro it.
5651
5652 2003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5653
5654 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
5655
5656 2003-02-25 Kim F. Storm <storm@cua.dk>
5657
5658 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
5659 If centering point failed to make whole line visible and vscroll
5660 is non-zero, disable vscroll and try centering point again.
5661
5662 * lread.c (read1): Accept `single space' syntax like (? x).
5663
5664 2003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5665
5666 * keyboard.c (cancel_hourglass_unwind): Surround with
5667 #ifdef HAVE_X_WINDOWS
5668
5669 2003-02-25 Kenichi Handa <handa@m17n.org>
5670
5671 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
5672 process only when "subprocesses" is defined.
5673
5674 2003-02-24 Stefan Monnier <monnier@cs.yale.edu>
5675
5676 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
5677
5678 2003-02-24 Juanma Barranquero <lektu@terra.es>
5679
5680 * callint.c (fix_command): Declare as static void and move before
5681 Fcall_interactively.
5682
5683 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
5684 (syms_of_xdisp): Don't initialize Qwhen.
5685
5686 2003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5687
5688 * keyboard.c (cancel_hourglass_unwind): New function.
5689 (command_loop_1): Cancel hourglass with unwind-protect.
5690
5691 2003-02-23 Richard M. Stallman <rms@gnu.org>
5692
5693 * callint.c (fix_command): New subroutine, from Fcall_interactively.
5694 Detect (when ... (region-beginning)) etc.
5695 (Fcall_interactively): Call fix_command.
5696 (Qif, Qwhen): New variables.
5697 (syms_of_callint): Init and staticpro them.
5698
5699 * regex.c (print_partial_compiled_pattern): Output to stderr.
5700
5701 2003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
5702
5703 * dired.c (directory_files_internal): Don't expand directory.
5704 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
5705 instead. From Lars Hansen <larsh@math.ku.dk>.
5706
5707 2003-02-22 Stefan Monnier <monnier@cs.yale.edu>
5708
5709 * fns.c (string_to_multibyte): Remove unused var i.
5710 (Flanginfo): Fix int/Lisp_Object mixup.
5711 (void_call2): New fun.
5712 (Fmap_char_table): Use it in place of call2.
5713
5714 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
5715
5716 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
5717
5718 * keymap.c (copy_keymap_1): Make it static.
5719
5720 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
5721
5722 2003-02-22 David Ponce <david@dponce.com>
5723
5724 * lread.c (Fload): Don't check STRING_MULTIBYTE.
5725
5726 2003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5727
5728 * process.h: Removed subtty field from struct Lisp_Process.
5729
5730 * process.c (create_process): Remove setting of subtty.
5731 (emacs_get_tty_pgrp): New function.
5732 (Fprocess_running_child_p, process_send_signal):
5733 Call emacs_get_tty_pgrp instead of ioctl.
5734 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
5735
5736 2003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
5737
5738 * keymap.c (Fdefine_key): Doc fix.
5739
5740 2003-02-21 Juanma Barranquero <lektu@terra.es>
5741
5742 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
5743
5744 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
5745 POLLING_PROBLEM_IN_SELECT.
5746
5747 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
5748 Delete #undef of POLLING_PROBLEM_IN_SELECT.
5749
5750 * s/hpux10-20.h: New file.
5751
5752 * process.c (wait_reading_process_input):
5753 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
5754
5755 2003-02-20 Kenichi Handa <handa@m17n.org>
5756
5757 * fontset.c (check_fontset_name): If NAME is nil, return the
5758 default fontset.
5759 (override_font_info): New function.
5760 (Fset_fontset_font): Document that NAME nil means the default fontset.
5761 (Ffontset_info): If FONTSET is not the default fontset, merge
5762 FONTSET onto the copy of the default fontset, and work on that
5763 copy. Document that NAME nil means the default fontset.
5764 (Ffontset_font): Document that NAME nil means the default fontset.
5765
5766 * process.c (setup_process_coding_systems): If the process's
5767 in/out descriptor is -1, do nothing.
5768
5769 2003-02-19 Andreas Schwab <schwab@suse.de>
5770
5771 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
5772 Add prototypes.
5773
5774 2003-02-19 Kenichi Handa <handa@m17n.org>
5775
5776 * xfaces.c (try_alternative_families): Try all scalable fonts if
5777 Vscalable_fonts_allowed is not Qt.
5778
5779 2003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5780
5781 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
5782
5783 2003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5784
5785 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
5786 names.
5787
5788 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
5789 (sorted_font_list): Move allocation of struct font_name to
5790 x_face_list_fonts.
5791 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
5792 (Fx_list_fonts): Set maxnames to -1 to get all font names.
5793
5794 2003-02-18 Kim F. Storm <storm@cua.dk>
5795
5796 * lread.c (read1): Fix last change.
5797 "`" is not always special. Allow "?" after a character constant.
5798
5799 2003-02-18 Andrew Choi <akochoi@shaw.ca>
5800
5801 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
5802
5803 2003-02-18 Andreas Schwab <schwab@suse.de>
5804
5805 * window.c (window_scroll_pixel_based): Move outside a
5806 multi-glyph character before setting new window start.
5807
5808 * xdisp.c (in_display_vector_p): New function.
5809 * dispextern.h (in_display_vector_p): Declare.
5810
5811 2003-02-18 Kim F. Storm <storm@cua.dk>
5812
5813 * lread.c (read1): Fix and relax read syntax.
5814 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
5815 Only recognize "," after dotted-pair dot if inside backquote.
5816 Never include "`" or "," (inside backquote) in a symbol.
5817 Allow dotted-pair dot after a character constant.
5818 Allow "`" and "," (inside backquote) after a character constant.
5819
5820 2003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5821
5822 * gtkutil.c (xg_tool_bar_expose_callback): New function.
5823 (xg_create_tool_bar): Force style of tool bar to be horizontal with
5824 icons. Set name of tool bar to emacs-toolbar.
5825 (update_frame_tool_bar): Connect expose event to
5826 xg_tool_bar_expose_callback.
5827
5828 2003-02-17 Richard M. Stallman <rms@gnu.org>
5829
5830 * keyboard.c (this_command_key_count_reset): New variable.
5831 Initiatize to 0 where this_command_key_count is set.
5832 (read_char): Save and restore this_command_key_count_reset
5833 around input method code.
5834 (read_char): If this_command_key_count_reset, echo reread commands.
5835 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
5836
5837 2003-02-17 Kenichi Handa <handa@m17n.org>
5838
5839 * fns.c (string_to_multibyte): Always return a multibyte string.
5840
5841 2003-02-16 Jason Rumney <jasonr@gnu.org>
5842
5843 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
5844 Negative max_fonts parameter means list all.
5845
5846 2003-02-14 Dave Love <fx@gnu.org>
5847
5848 * fns.c (Flanginfo): Doc fix.
5849
5850 2003-02-13 Kim F. Storm <storm@cua.dk>
5851
5852 * lread.c (read_escape): Interpret \s as a SPACE character, except
5853 for \s-X in a character constant which still is the super modifier.
5854 (read1): Signal an `invalid read syntax' error if a character
5855 constant is immediately followed by a digit or symbol character.
5856
5857 * search.c (Fmatch_data): Doc fix. Explicitly state that
5858 match-data is undefined if last search failed.
5859
5860 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
5861 All uses changed.
5862
5863 2003-02-12 Juanma Barranquero <lektu@terra.es>
5864
5865 * eval.c (Fdefmacro): Fix typo.
5866
5867 2003-02-12 Kim F. Storm <storm@cua.dk>
5868
5869 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
5870 macro is a string, convert meta modifiers in string when copying
5871 the string into a vector.
5872
5873 2003-02-11 Kim F. Storm <storm@cua.dk>
5874
5875 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
5876
5877 2003-02-11 Kenichi Handa <handa@m17n.org>
5878
5879 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
5880
5881 2003-02-10 Kim F. Storm <storm@cua.dk>
5882
5883 * process.c: Doc fixes.
5884 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
5885
5886 2003-02-10 Kenichi Handa <handa@m17n.org>
5887
5888 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
5889
5890 * process.c (QCfilter_multibyte): New variable.
5891 (setup_process_coding_systems): New function.
5892 (Fset_process_buffer, Fset_process_filter):
5893 Call setup_process_coding_systems.
5894 (Fstart_process): Initialize the member `filter_multibyte' of
5895 struct Lisp_Process.
5896 (create_process): Call setup_process_coding_systems.
5897 (Fmake_network_process): New keyward `:filter-multibyte'.
5898 Initialize the member `filter_multibyte' of struct Lisp_Process.
5899 Call setup_process_coding_systems.
5900 (server_accept_connection): Call setup_process_coding_systems.
5901 (read_process_output): If the process has a filter, decide the
5902 multibyteness of a string to given to the filter by
5903 `filter_multibyte' member of the process. If the process doesn't
5904 have a filter and the result of conversion is unibyte, use
5905 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
5906 multibyte form.
5907 (Fset_process_coding_system): Call setup_process_coding_systems.
5908 (Fset_process_filter_multibyte): New function.
5909 (Fprocess_filter_multibyte_p): New function.
5910 (syms_of_process): Intern and staticpro QCfilter_multibyte.
5911 Defsubr Sset_process_filter_multibyte and
5912 Sprocess_filter_multibyte_p.
5913
5914 * process.h (struct Lisp_Process): New member filter_multibyte.
5915
5916 * lisp.h (setup_process_coding_systems): Add prototype.
5917
5918 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
5919 process, update coding systems for the process.
5920
5921 2003-02-09 Kenichi Handa <handa@m17n.org>
5922
5923 * fns.c (string_to_multibyte): New function.
5924 (Fstring_to_multibyte): New function.
5925 (syms_of_fns): Defsubr it.
5926
5927 2003-02-08 Andreas Schwab <schwab@suse.de>
5928
5929 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
5930 instead of the substitution.
5931
5932 2003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5933
5934 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
5935
5936 * xmenu.c (menu_position_func): Adjust menu popup position so that
5937 the menu is fully visible.
5938
5939 2003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5940
5941 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
5942 (x_make_frame_invisible, x_wm_set_icon_position):
5943 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
5944
5945 * xfns.c (x_set_name, x_set_title): Ditto.
5946
5947 2003-02-04 Richard M. Stallman <rms@gnu.org>
5948
5949 * keyboard.c (echo_now): Update before_command_echo_length.
5950 (Freset_this_command_lengths): Reset this_command_key_count etc.
5951 immediately rather than arranging to do it later.
5952 (before_command_key_count_1, before_command_echo_length_1)
5953 (before_command_restore_flag): Vars deleted.
5954 (add_command_key): Don't handle before_command_restore_flag.
5955 (read_char, record_menu_key): Don't update before_command_key_count or
5956 before_command_echo_length.
5957 (read_char): Don't handle before_command_restore_flag.
5958
5959 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
5960 in direct-output clauses if it wouldn't be called in the ordinary case.
5961
5962 2003-02-04 Kim F. Storm <storm@cua.dk>
5963
5964 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
5965
5966 2003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5967
5968 * gtkutil.c (remove_from_container): Copying list is not needed.
5969 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
5970 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
5971 on list returned from gtk_container_get_children to avoid memory leak.
5972
5973 2003-02-01 Jason Rumney <jasonr@gnu.org>
5974
5975 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
5976 local malloc.
5977 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
5978 definitions in xpm.h.
5979 (init_xpm_functions): New function.
5980 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5981 (init_external_image_libraries): Try to load libXpm.dll.
5982
5983 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
5984 timestamp.
5985
5986 2003-01-31 Dave Love <fx@gnu.org>
5987
5988 * syntax.c (Fskip_chars_forward)
5989 (open-paren-in-column-0-is-defun-start): Doc fix.
5990
5991 2003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
5992
5993 * fileio.c: Support // at start of name for Cygwin (just added proper
5994 preprocessor tests).
5995
5996 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
5997
5998 * Makefile.in: Use @EXEEXT@ for Cygwin.
5999
6000 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
6001
6002 * s/cygwin.h: Added for Cygwin port.
6003
6004 2003-01-31 Juanma Barranquero <lektu@terra.es>
6005
6006 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
6007 when including gif_lib.h.
6008 (init_gif_functions, init_tiff_functions): New functions.
6009 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
6010 Windows. Disable color table lookups. Call library functions
6011 through pointers determined at runtime.
6012 (init_external_image_libraries): Try to load libungif.dll and
6013 libtiff.dll.
6014
6015 2003-01-31 Kenichi Handa <handa@m17n.org>
6016
6017 * xdisp.c (SKIP_GLYPHS): New macro.
6018 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
6019
6020 2003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6021
6022 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
6023
6024 2003-01-30 Dave Love <fx@gnu.org>
6025
6026 * alloc.c (Vgc_elapsed, gcs_done): New variables.
6027 (Fgarbage_collect): Use them.
6028 (init_alloc, syms_of_alloc): Set them up.
6029
6030 2003-01-30 Juanma Barranquero <lektu@terra.es>
6031
6032 * w32fns.c (init_external_image_libraries): Add missing operator.
6033
6034 2003-01-29 Jason Rumney <jasonr@gnu.org>
6035
6036 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
6037 an alternative name for jpeg.dll.
6038
6039 2003-01-29 Kenichi Handa <handa@m17n.org>
6040
6041 * xdisp.c (set_cursor_from_row): Pay attention to string display
6042 properties.
6043
6044 2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
6045
6046 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
6047 <escape>.
6048 (keycode_to_xkeysym_table): Reformat and add more comments.
6049 (XTread_socket): Drop special case for backspace.
6050
6051 2003-01-28 Andrew Choi <akochoi@shaw.ca>
6052
6053 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
6054 values in old-style RGB specs.
6055
6056 2003-01-27 Juanma Barranquero <lektu@terra.es>
6057
6058 * w32fns.c (init_external_image_libraries): Try alternate names for the
6059 jpeg dll.
6060
6061 2003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6062
6063 * gtkutil.c (create_dialog, xg_separator_p)
6064 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
6065 before calling strcmp or strlen.
6066
6067 2003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6068
6069 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
6070 and handle image load failure.
6071
6072 2003-01-26 Jason Rumney <jasonr@gnu.org>
6073
6074 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
6075 New functions.
6076 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
6077 Disable color table lookups. Call jpeg library functions
6078 through pointers determined at runtime.
6079 (init_external_image_libraries): Try to load jpeg.dll.
6080
6081 2003-01-25 Richard M. Stallman <rms@gnu.org>
6082
6083 * lisp.h: Declare format2 instead of format1.
6084
6085 * fileio.c (barf_or_query_if_file_exists):
6086 Call format2 instead of format1.
6087
6088 * editfns.c (format2): New function, replaces format1
6089 but takes exactly two Lisp Objects as format args.
6090
6091 * buffer.c (Fkill_buffer): Call format2 instead of format1.
6092
6093 2003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6094
6095 * xterm.h: Change to return value of x_dispatch_event to int.
6096
6097 * xterm.c (x_filter_event): New function.
6098 (event_handler_gdk, XTread_socket): Call x_filter_event.
6099 (x_dispatch_event): Change to return value of finish.
6100 (event_handler_gdk): Use return value from x_dispatch_event.
6101
6102 * xfns.c (x_window): Call create_frame_xic for GTK version to
6103 initialize input methods.
6104
6105 * gtkutil.h: Add (void) prototypes.
6106
6107 * gtkutil.c (create_menus): Remove code that puts the help menu to
6108 the right.
6109
6110 2003-01-25 Jason Rumney <jasonr@gnu.org>
6111
6112 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
6113 [HAVE_PNG]: Sync with xfns.c version.
6114 (png_load): Adjust colors for Windows. Use Windows
6115 bitmaps. Disable color table lookups.
6116 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
6117 (init_png_functions): New function.
6118 (png_read_from_memory, png_load): Call png library functions
6119 through pointers determined at runtime.
6120 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
6121 (init_external_image_libraries): New function.
6122 (init_xfns): Call it.
6123
6124 2003-01-24 Andreas Schwab <schwab@suse.de>
6125
6126 * minibuf.c (Fminibuffer_message): Verify type of parameter.
6127
6128 2003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6129
6130 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
6131 of static initializer.
6132
6133 2003-01-24 Dave Love <fx@gnu.org>
6134
6135 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
6136 architectures.
6137
6138 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
6139 Use __alignof__.
6140
6141 2003-01-24 Kenichi Handa <handa@m17n.org>
6142
6143 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
6144 It it is nonzero, don't pretend that an invisible area doesn't exist.
6145 (command_loop_1): Call adjust_point_for_property with proper
6146 second arg.
6147
6148 2003-01-22 Jason Rumney <jasonr@gnu.org>
6149
6150 Sync changes with xterm.c and xfns.c.
6151
6152 * w32term.c (x_draw_glyph_string_foreground)
6153 (x_draw_composite_glyph_string_foreground): Implement overstriking.
6154
6155 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
6156 phys_cursor's hpos is overwritten. This is still not completely
6157 correct, as it doesn't really make sense to use hpos at all to
6158 get the cursor glyph (as that is relative to the width of the
6159 characters on the line, which may have changed during the update).
6160
6161 * w32term.c (notice_overwritten_cursor): Handle the special case
6162 of the cursor being in the first blank non-text line at the
6163 end of a window.
6164
6165 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
6166 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
6167 Compute from the x position returned by x_draw_glyphs.
6168
6169 (x_display_and_set_cursor): Don't set phys_cursor_width here,
6170 except for NO_CURSOR and system caret, to make phys_cursor_width
6171 contain what its name suggests.
6172 (notice_overwritten_cursor): Consider the cursor image erased if
6173 the output area intersects the cursor image in y-direction.
6174
6175 * w32term.c (note_mode_line_or_margin_highlight): Rename from
6176 note_mode_line_highlight and extend.
6177
6178 * w32term.c (last_window): New variable.
6179 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
6180 (note_mouse_movement): Remove reimplemented code in #if 0.
6181
6182 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
6183 not update_mode_lines, and always set it to 1.
6184
6185 2003-01-21 Jason Rumney <jasonr@gnu.org>
6186
6187 * w32fns.c (IDC_HAND): Define it if system headers don't.
6188
6189 2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
6190
6191 * w32term.h (struct w32_output): New member hand_cursor.
6192 (WM_EMACS_SETCURSOR): New message definition.
6193
6194 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
6195 function w32_define_cursor.
6196 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
6197 position, change member name output_data.x to output_data.w32 and
6198 add function w32_define_cursor.
6199 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
6200 and change member name output_data.x to output_data.w32.
6201 (w32_initialize_display_info):
6202 Setup dpyinfo->vertical_scroll_bar_cursor.
6203
6204 * w32fns.c (Vx_hand_shape): New variable.
6205 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
6206 WM_EMACS_SETCURSOR.
6207 (x-create-frame): Setup Cursor types.
6208
6209 2003-01-21 David Ponce <david@dponce.com>
6210
6211 * w32term.c (w32_encode_char): For DIM=1 charset, set
6212 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
6213 x_encode_char change by Kenichi Handa <handa@m17n.org> on
6214 2002-09-30.)
6215 (w32_draw_relief_rect): Declare all args.
6216 (w32_define_cursor): New.
6217
6218 * w32fns.c (w32_load_cursor): New function.
6219 (w32_init_class): Use it.
6220 (x_put_x_image): Declare all args.
6221
6222 2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
6223
6224 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
6225
6226 2003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6227
6228 * gtkutil.c: Must include stdio.h before termhooks.h
6229
6230 2003-01-21 Dave Love <fx@gnu.org>
6231
6232 * alloc.c (Fgc_status): Print zombie list.
6233 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
6234 Fix assignment of zombies.
6235 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
6236 Don't take car of non-cons.
6237
6238 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6239
6240 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6241
6242 2003-01-20 David Ponce <david@dponce.com>
6243
6244 * w32menu.c (digest_single_submenu): Declare all args.
6245
6246 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
6247 changes in xmenu.c:
6248
6249 (parse_single_submenu): Use individual keymap's prompt
6250 string as pane name, if there is one.
6251 (set_frame_menubar): Save menu_items_n_panes from each call to
6252 parse_single_submenu and use it when calling digest_single_submenu.
6253
6254 2003-01-20 Steven Tamm <steventamm@mac.com>
6255
6256 * macterm.c (XTread_socket): Checks for valid, visible window
6257 before sending a scroll-wheel event.
6258
6259 2003-01-20 Richard M. Stallman <rms@gnu.org>
6260
6261 * xdisp.c (redisplay_window): If mini window's buffer is not
6262 a minibuffer, then redisplay it like other windows.
6263
6264 2003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6265
6266 * gtkutil.c (xg_create_frame_widgets): Check if there is an
6267 external tool bar before setting tool bar height.
6268
6269 2003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6270
6271 * xterm.c (handle_one_xevent): Surround popup_activated
6272 with #ifdef:s for non-toolkit version.
6273
6274 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
6275 (gtkutil.o): New file.
6276 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
6277 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
6278
6279 * gtkutil.c: New file for GTK version.
6280
6281 * gtkutil.h: New file for GTK version.
6282
6283 * xterm.h: Add xt_or_gtk_widget.
6284 Include gtk files for USE_GTK.
6285 (struct x_output): Add toolbar_height.
6286 (struct x_output): Add GTK widgets and Gdk size_hints.
6287 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
6288 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
6289 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
6290
6291 * xterm.c: Include gtkutil.h for USE_GTK.
6292 Declare extern void free_frame_menubar for USE_GTK.
6293 (note_mouse_highlight): Check popup_activated for USE_GTK.
6294 (xt_action_hook): Don't compile if USE_GTK.
6295 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
6296 (xg_scroll_callback): New function.
6297 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
6298 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
6299 for USE_GTK.
6300 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
6301 xg_show_scroll_bar for USE_GTK.
6302 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
6303 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
6304 (event_handler_gdk): New function for USE_GTK.
6305 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
6306 (handle_one_xevent): Make sure widget is mapped before
6307 calling x_real_positions for USE_GTK.
6308 (XTread_socket): Add GTK event loop for USE_GTK.
6309 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
6310 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
6311 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
6312 (x_iconify_frame): Add code for USE_GTK.
6313 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
6314 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
6315 is in gtkutil.c.
6316 (x_term_init): Add initialization for GTK.
6317 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
6318
6319 * xmenu.c: Include gtkutil.h for USE_GTK.
6320 (Fx_popup_menu): Use current position if x and y is NIL.
6321 (single_menu_item, single_menu_item, Fx_popup_dialog):
6322 Check for USE_GTK.
6323 (popup_widget_loop): New function for USE_GTK.
6324 (x_activate_menubar): Add code for USE_GTK.
6325 (popup_activate_callback, popup_deactivate_callback)
6326 (menu_highlight_callback, menubar_selection_callback):
6327 Add USE_GTK versions.
6328 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
6329 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
6330 (free_frame_menubar): Only compile if not USE_GTK. GTK version
6331 is in gtkutil.c.
6332 (popup_selection_callback): New version for USE_GTK.
6333 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6334 one USE_X_TOOLKIT version.
6335 (xmenu_show): Call create_and_show_popup_menu.
6336 (dialog_selection_callback): New version for USE_GTK.
6337 (create_and_show_dialog): New fuction, one USE_GTK version and
6338 one USE_X_TOOLKIT version.
6339 (xdialog_show): Call create_and_show_dialog.
6340
6341 * xfns.c: Include gtkutil for USE_GTK.
6342 (x_window_to_frame, x_any_window_to_frame)
6343 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
6344 (x_top_window_to_frame): Add code for USE_GTK.
6345 (x_set_background_color): Call xg_set_background_color for GTK.
6346 (x_set_menu_bar_lines): Check for USE_GTK.
6347 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
6348 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
6349 (x_window): Call xg_create_frame_widgets for USE_GTK.
6350 (Fx_create_frame): Check for USE_GTK
6351 (Fx_file_dialog): New implementation for USE_GTK.
6352
6353 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
6354 (update_menu_bar): Add check for USE_GTK.
6355 (update_tool_bar): Add check for USE_GTK and external tool bar.
6356 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
6357 (redisplay_internal): Add check for USE_GTK and popup_activated.
6358 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
6359 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
6360 (display_menu_bar): Add check for USE_GTK
6361
6362 * lisp.h: Declare Vx_resource_name extern.
6363
6364 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
6365 for USE_GTK.
6366 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
6367
6368 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
6369 (FRAME_EXTERNAL_TOOL_BAR): New macro.
6370 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
6371
6372 * fileio.c (Fread_file_name): Add check for USE_GTK.
6373
6374 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
6375 Add check for USE_GTK.
6376
6377 * config.in: Added HAVE_GTK
6378
6379 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
6380
6381 2003-01-18 Stefan Monnier <monnier@cs.yale.edu>
6382
6383 * charset.h (Funibyte_char_to_multibyte): Export.
6384
6385 2003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6386
6387 * xmenu.c (mouse_position_for_popup): New function.
6388 (Fx_popup_menu): Call mouse_position_for_popup for X and
6389 mouse_position_hook for others.
6390
6391 2003-01-17 Kim F. Storm <storm@cua.dk>
6392
6393 * editfns.c (Finsert): Mention `string-make-multibyte' and
6394 `string-as-multibyte' in doc string.
6395
6396 2003-01-17 Kenichi Handa <handa@m17n.org>
6397
6398 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
6399
6400 * editfns.c (Fformat): Convert an unibyte char argument that is
6401 formatted by "%c" to multibyte if the total result must be a
6402 multibyte string.
6403
6404 2003-01-16 Kim F. Storm <storm@cua.dk>
6405
6406 * process.c (set-process-filter): Document unibyte/multibyte-ness
6407 of string argument.
6408
6409 2003-01-16 Kenichi Handa <handa@m17n.org>
6410
6411 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
6412
6413 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
6414 (re_search_2): Likewise.
6415
6416 2003-01-15 Kenichi Handa <handa@m17n.org>
6417
6418 * xdisp.c (message_dolog): Fix bug of the case that *Message*
6419 buffer is unibyte.
6420
6421 2003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
6422
6423 * fns.c (Fsubstring): Clarify doc string.
6424
6425 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
6426 (Fprevious_char_property_change)
6427 (Fnext_single_char_property_change)
6428 (Fprevious_single_char_property_change, Fnext_property_change)
6429 (Fnext_single_property_change, Fprevious_property_change)
6430 (Fprevious_single_property_change, Fadd_text_properties)
6431 (Fput_text_property, Fset_text_properties)
6432 (Fremove_text_properties, Fremove_list_of_text_properties)
6433 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
6434
6435 2003-01-14 Kim F. Storm <storm@cua.dk>
6436
6437 * process.h (struct Lisp_Process): New member plist replaces old
6438 member private_vars. All uses changed.
6439
6440 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6441 (QCplist): Rename from QCvars. Change all uses.
6442 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6443 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
6444 (syms_of_process): Intern, staticpro, defsubr these.
6445 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
6446
6447 2003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
6448
6449 * m/delta.h: Remove (obsolete).
6450
6451 2003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
6452
6453 * fileio.c (Fdelete_directory, Fdelete_file): Document the
6454 behaviour in front of symlinks.
6455 (Fdelete_file): Raise an error on directories.
6456
6457 2003-01-13 Dave Love <fx@gnu.org>
6458
6459 * fns.c (Freverse): Use QUIT.
6460
6461 2003-01-13 Richard M. Stallman <rms@gnu.org>
6462
6463 * minibuf.c (minibuffer_completion_contents):
6464 Error if point is inside prompt.
6465
6466 * keyboard.c (command_loop_1): Don't redisplay directly
6467 if there's a post-command-hook.
6468
6469 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
6470 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
6471
6472 2003-01-12 Kim F. Storm <storm@cua.dk>
6473
6474 * process.h (struct Lisp_Process): New member private_vars.
6475
6476 * process.c (QCvars): New variable.
6477 (syms_of_process): Intern and staticpro it.
6478 (Fset_process_contact): Removed function.
6479 (Fprocess_variable, Fset_process_variable): New functions.
6480 (syms_of_process): Defsubr them.
6481 (Fstart_process): Initialize private_vars plist to nil.
6482 (Fmake_network_process): New arg :vars to setup the private
6483 variables for new network process.
6484 (server_accept_connection): Copy server's private variables to
6485 client process.
6486
6487 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
6488 crashes). Code rewritten and simplified. Now directly aligns the
6489 pointer and recalculates pure_bytes_used, rather than aligning the
6490 size and adjusting the pointer.
6491
6492 2003-01-11 Kim F. Storm <storm@cua.dk>
6493
6494 * process.c (Fset_process_contact): New function.
6495 (syms_of_process): defsubr it.
6496 (make-network-process): Update doc.
6497
6498 2003-01-10 Andreas Schwab <schwab@suse.de>
6499
6500 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
6501 Reported by Berthold Gunreben <b.gunreben@web.de>.
6502
6503 2003-01-10 Dave Love <fx@gnu.org>
6504
6505 * composite.c (syms_of_composite): Make composition_hash_table weak.
6506
6507 2003-01-09 Kim F. Storm <storm@cua.dk>
6508
6509 * process.c (Fmake_network_process): Convert new port number
6510 to host byte order for `:service t' case. From Mario Lang.
6511
6512 2003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6513
6514 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
6515 instead of XtAppProcessEvent.
6516
6517 * xterm.c (handle_one_xevent): New function.
6518 (x_dispatch_event): New function.
6519 (XTread_socket): Call handle_one_xevent.
6520
6521 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
6522
6523 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
6524 call XQueryPointer to get coordinates.
6525 (popup_get_selection): Do not set popup_activated_flag to zero,
6526 let popup_deactivate_callback do that. Needed for Motif.
6527 Call x_dispatch_event instead of XtDispatchEvent.
6528 (xmenu_show): Calculate root coordinate from frame top/left position.
6529
6530 2003-01-08 Kim F. Storm <storm@cua.dk>
6531
6532 * process.c (server_accept_connection): Fix recording of new
6533 connection's local address in :local property of contact info.
6534 (Fmake_network_process): Record local network address for new
6535 client processes in :local property of contact info.
6536 (format-network-address): Add arg OMIT-PORT. Change callers.
6537
6538 2003-01-07 Dave Love <fx@gnu.org>
6539
6540 * Makefile.in (fns.o): Depend on coding.h.
6541
6542 2003-01-07 Markus Rost <rost@math.ohio-state.edu>
6543
6544 * minibuf.c (Fread_variable): Doc fix.
6545
6546 * eval.c (Fuser_variable_p): Doc change. For custom variables,
6547 use the same test as for custom-variable-p.
6548
6549 2003-01-05 Richard M. Stallman <rms@gnu.org>
6550
6551 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
6552 Count LAST_LINE_MISFIT in scroll margin for end of window.
6553 Move label too_near_end before setting SCROLL_MARGIN_POS.
6554 Set LAST_LINE_MISFIT before jumping there.
6555
6556 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
6557 scroll_conservatively case. If scrolling that much doesn't change
6558 STARTP, move it down one line.
6559
6560 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
6561 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
6562
6563 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
6564 selected frame.
6565
6566 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
6567 (syms_of_keymap): staticpro them.
6568 (Fapropos_internal): Initialize them and clear them out.
6569 Don't GCPRO them.
6570
6571 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
6572 Doc fixes.
6573
6574 * lisp.h: New misc type Lisp_Save_Value.
6575 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
6576 (XSAVE_VALUE): New macro.
6577 (struct Lisp_Save_Value): New data type.
6578 (union Lisp_Misc): Add u_save_value alternative.
6579 (make_save_value): Declared.
6580
6581 * alloc.c (make_save_value): New function.
6582
6583 * xterm.c (x_catch_errors): Save dpy using make_save_value.
6584 (x_catch_errors_unwind): Call XSync.
6585
6586 2003-01-01 Richard M. Stallman <rms@gnu.org>
6587
6588 * window.c (window_scroll_pixel_based): Partially undo last change.
6589
6590 * keyboard.c (command_loop_1): Call adjust_point_for_property
6591 in direct action cases for Qforward_char and Qbackward_char.
6592 Set already_adjusted so it won't be done twice.
6593
6594 2002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
6595
6596 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
6597 type definition of size_t.
6598
6599 2003-01-02 Steven Tamm <steventamm@mac.com>
6600
6601 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
6602 distinguish Carbon GUI builds from X11 builds on darwin.
6603
6604 2002-12-30 Steven Tamm <steventamm@mac.com>
6605
6606 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
6607 to default to t.
6608
6609 2002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
6610
6611 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
6612
6613 2002-12-28 Steven Tamm <steventamm@mac.com>
6614
6615 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
6616 allow building in a different directory than source. Uses some
6617 GNU Make extensions, but there is no other make on Mac OS X.
6618
6619 2002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
6620
6621 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
6622 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
6623 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
6624 (Fstring_to_number): Mention the returned value in the doc strings.
6625
6626 2002-12-23 Richard M. Stallman <rms@gnu.org>
6627
6628 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
6629 <scroll-down-aggressively>: Doc fix.
6630
6631 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
6632 string as pane name, if there is one.
6633 (set_frame_menubar): Save menu_items_n_panes from each call to
6634 parse_single_submenu and use it when calling digest_single_submenu.
6635
6636 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
6637 Don't try to make last line fully visible if it is past end of window.
6638
6639 2002-12-22 Steven Tamm <steventamm@mac.com>
6640
6641 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
6642 (mac_menu_show): Add support for hierarchical popup menus.
6643 (add_menu_item): Remove indentation support.
6644 (fill_submenu, fill_menu): Create hierarchical menus
6645 instead of using indentation.
6646
6647 2002-12-22 Richard M. Stallman <rms@gnu.org>
6648
6649 * xdisp.c (try_cursor_movement): Don't call try_window here.
6650 (redisplay_window): Never redisplay minibuffer when inactive.
6651
6652 * window.c (select_window_1): Undo 9/21 change.
6653
6654 2002-12-22 Steven Tamm <steventamm@mac.com>
6655
6656 * macterm.c (XTread_socket): Call KeyTranslate for control and
6657 meta to deal correctly shifted non-alpha characters, like C-S-5
6658 being treated like C-%. Does not look for shift key to deal
6659 with masking off control-key with mac-reverse-ctrl-meta.
6660
6661 2002-12-21 Richard M. Stallman <rms@gnu.org>
6662
6663 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
6664 If it is non-nil, run timers. Use an unwind-protect to requeue
6665 the events that were read ahead.
6666 (popup_get_selection_unwind): New subroutine.
6667 (popup_get_selection_queue): File-scope variable now holds that queue.
6668 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
6669 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
6670 Use an unwind-protect to pop down the dialog box.
6671 (xdialog_show_unwind): New subroutine implements that.
6672
6673 * xdisp.c (row_containing_pos): Change exit test using last_y.
6674 (try_window_id): Abort if row_containing_pos returns null.
6675
6676 * lread.c (load_error_handler): New function.
6677 (Fload): Handle errors in Fsubstitute_in_file_name.
6678 Don't expect Fsignal to return.
6679
6680 * eval.c: Errors and throws work right with interrupt blocking.
6681 (struct catchtag): New elt interrupt_input_blocked.
6682 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
6683 (internal_catch, Fcondition_case, internal_condition_case)
6684 (internal_condition_case_1, internal_condition_case_2): Save it.
6685 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
6686
6687 * editfns.c (Fformat): Add parens.
6688
6689 * dired.c (file_name_completion): Fix that change.
6690 Delete special quit-handling code; just use QUIT.
6691
6692 2002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
6693
6694 * dired.c (file_name_completion): Close directory on error
6695 just as in directory_files_internal.
6696
6697 2002-12-19 David Kastrup <David.Kastrup@t-online.de>
6698
6699 * window.c (Fset_window_configuration): Set old_point to correct
6700 value when new_current_buffer == current_buffer.
6701
6702 2002-12-17 Ben Key <bkey1@tampabay.rr.com>
6703
6704 Revisited my earlier fix for the following entry in etc/PROBLEMS:
6705 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
6706 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
6707
6708 These changes were in part based upon suggestions made by Peter
6709 'Luna' Runestig [peter@runestig.com].
6710
6711 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
6712 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6713 g_b_init_get_sid_identifier_authority ): Add several static
6714 global variables.
6715
6716 * w32.c (globals_of_w32): New function. Used to initialize those
6717 global variables that must always be initialized on startup even
6718 when the global variable initialized is non zero. Its primary
6719 purpose at this time is to set the global variables
6720 g_b_init_is_windows_9x, g_b_init_open_process_token,
6721 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
6722 g_b_init_get_sid_identifier_authority to 0 on startup.
6723 Called from main.
6724
6725 * w32.c (is_windows_9x): Perform initialization only if
6726 g_b_init_is_windows_9x is equal to 0. On initialization set
6727 g_b_init_is_windows_9x equal to 1.
6728
6729 * w32.c (open_process_token): Perform initialization only if
6730 g_b_init_open_process_token is equal to 0. On initialization set
6731 g_b_init_open_process_token equal to 1.
6732
6733 * w32.c (get_token_information): Perform initialization only if
6734 g_b_init_get_token_information is equal to 0. On initialization
6735 set g_b_init_get_token_information equal to 1.
6736
6737 * w32.c (lookup_account_sid): Perform initialization only if
6738 g_b_init_lookup_account_sid is equal to 0. On initialization
6739 set g_b_init_lookup_account_sid equal to 1.
6740
6741 * w32.c (get_sid_identifier_authority): Perform initialization
6742 only if g_b_init_get_sid_identifier_authority is equal to 0.
6743 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
6744
6745 * w32fns.c (globals_of_w32fns): New function. Used to initialize
6746 those global variables that must always be initialized on startup
6747 even when the global variable initialized is non zero.
6748 Its primary purpose at this time is to initialize the global variable
6749 track_mouse_event_fn.
6750
6751 * w32fns.c (w32_wnd_proc): Remove initialization of
6752 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
6753
6754 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
6755
6756 * w32menu.c (globals_of_w32menu): New function. Used to
6757 initialize those global variables that must always be initialized
6758 on startup even when the global variable initialized is non zero.
6759 Its primary purpose at this time is to initialize the global
6760 variables get_menu_item_info and set_menu_item_info.
6761
6762 * w32menu.c (initialize_frame_menubar): Remove initialization of
6763 get_menu_item_info and set_menu_item_info.
6764
6765 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
6766
6767 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
6768 Declare them.
6769
6770 * emacs.c (main): Call globals_of_w32 prior to calling
6771 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
6772 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
6773 is defined.
6774
6775 * w32term.c (x_update_window_begin): Fix Windows API error
6776 detected by BoundsChecker. Test to determine if
6777 w32_system_caret_hwnd is NULL prior to attempting to use
6778 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
6779
6780 * w32term.c (x_update_window_end): Fix Windows API error
6781 detected by BoundsChecker. Test to determine if
6782 w32_system_caret_hwnd is NULL prior to attempting to use
6783 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
6784
6785 2002-12-17 Kenichi Handa <handa@m17n.org>
6786
6787 * coding.c (coding_system_require_warning): New variable.
6788 (syms_of_coding): DEFVAR it.
6789
6790 * coding.h (coding_system_require_warning): Extern it.
6791
6792 * fileio.c (choose_write_coding_system): Even if
6793 Vcoding_system_for_write is non-nil, if
6794 coding_system_require_warning is nonzero, call
6795 Vselect_safe_coding_system_function.
6796
6797 2002-12-17 Markus Rost <rost@math.ohio-state.edu>
6798
6799 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
6800 (lisp): Add font-core.
6801
6802 2002-12-13 Stefan Monnier <monnier@cs.yale.edu>
6803
6804 * textprop.c (text_read_only): New arg `propval'.
6805 (get_char_property_and_overlay): Remove unused var `next_overlay'.
6806 (verify_interval_modification): Use text_read_only's new arg.
6807
6808 2002-12-13 Kenichi Handa <handa@m17n.org>
6809
6810 * coding.c (Funencodable_char_position): Set pend correctly.
6811
6812 2002-12-12 Jason Rumney <jasonr@gnu.org>
6813
6814 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
6815 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
6816 Be more careful about when help_events are generated.
6817
6818 2002-12-12 Steven Tamm <steventamm@mac.com>
6819
6820 * macterm.c (mac_check_for_quit_char): Correctly set the
6821 modifiers of the event to 0.
6822 * mac.c (sys_select): Duplicate rfds before calling select to
6823 ensure that rfds survive the while loop.
6824
6825 2002-12-11 Kim F. Storm <storm@cua.dk>
6826
6827 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
6828 row_containing_pos returned NULL.
6829
6830 2002-12-10 Steven Tamm <steventamm@mac.com>
6831
6832 * mac.c (sys_read): Fix sys_read to not call select if IO is
6833 non-blocking.
6834 (sys_select): Fix sys_select to not use a timeout larger than
6835 the one given.
6836
6837 2002-12-10 Juanma Barranquero <lektu@terra.es>
6838
6839 * editfns.c (Fformat): Use alloca, not _alloca.
6840
6841 2002-12-09 Richard M. Stallman <rms@gnu.org>
6842
6843 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
6844 as the last thing.
6845
6846 2002-12-09 Dave Love <fx@gnu.org>
6847
6848 * s/sol2-8.h: Removed. (Not necessary.)
6849
6850 2002-12-09 Matthew Swift <swift@alum.mit.edu>
6851
6852 * editfns.c (Fformat): Handle precision in string conversion
6853 specifiers like libc functions do (ie, print at most that many
6854 characters).
6855
6856 2002-12-08 Richard M. Stallman <rms@gnu.org>
6857
6858 * xdisp.c (row_containing_pos): Check more carefully
6859 whether charpos is really in the row before returning it.
6860
6861 2002-12-07 Steven Tamm <steventamm@mac.com>
6862
6863 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
6864
6865 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
6866 each stack frame. This may change as it could be time consuming.
6867
6868 * macterm.c (mac_check_for_quit_char, quit_char_comp)
6869 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6870 (mac_initialize): Add code to check for pressing of quit_char
6871 in the OS event queue.
6872
6873 * mac.c (sys_select): Call mac_check_for_quit_char every second
6874 while blocking on select.
6875
6876 * mac.c (sys_read): Use sys_select to test for input first
6877 before calling read, to allow C-g to break.
6878
6879 2002-12-07 Richard M. Stallman <rms@gnu.org>
6880
6881 * minibuf.c (Fcompleting_read): Doc fix.
6882
6883 * lread.c (syms_of_lread) <load-history>: Doc fix.
6884
6885 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
6886
6887 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
6888 autoload.
6889
6890 * data.c (Fdefalias): Record in load-history redefining an autoload.
6891
6892 * alloca.c: Undo ifdef change accidentally made on 12-04.
6893
6894 2002-12-06 Francesco Potorti` <pot@gnu.org>
6895
6896 * xfns.c (png_load): Avoid double gamma correction for PNG images.
6897
6898 2002-12-04 Richard M. Stallman <rms@gnu.org>
6899
6900 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
6901
6902 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
6903
6904 * alloca.c: Don't use #error.
6905
6906 2002-12-03 Dave Love <fx@gnu.org>
6907
6908 * buffer.c (Qucs_set_table_for_input): New.
6909 (Fget_buffer_create): Use it.
6910 (Qset_buffer_major_mode_hook): Deleted.
6911 (Fset_buffer_major_mode): Revert previous change.
6912 (init_buffer_once): Intern ucs-set-table-for-input.
6913 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
6914 Add &Qucs_set_table_for_input.
6915
6916 2002-12-03 Andreas Schwab <schwab@suse.de>
6917
6918 * callint.c (Fcall_interactively): Use next_event only if less
6919 than key_count.
6920
6921 2002-12-02 Andrew Choi <akochoi@shaw.ca>
6922
6923 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
6924 names to 255 characters.
6925
6926 * macterm.c (XTread_socket): If all frames have been collapsed,
6927 expand the first one before handling drag-and-drop events.
6928
6929 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
6930 which is detected by autoconf.
6931
6932 2002-12-01 Steven Tamm <steventamm@mac.com>
6933
6934 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
6935 offset in two hints table to allow prebinding to be redone and
6936 allow the executable to be stripped.
6937
6938 2002-11-29 Dave Love <fx@gnu.org>
6939
6940 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
6941 already provided.
6942
6943 2002-11-29 Richard M. Stallman <rms@gnu.org>
6944
6945 * xdisp.c (start_display): Check more intelligently for
6946 whether the line is continued.
6947 (move_it_vertically_backward): Clear it->continuation_lines_width.
6948
6949 2002-11-28 Dave Love <fx@gnu.org>
6950
6951 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
6952 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
6953
6954 2002-11-27 Steven Tamm <steventamm@mac.com>
6955
6956 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
6957 more descriptive error output from lread.c:Fload upon most require
6958 cycles during boostrapping.
6959
6960 2002-11-27 Jason Rumney <jasonr@gnu.org>
6961
6962 * fileio.c (Finsert_file_contents): Give a more appropriate error
6963 for files bigger than 2Gb when off_t is 32 bit.
6964
6965 * dired.c (Ffile_attributes): Don't return negative file sizes for
6966 files bigger than 2Gb when off_t is 32 bit.
6967
6968 2002-11-27 Dave Love <fx@gnu.org>
6969
6970 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6971
6972 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
6973 Test GETPGRP_VOID instead.
6974 [BSD_TERMIOS]: Remove definitions (never used).
6975
6976 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
6977 Don't define.
6978 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6979
6980 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
6981
6982 2002-11-25 Jason Rumney <jasonr@gnu.org>
6983
6984 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
6985 supported.
6986
6987 2002-11-25 Dave Love <fx@gnu.org>
6988
6989 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
6990
6991 * Makefile.in (TEMACS_LDFLAGS): Update last change.
6992
6993 2002-11-25 Andreas Schwab <schwab@suse.de>
6994
6995 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
6996
6997 2002-11-24 Steven Tamm <steventamm@mac.com>
6998
6999 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
7000 determine the size of pointers alloced in unexed space instead
7001 of using possibly invalid emacs_zone pointers. This fixes the
7002 binary incompatibility problems caused by updates to libSystem.B.
7003
7004 2002-11-24 Richard M. Stallman <rms@gnu.org>
7005
7006 * search.c (Fstring_match): Doc fix.
7007
7008 * callint.c (Fcall_interactively): If a command fails because
7009 `*' detects a read-only buffer, but RECORD_FLAG is set,
7010 record it anyway if the args don't actually do tty input.
7011
7012 2002-11-22 Dave Love <fx@gnu.org>
7013
7014 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
7015
7016 * keyboard.c (interrupt_signal): Provide forward declaration.
7017 (kbd_buffer_store_event): Don't declare interrupt_signal.
7018
7019 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
7020
7021 2002-11-21 Richard M. Stallman <rms@gnu.org>
7022
7023 * eval.c (interactive_p): Skip any number of bytecode
7024 and special form frames, in any order.
7025
7026 2002-11-20 Jason Rumney <jasonr@gnu.org>
7027
7028 * w32fns.c (convert_mono_to_color_image): New function.
7029 (xbm_load, xbm_load_image): Use it when foreground or background
7030 is explicitly set.
7031
7032 2002-11-19 Dave Love <fx@gnu.org>
7033
7034 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
7035
7036 2002-11-18 Jason Rumney <jasonr@gnu.org>
7037
7038 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
7039 (XPutPixel): Swap blue and red.
7040 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
7041 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
7042 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
7043 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
7044
7045 2002-11-18 Dave Love <fx@gnu.org>
7046
7047 * m/orion105.h (HAVE_ALLOCA): Don't define.
7048
7049 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
7050
7051 * m/intel386.h: Don't include alloca.h or define alloca.
7052
7053 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
7054 malloc, realloc, calloc.
7055
7056 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
7057 (bcmp): Don't define.
7058
7059 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
7060
7061 * m/amdahl.h: Don't define LIB_STANDARD.
7062
7063 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
7064
7065 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
7066
7067 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
7068 Don't include alloca.h.
7069
7070 * s/aix3-2.h (HAVE_FSYNC): Don't define.
7071
7072 * regex.c (_GNU_SOURCE): Don't define.
7073
7074 * process.c (_GNU_SOURCE): Don't define.
7075
7076 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
7077
7078 2002-11-18 Markus Rost <rost@math.ohio-state.edu>
7079
7080 * s/sol2-8.h: Include sol2-6.h.
7081
7082 2002-11-18 Miles Bader <miles@gnu.org>
7083
7084 * dispextern.h (struct face): Add `overstrike' field.
7085 * xterm.c (x_draw_glyph_string_foreground)
7086 (x_draw_composite_glyph_string_foreground): Implement overstriking.
7087 * xfaces.c (load_face_font): Set `face->overstrike' based on
7088 result from choose_face_font.
7089 (best_matching_font, choose_face_font): Add `needs_overstrike'
7090 argument, and use it to return whether overstriking is desirable
7091 for this face/font combo.
7092 (set_font_frame_param: Pass new argument to choose_face_font.
7093
7094 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
7095
7096 This change is my fix for the following entry in etc/PROBLEMS:
7097 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
7098 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
7099
7100 * w32.c: Added wrapper functions around the win32 API functions
7101 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
7102 GetSidIdentifierAuthority. These wrapper functions serve two
7103 purposes:
7104 1. They ensure that the wrapped function can never be called
7105 when Emacs is running on an operating system on which they are
7106 not supported (Microsoft Windows 95 / 98 / ME).
7107 2. They call the wrapped functions via function pointers rather
7108 than calling them directly. This avoids taking advantage of the
7109 undocumented fact that although these functions are not supported
7110 in the 9x branch of Microsoft Windows, the functions do exist in
7111 the version of advapi32.dll that is found in the 9x branch of
7112 Microsoft Windows.
7113
7114 * w32.c (init_user_info): Replace the calls to the win32 API
7115 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
7116 and GetSidIdentifierAuthority with calls to the newly added
7117 wrapper functions.
7118
7119 * w32.h: Added extern declarations for the following functions:
7120 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
7121 syms_of_w32menu, and void syms_of_fontset.
7122
7123 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
7124 function pointer track_mouse_event_fn in the handler for the
7125 WM_SETFOCUS message.
7126
7127 * w32menu.c (initialize_frame_menubar): Add code to
7128 reinitialize the function pointers set_menu_item_info and
7129 get_menu_item_info.
7130
7131 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
7132
7133 * sound.c: Added a partial implementation of play-sound-internal
7134 for Microsoft Windows. Added various #ifdef / #else / #endif
7135 code blocks to separate the code that will compile under
7136 Microsoft Windows from the code that is specific to Gnu/Linux.
7137 Moved several blocks of code around to make this separation of code
7138 into Windows compatible and Gnu/Linux compatible code blocks easier.
7139
7140 * makefile.w32-in: Include sound.c and link with WinMM.lib.
7141
7142 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
7143 added support for play-sound-internal under Windows would be
7144 included in the build of Emacs.
7145
7146 2002-11-16 Jason Rumney <jasonr@gnu.org>
7147
7148 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
7149
7150 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
7151
7152 2002-11-15 Stefan Monnier <monnier@cs.yale.edu>
7153
7154 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
7155 (adjust_point_for_property): Move out of display and invisible even if
7156 we were already inside before (in case a property was added while
7157 we weren't looking). Be more careful when handling invisible props.
7158 Skip invisible text as if it really wasn't there at all.
7159
7160 2002-11-15 Jason Rumney <jasonr@gnu.org>
7161
7162 * w32term.c (x_draw_image_foreground)
7163 (w32_draw_image_foreground_1): Use standard copy and invert
7164 operations to draw images.
7165
7166 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
7167 depth of 1.
7168 (xbm_read_bitmap_data): Invert bits as xbm is read in.
7169 (XPutPixel): Don't invert bits here.
7170
7171 2002-11-15 Jason Rumney <jasonr@gnu.org>
7172
7173 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
7174 (w32_draw_image_foreground_1): Handle image masks.
7175 (x_draw_image_glyph_string): Don't BitBlt transparently.
7176
7177 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
7178 (x_from_xcolors): Adjust RGB values for W32.
7179 (image_background, image_background_transparent)
7180 (postprocess_image, x_to_xcolors, x_disable_image)
7181 (x_build_heuristic_mask): Adapt for W32 and enable.
7182 (x_create_x_image_and_pixmap): Mark images with palettes as such.
7183 (xbm_load): Remove unused variable.
7184
7185 2002-11-14 Richard M. Stallman <rms@gnu.org>
7186
7187 * buffer.c (syms_of_buffer): Doc fix.
7188
7189 2002-11-14 Dave Love <fx@gnu.org>
7190
7191 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
7192
7193 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
7194 * xmenu.c (unuse_menu_items, digest_single_submenu):
7195 * xfns.c (x_put_x_image):
7196 * xdisp.c (message2_nolog, set_message):
7197 * undo.c (record_point):
7198 * terminfo.c (tparam):
7199 * syntax.c (scan_sexps_forward):
7200 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
7201 * composite.c (update_compositions):
7202 * cm.c (calccost, cmgoto):
7203 * charset.c (c_string_width): Declare all args (per C99).
7204
7205 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
7206
7207 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
7208 Don't declare.
7209
7210 * emacs.c (main) [!VMS]: Avoid third arg.
7211
7212 * fns.c (Fcopy_sequence): Doc fix.
7213 (Fmap_char_table): Cast `call2'.
7214
7215 2002-11-14 Francesco Potorti` <pot@gnu.org>
7216
7217 * s/sol2-8.h: New file.
7218
7219 2002-11-14 Kim F. Storm <storm@cua.dk>
7220
7221 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
7222 dependency on `risky-local-variable' and the :propertize form.
7223
7224 2002-11-12 Stefan Monnier <monnier@cs.yale.edu>
7225
7226 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
7227
7228 * syntax.c (scan_sexps_forward): Undo last patch.
7229 Use a more obvious fix: check eob before updating the syntax table.
7230
7231 2002-11-09 Stefan Monnier <monnier@cs.yale.edu>
7232
7233 * syntax.c (scan_sexps_forward): Update syntax table before reading
7234 a char rather than after so we don't update the table past eob.
7235
7236 2002-11-09 Dave Love <fx@gnu.org>
7237
7238 * buffer.c (Fset_buffer_major_mode): Fix last change.
7239
7240 * regex.c (regexec): Fix pmatch declaration.
7241
7242 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
7243
7244 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
7245 to self-inserting characters.
7246 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
7247
7248 * coding.c (Vtranslation_table_for_input): New.
7249 (syms_of_coding): DEFVAR it.
7250
7251 2002-11-08 Juanma Barranquero <lektu@terra.es>
7252
7253 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
7254 window.
7255
7256 2002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7257
7258 * process.c (Fformat_network_address): Remove unused locals p,
7259 cp, and i.
7260
7261 2002-11-06 Dave Love <fx@gnu.org>
7262
7263 * buffer.c (Qset_buffer_major_mode_hook): New.
7264 (Fset_buffer_major_mode): Use it.
7265
7266 2002-11-06 Richard M. Stallman <rms@gnu.org>
7267
7268 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
7269 and stop_polling.
7270
7271 * process.c (wait_reading_process_input):
7272 Test POLLING_PROBLEM_IN_SELECT, not hpux.
7273 Avoid initialization for auto Lisp_Object var.
7274
7275 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
7276
7277 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
7278
7279 2002-11-05 Richard M. Stallman <rms@gnu.org>
7280
7281 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
7282
7283 * callint.c (Fcall_interactively): New local filter_specs.
7284 (Fcall_interactively): Check for progn as well as let.
7285 Add a gcpro.
7286 (Qprogn): New variable.
7287 (syms_of_callint): Staticpro and init Qprogn.
7288
7289 2002-11-04 John Paul Wallington <jpw@shootybangbang.com>
7290
7291 * lread.c (Feval_buffer): Doc fix.
7292
7293 2002-11-04 Dave Love <fx@gnu.org>
7294
7295 * keyboard.c (read_char): Always translate iff
7296 Vkeyboard_translate_table is a char table and c is valid.
7297
7298 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
7299 and fix C types.
7300
7301 2002-11-03 Stefan Monnier <monnier@cs.yale.edu>
7302
7303 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
7304
7305 * editfns.c (get_pos_property): Don't hardcode Qfield.
7306
7307 * keyboard.c (adjust_point_for_property): Handle `display' prop on
7308 overlays. Also handle `invisible' prop.
7309
7310 2002-11-02 Stefan Monnier <monnier@cs.yale.edu>
7311
7312 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
7313 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
7314
7315 2002-11-01 Andreas Schwab <schwab@suse.de>
7316
7317 * editfns.c (Fmessage): Revert last change to properly handle %%.
7318
7319 2002-11-01 Stefan Monnier <monnier@cs.yale.edu>
7320
7321 * xmenu.c (unuse_menu_items): New fun.
7322 (menu_items_inuse): New var.
7323 (syms_of_xmenu): Initialize it.
7324 (init_menu_items): Use it to detect re-entrance.
7325 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
7326 (Fx_popup_menu): Remove spurious XSETFRAME.
7327
7328 * editfns.c (find_field): Make an exception for nil fields.
7329
7330 2002-11-01 Dave Love <fx@gnu.org>
7331
7332 * m/gec63.h: Deleted.
7333
7334 2002-10-31 Dave Love <fx@gnu.org>
7335
7336 * xterm.c (XTread_socket): Fix last change.
7337 (xaw_scroll_callback): Cast call_data to long to avoid warning.
7338
7339 2002-10-31 Stefan Monnier <monnier@cs.yale.edu>
7340
7341 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
7342
7343 2002-10-30 Stefan Monnier <monnier@cs.yale.edu>
7344
7345 * editfns.c (overlays_around, get_pos_property): New funs.
7346 (find_field): Use them.
7347 Also be careful not to modify POS before its last use.
7348 (Fmessage): Don't Fformat if there's nothing to format.
7349
7350 2002-10-30 Dave Love <fx@gnu.org>
7351
7352 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
7353 [HAVE_PTY_H]; Include pty.h.
7354
7355 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
7356
7357 * xterm.c (Qeql): Declare.
7358 (Vx_keysym_table): New.
7359 (syms_of_xterm): Initialize it.
7360 (XTread_socket): Use it. Deal with ASCII keysyms.
7361 (XSetIMValues) [HAVE_X11R6]: Prototype.
7362
7363 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
7364 (lispy_kana_keys): Comment out.
7365 (make_lispy_event) [XK_kana_A]: Comment out.
7366 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
7367 Fix sprintf call.
7368
7369 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
7370 regexp.h change).
7371 (TERMINFO, LIBS_TERMCAP): Define.
7372
7373 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
7374 (bcmp): Define conditional on HAVE_BCMP.
7375 (NO_SIOCTL_H): Don't define.
7376 (TIOCSIGSEND): Don't make conditional on IRIX6.
7377
7378 * s/sol2-5.h: Don't include strings.h.
7379 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
7380
7381 * s/irix6-0.h (IRIX6): Don't define.
7382 (bcopy, bcmp, bzero): Don't undef.
7383
7384 * s/irix6-5.h: Don't include strings.h.
7385 (IRIX6): Don't define.
7386 (bcopy, bcmp, bzero): Don't undef.
7387
7388 * syntax.c (Fforward_comment): Doc fix.
7389
7390 2002-10-29 Kim F. Storm <storm@cua.dk>
7391
7392 * process.c (Fsignal_process): Allow PROCESS to be specified by
7393 name in addition to pid (as integer or string).
7394
7395 2002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
7396
7397 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
7398 environments.
7399
7400 2002-10-27 Kim F. Storm <storm@cua.dk>
7401
7402 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
7403
7404 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
7405
7406 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
7407
7408 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
7409
7410 2002-10-26 Richard M. Stallman <rms@gnu.org>
7411
7412 * editfns.c (Fformat): Detect invalid format letters for floats.
7413
7414 2002-10-25 Kenichi Handa <handa@m17n.org>
7415
7416 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
7417 (x_set_title): Likewise.
7418
7419 2002-10-25 Juanma Barranquero <lektu@terra.es>
7420
7421 * macgui.h:
7422 * w32gui.h: Remove definition of XColor.
7423
7424 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
7425
7426 2002-10-24 Kim F. Storm <storm@cua.dk>
7427
7428 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
7429 Callers changed (supply dummy arg).
7430
7431 * lisp.h (get_window_cursor_type): Update prototype.
7432
7433 * w32term.c (x_display_and_set_cursor): Get active_cursor from
7434 get_window_cursor_type to track system caret.
7435
7436 2002-10-24 Kim F. Storm <storm@cua.dk>
7437
7438 * process.c (Fformat_network_address): New function.
7439 (syms_of_process): Defsubr it.
7440 (list_processes_1): Use it to format :local/:remote address if
7441 service/host is not set; before emacs would crash in that case.
7442 (Fmake_network_process): Don't use Ffind_operation_coding_system
7443 to setup coding system if host or service is not set.
7444
7445 2002-10-23 Juanma Barranquero <lektu@terra.es>
7446
7447 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
7448
7449 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
7450 COLORREF.
7451
7452 * macgui.h:
7453 * w32gui.h: Add definition of XColor.
7454
7455 * macfns.c:
7456 * w32fns.c:
7457 * xfaces.c: Remove definition of XColor.
7458
7459 2002-10-22 Stefan Monnier <monnier@cs.yale.edu>
7460
7461 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
7462
7463 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
7464 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
7465 window if it is dedicated.
7466 (Fshrink_window): Add preserve_before as was done for enlarge_window.
7467 (Vspecial_display_function): Update docstring.
7468
7469 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
7470 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
7471 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
7472
7473 2002-10-21 Stefan Monnier <monnier@cs.yale.edu>
7474
7475 * casefiddle.c (casify_region): Don't treat a prefix char as part
7476 of a word when at the beginning.
7477
7478 2002-10-17 Juanma Barranquero <lektu@terra.es>
7479
7480 * lread.c (syms_of_lread): Fix typos.
7481
7482 2002-10-17 Dave Love <fx@gnu.org>
7483
7484 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
7485
7486 2002-10-16 Richard M. Stallman <rms@gnu.org>
7487
7488 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
7489
7490 2002-10-14 Juanma Barranquero <lektu@terra.es>
7491
7492 * w16select.c (syms_of_win16select): Fix docstring for
7493 `selection-coding-system'.
7494
7495 * w32select.c (syms_of_w32select): Likewise.
7496
7497 2002-10-14 Stefan Monnier <monnier@cs.yale.edu>
7498
7499 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
7500 a backslash-quoted char.
7501 (scan_lists, scan_sexps_forward): Pacify the compiler.
7502
7503 2002-10-13 Richard M. Stallman <rms@gnu.org>
7504
7505 * window.c (window_scroll): Set immediate_quit.
7506
7507 * print.c (print): When backquote form is the car of a list,
7508 output in old style. Use old_backquote_output to output all
7509 comma forms inside it in old style too.
7510
7511 * buffer.h (struct buffer): Move `undo_list' down below `name'.
7512
7513 2002-10-11 Markus Rost <rost@math.ohio-state.edu>
7514
7515 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
7516 batch mode).
7517
7518 * lread.c (Fload): Doc fix (load-suffixes).
7519
7520 2002-10-10 Steven Tamm <steventamm@mac.com>
7521
7522 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
7523 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
7524 Also switch the default to Qnil from Qt.
7525
7526 2002-10-08 Kenichi Handa <handa@m17n.org>
7527
7528 * coding.c (code_convert_region): When we need more GAP for
7529 conversion, pay attention to the case that coding->produced is not
7530 greater than coding->consumed.
7531
7532 2002-10-07 Richard M. Stallman <rms@gnu.org>
7533
7534 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
7535
7536 2002-10-06 Andrew Choi <akochoi@shaw.ca>
7537
7538 * macmenu.c (mac_menu_show): Add j to count menu items; match
7539 menu_item_selection to it to find selected item.
7540
7541 2002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7542
7543 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
7544 cases. The correct fix is to pass ReparentNotify to Xt.
7545 The shell widget interprets ConfigureNotify differently depending
7546 on if it has been reparented or not.
7547
7548 2002-10-05 Markus Rost <rost@math.ohio-state.edu>
7549
7550 * editfns.c (Fformat_time_string): Doc fix.
7551
7552 2002-10-05 John Paul Wallington <jpw@shootybangbang.com>
7553
7554 * fns.c (Flength): Doc fix.
7555
7556 2002-10-04 Stefan Monnier <monnier@cs.yale.edu>
7557
7558 * keyboard.c (keyremap): New struct.
7559 (read_key_sequence): Use it: globally replace keytran_foo with
7560 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
7561 keytran_next and fkey_next to just `next'.
7562
7563 2002-10-04 Steven Tamm <steventamm@mac.com>
7564
7565 * macterm.c (keycode_to_xkeysym_table): Change return to be
7566 treated like an X keysym.
7567
7568 2002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7569
7570 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
7571 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
7572 This is to also handle x/y changes that occur because of a resize.
7573
7574 2002-10-02 John Paul Wallington <jpw@shootybangbang.com>
7575
7576 * frame.c (Vdelete_frame_functions): New variable.
7577 (syms_of_frame): Initialize and defvar it.
7578 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
7579 it when frame's `tooltip' parameter is non-nil.
7580
7581 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
7582
7583 * w32fns.c (x_create_tip_frame): Likewise.
7584
7585 * macfns.c (x_create_tip_frame): Likewise.
7586
7587 2002-09-30 Kenichi Handa <handa@m17n.org>
7588
7589 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
7590 -1 before calling ccl_driver.
7591
7592 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
7593 Only when it is non-nil, handle composition sequence.
7594 (setup_coding_system) <0>: Don't force composition handling.
7595
7596 * Makefile.in (lisp, shortlisp): Add utf-16.elc
7597
7598 2002-09-29 Richard M. Stallman <rms@gnu.org>
7599
7600 * search.c (Freplace_match): Adjust match data for the substitution
7601 just made in the buffer.
7602
7603 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
7604 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
7605
7606 2002-09-27 Richard M. Stallman <rms@gnu.org>
7607
7608 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
7609 (read_char): Use them. Do all exits thru the end of the function.
7610
7611 2002-09-27 Kenichi Handa <handa@etl.go.jp>
7612
7613 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
7614 is nil.
7615
7616 2002-09-26 Richard M. Stallman <rms@gnu.org>
7617
7618 * regex.h (__restrict_arr): Don't define if already defined.
7619
7620 * coding.c (run_pre_post_conversion_on_str):
7621 Save and restore Vdeactivate_mark.
7622
7623 2002-09-26 John Paul Wallington <jpw@shootybangbang.com>
7624
7625 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
7626
7627 2002-09-26 Kenichi Handa <handa@etl.go.jp>
7628
7629 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
7630 nonzero, try face's family at first. Otherwise try FAMILY at first.
7631 (choose_face_font): If C is a single byte char or latin-1, call
7632 try_font_list with PREFER_FACE_FAMILY 1.
7633
7634 2002-09-21 Richard M. Stallman <rms@gnu.org>
7635
7636 * window.c (select_window_1): Don't select frame.
7637 Set frame's selected window only when frame itself is selected.
7638 (Fselect_window): Doc fix.
7639
7640 2002-09-18 Kim F. Storm <storm@cua.dk>
7641
7642 * process.c (make-network-process): Doc fix (there is no
7643 network-server-log-function hook).
7644
7645 2002-09-18 Richard M. Stallman <rms@gnu.org>
7646
7647 * print.c (print): Clear out the unused parts of Vprint_number_table.
7648 (syms_of_print): Doc fix for `print-number-table'.
7649
7650 * unexelf.c (unexec): Undo previous change.
7651
7652 2002-09-17 Andreas Schwab <schwab@suse.de>
7653
7654 * m/alpha.h [LINUX]: Don't define DATA_START.
7655
7656 2002-09-16 Dave Love <fx@gnu.org>
7657
7658 * unexelf.c (unexec): Deal with .got, reinstating change from
7659 25-08-1999.
7660
7661 2002-09-13 Richard M. Stallman <rms@gnu.org>
7662
7663 * s/sol2-6.h (UNEXEC): Comment out definition.
7664
7665 * unexsol.c (unexec): Don't downcase first letter of error msg.
7666
7667 * xfaces.c (Fcolor_supported_p): Just one arg is required.
7668
7669 2002-09-12 Markus Rost <rost@math.ohio-state.edu>
7670
7671 * unexsol.c: Include buffer.h, charset.h, coding.h.
7672
7673 2002-09-11 Richard M. Stallman <rms@gnu.org>
7674
7675 * unexsol.c: Don't use report_file_error; do it by hand
7676 using dlerror.
7677
7678 * process.c (wait_reading_process_input, both versions):
7679 Before calling turn_on_atimers, call stop_polling.
7680
7681 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
7682
7683 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
7684 we go to too_near_end, call clear_glyph_matrix.
7685 (redisplay_window): After make_cursor_line_fully_visible,
7686 call clear_glyph_matrix and bypass `goto done'.
7687
7688 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
7689 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
7690
7691 2002-09-10 Richard M. Stallman <rms@gnu.org>
7692
7693 * fileio.c (Fdo_auto_save): Catch error making directory.
7694 Only call push_message if we need to.
7695 At the same time, make an unwind-protect to pop it.
7696 Rename local message_p to old_message_p.
7697 (do_auto_save_make_dir, do_auto_save_eh): New functions.
7698 (do_auto_save_unwind): Don't call pop_message.
7699
7700 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
7701
7702 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
7703
7704 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
7705
7706 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
7707
7708 2002-09-10 Stefan Monnier <monnier@cs.yale.edu>
7709
7710 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
7711 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
7712 (re_match_2_internal): Be more careful with infinite loops.
7713
7714 2002-09-10 Kim F. Storm <storm@cua.dk>
7715
7716 * macros.c (end_kbd_macro): New function.
7717 (Fend_kbd_macro): Use it.
7718
7719 * macros.h (end_kbd_macro): Declare extern.
7720
7721 * keyboard.c (Fdiscard_input): If defining keyboard macro,
7722 end and save it instead of discarding it.
7723
7724 2002-09-09 Markus Rost <rost@math.ohio-state.edu>
7725
7726 * s/sol2-6.h: Fix typo. Add comment.
7727
7728 2002-09-09 Richard M. Stallman <rms@gnu.org>
7729
7730 * regex.c (regnum_t): Use signed int, not unsigned int.
7731
7732 * s/sol2-6.h: New file.
7733
7734 * s/sol2-5.h (UNEXEC): Definition deleted.
7735
7736 2002-09-08 Kim F. Storm <storm@cua.dk>
7737
7738 * macros.c (executing_macro_index): Change type to EMACS_INT.
7739 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
7740
7741 * macros.h (executing_macro_index): Change type to EMACS_INT.
7742
7743 2002-09-06 Richard M. Stallman <rms@gnu.org>
7744
7745 * casetab.c (set_case_table): Make canon table point to eqv table.
7746
7747 2002-09-06 Juanma Barranquero <lektu@terra.es>
7748
7749 * coding.c (syms_of_coding): Fix spacing.
7750
7751 * composite.c (Fcompose_region_internal)
7752 (Fcompose_string_internal): Likewise.
7753
7754 * data.c (Flsh): Likewise.
7755
7756 * fontset.c (Fset_fontset_font): Likewise.
7757
7758 * macfns.c (Fx_server_max_request_size): Likewise.
7759
7760 * w16select.c (syms_of_win16select): Likewise.
7761
7762 * w32select.c (syms_of_w32select): Likewise.
7763
7764 * xselect.c (syms_of_xselect): Likewise.
7765
7766 2002-09-05 Richard M. Stallman <rms@gnu.org>
7767
7768 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
7769 call EXTEND_RANGE_TABLE and return a proper value.
7770 (set_image_of_range): Don't call set_image_of_range_1
7771 if no TRANSLATE or if range includes all of Latin-1.
7772 Only call it for the Latin-1 part of the range.
7773 For other cases, make two separate ranges,
7774 one for the original specified characters and one for
7775 their case-conversions.
7776
7777 2002-09-04 Richard M. Stallman <rms@gnu.org>
7778
7779 * s/sol2-5.h (UNEXEC): Use unexsol.o.
7780
7781 * window.c (displayed_window_lines): Correct for one-off bug
7782 in HEIGHT on non-window displays.
7783
7784 * regex.c (set_image_of_range_1): New function.
7785 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
7786 Return a value to indicate running out of memory.
7787 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
7788 (extend_range_table_work_area): New subroutine.
7789 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
7790 Different calling conventions, and used from set_image_of_range{,_1}.
7791 (IMMEDIATE_QUIT_CHECK): Definitions moved.
7792
7793 2002-09-04 Juanma Barranquero <lektu@terra.es>
7794
7795 * makefile.w32-in: All dependencies updated.
7796
7797 2002-09-01 Richard M. Stallman <rms@gnu.org>
7798
7799 * unexsol.c: New file.
7800
7801 * xfns.c (Qbox): Declare external, don't define.
7802
7803 * xdisp.c (redisplay_window) <force-start case>:
7804 If point is on semi-visible last line, reposition
7805 it at previous line.
7806
7807 * alloc.c (display_malloc_warning): Use display-warning.
7808 (malloc_warning_1): Function deleted.
7809
7810 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
7811
7812 * lread.c (read1): Handle #! by skipping the line.
7813
7814 2002-08-31 Richard M. Stallman <rms@gnu.org>
7815
7816 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
7817 Don't include LDFLAGS.
7818 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
7819
7820 2002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
7821
7822 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
7823 member of x_display_info unless we compile for some window system.
7824
7825 2002-08-31 Kim F. Storm <storm@cua.dk>
7826
7827 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
7828 (get_window_cursor_type): Don't use them.
7829 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
7830
7831 2002-08-30 Kenichi Handa <handa@etl.go.jp>
7832
7833 * xdisp.c (get_next_display_element): Fix previous change.
7834
7835 2002-08-30 Andrew Choi <akochoi@shaw.ca>
7836
7837 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
7838 (expose_window): Use it to fix the display of overlapping
7839 rows (merge code from xterm.c).
7840
7841 * macfns.c (Qbox): Add extern declaration.
7842
7843 2002-08-30 Juanma Barranquero <lektu@terra.es>
7844
7845 * w32fns.c (Qbox): Make extern.
7846 (syms_of_w32fns): Remove initialization of Qbox.
7847
7848 2002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
7849
7850 * xfns.c (Fx_open_connection): Fix error message.
7851
7852 2002-08-30 Kim F. Storm <storm@cua.dk>
7853
7854 The following changes consolidates the handling of the cursor
7855 type in xdisp.c, moving duplicate code and functionality from
7856 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
7857
7858 * frame.h (enum text_cursor_kinds): Consolidated here.
7859 Added DEFAULT_CURSOR value.
7860 (struct frame) <desired_cursor, cursor_width>
7861 <blink_off_cursor, blink_off_cursor_width>: New fields.
7862 Consolidated from output_x, output_w32 and output_mac structs.
7863 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
7864 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
7865
7866 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
7867 Variables consolidated here.
7868 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
7869 (Vcursor_in_non_selected_windows): Renamed from
7870 cursor_in_non_selected_windows and changed to Lisp_Object.
7871 (syms_of_xdisp): Define and staticpro new and moved variables.
7872 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
7873 consolidated here. Recognize Qhollow setting.
7874 (set_frame_cursor_types): New function to set frame cursor types
7875 based on the frame parameters.
7876 (get_window_cursor_type): New function to calculate new cursor
7877 type and width for the specified window. Based on duplicated
7878 code consolidated here.
7879 Enhancements: cursor-in-non-selected-windows may be a cursor type,
7880 check buffer-local alternate-cursor-type and blink-cursor-alist
7881 before using built-in blink off methods.
7882
7883 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
7884
7885 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
7886 (get_specified_cursor_type, get_window_cursor_type)
7887 (set_frame_cursor_types): Added prototypes.
7888
7889 * macfns.c (x_specified_cursor_type): Removed.
7890 (x_set_cursor_type): Use set_frame_cursor_types.
7891 (Qbar, Qbox): Removed.
7892 (syms_of_macfns): Don't intern or staticpro them.
7893
7894 * macterm.c (x_specified_cursor_type): Remove prototype.
7895 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
7896 (x_display_and_set_cursor): Use get_window_cursor_type.
7897 Remove unused local variables cursor_non_selected, active_cursor.
7898 Redraw cursor if hbar cursor width changes.
7899 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
7900
7901 * macterm.h (enum text_cursor_kinds): Removed.
7902 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
7903 <blink_off_cursor, blink_off_cursor_width>: Members removed.
7904 (FRAME_DESIRED_CURSOR): Macro removed.
7905
7906 * w32fns.c (Vblink_cursor_alist): Removed.
7907 (Qbar, Qhbar, Qbox, Qhollow): Removed.
7908 (syms_of_w32fns): Don't intern, staticpro, or define them.
7909 (x_specified_cursor_type): Removed.
7910 (x_set_cursor_type): Use set_frame_cursor_types.
7911
7912 * w32term.c (x_specified_cursor_type): Remove prototype.
7913 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
7914 (x_display_and_set_cursor): Use get_window_cursor_type.
7915 Remove unused local variables cursor_off_state.
7916 Redraw cursor if hbar cursor width changes.
7917 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
7918
7919 * w32term.h (enum text_cursor_kinds): Removed.
7920 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
7921 <blink_off_cursor, blink_off_cursor_width>: Members removed.
7922 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
7923 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
7924 (struct w32_display_info) <x_highlight_frame>: Renamed member from
7925 w32_highlight_frame.
7926
7927 * xfns.c (Vblink_cursor_alist): Removed.
7928 (Qbar, Qhbar, Qbox, Qhollow): Removed.
7929 (syms_of_xfns): Don't intern, staticpro, or define them.
7930 (x_specified_cursor_type): Removed.
7931 (x_set_cursor_type): Use set_frame_cursor_types.
7932
7933 * xterm.c (x_specified_cursor_type): Remove prototype.
7934 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
7935 (x_display_and_set_cursor): Use get_window_cursor_type.
7936 Remove unused local variables cursor_off_state.
7937 Redraw cursor if hbar cursor width changes.
7938
7939 * xterm.h (enum text_cursor_kinds): Removed.
7940 (struct output_x) <current_cursor, desired_cursor, cursor_width>
7941 <blink_off_cursor, blink_off_cursor_width>: Members removed.
7942 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
7943 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
7944 (x_specified_cursor_type): Remove prototype.
7945
7946 2002-08-28 Richard M. Stallman <rms@gnu.org>
7947
7948 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
7949 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
7950 (Vblink_cursor_alist): New variable.
7951 (syms_of_w32fns): Initialize and defvar it.
7952 (x_specified_cursor_type): Recognize Qbox for filled box.
7953 Exceptions are hollow boxes.
7954 (Qbox, Qhollow): New variables.
7955 (syms_of_w32fns): Initialize and staticpro them.
7956
7957 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
7958 New macros.
7959 (struct w32_output): New fields blink_off_cursor,
7960 blink_off_cursor_width.
7961 (FRAME_CURSOR_WIDTH): New macro.
7962
7963 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
7964 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
7965
7966 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
7967 for bar cursor.
7968
7969 * w32term.c (expose_overlaps): New function.
7970 (expose_window): Use it to fix the display of overlapping rows.
7971
7972 2002-08-28 Simon Josefsson <jas@extundo.com>
7973
7974 * xfns.c (Fx_open_connection): Improve help when X connection
7975 fails, xhost is insecure and xauth is better.
7976
7977 2002-08-28 Juanma Barranquero <lektu@terra.es>
7978
7979 * makefile.w32-in: Add missing dependencies on w32term.h and
7980 composite.h.
7981
7982 * emacs.c (USAGE1): Add missing newline.
7983
7984 2002-08-27 Andrew Choi <akochoi@shaw.ca>
7985
7986 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
7987
7988 2002-08-27 Richard M. Stallman <rms@gnu.org>
7989
7990 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
7991 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
7992 (Vblink_cursor_alist): New variable.
7993 (syms_of_xfns): Initialize and defvar it.
7994 (x_specified_cursor_type): Recognize Qbox for filled box.
7995 Exceptions are hollow boxes.
7996 (Qbox, Qhollow): New variables.
7997 (syms_of_xfns): Initialize and staticpro them.
7998
7999 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
8000 New macros.
8001 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
8002
8003 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
8004 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
8005
8006 * emacs.c (main): Handle --script.
8007 (USAGE1): Mention --script.
8008 (standard_args): Define sort order for --script.
8009
8010 2002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
8011
8012 * xdisp.c (redisplay_updating_p): Variable removed.
8013 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
8014 New variables.
8015 (init_iterator): Don't free realized faces if
8016 inhibit_free_realized_faces is set.
8017 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
8018 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
8019 initialize Qinhibit_free_realized_faces.
8020
8021 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
8022 when iterator is adding glyphs to a glyph matrix.
8023
8024 2002-08-27 Kenichi Handa <handa@etl.go.jp>
8025
8026 * xdisp.c (get_next_display_element): In unibyte case, don't use
8027 octal form for such eight-bit characters that can be converted to
8028 multibyte char.
8029
8030 2002-08-26 Kim F. Storm <storm@cua.dk>
8031
8032 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
8033 and background colors. From Joe Buehler (tiny change).
8034
8035 2002-08-26 Miles Bader <miles@gnu.org>
8036
8037 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
8038
8039 2002-08-25 Andrew Choi <akochoi@shaw.ca>
8040
8041 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
8042 defined instead of MAC_OSX.
8043
8044 * s/darwin.h (select): Define select to sys_select only if
8045 HAVE_CARBON is defined.
8046 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
8047 (DONT_REOPEN_PTY): #def it.
8048
8049 * macterm.c (XTread_socket): Remove code to call
8050 SendEventToEventTarget for keys with command modifiers when
8051 mac_command_key_is_meta is nil.
8052
8053 2002-08-24 Andreas Schwab <schwab@suse.de>
8054
8055 * eval.c (Fdefvar): Fix last change.
8056
8057 2002-08-23 Richard M. Stallman <rms@gnu.org>
8058
8059 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
8060 Record variables in load history as (defvar . VAR).
8061 (Fdefvar): Don't record in load history if no initial value.
8062 (Qdefvar): New variable.
8063 (syms_of_eval): Init and staticpro it.
8064
8065 * lread.c (syms_of_lread): Doc fix.
8066 (build_load_history): Use Fmember to see if a definition
8067 is already in the Vload_history element.
8068
8069 * process.c (Fstart_process): Remove /: from program name.
8070
8071 * emacs.c (decode_env_path): Don't add /: if file name handler
8072 has a `safe-magic' property.
8073
8074 * callproc.c (Fcall_process): Remove /: from program name.
8075
8076 2002-08-23 Stefan Monnier <monnier@cs.yale.edu>
8077
8078 * regex.c (PATFETCH): Remove the translating fetch.
8079 (PATFETCH_RAW): Rename to PATFETCH.
8080 (set_image_of_range): New fun.
8081 (SET_RANGE_TABLE_WORK_AREA): Use it.
8082 (regex_compile): Don't translate the pattern chars so eagerly.
8083 Only do it when inserting an `exactn' bytecode or when handling
8084 a char-range.
8085 (mutually_exclusive_p): Avoid empty statement.
8086
8087 2002-08-22 Kim F. Storm <storm@cua.dk>
8088
8089 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
8090 end up on a partially visible line; this reverts a specific part
8091 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
8092 display error which has been reported several times now.
8093 However it introduces the problem that changes was supposed to fix.
8094 See my comments in the source if you want to debug this further.
8095
8096 2002-08-20 Kenichi Handa <handa@etl.go.jp>
8097
8098 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
8099
8100 2002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
8101
8102 * msdos.c (croak): Add `void' to definition.
8103
8104 * sysdep.c [MSDOS] (request_sigio, unrequest_sigio):
8105 Don't define them, they are defined in msdos.c.
8106
8107 * mem-limits.h [MSDOS]: Declare etext.
8108
8109 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
8110 `const' since CORRECT_DIR_SEPS modifies its target.
8111
8112 2002-08-19 Kim F. Storm <storm@cua.dk>
8113
8114 * keyboard.c (Fclear_this_command_keys): Added optional arg
8115 KEEP-RECORD to avoid clearing lossage when we just want to clear
8116 the current key sequence (kmacro needs this).
8117
8118 2002-08-19 Kenichi Handa <handa@localhost>
8119
8120 * composite.c (run_composition_function): Call FUNC if it is fboundp.
8121
8122 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
8123 cons, return Qnil.
8124
8125 2002-08-17 Richard M. Stallman <rms@gnu.org>
8126
8127 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
8128
8129 * sysdep.c [!VMS]: Include sys/files.h.
8130
8131 * editfns.c (save_restriction_restore): Defend from unchained marker.
8132
8133 * buffer.c (overlays_at): Handle extending vec uniformly.
8134 (overlays_in): Handle extending vec from length 0 as in overlays_at.
8135
8136 2002-08-15 Andrew Choi <akochoi@shaw.ca>
8137
8138 * mac.c (init_mac_osx_environment): New function.
8139
8140 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
8141
8142 2002-08-14 Kim F. Storm <storm@cua.dk>
8143
8144 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
8145 executing macro before appending to it (when used from Lisp).
8146 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
8147 which is called prior to each iteration of macro (for kmacro.el).
8148 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
8149
8150 * lisp.h (Fexecute_kbd_macro): Update prototype.
8151
8152 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
8153
8154 2002-08-14 Kenichi Handa <handa@etl.go.jp>
8155
8156 * xselect.c (QUTF8_STRING): New variable.
8157 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
8158 (x_atom_to_symbol): Likewise.
8159 (x_get_local_selection): New argument local_request. If it is
8160 nonzero, call handler_fn with the second arg nil.
8161 (x_handle_selection_request): Call x_get_local_selection with
8162 local_request 0.
8163 (lisp_data_to_selection_data): Don't encode the string here.
8164 (Fx_get_selection_internal): Call x_get_local_selection with
8165 local_request 1.
8166 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
8167
8168 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
8169
8170 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
8171
8172 2002-08-13 Richard M. Stallman <rms@gnu.org>
8173
8174 * minibuf.c (Fminibufferp): New function.
8175 (syms_of_minibuf): Defsubr it.
8176 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
8177
8178 2002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
8179
8180 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
8181
8182 2002-08-12 Richard M. Stallman <rms@gnu.org>
8183
8184 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
8185 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
8186 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
8187 already.
8188
8189 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
8190
8191 2002-08-11 Andrew Choi <akochoi@shaw.ca>
8192
8193 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
8194 (Vmac_pass_command_to_system): New variable.
8195 (Vmac_pass_control_to_system): New variable.
8196 (do_mouse_moved): Check wp with is_emacs_window.
8197 (XTread_socket): Check window_ptr with is_emacs_window.
8198 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
8199 events back to Mac Toolbox for processing, depending on values of
8200 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
8201 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
8202 Vmac_pass_control_to_system.
8203
8204 2002-08-10 Kenichi Handa <handa@etl.go.jp>
8205
8206 * coding.c (unencodable_char_position): New function.
8207 (Funencodable_char_position): New function.
8208 (syms_of_coding): Defsubr Funencodable_char_position.
8209
8210 2002-08-10 Andrew Choi <akochoi@shaw.ca>
8211
8212 * mac.c (sys_select) [MAC_OSX]: New function.
8213
8214 * macterm.c (MakeMeTheFrontProcess): New function.
8215 (mac_initialize): Call MakeMeTheFrontProcess.
8216
8217 * s/darwin.h: Define select to sys_select.
8218
8219 2002-08-09 Richard M. Stallman <rms@gnu.org>
8220
8221 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
8222
8223 2002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
8224
8225 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
8226 end of the buffer.
8227
8228 2002-08-08 Ken Raeburn <raeburn@mit.edu>
8229
8230 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
8231
8232 * puresize.h (BASE_PURESIZE): Increase to 910000.
8233
8234 2002-08-08 Kenichi Handa <handa@etl.go.jp>
8235
8236 * coding.c (Ffind_operation_coding_system): For write-region, if
8237 VISIT is a filename, make it the target.
8238
8239 2002-08-07 Richard M. Stallman <rms@gnu.org>
8240
8241 * alloc.c (mark_object): Detect long lists for debugging.
8242 (mark_object_loop_halt): New variable.
8243
8244 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
8245
8246 * data.c (Fmake_variable_frame_local): Doc fix.
8247
8248 2002-08-01 David Ponce <david@dponce.com>
8249
8250 * w32menu.c (local_heap, local_alloc, local_free): New macros.
8251 (malloc_widget_value, free_widget_value)
8252 (w32_free_submenu_strings): Use them.
8253
8254 (push_submenu_start, push_submenu_end, push_left_right_boundary)
8255 (push_menu_pane, push_menu_item, single_keymap_panes)
8256 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
8257 (single_submenu, set_frame_menubar)
8258 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
8259
8260 (Fx_popup_menu): Don't show pop up menu until preceding one is
8261 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
8262
8263 * w32menu.c: Changes adapted from xmenu.c
8264 (set_frame_menubar): First parse all submenus,
8265 then make widget_value trees from them.
8266 Don't allocate any widget_value objects
8267 until we are done with the parsing.
8268 (parse_single_submenu): New function.
8269 (digest_single_submenu): New function.
8270 (single_submenu): Function deleted, replaced by those two.
8271
8272 2002-08-04 Andrew Choi <akochoi@shaw.ca>
8273
8274 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
8275 returns a valid window pointer before proceeding for keyDown and
8276 autoKey events.
8277
8278 2002-08-03 Andrew Choi <akochoi@shaw.ca>
8279
8280 * macterm.c (USE_CARBON_EVENTS): New macro.
8281 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
8282 (x_iconify_frame): Call CollapseWindow.
8283 (Vmac_reverse_ctrl_meta): New variable.
8284 (Vmac_wheel_button_is_mouse_2): New variable.
8285 (init_mac_drag_n_drop): New function.
8286 (mac_do_receive_drag): New function.
8287 (mac_handle_service_event): New function.
8288 (init_service_handler): New function.
8289 (mac_to_emacs_modifiers): New function.
8290 (mac_event_to_emacs_modifiers): New function.
8291 (mac_get_mouse_btn): New function.
8292 (mac_convert_event_ref): New function.
8293 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
8294 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
8295 mac_get_mouse_btn.
8296 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
8297
8298 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
8299 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
8300 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
8301 TOOL_BAR_EVENT for MAC_OS as well.
8302 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
8303 as for WINDOWS_NT.
8304 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
8305
8306 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
8307
8308 2002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
8309
8310 * xdisp.c (forward_to_next_line_start): Fix a condition that
8311 lead to a newline being skipped.
8312
8313 2002-08-02 Andrew Choi <akochoi@shaw.ca>
8314
8315 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
8316
8317 2002-08-01 Richard M. Stallman <rms@gnu.org>
8318
8319 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
8320
8321 2002-07-31 Andrew Choi <akochoi@shaw.ca>
8322
8323 * macfns.c: #undef init_process before #define-ing it.
8324
8325 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
8326 HAVE_CARBON is defined.
8327
8328 2002-07-31 Richard M. Stallman <rms@gnu.org>
8329
8330 * xmenu.c (set_frame_menubar): First parse all submenus,
8331 then make widget_value trees from them.
8332 Don't allocate any widget_value objects
8333 until we are done with the parsing.
8334 (parse_single_submenu): New function.
8335 (digest_single_submenu): New function.
8336 (single_submenu): Function deleted, replaced by those two.
8337
8338 2002-07-30 Juanma Barranquero <lektu@terra.es>
8339
8340 * w32proc.c (syms_of_ntproc): Fix docstring of
8341 `w32-get-true-file-attributes'.
8342
8343 2002-07-28 Richard M. Stallman <rms@gnu.org>
8344
8345 * s/hpux8.h (HPUX8): Define this before including hpux.h.
8346 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
8347
8348 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
8349
8350 * keyboard.c (make_lispy_event):
8351 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
8352 Explicitly clear up_modifier in event->modifiers.
8353
8354 2002-07-27 Richard M. Stallman <rms@gnu.org>
8355
8356 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
8357
8358 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
8359 for bar cursor.
8360
8361 2002-07-26 Kenichi Handa <handa@etl.go.jp>
8362
8363 * coding.c (detect_coding_iso2022): While checking a byte sequence
8364 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
8365 it in the normal loop.
8366
8367 2002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
8368
8369 * xterm.c (expose_overlaps): New function.
8370 (expose_window): Use it to fix the display of overlapping rows.
8371
8372 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
8373
8374 2002-07-23 Ken Raeburn <raeburn@gnu.org>
8375
8376 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
8377 since it only depends on XUINT.
8378
8379 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
8380 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
8381 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
8382 Macros deleted.
8383
8384 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
8385 its value over other approaches.
8386 * sysdep.c (start_of_data): Don't define the function if a macro
8387 form has been defined.
8388
8389 2002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
8390
8391 * xdisp.c (redisplay_updating_p): New variable.
8392 (init_iterator): Don't free realized faces when
8393 redisplay_updating_p is set.
8394 (redisplay_internal): Set redisplay_updating_p while updating
8395 the display.
8396
8397 2002-07-23 Richard M. Stallman <rms@gnu.org>
8398
8399 * editfns.c (Fmessage): Treat "" like nil.
8400
8401 2002-07-23 Kenichi Handa <handa@etl.go.jp>
8402
8403 * xdisp.c (face_before_or_after_it_pos):
8404 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
8405
8406 2002-07-22 Juanma Barranquero <lektu@terra.es>
8407
8408 * callproc.c (init_callproc) [DOS_NT]:
8409 Initialize Vshared_game_score_directory to nil.
8410 (syms_of_callproc) [DOS_NT]: Likewise.
8411
8412 2002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
8413
8414 * xdisp.c (display_line): Replace an abort with xassert.
8415
8416 2002-07-21 Richard M. Stallman <rms@gnu.org>
8417
8418 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
8419 and END_UNCHANGED when setting buffer_unchanged_p.
8420 Use current_matrix_up_to_date_p to decide whether to use
8421 try_cursor_movement.
8422
8423 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
8424
8425 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
8426
8427 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
8428 Set to nil if dir does not exist.
8429 (syms_of_callproc): Init unconditionally and simply.
8430
8431 * buffer.c (Fbuffer_list): Doc fix.
8432
8433 2002-07-21 Ken Raeburn <raeburn@gnu.org>
8434
8435 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
8436
8437 * buffer.c (mmap_realloc): When shrinking, make sure number of
8438 pages to unmap is rounded towards zero.
8439
8440 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
8441 (XSETINT): Deleted.
8442
8443 * m/att3b.h (XINT): Don't define.
8444 (VALBITS, VALMASK, XTYPE): Deleted.
8445 (DATA_SEG_BITS): Define.
8446 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
8447 ARRAY_MARK_FLAG): Deleted.
8448 (DATA_SEG_BITS): Define.
8449 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
8450 (DATA_SEG_BITS): Define.
8451
8452 2002-07-20 Richard M. Stallman <rms@gnu.org>
8453
8454 * print.c (print_error_message): New args CONTEXT and CALLER.
8455 Calls changed.
8456
8457 * lisp.h (print_error_message): Declare new args.
8458
8459 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
8460 and CONTEXT to print_error_message, don't print them here.
8461 For a Quit, don't use Vsignaling_function.
8462 Call message_log_maybe_newline.
8463
8464 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
8465
8466 2002-07-20 Kim F. Storm <storm@cua.dk>
8467
8468 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
8469
8470 2002-07-19 Ken Raeburn <raeburn@gnu.org>
8471
8472 * bytecode.c (struct byte_stack): Pointers into byte string now
8473 point to const.
8474 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
8475 const.
8476 * charset.h (BCOPY_SHORT): Source pointer now points to const.
8477 * coding.c (encode_eol, detect_coding, detect_eol):
8478 (decode_coding, encode_coding, detect_coding_system):
8479 Source strings now treated as const.
8480 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
8481 modify Lisp string contents.
8482 * coding.h (decode_coding, encode_coding, detect_coding,
8483 detect_eol): Declarations updated.
8484 * composite.c (compose_chars_in_text): Treat Lisp string contents
8485 as const.
8486 * dispnew.c (safe_bcopy): Source pointer now points to const.
8487 * lisp.h (STRING_COPYIN): New macro.
8488 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
8489 (internal_with_output_to_temp_buffer): Declarations updated.
8490 * print.c (temp_output_buffer_setup):
8491 (internal_with_output_to_temp_buffer): Buffer name argument is now
8492 pointer to const.
8493 * sound.c (struct sound_device): Function pointer field "write"
8494 buffer argument now points to const.
8495 (vox_write): Buffer argument points to const.
8496 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
8497 contents as const.
8498 * sysdep.c (emacs_write): Buffer pointer now const.
8499 * term.c (encode_terminal_code): Buffer pointer now const.
8500 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
8501 (x_face_list_fonts, x_update_menu_appearance):
8502 (hash_string_case_insensitive): Treat Lisp string contents as const.
8503
8504 2002-07-19 Juanma Barranquero <lektu@terra.es>
8505
8506 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
8507
8508 * fileio.c (syms_of_fileio): Likewise.
8509 (Ffile_name_as_directory): Fix argument name in docstring.
8510 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
8511
8512 2002-07-18 Richard M. Stallman <rms@gnu.org>
8513
8514 * data.c (Fdefalias): Doc fix.
8515
8516 2002-07-17 Dave Love <fx@gnu.org>
8517
8518 * intervals.h (text_property_stickiness): Use P_.
8519
8520 * ccl.c: Remove `emacs' conditionals.
8521 (ccl_backtrace_table): Fix size spec.
8522 (ccl_driver): Fix type errors.
8523
8524 2002-07-16 Ken Raeburn <raeburn@gnu.org>
8525
8526 * alloc.c (xstrdup, make_string, make_unibyte_string)
8527 (make_multibyte_string, build_string): String pointer args now
8528 point to const.
8529 * charset.c (find_charset_in_text, c_string_width):
8530 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
8531 * fileio.c (report_file_error):
8532 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
8533 (count_combining_before, count_combining_after, insert_1_both):
8534 (insert, insert_and_inherit, insert_string):
8535 (insert_before_markers, insert_before_markers_and_inherit):
8536 * lread.c (intern, oblookup, hash_string):
8537 * minibuf.c (temp_echo_area_glyphs):
8538 * search.c (fast_c_string_match_ignore_case):
8539 * sysdep.c (emacs_open, set_file_times):
8540 * xfaces.c (xstricmp):
8541 * xdisp.c (store_frame_title, string_char_and_length):
8542 (message_dolog, message2, message2_nolog, set_message): Likewise.
8543 (set_message_1): Cast message string argument to const pointer.
8544 * editfns.c (general_insert_function): Insertion function now
8545 takes pointer to const for input data.
8546 * charset.h (find_charset_in_text, c_string_width):
8547 (parse_str_as_multibyte): Declarations updated.
8548 * dispextern.h (xstricmp): Declaration updated.
8549 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
8550 (count_size_as_multibyte, count_combining_before):
8551 (count_combining_after, insert_1, insert_1_both, message_dolog):
8552 (insert, insert_and_inherit, insert_before_markers)
8553 (insert_before_markers_and_inherit, set_message, message2):
8554 (message2_dolog, build_string, make_string, make_unibyte_string):
8555 (make_multibyte_string, intern, oblookup, report_file_error):
8556 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
8557 (emacs_open, xstrdup): Declarations updated.
8558 * systime.h (set_file_times): Declaration updated.
8559
8560 * charset.c (find_charset_in_text, lisp_string_width): Use const
8561 for pointer to lisp string data.
8562 * charset.h (FETCH_STRING_CHAR_ADVANCE):
8563 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
8564 * coding.c (Ffind_coding_systems_region_interval):
8565 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
8566 (Fmake_directory_internal, Fdelete_directory):
8567 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
8568 * fontset.c (font_family_registry, fs_query_fontset):
8569 (list_fontsets):
8570 * frame.c (Fframe_parameter):
8571 * keyboard.c (cmd_error_internal):
8572 * keymap.c (Fdescribe_buffer_bindings):
8573 * lread.c (complete_filename_p, openp):
8574 * minibuf.c (Fminibuffer_complete_word):
8575 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
8576 (face_before_or_after_it_pos, next_element_from_string):
8577 (get_overlay_arrow_glyph_row, display_mode_element):
8578 (decode_mode_spec_coding):
8579 * xterm.c (same_x_server): Likewise.
8580
8581 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
8582 settings of non-existent fields.
8583
8584 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
8585 copy a lisp value.
8586
8587 * lread.c (Fintern_soft): Use string macros instead of
8588 Lisp_String fields.
8589 * keyboard.c (echo_char, parse_modifiers_uncached):
8590 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
8591 * textprop.c (validate_interval_range, interval_of): Likewise.
8592
8593 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
8594
8595 * charset.h (FETCH_STRING_CHAR_ADVANCE)
8596 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
8597 XSTRING()->size_byte.
8598
8599 * lisp.h (SDATA, SREF): Produce rvalue.
8600 (SSET): New macro.
8601 * alloc.c (make_event_array): Use SSET for storing into a string.
8602 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
8603 a string.
8604 * casefiddle.c (casify_object): Use SSET.
8605 * charset.h (FETCH_STRING_CHAR_ADVANCE)
8606 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
8607 address of string contents.
8608 * data.c (Faref): Use SDATA.
8609 (Faset): Use SDATA, SSET.
8610 * dired.c (directory_files_internal): Use SSET.
8611 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
8612 (Fread_file_name): Use SREF, SSET.
8613 * fns.c (concat): Use SSET.
8614 (concat, Fdelete): Use SDATA.
8615 * insdel.c (insert_from_string_1): Use SDATA.
8616 * keyboard.c (Fevent_convert_list): Use SREF.
8617 * lread.c (Fload): Use SDATA, SSET.
8618 * macfns.c (validate_x_resource_name): Use SSET.
8619 * process.c (status_message): Use SSET.
8620 * search.c (wordify): Use SDATA.
8621 (Freplace_match): Use SREF.
8622 * w32fns.c (validate_x_resource_name): Use SSET.
8623 * xfns.c (validate_x_resource_name): Use SSET.
8624 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
8625
8626 2002-07-16 Richard M. Stallman <rms@gnu.org>
8627
8628 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
8629
8630 * xdisp.c (reconsider_clip_changes):
8631 Don't test prevent_redisplay_optimizations_p.
8632 (redisplay_internal): Test prevent_redisplay_optimizations_p
8633 along with clip_changed in some cases.
8634 (try_window_id): Likewise.
8635 (redisplay_window): New local var buffer_unchanged_p.
8636
8637 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
8638
8639 * process.c (create_process): Test USG_SUBTTY_WORKS.
8640 (process_send_signal): Clean up handling of GID.
8641 Detect errors in ioctls meant to set GID.
8642
8643 * window.c (temp_output_buffer_show):
8644 Don't set prevent_redisplay_optimizations_p.
8645
8646 2002-07-15 Juanma Barranquero <lektu@terra.es>
8647
8648 * eval.c (Fdefvaralias): Add docstring argument.
8649
8650 2002-07-15 Ken Raeburn <raeburn@gnu.org>
8651
8652 * lisp.h (STRING_INTERVALS): Produce rvalue.
8653 (STRING_SET_INTERVALS): New macro.
8654 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
8655 * fns.c (Fstring_as_multibyte): Likewise.
8656 * intervals.c (balance_possible_root_interval, delete_interval)
8657 (create_root_interval, copy_intervals_to_string): Likewise.
8658 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
8659 instead of 0.
8660
8661 2002-07-14 Ken Raeburn <raeburn@gnu.org>
8662
8663 * lisp.h (STRING_SET_CHARS): New macro.
8664 (SCHARS, SBYTES): Produce rvalues.
8665 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
8666 * fns.c (concat): Likewise.
8667 * lread.c (read_vector): Likewise.
8668
8669 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
8670 (STRING_SET_UNIBYTE): New macro.
8671 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
8672 length of -1) changed to use STRING_SET_UNIBYTE.
8673 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
8674 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
8675 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
8676 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
8677 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
8678 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
8679 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
8680 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
8681 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
8682 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
8683 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
8684 STRING_BYTES or indirection changed to SCHARS, SBYTES,
8685 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
8686 unchanged for now.
8687
8688 2002-07-13 Kim F. Storm <storm@cua.dk>
8689
8690 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
8691
8692 2002-07-12 Richard M. Stallman <rms@gnu.org>
8693
8694 * fileio.c (Fwrite_region): Doc fix.
8695
8696 * print.c (print_error_message): Don't handle Vsignaling_function here.
8697
8698 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
8699 (command_loop_1): Avoid certain actions after memory-full error.
8700
8701 * eval.c (Fsignal): Don't call cancel_hourglass.
8702 For a memory-full error, don't call Vsignal_hook_function
8703 and don't set Vsignaling_function.
8704
8705 * process.c (process_send_signal): Add abort call.
8706
8707 2002-07-11 Markus Rost <rost@math.ohio-state.edu>
8708
8709 * keymap.c (Fkey_binding): Fix typo.
8710
8711 2002-07-11 Richard M. Stallman <rms@gnu.org>
8712
8713 * alloc.c (Vmemory_full): New variable.
8714 (Vmemory_signal_data): Renamed from memory_signal_data.
8715 Uses changed.
8716 (syms_of_alloc): Defvar them.
8717 (memory_full, buffer_memory_full): Set Vmemory_full.
8718
8719 * lisp.h (Vmemory_full): Add declaration.
8720 (current_column, indented_beyond_p): Change declaration.
8721
8722 * indent.c (last_known_column): Declare as double, not float.
8723 (current_column, current_column_1, string_display_width)
8724 (position_indentation): Return `double'.
8725 (indented_beyond_p): Arg `column' is `double'. Callers changed.
8726
8727 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
8728 (back_to_previous_visible_line_start)
8729 (reseat_at_next_visible_line_start, next_element_from_buffer):
8730 Use `double', not `float', when calling indented_beyond_p.
8731
8732 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
8733
8734 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
8735
8736 2002-07-11 Juanma Barranquero <lektu@terra.es>
8737
8738 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
8739 composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
8740 fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
8741 macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
8742 textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
8743 xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
8744
8745 2002-07-10 Juanma Barranquero <lektu@terra.es>
8746
8747 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
8748 All callers changed.
8749
8750 2002-07-09 Stefan Monnier <monnier@cs.yale.edu>
8751
8752 * data.c (Fdefalias): Add an optional `docstring' argument.
8753 (set_internal, Fsetq_default): Use XCAR/XCDR.
8754
8755 * composite.c (HASH_VALUE, HASH_KEY):
8756 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
8757
8758 2002-07-09 Kenichi Handa <handa@etl.go.jp>
8759
8760 * callproc.c (Fcall_process): Fix previous change.
8761
8762 2002-07-07 Stefan Monnier <monnier@cs.yale.edu>
8763
8764 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
8765 Add support for hash-tables.
8766 (Ftry_completion): Return t even if the string appears multiple times.
8767
8768 * fns.c (Fnconc): Use XCDR.
8769 (Fprovide): Use CONSP and XCDR.
8770 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
8771 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
8772 (Fmake_hash_table): Accept `:size nil'.
8773 (Fmakehash): Delete: moved to subr.el.
8774 (syms_of_fns): Don't defsubr makehash.
8775
8776 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
8777 (HASH_TABLE_SIZE): Move from fns.c.
8778
8779 2002-07-07 Richard M. Stallman <rms@gnu.org>
8780
8781 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
8782 Instead just return 0 when there is something to be done.
8783 (try_scrolling): If make_cursor_line_fully_visible returns 0,
8784 retry scrolling as if cursor were off the bottom.
8785 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
8786 return CURSOR_MOVEMENT_MUST_SCROLL.
8787 (redisplay_window): If make_cursor_line_fully_visible returns 0,
8788 go to try_to_scroll.
8789
8790 * buffer.c (Fbuffer_local_value): Store current value into its binding
8791 so we get the up-to-date value for the binding that is loaded.
8792
8793 * eval.c (Fdefmacro): Doc fix.
8794
8795 2002-07-05 Dave Love <fx@gnu.org>
8796
8797 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
8798 correctly.
8799
8800 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
8801 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
8802 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
8803 CCL_LookupCharConstTbl.
8804 (syms_of_ccl): Defvar translation-hash-table-vector.
8805
8806 2002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8807
8808 * xdisp.c: Remove unused variable `face'.
8809
8810 2002-07-04 Juanma Barranquero <lektu@terra.es>
8811
8812 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
8813 obsolescence information.
8814
8815 2002-07-03 Andrew Choi <akochoi@shaw.ca>
8816
8817 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
8818 pattern. Search cache first.
8819 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
8820 for Japanese font.
8821 (XLoadQueryFont): Use it.
8822
8823 2002-07-02 Richard M. Stallman <rms@gnu.org>
8824
8825 * keymap.c (Fdefine_key): Doc fix.
8826
8827 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
8828
8829 2002-07-02 Juanma Barranquero <lektu@terra.es>
8830
8831 * keymap.c (syms_of_keymap): Fix typo.
8832
8833 2002-07-01 Andrew Choi <akochoi@shaw.ca>
8834
8835 * s/darwin.h: Define POSIX_SIGNALS.
8836
8837 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
8838 and FSRefMakePath to convert FSSpec returned with Apple Event to
8839 Posix pathname.
8840 (mac_initialize) [TARGET_API_MAC_CARBON]:
8841 Call init_required_apple_events and disable the `Quit' menu item
8842 provided automatically by the Carbon Toolbox.
8843
8844 2002-07-01 Dave Love <fx@gnu.org>
8845
8846 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
8847 for K&R.
8848
8849 * xterm.c: Fix prototype for K&R.
8850
8851 * term.c (costs_set): Declare static, non-initialized for pcc.
8852
8853 2002-07-01 Richard M. Stallman <rms@gnu.org>
8854
8855 * keyboard.c (timer_last_idleness_start_time): New variable.
8856 (timer_start_idle): Set that.
8857 (read_key_sequence): Use that to reset timer_idleness_start_time
8858 to previous value.
8859
8860 * window.c (Frecenter): With arg, set optional_new_start.
8861
8862 * xdisp.c (redisplay_internal): Make optional_new_start really work.
8863
8864 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
8865 buffer for completion.
8866
8867 2002-06-29 Ken Raeburn <raeburn@gnu.org>
8868
8869 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
8870
8871 2002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8872
8873 * keyboard.c (readable_filtered_events): New function that filters
8874 FOCUS_IN_EVENT depending on parameter.
8875 (readable_events): Calls readable_filtered_events, not filtering
8876 FOCUS_IN_EVENT.
8877 (get_filtered_input_pending): New function, filtering parameter passed
8878 to readable_filtered_events.
8879 (get_input_pending): Calls get_filtered_input_pending, not filtering
8880 FOCUS_IN_EVENT.
8881 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
8882 FOCUS_IN_EVENT.
8883
8884 * xterm.h (struct x_output): Add focus_state.
8885
8886 * xterm.c (x_focus_changed): New function.
8887 (x_detect_focus_change): New function.
8888 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
8889 EnterNotify and LeaveNotify to track X focus changes.
8890
8891 2002-06-28 Andreas Schwab <schwab@suse.de>
8892
8893 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
8894
8895 2002-06-27 Kim F. Storm <storm@cua.dk>
8896
8897 * xdisp.c: (mode_line_string_list, mode_line_string_face)
8898 (mode_line_string_face_prop): New variables.
8899 (store_mode_line_string): New function.
8900 (display_mode_element): Use store_mode_line_string to
8901 add mode-line string elements to mode_line_string_list
8902 when mode_line_string_list is non-nil.
8903 (Fformat_mode_line): Now returns propertized string by
8904 default. New arg NO-PROPS to ignore properties.
8905 (decode_mode_spec): Only add two dashes for %- in propertized
8906 mode-line string.
8907 (syms_of_xdisp): Init and staticpro mode_line_string_list.
8908
8909 2002-06-27 Stefan Monnier <monnier@cs.yale.edu>
8910
8911 * minibuf.c (minibuffer_completion_contents): Add return type.
8912
8913 2002-06-27 Juanma Barranquero <lektu@terra.es>
8914
8915 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
8916
8917 2002-06-26 Juanma Barranquero <lektu@terra.es>
8918
8919 * fileio.c (read_file_name_cleanup): Add missing return.
8920
8921 2002-06-26 Richard M. Stallman <rms@gnu.org>
8922
8923 * window.c (Frecenter): Don't set force_start flag.
8924
8925 * minibuf.c (do_completion, Fminibuffer_complete_word)
8926 (Fminibuffer_completion_help): Complete just the text before point.
8927 (minibuffer_completion_contents): New function.
8928
8929 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
8930
8931 * frame.c (frames_bury_buffer): Function deleted.
8932
8933 2002-06-25 Miles Bader <miles@gnu.org>
8934
8935 * callint.c (Fcall_interactively): When checking to see if doprnt hit
8936 the end of callint_message, allow for a terminating '\0'.
8937
8938 2002-06-24 Juanma Barranquero <lektu@terra.es>
8939
8940 * w32select.c: Include composite.h
8941
8942 * w16select.c: Likewise.
8943
8944 2002-06-24 Kenichi Handa <handa@etl.go.jp>
8945
8946 * callproc.c (Fcall_process): If code detection is necessary,
8947 call detect_coding directly here.
8948
8949 * coding.c (detect_eol): Preserve coding->cmp_data.
8950
8951 * w16select.c (Fw16_get_clipboard_data):
8952 * w32fns.c (w32_to_x_font):
8953 * w32select.c (Fw32_get_clipboard_data):
8954 * xselect.c (selection_data_to_lisp_data):
8955 * xterm.c (XTread_socket): Disable composition handling.
8956
8957 2002-06-24 Stefan Monnier <monnier@cs.yale.edu>
8958
8959 * print.c (temp_output_buffer_setup): Kill all local variables.
8960
8961 2002-06-22 Stefan Monnier <monnier@cs.yale.edu>
8962
8963 * lread.c (Fread): Remove redundant and imprecise declaration.
8964
8965 * xfns.c (check_x_display_info): Use check_x_frame.
8966
8967 * .gdbinit (xprintsym): Use the new `xname' field.
8968 (xsymbol): Use it.
8969
8970 2002-06-22 Jason Rumney <jasonr@gnu.org>
8971
8972 * w32fns.c (file_dialog_callback): New function.
8973 (Fx_file_dialog): Allow selecting directories as well as files.
8974
8975 2002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8976
8977 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
8978 OpenBSD. Add support for mipseb-*-netbsd* machines.
8979
8980 2002-06-17 Andrew Choi <akochoi@shaw.ca>
8981
8982 * macterm.c (mac_scroll_area): Set foreground and backcolor to
8983 black and white before scrolling. Restore frame background and
8984 foreground color after scrolling.
8985 (do_window_update): Call XClearWindow before calling expose_frame.
8986 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
8987 FRAME_FOREGROUND_PIXEL of frame.
8988
8989 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
8990 test Mac command key as <ALT> key.
8991
8992 2002-06-17 Stefan Monnier <monnier@cs.yale.edu>
8993
8994 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
8995
8996 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
8997 Lookup keys in function-key-map immediately so that key-translation-map
8998 can be applied earlier.
8999 Remove function_key_possible and key_translation_possible, replaced
9000 by checking `keytran_start < t'.
9001
9002 * .gdbinit (xsymbol): Use the new `xname' field.
9003
9004 2002-06-17 Andrew Choi <akochoi@shaw.ca>
9005
9006 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
9007 test Mac command key as <ALT> key.
9008
9009 * mac.c (do_applescript): Call initialize_applescript if necessary
9010 when first called. Dispose of result_desc only when there is no error.
9011 (Fdo_applescript): Use %d format specifier instead of %ld.
9012
9013 2002-06-16 Andrew Choi <akochoi@shaw.ca>
9014
9015 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
9016 of FrontWindow for cases keyDown and autoKey.
9017
9018 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
9019 Vdefault_fontset to Monaco with mac-roman coding.
9020
9021 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
9022 init_process before and after inclusion of Carbon/Carbon.h, resp.
9023
9024 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
9025 cursor_gc.
9026 (add_font_name_table_entry): New function.
9027 (init_font_name_table): Use add_font_name_table_entry; add italic,
9028 bold, and bold-italic entries for truetype fonts.
9029
9030 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
9031 for Mac too.
9032 (try_font_list) [MAC_OS]: If no font matches given registry, try
9033 fonts with any registry matching face_family.
9034 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
9035
9036 * s/darwin.h: If autoconf detects the Ncurses library, define
9037 LIBS_TERMCAP to -lncurses to use it.
9038
9039 2002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
9040
9041 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
9042
9043 2002-06-15 Richard M. Stallman <rms@gnu.org>
9044
9045 * window.c (Fset_window_configuration): Explicitly preserve
9046 the point value that new_current_buffer had at the start.
9047
9048 2002-06-14 Juanma Barranquero <lektu@terra.es>
9049
9050 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
9051 Fix typos.
9052
9053 2002-06-14 Kim F. Storm <storm@cua.dk>
9054
9055 * insdel.c (insert_1_both, insert_from_string_1)
9056 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
9057 insert happened in the end_unchanged region. Otherwise, the
9058 redisplay may be confused and duplicate the last line in the
9059 buffer [seen after save-buffer when require-final-newline==t].
9060
9061 2002-06-13 Jason Rumney <jasonr@gnu.org>
9062
9063 * w32.c (init_environment): Remove EMACSLOCKDIR.
9064 (stat): Swap _S_IFDIR and _S_IFREG.
9065
9066 2002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9067
9068 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
9069 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
9070 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
9071 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
9072 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
9073 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
9074 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
9075 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
9076 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
9077 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
9078 SELECTION_REQUEST_EVENT, selection_clear_event to
9079 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
9080 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
9081 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
9082 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
9083 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
9084 no_event to NO_EVENT.
9085
9086 2002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9087
9088 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
9089
9090 2002-06-12 Stefan Monnier <monnier@cs.yale.edu>
9091
9092 * intervals.c (textget): Don't forget to `return'.
9093 (lookup_char_property): Use XCAR/XCDR.
9094
9095 2002-06-12 Juanma Barranquero <lektu@terra.es>
9096
9097 * xdisp.c (Fformat_mode_line): Fix typo.
9098
9099 2002-06-12 Kim F. Storm <storm@cua.dk>
9100
9101 * xdisp.c (Fformat_mode_line): New function.
9102 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
9103 (store_frame_title_char, store_frame_title): Use unconditionally.
9104 (init_xdisp): Defsubr Fformat_mode_line.
9105 Initialize frame_title_buf etc. unconditionally.
9106
9107 2002-06-11 Stefan Monnier <monnier@cs.yale.edu>
9108
9109 * keyboard.c (read_key_sequence):
9110 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
9111 things through those maps after downcasing events.
9112 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
9113 applies after function-key-map.
9114 Make sure that keytran can be done in the middle in the sequence.
9115 Be careful not to throw away events past the one we downcase.
9116
9117 * lread.c (read_integer): Remove unused var `tem'.
9118 (read1): Fix int/Lisp_Object mixup.
9119
9120 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
9121
9122 2002-06-11 Richard M. Stallman <rms@gnu.org>
9123
9124 * keyboard.c (readable_events): Ignore any number of
9125 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
9126
9127 2002-06-09 Miles Bader <miles@gnu.org>
9128
9129 * xfaces.c (Ftty_supports_face_attributes_p): New function.
9130 (parse_rgb_list, tty_lookup_color): New functions.
9131 (tty_defined_color): Use `tty_lookup_color' to do all the work.
9132 (color_distance, Fcolor_distance): New functions.
9133 (TTY_SAME_COLOR_THRESHOLD): New macro.
9134 (Qtty_color_standard_values): New variable.
9135 (syms_of_xfaces): Initialize new vars & functions.
9136
9137 2002-06-08 Colin Walters <walters@verbum.org>
9138
9139 * textprop.c (Vchar_property_alias_alist): New variable.
9140 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
9141
9142 * intervals.c (lookup_char_property): New function for looking up
9143 overlay and text properties, created from textget.
9144 (textget): Use it.
9145
9146 * intervals.h (lookup_char_property): Declare.
9147 (Vchar_property_alias_alist): Declare.
9148
9149 * buffer.c (Foverlay_get): Use lookup_char_property.
9150
9151 2002-06-07 Sam Steingold <sds@gnu.org>
9152
9153 * xselect.c (lisp_data_to_selection_data): Fix last change:
9154 *data_ret is not a Lisp string, while unibyte_string is.
9155
9156 2002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
9157
9158 * xselect.c (lisp_data_to_selection_data): Fix last change:
9159 set size_ret.
9160
9161 2002-06-07 Andreas Schwab <schwab@suse.de>
9162
9163 * m/amdx86-64.h: New file.
9164
9165 2002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
9166
9167 * fns.c (Fstring_make_unibyte): Doc fix.
9168
9169 * xselect.c (lisp_data_to_selection_data): If the requested type
9170 is STRING, call string_make_unibyte to encode the selected text
9171 as a string.
9172
9173 * window.c (Fset_window_hscroll): Doc fix.
9174
9175 2002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9176
9177 * fileio.c (choose_write_coding_system):
9178 Call select-safe-coding-system properly.
9179
9180 2002-06-03 Richard M. Stallman <rms@gnu.org>
9181
9182 * xdisp.c (message_with_string): Error if STRING is not a string.
9183
9184 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
9185
9186 * fileio.c (choose_write_coding_system): Pass FILE arg to
9187 Vselect_safe_coding_system_function.
9188
9189 2002-06-03 Ken Raeburn <raeburn@gnu.org>
9190
9191 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
9192
9193 2002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
9194
9195 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
9196 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
9197 * keymap.c (describe_command): Likewise.
9198 * minibuf.c (read_minibuf): Likewise.
9199
9200 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
9201 Cast `current_column' return value to int.
9202 (back_to_previous_visible_line_start)
9203 (reseat_at_next_visible_line_start, next_element_from_buffer):
9204 Cast `indented_beyond_p' 3rd arg to float.
9205
9206 * indent.c (last_known_column): Now a float.
9207 (current_column_1, position_indentation, current_column)
9208 (string_display_width): Return float.
9209 (Fcurrent_column): Cast `current_column' return value to int.
9210 (Fcurrent_indentation): Cast `position_indentation' retval to int.
9211 (indented_beyond_p): Third arg now a float.
9212 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
9213
9214 * lisp.h (current_column): Now returns float.
9215 (indented_beyond_p): 3rd arg now a float.
9216
9217 2002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
9218
9219 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
9220 is Qcompound_text_with_extensions.
9221
9222 * xselect.c (lisp_data_to_selection_data): Always set selection
9223 type as string if x_encode_text returns streingp non-NULL.
9224
9225 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
9226
9227 2002-05-30 Richard M. Stallman <rms@gnu.org>
9228
9229 * window.c (Fset_window_configuration): Correct the handling
9230 of point in current buffer, to work with multiple windows.
9231
9232 2002-05-29 Colin Walters <walters@verbum.org>
9233
9234 * lread.c (Fread_from_string): Don't depend on order of evaluation
9235 for C function parameters.
9236
9237 2002-05-28 Richard M. Stallman <rms@gnu.org>
9238
9239 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
9240 way for blinked-off state and for a nonselected window.
9241
9242 * window.c (window_scroll_pixel_based): Don't call Fbolp;
9243 instead, see if the new start pos is at beginning of line.
9244
9245 * fileio.c (Fwrite_region): If START is a string, don't
9246 make any annotations.
9247
9248 * eval.c (syms_of_eval): Doc fix.
9249
9250 2002-05-28 Colin Walters <walters@debian.org>
9251
9252 * emacs.c (USAGE1): Add --no-splash.
9253 (standard_args): Ditto.
9254
9255 2002-05-28 Colin Walters <walters@gnu.org>
9256
9257 * lread.c (readchar_count): New variable.
9258 (readchar): Increment it.
9259 (unreadchar): Decrement it.
9260 (read_multibyte): Decrement it.
9261 (Vread_with_symbol_positions): New variable.
9262 (Vread_symbol_positions_list): New variable.
9263 (read_internal_start): New function, created from Fread and
9264 Fread_from_string. Handle Vread_symbol_positions_list and
9265 Vread_with_symbol_positions.
9266 (readevalloop, Fread, Fread_from_string): Use it.
9267 (read1): Use readchar_count to add symbol positions to
9268 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
9269 (syms_of_lread): DEFVAR_LISP and initialize them.
9270
9271 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
9272 (substitute_object_recurse, substitute_object_in_subtree)
9273 (substitute_in_interval): Prototype.
9274 (read_multibyte): Return c if it's less than zero.
9275
9276 2002-05-28 Kim F. Storm <storm@cua.dk>
9277
9278 * fileio.c (Fread_file_name_internal): Added brute-force
9279 speed up for using predicate file-directory-p.
9280
9281 2002-05-28 Kim F. Storm <storm@cua.dk>
9282
9283 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
9284 New variables.
9285 (syms_of_fileio): DEFVAR_LISP them.
9286 (read_file_name_cleanup): New unwind function.
9287 (Fread_file_name_internal): Only return completions satifying
9288 Vread_file_name_predicate. Temporarily unwind protect and rebind
9289 default-directory while checking completions against the predicate.
9290 (Fread_file_name): Added PREDICATE argument. Specbind it to
9291 Vread_file_name_predicate during completion.
9292 Call Vread_file_name_function to read the file name if non-nil.
9293
9294 * lisp.h (Fread_file_name): Now has 6 args.
9295
9296 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
9297 predicate for Fread_file_name when reading directory name.
9298 Supply Qnil for predicate in other calls to Fread_file_name.
9299
9300 2002-05-26 Miles Bader <miles@gnu.org>
9301
9302 * term.c (tty_capable_p): New function.
9303 * dispextern.h (tty_capable_p): New function declaration.
9304 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
9305 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
9306
9307 2002-05-23 Stefan Monnier <monnier@cs.yale.edu>
9308
9309 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
9310 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
9311 (Vwrite_region_annotate_functions): Docstring fix.
9312
9313 2002-05-23 Kim F. Storm <storm@cua.dk>
9314
9315 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
9316 phys_cursor's hpos is overwritten. This is still not completely
9317 correct, as it doesn't really make sense to use hpos at all to
9318 get the cursor glyph (as that is relative to the width of the
9319 characters on the line, which may have changed during the update).
9320
9321 2002-05-22 Jason Rumney <jasonr@gnu.org>
9322
9323 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
9324 Lisp_Object.
9325 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
9326 Use modified enumfont_t struct.
9327
9328 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
9329
9330 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
9331 Handle the `hbar' cursor type.
9332 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
9333
9334 * w32fns.c (Qhbar): New variable.
9335 (x_specified_cursor_type): Use it.
9336
9337 2002-05-21 Ken Raeburn <raeburn@gnu.org>
9338
9339 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
9340 now, when the address is needed.
9341
9342 2002-05-21 Colin Walters <walters@gnu.org>
9343
9344 * Makefile.in (shortlisp): Add font-core.el.
9345
9346 2002-05-20 Richard M. Stallman <rms@gnu.org>
9347
9348 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
9349
9350 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
9351 equivalent key bindings here.
9352
9353 2002-05-20 Ken Raeburn <raeburn@gnu.org>
9354
9355 Change symbol structure to contain a lisp object for the symbol
9356 name:
9357 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
9358 object field named "xname".
9359 (SYMBOL_NAME): New macro.
9360 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
9361 name field.
9362 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
9363 (mark_object, gc_sweep): Use symbol xname field and XSTRING
9364 instead of name field.
9365 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
9366 SYMBOL_NAME instead of XSYMBOL and name field.
9367 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
9368 instead of XSYMBOL and name field.
9369 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
9370 and SYMBOL_NAME instead of XSYMBOL and name field.
9371 * coding.c (Fread_coding_system, code_convert_region1)
9372 (code_convert_string1, code_convert_string_norecord)
9373 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
9374 XSYMBOL and name field.
9375 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
9376 (Fmake_variable_buffer_local, Fmake_local_variable)
9377 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
9378 of XSYMBOL and name field.
9379 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
9380 XSYMBOL and name field.
9381 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
9382 instead of XSYMBOL and name field.
9383 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
9384 XSYMBOL and name field.
9385 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
9386 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
9387 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
9388 instead of XSYMBOL and name field.
9389 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
9390 (parse_modifiers, apply_modifiers, Fevent_convert_list)
9391 (parse_solitary_modifier, Fexecute_extended_command):
9392 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
9393 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
9394 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
9395 of XSYMBOL and name field.
9396 (describe_command, describe_translation): Use SYMBOL_NAME and
9397 assignment instead of XSYMBOL and name field and XSETSTRING.
9398 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
9399 instead of XSYMBOL and name field.
9400 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
9401 name field and XSETSTRING.
9402 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
9403 of XSYMBOL and name field.
9404 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
9405 assignment instead of XSYMBOL and name field and XSETSTRING.
9406 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
9407 XSTRING instead of XSYMBOL and name field.
9408 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
9409 and XSTRING instead of XSYMBOL and name field.
9410 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
9411 and XSTRING instead of XSYMBOL and name field.
9412 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
9413 XSTRING instead of XSYMBOL and name field.
9414 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
9415 of XSYMBOL and name field.
9416 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
9417 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
9418
9419 2002-05-19 Ken Raeburn <raeburn@gnu.org>
9420
9421 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
9422 and XCDR real rvalues in most configurations.
9423
9424 * buffer.c (fix_overlays_in_range, fix_overlays_before):
9425 Don't take the address of the cdr part of a cons cell; instead, track
9426 the parent cell and call XSETCDR, or set the variable for the head
9427 of the list if we haven't started down the list yet.
9428
9429 2002-05-19 Richard M. Stallman <rms@gnu.org>
9430
9431 * doc.c (reread_doc_file): Don't ask for confirmation.
9432
9433 2002-05-18 Jason Rumney <jasonr@gnu.org>
9434
9435 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
9436 (xbm_load_image): Use it.
9437 (xbm_load): Ditto.
9438 (xbm_read_bitmap_data): Reverted to xfns.c version.
9439 From David Ponce <david@dponce.com>.
9440
9441 2002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
9442
9443 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
9444 2.02 and later.
9445
9446 2002-05-16 Juanma Barranquero <lektu@terra.es>
9447
9448 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
9449
9450 2002-05-15 Stefan Monnier <monnier@cs.yale.edu>
9451
9452 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
9453 meaningful test.
9454 (read_char_minibuf_menu_prompt): Fix typo.
9455
9456 2002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
9457
9458 * eval.c (Fcommandp): Doc fix.
9459
9460 2002-05-13 Stefan Monnier <monnier@cs.yale.edu>
9461
9462 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
9463 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
9464 (Fset_keymap_parent): Gcpro a bit more.
9465 (access_keymap): Gcpro around meta_map call and around the main loop.
9466 (get_keyelt): Gcpro when following indirect references.
9467 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
9468 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
9469 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
9470 Remove useless ad-hoc remap code.
9471
9472 2002-05-13 Richard M. Stallman <rms@gnu.org>
9473
9474 * search.c (search_buffer): Give up boyer moore search if inverse
9475 translation change charset_base.
9476
9477 2002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
9478
9479 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
9480 characters is carried over from the previous block of text, adjust
9481 coding->produced to account for the extra character.
9482
9483 2002-05-11 Andreas Schwab <schwab@suse.de>
9484
9485 * coding.c (intersection): Keep the elements of the returned list
9486 in the same order as in the first list.
9487
9488 2002-05-11 Kim F. Storm <storm@cua.dk>
9489
9490 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
9491 only update cmm_size if realloc actually succeeds.
9492 Testing with initial size of 2 elements revealed that using
9493 realloc on GNU/Linux would cause a random trap in xmalloc
9494 later on, so I rewrote the code to use malloc/bcopy/free instead
9495 of realloc.
9496
9497 2002-05-10 Jason Rumney <jasonr@gnu.org>
9498
9499 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
9500
9501 2002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
9502
9503 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
9504 parens, to ensure correct evaluation order.
9505
9506 2002-05-10 Kim F. Storm <storm@cua.dk>
9507
9508 * keymap.c (Vemulation_mode_map_alists): New variable.
9509 (syms_of_keymap): DEFVAR_LISP it.
9510 (current_minor_maps): Process keymap alists in that list before
9511 minor-mode-overriding-map-alist and minor-mode-map-alist.
9512
9513 2002-05-09 Richard M. Stallman <rms@gnu.org>
9514
9515 * search.c (Freplace_match): Doc fix.
9516
9517 2002-05-09 Kim F. Storm <storm@cua.dk>
9518
9519 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
9520 Enlarge cursor rectangle drawn around image with non-zero relief.
9521
9522 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
9523 Enlarge cursor rectangle drawn around image with non-zero relief.
9524
9525 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
9526 Enlarge cursor rectangle drawn around image with non-zero relief.
9527
9528 2002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
9529
9530 * xselect.c (lisp_data_to_selection_data): Don't set selection
9531 type if comes from the Lisp object's car. If the selection
9532 contains a pure ASCII text, always return QSTRING as its type.
9533
9534 2002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9535
9536 * mac.c (mac-cut-function): Doc fix.
9537
9538 2002-05-05 Richard M. Stallman <rms@gnu.org>
9539
9540 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
9541
9542 2002-05-04 Jason Rumney <jasonr@gnu.org>
9543
9544 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
9545 for event-click-count.
9546
9547 * process.c (init_process): Only add server subfeature if we can
9548 use non-blocking I/O.
9549
9550 2002-05-04 Andrew Choi <akochoi@shaw.ca>
9551
9552 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
9553 repeatedly.
9554
9555 2002-05-03 Jason Rumney <jasonr@gnu.org>
9556
9557 * process.c (Fmake_network_process): Only support server sockets
9558 when we can make them non-blocking.
9559
9560 * s/ms-w32.h (HAVE_SELECT): Define.
9561
9562 * w32.h (FILE_NDELAY): New flag.
9563
9564 * w32.c (sys_getpeername, fcntl): New functions.
9565 (_sys_read_ahead): Temporarily block on non-blocking sockets.
9566
9567 * w32proc.c: include sys/file.h.
9568
9569 2002-05-03 Colin Walters <walters@verbum.org>
9570
9571 * callproc.c (Vgame_score_directory): Renamed to
9572 Vshared_game_score_directory.
9573
9574 2002-04-30 Richard M. Stallman <rms@gnu.org>
9575
9576 * s/gnu.h [emacs]: Include stdio.h.
9577 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
9578
9579 * eval.c (do_autoload): Error if called while preparing to dump.
9580
9581 * fns.c (Frequire): Error if need to load while preparing to dump.
9582
9583 2002-04-28 Colin Walters <walters@verbum.org>
9584
9585 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
9586 Default to "~/.emacs.d/games".
9587
9588 2002-04-29 Stefan Monnier <monnier@cs.yale.edu>
9589
9590 * lread.c (openp): Change arg exec_only to predicate.
9591 (build_load_history): Use XCAR/XCDR.
9592 (Flocate_file_internal): New fun.
9593 (syms_of_lread): Defsubr it.
9594 (Fload): Update call to openp.
9595
9596 * lisp.h (openp): Update prototype.
9597
9598 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
9599 * w32proc.c (sys_spawnve):
9600 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
9601 * w32.c (check_windows_init_file):
9602 * sound.c (Fplay_sound_internal):
9603 * process.c (Fstart_process):
9604 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
9605 * mac.c (run_mac_command):
9606 * emacs.c (init_cmdargs):
9607 * callproc.c (Fcall_process): Update call to openp.
9608
9609 * textprop.c (remove_properties): Don't use XCAR without CONSP.
9610
9611 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
9612
9613 2002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9614
9615 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
9616 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
9617
9618 2002-04-28 Richard M. Stallman <rms@gnu.org>
9619
9620 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
9621
9622 * eval.c (Fcommandp): New arg for_call_interactively.
9623 * lisp.h (Fcommandp): Declare new arg.
9624
9625 2002-04-28 Jason Rumney <jasonr@gnu.org>
9626
9627 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
9628
9629 * w32.c (stat, fstat): Use file index information to generate
9630 inodes for directories where available.
9631
9632 2002-04-26 Andrew Choi <akochoi@shaw.ca>
9633
9634 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
9635 [HAVE_CARBON]: Include Mac object files.
9636
9637 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
9638 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
9639 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
9640 MAC_OSX, and MAC_OS instead of macintosh.
9641
9642 * editfns.c [MAC_OS8]: Include stdio.h.
9643
9644 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
9645
9646 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
9647 Apple Monaco.
9648
9649 * process.c: Declare QCfamily and QCfilter as extern.
9650 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
9651 calling select.
9652
9653 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
9654
9655 * tparam.c [MAC_OSX]: Don't define BC and UP.
9656
9657 * config.in [HAVE_CARBON]: Add.
9658
9659 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
9660 Move here from mac/src and mac/inc.
9661
9662 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
9663
9664 2002-04-26 Gerd Moellmann <gerd@gnu.org>
9665
9666 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
9667 Compute phys_cursor_width from the x position returned
9668 by x_draw_glyhs, which is cheaper.
9669 (x_display_and_set_cursor): Compute the buffer-local value
9670 of `cursor-in-non-selected-windows' only when needed.
9671
9672 2002-04-25 Gerd Moellmann <gerd@gnu.org>
9673
9674 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
9675 cursor on a stretch glyph has a width that depends on
9676 x_stretch_cursor_p.
9677
9678 2002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9679
9680 * abbrev.c (abbrev-start-location): Doc fix.
9681
9682 * indent.c (Fvertical_motion): Fix last change.
9683
9684 2002-04-25 Gerd Moellmann <gerd@gnu.org>
9685
9686 * indent.c (Fvertical_motion): Move to the start of the line
9687 containing PT before moving up or down.
9688
9689 2002-04-24 Gerd Moellmann <gerd@gnu.org>
9690
9691 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
9692 case of writing a whole row, more or less analogous to the case of
9693 writing only parts of a row.
9694
9695 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
9696 0 for NO_CURSOR.
9697
9698 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
9699
9700 2002-04-23 Colin Walters <walters@verbum.org>
9701
9702 * buffer.c (syms_of_buffer): Doc fix.
9703
9704 2002-04-23 Gerd Moellmann <gerd@gnu.org>
9705
9706 * xterm.c (notice_overwritten_cursor): Handle the special case
9707 of the cursor being in the first blank non-text line at the
9708 end of a window.
9709
9710 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
9711 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
9712 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
9713 bar cursors only, to make phys_cursor_width contain what its name
9714 suggests.
9715 (notice_overwritten_cursor): Consider the cursor image erased if
9716 the output area intersects the cursor image in y-direction.
9717
9718 2002-04-23 Simon Marshall <simon@gnu.org>
9719
9720 * xfns.c (x_set_mouse_color): Change default for cross_cursor
9721 to XC_hand2.
9722
9723 2002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9724
9725 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
9726
9727 2002-04-22 Kim F. Storm <storm@cua.dk>
9728
9729 * textprop.c (remove_properties): Fixed trap for malformed plist.
9730
9731 2002-04-22 Richard M. Stallman <rms@gnu.org>
9732
9733 * cmds.c (Fend_of_line): Handle intangible text in mid line.
9734
9735 * window.c (make_window): Initialize height_fixed_p,
9736 last_cursor_off_p, and p->cursor_off_p slots.
9737
9738 2002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9739
9740 * fns.c (use-dialog-box): Doc fix.
9741
9742 2002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9743
9744 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
9745 variables `row', `i' and `area'.
9746 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
9747 toolkit library.
9748
9749 2002-04-19 Stefan Monnier <monnier@cs.yale.edu>
9750
9751 * xfaces.c (clear_font_table): Don't free the default font of
9752 a frame even if it's on another display.
9753 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
9754 that could be Qt.
9755
9756 2002-04-19 Juanma Barranquero <lektu@terra.es>
9757
9758 * indent.c (Fmove_to_column): Remove unused local variable
9759 `next_boundary_byte'.
9760 (current_column_1): Likewise.
9761
9762 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
9763
9764 * msdos.c (Qhbar): New variable.
9765 (syms_of_msdos): Intern and staticpro it.
9766 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
9767 cursor type.
9768
9769 2002-04-19 Dave Lambert <dlambert@acm.org>
9770
9771 Theses change implement an underscore-like (`hbar') cursor.
9772
9773 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
9774
9775 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
9776 Handle the `hbar' cursor type.
9777 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
9778
9779 * xfns.c (Qhbar): New variable.
9780 (syms_of_xfns): Intern and staticpro it.
9781 (x_specified_cursor_type): Handle `hbar' cursor.
9782
9783 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
9784 not defined.
9785
9786 2002-04-18 Richard M. Stallman <rms@gnu.org>
9787
9788 * textprop.c (remove_properties): New arg LIST allows scanning
9789 either a list or a plist.
9790 (interval_has_some_properties_list): New function, like
9791 interval_has_some_properties using list instead of plist.
9792 All callers changed.
9793 (Fremove_list_of_text_properties): New function.
9794 (syms_of_textprop): Defsubr it.
9795
9796 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
9797
9798 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
9799
9800 2002-04-17 Juanma Barranquero <lektu@terra.es>
9801
9802 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
9803
9804 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
9805
9806 * window.c (coordinates_in_window): Don't report on margin area
9807 if its width is zero.
9808
9809 2002-04-16 Jason Rumney <jasonr@gnu.org>
9810
9811 * w32fns.c (Fx_file_dialog): Decode file name before using.
9812
9813 * w32term.c (construct_drag_n_drop): Likewise.
9814
9815 2002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
9816
9817 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
9818 store load-history in pure space.
9819
9820 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
9821
9822 2002-04-16 Stefan Monnier <monnier@cs.yale.edu>
9823
9824 * xterm.c (Qlatin_1, Qutf_8): New vars.
9825 (syms_of_xterm): Initialize them.
9826 (XTread_socket): Eliminate incorrect optimization that tried to avoid
9827 decoding the output of X*LookupString.
9828 Always use latin-1 to decode the output of XLookupString.
9829 Try Xutf8LookupString if XmbLookupString failed.
9830
9831 * region-cache.c (new_region_cache): Use BEG.
9832
9833 2002-04-16 Gerd Moellmann <gerd@gnu.org>
9834
9835 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
9836 configuration files.
9837 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
9838 returns 0.
9839
9840 2002-04-15 Andreas Schwab <schwab@suse.de>
9841
9842 * config.in: Regenerated using autoheader.
9843
9844 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
9845 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
9846 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
9847 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
9848 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
9849 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
9850 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
9851 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
9852 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
9853 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
9854 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
9855 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
9856 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
9857 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
9858 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
9859 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
9860 STACK_DIRECTION, now set by autoconf.
9861
9862 2002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9863
9864 * dispnew.c (marginal_area_string): Sort arguments.
9865
9866 * dispextern.h (marginal_area_string): Add prototype.
9867
9868 2002-04-13 Richard M. Stallman <rms@gnu.org>
9869
9870 * fileio.c (Finsert_file_contents):
9871 Don't call temp_output_buffer_setup--do just part, by hand.
9872
9873 * coding.c (run_pre_post_conversion_on_str):
9874 Don't call temp_output_buffer_setup--do just part, by hand.
9875
9876 * keyboard.c (command_loop_1): Don't call start_hourglass
9877 or cancel_hourglass when executing a macro.
9878
9879 * marker.c (count_markers): New function.
9880
9881 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
9882 grow without limit. Move recently used elements to the front.
9883
9884 2002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
9885
9886 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
9887
9888 2002-04-12 Gerd Moellmann <gerd@gnu.org>
9889
9890 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
9891 rows marginal areas.
9892 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
9893 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
9894
9895 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
9896
9897 2002-04-12 Dave Love <fx@gnu.org>
9898
9899 * dispnew.c (marginal_area_string): New.
9900
9901 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
9902 (Qleft_margin, Qright_margin): Declare.
9903 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
9904
9905 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
9906 note_mode_line_highlight and extended.
9907
9908 * keyboard.c (Qleft_margin, Qright_margin): Declare.
9909 (make_lispy_event): Deal with mouse events in margins.
9910
9911 2002-04-12 Stefan Monnier <monnier@cs.yale.edu>
9912
9913 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
9914
9915 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
9916 than deactivating the mark if tmm is set to `lambda'.
9917 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
9918 Use a single event for HELP_EVENT.
9919 (Fexecute_extended_command): Save last_point_position.
9920
9921 2002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9922
9923 * lisp.h (Fpropertize): Add prototype.
9924
9925 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
9926
9927 2002-04-10 Colin Walters <walters@verbum.org>
9928
9929 * config.in: Add HAVE_SHARED_GAME_DIR.
9930
9931 * callproc.c: (Vgame_score_directory): New variable.
9932 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
9933
9934 2002-04-10 Richard M. Stallman <rms@gnu.org>
9935
9936 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
9937
9938 2002-04-09 Stefan Monnier <monnier@cs.yale.edu>
9939
9940 * minibuf.c (read_minibuf): Use empty_string.
9941 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
9942 Short-circuit the search as soon as it "failed".
9943 (Fall_completions): Allow lambda forms and lists of strings for alist.
9944 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
9945 when require_match is nil.
9946 (Ftest_completion): Rename from `test_completion' and export to elisp.
9947 Call the predicate also when alist is a list.
9948 Obey Vcompletion_regexp_list.
9949 (do_completion, Fminibuffer_complete_and_exit): Use it.
9950 (Fassoc_string): Rename from `assoc_for_completion'.
9951 Allow list of strings as well and export to elisp.
9952
9953 2002-04-08 Stefan Monnier <monnier@cs.yale.edu>
9954
9955 * puresize.h (BASE_PURESIZE): Increase to 900KB.
9956
9957 2002-04-08 Juanma Barranquero <lektu@terra.es>
9958
9959 * w32.c (sys_accept): Don't hide variable `s'.
9960
9961 2002-04-05 Gerd Moellmann <gerd@gnu.org>
9962
9963 * callint.c (Fcall_interactively): Use INTEGERP instead of
9964 NUMBERP for checking Vhistory_length.
9965
9966 2002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9967
9968 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
9969 Doc fix to reflect it.
9970
9971 2002-04-04 Richard M. Stallman <rms@gnu.org>
9972
9973 * xdisp.c (display_mode_element): New arg RISKY.
9974 Disregard text props found or specified within a variable
9975 that isn't marked risky-local-variable.
9976 (Qrisky_local_variable): New variable.
9977 (syms_of_xdisp): Init and staticpro it.
9978
9979 2002-04-04 Stefan Monnier <monnier@cs.yale.edu>
9980
9981 * undo.c (record_point): New fun.
9982 (record_delete, record_insert): Use it.
9983
9984 2002-04-03 Juanma Barranquero <lektu@terra.es>
9985
9986 * doc.c (Fdocumentation): Add missing parentheses.
9987 (Fdocumentation_property): Likewise.
9988
9989 2002-04-03 Stefan Monnier <monnier@cs.yale.edu>
9990
9991 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
9992 data is 0, just return nil.
9993
9994 2002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
9995
9996 * msdos.c (syms_of_msdos): Fix last change with
9997 mouse_autoselect_window.
9998
9999 2002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10000
10001 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
10002 mouse_autoselect_window.
10003
10004 2002-04-02 Stefan Monnier <monnier@cs.yale.edu>
10005
10006 * keyboard.c (make_lispy_event): Handle unknown keysyms together
10007 with system-specific keysyms. Use it also for unknown function keys.
10008
10009 * doc.c (reread_doc_file): Return whether reload was attempted.
10010 (Fdocumentation, Fdocumentation_property): Don't try to reload
10011 if the doc is 0 and only ask once.
10012
10013 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
10014
10015 2002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
10016
10017 * keyboard.c (read_char): If the event was Qselect_window,
10018 restore timer_idleness_start_time to its previous value.
10019
10020 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
10021
10022 2002-04-01 Stefan Monnier <monnier@cs.yale.edu>
10023
10024 * region-cache.c (new_region_cache): Use BEG.
10025
10026 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
10027 Use BEG and BEG_BYTE.
10028
10029 * doc.c (get_doc_string): Return nil if the location is wrong.
10030 (reread_doc_file): New fun.
10031 (Fdocumentation, Fdocumentation_property):
10032 Call it if get_doc_string fails.
10033 (Fsnarf_documentation): Make it work for a dumped Emacs.
10034
10035 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
10036 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
10037
10038 * charset.c (Fstring): Allow 0 arguments.
10039
10040 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
10041
10042 * process.c (DATAGRAM_CONN_P, list_processes_1)
10043 (Fprocess_datagram_address, Fset_process_datagram_address)
10044 (Fset_network_process_options, server_accept_connection):
10045 Fix some int/Lisp_Object confusions (thank you union types).
10046
10047 2002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10048
10049 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
10050
10051 * w32term.c: Likewise.
10052 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
10053
10054 * keyboard.c (Qselect_window): New symbol.
10055 (head_table): Use it.
10056 (keys_of_keyboard): Bound select-window event to handle-select-window.
10057 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
10058
10059 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
10060 (last_window): New variable.
10061 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
10062 (note_mouse_movement): Remove reimplemented code in #if 0.
10063 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
10064 Emacs windows.
10065
10066 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
10067
10068 2002-03-31 Gerd Moellmann <gerd@gnu.org>
10069
10070 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
10071 Callers changed.
10072
10073 2002-03-30 Richard M. Stallman <rms@gnu.org>
10074
10075 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
10076 loop whenever it stops making progress.
10077
10078 * widget.c (set_frame_size): Don't call change_frame_size.
10079
10080 2002-03-30 Gerd Moellmann <gerd@gnu.org>
10081
10082 * dispnew.c (direct_output_for_insert):
10083 Call mark_window_display_accurate.
10084
10085 2002-03-29 Jason Rumney <jasonr@gnu.org>
10086
10087 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
10088
10089 2002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
10090
10091 * Makefile.in (lread.o): Depend on coding.h.
10092
10093 * lread.c (openp, Fload): Encode the file name before passing it
10094 to `stat', `access', and `emacs_open'.
10095 (openp): GCPRO the encoded file name. Don't recompute Lisp
10096 strings unnecessarily.
10097
10098 2002-03-29 Kim F. Storm <storm@cua.dk>
10099
10100 * fns.c (Flax_plist_put): Doc fix.
10101
10102 2002-03-28 Miles Bader <miles@gnu.org>
10103
10104 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
10105
10106 2002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10107
10108 * process.c (set-network-process-options): Add usage.
10109 (make-network-process): Doc fix.
10110
10111 2002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
10112
10113 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
10114
10115 2002-03-26 Richard M. Stallman <rms@gnu.org>
10116
10117 * fns.c (Fsubstring_no_properties): New function.
10118 (Flax_plist_get, Flax_plist_put): New functions.
10119 (syms_of_fns): defsubr them.
10120
10121 * xdisp.c (update_menu_bar): Test only update_mode_lines;
10122 don't test or alter w->update_mode_line.
10123
10124 * window.c (Fdisplay_buffer): Doc fix.
10125
10126 2002-03-24 Richard M. Stallman <rms@gnu.org>
10127
10128 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
10129
10130 2002-03-24 Gerd Moellmann <gerd@gnu.org>
10131
10132 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
10133 (Fdefmacro): Handle `(declare ...)'.
10134 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
10135 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
10136
10137 2002-03-24 Jason Rumney <jasonr@gnu.org>
10138
10139 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
10140 (xbm_file_p): Add prototypes.
10141 (xbm_format, xbm_image_p): Sync with xfns.c.
10142 (reflect_byte): New function.
10143 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
10144 (xbm_load_image): Create bitmaps with a depth of 1.
10145 (init_xfns): Enable XBM images.
10146
10147 2002-03-23 Jason Rumney <jasonr@gnu.org>
10148
10149 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
10150 correctly. Do not pass up_modifier to keyboard buffer.
10151
10152 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
10153
10154 2002-03-22 Stefan Monnier <monnier@cs.yale.edu>
10155
10156 * Makefile.in (bootstrapclean): New target.
10157 (bootstrap-temacs, bootstrap-doc): Remove.
10158 (bootstrap-emacs): Use a bog-standard `temacs'.
10159 Don't bother to build a DOC file.
10160
10161 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
10162
10163 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
10164 in temacs even if !CANNOT_DUMP.
10165 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
10166
10167 * alloc.c (check_pure_size): Only output a warning.
10168
10169 2002-03-22 Jason Rumney <jasonr@gnu.org>
10170
10171 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
10172 supported.
10173
10174 * w32term.c (zv_bits): Declare as short, for word alignment.
10175 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
10176 (syms_of_w32term): Define x-use-underline-position-properties.
10177
10178 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
10179 (clear_image_cache): Block input, fix logic, clear matrices in
10180 all frames that share this cache.
10181
10182 2002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
10183
10184 * emacs.c (main): Update the Copyright year in the blurb printed
10185 by "emacs --version".
10186
10187 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
10188
10189 * xterm.c (XTread_socket): If XK_ISO_Lock and
10190 XK_ISO_Last_Group_Lock are defined, handle keysyms between
10191 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
10192
10193 2002-03-21 Kim F. Storm <storm@cua.dk>
10194
10195 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
10196 menu-bar bindings in keymap and local-map properties _are_ used.
10197 But try keymap property first in accordance with 2002-01-03 patch.
10198 Added comment describing why this is not always reliable.
10199 (tool_bar_items): Ditto for tool-bar.
10200
10201 2002-03-21 Jason Rumney <jasonr@gnu.org>
10202
10203 * w32fns.c (x_clear_image_1): Disable color table code.
10204
10205 2002-03-21 Kim F. Storm <storm@cua.dk>
10206
10207 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
10208 removed the wrong version of the DEFUN macro; fixed it.
10209
10210 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
10211 Fmember rather than Fmemq).
10212 (Fprovide): Check that subfeatures is a list.
10213
10214 * process.c (QCfeature, QCdatagram): Removed variables.
10215 (QCtype, Qdatagram): New variables.
10216 (network_process_featurep): Removed function.
10217 (Fmake_network_process): Removed :feature check.
10218 Use :type 'datagram instead of :datagram t to create a datagram
10219 socket. This allows us to add other connection types (e.g. raw
10220 sockets) later in a consistent manner.
10221 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
10222 supported subfeatures for feature make-network-process.
10223 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
10224 Intern and staticpro QCtype and Qdatagram.
10225 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
10226
10227 * xfns.c: (QCtype): Remove duplicate declaration and
10228 initialization (is now declared in process.c).
10229
10230 * w32fns.c: (QCtype): Remove duplicate declaration and
10231 initialization (is now declared in process.c).
10232
10233 2002-03-21 Richard M. Stallman <rms@gnu.org>
10234
10235 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
10236 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
10237 when jumping to `fail' to avoid undoing reg changes in the
10238 last iteration of the loop.
10239 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
10240
10241 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
10242 Depend on process.h.
10243
10244 2002-03-20 Jason Rumney <jasonr@gnu.org>
10245
10246 Most of the following changes are still conditional on HAVE_IMAGES
10247 which is not set by default on Windows.
10248
10249 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
10250
10251 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
10252 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
10253 (four_corners_best, x_clear_image_1, x_clear_image)
10254 (x_alloc_image_color, postprocess_image)
10255 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
10256 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
10257 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
10258
10259 * w32gui.h (struct XImage): Define.
10260
10261 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
10262 extract mouse co-ordinates.
10263
10264 2002-03-20 Jason Rumney <jasonr@gnu.org>
10265
10266 * w32.c (init_winsock): Dynamically load new server and UDP
10267 socket functions.
10268 (socket_to_fd): New function.
10269 (sys_socket): Use it.
10270 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
10271 (sys_recvfrom, sys_sendto): New wrapper functions.
10272
10273 * process.c (QCfamily, QCfilter): Remove duplicate declaration
10274 and initialization.
10275
10276 * makefile.w32-in (LIBS): Remove $(WSOCK32).
10277
10278 2002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
10279
10280 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
10281 Don't use "sun" as a variable, it's a predefined constant on Sun
10282 machines.
10283
10284 2002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10285
10286 * bytecode.c (Fbyte_code): Revert last change.
10287
10288 2002-03-19 Kim F. Storm <storm@cua.dk>
10289
10290 * makefile.w32-in (LIBS): Add $(WSOCK32).
10291 From David Ponce <dponce@voila.fr>.
10292
10293 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10294
10295 * process.c (wait_reading_process_input): Move variables `pname'
10296 and `pnamelen' down where they are used.
10297
10298 * bytecode.c (Fbyte_code): Discard unused computed value to
10299 prevent gcc warning.
10300
10301 * lisp.h (Fplist_member): Add prototype.
10302
10303 2002-03-18 Kim F. Storm <storm@cua.dk>
10304
10305 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
10306 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
10307
10308 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
10309 Remove explicit GNU_LINUX settings for datagram support.
10310
10311 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10312
10313 * process.c (Fmake_network_process): Remove unused variable `sa'.
10314 Doc fix. Add usage:.
10315 (set_socket_options): Remove unused variables `optnum' and `opttype'.
10316
10317 2002-03-17 Richard M. Stallman <rms@gnu.org>
10318
10319 * xdisp.c (cursor_type_changed): New variable.
10320 (redisplay_internal): Redisplay all windows if cursor_type_changed.
10321 Clear it when clearing windows_or_buffers_changed.
10322 (try_cursor_movement, redisplay_window, try_window_id)
10323 (try_window_reusing_current_matrix): Test cursor_type_changed
10324 along with windows_or_buffers_changed.
10325
10326 * window.h (cursor_type_changed): New variable.
10327
10328 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
10329 not update_mode_lines, and always set it to 1.
10330
10331 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
10332 if no frames needed redrawing.
10333
10334 2002-03-17 Kim F. Storm <storm@cua.dk>
10335
10336 The following changes add support for network server processes,
10337 datagram connections, and local (unix) sockets.
10338
10339 * process.h (struct Lisp_Process): New member log.
10340 Doc fix: Member command used to indicate stopped network process.
10341 Doc fix: Member childp contains plist for network process.
10342 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
10343
10344 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
10345 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
10346 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
10347 New variables.
10348 (NETCONN1_P): New macro.
10349 (DATAGRAM_SOCKETS): New conditional symbol.
10350 (datagram_address): New array.
10351 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
10352 (status_message): Use concat3.
10353 (Fprocess_status): Add `listen' status to doc string. Return `stop'
10354 for a stopped network process.
10355 (Fset_process_buffer): Update contact plist for network process.
10356 (Fset_process_filter): Ditto. Don't enable input for stopped
10357 network processes. Server must listen, even if filter is t.
10358 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
10359 New functions.
10360 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
10361 (Fprocess_contact): Added KEY argument. Handle datagrams.
10362 (list_processes_1): Optionally show only processes with the query
10363 on exit flag set. Dynamically adjust column widths. Omit tty
10364 column if not needed. Report stopped network processes.
10365 Identify server and datagram network processes.
10366 (Flist_processes): New optional arg `query-only'.
10367 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
10368 (conv_lisp_to_sockaddr, set_socket_options)
10369 (network_process_featurep, unwind_request_sigio): New helper functions.
10370 (Fprocess_datagram_address, Fset_process_datagram_address):
10371 (Fset_network_process_options): New lisp functions.
10372 (Fopen_network_stream): Removed. Now defined in simple.el.
10373 (Fmake_network_process): New lisp function. Code is based on previous
10374 Fopen_network_stream, but heavily reworked with new property list based
10375 argument list, support for datagrams, server processes, and local
10376 sockets in addition to old client-only functionality.
10377 (server_accept_connection): New function.
10378 (wait_reading_process_input): Use it to handle incoming connects.
10379 Do not enable input on a new connection if process is stopped.
10380 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
10381 (send_process): Handle datagram sockets.
10382 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
10383 network process is indicated by setting command field to t .
10384 (Fprocess_send_eof): No-op if datagram connection.
10385 (Fstatus_notify): Don't read input for a stream server socket or a
10386 stopped network process.
10387 (init_process): Initialize datagram_address array.
10388 (syms_of_process): Intern and staticpro new variables, defsubr new
10389 functions.
10390
10391 2002-03-16 Jason Rumney <jasonr@gnu.org>
10392
10393 * w32fns.c (w32_to_all_x_charsets): Return correct type in
10394 startup case.
10395
10396 2002-03-16 Richard M. Stallman <rms@gnu.org>
10397
10398 * xdisp.c (redisplay_internal, redisplay_windows):
10399 Use list_of_error to call internal_condition_case_1.
10400 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
10401 so as to catch all errors with no possibility of debugger redisplay.
10402 (list_of_error): New variable.
10403 (syms_of_xdisp): Init and staticpro it.
10404
10405 * print.c (print_object): Delete `\ ' from printed rep of frame.
10406
10407 2002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
10408
10409 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
10410 until its implementation is fixed.
10411
10412 2002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10413
10414 * xfns.c (png_load): Remove unused variable `gamma_str'.
10415
10416 2002-03-14 Richard M. Stallman <rms@gnu.org>
10417
10418 * xfns.c (x_real_positions): Handle failure in XQueryTree.
10419
10420 2002-03-14 Miles Bader <miles@gnu.org>
10421
10422 * intervals.c (adjust_for_invis_intang): New function.
10423 (set_point_both): Use `adjust_for_invis_intang' to do most of the
10424 work for dealing with invisible+intangible regions. Do so before
10425 and after both forward and backward movements, to handle both
10426 front-sticky and rear-sticky cases.
10427 * textprop.c (text_property_stickiness): Function moved here from
10428 `editfns.c'.
10429 * intervals.h (text_property_stickiness): New declaration.
10430 * editfns.c (char_property_eq): Function removed.
10431 (text_property_stickiness): Function moved to `textprop.c'.
10432
10433 2002-03-13 Jason Rumney <jasonr@gnu.org>
10434
10435 * config.in: Add STRFTIME_NO_POSIX2.
10436
10437 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
10438 and %OX when underlying strftime does not.
10439
10440 2002-03-13 Stefan Monnier <monnier@cs.yale.edu>
10441
10442 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
10443 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
10444 line) to avoid annoying flicker.
10445 (xm_scroll_callback): Get rid of the now unnecessary kludge.
10446 (XTread_socket): Mark it static.
10447
10448 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
10449
10450 2002-03-13 Kim F. Storm <storm@cua.dk>
10451
10452 * puresize.h (BASE_PURESIZE): Increase to 775000.
10453
10454 2002-03-12 Juanma Barranquero <lektu@terra.es>
10455
10456 * editfns.c (syms_of_editfns): Fix typo.
10457
10458 2002-03-12 Gerd Moellmann <gerd@gnu.org>
10459
10460 * xsmfns.c: Include stdio.h because termhooks.h needs it.
10461 Include termopt.h for interrupt_input.
10462
10463 2002-03-11 Andreas Schwab <schwab@suse.de>
10464
10465 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
10466
10467 2002-03-11 Gerd Moellmann <gerd@gnu.org>
10468
10469 * xterm.c (note_mouse_movement): Put code for
10470 x_autoselect_window_p in #if 0.
10471
10472 * lread.c (Fload): Don't assume that message_with_string uses the
10473 string it is given like a C string.
10474
10475 2002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10476
10477 * xterm.h (x_session_check_input, x_session_initialize): Declared.
10478
10479 * xterm.c: (XTread_socket): Add call to x_session_check_input and
10480 x_session_have_connection.
10481 (x_initialize): Add call to x_session_initialize.
10482
10483 * termhooks.h (enum event_kind): Add save_session_event.
10484
10485 * keyboard.c: Add Emacs event save_session_event.
10486
10487 * emacs.c (main): Add call to syms_of_xsmfns.
10488
10489 * lisp.h: Declare syms_of_xsmfns as extern.
10490
10491 * config.in: Add HAVE_X_SM.
10492
10493 * Makefile.in (LIBXT): Add -lSM -lICE
10494 if HAVE_X_SM and not USE_X_TOOLKIT.
10495 (XOBJ): New file xsmfns.c added.
10496
10497 * xsmfns.c: New file for X session management.
10498
10499 2002-03-09 Jason Rumney <jasonr@gnu.org>
10500
10501 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
10502 read-only when setting modified time.
10503
10504 2002-03-08 Gerd Moellmann <gerd@gnu.org>
10505
10506 * xdisp.c (move_it_vertically_backward): At the end of the function,
10507 when moving forward by lines, treat terminal frames specially.
10508
10509 * keyboard.c (echo_char): Make sure to add a separator between
10510 keys even if echo_dash hasn't been called.
10511
10512 * xdisp.c: Use new string macros.
10513 (update_echo_area): Pass number of bytes to message3 instead of
10514 number of chars.
10515 (set_message_1): Don't access a string's size_byte directly.
10516 (decode_mode_spec_coding): Use number of bytes of eoltype string
10517 instead number of chars.
10518
10519 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
10520
10521 2002-03-08 Juanma Barranquero <lektu@terra.es>
10522
10523 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
10524 24-bit.
10525
10526 2002-03-06 Jason Rumney <jasonr@gnu.org>
10527
10528 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
10529
10530 2002-03-06 Gerd Moellmann <gerd@gnu.org>
10531
10532 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
10533 (cancel_echoing, echo_length, echo_truncate): Changed to
10534 work with new kboard definition.
10535 (echo_now): Use message3_nolog instead of message2_nolog.
10536
10537 * alloc.c (mark_kboards): Mark echo_string.
10538
10539 * keyboard.h (ECHOBUFSIZE): Removed.
10540 (struct kboard): Member echoptr removed, member echobuf renamed
10541 to echo_string.
10542
10543 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
10544 message3 instead of message2 to display the message using STRING's
10545 text properties.
10546
10547 2002-03-05 Andreas Schwab <schwab@suse.de>
10548
10549 * xdisp.c (hscroll_margin): Change to EMACS_INT.
10550
10551 2002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
10552
10553 * frame.c (default-frame-alist): Explain that setting it doesn't
10554 affect existing frames.
10555
10556 2002-03-05 Stefan Monnier <monnier@cs.yale.edu>
10557
10558 * indent.c (skip_invisible): Fix my brain fart.
10559
10560 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
10561
10562 2002-03-04 Stefan Monnier <monnier@cs.yale.edu>
10563
10564 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
10565 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
10566 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
10567 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
10568 and variables to use EMACS_INT instead of just int.
10569
10570 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
10571
10572 2002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
10573
10574 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
10575 environment, pass it down with corrected value.
10576
10577 2002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10578
10579 * lread.c (read_filtered_event): Do not call start_hourglass
10580 before returning.
10581
10582 2002-03-04 Juanma Barranquero <lektu@terra.es>
10583
10584 * w32term.c (x_display_and_set_cursor): Fix typo.
10585
10586 2002-03-03 Richard M. Stallman <rms@gnu.org>
10587
10588 * fileio.c (Fmake_temp_name): Doc fix.
10589
10590 2002-03-03 Gary Wong <gtw@gnu.org>
10591
10592 * termcap.c [!emacs]: Replace ospeed for building standalone
10593 libtermcap, for binary compatibility.
10594
10595 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
10596
10597 2002-03-03 Richard M. Stallman <rms@gnu.org>
10598
10599 * xrdb.c (file_p): Rename arg `path' to `filename'.
10600
10601 * abbrev.c (Fexpand_abbrev): Increment plist as use count
10602 only if it is an integer.
10603
10604 * xfns.c (png_load): Set screen_gamma based on f->gamma.
10605 If png_get_sRGB gives an answer, call png_set_gamma
10606 using the default image gamma value.
10607
10608 * lread.c (read1): When reading from a file, default string to
10609 multibyte only if it has some multibyte characters.
10610
10611 * print.c (print_object): Output multibyte chars 128...255
10612 using \x even if ! print_escape_multibyte.
10613
10614 * xdisp.c (display_mode_element): Move the places where
10615 bytepos, charpos, this, and lisp_string are set.
10616 Use lisp_string to set bytepos.
10617
10618 * xdisp.c (redisplay_internal):
10619 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
10620
10621 * xdisp.c (display_mode_element): Merge properties specified with
10622 :propertize onto those that come with the string.
10623
10624 2002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
10625
10626 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
10627 automatic-hscrolling. Users changed.
10628 <hscroll-margin>: Renamed from automatic-hscroll-margin.
10629 Users changed.
10630 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
10631
10632 2002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
10633
10634 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
10635
10636 2002-03-02 Kim F. Storm <storm@cua.dk>
10637
10638 * window.c (Fminibuffer_selected_window): New function.
10639 (syms_of_window): Defsubr it.
10640
10641 2002-03-01 Kim F. Storm <storm@cua.dk>
10642
10643 * window.h (struct window): New member phys_cursor_width.
10644
10645 * window.c (make_window, replace_window): Init phys_cursor_width.
10646
10647 * xterm.c (x_display_and_set_cursor): Blink box cursor using
10648 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
10649
10650 * w32term.c (x_display_and_set_cursor): Blink box cursor using
10651 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
10652
10653 * lisp.h (GCPRO6): New macro.
10654
10655 * process.c (Fopen_network_stream): Use GCPRO6.
10656
10657 2002-03-01 Kim F. Storm <storm@cua.dk>
10658
10659 * process.c (Qconnect, Qfailed): New variables.
10660 (syms_of_process): Intern and staticpro them.
10661 (Fprocess_status): Document connect and failed return values.
10662 [NON_BLOCKING_CONNECT]: New conditional.
10663 (connect_wait_mask, num_pending_connects): New variables.
10664 (status_message): Convert Qfailed status.
10665 (Fopen_network_stream): Added support for non-blocking connect.
10666 New optional args: filter, sentinel, non_blocking. Doc updated.
10667 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
10668 (deactivate_process): Handle pending non-blocking connect.
10669 (wait_reading_process_input): Poll for status of non-blocking
10670 connects. Exec sentinel directly when connect succeeds.
10671 (status_notify): Don't read process output if not yet connected.
10672
10673 2002-02-28 Kim F. Storm <storm@cua.dk>
10674
10675 * window.c: (minibuf_selected_window): Renamed from
10676 Vminibuf_selected_window. Users changed.
10677 (syms_of_window): Staticpro it.
10678
10679 2002-02-26 Kim F. Storm <storm@cua.dk>
10680
10681 The following changes add a new Vminibuf_selected_window variable
10682 which is similar to Vminibuf_scroll_window, but which is only set
10683 on entry to the minibuffer (from a non-minibuffer window):
10684
10685 * window.c: (Vminibuf_selected_window): New variable.
10686 (struct save_window_data): New member minibuf_selected_window.
10687 (Fset_window_configuration): Restore Vminibuf_selected_window.
10688 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
10689 Set minibuf_scroll_window member to nil if minibuf_level is 0.
10690 (compare_window_configurations): Compare minibuf_selected_window.
10691
10692 * window.h: (Vminibuf_selected_window): Declare extern.
10693
10694 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
10695 entry to minibuffer or on entry from a non-minibuffer window.
10696
10697 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
10698 Vminibuf_selected_window instead of Vminibuf_scroll_window.
10699
10700 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
10701 instead of Vminibuf_scroll_window when deciding in which window
10702 the region should be highlighted. Consequently, the region remains
10703 highlighteded even when a completion buffer is also displayed.
10704
10705 2002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
10706
10707 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
10708
10709 * xselect.c (Qcompound_text_with_extensions): Renamed from
10710 Qcompound_text_no_extensions.
10711 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
10712
10713 2002-02-26 Juanma Barranquero <lektu@terra.es>
10714
10715 * w32proc.c (syms_of_ntproc): Doc fix.
10716
10717 2002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10718
10719 * intervals.h: Include "dispextern.h" unconditionally.
10720
10721 2002-02-24 Jason Rumney <jasonr@gnu.org>
10722
10723 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
10724 and disp-table.elc.
10725 (lisp): Add emacs-lisp/backquote.elc.
10726
10727 2002-02-24 Kim F. Storm <storm@cua.dk>
10728
10729 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
10730 The validation of the event type was too strict as it didn't
10731 allow string events; buffer names are used in bindings for
10732 menu-bar-select-buffer (see `menu-bar-update-buffers').
10733
10734 2002-02-23 Kim F. Storm <storm@cua.dk>
10735
10736 The following changes rework my patch of 2002-02-06 which
10737 added command remapping by entering the commands directly into
10738 the keymaps. Now, command remapping uses an explicit `remap'
10739 prefix in the keymaps, i.e. [remap COMMAND].
10740
10741 * keymap.c (Qremap, remap_command_vector): New variables.
10742 (is_command_symbol): Removed function.
10743 (Fdefine_key): No longer accept a symbol for KEY.
10744 Added validation of [remap COMMAND] argument for KEY.
10745 The DEF is no longer required to be a symbol when remapping a command.
10746 (Fremap_command): New function to remap command through keymaps.
10747 (Flookup_key): Perform command remapping initiated by
10748 Fremap_command directly for speed.
10749 (Fkey_binding): Use Fremap_command for command remapping.
10750 (where_is_internal): Handle new command remapping representation.
10751 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
10752 staticpro them. Defsubr Fremap_command.
10753
10754 * keymap.h (Fremap_command): Declare extern.
10755 (is_command_symbol): Remove extern.
10756
10757 * keyboard.c (command_loop_1): Use Fremap_command for command
10758 remapping; now try command remapping for all symbols.
10759
10760 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
10761
10762 * coding.h (run_pre_post_conversion_on_str): Add prototype.
10763
10764 2002-02-23 Jason Rumney <jasonr@gnu.org>
10765
10766 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
10767 on the string before encoding it.
10768 (Fw32_get_clipboard_data): Run post-read-conversion on the string
10769 after decoding it.
10770
10771 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
10772
10773 2002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10774
10775 * w32term.c (enter_timestamp): Remove unused static variable to
10776 prevent warning.
10777
10778 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
10779
10780 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
10781
10782 * w16select.c (Fw16_get_clipboard_data): Fix last change.
10783
10784 * xselect.c (selection_data_to_lisp_data): Fix last change.
10785
10786 2002-02-22 Jason Rumney <jasonr@gnu.org>
10787
10788 * w32term.h (struct w32_output): New member menu_command_in_progress.
10789
10790 * w32menu.c (menubar_selection_callback): Free the menu and
10791 clear the menu_command_in_progress flag.
10792
10793 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
10794 (menu_free_timer): New variable.
10795 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
10796 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
10797 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
10798 menu command is in progress.
10799 <WM_COMMAND>: Set the menu_command_in_progress flag.
10800 Kill any menu_free_timer that is running.
10801
10802 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
10803 Call ExtTextOutA rather than ExtTextOut.
10804
10805 2002-02-22 Eli Zaretskii <eliz@gnu.org>
10806
10807 * puresize.h (BASE_PURESIZE): Increase to 755000.
10808
10809 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
10810
10811 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
10812 on the string before encoding it.
10813 (Fw16_get_clipboard_data): Run post-read-conversion on the string
10814 after decoding it.
10815
10816 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
10817
10818 Support for ICCCM Extended Segments in X selections:
10819
10820 * xselect.c <Qcompound_text_no_extensions>: New variable.
10821 (syms_of_xselect): Intern and staticpro it.
10822 (selection_data_to_lisp_data): Run post-read-conversion on decoded
10823 selection text.
10824 (lisp_data_to_selection_data): If next-selection-coding-system is
10825 compound-text-no-extensions, set the type of selection to be
10826 compound-text.
10827
10828 * xterm.h (x_encode_text): Update prototype.
10829
10830 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
10831 callers changed. If SELECTIONP is non-zero, run the
10832 pre-write-conversion function before encoding the selection text.
10833
10834 2002-02-21 Kim F. Storm <storm@cua.dk>
10835
10836 * frame.c (syms_of_frame): Change mouse-highlight default to t.
10837
10838 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
10839 Correct composing of language-change event.
10840
10841 2002-02-20 Kim F. Storm <storm@cua.dk>
10842
10843 * keyboard.c (menu_bar_items): Don't include keymap or local-map
10844 bindings at PT when building menu (the menu is not updated often
10845 enough for this to work reliable).
10846 (tool_bar_items): Likewise.
10847 (current_active_maps): Removed unused (and buggy) function.
10848
10849 2002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10850
10851 * xfns.c (gif_load): Use correct width and height for GIF images.
10852
10853 2002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
10854
10855 * floatfns.c (Fatan): Accept an optional second arg and call
10856 atan2 if passed 2 args.
10857
10858 2002-02-18 Jason Rumney <jasonr@gnu.org>
10859
10860 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
10861
10862 2002-02-17 Jason Rumney <jasonr@gnu.org>
10863
10864 * w32term.c (x_autoselect_window_p): New variable.
10865 (syms_of_w32term): DEFVAR_BOOL and initialize it.
10866 (note_mouse_movement): Use it.
10867
10868 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
10869
10870 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
10871
10872 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
10873 New variables.
10874 (syms_of_w32fns): Intern and staticpro them.
10875 (x_frame_parms) <"fullscreen">: New parameter.
10876 (x_fullscreen_move, x_set_fullscreen): New functions.
10877 (x_set_frame_parameters): Support Qfullscreen.
10878 (x_real_positions): Save x/y_pixels_diff frame params.
10879 (x_figure_window_size): Support full-screen frames.
10880 (Fx_create_frame): Default the fullscreen parameter.
10881
10882 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
10883 (x_fullscreen_adjust): New functions.
10884 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
10885 fullscreen. Call x_check_fullscreen_move, and set the
10886 want_fullscreen member of output_data.w32
10887 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
10888
10889 * w32term.h: New enum for FULLSCREEN_* constants.
10890 (struct w32_output): New members want_fullscreen, x_pixels_diff,
10891 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
10892 (x-fullscreen-adjust): New prototype.
10893
10894 2002-02-17 Kim F. Storm <storm@cua.dk>
10895
10896 * frame.c: (Vmouse_highlight): New variable.
10897 (syms_of_frame): DEFVAR_LISP it.
10898
10899 * frame.h: (Vmouse_highlight): Declare extern.
10900
10901 * xterm.h (struct x_display_info): Add mouse_face_hidden.
10902
10903 * xterm.c (disable_mouse_highlight): Removed variable.
10904 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
10905 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
10906 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
10907 and on after keyboard input.
10908 (x_term_init): Initialize mouse_face_hidden.
10909
10910 * msdos.h (struct display_info): Add mouse_face_hidden.
10911
10912 * msdos.c (disable_mouse_highlight): Removed variable.
10913 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
10914 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
10915 (internal_terminal_init): Initialize mouse_face_hidden.
10916 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
10917 and on after keyboard input.
10918
10919 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
10920
10921 * w32term.c (disable_mouse_highlight): Removed variable.
10922 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
10923 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
10924 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
10925 and on after keyboard input.
10926 (w32_initialize_display_info): Initialize mouse_face_hidden.
10927
10928 2002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
10929
10930 * msdos.c (last_mouse_window): New variable.
10931 (dos_rawgetc): Fix last change--if the mouse is in the same window
10932 as recorded in last_mouse_window, don't select this window.
10933
10934 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
10935
10936 * msdos.c (x_autoselect_window_p): New variable.
10937 (syms_of_msdos): Defvar it.
10938 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
10939 which the last mouse movement occured, unless it is already selected.
10940
10941 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
10942 New variables.
10943 (syms_of_xdisp): DEVFAR them.
10944 (hscroll_window_tree): Use automatic_hscroll_margin and
10945 Vautomatic_hscroll_step to compute the amount of window scrolling.
10946
10947 2002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10948
10949 * xterm.c (x-autoselect-window): New variable.
10950 (note_mouse_movement): Use it.
10951
10952 * keyboard.c: Do not include "systime.h" twice.
10953
10954 2002-02-15 Andreas Schwab <schwab@suse.de>
10955
10956 * puresize.h (BASE_PURESIZE): Increase to 9/5.
10957
10958 * alloc.c (NSTATICS): Increase to 1280.
10959
10960 2002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
10961
10962 * alloc.c (NSTATICS): Bump to 1026.
10963
10964 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
10965 (Vx_super_keysym): New variables.
10966 (syms_of_xterm): DEFVAR_LISP them.
10967 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
10968 variables to determine which keys to use for the various modifiers.
10969
10970 2002-02-13 Kim F. Storm <storm@cua.dk>
10971
10972 * window.c: (Vmode_line_in_non_selected_windows): Removed.
10973 (mode_line_in_non_selected_windows): New variable.
10974 (syms_of_window): DEFVAR_BOOL it.
10975
10976 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
10977 Use mode_line_in_non_selected_windows.
10978 (mode_line_in_non_selected_windows): Declare extern.
10979 (Vmode_line_in_non_selected_windows): Removed extern.
10980
10981 2002-02-13 Richard M. Stallman <rms@gnu.org>
10982
10983 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
10984 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
10985 (Fclear_this_command_keys): Doc fixes.
10986
10987 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
10988 (update_face_from_frame_parameter): Increment face_change_count
10989 and windows_or_buffers_changed to force redisplay using changed faces.
10990
10991 * xdisp.c (QCpropertize): New variable.
10992 (mode_line_proptrans_alist): New variable.
10993 (display_mode_element): New arg PROPS; all calls changed.
10994 Implement this, for strings.
10995 Handle literal output of strings by sharing the
10996 main-line code for strings, using local var `literal'.
10997 Handle :propertize feature.
10998 (syms_of_xdisp): Initialze and staticpro QCpropertize and
10999 mode_line_proptrans_alist.
11000
11001 2002-02-11 Kim F. Storm <storm@cua.dk>
11002
11003 * window.c: (Vmode_line_in_non_selected_windows): New variable.
11004 (syms_of_window): DEFVAR_LISP it.
11005
11006 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
11007 (CURRENT_MODE_LINE_FACE_ID): Use it.
11008 (Vmode_line_in_non_selected_windows): Declare extern.
11009
11010 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
11011 to get mode line face.
11012
11013 2002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
11014
11015 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
11016 variables; cus-start.el doesn't need them anymore.
11017
11018 2002-02-09 Kim F. Storm <storm@cua.dk>
11019
11020 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
11021 reduction. This fixes a display problem where stray newlines were
11022 inserted in the window (corrected by C-l). Clarified code (IMHO).
11023
11024 2002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
11025
11026 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
11027
11028 * xdisp.c (display_mode_lines): Fix last change.
11029
11030 2002-02-09 Jason Rumney <jasonr@gnu.org>
11031
11032 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
11033 match each other.
11034 (w32_load_system_font): Prevent Cleartype fonts from loading.
11035 (Fx_show_tip): Ensure tip frames are above other topmost windows.
11036
11037 2002-02-09 Kim F. Storm <storm@cua.dk>
11038
11039 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
11040 (CURRENT_MODE_LINE_HEIGHT): Use it.
11041 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
11042
11043 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
11044 (pos_visible_p, handle_face_prop): Likewise.
11045 (display_mode_lines): Likewise, but for the real selected window.
11046 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
11047
11048 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
11049 in non-selected windows.
11050 (realize_basic_faces): Realize it.
11051 (syms_of_term): Intern and staticpro it.
11052
11053 2002-02-08 Kim F. Storm <storm@cua.dk>
11054
11055 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
11056 Changed mail addresses to emacs-devel@gnu.org.
11057
11058 2002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
11059
11060 * fileio.c (Fsubstitute_in_file_name): If the file name includes
11061 ~user, and there's no such user, don't discard everything before ~user.
11062
11063 * floatfns.c (Fround): Doc fix.
11064
11065 2002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11066
11067 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
11068
11069 2002-02-07 Stefan Monnier <monnier@cs.yale.edu>
11070
11071 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
11072
11073 2002-02-07 Kim F. Storm <storm@cua.dk>
11074
11075 * keymap.c (where_is_internal): Only check whether definition is
11076 remapped if it fulfills is_command_symbol.
11077
11078 2002-02-07 Andreas Schwab <schwab@suse.de>
11079
11080 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
11081
11082 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
11083
11084 2002-02-06 Kim F. Storm <storm@cua.dk>
11085
11086 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
11087 defining command remapping. Doc updated.
11088 (Flookup_key): Remap command through keymap if KEY is a symbol.
11089 (is_command_symbol): New function.
11090 (Fkey_binding): Use it. New optional argument NO-REMAP.
11091 Doc updated. Callers changed. Perform command remapping via
11092 recursive call unless that arg is non-nil.
11093 (where_is_internal): New argument no_remap. Callers changed.
11094 Call recursively to find original key bindings for a remapped
11095 comand unless that arg is non-nil.
11096 (Fwhere_is_internal): New optional argument NO-REMAP.
11097 Doc updated. Callers changed. Pass arg to where_is_internal.
11098
11099 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
11100 (is_command_symbol): Added prototype.
11101
11102 * keyboard.c (Vthis_original_command): New variable.
11103 (syms_of_keyboard): DEFVAR_LISP it.
11104 (command_loop_1): Set it, and perform command remapping.
11105
11106 2002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11107
11108 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
11109
11110 2002-02-06 Jason Rumney <jasonr@gnu.org>
11111
11112 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
11113
11114 2002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
11115
11116 * charset.c (get_charset_id): Use if-else instead of ?:.
11117
11118 2002-02-06 Richard M. Stallman <rms@gnu.org>
11119
11120 * filelock.c (S_ISLNK): Define if not defined.
11121
11122 2002-02-03 Richard M. Stallman <rms@gnu.org>
11123
11124 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
11125
11126 * lread.c (read1): Redesign strategy for force_multibyte and
11127 force_singlebyte. Now is_multibyte records whether read_buffer
11128 is multibyte. Encountering any multibyte character makes it so.
11129
11130 2002-02-02 Stefan Monnier <monnier@cs.yale.edu>
11131
11132 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
11133 with the same sequence, map that sequence to f10 rather than f0.
11134
11135 2002-02-03 Andreas Schwab <schwab@suse.de>
11136
11137 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
11138 latter never being defined on GNU/Linux.
11139
11140 2002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
11141
11142 * xfaces.c (realize_default_face): Don't set the weight and slant of
11143 the default face to Qnormal, unless these attributes are unspecified.
11144
11145 2002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11146
11147 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
11148 Call cancel_hourglass unconditionally.
11149
11150 * eval.c (Fsignal): Remove duplicated declaration of
11151 the variable `display_hourglass_p'.
11152
11153 2002-01-31 Richard M. Stallman <rms@gnu.org>
11154
11155 * editfns.c (region_limit): Nicer error message.
11156
11157 * coding.c (decode_composition_emacs_mule):
11158 Give up if NCOMPONENT gets too large to index `component'.
11159
11160 * callint.c (check_mark): New arg to specify clearer error message.
11161 Callers changed.
11162
11163 2002-01-27 Richard M. Stallman <rms@gnu.org>
11164
11165 * minibuf.c (Fcompleting_read): Doc fix.
11166
11167 2002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11168
11169 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
11170 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
11171 Fix doc-strings.
11172
11173 2002-01-26 Richard M. Stallman <rms@gnu.org>
11174
11175 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
11176
11177 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
11178 and scroll_up_aggressively.
11179
11180 2002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11181
11182 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
11183
11184 2002-01-25 Stefan Monnier <monnier@cs.yale.edu>
11185
11186 * textprop.c (Fnext_property_change, Fnext_single_property_change)
11187 (Fprevious_property_change, Fprevious_single_property_change):
11188 Stay within the narrowed-buffer boundaries.
11189
11190 2002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
11191
11192 * term.c (Ftty_display_color_cells): New function.
11193 (syms_of_term): Defsubr it.
11194 (Ftty_display_color_cells, Ftty_display_color_p): Change the
11195 argument name to DISPLAY. Doc fix.
11196
11197 * dispextern.h: Add prototype for set_tty_color_mode and
11198 tty_setup_colors.
11199
11200 2002-01-24 Jason Rumney <jasonr@gnu.org>
11201
11202 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
11203 If region left to draw is not what was expected, mark the frame as
11204 garbaged.
11205
11206 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
11207 Combine the regions returned by BeginPaint and GetUpdateRect.
11208
11209 2002-01-23 Jason Rumney <jasonr@gnu.org>
11210
11211 * w32term.c (x_update_window_begin): Only hide caret if
11212 w32_use_visible_system_caret is set.
11213 (x_update_window_end): Only show caret if
11214 w32_use_visible_system_caret is set.
11215 (syms_of_w32term): Handle SystemParametersInfo call failing.
11216
11217 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
11218
11219 2002-01-22 Richard M. Stallman <rms@gnu.org>
11220
11221 * unexelf.c (unexec): Define n so as to cause compilation error
11222 for the code where people have often written n instead of nn.
11223
11224 * .gdbinit (hookpost-run): Defined.
11225
11226 2002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11227
11228 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
11229
11230 2002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11231
11232 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
11233 if fullscreen is being set.
11234
11235 2002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11236
11237 * minibuf.c (Fminibuffer_contents)
11238 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
11239 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
11240
11241 2002-01-21 Richard M. Stallman <rms@gnu.org>
11242
11243 * window.c (check_frame_size): Fix minimum height calculation.
11244
11245 2002-01-20 Ken Raeburn <raeburn@gnu.org>
11246
11247 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
11248 height before comparison.
11249 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
11250
11251 2002-01-20 Jason Rumney <jasonr@gnu.org>
11252
11253 * w32term.c (w32_system_caret_width): Remove.
11254 (w32_use_visible_system_caret): New user flag.
11255 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
11256 Windows reports a screen reader running.
11257 (x_update_window_begin): Hide the system caret.
11258 (x_update_window_end): Show the system caret.
11259 (x_display_and_set_cursor): Don't draw a cursor when
11260 w32_use_visible_system_caret is set. Do not adjust width.
11261
11262 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
11263 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
11264 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
11265 the user requests it. Use system default width when creating.
11266 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
11267
11268 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
11269 New window messages.
11270
11271 2002-01-20 Richard M. Stallman <rms@gnu.org>
11272
11273 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
11274
11275 2002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11276
11277 * doprnt.c (doprnt1): Fix typos in error call.
11278
11279 2002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
11280
11281 * unexelf.c (unexec) [__sgi]: Support the .got sections.
11282
11283 2002-01-20 Jason Rumney <jasonr@gnu.org>
11284
11285 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
11286 that Windows returns. If a double check fails, try to guess how
11287 ExtTextOut is going to act.
11288
11289 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
11290 in place of stricmp.
11291 (w32_list_synthesized_fonts): Removed.
11292 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
11293 (struct enumfont_t): New element; list.
11294 (enum_font_cb2): List all style and charset variations of a font.
11295 (Fw32_select_font): New optional argument; include_proportional.
11296 Exclude vertical fonts. Exclude proportional fonts unless
11297 include_proportional is non-nil.
11298 (w32_enable_synthesized_fonts): Change to a boolean.
11299 (Fw32_send_sys_command): Doc fix.
11300
11301 2002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11302
11303 * dispnew.c (update_frame): Move the variable `tem' to the block
11304 where it is used.
11305
11306 2002-01-19 Jason Rumney <jasonr@gnu.org>
11307
11308 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
11309 call to face-set-after-frame-default.
11310
11311 2002-01-18 Richard M. Stallman <rms@gnu.org>
11312
11313 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
11314 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
11315
11316 2002-01-17 Richard M. Stallman <rms@gnu.org>
11317
11318 * window.c (enlarge_window): When exceeding size of parent,
11319 directly delete all the siblings instead of trying to resize it.
11320
11321 2002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11322
11323 * term.c (set_tty_color_mode): Remove unused variable `tem'.
11324
11325 2002-01-16 Henrik Enberg <henrik@enberg.org>
11326
11327 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
11328
11329 2002-01-16 Kim F. Storm <storm@cua.dk>
11330
11331 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
11332 is invisible. This can happen if cursor is on top line of a
11333 window, and we switch to a buffer with a header line.
11334
11335 * w32term.c (x_erase_phys_cursor): Ditto.
11336
11337 2002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11338
11339 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
11340 `dont_resize' only when used.
11341
11342 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
11343
11344 2002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
11345
11346 * xdisp.c (display_mode_element): When computing charpos, depend
11347 on multibyteness of elt, not the text in field.
11348
11349 2002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11350
11351 * buffer.c (Fkill_all_local_variables):
11352 Increment `update_mode_lines' only once.
11353
11354 2002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11355
11356 * lisp.h (adjust_after_replace_noundo)
11357 (Fupdate_coding_systems_internal): Add prototypes.
11358
11359 * sound.c (Fplay_sound): Initialize header_size also for :data case.
11360
11361 2002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
11362
11363 Support for the --color command-line argument and tty-color-mode
11364 frame parameter:
11365
11366 * term.c (tty_default_color_capabilities, tty_setup_colors)
11367 (set_tty_color_mode): New functions.
11368 (term_init): Call tty_default_color_capabilities.
11369 (Qtty_color_mode_alist): New variable.
11370 (syms_of_term): Intern and staticpro it.
11371
11372 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
11373 frames.
11374 (do_switch_frame): For termcap frames, switch the tty
11375 color mode as specified by the frame's parameters.
11376 (Qtty_color_mode): New variable.
11377 (syms_of_frame): Intern and staticpro it.
11378
11379 * emacs.c (USAGE2): Add the --color option.
11380 (standard_args): Ditto.
11381
11382 2002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11383
11384 * xterm.h (struct x_output): New members want_fullscreen,
11385 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
11386 y_pixels_outer_diff.
11387 New enum for FULLSCREEN_* constants.
11388 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
11389 is NULL.
11390 (x_fullscreen_adjust): Add prototype.
11391
11392 * emacs.c (USAGE2): Add the new full-screen arguments.
11393 (standard_args): Ditto.
11394
11395 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
11396 New variables.
11397 (syms_of_xfns): Intern and staticpro them.
11398 (x_frame_parms) <"fullscreen">: New parameter.
11399 (x_fullscreen_move, x_set_fullscreen): New functions.
11400 (x_set_frame_parameters): Support for Qfullscreen.
11401 (x_real_positions): More accurate computation of the frame position.
11402 (x_figure_window_size): Support full-screen frames.
11403 (Fx_create_frame): Default the fullscreen parameter.
11404
11405 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
11406 (XTread_socket) <Expose>: Call x_check_fullscreen.
11407 <ConfigureNotify>: Don't resize to fullscreen.
11408 Call x_check_fullscreen_move, and set the want_fullscreen member of
11409 output_data.x.
11410
11411 2002-01-13 Jason Rumney <jasonr@gnu.org>
11412
11413 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
11414 for mice with more than 3 buttons.
11415
11416 * w32term.c (parse_button): New parameter xbutton. Callers changed.
11417 (w32_read_socket): Handle new "XBUTTON" messages.
11418
11419 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
11420 (syms_of_w32fns): DEFVAR_BOOL it.
11421 (w32_wnd_proc): Handle new "XBUTTON" messages.
11422
11423 2002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11424
11425 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
11426
11427 2002-01-13 Andreas Schwab <schwab@suse.de>
11428
11429 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
11430
11431 2002-01-12 Andreas Schwab <schwab@suse.de>
11432
11433 * .gdbinit (xbuffer): Remove address operator since data is now a
11434 pointer.
11435
11436 2002-01-11 Richard M. Stallman <rms@gnu.org>
11437
11438 * insdel.c (adjust_after_replace_noundo): New function.
11439
11440 * coding.c (code_convert_region): Don't copy old text if undo disabled.
11441
11442 2002-01-09 Jason Rumney <jasonr@gnu.org>
11443
11444 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
11445 when checking for multiple frames.
11446
11447 2002-01-08 Richard M. Stallman <rms@gnu.org>
11448
11449 * window.c (delete_window): Rewrite the code for changing the
11450 selected window to handle the case where WINDOW is not a leaf.
11451
11452 2002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
11453
11454 * process.c (send_process): Set src_multibyte to 1 after the call
11455 top setup_coding_system, not before the call.
11456
11457 2002-01-07 Jason Rumney <jasonr@gnu.org>
11458
11459 * xmenu.c (set_frame_menubar, xmenu_show):
11460 (xdialog_show): Initialize wv->help to Qnil.
11461
11462 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
11463 (w32_dialog_show): Initialize wv->help to Qnil.
11464
11465 2002-01-06 Jason Rumney <jasonr@gnu.org>
11466
11467 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
11468
11469 * w32menu.c (w32_menu_display_help): Revert last change.
11470
11471 * xmenu.c (menu_highlight_callback): Revert last change.
11472
11473 2002-01-06 Andreas Schwab <schwab@suse.de>
11474
11475 * insdel.c (make_gap_larger): Make sure buffer size does not
11476 overflow range of int.
11477
11478 2002-01-05 Jason Rumney <jasonr@gnu.org>
11479
11480 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
11481 OVERLAPS_P.
11482
11483 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
11484
11485 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
11486 to the left or to the right of the pointer, put it against
11487 the left screen edge.
11488 (x_frame_parms): Add missing braces around initializer.
11489
11490 * w32term.c (x_setup_relief_colors): Don't compute an image's
11491 background color if it doesn't have a Pixmap.
11492 (notice_overwritten_cursor): Don't depend on
11493 output_cursor and updated_area. Compare pixel coordinates with
11494 window's cursor pixel coordinates.
11495 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
11496 Call notice_overwritten_cursor with new arg list.
11497 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
11498 unconditionally.
11499 (x_draw_image_relief): Use predefined macro instead of
11500 constant when the value of `tool_bar_button_relief' is negative.
11501
11502 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
11503
11504 2002-01-04 Richard M. Stallman <rms@gnu.org>
11505
11506 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
11507
11508 2002-01-03 Richard M. Stallman <rms@gnu.org>
11509
11510 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
11511 (Fkey_binding): Try the `keymap' property map first.
11512 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
11513 minor mode bindings.
11514
11515 2002-01-03 Kim F. Storm <storm@cua.dk>
11516
11517 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
11518
11519 2002-01-02 Richard M. Stallman <rms@gnu.org>
11520
11521 * keyboard.c (read_key_sequence): Handle the keymap property
11522 before minor mode maps.
11523
11524 * editfns.c (Fformat): Update thissize from field_width
11525 based on the actual width, in the string case.
11526
11527 2002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11528
11529 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
11530 when used as truth value to prevent gcc warnings.
11531
11532 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
11533 * w32proc.c: Include <config.h>.
11534
11535 2002-01-01 Andreas Schwab <schwab@suse.de>
11536
11537 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
11538 not EMACS_INT, to make them compatible with DEFVAR_INT.
11539 * lisp.h (max_specpdl_size): Adjust declaration.
11540
11541 2002-01-01 Richard M. Stallman <rms@gnu.org>
11542
11543 * print.c (print_object): Test print_escape_nonascii only for
11544 unibyte strings.
11545 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
11546 when outputting to a multibyte buffer.
11547
11548 2001-12-29 Richard M. Stallman <rms@gnu.org>
11549
11550 * print.c (print_object): In multibyte string, use hex escapes.
11551 Use octal only for unibyte strings.
11552 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
11553
11554 * lread.c (read_escape): New arg BYTEREP for reporting whether
11555 escape forces unibyte or multibyte.
11556 (read1): When reading a string, take note of that info.
11557
11558 2001-12-29 Ken Raeburn <raeburn@gnu.org>
11559
11560 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
11561 comparison to test lisp value returned by Fget.
11562
11563 2001-12-29 Richard M. Stallman <rms@gnu.org>
11564
11565 * lisp.h (max_specpdl_size): Add declaration.
11566
11567 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
11568
11569 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
11570 Handle modifier bits. Correct typo in error message.
11571
11572 2001-12-28 Richard M. Stallman <rms@gnu.org>
11573
11574 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
11575 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
11576 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
11577 Update calls to Fdefine_abbrev.
11578 (write_abbrev): Update for changed data format.
11579 Don't list "system" abbrevs.
11580 (Fexpand_abbrev): Update use count with new data format.
11581 (describe_abbrev): Update for changed data format.
11582 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
11583
11584 * config.in (HAVE_MBSINIT): Add #undef.
11585
11586 * strftime.c (mbsinit): Define as no-op if not available.
11587
11588 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
11589 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
11590
11591 * keymap.c (Flookup_key): Error message if key has wrong data type.
11592 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
11593 (exclude_key): New variable.
11594
11595 2001-12-28 Gerd Moellmann <gerd@gnu.org>
11596
11597 * xterm.c (x_setup_relief_colors): Don't compute an image's
11598 background color if it doesn't have a Pixmap.
11599
11600 * xterm.c (notice_overwritten_cursor): Don't depend on
11601 output_cursor and updated_area. Compare pixel coordinates with
11602 window's cursor pixel coordinates.
11603 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
11604 Call notice_overwritten_cursor with new arg list.
11605 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
11606 unconditionally.
11607
11608 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
11609 height of the cursor line to the amount to scroll.
11610
11611 2001-12-27 Richard M. Stallman <rms@gnu.org>
11612
11613 * intervals.c (set_point_both): The position after an invisible,
11614 intangible character is not an acceptable stopping point.
11615
11616 2001-12-27 Ken Raeburn <raeburn@gnu.org>
11617
11618 * window.c (enlarge_window): In new preserve_before code, convert
11619 CURBEG from lisp object to integer before doing arithmetic.
11620
11621 2001-12-27 Richard M. Stallman <rms@gnu.org>
11622
11623 * bytecode.c (Fbyte_code): Undo previous change.
11624
11625 2001-12-26 Kim F. Storm <storm@cua.dk>
11626
11627 * keyboard.c (record_char): Ignore duplicate help-echo events only
11628 separated by mouse-movement. When tracking mouse, only record
11629 first and last mouse-movement event in same window.
11630 Don't record mouse-movement events in keyboard macros.
11631
11632 2001-12-25 Richard M. Stallman <rms@gnu.org>
11633
11634 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
11635 (Fenlarge_window): New arg PRESERVE_BEFORE.
11636
11637 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
11638 instead of Fstring_as_unibyte.
11639
11640 2001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11641
11642 The following changes remove mocklisp support:
11643
11644 * mocklisp.h, mocklisp.c: Files removed.
11645
11646 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
11647 `Qmocklisp' and `Qmocklisp_arguments'.
11648 Remove prototype of syms_of_mocklisp.
11649
11650 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
11651
11652 * callint.c: Do not include mocklisp.h.
11653 (Fcall_interactively): Do not test for mocklisp case.
11654
11655 * eval.c: Remove variables `Qmocklisp_arguments',
11656 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
11657 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
11658 Do not test for mocklisp case.
11659 (Fwhile): Remove unused variable `tem'.
11660 (syms_of_eval): Remove variable `moclisp-arguments'.
11661
11662 * data.c (wrong_type_argument): Remove mocklisp case.
11663
11664 * doc.c (Fdocumentation): Remove mocklisp case.
11665
11666 * emacs.c (main): Do not call syms_of_mocklisp.
11667
11668 2001-12-21 Richard M. Stallman <rms@gnu.org>
11669
11670 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
11671 to the left or to the right of the pointer, put it against
11672 the left screen edge.
11673
11674 2001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
11675
11676 * Makefile.in (distclean): Remove .gdbinit if we are building
11677 outside the source tree.
11678
11679 2001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
11680
11681 * w32.c (emacs_root_dir): New function.
11682
11683 * msdos.c (emacs_root_dir): New function.
11684
11685 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
11686 of the current drive as the fallback for default_directory.
11687
11688 * dired.c (file_name_completion): Run the elements of
11689 completion-ignored-extensions through ENCODE_FILE.
11690
11691 * lisp.h (scmp): Remove prototype, since it's now a static
11692 function private to dired.c.
11693
11694 2001-12-18 Richard M. Stallman <rms@gnu.org>
11695
11696 * dired.c (scmp): Function moved from minibuf.c.
11697 Delete multibyte handling--used only on encoded strings.
11698
11699 * minibuf.c (scmp): Function moved to dired.c.
11700
11701 * fns.c (merge): Add QUIT call.
11702
11703 2001-12-18 Dave Love <fx@gnu.org>
11704
11705 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
11706 language/georgian.el.
11707
11708 2001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
11709
11710 * Makefile.in (lisp, shortlisp): Synchronize with changes to
11711 lisp/Makefile.in:DONTCOMPILE.
11712
11713 2001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11714
11715 * xdisp.c (window_box_height): Do not return negative values.
11716 From Gerd Moellmann <gerd@gnu.org>.
11717
11718 * keyboard.c (head_table): Add missing braces around initializer.
11719
11720 * term.c (keys): Likewise.
11721
11722 * xfns.c (x_frame_parms, visual_classes): Likewise.
11723
11724 2001-12-17 Sam Steingold <sds@gnu.org>
11725
11726 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
11727 patch (COMPOSING_P, not COMPOSING).
11728
11729 2001-12-17 Richard M. Stallman <rms@gnu.org>
11730
11731 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
11732
11733 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
11734 before calling decode_coding.
11735
11736 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
11737
11738 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
11739 instead of only for COMPOSITION_DISABLED.
11740
11741 2001-12-16 Richard M. Stallman <rms@gnu.org>
11742
11743 * alloc.c (pure_alloc): After overflow, allocate just a small block.
11744
11745 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
11746
11747 * buffer.h (struct buffer): New field `display_error_modiff'.
11748 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
11749
11750 * window.c (Frecenter): Clear display_error_modiff field.
11751
11752 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
11753 Call redisplay_window, but not if display_error_modiff field says no.
11754 (redisplay_window_error): New function.
11755 (displayed_buffer): New variable.
11756 (redisplay_internal, redisplay_windows): Call the new functions
11757 instead of redisplay_window directly.
11758
11759 2001-12-15 Richard M. Stallman <rms@gnu.org>
11760
11761 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
11762
11763 2001-12-14 Andrew Innes <andrewi@gnu.org>
11764
11765 * makefile.w32-in (EMACSLOADPATH): Define.
11766 ($(EMACS)): Run `list-load-path-shadows' after dumping emacs.
11767 (bootstrap-temacs): Remove dependency on bootstrap-clean.
11768
11769 2001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
11770
11771 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
11772 parameter have a numeric value all the time.
11773
11774 * w32fns.c (x_report_frame_params): Likewise.
11775
11776 2001-12-12 Richard M. Stallman <rms@gnu.org>
11777
11778 * fileio.c (Fwrite_region): Doc fix.
11779
11780 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
11781 (redisplay_internal): Call clear_image_cache only for window terminals.
11782
11783 2001-12-12 Gerd Moellmann <gerd@gnu.org>
11784
11785 * xdisp.c (move_it_vertically_backward): Change heuristic
11786 for the case that we didn't move far enough initially.
11787
11788 * window.c (Frecenter): Simplify computation in the case of window
11789 system frames and ARG < 0; use window_box_height.
11790
11791 2001-12-11 Richard M. Stallman <rms@gnu.org>
11792
11793 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
11794 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
11795
11796 2001-12-11 Andrew Innes <andrewi@gnu.org>
11797
11798 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
11799 arg is negative.
11800
11801 2001-12-11 Richard M. Stallman <rms@gnu.org>
11802
11803 * m/hp800.h: Split the __hpux conditional into the parts
11804 that are right for GNU/Linux too and the parts that are not.
11805 Use the former if GNU_LINUX.
11806 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
11807
11808 * s/gnu-linux.h (GNU_LINUX): Defined.
11809
11810 2001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11811
11812 * macros.c, msdos.c, w16select.c: Change doc-string comments to
11813 `new style' [w/`doc:' keyword].
11814
11815 2001-12-10 Jason Rumney <jasonr@gnu.org>
11816
11817 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
11818 before using.
11819
11820 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11821
11822 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
11823 keyword].
11824
11825 2001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
11826
11827 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
11828
11829 * s/hpux10.h (srand48): Don't undefine.
11830
11831 2001-12-09 Jason Rumney <jasonr@gnu.org>
11832
11833 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
11834 Add comment to explain where the struct came from.
11835 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
11836 (add_menu_item): Process pop-up menus first to avoid memory leak.
11837 (add_menu_item, w32_menu_display_help): Use `help' field as
11838 Lisp_Object.
11839 (w32_free_submenu_strings): Only free owner-drawn strings.
11840
11841 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11842
11843 * COPYING: Moved back.
11844
11845 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
11846 Add parentheses around && within ||.
11847
11848 * indent.c (compute_motion): Likewise.
11849
11850 * intervals.c (merge_properties_sticky): Likewise.
11851
11852 * coding.c (setup_coding_system, shrink_encoding_region)
11853 (Fdecode_sjis_char): Likewise.
11854
11855 2001-12-07 Andreas Schwab <schwab@suse.de>
11856
11857 * xdisp.c (display_mode_element): Don't read past end of string if
11858 it ends with '%'.
11859
11860 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
11861 can hold.
11862
11863 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
11864 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
11865 type changed to Lisp_Object.
11866 (syms_of_data): DEFVAR_LISP them.
11867
11868 2001-12-07 Richard M. Stallman <rms@gnu.org>
11869
11870 * callproc.c (init_callproc): Set Vdata_directory based on the source
11871 location whenever Emacs was run uninstalled.
11872
11873 2001-12-06 Paul Eggert <eggert@twinsun.com>
11874
11875 * config.in (HAVE_WORKING_VFORK): New #undefs.
11876 * process.c (create_process):
11877 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
11878 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
11879 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
11880 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
11881 * m/intel386.h (HAVE_VFORK): Likewise.
11882 * m/mips-siemens.h (HAVE_VFORK): Likewise.
11883 * m/mips.h (HAVE_VFORK): Likewise.
11884 * s/freebsd.h (vfork): Remove #define.
11885 * s/lynxos.h (HAVE_VFORK): Remove #undef.
11886 * s/usg5-4-2.h: Fix comment about vfork.
11887
11888 2001-12-06 Richard M. Stallman <rms@gnu.org>
11889
11890 * s/hpux10.h (random): Add undef.
11891 (HAVE_RANDOM): Define it just once.
11892
11893 2001-12-06 Stefan Monnier <monnier@cs.yale.edu>
11894
11895 * eval.c: Undo last change: the standard syntax is not wanted.
11896
11897 2001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
11898
11899 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
11900 scroll bars of the frame before deleting the frame itself. If the
11901 frame has a widget, delete the frame with XtDestroyWidget, and do
11902 not call XDestroyWindow before that.
11903
11904 2001-12-06 Kim F. Storm <storm@cua.dk>
11905
11906 * xfns.c (x_report_frame_params): Return actual fringe widths.
11907
11908 * w32fns.c (x_report_frame_params): Return actual fringe widths.
11909
11910 2001-12-05 Andrew Innes <andrewi@gnu.org>
11911
11912 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
11913 excessively large.
11914
11915 * insdel.c (make_gap_larger): New function.
11916 (make_gap_smaller): New function.
11917 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
11918 Call make_gap_smaller if arg is negative.
11919
11920 2001-12-04 Stefan Monnier <monnier@cs.yale.edu>
11921
11922 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
11923 Pass a dummy argument when calling interrupt_signal.
11924 (parse_menu_item): Mark disabled items before checking for empty def.
11925 (read_char_minibuf_menu_prompt): Make safety more visible.
11926 (read_key_sequence): Add a `first_unbound' variable.
11927 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
11928 unbound prefix as soon as we can detect it.
11929
11930 * doc.c (Fsnarf_documentation): Add prototype.
11931 (get_doc_string): Handle negative arguments.
11932 (Fdocumentation): Use AREF and ASIZE.
11933 Move the calls to get_doc_string to a single place.
11934 Don't confuse an interactive-spec for a docstring reference.
11935 (Fdocumentation_property): Take advantage of the fact that
11936 get_doc_string now ignores the sign of the docstring position.
11937
11938 * eval.c: Use standard syntax for usage in docstrings.
11939
11940 2001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11941
11942 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
11943
11944 2001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11945
11946 * xterm.c (x_draw_image_relief): Use predefined macro instead of
11947 constant when the value of `tool_bar_button_relief' is negative.
11948
11949 2001-12-02 Richard M. Stallman <rms@gnu.org>
11950
11951 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
11952 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
11953
11954 * fileio.c (read_non_regular): Delete Fsignal call.
11955
11956 2001-12-01 Stefan Monnier <monnier@cs.yale.edu>
11957
11958 * lisp.h (run_hook_list_with_args): Undo last change.
11959
11960 2001-12-01 Gerd Moellmann <gerd@gnu.org>
11961
11962 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
11963
11964 2001-12-01 Jason Rumney <jasonr@gnu.org>
11965
11966 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
11967
11968 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
11969 [!WM_MOUSELEAVE]: Define.
11970
11971 * w32menu.c (current_popup_menu, get_menu_item_info):
11972 (set_menu_item_info): New vars.
11973 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
11974 (w32_menu_show): Set current_popup_menu.
11975 (add_menu_item): Allocate new strings for owner-drawn menu items
11976 and help strings.
11977 Use owner-draw for disabled menu items again.
11978 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
11979 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
11980
11981 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
11982 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
11983 <WM_EXITMENULOOP>: Free menu strings.
11984 <WM_MOUSELEAVE>: Stop tracking mouse.
11985 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
11986
11987 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
11988 and mouse face.
11989
11990 2001-12-01 Kim F. Storm <storm@cua.dk>
11991
11992 The following changes add left-fringe and right-fringe
11993 frame parameters to adjust fringe widths, or remove one or
11994 both fringes.
11995
11996 * frame.h (struct frame): Remove trunc_area_pixel_width and
11997 trunc_area_cols fields.
11998 (Qleft_fringe, Qright_fringe): Declare.
11999 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
12000
12001 * frame.c (Qleft_fringe, Qright_fringe): New vars.
12002 (syms_of_frame): Initialize them.
12003
12004 * window.c (coordinates_in_window): Handle separate left and right
12005 fringe widths.
12006
12007 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
12008 and fringe_cols fields.
12009 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
12010 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
12011 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
12012 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
12013 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
12014 (x_compute_fringe_widths): Add prototype.
12015
12016 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
12017 fill fringe evenly with small dashes.
12018 (x_draw_fringe_bitmap): Clear background if necessary. Align and
12019 clip the new ZV bitmap to avoid jitter between rows.
12020 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
12021 background. Don't draw fringe bitmaps if fringe width is zero.
12022 (x_compute_fringe_widths): New function.
12023 (x_new_font, x_set_window_size_1): Use it.
12024
12025 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
12026 (x_set_frame_parameters): Process `font' parameter before other
12027 parameters as fringe widths depend on it.
12028 (x_set_fringe_width): New function.
12029 (x_figure_window_size): Use x_compute_fringe_widths.
12030 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
12031 parameters.
12032
12033 * widget.c (set_frame_size): Use x_compute_fringe_widths.
12034 (EmacsFrameSetCharSize): Ditto.
12035
12036 * w32term.h: Merged changes from xterm.h.
12037 * w32term.c: Merged changes from xterm.c.
12038 * w32fns.c: Merged changes from xfns.c.
12039
12040 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12041
12042 * COPYING: Removed.
12043
12044 2001-11-29 Dave Love <fx@gnu.org>
12045
12046 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
12047 extra extra slot.
12048 (detect_coding_mask): Fix call of detect_coding_iso2022.
12049
12050 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12051
12052 * fileio.c (file-name-coding-system)
12053 (default-file-name-coding-system): Doc fix (links to referenced
12054 variables added).
12055
12056 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
12057
12058 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
12059 Add dummy uses of gcproN variables.
12060
12061 * category.c (describe_category, describe_category_1)
12062 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
12063 (syms_of_category): Don't defsubr Sdescribe_categories.
12064
12065 2001-11-28 Richard M. Stallman <rms@gnu.org>
12066
12067 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
12068
12069 * Makefile.in (lispdir): New variable, referring to build dir.
12070 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
12071
12072 2001-11-28 Andrew Innes <andrewi@gnu.org>
12073
12074 * w32menu.c (w32_menu_display_help): Actually add the new argument
12075 OWNER.
12076
12077 2001-11-28 Jason Rumney <jasonr@gnu.org>
12078
12079 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
12080 menu items. From David Ponce <dponce@wanadoo.fr>.
12081 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
12082 conditionally.
12083 (w32_menu_display_help): New argument OWNER. Rewritten to store a
12084 help event in the owner frame's keyboard buffer.
12085
12086 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
12087 (Fx_show_tip): Don't subtract last width from row width.
12088
12089 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
12090 (w32_read_socket): Use EQ to compare frames.
12091
12092 2001-11-28 Gerd Moellmann <gerd@gnu.org>
12093
12094 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
12095 OVERLAPS_P.
12096
12097 2001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12098
12099 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
12100 `gcpro3' and `gcpro4'.
12101
12102 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
12103
12104 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
12105
12106 * ccl.c: Use AREF and ASIZE.
12107
12108 2001-11-27 Stefan Monnier <monnier@cs.yale.edu>
12109
12110 * lisp.h (run_hook_list_with_args): Remove.
12111 (LIST_END_P): Fix call to wrong_type_argument.
12112 (make_fixnum_or_float): Use EMACS_INT rather than int.
12113
12114 2001-11-26 Stefan Monnier <monnier@cs.yale.edu>
12115
12116 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
12117 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
12118
12119 * eval.c: Use AREF and ASIZE.
12120 (Ffetch_bytecode): Add the file name to the error message.
12121
12122 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
12123 which match the end of the file-name.
12124 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
12125 is not a valid env var, but leave it as is instead.
12126
12127 * keymap.c (access_keymap): Handle t bindings like nil bindings.
12128 Make nil bindings in char-tables transparent.
12129 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
12130
12131 2001-11-26 Richard M. Stallman <rms@gnu.org>
12132
12133 * textprop.c (set_text_properties_1): Allow START, END in either order.
12134 Do nothing if range is empty.
12135
12136 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
12137
12138 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
12139 (clean): Not here.
12140
12141 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
12142
12143 * textprop.c (set_text_properties_1): Clearly mark that the
12144 interval should not be empty.
12145
12146 * intervals.c (graft_intervals_into_buffer):
12147 Don't call set_text_properties_1 on an empty interval.
12148
12149 2001-11-25 Richard M. Stallman <rms@gnu.org>
12150
12151 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
12152
12153 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
12154 don't lose the data in it.
12155
12156 2001-11-25 Juanma Barranquero <lektu@terra.es>
12157
12158 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
12159
12160 * buffer.c (Fkill_buffer): Likewise.
12161
12162 * print.c (temp_output_buffer_setup): Likewise.
12163
12164 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
12165
12166 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
12167
12168 2001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
12169
12170 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
12171 Niemitalo <kon@iki.fi>.
12172
12173 2001-11-25 Jason Rumney <jasonr@gnu.org>
12174
12175 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
12176
12177 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
12178 (Fx_show_tip): Block input during frame creation.
12179 (Fx_show_tip, Fx_hide_tip): Enable.
12180
12181 2001-11-24 Richard M. Stallman <rms@gnu.org>
12182
12183 * lread.c (Fload): Detect recursive load error for more than 3
12184 nestings of the same file.
12185 (Vrecursive_load_depth_limit): Variable deleted.
12186 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
12187
12188 2001-11-24 Jason Rumney <jasonr@gnu.org>
12189
12190 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
12191 mouse position if either left or top is not specified.
12192
12193 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
12194 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
12195 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
12196 (my_create_tip_window): Assign tip_window.
12197 (x_create_tip_frame): Use same defaults as X.
12198 (compute_tip_xy): Remove unused variable. Use full screen width.
12199 (Fx_show_tip): Do not double height. Call ShowWindow directly.
12200
12201 * w32term.c (x_after_update_window_line): Doc fix.
12202 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
12203 frames.
12204 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
12205
12206 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
12207 for all Windowed systems.
12208
12209 2001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
12210
12211 * msdos.c (IT_clear_screen): If the frame's faces are not yet
12212 realized, use the initial screen colors to clear the screen.
12213
12214 2001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12215
12216 * textprop.c (Fset_text_properties): Remove unused variables
12217 `unchanged', `prev_changed', `s' and `len'.
12218
12219 * search.c (Freplace_match): Remove unused variable `inslen'.
12220
12221 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
12222
12223 2001-11-22 Jason Rumney <jasonr@gnu.org>
12224
12225 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
12226 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
12227 (my_create_tip_window): New function.
12228 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
12229 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
12230
12231 2001-11-20 Jason Rumney <jasonr@gnu.org>
12232
12233 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
12234 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
12235
12236 * w32fns.c (Vw32_system_coding_system): Remove.
12237 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
12238
12239 2001-11-19 Stefan Monnier <monnier@cs.yale.edu>
12240
12241 * fileio.c (Fwrite_region): Move choose_write_coding_system to
12242 after build_annotations.
12243
12244 * syntax.c (describe_syntax): Add dummy arg.
12245 (describe_syntax_1): Update call to describe_vector.
12246
12247 * category.c (describe_category): Add dummy arg.
12248 (describe_category_1): Update call to describe_vector.
12249
12250 * keymap.c (Fdescribe_vector): Add `describer' parameter.
12251 (describe_command, describe_translation): Add dummy second param.
12252 (describe_map): Call elt_describer with two arguments.
12253 (describe_vector_princ): Add `fun' parameter.
12254 Call it instead of the hardcoded `princ'.
12255 (describe_vector): Add arg `args'.
12256 Pass it as a new second argument to elt_describer.
12257
12258 * keymap.h (describe_vector): Update prototype.
12259
12260 * frame.c: Don't include keymap.h any more.
12261 (keys_of_frame): Remove.
12262
12263 * lisp.h (keys_of_frame): Remove declaration.
12264
12265 * emacs.c (main): Don't call `keys_of_frame' any more.
12266
12267 2001-11-14 Andreas Schwab <schwab@suse.de>
12268
12269 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
12270 if defined, 0 otherwise.
12271 (MAP_FAILED): Define if not defined and use it to test mmap failure.
12272 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
12273
12274 2001-11-19 Richard M. Stallman <rms@gnu.org>
12275
12276 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
12277
12278 2001-11-18 Jason Rumney <jasonr@gnu.org>
12279
12280 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
12281 (x_draw_bar_cursor): If the background color of the glyph under
12282 the cursor equals the frame's cursor color, use the glyph's
12283 foreground color for drawing the bar cursor.
12284 (x_after_update_window_line): Clear internal border in different
12285 circumstances.
12286 (w32_set_vertical_scroll_bar): Check for width and height > 0.
12287 (w32_draw_relief_rect): Correct relief by 1 pixel.
12288 (x_set_glyph_string_background_width):
12289 Set extends_to_end_of_line_p if the row's fill_line_p is set and
12290 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
12291 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
12292 if cursor_in_non_selected_windows is false.
12293 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
12294 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
12295 Notice if cursor gets overwritten.
12296 (notice_overwritten_cursor): Renamed from
12297 note_overwritten_text_cursor. Rewritten to take glyph widths
12298 into account, and to take X positions as parameters.
12299 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
12300 around call to x_draw_glyphs.
12301 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
12302 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
12303 color to use for image glyph reliefs.
12304 (x_draw_image_relief): Accept zero tool_bar_button_relief.
12305 (glyph_rect): Remove unused variable `area'.
12306
12307 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
12308 some items.
12309 (x_set_internal_border_width): Set frame garbaged when window
12310 doesn't exist yet.
12311 (Fx_create_frame): Accept zero tool_bar_button_relief.
12312 (x_clear_image_1, four_corners_best, image_background)
12313 (image_background_transparent): New functions.
12314 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
12315 (gs_format): Add `:background' entry.
12316 (lookup_image): Set IMG's background color if specified.
12317 (pbm_load, xbm_load_image, png_load): Set IMG's background field
12318 when appropriate.
12319 (x_clear_image_1): Reset `background_valid' and
12320 `background_transparent_valid' fields.
12321 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
12322 calculating it here. Set IMG's background_transparent field.
12323 (enum xpm_keyword_index): Add XPM_BACKGROUND.
12324 (enum png_keyword_index): Add PNG_BACKGROUND.
12325 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
12326 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
12327 (enum gif_keyword_index): Add GIF_BACKGROUND.
12328 (enum gs_keyword_index): Add GS_BACKGROUND.
12329 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
12330 Pre-calculate image background color where necessary.
12331 (x_create_x_image_and_pixmap, xbm_load, gs_load):
12332 Use display info's n_cbits entry for screen depth.
12333 (Fx_show_tip): Remove unused variables `buffer', `top',
12334 `left', `max_width' and `max_height'.
12335
12336 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
12337
12338 2001-11-18 Gerd Moellmann <gerd@gnu.org>
12339
12340 * puresize.h (BASE_PURESIZE): Increase to 750000.
12341
12342 2001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12343
12344 * frame.c (Fframe_live_p): Doc fix.
12345
12346 2001-11-18 Richard M. Stallman <rms@gnu.org>
12347
12348 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
12349 (message_dolog_marker3): New static variables hold three markers.
12350 (syms_of_xdisp): Initialize and staticpro them.
12351 (message_dolog): Use message_dolog_marker1..3 instead of
12352 allocating markers each time. Unchain them when done.
12353
12354 2001-11-17 Richard M. Stallman <rms@gnu.org>
12355
12356 * doc.c (Fsnarf_documentation): Doc fix.
12357
12358 2001-11-17 Andreas Schwab <schwab@suse.de>
12359
12360 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
12361
12362 2001-11-17 Richard M. Stallman <rms@gnu.org>
12363
12364 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
12365
12366 2001-11-17 Jason Rumney <jasonr@gnu.org>
12367
12368 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
12369
12370 2001-11-17 Gerd Moellmann <gerd@gnu.org>
12371
12372 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
12373 with invalid position.
12374
12375 2001-11-16 Richard M. Stallman <rms@gnu.org>
12376
12377 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
12378
12379 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
12380 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
12381 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
12382
12383 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
12384
12385 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
12386
12387 * fileio.c (build_annotations): Split off the tail.
12388 (build_annotations_2): New fun. Extracted from build_annotations.
12389 (Fwrite_region): Split the call to build_annotations into two
12390 calls to build_annotations and build_annotations_2.
12391
12392 2001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12393
12394 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
12395 clear_waiting_for_input with argument.
12396
12397 * xterm.h (x_update_cursor): Remove duplicated prototype.
12398
12399 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
12400
12401 * xterm.c (waiting_for_input): Remove unnecessary declaration.
12402
12403 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
12404
12405 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
12406
12407 * fileio.c (choose_write_coding_system): New fun, extracted
12408 from Fwrite_region.
12409 (Fwrite_region): Use it.
12410
12411 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
12412 (funcall_lambda, run_hook_with_args): Make static and add prototype.
12413 (ml_apply, find_handler_clause): Add prototype.
12414
12415 2001-11-16 Eli Zaretskii <eliz@gnu.org>
12416
12417 * config.in: Add #undef HAVE_COFF_H.
12418
12419 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
12420 Required for ISC 4.1.
12421
12422 2001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
12423
12424 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
12425 Andrew Wiseman <a.wiseman@btclick.com>.
12426
12427 2001-11-16 Kim F. Storm <storm@cua.dk>
12428
12429 The following changes are made to clean up the various internal
12430 references to the fringes to actually use the term `fringe' for
12431 them. Previously, they were called `flags areas', `bitmap areas',
12432 `left/right side of windows', or implicitly as `flags' or
12433 `bitmaps':
12434
12435 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
12436 Comments fixed. Use renamed symbols.
12437
12438 * dispnew.c: Comment fix. Use renamed symbols.
12439
12440 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
12441 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
12442 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
12443
12444 * msdos.c: Comment fix.
12445
12446 * w32fns.c: Use renamed symbols.
12447
12448 * w32term.c: Comment fixes. Use renamed symbols.
12449 (fringe_bitmap_type): Renamed from bitmap_type.
12450 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
12451 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
12452 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
12453
12454 * w32term.h: Comment fixes. Use renamed symbols.
12455 (fringes_extra): Renamed from flags_areas_extra.
12456 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
12457 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
12458 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
12459 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
12460 (FRAME_X_LEFT_FRINGE_WIDTH):
12461 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
12462 (FRAME_X_RIGHT_FRINGE_WIDTH):
12463 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
12464
12465 * widget.c: Use renamed symbols.
12466
12467 * window.c: Comment fixes. Use renamed symbols.
12468 (coordinates-in-window-p): Doc fix.
12469
12470 * xdisp.c: Comment fixes. Use renamed symbols.
12471
12472 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
12473
12474 * xfns.c: Use renamed symbols.
12475
12476 * xterm.c: Comment fixes. Use renamed symbols.
12477 (fringe_bitmap_type): Renamed from bitmap_type.
12478 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
12479 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
12480 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
12481
12482 * xterm.h: Comment fixes. Use renamed symbols.
12483 (fringes_extra): Renamed from flags_areas_extra.
12484 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
12485 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
12486 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
12487 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
12488 (FRAME_X_LEFT_FRINGE_WIDTH):
12489 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
12490 (FRAME_X_RIGHT_FRINGE_WIDTH):
12491 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
12492
12493 2001-11-15 Jason Rumney <jasonr@gnu.org>
12494
12495 * w32menu.c (add-menu-item): Make help_echo and radio buttons
12496 work for most menu items. From David Ponce
12497 <david.ponce@wanadoo.fr>.
12498
12499 2001-11-15 Gerd Moellmann <gerd@gnu.org>
12500
12501 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
12502 Some x_set_* function expect to be called even if old and new
12503 value are equal.
12504
12505 * xdisp.c (build_desired_tool_bar_string): Accept zero
12506 tool_bar_button_relief.
12507
12508 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
12509
12510 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
12511
12512 * xterm.c (x_draw_bar_cursor): If the background color of the
12513 glyph under the cursor equals the frame's cursor color, use
12514 the glyph's foreground color for drawing the bar cursor.
12515
12516 * dispnew.c (direct_output_forward_char): Fix character/byte
12517 position comparison.
12518
12519 2001-11-15 Miles Bader <miles@gnu.org>
12520
12521 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
12522 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
12523 Update arguments to find_field.
12524 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
12525 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
12526 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
12527 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
12528
12529 2001-11-14 Richard M. Stallman <rms@gnu.org>
12530
12531 * editfns.c (Fpropertize): Allow call with 1 arg.
12532
12533 * dispextern.h (image_background, image_background_transparent):
12534 Conditionalize on HAVE_X_WINDOWS.
12535
12536 2001-11-13 Richard M. Stallman <rms@gnu.org>
12537
12538 * print.c (Fprin1_to_string): Doc fix.
12539
12540 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
12541
12542 * floatfns.c (Fceiling, Ffloor): Doc fixes.
12543
12544 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
12545
12546 * fileio.c (Ffile_accessible_directory_p): Doc fix.
12547
12548 * eval.c (syms_of_eval): Doc fix.
12549
12550 * coding.c (syms_of_coding): Doc fix.
12551
12552 * doc.c (Fsnarf_documentation): Doc fix.
12553
12554 * dispnew.c (syms_of_display): Doc fix.
12555
12556 * category.c (Fget_unused_category): Doc fix.
12557
12558 * buffer.c (syms_of_buffer): Doc fixes.
12559
12560 2001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
12561
12562 * print.c (prin1, print): Doc fix.
12563
12564 2001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12565
12566 * fontset.h: Remove declarations of variables
12567 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
12568
12569 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
12570 `Vclip_large_size_font'.
12571
12572 2001-11-13 Jason Rumney <jasonr@gnu.org>
12573
12574 * w32fns.c: Doc fix.
12575
12576 2001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12577
12578 * xfaces.c (Fface_attributes_as_vector): Doc fix.
12579
12580 * fns.c: Doc fix.
12581
12582 * emacs.c: Doc fix.
12583
12584 * coding.c: Doc fix.
12585
12586 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
12587 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
12588 `new style' [w/`doc:' keyword].
12589
12590 2001-11-12 Richard M. Stallman <rms@gnu.org>
12591
12592 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
12593 LeaveNotify events. Only FocusIn and FocusOut do that now.
12594 (x_display_and_set_cursor): Do display hollow cursors in active
12595 minibuffer windows when they are not selected.
12596
12597 2001-11-12 Jason Rumney <jasonr@gnu.org>
12598
12599 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
12600 * w32term.c: Change doc-string comments to `new style'.
12601 [w/`doc:' keyword]. Doc fixes.
12602
12603 * w32fns.c: Don't define max.
12604 (Fx_open_connection): Only execute once.
12605
12606 2001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12607
12608 * ccl.c: Change macros to use do-while block instead of if-else.
12609 Use braces to follow GNU Coding Standards.
12610
12611 2001-11-11 Richard M. Stallman <rms@gnu.org>
12612
12613 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
12614
12615 * lread.c (read_escape): Use end_of_file_error for reporting eof.
12616
12617 * insdel.c (replace_range): Use adjust_markers_for_replace
12618 instead of adjust_markers_for_delete and adjust_markers_for_insert.
12619
12620 * intervals.h: Declare set_text_properties and set_text_properties_1.
12621
12622 * textprop.c (set_text_properties_1): New subroutine
12623 broken out of set_text_properties.
12624 (set_text_properties): Use set_text_properties_1.
12625
12626 * intervals.c (graft_intervals_into_buffer):
12627 Use set_text_properties_1 to clear out properties.
12628
12629 * search.c (Freplace_match): Use replace_range to insert
12630 and delete. Don't request property inheritance from
12631 surrounding text.
12632
12633 2001-11-10 Jason Rumney <jasonr@gnu.org>
12634
12635 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
12636 vertical fonts. Allow them if face name is explicitly specified.
12637 Do not give up if we find a font that cannot be converted to an xlfd.
12638
12639 2001-11-10 Gerd Moellmann <gerd@gnu.org>
12640
12641 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
12642 instead of malloc/free.
12643
12644 2001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12645
12646 * xfaces.c (merge_face_vectors): Use braces to follow GNU
12647 Coding Standards.
12648 (Finternal_set_lisp_face_attribute): Likewise.
12649
12650 * buffer.c (Fbury_buffer): Likewise.
12651
12652 * indent.c (current_column_1): Remove unused variable `prev_col'.
12653
12654 * coding.c (encode_coding): Use precomputed value of `src'.
12655 (encode_coding): Remove unused variable `src_end'.
12656 (code_convert_region): Remove unused variables `count'.
12657
12658 2001-11-07 Jason Rumney <jasonr@gnu.org>
12659
12660 * w32term.c (x_display_and_set_cursor): Do not move system caret
12661 if cursor_glyph is NULL.
12662
12663 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12664
12665 * keymap.c (access_keymap): Fix compilation error.
12666
12667 2001-11-07 Miles Bader <miles@gnu.org>
12668
12669 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
12670
12671 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12672
12673 * intervals.c (graft_intervals_into_buffer):
12674 Remove #ifdef'd-out code.
12675 (graft_intervals_into_buffer): Remove unused variable `middle'.
12676
12677 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
12678 code (eval-current-buffer).
12679 Change doc-string comments to `new style' [w/`doc:' keyword].
12680
12681 2001-11-06 Richard M. Stallman <rms@gnu.org>
12682
12683 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
12684
12685 2001-11-06 Stefan Monnier <monnier@cs.yale.edu>
12686
12687 * lread.c (read1): Fix behavior with nested backquoting.
12688
12689 * keyboard.c (make_lispy_event): Check integerness and fix
12690 Lisp_Object/int mixup.
12691
12692 2001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12693
12694 * fns.c (copy_hash_table): Remove unused variable `v'.
12695
12696 * fontset.c (fontset_font_pattern): Remove unused variable
12697 `family_registry'.
12698
12699 * indent.c (current_column_1): Remove unused variable `prev_col'.
12700
12701 2001-11-05 Richard M. Stallman <rms@gnu.org>
12702
12703 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
12704
12705 * buffer.c (Fkill_buffer): Don't delete auto save file
12706 if buffer is modified.
12707
12708 2001-11-05 Andrew Innes <andrewi@gnu.org>
12709
12710 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
12711 CHECK_NUMBER_CDR.
12712
12713 2001-11-05 Richard M. Stallman <rms@gnu.org>
12714
12715 * unexelf.c (unexec): Minor changes; clean up comments.
12716
12717 2001-11-05 Sam Steingold <sds@gnu.org>
12718
12719 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
12720
12721 2001-11-05 Andreas Schwab <schwab@suse.de>
12722
12723 * sound.c (sound_perror): Save errno from being clobbered.
12724
12725 2001-11-05 Dale Hagglund <rdh@yottayotta.com>
12726
12727 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
12728 the program image directly.
12729
12730 2001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12731
12732 * buffer.h (Fbuffer_local_value): Add prototype.
12733
12734 2001-11-04 Richard M. Stallman <rms@gnu.org>
12735
12736 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
12737 and CHECK_BUFFER.
12738
12739 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
12740 (record_char): Likewise.
12741
12742 * keyboard.c (make_lispy_event): Don't insist a drag event must
12743 move to a different buffer position. Instead, check for moving at
12744 least double_click_fuzz.
12745
12746 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
12747
12748 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
12749
12750 * indent.c (current_column_1, Fmove_to_column): Separate the code
12751 for display-table glyphs from the code for buffer text, to fix
12752 bugs in the former.
12753
12754 2001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
12755
12756 * buffer.c (Fbuffer_local_value): New function.
12757 (syms_of_buffer): Defsubr it.
12758
12759 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
12760 value of `cursor-in-non-selected-windows'.
12761
12762 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
12763 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
12764 (syms_of_xdisp): Initialize it.
12765
12766 2001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12767
12768 * xfns.c (Fx_create_frame): Doc fix.
12769
12770 * coding.c: Change doc-string comments to `new style' [w/`doc:'
12771 keyword].
12772
12773 * eval.c (top_level_value, top_level_set): Remove commented and
12774 #ifdef'd-out code.
12775 (Fdefvar): Fix usage in doc-string.
12776
12777 2001-11-03 Richard M. Stallman <rms@gnu.org>
12778
12779 * xfns.c: Include unistd.h, if it exists.
12780
12781 * editfns.c: Move the include of ctype.h after unistd.h.
12782
12783 * gmalloc.c: Test BROKEN_PROTOTYPES.
12784
12785 2001-11-03 Ken Raeburn <raeburn@gnu.org>
12786
12787 * lisp.h (CHECK_STRING_CAR): New macro.
12788 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
12789 treating XCAR and XCDR as lvalues.
12790 (openp): Use CHECK_STRING_CAR.
12791 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
12792
12793 2001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
12794
12795 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
12796 (SIGMASKTYPE): Define.
12797
12798 * syssignal.h (sigunblock): Don't define if already defined.
12799
12800 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12801
12802 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
12803 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
12804 Fix typos in comments.
12805
12806 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
12807 and #ifdef'd-out code.
12808 Fix and reindent comments.
12809
12810 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
12811
12812 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
12813 argument `i' in macros.
12814
12815 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
12816 `i' in macros.
12817
12818 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
12819 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
12820 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
12821 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
12822 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
12823 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
12824 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
12825 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
12826 in macros.
12827
12828 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
12829 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
12830 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
12831 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
12832 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
12833 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
12834 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
12835 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
12836 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
12837 (remove unused second argument).
12838
12839 2001-11-02 Stefan Monnier <monnier@cs.yale.edu>
12840
12841 * syntax.c (describe_syntax): New wrapper.
12842 (Finternal_describe_syntax_value): Rename from describe_syntax.
12843 Don't insert space at front and \n at the end.
12844 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
12845
12846 * regex.c (re_wctype): Try to fix some warnings.
12847 (regcomp, regexec): Don't forget the __restrict.
12848
12849 2001-11-02 Richard M. Stallman <rms@gnu.org>
12850
12851 * textprop.c (Fget_char_property): Doc fix.
12852
12853 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12854
12855 * process.c (Fstart_process): Add usage to doc-string.
12856
12857 * data.c (Fsetq_default): Ditto.
12858
12859 * callint.c (Finteractive): Ditto.
12860
12861 2001-11-01 Stefan Monnier <monnier@cs.yale.edu>
12862
12863 * macros.c: Don't include keymap.h any more.
12864
12865 2001-11-01 Richard M. Stallman <rms@gnu.org>
12866
12867 * data.c (Fmake_local_variable): Doc fix.
12868
12869 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
12870 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
12871
12872 * keymap.c (Fdescribe_buffer_bindings): Print character property
12873 bindings along with or instead of the buffer local map.
12874 Make the overriding maps override what they should.
12875
12876 2001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12877
12878 * window.c (grow_mini_window): Fix typo in comment.
12879
12880 2001-11-01 Gerd Moellmann <gerd@gnu.org>
12881
12882 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
12883 (XTset_vertical_scroll_bar): Likewise.
12884
12885 * xfns.c (x_build_heuristic_mask): Use four_corners_best
12886 instead of IMAGE_BACKGROUND.
12887
12888 * xfns.c (four_corners_best): Reindent.
12889
12890 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
12891 Handle :box so that it is possible to specify sexprs.
12892
12893 2001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
12894
12895 * s/hpux11.h: New file.
12896
12897 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12898
12899 * emacs.c (USAGE1): Show command line option --no-window-system
12900 instead of --no-windows in usage.
12901 (standard_args): Rename --no-windows to --no-window-system.
12902 (bug_reporting_address): Follow Emacs coding conventions.
12903
12904 * eval.c (Fcommandp): Doc fix.
12905 Change doc-string comments to `new style' [w/`doc:' keyword].
12906
12907 * frame.c (Fframe_live_p): Doc fix.
12908
12909 * buffer.c (selective-display-ellipses): Doc fix.
12910
12911 2001-10-31 Gerd Moellmann <gerd@gnu.org>
12912
12913 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
12914
12915 * xfaces.c (realize_x_face): If C is not a single-byte character,
12916 set the face's colors_copied_bitwise_p instead of the defaulted_p
12917 members which have a different meaning.
12918 (free_face_colors): Do nothing for a face whose colors have been
12919 copied bitwise.
12920
12921 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
12922
12923 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12924
12925 * marker.c, mocklisp.c: Change doc-string comments to `new style'
12926 [w/`doc:' keyword].
12927
12928 2001-10-31 Gerd Moellmann <gerd@gnu.org>
12929
12930 * fns.c (require_unwind): Return Lisp_Object.
12931
12932 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12933
12934 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
12935 (last-input-char): Revert doc-string to be the same as the
12936 doc-string of `last-input-event'.
12937
12938 * xdisp.c: Fix typos in comments.
12939
12940 2001-10-31 Gerd Moellmann <gerd@gnu.org>
12941
12942 * window.c (grow_mini_window): Handle case that the root
12943 window is already smaller than the nominal mininum height.
12944
12945 2001-10-30 Stefan Monnier <monnier@cs.yale.edu>
12946
12947 * emacs.c (main): Don't call keys_of_macros any more.
12948
12949 * lisp.h (keys_of_macros): Remove.
12950
12951 * macros.c (keys_of_macros): Remove.
12952
12953 * xfaces.c (Fface_attribute_relative_p): Declare args.
12954
12955 2001-10-30 Jason Rumney <jasonr@gnu.org>
12956
12957 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
12958 (enum_font_cb2): Ignore fonts with vertical orientation.
12959
12960 2001-10-30 Richard M. Stallman <rms@gnu.org>
12961
12962 * keyboard.c (Finput_pending_p): Doc fix.
12963
12964 2001-10-30 Gerd Moellmann <gerd@gnu.org>
12965
12966 * xterm.c (x_after_update_window_line): Don't run the code
12967 clearing in borders for rows whose visible height is 0.
12968
12969 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
12970 resized_p flag is set. If not set, use the much less flickering
12971 method previously used.
12972
12973 * dispnew.c (change_frame_size_1): Set frame's resized_p.
12974
12975 * frame.h (struct frame) <resized_p>: New member.
12976
12977 * lread.c (to_multibyte): Ensure read_buffer is at least twice
12978 as large as the number of bytes to convert.
12979
12980 * lread.c (to_multibyte): New function.
12981 (read1): Use it.
12982
12983 2001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
12984
12985 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
12986
12987 2001-10-30 Gerd Moellmann <gerd@gnu.org>
12988
12989 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
12990 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
12991 if the row's fill_line_p is set and drawing the last glyph with
12992 DRAW_IMAGE_{RAISED,SUNKEN}.
12993
12994 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
12995
12996 2001-10-29 Stefan Monnier <monnier@cs.yale.edu>
12997
12998 * xmenu.c: Include coding.h and charset.h.
12999 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
13000 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
13001 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
13002 Explicitly set wv->help. Use `TRUE' rather than `True'.
13003 (menu_help_callback): Use empty_string.
13004
13005 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
13006 (Fx_popup_dialog): Explicitly init f.
13007 (w32_menu_display_help): Use empty_string.
13008
13009 2001-10-29 Richard M. Stallman <rms@gnu.org>
13010
13011 * fns.c (Frequire): Detect recursive try to require the same
13012 feature 3 or more levels deep, and get error.
13013 (require_unwind): New subroutine.
13014 (require_nesting_list): New variable.
13015 (syms_of_fns): Init and staticpro it.
13016
13017 * print.c (print_object): Clarify indication of insertion type.
13018
13019 2001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
13020
13021 * coding.c (syms_of_coding): Document that locale-coding-system is
13022 used for decoding input on X.
13023
13024 * window.c (Fscroll_left, Fscroll_right): Doc fix.
13025
13026 2001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13027
13028 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
13029 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
13030
13031 2001-10-29 Gerd Moellmann <gerd@gnu.org>
13032
13033 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
13034 use NO_CURSOR if cursor_in_non_selected_windows is false.
13035
13036 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
13037 the slant attribute if FRAME is t.
13038
13039 * xfns.c (x_set_internal_border_width): Set frame garbaged
13040 when X window doesn't exist yet.
13041
13042 * xterm.c (x_after_update_window_line): Clear internal border
13043 in different circumstances.
13044
13045 * xterm.c (XTread_socket) <KeyPress>: Don't use
13046 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
13047 <handa@etl.go.jp>.
13048
13049 2001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
13050
13051 * m/ibms390.h: New file. From Adam Thornton
13052 <athornton@sinenomine.net>.
13053
13054 2001-10-28 Gerd Moellmann <gerd@gnu.org>
13055
13056 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
13057
13058 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
13059 a loop counter.
13060
13061 2001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13062
13063 * emacs.c: Use argv[0] instead of emacs when -t was specified.
13064
13065 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
13066 keyword].
13067 Fix typos in comments.
13068
13069 * emacs.c (bug_reporting_address): New function.
13070 Use it when displaying usage message.
13071
13072 * minibuf.c (read_minibuf): Remove unused external declaration of
13073 variable `Qread_only'.
13074
13075 * keymap.c (access_keymap): Remove unused variable `charset'.
13076
13077 2001-10-28 Miles Bader <miles@gnu.org>
13078
13079 * xfaces.c (merge_face_heights): Handle TO being relative as well.
13080 Remove #ifdef'd-out code.
13081 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
13082 (syms_of_xfaces): Initialize them.
13083
13084 2001-10-27 Jason Rumney <jasonr@gnu.org>
13085
13086 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
13087 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
13088 position using the system caret.
13089
13090 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
13091 (w32_system_caret_height, w32_system_caret_x)
13092 (w32_system_caret_y): New variables for tracking system caret.
13093 (w32_initialize): Initialize them.
13094 (x_display_and_set_cursor): Make system caret follow the active cursor.
13095
13096 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
13097 New messages types.
13098
13099 * w32term.c (note_mouse_highlight): Clear old help_echo.
13100
13101 2001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13102
13103 * xterm.c: Fix typo in a comment.
13104
13105 * emacs.c: Fix typos in comments.
13106 Remove unnecessary spaces.
13107 Change doc-string comments to `new style' [w/`doc:' keyword].
13108 (USAGE2): Fix typos in usage string.
13109
13110 * xterm.c: Fix typo in a comment.
13111
13112 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
13113 emacs.c.
13114
13115 2001-10-27 Gerd Moellmann <gerd@gnu.org>
13116
13117 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
13118 instead of 1/2 line_height in the heuristic for skipping
13119 farther backward when target_y was not reached.
13120
13121 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
13122 Display errno only if non-zero.
13123 (sound_warning): New function.
13124 (vox_configure): Don't treat failing to set sample rate as error.
13125 (various places): Improve error messages.
13126
13127 2001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
13128
13129 * fileio.c (Faccess_file): Run the argument filename through
13130 Fexpand_file_name, before using it.
13131
13132 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
13133 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
13134
13135 2001-10-26 Gerd Moellmann <gerd@gnu.org>
13136
13137 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
13138
13139 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
13140 Fix clearing in the case of scroll bars on the right.
13141
13142 2001-10-26 Juanma Barranquero <lektu@terra.es>
13143
13144 * w32gui.h (XImage): Add a dummy typedef.
13145
13146 2001-10-26 Gerd Moellmann <gerd@gnu.org>
13147
13148 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
13149
13150 2001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
13151
13152 * frame.c (Fframe_parameter): Fix last change.
13153
13154 * fileio.c: Revert last change (which removed old commented-out
13155 version of expand-file-name). Add a comment that explains why
13156 this old version should not be removed.
13157
13158 2001-10-25 Gerd Moellmann <gerd@gnu.org>
13159
13160 * frame.c (Fframe_parameter): Fix a bug whereby some
13161 ``artificial'' frame parameters, like `minibuffer' were not
13162 obtained by calling Fframe_parameters.
13163
13164 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
13165 cursor differently.
13166
13167 * xdisp.c (move_it_vertically_backward): Compute line height
13168 differently. Add heuristic to try to be more compatible to 20.x.
13169
13170 2001-10-25 Stefan Monnier <monnier@cs.yale.edu>
13171
13172 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
13173
13174 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
13175 boolean.
13176
13177 2001-10-25 Miles Bader <miles@gnu.org>
13178
13179 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
13180 BG is a pointer to a structure, not a structure.
13181 (gif_format, png_format): Add missing commas.
13182
13183 2001-10-24 Richard M. Stallman <rms@gnu.org>
13184
13185 * xfaces.c (Fface_attributes_as_vector): New function.
13186 (syms_of_xfaces): Defsubr it.
13187
13188 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13189
13190 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
13191 variable `area'.
13192
13193 2001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13194
13195 * search.c (scan_newline): Remove unused variable `selective_display'.
13196
13197 2001-10-25 Miles Bader <miles@gnu.org>
13198
13199 * dispextern.h (struct image): Add `background',
13200 `background_valid', and `background_transparent' fields.
13201 (image_background, image_background_transparent): New declarations.
13202 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
13203 * xfns.c (image_background, image_background_transparent)
13204 (four_corners_best): New functions.
13205 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
13206 (gs_format): Add `:background' entry.
13207 (lookup_image): Set IMG's background color if specified.
13208 (pbm_load, xbm_load_image, png_load): Set IMG's background field
13209 when appropriate.
13210 (x_clear_image_1): Reset `background_valid' and
13211 `background_transparent_valid' fields.
13212 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
13213 calculating it here. Set IMG's background_transparent field.
13214 (enum xpm_keyword_index): Add XPM_BACKGROUND.
13215 (enum png_keyword_index): Add PNG_BACKGROUND.
13216 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
13217 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
13218 (enum gif_keyword_index): Add GIF_BACKGROUND.
13219 (enum gs_keyword_index): Add GS_BACKGROUND.
13220 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
13221 Pre-calculate image background color where necessary.
13222 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
13223 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
13224 color to use for image glyph reliefs.
13225
13226 2001-10-24 Gerd Moellmann <gerd@gnu.org>
13227
13228 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
13229 in full-width rows.
13230
13231 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
13232 Fix clearing of area not covered by scroll bar.
13233
13234 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13235
13236 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
13237 and `real_start'.
13238 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
13239 (glyph_rect): Remove unused variable `area'.
13240
13241 2001-10-24 Gerd Moellmann <gerd@gnu.org>
13242
13243 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
13244
13245 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
13246 (row_containing_pos): Take additional argument DY.
13247 Treat rows ending in middle of char differently.
13248 (display_line): Handle tabs on window systems differently.
13249
13250 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
13251 with additional argument.
13252
13253 * dispextern.h (row_containing_pos): Adjust prototype.
13254
13255 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
13256 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
13257 (try_window_id, try_window_reusing_current_matrix)
13258 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
13259 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
13260
13261 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13262
13263 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
13264 gnuemacs).
13265 (HAVE_BOXES): Fix typo in comment.
13266 (push_menu_pane): Fix typo in comment.
13267
13268 * xdisp.c: (display_prop_string_p): Remove unused local declaration
13269 of `Qwhen'.
13270 (single_display_prop_string_p): Remove unused local declarations
13271 of `Qwhen' and `Qmargin'.
13272 (string_buffer_position): Remove unused variable `around'.
13273 (store_frame_title): Remove unused variable `width'.
13274
13275 * window.c: Don't define max.
13276 (coordinates_in_window): Remove unused variable `uy'.
13277
13278 * widget.c: Don't define max.
13279
13280 * process.c: Don't define max.
13281 (create_process): Remove unused variable `buffer'.
13282
13283 2001-10-23 Gerd Moellmann <gerd@gnu.org>
13284
13285 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
13286
13287 2001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
13288
13289 * xfaces.c (Finternal_set_lisp_face_attribute)
13290 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
13291 frame is on a windowed display.
13292
13293 2001-10-23 Gerd Moellmann <gerd@gnu.org>
13294
13295 * dispnew.c (sync_window_with_frame_matrix_rows):
13296 Fix handling of windows which aren't full-width, fix handling
13297 of marginal areas.
13298
13299 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
13300
13301 2001-10-23 Andreas Schwab <schwab@suse.de>
13302
13303 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
13304 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
13305
13306 2001-10-23 Gerd Moellmann <gerd@gnu.org>
13307
13308 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
13309 REAL_END. Notice if cursor gets overwritten.
13310 (notice_overwritten_cursor): Take X positions as parameters.
13311 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
13312 around call to x_draw_glyphs.
13313
13314 2001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13315
13316 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
13317 instead of C) and usage.
13318
13319 * editfns.c (char-to-string): Fix argument names (use CHAR instead
13320 of C) and usage.
13321
13322 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
13323 `left', `max_width' and `max_height'.
13324
13325 2001-10-23 Gerd Moellmann <gerd@gnu.org>
13326
13327 * xdisp.c (display_line): For a tab continued to the next line,
13328 set row's ends_in_middle_of_char_p.
13329
13330 2001-10-22 Gerd Moellmann <gerd@gnu.org>
13331
13332 * xdisp.c (display_line): Fix computation of continuation lines
13333 width for TABs.
13334
13335 2001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13336
13337 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
13338 `Qlaplace'.
13339
13340 * fileio.c: Remove unused code.
13341
13342 2001-10-22 Miles Bader <miles@gnu.org>
13343
13344 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
13345 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
13346 Remove `DOC_STRINGS_IN_COMMENTS' cases.
13347
13348 2001-10-21 Jason Rumney <jasonr@gnu.org>
13349
13350 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
13351
13352 2001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
13353
13354 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
13355 (Finsert_string): Avoid the multi-line string literals warning.
13356
13357 2001-10-22 Miles Bader <miles@gnu.org>
13358
13359 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
13360 (Fdocumentation): Don't use it.
13361 (syms_of_doc): Don't initialize it.
13362
13363 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
13364 * print.c (Fwith_output_to_temp_buffer): Likewise.
13365 * window.c (Fsave_window_excursion): Likewise.
13366 * editfns.c (Fsave_excursion, Fsave_current_buffer)
13367 (Fsave_restriction): Likewise.
13368 * eval.c (Frun_hooks, Frun_hook_with_args)
13369 (Frun_hook_with_args_until_failure)
13370 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
13371 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
13372 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
13373 (Funwind_protect, Fcondition_case): Likewise.
13374 * coding.c (Ffind_operation_coding_system): Likewise.
13375 * keyboard.c (Ftrack_mouse): Likewise.
13376
13377 2001-10-21 Miles Bader <miles@gnu.org>
13378
13379 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
13380 (Fmake_hash_table): Add usage: string to doc string.
13381 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
13382 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
13383 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
13384 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
13385 (Fml_prefix_argument_loop): Likewise.
13386
13387 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13388
13389 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
13390
13391 * sysdep.c (init_sys_modes): Change doc-string comments to `new
13392 style' [w/`doc:' keyword].
13393
13394 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
13395 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
13396 comments to `new style' [w/`doc:' keyword].
13397
13398 2001-10-21 Jason Rumney <jasonr@gnu.org>
13399
13400 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
13401
13402 * w32term.c (remember_mouse_glyph): New function.
13403 (w32_mouse_position): Use it.
13404 (note_mouse_movement): If the mouse moved off the glyph, remember
13405 its new position.
13406
13407 * w32term.h (struct w32_output): Correct spelling of x_compatible.
13408 (w32_display_info): Add mouse_face_overlay.
13409
13410 * w32term.c (notice_overwritten_cursor): Renamed from
13411 note_overwritten_text_cursor. Rewritten to take glyph widths into
13412 account.
13413 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
13414 (fast_find_string_pos): New function.
13415 (fast_find_position): Return the correct vpos. Add parameter
13416 STOP. In the final row, stop before glyphs having STOP as object.
13417 Don't consider glyphs that are not from a buffer.
13418 (fast_find_position) [0]: Add a presumably more correct version
13419 for after 21.1.
13420 (expose_window_tree, expose_frame): Don't compute intersections here.
13421 (expose_window): Do it here instead.
13422 (expose_window_tree, expose_window, expose_line): Return 1 when
13423 overwriting mouse-face.
13424 (expose_window): If W is the window currently being updated, mark
13425 the frame garbaged.
13426 (expose_frame): If mouse-face was overwritten, redo it.
13427 (x_use_underline_position_properties): New variable.
13428 (syms_of_xterm): DEFVAR_BOOL it.
13429 (x_draw_glyph_string): Add comment to use it in future.
13430 (x_draw_glyph_string): Restore clipping after drawing box.
13431 Fix a computation of the underline position.
13432 (w32_get_glyph_string_clip_rect): Minor cleanup.
13433 (x_fill_stretch_glyph_string): Remove an assertion.
13434 (x_produce_glyphs): Don't convert multibyte characters
13435 to unibyte characters in unibyte buffers.
13436 (cursor_in_mouse_face_p): New function.
13437 (x_draw_stretch_glyph_string): Use it to choose a different GC
13438 when drawing a cursor within highlighted text. Don't draw
13439 background again if it has already been drawn.
13440 (x_draw_glyph_string_box): Don't draw a full-width
13441 box just because the glyph row's full_width_p flag is set.
13442 (x_draw_glyphs): Fix computation of rightmost x for
13443 full-width rows.
13444 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
13445 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
13446 change bottom shadow accordingly. Some cleanup.
13447 (x_update_window_end): Handle overwritten mouse face
13448 also for tool bar windows.
13449 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
13450 DRAW is DRAW_IMAGE_RAISED.
13451 (clear_mouse_face): Return 1 if text with mouse face was
13452 actually redrawn. Make the function static.
13453 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
13454 optimize away highlighting if we pass over that same overlay again.
13455 (note_mouse_highlight): Call mouse_face_overlay_overlaps
13456 to detect a case where we have to highlight a different region
13457 despite not having left the currently highlighted region.
13458 Set mouse_face_overlay in the x_display_info. Avoid changing the
13459 mouse pointer shape when show_mouse_face has already done it, or
13460 there is no need. Handle mouse-face and help-echo in strings.
13461 (glyph_rect): New function.
13462 (w32_mouse_position): Use it to raise the threshold for mouse
13463 movement event generation.
13464 (w32_initialize_display_info): Initialize the x_display_info's
13465 mouse_face_overlay.
13466 (w32_set_vertical_scroll_bar): Don't clear a zero height
13467 or width area.
13468 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
13469 a widget to zero height.
13470
13471 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
13472 Protect unibyte strings created by replacing their multibyte
13473 equivalents in menu_items.
13474 (w32_menu_show): Don't overwrite an item's name with its key
13475 description in case the description is a multibyte string.
13476 (single_submenu): Some cleanup.
13477
13478 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
13479 (postprocess_image): New function.
13480 (lookup_image): Call it for all image types except PostScript.
13481 (x_kill_gs_process): Call postprocess_image.
13482 (tiff_error_handler, tiff_warning_handler): New functions.
13483 (tiff_load): Install them as handlers.
13484 (x_kill_gs_process): Recognize if someone has cleared the image
13485 cache under us.
13486 (valid_image_p): Protect better against invalid image
13487 specifications. Previous code could signal an error.
13488 (Fx_hide_tip, Fshow_tip): Doc fix.
13489 (Fv_max_tooltip_size): New variable.
13490 (syns_of_xfns): DEFVAR_LISP it.
13491 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
13492 window buffer to *tip* right after creating the frame. Set frame's
13493 window_width. Use a maximum tooltip size specified by
13494 Vx_max_tooltip_size, if that has valid contents.
13495 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
13496 Make sure the tooltip is completely visible.
13497 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
13498 (Fx_create_frame): Adjust the frame's height for presence
13499 of the tool bar before calling x_figure_window_size.
13500 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
13501 when the window gets smaller.
13502 (x_set_foreground_color): Set frame's cursor_pixel.
13503 (x_set_foreground_color, x_set_background_color): Cleaned up.
13504 (x_set_font): Handle case of x_new_fontset returning the same name
13505 as before, although there was a change in fontsets.
13506
13507 2001-10-21 Miles Bader <miles@gnu.org>
13508
13509 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
13510 (Flogxor): Add usage: string to doc string.
13511 * charset.c (Fstring): Likewise.
13512 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
13513 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
13514
13515 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13516
13517 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
13518
13519 * alloc.c: Reindent DEFUNs with doc: keywords.
13520
13521 * abbrev.c (Finsert_abbrev_table_description): Reindent.
13522
13523 * frame.c: Change doc-string comments to `new style' [w/`doc:'
13524 keyword].
13525
13526 See ChangeLog.9 for earlier changes.
13527
13528 ;; Local Variables:
13529 ;; coding: iso-2022-7bit
13530 ;; End:
13531
13532 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
13533 Copying and distribution of this file, with or without modification,
13534 are permitted provided the copyright notice and this notice are preserved.
13535
13536 ;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4