*** empty log message ***
[bpt/emacs.git] / src / ChangeLog
CommitLineData
033ad8c6
SM
12004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
2
3 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
4 (on_hot_spot_p): Make sure we always return a value.
5 (Flookup_image_map): Remove unused var ix and iy.
6 (note_mode_line_or_margin_highlight): Remove unused var `image'.
7
93397360
EZ
82004-04-27 Eli Zaretskii <eliz@gnu.org>
9
10 * msdos.c (init_environment): If one of the TMP... environment
11 variables is set to a drive letter without a trailing slash,
12 append a slash.
13
0c54865e
EZ
142004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
15
16 * editfns.c (lisp_time_argument): Provide externally.
17
18 * fileio.c (Fset_file_times): New function.
19 (syms_of_fileio): Intern and staticpro it.
20
d3b111bd
KS
212004-04-27 Kim F. Storm <storm@cua.dk>
22
07dc1231
KS
23 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
24 header line strings.
25
360fe9d2
KS
26 * dispextern.h (struct it): New member use_default_face.
27
d3b111bd
KS
28 * xdisp.c (Qline_height): New variable.
29 (syms_of_xdisp): Intern and staticpro it.
30 (append_space_for_newline): Partially undo 2004-04-25 change;
31 add default_face_p arg, and restore callers.
32 Clear it->use_default_face after use.
33 (x_produce_glyphs): Set default font for ascii char if
34 it->use_default_font is set. Change line-spacing property to set
35 just extra line spacing. Handle new line-height property.
36
0448588b
AS
372004-04-26 Andreas Schwab <schwab@suse.de>
38
39 * print.c (print_object): Print non-ascii characters in bool
40 vector representation as octal escapes.
41
42 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
43 * print.c (print_object): Use it instead of BITS_PER_CHAR for
44 bool vectors.
45 * lread.c (read1): Likewise.
46 * alloc.c (Fmake_bool_vector): Likewise.
47 * data.c (Faref, Faset): Likewise.
48 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
49 (mapcar1): Likewise.
d3b111bd 50
536d6baa
ST
512004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
52
53 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
54
ae11577a
MB
552004-04-26 Miles Bader <miles@gnu.org>
56
57 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
58
e198ba87
JB
592004-04-26 Juanma Barranquero <lektu@terra.es>
60
61 * buffer.c (Fpop_to_buffer): Fix docstring.
62
f3d5f92d 632004-04-26 Steven Tamm <steventamm@mac.com>
e198ba87 64
f3d5f92d
ST
65 * lread.c (init_lread): Don't display missing lisp directory
66 warnings with Carbon Emacs because self-contained bundled Emacs
e198ba87 67 may be built without correct installation path.
f3d5f92d 68
03e35edc
KS
692004-04-25 Kim F. Storm <storm@cua.dk>
70
9ff3aa31
KS
71 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
72
73 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
74
03e35edc
KS
75 * xdisp.c (append_space_for_newline): Rename from append_space.
76 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
77 (x_produce_glyphs): Handle line-spacing property on newline char.
78 If value is t, adjust ascent and descent to fit current row height.
79 If value is an integer or float, set extra_line_spacing to integer
80 value, or to float value x current line height.
81
f24814e0
KH
822004-04-23 Kenichi Handa <handa@m17n.org>
83
84 * fontset.c (Finternal_char_font): If POSITION is nil, return
85 font for displaying CH with the default face.
86
d814862a
JB
872004-04-23 Juanma Barranquero <lektu@terra.es>
88
89 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
90
063a45c5
SM
912004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
92
93 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
94 Don't make assumptions about the relative place of i and val.
95 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
96
ae7ab2d3
KS
972004-04-21 Kim F. Storm <storm@cua.dk>
98
99 * dispextern.h (struct glyph_slice): New struct.
100 (struct glyph): New member slice.
101 (GLYPH_SLICE_EQUAL_P): New macro.
102 (GLYPH_EQUAL_P): Use it.
103 (struct glyph_string): New member slice.
104 (struct it_slice): New struct.
105 (struct it): New member slice, add member to stack too.
106 New member constrain_row_ascent_descent_p.
107 (image_ascent): Add prototype.
108
109 * dispnew.c (buffer_posn_from_coords): Return full image width
110 and height even for image slices (posn is relative to full image).
111 (marginal_area_string): Adjust x0,y0 for image slice.
112
113 * image.c (image_ascent): Add slice arg; calculate ascent for
114 image slice (or full image).
115
116 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
117 (syms_of_keyboard): Defsubr them.
118
119 * lisp.h (pos_visible_p): Fix prototype.
120
c62aec78 121 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
ae7ab2d3
KS
122 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
123 (x_draw_image_foreground, x_draw_image_relief)
124 (x_draw_image_foreground_1, x_draw_image_glyph_string):
125 Draw sliced images.
126
127 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
128 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
129 (x_draw_image_foreground, x_draw_image_relief)
130 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
131 Draw sliced images.
132
133 * w32term.h (image_ascent): Remove prototype.
134
135 * window.c (Fpos_visible_in_window_p): Return pixel position if
136 PARTIALLY arg is non-nil. Simplify. Doc fix.
137 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
138 to return/set vscroll in pixels.
139
140 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
141
142 * xdisp.c (Qslice): New variable.
143 (syms_of_xdisp): Intern and staticpro it.
144 (pos_visible_p): Return pixel position in new x and y args.
145 (init_iterator): Reset it->slice info.
146 (handle_display_prop): Parse (slice ...) property.
147 (push_it, pop_it): Save/restore slice info.
148 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
149 force repositioning of tall row if window is vscrolled, as that
150 would reset vscroll.
151 (append_space): Set it->constrain_row_ascent_descent_p to avoid
152 increasing row height if row is non-empty.
153 (fill_image_glyph_string): Copy slice info.
154 (take_vertical_position_into_account): Simplify.
155 (produce_image_glyph): Handle iterator slice info, setup glyph
156 slice info. Do not force minimum line height.
157 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
158 do not increase height (ascent/descent) of non-empty row when
159 adding normal character glyph; instead reduce glyph ascent/descent
160 appropriately; if row is higher than current glyph, adjust glyph
161 descent/ascent to reposition glyph within the existing row.
162 Likewise, when char is newline, only set ascent/descent if row is
163 currently empty.
164 (note_mouse_highlight): Handle hotspots with sliced image.
165
166 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
167 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
168 (x_draw_image_foreground, x_draw_image_relief)
169 (x_draw_image_foreground_1, x_draw_image_glyph_string):
170 Draw sliced images.
171
172 * xterm.h (image_ascent): Remove prototype.
173
d58f8753
SM
1742004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
175
176 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
177
4ce2719d
JPW
1782004-04-20 John Paul Wallington <jpw@gnu.org>
179
180 * fns.c (Fassoc, Feql): Fix indentation.
181
d58f8753 182 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
4ce2719d 183
95f8c3b9
JPW
1842004-04-19 John Paul Wallington <jpw@gnu.org>
185
186 * fns.c (Feql): New function.
d58f8753 187 (syms_of_fns): Defsubr it.
95f8c3b9 188
b7e85537
JR
1892004-04-18 Jason Rumney <jasonr@gnu.org>
190
191 * w32select.c (Fw32_set_clipboard_data): Get sequence number
192 after closing the clipboard.
193
5a72efd4
LT
1942004-04-16 Luc Teirlinck <teirllm@auburn.edu>
195
196 * buffer.c (Fbuffer_base_buffer): Doc fix.
197
20dc8583
KS
1982004-04-17 Kim F. Storm <storm@cua.dk>
199
60962ec4
KS
200 * keymap.c (Fkey_description): Add optional PREFIX arg.
201 Combine prefix with KEYS to make up the full key sequence to describe.
202 Correlate meta_prefix_char and following (simple) key to describe
203 as meta modifier. All callers changed.
204 (describe_map): Rename arg `keys' to `prefix'. Remove local
205 `elt_prefix' var. Use Fkey_description with prefix instead of
206 elt_prefix combined with Fsingle_key_description.
207 (describe_vector): Declare static. Replace arg `elt_prefix' with
208 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
209 if !KEYMAP_P. Use Fkey_description with prefix instead of
210 Fsingle_key_description.
211
212 * keymap.h (Fkey_description): Fix prototype.
213 (describe_vector): Remove prototype.
214
409368b9
KS
215 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
216
20dc8583
KS
217 * image.c (PNG_BG_COLOR_SHIFT): Remove.
218 (png_load): Fix calculation of transparent background color on X
219 and W32 platforms.
220
75c5501b
JB
2212004-04-16 Juanma Barranquero <lektu@terra.es>
222
223 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
224 not too large before computing how much to scroll.
225
da879ae8
SM
2262004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
227
228 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
229
d01ca4a8
LT
2302004-04-14 Luc Teirlinck <teirllm@auburn.edu>
231
232 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
233 Add hyperlink to Elisp manual to the docstring.
234
572943b3
SM
2352004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
236
237 * callint.c (fix_command): Use XDCR.
238
5e30a0fb
NR
2392004-04-14 Nick Roberts <nick@nick.uklinux.net>
240
241 * window.c (Fget_lru_window): Doc fix.
242
a27ddfaf
KS
2432004-04-14 Kim F. Storm <storm@cua.dk>
244
245 * editfns.c (Fformat): Fix allocation size of precision array.
246
247 * dispnew.c (update_window): Only set changed_p if
248 scrolling_window actually did scroll.
249 (scrolling_window): Only return 1 if we actually did scroll.
250
251 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
252 height to glyph height when cursor row is not fully visible.
253 (make_cursor_line_fully_visible): Add FORCE_P arg to return
254 failure in case row is higher than window. Callers changed.
255 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
256 Try to scroll partially visible, higher-than-window cursor row.
257 (redisplay_window): Always try to scroll partially visible,
258 higher-than-window cursor row - both initially and again with
259 centering_position = 0.
260 Clear desired matrix before retrying with centering_position = 0.
261
da879ae8
SM
2622004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
263
264 * syntax.c (scan_lists): Simplify backward string scan.
265 Fix off-by-one boundary check for string and comment fences.
266
5fc16e8e
SM
2672004-04-13 Joe Buehler <jbuehler@hekimian.com>
268
269 * sheap.c, unexcw.c: New files.
270
c9aac8e6
LT
2712004-04-12 Luc Teirlinck <teirllm@auburn.edu>
272
273 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
274 base buffer has been killed. Correct the error message if the
275 base buffer does not exist.
276
1e88a355
SM
2772004-04-12 Joe Buehler <jbuehler@hekimian.com>
278
279 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
280 Cygwin itself. Add support for Xaw3d scrollbars.
281
282 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
283
284 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
285
286 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
287 before Cygwin unexec.
288
289 * Makefile.in: Link changes for Cygwin unexec() support.
290
8dbff9a0
AS
2912004-04-12 Andreas Schwab <schwab@suse.de>
292
293 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
294
54dffe35
LT
2952004-04-11 Luc Teirlinck <teirllm@auburn.edu>
296
297 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
298 IGNORE argument equals NAME. Doc fix.
299
99a72bdf
MY
3002004-04-11 Masatake YAMATO <jet@gyve.org>
301
1e88a355 302 * buffer.c (fix_start_end_in_overlays): Make overlays
99a72bdf
MY
303 empty if they are backwards.
304
40899d7b
SM
3052004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
306
307 * xfaces.c (face_color_supported_p): Fix compilation without X11.
308
f8f853de
SM
3092004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
310
311 * doc.c (Fsnarf_documentation): Ignore new file name entries.
312
c953fe1b
KS
3132004-04-06 Kim F. Storm <storm@cua.dk>
314
661e85c1
KS
315 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
316 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
317
318 * w32term.c (w32_read_socket): Set mouse_face_hidden after
319 clearing highlight.
320
321 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
322
323 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
324 clearing highlight.
325
c953fe1b
KS
326 * indent.c (vmotion): Do not reserve one column for continuation
327 marks on window frames.
328
c1994268
EZ
3292004-04-04 Eli Zaretskii <eliz@gnu.org>
330
331 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
332 from GCC.
333
9f691b0d
SM
3342004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
335
336 * .gdbinit-union: Remove.
337
338 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
339 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
340 ($nonvalbits): Remove.
341 ($valmask): Set it by calling xreload to avoid redundancy.
342
343 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
344 (gdb_emacs_intbits): Remove.
345
7a8560d7
JD
3462004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
347
9f691b0d 348 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
7a8560d7 349
3c8111fc
KH
3502004-03-30 Kenichi Handa <handa@m17n.org>
351
352 * editfns.c (Fformat): Fix initialization of the array info.
353
48a0bce4
KS
3542004-03-30 Kim F. Storm <storm@cua.dk>
355
356 * xterm.c (x_mouse_click_focus_ignore_position): New var.
357 (syms_of_xterm): DEFVAR_BOOL it.
358 (ignore_next_mouse_click_timeout): New var.
359 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
360 Use it to filter mouse clicks following focus event.
361
1cd0066c
KS
3622004-03-29 David Ponce <david@dponce.com>
363
364 * callint.c (Fcall_interactively): Fix last change.
365
adb3b353
SM
3662004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
367
368 * eval.c (Fcommandp): Simplify.
369
370 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
371 Extend to handle all kinds of functions.
372
373 * lisp.h (Finteractive_form): Declare.
374
375 * callint.c (Fcall_interactively): Use it.
376
6fc4c9c9
KS
3772004-03-26 Kim F. Storm <storm@cua.dk>
378
379 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
380 to catch errors in calc_pixel_width_or_height during redisplay.
381
abdb9b83
MY
3822004-03-26 Masatake YAMATO <jet@gyve.org>
383
b17856dd 384 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
abdb9b83 385
b17856dd 386 * lisp.h (fix_start_end_in_overlays): Likewise.
abdb9b83 387
b17856dd 388 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
abdb9b83 389
b17856dd 390 * editfns.c (Ftranspose_regions): Likewise.
abdb9b83 391
e8a84b6c
JD
3922004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
393
b17856dd 394 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
e8a84b6c 395
36a3fd05
RS
3962004-03-19 Richard M. Stallman <rms@gnu.org>
397
398 * s/sol2-6.h: Delete previous change.
399
ab24c127
KS
4002004-03-19 Kim F. Storm <storm@cua.dk>
401
402 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
403 to_charpos corresponds to newline in right fringe. Use local
404 BUFFER_POS_REACHED_P macro.
405
992126de
JD
4062004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
407
408 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
409 to compile on non-window system.
410
45dbfc84
KS
4112004-03-19 Kim F. Storm <storm@cua.dk>
412
413 * dispextern.h (calc_pixel_width_or_height): Add prototype.
414
415 * image.c (Qcenter): Move to xdisp.c.
416
417 * xdisp.c (Qcenter): Declare here.
adb3b353 418 (syms_of_xdisp): Intern and staticpro it.
45dbfc84
KS
419 (handle_single_display_prop): Allow space display property on all
420 platforms.
421 (display_mode_line): Set mode_line_p before displaying line.
422 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
423 handling. Remove complex cases for fringes and scroll-bars.
424 Add left, right, and center alignment positions. Add text (area)
425 width/height. Return width or height for image specs.
426 (produce_stretch_glyph): Improve handling of :align-to. Is now
427 relative to left of text area by default, but other base offsets
428 can be specified -- also for text lines.
429
430 * term.c (produce_glyphs): Handle IT_STRETCH.
431 (produce_stretch_glyph): New function to handle space width and
432 align-to display properties on non-window systems.
433
37264101
SM
4342004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
435
436 * fileio.c (Fread_file_name): Set completion-ignore-case for
437 case-insensitive systems.
438
73bc43da
MY
4392004-03-14 Masatake YAMATO <jet@gyve.org>
440
441 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
442 when keymap and cursor are setup.
443
9062aa89
ST
4442004-03-14 Steven Tamm <steventamm@mac.com>
445
b17856dd 446 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
9062aa89 447
e4b1b5ab
KS
4482004-03-14 Kim F. Storm <storm@cua.dk>
449
450 * dispextern.h (x_find_image_file): Add prototype.
451
452 * image.c (x_find_image_file): Make extern.
453
454 * xfns.c (x_find_image_file): Remove prototype.
455
a6eeaa81 4562004-03-13 Eli Zaretskii <eliz@gnu.org>
5109b06a 457
37264101 458 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
5109b06a 459
37264101 460 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
5109b06a 461
e69cfac2
RS
4622004-03-12 Richard M. Stallman <rms@gnu.org>
463
464 * fns.c (internal_equal): New arg PROPS controls comparing
465 text properties. All callers changed.
466 (Fequal_including_properties): New function.
467 (syms_of_fns): defsubr it.
468
45034953
KS
4692004-03-12 Kim F. Storm <storm@cua.dk>
470
471 Fix image support on MAC. From YAMAMOTO Mitsuharu.
37264101 472
45034953
KS
473 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
474 (image_background, image_background_transparent): Fix prototypes.
475
37264101 476 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
45034953
KS
477
478 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
479 (x_query_font, x_find_ccl_program, x_set_window_size)
480 (x_make_frame_visible, mac_initialize, XCreatePixmap)
481 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
482 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
483
484 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
485 (x_query_font, x_find_ccl_program, x_set_window_size)
486 (x_make_frame_visible, mac_initialize, XCreatePixmap)
487 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
488 (mac_draw_line_to_pixmap): Add prototypes.
489
4902004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
491
492 * macterm.c (XTread_socket): Fix mouse click on tool bar.
493
a12d3d87
KS
4942004-03-11 Kim F. Storm <storm@cua.dk>
495
d3ab1cf1
KS
496 * dispextern.h: Move image related prototypes from xfns.c section
497 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
498 HAVE_X_WINDOWS.
37264101 499
37de9f51 500 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
37264101 501 Move gtkutil.o to new GTK_OBJ list.
a12d3d87
KS
502 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
503 (GTK_OBJ) [USE_GTK]: New declaration.
504 (obj): Add $(GTK_OBJ) to list.
505
5243c06a 5062004-03-11 Steven Tamm <steventamm@mac.com>
5109b06a 507
5243c06a
ST
508 * image.c [MAC_OSX]: Include sys/stat.h
509
510 * macfns.c (syms_of_macfns): Remove definitions of things now
511 defined in image.c
512
c0f97789
KS
5132004-03-11 Kim F. Storm <storm@cua.dk>
514
515 The following changes consolidates the identical/similar image
516 support code previously found in xfns.c, w32fns.c, and macfns.c
517 into a new file image.c.
518
519 * makefile.w32-in (OBJ1): Add image.o.
520 ($(BLD)/image.$(O)): Add dependencies.
521
522 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
523 (image.o): Add dependencies.
37264101 524
c0f97789
KS
525 * image.c: New file with consolidated image support code.
526 (COLOR_TABLE_SUPPORT): New define to control whether
527 color table support is available (X only).
528 (Bitmap_Record): Common name for x_bitmap_record,
529 w32_bitmap_record, and mac_bitmap_record.
530 (XImagePtr): Common name for pointer to XImage or equivalent.
531 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
532 to XImagePtr on X+MAC, and to HDC on W32.
533 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
534 (NO_PIXMAP): Common name for "None" or equivalent.
535 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
536 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
537 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
37264101
SM
538 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
539 Define with suitable equivalents on W32 and MAC for code sharing.
c0f97789
KS
540 (XDrawLine): Define on MAC for code sharing.
541 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
542 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
543 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
544 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
545 (x_reference_bitmap, x_create_bitmap_from_data)
546 (x_create_bitmap_from_file, x_destroy_bitmap)
547 (x_destroy_all_bitmaps, x_create_bitmap_mask)
548 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
549 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
550 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
551 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
552 (define_image_type, lookup_image_type, valid_image_p)
553 (image_error, enum image_value_type, struct image_keyword)
554 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
555 (make_image, free_image, prepare_image_for_display, image_ascent)
556 (four_corners_best, image_background, image_background_transparent)
557 (x_clear_image_1, x_clear_image, x_alloc_image_color)
558 (make_image_cache, free_image_cache, clear_image_cache)
559 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
560 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
561 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
562 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
563 (init_image_func_pointer, image_load_quartz2d)
564 (struct ct_color, init_color_table, free_color_table)
565 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
566 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
567 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
568 (x_disable_image, x_build_heuristic_mask)
569 (XBM support, XPM support, PBM support, PNG support, JPEG support)
570 (TIFF support, GIF support, Ghostscript support): Consolidate image
571 code from xfns.c, w32fns.c, and macfns.c.
572 (syms_of_image): Consolidate image related symbol setup here.
573 (init_image): Consolidate image related initializations here.
37264101 574
c0f97789
KS
575 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
576 and init_image. Remove call to init_xfns.
577
37264101
SM
578 * macterm.h (struct mac_bitmap_record): Add file member.
579 Not currently used, but simplifies code sharing.
c0f97789
KS
580
581 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
582 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
583 (x_reference_bitmap, x_create_bitmap_from_data)
584 (x_create_bitmap_from_file, x_destroy_bitmap)
585 (x_destroy_all_bitmaps, x_create_bitmap_mask)
586 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
587 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
588 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
589 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
590 (define_image_type, lookup_image_type, valid_image_p)
591 (image_error, enum image_value_type, struct image_keyword)
592 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
593 (make_image, free_image, prepare_image_for_display, image_ascent)
594 (four_corners_best, image_background, image_background_transparent)
595 (x_clear_image_1, x_clear_image, x_alloc_image_color)
596 (make_image_cache, free_image_cache, clear_image_cache)
597 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
598 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
599 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
600 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
601 (init_image_func_pointer, image_load_quartz2d)
602 (struct ct_color, init_color_table, free_color_table)
603 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
604 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
605 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
606 (x_disable_image, x_build_heuristic_mask)
607 (XBM support, XPM support, PBM support, PNG support, JPEG support)
608 (TIFF support, GIF support, Ghostscript support): Merge with image
609 code from xfns.c and macfns.c into image.c.
610 (syms_of_xfns): Move image related symbols to image.c.
611 (init_external_image_libraries, init_xfns): Remove; initialization
612 moved to init_image in image.c.
613
614 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
615 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
616 (x_reference_bitmap, x_create_bitmap_from_data)
617 (x_create_bitmap_from_file, x_destroy_bitmap)
618 (x_destroy_all_bitmaps, x_create_bitmap_mask)
619 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
620 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
621 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
622 (define_image_type, lookup_image_type, valid_image_p)
623 (image_error, enum image_value_type, struct image_keyword)
624 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
625 (make_image, free_image, prepare_image_for_display, image_ascent)
626 (four_corners_best, image_background, image_background_transparent)
627 (x_clear_image_1, x_clear_image, x_alloc_image_color)
628 (make_image_cache, free_image_cache, clear_image_cache)
629 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
630 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
631 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
632 (struct ct_color, init_color_table, free_color_table)
633 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
634 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
635 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
636 (x_disable_image, x_build_heuristic_mask)
637 (XBM support, XPM support, PBM support, PNG support, JPEG support)
638 (TIFF support, GIF support, Ghostscript support): Merge with image
639 code from xfns.c and macfns.c into image.c.
640 (syms_of_xfns): Move image related symbols to image.c.
641 (init_external_image_libraries, init_xfns): Remove; initialization
642 moved to init_image in image.c.
643
644 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
645 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
646 (x_reference_bitmap, x_create_bitmap_from_data)
647 (x_create_bitmap_from_file, x_destroy_bitmap)
648 (x_destroy_all_bitmaps, x_create_bitmap_mask)
649 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
650 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
651 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
652 (define_image_type, lookup_image_type, valid_image_p)
653 (image_error, enum image_value_type, struct image_keyword)
654 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
655 (make_image, free_image, prepare_image_for_display, image_ascent)
656 (four_corners_best, image_background, image_background_transparent)
657 (x_clear_image_1, x_clear_image, x_alloc_image_color)
658 (make_image_cache, free_image_cache, clear_image_cache)
659 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
660 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
661 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
662 (struct ct_color, init_color_table, free_color_table)
663 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
664 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
665 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
666 (x_disable_image, x_build_heuristic_mask)
667 (XBM support, XPM support, PBM support, PNG support, JPEG support)
668 (TIFF support, GIF support, Ghostscript support): Merge with
669 w32fns.c and macfns.c image code into image.c.
670 (syms_of_xfns): Move image related symbols to image.c.
671 (init_xfns): Remove; initialization moved to init_image in image.c.
672
673 * lisp.h (syms_of_image, init_image): Add protoypes.
674 (init_xfns): Remove prototype.
675
676 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
677 (x_reference_bitmap, x_create_bitmap_from_data)
678 (x_create_bitmap_from_file, x_destroy_bitmap)
679 (x_create_bitmap_mask): Move prototypes from dispextern.h.
680 (gamma_correct) [MAC_OS]: Add prototype.
681
682 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
683 (x_reference_bitmap, x_create_bitmap_from_data)
684 (x_create_bitmap_from_file, x_destroy_bitmap)
685 (x_create_bitmap_mask): Move prototypes to dispextern.h.
686
6eced09c
KH
6872004-03-09 Kenichi Handa <handa@etlken2>
688
689 * coding.c (decode_coding_emacs_mule): Handle insufficent source
690 correctly.
691
9a7e95f3
RS
6922004-03-04 Richard M. Stallman <rms@gnu.org>
693
04a6e76b
RS
694 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
695
9a7e95f3
RS
696 * window.c (Fdisplay_buffer): Doc fix.
697
698 * buffer.c (Fpop_to_buffer): Doc fix.
699
6c2488df
KS
7002004-03-03 Kim F. Storm <storm@cua.dk>
701
702 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
703
d8d95bc7
SM
7042004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
705
706 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
707
357589bf
RS
7082004-03-02 Richard M. Stallman <rms@gnu.org>
709
710 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
711
409949b5
KH
7122004-03-02 Kenichi Handa <handa@m17n.org>
713
714 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
715
d24bc50f
KS
7162004-03-02 Kim F. Storm <storm@cua.dk>
717
718 * window.h (struct window): New member overlay_arrow_bitmap.
719
720 * window.c (make_window): Initialize overlay_arrow_bitmap.
721
722 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
723 implement and integrate multiple overlay arrows with redisplay.
724 (syms_of_xdisp): DEFVAR_LISP and initialize it.
725 (last_arrow_position, last_arrow_string): Replace by properties.
726 (Qlast_arrow_position, Qlast_arrow_string)
727 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
728 (syms_of_xdisp): Intern and staticpro them.
729 (overlay_arrow_string_or_property, update_overlay_arrows)
730 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
731 (overlay_arrow_at_row): New functions for multiple overlay arrows.
732 (redisplay_internal): Use them instead of directly accessing
733 Voverlay_arrow_position etc. for multiple overlay arrows.
734 (mark_window_display_accurate): Use update_overlay_arrows.
735 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
736 (try_window_id): Use overlay_arrows_changed_p.
737 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
738 (display_line): Use overlay_arrow_at_row to check multiple
739 overlay arrows, and get relevant overlay-arrow-string and
d8d95bc7 740 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
d24bc50f
KS
741 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
742 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
743
744 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
745 (update_window_fringes): Remove unused code.
746
c1464661
JR
7472004-03-01 Jason Rumney <jasonr@gnu.org>
748
749 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
750
a64387ee
JB
7512004-03-01 Juanma Barranquero <lektu@terra.es>
752
753 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
754
755 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
756
334faa08
JD
7572004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
758
759 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
760 how many colors can be displayed.
761
bb62616f
KH
7622004-03-01 Kenichi Handa <handa@m17n.org>
763
764 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
765 correctly.
766
0fd16104
KS
7672004-02-28 Kim F. Storm <storm@cua.dk>
768
769 * dispnew.c (update_window): Update header line also if there are
770 no other changes in window (move code after set_cursor label).
771
772 * lisp.h (mark_window_display_accurate): Remove prototype.
773
774 * window.c (window_loop, Fforce_window_update): Force mode line
775 updates by setting prevent_redisplay_optimizations_p and
776 update_mode_lines.
777
b59dd9c8
JD
7782004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
779
d8d95bc7 780 * xfns.c (x_window): Fix indentation.
b59dd9c8
JD
781
782 * xterm.c (x_calc_absolute_position): Call x_real_positions
783 to get WM window sizes and use those to calculate position.
d8d95bc7 784 (x_set_offset): Remove code commented out.
b59dd9c8 785
a874691c
MB
7862004-02-28 Miles Bader <miles@gnu.org>
787
788 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
789
3e0c6482
KS
7902004-02-28 Kim F. Storm <storm@cua.dk>
791
792 * keyboard.c (kbd_buffer_store_event_hold): New function to store
793 an event into kbd fifo, but with special handling of quit event;
794 a quit event is saved for later, and further events are discarded
795 until the saved quit event has been processed.
796 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
797 (gen_help_event): Store help event in kbd fifo.
798 (NREAD_INPUT_EVENTS): Remove.
799 (read_avail_input): Adapt to new read_socket_hook interface.
800 Remove allocation and initialization of local input_event buffer,
801 as read_socket_hook stores events directly in fifo. Allocate and
802 initialize local hold_quit event to handle postponed quit event
803 (and store it if set by kbd_buffer_store_event_hold).
804
805 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
806 (gen_help_event): Fix prototype.
807
a64387ee 808 * macterm.c (XTread_socket): Remove bufp_r and
3e0c6482
KS
809 numcharsp args. Add hold_quit arg.
810 Rework to use just one, local, inev input_event. Store inev
811 directly in fifo using kbd_buffer_store_event_hold.
812
813 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
814 (read_input_waiting): Adapt to new read_socket_hook interface.
815 Remove allocation and initialization of local input_event buffer,
816 as read_socket_hook stores events directly in fifo. Allocate and
817 initialize local hold_quit event to handle postponed quit event
818 (and store it if set by kbd_buffer_store_event_hold).
819
a64387ee 820 * term.c (read_socket_hook): Fix arg list.
3e0c6482
KS
821
822 * termhooks.h (read_socket_hook): Fix prototype.
823
824 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
825 numcharsp args. Add hold_quit arg.
826 Rework to use just one, local, inev input_event. Store inev
827 directly in fifo using kbd_buffer_store_event_hold.
828
829 * w32inevt.h (w32_console_mouse_position): Fix prototype.
830
831 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
832 Add hold_quit arg. Rework to use just one, local, inev
833 input_event. Store inev directly in fifo using
834 kbd_buffer_store_event_hold. Update count in one place.
835 Postpone call to gen_help_event until inev is stored; use new
836 local do_help for this.
837 Remove local emacs_event in handing of ButtonPress event; just use
838 inev instead (so no reason to copy it later).
839
840 * xsmfns.c (x_session_check_input): Remove numchars arg.
841
d8d95bc7
SM
842 * xterm.c (x_focus_changed, x_detect_focus_change):
843 Remove numchars arg. Always store event into bufp arg.
844 Return nothing. Callers changed accordingly.
3e0c6482
KS
845 (glyph_rect): Simplify.
846 (STORE_KEYSYM_FOR_DEBUG): New macro.
847 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
848 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
849 (current_hold_quit) [USE_GTK]: Add.
850 (event_handler_gdk): Adapt to new handle_one_xevent.
851 (handle_one_xevent): Remove bufp_r and numcharsp args.
852 Add hold_quit arg. Rework to use just one, local, inev
853 input_event. Store inev directly in fifo using
854 kbd_buffer_store_event_hold. Update count in one place.
855 Postpone call to gen_help_event until inev is stored; use new
856 local do_help for this.
857 Simplify handling of keysyms (consolidate common code). Fix bug
858 where count was updated with nchars instead of nbytes.
859 Remove local emacs_event in handing of ButtonPress event; just use
860 inev instead (so no reason to copy it later).
861 Remove `out' label. Rename label `ret' to `done'; add various
862 `goto done' to clarify code flow in deeply nested blocks.
863 (x_dispatch_event): Simplify as handle_one_xevent now calls
864 kbd_buffer_store_event itself.
865 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
866 arg. Call handle_one_xevent with new arglist. Store event from
867 x_session_check_input in fifo.
868 [USE_GTK]: Setup current_hold_quit.
869 Decrement handling_signal before unblocking input.
870 (x_initialize) [USE_GTK]: Initialize current_count.
871
872 * xterm.h (x_session_check_input): Fix prototype.
873
e3564461 8742004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
a64387ee 875
d8d95bc7 876 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
a64387ee 877
e3564461
ST
878 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
879 macgui.h).
a64387ee 880
e3564461 881 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
a64387ee 882
e3564461
ST
883 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
884 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
885 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
886 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
887 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
888 (Bitmap): Remove typedef.
889 (Pixmap): Change int to GWorldPtr.
890
d8d95bc7 891 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
a64387ee 892
d8d95bc7
SM
893 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
894 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
895 New #define to extract 16-bit depth color components from unsigned
e3564461
ST
896 long representation.
897 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
898 colors used for masks.
899 (struct mac_display_info): Add color_p. Remove n_cbits.
a64387ee 900
e3564461
ST
901 * macfns.c: Include sys/types.h and sys/stat.h.
902 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
903 Include QuickTime/QuickTime.h.
904 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
905 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
906 functions defined in macterm.c.
907 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
908 (ZPixmap): New #define for compatibility with xfns.c.
909 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
910 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
d8d95bc7
SM
911 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
912 New functions.
e3564461 913 (four_corners_best, x_create_x_image_and_pixmap)
d8d95bc7
SM
914 (x_destroy_x_image, unwind_create_frame, x_disable_image)
915 (x_edge_detection, init_color_table, colors_in_color_table)
e3564461
ST
916 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
917 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
918 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
919 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
920 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
921 long mixup.
922 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
923 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
924 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
925 (x_set_cursor_type, Fxw_color_values, valid_image_p)
926 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
927 (x_alloc_image_color, clear_image_cache, lookup_image)
928 (x_find_image_file, xbm_read_bitmap_file_data)
929 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
930 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
931 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
932 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
933 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
d8d95bc7 934 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
e3564461
ST
935 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
936 #if 0.
937 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
938 #if 0. Free white_relief.gc and black_relief.gc.
d8d95bc7
SM
939 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
940 New functions (from xfns.c).
e3564461
ST
941 (Fx_create_frame): Record unwind_create_frame.
942 (Fxw_display_color_p): Use dpyinfo->color_p.
943 (Fx_display_grayscale_p, Fx_display_planes): Don't use
944 dpyinfo->n_cbits.
945 (Fx_display_color_cells): Use dpyinfo->n_planes;
946 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
947 (Qheuristic, cross_disabled_images, emboss_matrix)
948 (laplace_matrix): New variables (from xfns.c).
949 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
950 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
951 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
d8d95bc7
SM
952 (image_background_transparent): New function (from xfns.c).
953 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
954 (image_load_quicktime): Add declaration.
955 [MAC_OSX] (image_load_quartz2d): Likewise.
956 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
957 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
d8d95bc7 958 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
e3564461
ST
959 (xbm_load_image_from_file, x_laplace_read_row)
960 (x_laplace_write_row, pbm_read_file): Remove functions.
961 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
962 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
963 (colors_in_color_table): Sync with xfns.c (although not used).
964 (lookup_rgb_color): Don't lookup color table. Just do gamma
965 correction.
966 (COLOR_INTENSITY): New #define (from xfns.c).
d8d95bc7
SM
967 (x_disable_image): New function (from xfns.c).
968 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
969 (x_build_heuristic_mask): Sync with xfns.c.
970 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
971 (HAVE_PBM): Remove #ifdef.
972 (pbm_load): Sync with xfns.c. Set img->width and img->height
973 before IMAGE_BACKGROUND.
d8d95bc7 974 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
e3564461
ST
975 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
976 Don't enclose with #if HAVE_PNG.
977 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
d8d95bc7
SM
978 symbol _CGImageCreateWithPNGDataProvider is defined.
979 Otherwise use image_load_quicktime.
e3564461 980 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
d8d95bc7
SM
981 [HAVE_PNG] (png_load): Sync with xfns.c.
982 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
983 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
984 HAVE_JPEG.
985 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
986 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
987 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
988 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
989 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
990 (tiff_image_p, tiff_load): Don't enclose declarations with #if
991 HAVE_TIFF.
992 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
993 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
994 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
d8d95bc7
SM
995 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
996 New functions (from xfns.c).
e3564461 997 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
d8d95bc7 998 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
e3564461
ST
999 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
1000 Don't enclose with #if HAVE_GIF.
1001 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
1002 animated gif. Otherwise use image_load_quicktime.
1003 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
1004 gif_DrawText to avoid conflict with QuickdrawText.h.
1005 [HAVE_GIF] (gif_load): Sync with xfns.c.
1006 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
1007 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
1008 Ghostscript is not supported yet).
1009 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
1010 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
1011 cross_disabled_images (from xfns.c). Remove #if 0 for supported
1012 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
1013 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
1014 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
d8d95bc7
SM
1015 HAVE_PNG. Call EnterMovies to support animated gifs.
1016 Call init_image_func_pointer to bind a symbol
e3564461 1017 _CGImageCreateWithPNGDataProvider if it is defined.
a64387ee 1018
d8d95bc7 1019 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
e3564461
ST
1020 (x_draw_bar_cursor): Sync declaration with xterm.c.
1021 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
1022 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
1023 graphics).
1024 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
1025 (mac_draw_line_to_pixmap, XCreatePixmap)
1026 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
d8d95bc7
SM
1027 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
1028 New functions.
1029 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
1030 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
1031 Cast bits to char *.
e3564461
ST
1032 (reflect_byte): New function (from w32fns.c).
1033 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
1034 due to byte alignment.
d8d95bc7
SM
1035 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
1036 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
e3564461
ST
1037 (XSetForeground): Remove static (now used in macfns.c).
1038 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
1039 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
1040 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
1041 (x_draw_glyph_string_box, x_draw_image_foreground)
1042 (x_draw_image_foreground_1, x_draw_image_glyph_string)
1043 (x_draw_stretch_glyph_string, x_draw_glyph_string)
1044 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
1045 Sync with xterm.c.
1046 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
1047 than the xterm.c version when a strictly horizontal or vertical
1048 line is drawn.
1049 (XTset_terminal_window): Add static.
1050 (x_make_frame_visible): Add UNBLOCK_INPUT.
1051 (x_free_frame_resources): New funcion (from xterm.c).
1052 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
1053 occurs in tool bar area.
d8d95bc7
SM
1054 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
1055 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
e3564461
ST
1056 Initialize image cache.
1057 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
1058 Enclose unused functions with #if 0.
1059 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
1060 (decode_mac_font_name): New function to apply code conversions
d8d95bc7 1061 from a mac font name to an XLFD font name according to its script code.
e3564461 1062 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
d8d95bc7 1063 font name to a mac font name according to REGISTRY and ENCODING fields.
e3564461
ST
1064 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
1065 whose name starts with `.'.
1066 (init_font_name_table): Use decode_mac_font_name. Add both
1067 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
1068 of a font is smJapanese.
1069 (mac_do_list_fonts): New function to list fonts that match a given
1070 pattern.
1071 (x_list_fonts, XLoadQueryFont): Use it.
1072 (XLoadQueryFont): Set rbearing field for each variable width
1073 character to avoid needless redraw.
1074 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
1075
446f5f3d
KS
10762004-02-26 Kim F. Storm <storm@cua.dk>
1077
af617d0f
KS
1078 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
1079 as read_socket_hook handler on X aborts if buffer is too small
1080 and W32 handler doesn't always check buffer limit.
1081
446f5f3d
KS
1082 * xdisp.c (handle_single_display_prop): Handle left-fringe and
1083 right-fringe similar to a display margin image. Specifically,
1084 the characters having the fringe prop are no longer shown, and
1085 we use IT_IMAGE/next_element_from_image with image_id = -1 to
1086 do this. Set fringe bitmap face_id in it->face_id.
1087 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
1088 still realize it->face (i.e. the fringe bitmap face).
1089
7d8a0b55
MB
10902004-02-25 Miles Bader <miles@gnu.org>
1091
1092 * xdisp.c (check_it): Check string/string_pos consistency.
1093 (init_iterator): Initialize string-related fields properly.
1094
10952004-02-11 Miles Bader <miles@gnu.org>
1096
1097 * xdisp.c (produce_image_glyph): Force negative descents to zero.
1098
10992004-02-10 Miles Bader <miles@gnu.org>
1100
1101 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
1102 BLOCK_INPUT can be nested, so it doesn't make much sense.
1103
a64387ee 11042004-02-24 Michael Mauger <mmaug@yahoo.com>
ce35edd1
JR
1105
1106 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
1107 (xbm_read_bitmap_data): Use unsigned char for image data.
1108
92f5fba2
LT
11092004-02-23 Luc Teirlinck <teirllm@auburn.edu>
1110
1111 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
1112
8565fb3d
JR
11132004-02-22 Jason Rumney <jasonr@gnu.org>
1114
1115 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
1116 correctly over other bitmaps.
1117
a6eeaa81 11182004-02-21 Eli Zaretskii <eliz@gnu.org>
f8125c39
EZ
1119
1120 * emacs.c (USAGE1): Split into two halves.
1121 (USAGE2): Second half of the old USAGE1.
d8d95bc7
SM
1122 (USAGE3): Rename from USAGE2.
1123 (USAGE4): Rename from USAGE3.
f8125c39 1124
4effffca
EZ
11252004-02-21 Juri Linkov <juri@jurta.org>
1126
1127 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
1128 Fix --multibyte. Move --help, --version to USAGE2. Add alias
1129 --file. Fix -f, -l. Sort options. Untabify.
1130 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
1131
923c1e6f
LT
11322004-02-19 Luc Teirlinck <teirllm@auburn.edu>
1133
1134 * category.c (Fdefine_category, Fcategory_docstring)
1135 (Fget_unused_category, Fset_category_table)
1136 (Fcategory_set_mnemonics): Doc fixes.
1137
b0e225fd
KS
11382004-02-20 Kim F. Storm <storm@cua.dk>
1139
1140 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
1141 The following changes are relative to the 2004-01-21 revision.
1142 (NREAD_INPUT_EVENTS): Define as max number of input events to read
1143 in one call to read_socket_hook. Value is 8.
1144 (read_avail_input): Separate and rework handling of read_socket_hook
1145 and non-read_socket_hook cases. Use smaller input_event buffer
d8d95bc7
SM
1146 in read_socket_hook case, and repeat if full buffer is read.
1147 Use new local variable 'discard' to skip input after C-g.
b0e225fd
KS
1148 In non-read_socket_hook case, just use a single input_event, and
1149 call kbd_buffer_store_event on the fly for each character.
1150
b15aa9f9
SM
11512004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
1152
1153 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
1154 Remove unused `gu' alternative.
1155
83c9aa95
AS
11562004-02-19 Andreas Schwab <schwab@suse.de>
1157
1158 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
1159 warning.
1160
cc808173
KS
11612004-02-18 Kim F. Storm <storm@cua.dk>
1162
1163 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
1164 Fix last change.
1165
ab90a54d
KS
11662004-02-17 Kim F. Storm <storm@cua.dk>
1167
b26f249f
KS
1168 * xdisp.c (fast_find_position): Fix return value of new version;
1169 it was inverted compared to the 21.1 version.
1170 (get_window_cursor_type): Don't look at glyph if NULL.
1171 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 1172
ab90a54d
KS
1173 * keyboard.c: Rework previous change; it didn't consider that the
1174 buf array was allocated on the stack.
1175 (prev_read): Remove variable.
1176 (read_avail_input_buf): New static event buffer array.
b9568dfc 1177 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 1178 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
1179 Use in_read_avail_input to handle re-entrance; when re-entered,
1180 fully initialize and use tmp_buf array instead of read_avail_input_buf.
1181 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
1182 is always cleared on entry. To ensure that, we clear (just) the
1183 entries that were used before we return.
1184 (init_keyboard): Initialize read_avail_input_buf here.
1185
4e039f3f
EZ
11862004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change)
1187
1188 * cmds.c (Fend_of_line): Doc fix.
1189
7b5368c1
EZ
11902004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
1191
1192 * keyboard.c (prev_read): New static variable.
1193 (read_avail_input): Use it to zero out only those slots in buf[]
1194 that were used last time we were called.
1195
a6eeaa81 11962004-02-16 Eli Zaretskii <eliz@gnu.org>
ca4bc494
EZ
1197
1198 * Makefile.in (obj): Move fringe.o from here...
1199 (XOBJ, MAC_OBJ): ...to here.
1200
159c348e
SE
12012004-02-16 Stephen Eglen <stephen@gnu.org>
1202
1203 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
1204
d2f14999
SM
12052004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
1206
b15aa9f9
SM
1207 * data.c (Fbyteorder):
1208 * fringe.c (Fdefine_fringe_bitmap):
1209 * xdisp.c (handle_single_display_prop):
d2f14999
SM
1210 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
1211
8d50508a
JR
12122004-02-16 Jason Rumney <jasonr@gnu.org>
1213
1214 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
1215
dd4497dc
ST
12162004-02-15 Steven Tamm <steventamm@mac.com>
1217
1218 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
1219 controlling emulation of a three button mouse with option and
1220 command keys.
1221 (Qreverse, mac_get_enumlated_btn): Handle the emulation
b15aa9f9 1222 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
dd4497dc 1223
c9159cb3
KS
12242004-02-15 Kim F. Storm <storm@cua.dk>
1225
2cc52658
KS
1226 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
1227
c9159cb3
KS
1228 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
1229 Perform byte-swapping.
1230
12fde2dc
KS
12312004-02-14 Kim F. Storm <storm@cua.dk>
1232
1233 * dispextern.h (struct draw_fringe_bitmap_params): Change member
1234 bits from char to short to facilitate wider bitmaps.
1235 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
1236 member.
1237
1238 * fringe.c (struct fringe_bitmap): Change member bits from char to
1239 short to facilitate 16 bits wide bitmaps. Modify all standard
1240 bitmaps accordingly.
1241 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
1242 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
1243 (draw_fringe_bitmap): Ditto.
1244 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
1245 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
1246 handle up to 16 bits wide bitmaps.
1247 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 1248 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
1249
1250 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
1251 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
1252 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
1253
1254 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
1255 so it is no longer necessary to expand them here.
1256
1257 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
1258
9d7271e8
KS
12592004-02-12 Kim F. Storm <storm@cua.dk>
1260
1261 * window.c (Fwindow_fringes): Doc fix.
1262
706c1e4f
JD
12632004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1264
1265 * xselect.c (x_get_foreign_selection): Add new optional parameter
1266 time_stamp.
1267 (Fx_get_selection_internal): Ditto, pass time_stamp to
1268 x_get_foreign_selection.
1269
1270 * data.c (Fbyteorder): New function.
1271
c2d12b5d
JD
12722004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1273
1274 * atimer.c: Move include stdio.h to same place as in other files.
1275
1276 * region-cache.c: Ditto.
1277
1278 * sysdep.c: Ditto.
1279
1280 * xfaces.c: Ditto.
1281
4c1947b9
SS
12822004-02-09 Sam Steingold <sds@gnu.org>
1283
1284 * w32term.c (w32_draw_fringe_bitmap): Fixed a typo in the last patch.
1285
82722af3
KS
12862004-02-09 Kim F. Storm <storm@cua.dk>
1287
1288 * fringe.c: New file. Move original fringe related declarations
1289 and code from dispextern.h and xdisp.c here.
1290 Rework code to support user defined fringe bitmaps, redefining
1291 standard bitmaps, ability to overlay user defined bitmap with
1292 overlay arrow bitmap, and add faces to bitmaps.
1293 (Voverflow_newline_into_fringe): Declare here.
1294 (enum fringe_bitmap_align): New enum.
1295 (..._bits): All bitmaps are now defined without bitswapping; that
1296 is now done in init_fringe_once (if necessary).
1297 (standard_bitmaps): New array with specifications for the
1298 standard fringe bitmaps.
1299 (fringe_faces): New array.
1300 (valid_fringe_bitmap_id_p): New function.
1301 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
1302 (draw_fringe_bitmap): New function which draws fringe bitmap,
1303 possibly overlaying bitmap with cursor in right fringe or the
1304 overlay arrow in the left fringe.
1305 (update_window_fringes): Do not handle overlay arrow here.
1306 Compare and copy fringe bitmap faces.
1307 (init_fringe_bitmap): New function.
1308 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
1309 define and destroy user defined fringe bitmaps.
1310 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
1311 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
1312 (syms_of_fringe): New function. Defsubr new DEFUNs.
1313 DEFVAR_LISP Voverflow_newline_into_fringe.
1314 (init_fringe_once, init_fringe): New functions.
1315 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 1316
82722af3
KS
1317 * Makefile.in (obj): Add fringe.o.
1318 (fringe.o): New dependencies.
1319
1320 * dispextern.h (FRINGE_ID_BITS): New definition for number of
1321 bits allocated to hold a fringe number. Increase number of bits
1322 from 4 to 8 to allow user defined fringe bitmaps.
1323 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
1324 left_user_fringe_face_id, right_user_fringe_bitmap,
1325 right_user_fringe_face_id.
1326 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
1327 Move to new file fringe.c.
1328 (MAX_FRINGE_BITMAPS): Define here.
1329 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
1330 and overlay_p. Change member which to int.
1331 (struct redisplay_interface): New members define_fringe_bitmap
1332 and destroy_fringe_bitmap.
1333 (valid_fringe_bitmap_id_p): Add prototype.
1334 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
1335
1336 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
1337 arrows.
1338 (update_frame): Do flush_display if force_flush_display_p to
1339 ensure display (specifically fringes) are updated in a timely
1340 manner when resizing the frame by dragging the mouse.
1341 (update_window_line): Update row if overlay arrow changed.
1342 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
1343 or overlay arrow changed.
1344
1345 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
1346 syms_of_fringe, and init_fringe.
1347
1348 * frame.h (struct frame): New member force_flush_display_p.
1349
1350 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
1351 Add prototypes.
1352
a3993cc8 1353 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
a64387ee 1354 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
a3993cc8
KS
1355 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
1356 Use cursor color for displaying cursor in fringe.
82722af3
KS
1357 (x_redisplay_interface): Add null handlers for
1358 define_fringe_bitmap and destroy_fringe_bitmap functions.
1359
1360 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
1361 xterm.c to handle overlayed fringe bitmaps and to use cursor color
1362 for displaying cursor in fringe.
1363 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
1364 specific functions to define and destroy fringe bitmaps in fringe_bmp.
1365 (w32_redisplay_interface): Add them to redisplay_interface.
1366 (w32_term_init): Call w32_init_fringe instead of explicitly
1367 defining fringe bitmaps in fringe_bmp array.
1368 (x_delete_display): Call w32_reset_fringes instead of explicitly
1369 destroying fringe bitmaps in fringe_bmp array.
1370
1371 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
1372 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
1373 (continued_bits, continuation_bits, ov_bits, first_line_bits)
1374 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
1375 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
1376 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
1377 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
1378 Move fringe handling vars and code to new file fringe.c.
1379 (handle_display_prop): Handle left-fringe and right-fringe
1380 display properties; store user fringe bitmaps in iterator.
1381 (move_it_in_display_line_to): Handle cursor in fringe at eob.
1382 (clear_garbaged_frames): Set force_flush_display_p if resized.
1383 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
1384 (display_line): Handle cursor in fringe at eob.
1385 (display_line): Set row user fringe bitmaps from iterator.
1386
1387 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
1388 Use cursor color for displaying cursor in fringe.
1389 (x_redisplay_interface): Add null handlers for
1390 define_fringe_bitmap and destroy_fringe_bitmap functions.
1391
030400eb
JD
13922004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1393
1394 * macfns.c (Fx_change_window_property): Make doc string and
1395 parameters same as for X version.
1396
1397 * w32fns.c (Fx_change_window_property): Ditto.
1398
3af55251
KS
13992004-02-07 Kim F. Storm <storm@cua.dk>
1400
ec110e9e
KS
1401 * xdisp.c (hscroll_window_tree): Position cursor near to right
1402 margin in hscrolled window when jumping to end of line (rather
1403 than centering cursor).
1404
3af55251
KS
1405 * process.c (wait_reading_process_input): Don't do adaptive read
1406 buffering if waiting for a specific process.
1407
b0c138ce
LT
14082004-02-05 Luc Teirlinck <teirllm@auburn.edu>
1409
1410 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
1411 (Fread_minibuffer, Feval_minibuffer)
1412 (Fread_string, Fread_no_blanks_input)
1413 (Fcompleting_read): Doc fixes.
1414 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
1415 completion-regexp-list. Define Qcase_fold_search and staticpro it.
1416 (read_minibuf): Fix initial comment.
1417 (Ftry_completion, Fall_completions, Ftest_completion): Bind
1418 case-fold-serach to the value of completion-ignore-case when
1419 checking completion-regexp-list.
1420 (Fdisplay_completion_list): Make it handle arguments that are
1421 symbols. Doc fix.
1422
9676f5ad 14232004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 1424
9676f5ad 1425 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 1426
9676f5ad
JD
1427 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
1428 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 1429 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 1430 format. Remove unused variable cons.
5b698285
JD
1431
1432 * xselect.c: Include stdio,h.
1433
fc1d15f6
KH
14342004-02-05 Kenichi Handa <handa@m17n.org>
1435
ebaff4af
KH
1436 * fns.c (Fset_char_table_range): Fix previous change.
1437
fc1d15f6
KH
1438 * buffer.c (Fset_buffer_multibyte): Fix docstring.
1439
9676f5ad
JD
14402004-02-04 Luc Teirlinck <teirllm@auburn.edu>
1441
1442 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
1443
da75761f
SM
14442004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
1445
1446 * keymap.c (Vmouse_events): Rename from Vmenu_events.
1447 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
1448
13c5d120
KH
14492004-02-04 Kenichi Handa <handa@m17n.org>
1450
1451 * fns.c (Fset_char_table_range): Handle charsets ascii,
1452 eight-bit-control, and eight-bit-graphic correctly.
1453
2883d842
JR
14542004-02-03 Jason Rumney <jasonr@gnu.org>
1455
1456 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
1457
1458 * w32fns.c (x_to_w32_font): Likewise.
1459
69eff41f
JD
14602004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1461
1462 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
1463 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
1464
1465 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
1466 ClientMessages.
1467
1468 * xselect.c: Include termhooks.h and X11/Xproto.h
1469 (x_check_property_data, x_fill_property_data)
1470 (x_property_data_to_lisp, mouse_position_for_drop)
1471 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 1472 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
1473 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
1474
da75761f 1475 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
1476 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
1477 OUTER_P.
1478 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
1479 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
1480 if vector_ret_p is true.
1481 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 1482
a6eeaa81 14832004-02-02 Eli Zaretskii <eliz@gnu.org>
dcdbbb5d
EZ
1484
1485 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
1486 basename of FILE relative to it, not FILE itself.
1487
09721b31
KH
14882004-02-02 Kenichi Handa <handa@m17n.org>
1489
1490 * coding.c (coding_restore_composition): Check invalid
1491 composition data more rigidly.
1492
eb996101
LT
14932004-01-30 Luc Teirlinck <teirllm@auburn.edu>
1494
1495 * fileio.c (Fread_file_name_internal): Correctly handle the case
1496 where insert-default-directory is nil.
1497 (Fread_file_name): Always return an empty string if the user exits
1498 with an empty minibuffer. Adapt the docstring accordingly.
1499 (syms_of_fileio): Adapt the docstring of insert-default-directory
1500 to the change in Fread_file_name.
1501
a6eeaa81 15022004-01-29 Eli Zaretskii <eliz@gnu.org>
a0367d42
EZ
1503
1504 * alloca.c [!alloca]: Fix the prototype for xfree.
1505
13f52ed8
KH
15062004-01-29 Kenichi Handa <handa@m17n.org>
1507
1508 * fns.c (string_char_to_byte): Optimize for ASCII only string.
1509 (string_byte_to_char): Likewise.
1510
d57625a0
JR
15112004-01-28 Peter Runestig <peter@runestig.com>
1512
1513 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
1514
a64387ee 15152004-01-27 Steven Tamm <steventamm@mac.com>
911c78b4
ST
1516
1517 * unexmacosx.c (unexec_copy): Do not copy more than was
1518 requested to prevent overwriting during unexec.
1519
eb37b8fd
JD
15202004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1521
ce38070a
JD
1522 * process.c (sigchld_handler): Add comment about not calling malloc.
1523
eb37b8fd
JD
1524 * process.h: Add extern to synch_process_termsig.
1525
a64387ee 15262004-01-27 Steven Tamm <steventamm@mac.com>
21a3e657 1527
da75761f
SM
1528 * macterm.c (make_mac_frame, make_mac_terminal_frame):
1529 Move setting of scroll bars from make_mac_frame to
1530 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 1531
d62a265d
RS
15322004-01-26 Richard M. Stallman <rms@gnu.org>
1533
1534 * search.c (Freplace_match): Handle nonexistent
1535 back-references properly.
1536
15372004-01-03 Richard M. Stallman <rms@gnu.org>
1538
1539 * window.c (decode_any_window): New function.
1540 (Fwindow_height, Fwindow_width, Fwindow_edges)
1541 (Fwindow_pixel_edges, Fwindow_inside_edges)
1542 (Fwindow_inside_pixel_edges): Use decode_any_window.
1543
ff236419
JD
15442004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1545
1546 * process.h: synch_process_termsig new variable.
1547
1548 * callproc.c: Define synch_process_termsig.
1549 (Fcall_process): Initiate synch_process_termsig to zero and
1550 check if non-zero and get signal name after subprocess has ended.
1551
1552 * process.c (sigchld_handler): Set synch_process_termsig
1553 if terminated by a signal. synch_process_death setting removed.
1554
1555 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
1556
41b867ea
AS
15572004-01-26 Andreas Schwab <schwab@suse.de>
1558
1559 * print.c (print_preprocess): Declare size as EMACS_INT to not
1560 lose bits.
1561 (print_object): Likewise.
1562 * alloc.c (Fpurecopy): Likewise.
1563
a08084ff
LT
15642004-01-25 Luc Teirlinck <teirllm@auburn.edu>
1565
1566 * window.c (Fwindow_minibuffer_p): Doc fix.
1567
b19ac475
JY
15682004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
1569
1570 * editfns.c (Fformat): Make both passes accept the same set of flags.
1571
fe905025
KH
15722004-01-23 Kenichi Handa <handa@m17n.org>
1573
1574 * fns.c (Fmd5): If OBJECT is a buffer different from the current
1575 one, set buffer to OBJECT temporarily.
1576
438fc6c0
SM
15772004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
1578
455316e2
SM
1579 * keyboard.c (kbd_buffer_gcpro): Remove.
1580 (kbd_buffer_store_event, clear_event, Fdiscard_input)
1581 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
1582 Don't initialize and/or maintain the variable any more. It was made
1583 redundant by my commit of 2003-06-15.
1584
438fc6c0
SM
1585 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
1586
5335a4ee
JD
15872004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1588
1589 * lisp.h: Add undef DECL_ALIGN.
1590
dcdaeebc
SM
15912004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
1592
1593 * process.c (wait_reading_process_input) [SYNC_INPUT]:
1594 Check interrupt_input_pending explicitly.
1595
1596 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
1597
1598 * keyboard.c (handle_async_input): New fun,
1599 extracted from input_available_signal.
1600 (input_available_signal, reinvoke_input_signal): Use it.
1601
9076a823
SM
16022004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
1603
d7107586
SM
1604 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
1605
1606 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
1607 manipulation macros for when tags are in the lower bits.
1608 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
1609 (DECL_ALIGN): New macro.
1610 (DEFUN): Use it.
1611
1612 * lisp.h [ENABLE_CHECKING]: Don't force union type.
1613
1614 * s/darwin.h (__attribute__): Remove outdated workaround.
1615
1616 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
1617
1618 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
1619 Don't check range of malloc address.
1620 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
1621
9076a823
SM
1622 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
1623
1624 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
1625
ba029065
KH
16262004-01-19 Kenichi Handa <handa@m17n.org>
1627
1628 * fontset.c (fontset_font_pattern): Fix previous change.
1629
7af0e8d7
MB
16302004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
1631
1632 * xdisp.c (Voverflow_newline_into_fringe)
1633 (move_it_in_display_line_to, redisplay_internal)
1634 (update_window_fringes, redisplay_window, display_line, window):
1635 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
1636 that it compiles without a window-system.
1637 * dispnew.c (direct_output_for_insert, update_window): Likewise.
1638
77a9cf69
KS
16392004-01-16 Kim F. Storm <storm@cua.dk>
1640
1641 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
1642
a64387ee 1643 * buffer.c (init_buffer_once): Set buffer_defaults and
77a9cf69
KS
1644 buffer_local_flags for indicate_buffer_boundaries.
1645 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
1646 default- variable for it.
1647
1648 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
1649 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 1650 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
1651 overflowing newlines into right fringe.
1652 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
1653 and indicate_bottom_line_p for buffer boundaries and scrolling.
1654 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
1655 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
1656 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
1657 and HOLLOW_SQUARE_BITMAP.
1658 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
1659 Add prototypes.
1660
1661 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
1662 instead of related indicator fields.
1663 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
1664 (direct_output_for_insert): Handle exact width lines like
1665 contined lines. Call update_window_fringes.
1666 (update_window): Call update_window_fringes.
1667 (scrolling_window): Don't skip desired rows with changed bitmaps.
1668 Check if fringe bitmaps changes when assigning scrolled rows.
1669
1670 * xdisp.c (Voverflow_newline_into_fringe): New variable.
1671 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
1672 (move_it_in_display_line_to): Overflow newline into fringe for
1673 rows that are exactly as wide as the window.
1674 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
1675 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
1676 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
1677 (fringe_bitmaps): Add new bitmaps.
1678 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
1679 Select proper bitmap for cursor in fringe when appropriate.
1680 Handle alignment of bitmap to top or bottom of row.
1681 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
1682 done by update_window_fringes.
1683 (update_window_fringes, draw_window_fringes): New functions.
1684 (redisplay_internal): Call update_window_fringes in case only
1685 cursor row is updated.
1686 (redisplay_window): Call update_window_fringes.
1687 Explicitly call draw_window_fringes if redisplay was done using
1688 the current matrix or the overlay arrow is in the window.
1689 (try_window_reusing_current_matrix): Mark scrolled rows for
1690 fringe update (to update buffer-boundaries / scrolling icons).
1691 (find_last_unchanged_at_beg_row): Handle exact width lines line
1692 continued lines.
1693 (display_line): Overflow newline into fringe for rows that are
1694 exactly as wide as the window. Don't append space for newline
d7107586 1695 in this case.
77a9cf69
KS
1696 (notice_overwritten_cursor): Explicitly clear cursor bitmap
1697 in fringe as if it had been overwritten.
1698 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 1699 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
1700 void-text-area-pointer as user options.
1701 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 1702
77a9cf69
KS
1703 * xterm.c (x_update_window_end): Call draw_window_fringes.
1704 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
1705 in row instead of actually drawing fringe bitmaps.
1706 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
1707 (x_draw_window_cursor): Draw cursor in fringe.
1708
1709 * w32term.c (x_update_window_end): Call draw_window_fringes.
1710 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
1711 in row instead of actually drawing fringe bitmaps.
1712 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
1713 (w32_draw_window_cursor): Draw cursor in fringe.
1714
1715 * macterm.c (x_update_window_end): Call draw_window_fringes.
1716 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
1717 in row instead of actually drawing fringe bitmaps.
1718 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
1719 (mac_draw_window_cursor): Draw cursor in fringe.
1720
a633a954
JD
17212004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1722
1723 * xterm.c (handle_one_xevent): Don't handle characters that are part
1724 of an old style (XLookupString) compose sequence.
1725
80460525
KH
17262004-01-15 Kenichi Handa <handa@m17n.org>
1727
1728 * search.c (Freplace_match): Use make_multibyte_string or
1729 make_unibyte_string according to the buffer multibyteness.
1730
7fc34f85
SM
17312004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
1732
1733 * alloc.c (struct interval_block, struct string_block)
1734 (struct symbol_block, struct marker_block, live_string_p)
1735 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
1736 Better preserve alignment for objects in blocks.
1737 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
1738
1739 * lread.c (defvar_per_buffer): Remove dead declaration.
1740
1741 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
1742 space size.
1743
66070bd1
JD
17442004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1745
1746 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
1747 if a key press should pop down. Only pop down if a key is pressed
1748 outside the menu/dialog.
1749 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
1750 popup_get_selection.
1751 (create_and_show_dialog): Pass 1 for down_on_keypress to
1752 popup_get_selection.
1753
de7515d6
JD
17542004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1755
1756 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
1757 BLOCK/UNBLOCK_INPUT.
1758
160b1b50
JD
17592004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1760
1761 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
1762 specified.
1763
3a9f36e6
KH
17642004-01-08 Kenichi Handa <handa@m17n.org>
1765
1766 * editfns.c (Fformat): Fix '&' to '&&'.
1767
3803eb32
AS
17682004-01-08 Andreas Schwab <schwab@suse.de>
1769
1770 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
1771 size if PSEUDOVECTOR_FLAG is set.
1772
9da88f37
KH
17732004-01-07 Kenichi Handa <handa@m17n.org>
1774
74ac5074
KH
1775 * charset.c (Fdeclare_equiv_charset): Fix docstring.
1776
9da88f37
KH
1777 * fontset.c (fontset_ref_via_base): Fix previous change.
1778
05faee07
KS
17792004-01-07 Kim F. Storm <storm@cua.dk>
1780
1781 * process.c (read_process_output): Only activate adaptive
1782 buffering if we read less than 256 bytes at a time.
1783
634910c8
KS
17842004-01-06 Kim F. Storm <storm@cua.dk>
1785
1786 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
1787 object and image object. Return glyph width and height.
1788 (mode_line_string, marginal_area_string): Ditto.
1789
1790 * dispextern.h (buffer_posn_from_coords, mode_line_string)
1791 (marginal_area_string): Fix prototypes.
1792
1793 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
1794 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
1795 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
1796
1797 * keyboard.c (make_lispy_position): Use modified mode_line_string,
1798 buffer_posn_from_coords, and marginal_area_string functions to
1799 include both string object and image object in the lispy position.
1800 Also add actual glyph width and height to position.
1801 (read_key_sequence): Use real buffer position from mouse
1802 event to find keymap property even when click is in marginal area.
1803
1804 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
1805 mode_line_string and marginal_area_string functions to handle
1806 both string object and image object properties.
d7107586 1807
57951c2e
AS
18082004-01-06 Andreas Schwab <schwab@suse.de>
1809
1810 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
1811 character.
1812
181e6a61
AS
18132004-01-02 Andreas Schwab <schwab@suse.de>
1814
d7107586
SM
1815 * macterm.c (emacs_options, x_initialized, same_x_server):
1816 Remove unused (and duplicated) definitions.
181e6a61 1817
31e0fbdd
KS
18182004-01-02 Kim F. Storm <storm@cua.dk>
1819
1820 * process.h (struct Lisp_Process): New members for adaptive read
1821 buffering: adaptive_read_buffering, read_output_delay, and
1822 read_output_skip.
1823
1824 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
1825 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
1826 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
1827 (process_output_delay_count, process_output_skip): New vars.
1828 (Vprocess_adaptive_read_buffering): New variable.
1829 (make_process): Initialize adaptive read buffering members.
1830 (Fstart_process): Set adaptive_read_buffering member.
1831 (deactivate_process): Cleanup adaptive read buffering.
1832 (wait_reading_process_input): Temporarily omit delayed
1833 subprocesses from the set of file descriptors to read from;
1834 adjust the select timeout if we skipped any subprocesses.
1835 (read_process_output): Increase adaptive read buffering delay if
1836 we read less than a full buffer; reduce delay when we read a
1837 full buffer.
1838 (send_process): Simplify using local Lisp_Process var.
1839 Reset adaptive read buffering delay after write.
1840 (init_process): Initialize process_output_delay_count and
1841 process_output_skip.
1842 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
1843
68c6a789
JR
18442004-01-01 Jason Rumney <jasonr@gnu.org>
1845
d7107586 1846 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 1847
3f70fe82
LT
18482003-12-30 Luc Teirlinck <teirllm@auburn.edu>
1849
1850 * print.c (Ferror_message_string): Add hyperlink in the docstring
1851 to the definition of `signal' in the Elisp manual.
1852 * eval.c (Fsignal): Ditto.
1853
a64387ee 18542003-12-29 James Clark <jjc@jclark.com> (tiny change)
c2be49ed
EZ
1855
1856 * fns.c (internal_equal): Return t for two NaN arguments.
1857
7abd90ea
RS
18582003-12-29 Richard M. Stallman <rms@gnu.org>
1859
1860 * data.c (store_symval_forwarding): Handle setting
1861 default-fill-column, etc., by changing the value in
1862 buffers that use the default.
1863
1864 * minibuf.c (Fset_minibuffer_window): Doc fix.
1865
1866 * fileio.c (choose_write_coding_system): Ignore auto_saving
1867 if using the visited file for auto saves.
1868 (Fwrite_region): Don't update SAVE_MODIFF
1869 if auto-saving in visited file.
1870
3e7cfcdc
KH
18712003-12-29 Kenichi Handa <handa@m17n.org>
1872
1873 * dispextern.h (face_font_available_p): Extern it.
1874
1875 * fontset.c (Voverriding_fontspec_alist): New variable.
1876 (lookup_overriding_fontspec): New function.
d7107586 1877 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
1878 (fontset_font_pattern): Likewise.
1879 (regulalize_fontname): New function.
1880 (Fset_fontset_font): Call regulalize_fontname.
1881 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
1882 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
1883 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
1884
1885 * xfaces.c (face_font_available_p): New function.
1886
7abd90ea
RS
18872003-12-28 Richard M. Stallman <rms@gnu.org>
1888
1889 * buffer.c (Fother_buffer): Don't crash if BUF is nil
1890 or if its name is nil.
1891
1892 * buffer.c (Fkill_buffer): Don't delete auto-save file
1893 if it's the same as the visited file.
1894
de1d1a40
LT
18952003-12-28 Luc Teirlinck <teirllm@auburn.edu>
1896
1897 * coding.c (Fcheck_coding_system): Doc fix.
1898
204fb75e
KS
18992003-12-28 Kim F. Storm <storm@cua.dk>
1900
1901 * Makefile.in (eval.o): Depend on dispextern.h.
1902
1903 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
1904 image glyph using image's ascent.
1905 (mode_line_string): Return image glyph as object clicked on.
1906 Adjust y0 for image glyph using image's ascent.
1907
1908 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
1909 (struct glyph): New members, ascent and descent. Used to save
1910 this glyph's ascent and descent, instead of having.
1911 (struct glyph): Declare member face_id using FACE_ID_BITS.
1912 (find_hot_spot): Add prototype.
1913
1914 * keyboard.c (Qimage): Remove extern (now in lisp.h).
1915 (QCmap): Declare extern.
1916 (make_lispy_position): When position is inside image hot-spot,
1917 use hot-spot element's id as posn element.
1918
1919 * lisp.h (IMAGEP): New macro to test for image object type.
1920 (Qimage): Declare extern.
1921
1922 * macfns.c (Qimage): Remove extern (now in lisp.h).
1923 (valid_image_p, parse_image_spec): Use IMAGEP macro.
1924
1925 * macterm.c (Qface, Qmouse_face): Remove unused externs.
1926
1927 * w32fns.c (Qimage): Remove extern (now in lisp.h).
1928 (valid_image_p, parse_image_spec): Use IMAGEP macro.
1929
1930 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
1931
1932 * w32term.c (Qface, Qmouse_face): Remove unused externs.
1933
1934 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
1935 pointer types.
1936 (Qrelative_width, Qalign_to): Remove unused variables.
1937 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
1938 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
1939 image maps.
d7107586 1940 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
1941 new dx and dy args.
1942 Remove buffer_only_p arg (always 0). Simplify code accordingly.
1943 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
1944 than row's ascent and height, to get sensible height on tall rows.
1945 (build_desired_tool_bar_string): Remove Qimage extern.
1946 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
1947 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
1948 image glyph is alone on the last line.
1949 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 1950 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 1951 (on_hot_spot_p): New function to check if position is inside an
d7107586 1952 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
1953 (find_hot_spot): New function to search for image hot-spot.
1954 (Flookup_image_map): New defun to search for image hot-spot.
1955 (define_frame_cursor1): New aux function to determine frame pointer.
1956 (note_mode_line_or_margin_highlight, note_mouse_highlight):
1957 Handle `pointer' text property and :pointer image property to
1958 control frame pointer shape. Detect image hot-spots for pointer
1959 and help_echo properties. Use define_frame_cursor1.
1960 (note_mouse_highlight): Use Vvoid_text_area_pointer.
1961 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
1962 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
1963
1964 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
1965
1966 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
1967 (Qimage): Remove extern (now in lisp.h).
1968 (valid_image_p, parse_image_spec): Use IMAGEP macro.
1969
1970 * xmenu.c (show_help_event): Remove unused code.
1971
1972 * xterm.c (Qface, Qmouse_face): Remove unused externs.
1973 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
1974 row's ascent and descent, to get a sensible height on tall rows.
1975
fc052137
LT
19762003-12-25 Luc Teirlinck <teirllm@auburn.edu>
1977
1978 * minibuf.c (Fcompleting_read): Undo previous change.
1979
a64387ee 19802003-12-25 Lars Hansen <larsh@math.ku.dk>
b9148500
LH
1981
1982 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
1983 Arguments GCPRO'ed in call to file name handler.
1984
56ffd194
TTN
19852003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
1986
1987 * termcap.c (tgetst1): Scan for "%pN"; if all
1988 N are continuous in [1,9], remove all "%pN".
1989
5202d23d
JD
19902003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1991
f26fab36
JD
1992 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
1993
5202d23d
JD
1994 * xfaces.c (lface_fully_specified_p): Take into account that
1995 MAC OS always have unspecified stipple.
1996
8babaa59
TTN
19972003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
1998
1999 * tparam.c (tparam1): Add handling for `%pN', which
2000 means use param N for the next substitution.
2001
2d176448
TTN
20022003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
2003
2004 * xfaces.c (Fcolor_gray_p): Fix omission bug:
2005 In case `frame' is nil, consult the selected frame.
2006 (Fcolor_supported_p): Likewise.
2007
adb0708c
LT
20082003-12-23 Luc Teirlinck <teirllm@auburn.edu>
2009
000eeb15
LT
2010 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
2011 Doc fixes.
0dc72b11
LT
2012
2013 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
2014 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
2015 (Fread_from_minibuffer): Delete code moved into read_minibuf.
2016 Doc fix.
2017 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
2018 read_minibuf.
2019 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 2020 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 2021
2e4d132b
KH
20222003-12-03 Kenichi Handa <handa@m17n.org>
2023
2024 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
2025 encoding sequence.
2026
3999c705
KH
20272003-12-01 Kenichi Handa <handa@m17n.org>
2028
2029 * composite.c (syms_of_composite): Don't make the compostion hash
2030 table week.
2031
d344ecbb
LT
20322003-11-30 Luc Teirlinck <teirllm@auburn.edu>
2033
2034 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
2035 * textprop.c (Fget_char_property_and_overlay): New function.
2036 (syms_of_textprop): Defsubr it.
2037
03d6484e
JD
20382003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2039
019b1f0e
JD
2040 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
2041 to compile on terminal configuration.
2042
03d6484e
JD
2043 * fileio.c (Fread_file_name): Check use_file_dialog also before
2044 calling Fx_file_dialog.
2045
2046 * fns.c: use_file_dialog: New variable.
2047 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
2048
442d3fd0
KS
20492003-11-29 Kim F. Storm <storm@cua.dk>
2050
2051 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
2052 (syms_of_msdos): Don't intern and staticpro them.
2053
0f6a07a8
KS
20542003-11-27 Kim F. Storm <storm@cua.dk>
2055
2056 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
2057 coordinates relative to glyph at posn. If glyph is an image,
2058 return that as object at posn. Callers changed.
2059 (mode_line_string, marginal_area_string): Calculate and return
2060 pixel coordinates relative to glyph. Callers changed.
2061
2062 * dispextern.h (buffer_posn_from_coords, mode_line_string)
2063 (marginal_area_string): Fix prototypes.
2064 (window_box_left_offset, window_box_right_offset): Add prototypes.
2065
2066 * frame.h (get_specified_cursor_type, get_window_cursor_type):
2067 Remove prototypes.
2068
2069 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
2070
2071 * keyboard.c (make_lispy_position): Add x and y coordinates
2072 relative to the current glyph as 7th element of position.
2073 If glyph is an image, return it in the object element.
2074 (read_key_sequence): Skip checks for keymap property in cases
2075 where POSN_STRING is not a string (e.g. an image).
2076
2077 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
2078 (Vshow_text_cursor_in_void): New variable.
2079 (glyph_to_pixel_coords): Don't use negative hpos.
2080 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
2081 (append_stretch_glyph): Change ascent arg to be actual value
2082 in pixels rather than ratio to height. Callers changed.
2083 (calc_pixel_width_or_height): New aux function, implementing
2084 pixel based artihmetic for glyph widths and heights.
2085 (produce_stretch_glyph): Use calc_pixel_width_or_height for
2086 :width, :height, :align-to, and :ascent, thus allowing these to
2087 be specified in pixels as well as multiples of characters.
2088 Don't produce stretch glyphs with zero width or height.
2089 (get_specified_cursor_type): Declare static.
2090 (get_window_cursor_type): Declare static. Add glyph arg to be
2091 able to know when cursor is on an image; always substitute
2092 hollow-box cursor for filled-box cursor on images, to avoid
2093 negative images and flicker when blinking the cursor.
2094 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
2095 (note_mode_line_or_margin_highlight): Use non-text cursor rather
2096 than vertical scroll-bar cursor in display margins.
2097 (note_mouse_highlight): Use non-text cursor rather than text
2098 cursor in fringes and over images in the text area.
2099 Use non-text cursor when mouse pointer is outside editable text,
2100 i.e. in the void after end-of-line or end-of-buffer; this was
2101 already done for W32, but is now standard for all systems --
2102 user can toggle show-text-cursor-in-void to get old behaviour.
2103 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
2104 Vdisplay_pixels_per_inch.
2105
00498bfc
AS
21062003-11-25 Andreas Schwab <schwab@suse.de>
2107
2108 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
2109 EMACS_INT to not lose bits.
2110 (Ffillarray): Don't set bits beyond the size of a bool vector.
2111
edaa824d
KS
21122003-11-25 Kim F. Storm <storm@cua.dk>
2113
2114 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
2115 define this defun on systems that cannot use stderr as lvalue.
2116
74d6f539
GM
21172003-11-24 Gerd Moellmann <gerd@gnu.org>
2118
2119 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
2120 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
2121 ld's default is incompatible with unexec.
2122
6a1ff3ba
KS
21232003-11-23 Kim F. Storm <storm@cua.dk>
2124
63dc7c6b
KS
2125 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
2126 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
2127 (Fforce_window_update): New defun.
2128 (syms_of_window): Defsubr it.
2129 (Fset_window_margins, Fset_window_fringes): Doc fix.
2130
6a1ff3ba
KS
2131 * print.c (Fredirect_debugging_output): New defun.
2132 (syms_of_print): Defsubr it.
2133
aef109b7
LT
21342003-11-22 Luc Teirlinck <teirllm@auburn.edu>
2135
2136 * fns.c (Fset_char_table_parent): Doc fix.
2137
6a1ff3ba 21382003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
2139
2140 * dispnew.c (buffer_posn_from_coords): Return actual row/column
2141 for glyph clicked on, rather than (unused) pixel positions.
2142 (mode_line_string, marginal_area_string): Change X and Y args to
2143 pointers for returning actual row/column for glyph clicked on.
2144 Simplify and optimize loops.
2145
aef109b7
LT
2146 * dispextern.h (mode_line_string, marginal_area_string):
2147 Update prototypes.
63ccbe21
KS
2148
2149 * keyboard.c (make_lispy_position): New function for generating
2150 mouse click positions from frame and pixel coordinates.
2151 Enhanced to return buffer position and actual row/column for
2152 events outside the text area using updated mode_line_string and
2153 marginal_area_string functions.
2154 Return left-fringe and right-fringe clicks as such, rather than
2155 clicks in text area.
2156 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
2157 pixel_to_glyph_coords, as we never use the results.
2158 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
2159 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
2160 Eliminate unused code in WHEEL_EVENT handling.
2161 (make_lispy_movement): Use make_lispy_position.
2162
2163 * window.c (coordinates_in_window): Remove redundant tests.
2164 Fix returned X pixel value for left-margin.
2165
2166 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
2167 mode_line_string and marginal_area_string parameters.
2168
a64387ee 21692003-11-22 Lars Hansen <larsh@math.ku.dk>
930a9995 2170
d7107586
SM
2171 * w32.c (struct the_group, getgrgid): Add.
2172 * mac.c (struct my_group, getgrgid): Add.
aef109b7 2173
3dbf3426
LT
21742003-11-21 Luc Teirlinck <teirllm@auburn.edu>
2175
2176 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
2177
cae8ddbb 21782003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 2179
d7107586
SM
2180 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
2181 include in call to file name handler. Optionally translate numeric
2182 UID and GID to strings. Update docstring.
2183 (directory_files_internal): Add parameter ID-FORMAT.
2184 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
2185 include in call to file name handler and call to
2186 directory_files_internal. Update Docstring.
2187 (Fdirectory_files): Add dummy parameter in call to
2188 directory_files_internal.
2189 * lisp.h (Qinteger): Add.
2190 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
2191 (Ffile_attributes): Add parameter.
2192 * data.c (Qinteger): Export.
cae8ddbb 2193
2550b848
LT
21942003-11-21 Luc Teirlinck <teirllm@auburn.edu>
2195
3dbf3426 2196 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 2197
88380018
KS
21982003-11-19 Kim F. Storm <storm@cua.dk>
2199
2200 * xdisp.c (init_iterator): Initialize it->start to position
2201 before reseating (in case start position is invisible).
2202 (init_to_row_start): Set it->start to row-start.
2203 (redisplay_window): Accept optional_new_start if start position
2204 is invisible (in which case IT_CHARPOS overshoots PT).
2205 (display_line): Setup row->start from it->start (rather than
2206 it->current which is wrong if first char on line is invisible).
2207 When done, reseat it->start to it->current (= start of next row).
2208 (expose_area): Fix exposure of text area when first char (e.g. TAB)
2209 is only partially visible.
2210
2211 * dispextern.h (struct it): New member start.
2212
854c1a59
SM
22132003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
2214
455316e2
SM
2215 * alloc.c (make_float, Fcons): Clear the markbit at init time.
2216 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
2217 of block_index outside of the macro call.
2218 (Fgarbage_collect): Remove null code.
2219
2220 * m/amdx86-64.h: Don't redefine XPNTR.
2221
854c1a59
SM
2222 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
2223 of VALMASK.
2224
2225 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
2226 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
2227 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
2228
2229 * lisp.h (VALMASK): Only define for non-union type.
2230 (MARKBIT): Remove.
2231 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
2232 (XTYPE): Define unconditionally.
2233 (XSETTYPE): Remove one more remnant.
2234 (EQ): Define differently for the union and non-union cases.
2235 (INTMASK): New bit mask.
2236 (struct Lisp_Marker): Move down to prepare for upcoming patch.
2237 (GC_EQ): Delegate to EQ.
2238
2239 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
2240
a0c6ef2d
JD
22412003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2242
2243 * xterm.c (x_window_to_scroll_bar): Move check of display to
2244 where window_id is compared.
2245
859492c4
KS
22462003-11-17 Kim F. Storm <storm@cua.dk>
2247
2248 * dispextern.h (struct it): New member first_vpos.
2249
2250 * xdisp.c (start_display): Set it->first_vpos.
2251 (try_window_id): Use first_vpos to start display in first _text_
2252 line if no reusable lines at start of window with header line.
2253
810f2256
JD
22542003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2255
7c402969 2256 * w32fns.c (XPutPixel):
854c1a59
SM
2257 * w32bdf.c (w32_init_bdf_font):
2258 * sunfns.c (sel_read):
2259 * process.c (Fmake_network_process):
2260 * frame.c (store_frame_param):
2261 * fontset.c (Fset_fontset_font):
2262 * emacs.c (shut_down_emacs):
a64387ee 2263 * ccl.c (ccl_driver): Remove period at end of error message.
7c402969 2264
a32e9bfd
JD
2265 * config.in: Regenerate.
2266
810f2256
JD
2267 * xfns.c (x_window_to_frame, x_any_window_to_frame)
2268 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
2269 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
2270 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
2271 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
2272
2273 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
2274
2275 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
2276 (XTmouse_position, handle_one_xevent): Pass Display* to
2277 x_window_to_scroll_bar.
2278 (x_window_to_scroll_bar): Take a Display* argument.
2279 Check that display for frame is equal to Display* argument.
854c1a59 2280 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
2281 x_display_info_for_display instead. Use Display in xev instead
2282 of GDK_DISPLAY.
2283 (x_dispatch_event): Call x_display_info_for_display.
2284 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
2285 (x_connection_closed): Call xg_display_close for GTK.
2286 (x_term_init): Call xg_display_open for additional displays.
2287 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
2288 for GTK.
2289
2290 * xmenu.c (single_menu_item, mouse_position_for_popup)
2291 (x_activate_menubar): Formatting adjustments.
2292
2293 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
2294 adjustments.
2295
2296 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
2297 (xg_display_close, xg_create_default_cursor)
2298 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
2299 handling.
854c1a59
SM
2300 (xg_left_ptr_cursor): Remove.
2301 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
2302 cursor here.
2303 (xg_win_to_widget): Take Display* argument, call
2304 gdk_xid_table_lookup_for_display.
2305 (xg_create_frame_widgets, xg_get_file_name, create_menus)
2306 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
2307 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
2308 in FRAME_X_DISPLAY_INFO.
2309 (xg_get_scroll_id_for_window): Take Display* argument.
2310 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 2311 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256
JD
2312
2313 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
2314 Display* argument also. Declare xg_display_open,
2315 xg_display_close, xg_create_default_cursor.
2316
0b03cc78
JD
23172003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2318
2319 * xterm.c (x_detect_focus_change): Do not change focus frame for
2320 Enter/LeaveNotify if the current focus frame has explicit focus.
2321
77e688fa
KS
23222003-11-14 Kim F. Storm <storm@cua.dk>
2323
2324 * dispnew.c (update_text_area): Fix redisplay error when hscroll
2325 is active and first glyph is only partially visible.
854c1a59 2326
dd429b03
KH
23272003-11-13 Kenichi Handa <handa@m17n.org>
2328
2329 * xdisp.c (select_frame_for_redisplay): New function.
2330 (redisplay_internal): Record also selected_frame for
2331 unwind_redisplay. Call select_frame_for_redisplay before
2332 redrawing each frame.
2333 (unwind_redisplay): Argument changed to a cons.
2334
6d9266f4
LT
23352003-11-12 Luc Teirlinck <teirllm@auburn.edu>
2336
2337 * fns.c (Fstring_to_multibyte): Doc fix.
2338
80060eb3
KH
23392003-11-11 Kenichi Handa <handa@m17n.org>
2340
2341 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
2342
74305183
JD
23432003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2344
2345 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
2346 program specified positions.
2347
cfda993e
JD
23482003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2349
2350 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
2351
df211069
KH
23522003-11-08 Kenichi Handa <handa@m17n.org>
2353
2354 * Makefile.in (lisp): Add kannada.el.
2355 (shortlisp): Likewise.
2356
4307d534
KH
23572003-11-07 Kenichi Handa <handa@m17n.org>
2358
854c1a59
SM
2359 * coding.c (coding_allocate_composition_data):
2360 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
2361 (coding_restore_composition): Detect invalid composition data.
2362 Give Fstring and Fvector a Lispy integer, not C int.
2363
854c1a59
SM
23642003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
2365
2366 * floatfns.c (Flogb): Don't use VALMASK.
2367
2368 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
2369 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
2370
2371 * lisp.h (XINT): Move the cast to clarify what is going on.
2372 (GCTYPEMASK, XSETTYPE): Remove.
2373 (XGCTYPE): Make it an alias of XTYPE.
2374
d04103a1
JD
23752003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2376
2377 * xterm.c (x_term_init): Fix formatting.
2378
da18b5ac
JD
23792003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2380
2381 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
2382 and xg_did_tearoff.
2383
2384 * gtkutil.c: Remove variable xg_did_tearoff.
2385 (xg_have_tear_offs): New function.
2386 (tearoff_remove): Just decrease xg_detached_menus.
2387 (tearoff_activate): Increase xg_detached_menus and call
2388 tearoff_remove when tearoff is removed.
854c1a59 2389 (xg_keep_popup): Remove function.
da18b5ac
JD
2390 (create_menus): Give add_tearoff_p as argument to recursive
2391 call to create_menus.
2392 (xg_create_widget): Use variables instead of multiple
2393 strcmp. Tell create_menus to create tear off only for
2394 menu bar menus.
2395 (xg_update_menubar): Change title for a detached menu also.
2396 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
2397 of deep_p.
2398 (xg_initialize): Initialize xg_detached_menus, remove
2399 initialization of xg_did_tearoff.
2400
2401 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
2402 xg_have_tear_offs returns non-zero.
2403 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
2404 call to xg_keep_popup.
2405
64d4923e
AC
24062003-11-01 Andrew Choi <akochoi@shaw.ca>
2407
2408 * macterm.c (XTread_socket): Handle menubar selection and grow
2409 window only for mouseDown events.
854c1a59 2410
6cc8bc07
JD
24112003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2412
2413 * xterm.c (x_term_init): For GTK part, increase x_initialized
2414 to check for more than one display. Use error instead of return 0.
2415
043131c4
AC
24162003-10-31 Andrew Choi <akochoi@shaw.ca>
2417
854c1a59 2418 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
2419 (copy_dysymtab): Call it.
2420
bdda99a1
LT
24212003-10-31 Luc Teirlinck <teirllm@auburn.edu>
2422
2423 * eval.c (Fdefvaralias): Doc fix.
2424
800f42ff 24252003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
2426
2427 * data.c (Fsetplist): Doc fix.
2428
ef35b389
LK
24292003-10-14 Lute Kamstra <lute@gnu.org>
2430
2431 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 2432
ef35b389 24332003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 2434
07107abc
KS
2435 * window.c (Fset_window_margins): Simplify arg checking.
2436
f7005886
RS
24372003-10-13 Richard M. Stallman <rms@gnu.org>
2438
2439 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
2440 (print_partial_compiled_pattern): Replace assert with a printout.
2441 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
2442
2443 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
2444
2445 * window.c (Fset_window_margins): Allow only integers as args.
2446 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
2447 Doc fixes.
2448
9c0c2af5
LK
24492003-10-13 Lute Kamstra <lute@gnu.org>
2450
2451 * window.c (Fset_window_fringes): Elaborate docstring.
2452
3f080e4e
AC
24532003-10-12 Andrew Choi <akochoi@shaw.ca>
2454
854c1a59 2455 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 2456
3f080e4e
AC
2457 * s/darwin.h (GC_MARK_STACK): Define.
2458
0aa513ed
JD
24592003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2460
2461 * window.c (shrink_windows): New function.
2462 (size_window): Call shrink_windows to calculate window sizes when
2463 shrinking frame with more than one window.
2464
6aa8858a
KS
24652003-10-12 Kim F. Storm <storm@cua.dk>
2466
2467 * xdisp.c (compute_fringe_widths): Doc fix.
2468
c2164d91
KH
24692003-10-08 Kenichi Handa <handa@m17n.org>
2470
854c1a59 2471 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 2472
f82ac129
KH
24732003-10-07 Kenichi Handa <handa@m17n.org>
2474
2475 * coding.c (Qcoding_system_define_form): New variable.
2476 (syms_of_coding): Intern and staticpro it.
2477 (Fcheck_coding_system): Try to autoload the definition of
2478 CODING-SYSTEM.
2479
9296c947
LT
24802003-10-05 Luc Teirlinck <teirllm@auburn.edu>
2481
2482 * fns.c (Frequire): Doc fix.
2483
c1f0671a
JD
24842003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2485
3d8c3826
JD
2486 * xfns.c (Fx_send_client_event): New function as a base for
2487 manipulating extended window manager hints.
6dc15d98 2488 (Fx_send_client_event): Remove unused variable s.
3d8c3826 2489
068ae0fd
JD
2490 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
2491 that function is removed.
2492
2493 * xterm.c (x_set_offset): Use move_offset_left/top instead of
2494 x/y_pixels_outer_diff.
2495 (x_check_expected_move): Calculate move_offset_left/top.
2496
2497 * xterm.h (struct x_output): New members: move_offset_top/left.
2498
854c1a59 2499 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
2500 call x_set_offset directly.
2501
2502 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
2503
96f09305
JD
2504 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
2505
2506 * xterm.c (x_delete_display): Free font names and font_encoder
2507 in dpyinfo->font_table.
2508
854c1a59
SM
2509 * xfns.c (Fx_close_connection): Only call XFreeFont here.
2510 Move xfree of font names to x_delete_display.
96f09305 2511
c1f0671a
JD
2512 * xterm.h (struct x_display_info): New member, wm_type.
2513 (struct x_output): New members, expected_top/left and
2514 check_expected_move.
2515
2516 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
2517 is received.
854c1a59
SM
2518 (handle_one_xevent): Rename x_check_expected_move from
2519 x_check_fullscreen_move.
c1f0671a
JD
2520 (x_set_offset): Only add WM decoration sizes to modified_top/left
2521 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 2522 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
2523 Removed fullscreen specific code. Use check_expected_move,
2524 expected_left/top instead. Also, set wm_type.
2525 (x_term_init): Initialize wm_type to unknown.
2526
2527 * frame.c (x_fullscreen_move): Remove addition of WM decoration
2528 sizes to move_x/y.
2529
be2fdba9
KH
25302003-10-03 Kenichi Handa <handa@m17n.org>
2531
2532 * macterm.c (x_load_font): Clear all members of FONTP before start
2533 filling them.
2534
25352003-10-02 Kenichi Handa <handa@m17n.org>
2536
2537 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
2538 before calling find_ccl_program_func. Call find_ccl_program_func
2539 only when fontp->font_encoder is not NULL.
2540
2541 * xterm.c (x_load_font): Clear all members of FONTP before start
2542 filling them.
2543
26a6e439
JPW
25442003-10-03 John Paul Wallington <jpw@gnu.org>
2545
2546 * keymap.c (map_keymap): Don't abort when binding is a vector.
2547
0d4c2dc2
JR
25482003-10-02 Jason Rumney <jasonr@gnu.org>
2549
854c1a59
SM
2550 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
2551 Sync dependencies with Makefile.in.
a63cf46f
JR
2552 (alloca.o): Remove.
2553
0d4c2dc2
JR
2554 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
2555 filling them.
2556
2557 * w32bdf.c (w32_load_bdf_font): Likewise.
2558
ab8f7d5c
RS
25592003-09-30 Richard M. Stallman <rms@gnu.org>
2560
2561 * term.c (set_tty_color_mode): Calculate current_mode_spec
2562 regardless of value of VAL.
2563
854c1a59 2564 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
2565 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
2566 Handle over_used when splitting UNDER.
2567
a64387ee 25682003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ab8f7d5c
RS
2569
2570 * regex.c (regex_compile): Free the stack when returning from function.
2571
3413f972
KH
25722003-09-28 Kenichi Handa <handa@m17n.org>
2573
2574 * fontset.c (Finternal_char_font): Change return value to
2575 cons (FONT-NAME . GLYPH-CODE).
2576
a6eeaa81 25772003-09-28 Eli Zaretskii <eliz@gnu.org>
40409f05
EZ
2578
2579 * term.c (tty_setup_colors): Treat any negative argument as -1.
2580
f98ddc99
KH
25812003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
2582
2583 * process.c (send_process): Delete unused temp_buf.
2584
66c8f1a8
DL
25852003-09-26 Dave Love <fx@gnu.org>
2586
2587 * xterm.c (x_bitmap_mask): Declare.
2588
ca716c26
DL
25892003-09-25 Dave Love <fx@gnu.org>
2590
2591 * Makefile.in (fns.o): Depend on md5.h.
2592
fbe57420
KS
25932003-09-25 Kim F. Storm <storm@cua.dk>
2594
2595 * window.c (set_window_buffer): Fix redisplay problems when
2596 switching between buffers with different display margin widths.
2597
ef6ae4ff
KS
25982003-09-23 Kim F. Storm <storm@cua.dk>
2599
2600 * process.c (set_socket_option): Fix :bindtodevice option.
2601 (Fset_network_process_option): Update process contact list when
2602 setting option succeeds.
2603 (Fmake_network_process): Doc fix.
2604
68e03c1c
DL
26052003-09-23 Dave Love <fx@gnu.org>
2606
7146d1c1 2607 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 2608
a6eeaa81 26092003-09-22 Eli Zaretskii <eliz@gnu.org>
2f809aae
EZ
2610
2611 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
2612 color mode is an integer number (it could be -1).
2613
8fe7d8c8
RS
26142003-09-22 Richard M. Stallman <rms@gnu.org>
2615
2616 * intervals.c (graft_intervals_into_buffer): Correct the main loop
2617 in the case where OVER is longer than UNDER.
2618
2f71b5ea
MY
26192003-09-22 Masatake YAMATO <jet@gyve.org>
2620
7146d1c1 2621 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 2622 `vertical_type'.
7146d1c1 2623
0c4da023
KS
26242003-09-21 Kim F. Storm <storm@cua.dk>
2625
2626 * frame.c (Vdefault_frame_scroll_bars): New variable.
2627 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
2628 (syms_of_frame): DEFVAR_LISP it, and initialize according to
2629 window-system default scroll bar position.
2630
b648413b
KS
2631 * window.c (Fwindow_scroll_bars): Doc fix.
2632
8f5b9e34
JD
26332003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2634
854c1a59 2635 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 2636
b0f23edf
RS
26372003-09-19 Richard M. Stallman <rms@gnu.org>
2638
2639 * atimer.h: Don't include lisp.h.
2640 (P_): Define it here (as well as elsewhere).
2641
2642 * print.c (Fprin1_to_string): Move the PRINTPREPARE
2643 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
2644
2645 * data.c (Fvariable_binding_locus): New function.
2646 (syms_of_data): defsubr it.
2647 (Flocal_variable_p): Delete duplicate call to indirect_variable.
2648
e1283999
DL
26492003-09-18 Dave Love <fx@gnu.org>
2650
ad5f3636
DL
2651 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
2652
e1283999
DL
2653 * process.c (Fnetwork_interface_info): Fix type error.
2654 (Fnetwork_interface_list): Doc fix.
2655 (read_process_output, read_process_output): Delete unused var.
2656
b8c7fd71
KS
26572003-09-17 Kim F. Storm <storm@cua.dk>
2658
2659 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
2660 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
2661 (Fnetwork_interface_info): Check that ifreq struct has required
2662 fields before accessing them; this requires that those fields are
2663 defined as macros, which may be too restrictive on some platforms,
2664 but it is better than failing on other platforms.
2665 (syms_of_process): Only defsubr above fns when included.
2666
11e0a411
DL
26672003-09-17 Dave Love <fx@gnu.org>
2668
2669 * unexalpha.c: Don't include varargs.h.
2670
e9c50801
KS
26712003-09-17 Kim F. Storm <storm@cua.dk>
2672
2673 * process.c (Fset_process_sentinel): Add sentinel to childp plist
2674 for network process.
2675 (socket_options): Add `:' prefix to option names. Add optbit field.
2676 (set_socket_option): Remove no_error arg and special handling of s < 0.
2677 Return 1<<optbit for known option, 0 for unknown.
2678 Do not interpret 0 as false for boolean option (only nil).
2679 Pass failed option and value to report_file_error.
7146d1c1 2680 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
2681 (Fset_network_process_option): New function to set just one option.
2682 (Fmake_network_process): Allow :coding arg to be a cons.
2683 Allow :server arg to be an integer specifying backlog size.
2684 Remove :options arg, and allow options to be specified directly
2685 as :KEY, VALUE pairs. Parse these options before binding socket.
2686 As before, :reuseaddr t is default for a server process, but this
2687 can now be disabled by specifying :reuseaddr nil.
2688 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
2689 (init_process): Availability of network options is now checked with
2690 simpler syntax (featurep 'make-network-process :OPTION); use loop to
2691 setup features.
2692 (syms_of_process): Fix defsubr's for the replaced functions.
2693
a0fc3644
DL
26942003-09-16 Dave Love <fx@gnu.org>
2695
2696 * Makefile.in: Depend on coding.h.
2697
6df2a645
KS
26982003-09-14 Kim F. Storm <storm@cua.dk>
2699
2700 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
2701 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
2702 (syms_of_process): Defsubr them.
2703
2704 * config.in: Regenerate.
7146d1c1
SM
2705
27062003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
2707
2708 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
2709 * m/news-r6.h (XUNMARK): Remove.
2710 * m/mips.h (XUNMARK): Remove.
2711 * m/mips-siemens.h (XUNMARK): Remove.
2712 * m/iris4d.h (XUNMARK): Remove.
2713 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
2714
0930c1a1
SM
27152003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
2716
31003b9e
SM
2717 * lisp.h (VALBITS): Don't remove 1 for the markbit.
2718 (union Lisp_Object): Use unsigned int for types. Remove markbit.
2719 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
2720 (XTYPE): Use unsigned right-shift.
2721 (XMARKBIT, XMARK, XUNMARK): Remove.
2722
0930c1a1
SM
2723 * alloc.c (init_intervals, init_symbol, init_marker):
2724 Don't preallocate anything.
2725 (Fgarbage_collect, mark_object): Ignore the markbit.
2726
2727 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
2728
19bb0fcd 27292003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
2730
2731 * xdisp.c (pint2hrstr): New function.
2732 (decode_mode_spec): Add `%i' and `%I' specs.
2733 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
2734 for `mode-line-format'.
2735
03bb6a06
AS
27362003-09-07 Andreas Schwab <schwab@suse.de>
2737
2738 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
2739 avoid warning.
2740
a6eeaa81 27412003-09-07 Eli Zaretskii <eliz@gnu.org>
2063d89c 2742
0930c1a1 2743 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 2744
ed159bbf
KS
27452003-09-03 Kim F. Storm <storm@cua.dk>
2746
2747 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
2748 change (superseded by 2002-08-30 change); the default blink-off
2749 cursor is now again "no cursor".
2750
fe64a394
JR
27512003-09-01 Jason Rumney <jasonr@gnu.org>
2752
2753 * makefile.w32-in (alloca.o): Remove.
2754 (coding.o): Depend on intervals.h
2755 (emacs.o, bytecode.o): Depend on window.h
2756
c0175e24
DL
27572003-09-01 Dave Love <fx@gnu.org>
2758
2759 * Makefile.in (alloca.o): Remove commands.
2760 (coding.o): Depend on intervals.h composite.h window.h.
2761 (emacs.o): Depend on window.h keyboard.h keymap.h.
2762 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
2763 (bytecode.o): Depend on window.h.
2764
a24d4cb2
JR
27652003-08-31 Jason Rumney <jasonr@gnu.org>
2766
4bc2315e
JR
2767 * w32term.c (w32_per_char_metric): Allow cached metrics to be
2768 returned even when font_type is unknown.
2769
a24d4cb2
JR
2770 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
2771
9d35adc7
JD
27722003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2773
2774 * xterm.c (x_term_init): Initialize new fields in x_display_info.
2775
2776 * xterm.h (struct x_display_info): Add red/green/blue_bits and
2777 *_offset.
2778
2779 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
2780 calculate pixel value.
2781
6f68b035
GM
27822003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
2783
0930c1a1
SM
2784 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
2785 Don't tell redisplay display is accurate when it's actually been
2786 paused for pending input.
6f68b035 2787
4828b4d7
RS
27882003-08-29 Richard M. Stallman <rms@gnu.org>
2789
2790 * dispnew.c (adjust_glyph_matrix): Call window_box
2791 whenever W is nonzero.
2792
2793 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
2794 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 2795 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
2796 Use indirect_variable to trace thru variable aliases.
2797
2798 * config.in: Updated.
2799
2800 * callint.c (Fcall_interactively): Save and restore
2801 Vthis_command, Vthis_original_command, real_this_command,
2802 and current_kboard->Vlast_command.
2803
2804 * abbrev.c (Fexpand_abbrev): Insert before deleting.
2805
e019878d
GM
28062003-08-29 Gerd Moellmann <gerd@gnu.org>
2807
2808 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
2809
85478bc6
KH
28102003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
2811
0930c1a1 2812 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
2813 (decode_coding_sjis_big5): Likewise.
2814
07ce82d3
JR
28152003-08-27 Jason Rumney <jasonr@gnu.org>
2816
d3703de3
JR
2817 * w32.c (sys_pipe): Protect against file descriptor overflow.
2818
ee4a01d1
JR
2819 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
2820
07ce82d3
JR
2821 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
2822
a64387ee 28232003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
72d19c66
LK
2824
2825 * xfns.c (Vgtk_version_string): New variable.
2826 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
2827
a6eeaa81 28282003-08-24 Eli Zaretskii <eliz@gnu.org>
5459e42a 2829
0930c1a1 2830 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 2831
5459e42a
EZ
2832 * Makefile.in (msdos.o): Depend on intervals.h.
2833
0930c1a1 2834 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 2835
231d6cfb
JD
28362003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2837
2838 * xterm.h (struct x_display_info): New fields: client_leader_window
2839 and Xatom_wm_client_leader.
2840
2841 * xterm.c (x_initialize): Move call to x_session_initialize to ...
2842 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
2843
2844 * xsmfns.c (create_client_leader_window): New function.
2845 (x_session_initialize): Call create_client_leader_window, take
2846 dpyinfo as argument.
2847
2848 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
2849
2850 * Makefile.in (xsmfns.o): Add more depenedencies.
2851
afa88464
DL
28522003-08-21 Dave Love <fx@gnu.org>
2853
2854 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
2855
f730033e
KH
28562003-08-21 Kenichi Handa <handa@m17n.org>
2857
2858 * term.c (term_init): Fix previous change; don't rely on the
2859 length of `buffer' if TERMINFO is defined.
2860
6dca786c
DL
28612003-08-20 Dave Love <fx@gnu.org>
2862
2863 * atimer.h: Include lisp.h.
2864
2865 * lisp.h (EMACS_LISP_H): New.
2866 (popup_activated_flag): Don't declare.
2867
2868 * alloca.c: Some merging with gnulib. Change logic and doc
2869 concerning (x)malloc/(x)free -- no longer Emacs-specific.
2870 [DO_BLOCK_INPUT]: Don't include lisp.h.
2871 (xmalloc, xfree): Declare.
2872 (malloc): Don't declare.
2873
0930c1a1 2874 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
2875 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
2876 atimer.h, blockinput.h.
2877
2878 * alloc.c (lisp_align_malloc): Change type of `aligned'.
2879
2880 * alloca.s: Removed.
2881
3a06a6d9
RS
28822003-08-19 Gerd Moellmann <gerd@gnu.org>
2883
2884 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
2885 use -lncurses.
2886
2887 * term.c (term_init): Use a buffer of size 4096 for tgetent since
2888 FreeBSD returns something longer than 2044. Abort if the end of
2889 the buffer is overwritten.
2890
27eeee55
MB
28912003-08-19 Miles Bader <miles@gnu.org>
2892
2893 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
2894
2f297815
GM
28952003-08-19 Gerd Moellmann <gerd@gnu.org>
2896
f4446bbf
GM
2897 * alloc.c (lisp_align_malloc): Check for memory full when
2898 allocating ablocks, which also avoids freeing a pointer into an
2899 ablocks structure.
2900
2901 * puresize.h (BASE_PURESIZE): Increase to 1100000.
2902
0930c1a1 2903 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 2904
0e7d7aae
RS
29052003-08-16 Richard M. Stallman <rms@gnu.org>
2906
2907 * editfns.c (Fencode_time): Doc fix.
2908
29092003-08-16 David Ponce <david@dponce.com>
2910
2911 * fileio.c (Fwrite_region): Fix conditional expression to issue
2912 the right message.
2913
29142003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
2915
2916 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 2917 Set default value to 1.
0e7d7aae 2918
5d551295
KH
29192003-08-15 Kenichi Handa <handa@m17n.org>
2920
2921 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
2922 what autoscaled.
2923 (best_matching_font): Once we find a better scalable font, set
2924 non_scalable_has_exact_height_p to 1.
2925 (try_font_list): Call try_alternative_families to try any family
2926 with the given registry.
2927
1661e56b
AS
29282003-08-09 Andreas Schwab <schwab@suse.de>
2929
f29181dc
AS
2930 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
2931
1661e56b
AS
2932 * print.c (print_string): Fix printing of multibyte string with
2933 nontrivial printcharfun.
2934
465aa50a
JD
29352003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2936
2937 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
2938
2939 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
2940
e430e5ba
KH
29412003-07-31 Kenichi Handa <handa@m17n.org>
2942
2943 * process.c (read_process_output): Return the actually read bytes
2944 instead of the result of decoding.
2945
97e7188e
KH
29462003-07-31 Kenichi Handa <handa@m17n.org>
2947
2948 * xterm.h (struct x_bitmap_record): New member have_mask.
2949
2950 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
2951 to 0.
2952 (x_create_bitmap_from_file): Likewise.
2953 (x_destroy_bitmap): Check have_mask member before freeing a mask.
2954 (x_destroy_all_bitmaps): Likewise.
2955 (x_create_bitmap_mask): Set have_mask member to 1.
2956
b53094d6
RS
29572003-07-30 Richard M. Stallman <rms@gnu.org>
2958
2959 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
2960
631f2082
JD
29612003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2962
2963 * gtkutil.c (xg_mark_data): Update calls to mark_object.
2964
c855f2ca
RS
29652003-07-29 Richard M. Stallman <rms@gnu.org>
2966
2967 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
2968 Conditionalize XIM code on HAVE_XIM.
2969
2970 * fns.c (Fclear_string): New function.
2971 (syms_of_fns): defsubr it.
2972
17e6d491
KH
29732003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
2974
0930c1a1 2975 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 2976
29ea8ae9
SM
29772003-07-22 Stefan Monnier <monnier@cs.yale.edu>
2978
2979 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
2980
2981 * buffer.c (delete_all_overlays): New function.
2982 * buffer.h (delete_all_overlays): Declare.
2983 * coding.c (run_pre_post_conversion_on_str):
2984 * print.c (temp_output_buffer_setup):
2985 * fileio.c (Finsert_file_contents):
2986 * minibuf.c (get_minibuffer): Use it.
2987
1dd7ccf2
AC
29882003-07-22 Andrew Choi <akochoi@shaw.ca>
2989
2990 * unexmacosx.c (unexec_regions_sort_compare):
2991 (unexec_regions_merge): New functions. Sort and merge unexec
2992 regions before dumping them.
2993
f57bd967
DL
29942003-07-22 Dave Love <fx@gnu.org>
2995
2996 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
2997
7cdee936
SM
29982003-07-21 Stefan Monnier <monnier@cs.yale.edu>
2999
3000 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
3001 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
3002 MARKBIT as the gcmarkbit for strings.
3003
e50886d3
RS
30042003-07-21 Richard M. Stallman <rms@gnu.org>
3005
3006 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
3007
29ea8ae9 3008 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
3009 (syms_of_fns): Corresponding change.
3010
3011 * alloc.c (syms_of_alloc): Doc fixes.
3012
30132003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
3014
3015 * s/netbsd.h: Use -Wl syntax.
3016
fdc39b59
RS
30172003-07-17 Richard M. Stallman <rms@gnu.org>
3018
3019 * xterm.c (xim_initialize): Redo 6/24 change.
3020
9c53385f
SM
30212003-07-15 Stefan Monnier <monnier@cs.yale.edu>
3022
3023 * buffer.c (copy_overlays): Use EMACS_INT for positions.
3024 (Fswitch_to_buffer): Don't signal an error when switching to the same
3025 buffer in a dedicated window.
3026
3027 * alloc.c: Use bitmaps for cons, as was done for floats.
3028 (init_float, init_cons): Let the normal code allocate the first block.
3029 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
3030 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
3031 New macros.
3032 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
3033 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
3034 (live_cons_p): Check the pointer is not past the `conses' array.
3035 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
3036 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
3037 (survives_gc_p): Use CONS_MARKED_P and simplify.
3038 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
3039
dde13196
PE
30402003-07-13 Paul Eggert <eggert@twinsun.com>
3041
3042 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
3043 puts it into BSS instead, at least on Solaris 8 and 9.
3044 This is a valid optimization, and it may occur on other platforms,
3045 so Emacs should not assume that initializing a static variable to
3046 zero puts it into data.
3047 * alloc.c (pure, staticvec):
3048 Initialize these arrays to nonzero, so that they're not
3049 put into BSS by that optimization.
3050
a801bc34
SM
30512003-07-13 Stefan Monnier <monnier@cs.yale.edu>
3052
3053 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
3054 (lisp_align_malloc): Use posix_memalign is available.
3055 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
3056 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
3057 for consistency. Update users.
3058
0c8b2afa
RS
30592003-07-13 Richard M. Stallman <rms@gnu.org>
3060
3061 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
3062
668c2ab0
JB
30632003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
3064
3065 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
3066 and use the Gtk+ function gtk_window_icon_from_file if available.
3067
3068 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
3069 handle mask of bitmaps.
3070 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
3071 mask property.
3072 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
3073
3074 * xterm.h (xg_set_icon): New function.
3075
800bebe3
RS
30762003-07-12 Paul Eggert <eggert@twinsun.com>
3077
3078 * unexelf.c (unexec): Consider a section to precede the .bss
3079 section if its addresses overlap that of .bss.
3080
69e38995
RS
30812003-07-12 Richard M. Stallman <rms@gnu.org>
3082
3083 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
3084
3085 * config.in (HAVE_CRTIN): Add #undef.
3086 (INLINE): Really inline only if OPTIMIZE is defined.
3087
3088 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
3089 END_FILES_1.
3090 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 3091 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
3092
3093 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
3094 (TERMINFO): Define.
3095 (LIBS_TERMCAP): Define.
3096 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
3097
3098 * xfns.c: Include libpng/png.h instead of png.h.
3099
f1d0c238
AS
31002003-07-11 Andreas Schwab <schwab@suse.de>
3101
3102 * buffer.c (modify_overlay): Update prototype.
3103 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
3104 Likewise.
3105
5f6bf5fe
SM
31062003-07-09 Stefan Monnier <monnier@cs.yale.edu>
3107
3108 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
3109 (struct interval): Move to intervals.h.
3110 (struct Lisp_Marker): Use EMACS_INT for position info.
3111 (forward_point): Remove prototype of defunct function.
3112 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
3113 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
3114 (syms_of_textprop, set_text_properties): Remove prototypes that are
3115 already in intervals.h.
3116
3117 * intervals.h (struct interval): Move from lisp.h.
3118 Use EMACS_INT for position and size info.
3119
3120 * coding.c: Include intervals.h for Fset_text_properties.
3121
3122 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
3123 position and length information.
3124
2765b457
SM
31252003-07-09 Stefan Monnier <monnier@cs.yale.edu>
3126
3127 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
3128 position and length information.
3129
2410d73a
SM
31302003-07-09 Stefan Monnier <monnier@cs.yale.edu>
3131
3132 Change overlays_after and overlays_before so the overlays themselves
3133 are linked into lists, rather than using cons cells. After all each
3134 Lisp_Misc already occupies 5 words, so we can add a `next' field to
3135 Lisp_Overlay for free and save up one cons cell per overlay (not
3136 to mention one indirection when traversing the list of overlay).
3137
3138 * lisp.h (struct Lisp_Overlay): New field `next'.
3139
3140 * buffer.h (struct buffer): Change overlays_before and overlays_after
3141 from Lisp lists of overlays to pointers to overlays.
3142
3143 * buffer.c (overlay_strings, recenter_overlay_lists):
3144 Fix typo in eassert in last commit.
3145 (unchain_overlay): New function.
3146 (add_overlay_mod_hooklist): Use AREF.
3147 (copy_overlays, reset_buffer, overlays_at, overlays_in)
3148 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
3149 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
3150 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
3151 (report_overlay_modification, evaporate_overlays, init_buffer_once):
3152 Adjust to new type of overlays_(before|after).
3153
3154 * alloc.c (mark_object): Mark the new `next' field of overlays.
3155 (mark_buffer): Manually mark the overlays_(after|before) fields.
3156
3157 * coding.c (run_pre_post_conversion_on_str):
3158 * editfns.c (overlays_around):
3159 * xdisp.c (load_overlay_strings):
3160 * fileio.c (Finsert_file_contents):
3161 * indent.c (current_column):
3162 * insdel.c (signal_before_change, signal_after_change):
3163 * intervals.c (set_point_both):
3164 * print.c (temp_output_buffer_setup): Use new type for
3165 overlays_(before|after).
3166
04812929
SM
31672003-07-08 Stefan Monnier <monnier@cs.yale.edu>
3168
3169 * buffer.c (report_overlay_modification): Don't run hooks while
3170 traversing the list of overlays.
3171
3172 * buffer.h (struct buffer): Use an int for overlay_center.
3173 (overlays_at, evaporate_overlays, recenter_overlay_lists)
3174 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
3175
3176 * buffer.c (reset_buffer, recenter_overlay_lists)
3177 (adjust_overlays_for_insert, adjust_overlays_for_delete)
3178 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
3179 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
3180 (overlays_at, evaporate_overlays, recenter_overlay_lists)
3181 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
3182
3183 * xdisp.c (fast_find_position): Remove unused var.
3184
3185 * cmds.c (Qexpand_abbrev): New sym.
3186 (syms_of_cmds): Initialize it.
3187 (internal_self_insert): Use it to call expand-abbrev.
3188
2e7ecf15
KS
31892003-07-09 Kim F. Storm <storm@cua.dk>
3190
3191 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if emacs
3192 was configured with --without-xim.
42f81f64 3193 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 3194
c6de56a0
RS
31952003-07-07 Richard M. Stallman <rms@gnu.org>
3196
3197 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
3198
3199 * alloc.c (Fgarbage_collect): Doc fix.
3200
b93fb365
KH
32012003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
3202
3203 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
3204
bfe1a3f7
SM
32052003-07-06 Stefan Monnier <monnier@cs.yale.edu>
3206
04812929
SM
3207 * minibuf.c (read_minibuf): UNGCPRO before returning.
3208 (Ftry_completion, Fall_completions): Doc fix.
3209
bfe1a3f7
SM
3210 * alloc.c (live_float_p): Check that p is not past the `floats' array,
3211 now that `floats' is not the last element of the struct any more.
3212
ee79d1aa
JR
32132003-07-06 Jason Rumney <jasonr@gnu.org>
3214
3215 * w32term.h (ClipboardSequence_Proc): New type.
3216
3217 * w32fns.c (clipboard_sequence_fn): New variable.
3218 (globals_of_w32fns): Initialize it.
3219
3220 * w32select.c (last_clipboard_sequence_number): New variable.
3221 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
3222 number if possible.
3223
49723c04
SM
32242003-07-06 Stefan Monnier <monnier@cs.yale.edu>
3225
4698665f
SM
3226 * m/amdx86-64.h (MARKBIT):
3227 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
3228 MARKBIT and ARRAY_MARK_FLAG any more.
3229
3230 * m/hp800.h (XSETMARKBIT):
3231 * m/sr2k.h (XSETMARKBIT):
3232 * lisp.h (XSETMARKBIT): Remove unused macro.
3233
49723c04
SM
3234 * lisp.h (mark_object): Change prototype.
3235
3236 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
3237 (last_marked): Change accordingly.
3238 (mark_interval, mark_maybe_object, mark_maybe_pointer)
3239 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
3240 (mark_buffer): Update calls to mark_object.
3241
3242 * bytecode.c (mark_byte_stack):
3243 * fns.c (sweep_weak_table):
3244 * keyboard.c (mark_kboards): Update calls to mark_object.
3245
1d660eca
JR
32462003-07-06 Jason Rumney <jasonr@gnu.org>
3247
3248 * alloc.c (struct ablock): Only include padding when there is some.
3249
618b5ae4
SM
32502003-07-04 Stefan Monnier <monnier@cs.yale.edu>
3251
3252 * alloc.c (ALIGN): Add casts to simplify usage.
3253 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
3254 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
3255 (struct ablock, struct ablocks): New types.
3256 (free_ablock): New global var.
3257 (lisp_align_malloc, lisp_align_free): New functions.
3258 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
3259 (struct float_block): Reorder and add gcmarkbits.
3260 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
3261 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
3262 (init_float, make_float): Use lisp_align_malloc.
3263 (free_float, live_float_p): Don't use `type' any more.
3264 (make_float): Use FLOAT_UNMARK to access to mark bit.
3265 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
3266 Use FLOAT_MARKED_P to access the mark bit.
3267 (pure_alloc): Simplify use of ALIGN.
3268 (mark_object): Use FLOAT_MARK to access the mark bit.
3269 (gc_sweep): Use new macros to access the float's mark bit.
3270 (init_alloc_once): Init free_ablock.
3271
3272 * lisp.h (struct Lisp_Float): Remove unused field `type'.
3273
3ef06d12
SM
32742003-06-27 Stefan Monnier <monnier@cs.yale.edu>
3275
3276 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
3277 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
3278 (allocate_buffer): Move.
3279 (string_bytes): Don't mask markbit of `size_byte'.
3280 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
3281 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
3282 Use the `size' field of buffers (rather than the `name' field) for
3283 the mark bit, as is done for all other vectorlike objects.
3284 Use the new macros to access the mark bit of vectorlike objects.
3285
e81043aa
RS
32862003-06-26 Richard M. Stallman <rms@gnu.org>
3287
3288 * puresize.h (BASE_PURESIZE): Increment base size.
3289
3290 * xdisp.c (fast_find_position): Enable Gerd's new definition.
3291
3292 * xterm.c (xim_initialize): Undo previous change.
3293
2d0834cc
SM
32942003-06-26 Stefan Monnier <monnier@cs.yale.edu>
3295
3296 * alloc.c (survives_gc_p): Simplify.
3297
3298 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
3299
3300 * window.c (Fset_window_dedicated_p): Simplify.
3301 (display_buffer_1): Don't raise the win from which minibuf was entered.
3302 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
3303 (Fminibuffer_selected_window): Simplify.
3304
3305 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
3306
3307 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
3308 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
3309
3310 * insdel.c (check_markers, adjust_markers_for_delete)
3311 (adjust_markers_for_insert, adjust_markers_for_replace)
3312 (prepare_to_modify_buffer, RESTORE_VALUE):
3313 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
3314 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
3315 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
3316 * alloc.c (Fmake_marker, free_marker, gc_sweep):
3317 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
3318 * editfns.c (save_excursion_restore, transpose_markers):
3319 * window.c (delete_window):
3320 * xdisp.c (message_dolog): Update for new types.
3321
d54ae3d8
JD
33222003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3323
a5f696ac
JD
3324 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
3325 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 3326 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
3327
3328 * frame.c (make_frame): Initialize default_face_done_p.
3329
3330 * frame.h (struct frame): Add default_face_done_p.
3331
d54ae3d8
JD
3332 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
3333 will be defined.
3334
2336fe58
SM
33352003-06-25 Stefan Monnier <monnier@cs.yale.edu>
3336
3337 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
3338 Initialize the new field `gcmarkbit'.
3339 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
3340 (mark_interval_tree): Don't mark the tree separately from the nodes.
3341 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
3342 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
3343 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
3344
3345 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
3346 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
3347 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
3348 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
3349 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
3350
bcea31c2
DL
33512003-06-24 Dave Love <fx@gnu.org>
3352
3353 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
3354
3355 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
3356 from gnulib.
3357
2601f59e
RS
33582003-06-21 Richard M. Stallman <rms@gnu.org>
3359
3360 * fileio.c (Fwrite_region): Alternate messages
3361 for append and partial write.
3362
3363 * keyboard.c (read_key_sequence): When converting upcase fn key to
3364 downcase, update fkey and keytran so `backspace' gets translated.
3365
3366 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
3367
3368 * process.c (wait_reading_process_input): Don't signal SIGIO
3369 in batch mode.
3370
b5d2c621
KH
33712003-06-17 Kenichi Handa <handa@m17n.org>
3372
3373 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
3374 composite.h.
3375
3376 * xselect.c: Don't include charset.h, coding.h, composite.h.
3377 (Qforeign_selection): New variable.
3378 (syms_of_xselect): Intern and static it.
3379 (selection_data_to_lisp_data): Return a unibyte string made from
3380 data with `foreign-selection' text property.
3381
6793bc63
SM
33822003-06-15 Stefan Monnier <monnier@cs.yale.edu>
3383
3384 * termhooks.h (EVENT_INIT): New macro.
3385
3386 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
3387
3388 * alloc.c (mark_kboards): Move to keyboard.c.
3389
3390 * keyboard.c (record_asynch_buffer_change, read_avail_input):
3391 * xterm.c (x_dispatch_event):
3392 * xmenu.c (find_and_call_menu_selection):
3393 * xdisp.c (handle_tool_bar_click):
3394 * w32menu.c (menubar_selection_callback):
3395 * sysdep.c (kbd_input_ast, read_input_waiting):
3396 * msdos.c (dos_rawgetc):
3397 * macterm.c (mac_check_for_quit_char):
3398 * macmenu.c (menubar_selection_callback):
3399 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
3400 data to kbd_buffer_store_event.
3401
b3ea810c
KS
34022003-06-15 Kim F. Storm <storm@cua.dk>
3403
3404 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 3405 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 3406
b8f75eda
KG
34072003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
3408
3409 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
3410
ba92ce48
KH
34112003-06-12 Kenichi Handa <handa@m17n.org>
3412
3413 * fileio.c (Fwrite_region): Save and restore restriction.
3414
b80263be
DL
34152003-06-12 Dave Love <fx@gnu.org>
3416
3417 * alloca.c (alloca): Declare arg as size_t.
3418
6793bc63
SM
3419 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
3420 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 3421
b23c0a83
DL
34222003-06-11 Dave Love <fx@gnu.org>
3423
3424 * search.c (shrink_regexp_cache): Use xrealloc.
3425 (syms_of_search): Use xmalloc.
3426
700e47c2
KS
34272003-06-10 Kim F. Storm <storm@cua.dk>
3428
3429 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
3430 Adjust phys_cursor.x to be relative to window box, rather than
3431 text area before checking -- to ensure cursor is redrawn when
3432 exposing window.
3433 Note: This also fixes a similar (older) bug if display margins
3434 are present.
3435
f11aa0b2
KH
34362003-06-06 Kenichi Handa <handa@m17n.org>
3437
3438 * coding.c (encoding_buffer_size): If coding->type is
3439 coding_type_ccl, double magnification on CRLF encoding.
3440
3d143690
JR
34412003-06-06 Jason Rumney <jasonr@gnu.org>
3442
3443 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
3444 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
3445
3446 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
3447 Mac too.
3448
f16205ca
DL
34492003-06-05 Dave Love <fx@gnu.org>
3450
b23c0a83
DL
3451 * strftime.c: Merge changes from gnulib.
3452
f16205ca
DL
3453 * mktime.c (__mktime_internal): Merge changes from gnulib
3454 involving year 69 and dst2.
3455
3456 Changes to merge with gnulib version and be consistent with the
3457 autoconf test:
3458
6793bc63
SM
3459 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
3460 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
3461 [HAVE_LOCALE_H]: Include locale.h.
3462 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
3463
9b87a0bc
KS
34642003-06-05 Kim F. Storm <storm@cua.dk>
3465
3466 * window.c (coordinates_in_window): Convert X and Y to window
3467 relative coordinates inside mode-line and header-line parts.
3468 Convert X and Y to margin area relative coordinates inside left
3469 and right display margin parts.
3470
5a8a15ec
JR
34712003-06-05 Jason Rumney <jasonr@gnu.org>
3472
3473 * w32fns.c (add_system_logical_colors_to_map): New function.
3474 (Fx_open_connection): Use it.
3475
01ed8ff1
SM
34762003-06-04 Stefan Monnier <monnier@cs.yale.edu>
3477
3478 * process.c (allocate_pty): Revert part of the previous patch.
3479 (Faccept_process_output): Simplify.
3480
b427b65d
JR
34812003-06-04 Jason Rumney <jasonr@gnu.org>
3482
3483 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
3484
3485 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
3486 (lispy_mouse_wheel_names): Remove.
3487 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
3488 Always define drag_and_drop_syms.
3489
3490 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
3491 WHEEL_EVENT events.
3492
914a8c47
SM
34932003-06-03 Stefan Monnier <monnier@cs.yale.edu>
3494
01ed8ff1
SM
3495 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
3496
914a8c47
SM
3497 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
3498
adcb132c
JD
34992003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3500
3501 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
3502 menu item label.
3503
be781fa7
RS
35042003-06-03 Richard M. Stallman <rms@gnu.org>
3505
3506 * window.c (Fwindow_edges): Doc fix.
3507 (Fwindow_pixel_edges, Fwindow_inside_edges)
3508 (Fwindow_inside_pixel_edges): New functions.
3509 (syms_of_window): defsubr them.
3510
3511 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
3512 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
3513
914a8c47
SM
35142003-06-02 Stefan Monnier <monnier@cs.yale.edu>
3515
3516 * dispnew.c (Fsit_for): Don't lie about the number of args.
3517
5b07197a
DL
35182003-06-02 Dave Love <fx@gnu.org>
3519
3520 * callproc.c: Use HAVE_FCNTL_H, not USG5.
3521 (syms_of_callproc) <process-environment>: Doc fix.
3522
3523 * doc.c: Use HAVE_FCNTL_H, not USG5.
3524
3525 * xfaces.c (font_rescale_ratio): Fix for K&R.
3526
3527 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
3528
3529 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
3530
3531 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
3532
3533 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
3534 (xg_create_frame_widgets): Use ENCODE_UTF_8.
3535
d7107586 3536 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
3537
3538 * xmenu.c (ENCODE_MENU_STRING): New.
3539 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
3540 Use it.
3541
3542 * coding.h (ENCODE_UTF_8): New.
3543 (Qutf_8): Declare.
3544
3545 * coding.c (Qutf_8): New.
3546 (syms_of_coding): Intern it.
3547
3548 * fns.c: Doc fixes.
3549
7335b336
KH
35502003-06-02 Kenichi Handa <handa@m17n.org>
3551
3552 * buffer.c (Fset_buffer_multibyte): Fix previous change.
3553
914a8c47
SM
35542003-06-01 Stefan Monnier <monnier@cs.yale.edu>
3555
3556 * lread.c (openp): Make sure STR is a string.
3557
9862c135
JR
35582003-06-01 David Ponce <david@dponce.com>
3559
3560 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
3561 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
3562
3563 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
3564 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
3565 (discard_mouse_events): Discard WHEEL_EVENT events too.
3566 (lispy_wheel_names, wheel_syms): New.
3567 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
3568 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
3569 defined.
914a8c47 3570 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
3571
3572 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
3573 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
3574 WHEEL_EVENT events.
3575
f984e73e
JPW
35762003-05-31 John Paul Wallington <jpw@gnu.org>
3577
3578 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
3579 timer are in lisp/emacs-lisp.
3580
1efcd78f
KH
35812003-05-31 Kenichi Handa <handa@m17n.org>
3582
458c8af4
KH
3583 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
3584 region when a buffer is changed to unibyte.
3585
1efcd78f
KH
3586 * charset.h (VALID_LEADING_CODE_P): New macro.
3587 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
3588
778e2804
KH
3589 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
3590 is nonzero, accept multibyte form of eight-bit-control chars.
3591 (decode_composition_emacs_mule): Likewise.
3592 (decode_coding_emacs_mule): Likewise.
3593 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
3594 multibyte form of eight-bit-control chars.
3595
3596 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
3597 (Finsert_file_contents): If coding-system-for-read is bound to
3598 Qauto_save_coding, use the coding system emacs-mule with special
3599 setting for recovering a file.
3600 (choose_write_coding_system): On auto saving, use the coding
3601 system emacs-mule with special setting for auto saving.
3602 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
3603
034060e4
KH
36042003-05-30 Kenichi Handa <handa@m17n.org>
3605
3606 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
3607 properly before calling ccl_driver.
3608
778e2804 3609 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4
KH
3610
3611 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
3612 nonzero.
3613 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
3614 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
3615
595f5aa5
GM
36162003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
3617
3618 * xfaces.c (realize_default_face): Do not abort if lface is
3619 non-existent - reverts change from 2003-05-19.
3620
103e0180
KH
36212003-05-29 Kenichi Handa <handa@m17n.org>
3622
3623 * coding.c (decode_coding_iso2022): Pay attention to the byte
3624 sequence of CTEXT extended segment, and retain those bytes as is.
3625
36262003-05-28 Kenichi Handa <handa@m17n.org>
3627
3628 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
3629 of CODING_REPLACEMENT_CHARACTER.
3630 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
3631 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
3632 check this flag on encoding.
3633 (encode_coding_sjis_big5): Check
3634 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
3635 (Fset_terminal_coding_system_internal): Set
3636 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
3637 instead of setting CODING_FLAG_ISO_SAFE flag in
3638 terminal_coding.flags.
3639
3640 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
3641 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
3642 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
3643
ff6a3bfb 36442003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 3645
ff6a3bfb
RS
3646 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
3647
3648 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 3649
1963c428
KS
36502003-05-28 Kim F. Storm <storm@cua.dk>
3651
3652 * xdisp.c (expose_window): Fix error in calculation of
3653 window relative coordinates of area to redisplay.
3654
2b5d4601
JR
36552003-05-27 Jason Rumney <jasonr@gnu.org>
3656
3657 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
3658
1c64a4a2
JB
36592003-05-27 David Ponce <david@dponce.com>
3660
3661 Handle W32 mouse wheel events as mouse click events, like in X.
3662
3663 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
3664 MOUSE_WHEEL_EVENT anymore.
3665
3666 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
3667 Scrolling down/up the mouse wheel is respectively mapped to mouse
3668 button 4 and 5.
3669 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
3670 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
3671 WM_MOUSEWHEEL events.
3672
2d031b89
AS
36732003-05-27 Andreas Schwab <schwab@suse.de>
3674
20464fdf
AS
3675 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
3676
2d031b89
AS
3677 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
3678 partially visible line.
3679
3680 * alloc.c (Fgarbage_collect): Fix last change.
3681
97bc76d4
JPW
36822003-05-26 John Paul Wallington <jpw@gnu.org>
3683
3684 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
3685
56613f06
SM
36862003-05-25 Stefan Monnier <monnier@cs.yale.edu>
3687
3688 * window.c (Fset_window_buffer): Add type of `keep_margins'.
3689 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
3690
3691 * window.h (window_box_text_cols): Declare.
3692
3693 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
3694 (x_draw_vertical_border): Remove unused var `f'.
3695
3696 * xfaces.c (build_scalable_font_name): Remove `unused var
3697 pixel_size' warning.
3698
3699 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
3700
3701 * unexelf.c (unexec): Remove `unused var n' warning.
3702
3703 * strftime.c (my_strftime_localtime_r): Remove `defined but
3704 unused' warning.
3705
3706 * process.c (allocate_pty): Remove `unused var stb' and
3707 `cp might be used uninitialized' warnings.
3708
3709 * dispnew.c (mode_line_string): Remove unused var `f'.
3710
3711 * coding.c (find_safe_codings): Remove unused var `i'.
3712
3713 * bytecode.c (Fbyte_code): Remove `unused val' warning.
3714
3715 * buffer.c (Fkill_buffer): Remove unused var `list'.
3716
3717 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
3718
93421a1f
JD
37192003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3720
3721 * frame.c (make_frame): Condition want_fullscreen with
3722 HAVE_WINDOW_SYSTEM.
3723
c4b8aebc
JB
37242003-05-25 Juanma Barranquero <lektu@terra.es>
3725
3726 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
3727 (Fwindow_scroll_bars): Fix typo in docstring.
3728
0416870b
KS
37292003-05-24 Kim F. Storm <storm@cua.dk>
3730
3731 The following changes serve several purposes:
3732
3733 1) Swap the position of fringes and display margins in windows, i.e.
3734 the fringes are now displayed between the margins and the text area
3735 (by default).
3736
3737 2) Allow fringe and scroll bar parameters to be set per-buffer and
3738 per-window (like display margins). Such settings are now stored
3739 in window configurations, preserved when frames are resized, and
9018a88e 3740 copied when windows are split vertically or horizontally.
0416870b
KS
3741 Several bugs related to display margins have been fixed.
3742
3743 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 3744
0416870b
KS
3745 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
3746 rather than FRAME_WIDTH (FRAME_FONT (f)).
3747
3748 5) Introduce a consistent naming of variables, members and macros
3749 depending on whether their value is measured in pixels or in
3750 canonical columns/lines. Pixel dimensions are named *_width and
3751 *_height, while canonical columns/lines are named *_cols and
3752 *_lines. Pixel positions are named *_x and *_y, while column/line
3753 positions are named *_col and *_line.
3754
3755 6) Consolidate more of the X, W32, and MAC gui code by moving
3756 common data into struct frame, and generalize it for the non-gui
3757 case by using suitable defaults.
3758
3759 7) Cleanup and consolidate the macros controlling frame and window
3760 layout into frame.h and window.h, and generalize the use of the
3761 various window_box_* functions (enhanced to handle the new fringe
3762 position and the per-window fringe and scroll bar settings).
3763
3764 * frame.h (struct frame): Rename members height to text_lines,
3765 width to text_cols, window_height to total_lines, window_width to
3766 total_cols, new_height to new_text_lines, new_width to
3767 new_text_cols. All uses changed.
3768 (struct frame): New members which consolidate common members of
3769 x_output, w32_output, and mac_output structures: left_pos,
3770 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
3771 win_gravity, size_hint_flags, border_width, internal_border_width,
3772 line_height, fringe_cols, left_fringe_width, right_fringe_width,
3773 want_fullscreen. All uses changed.
3774 (struct frame): New member column_width contaning the canonical
3775 column width, analogue to line_height. All uses changed.
3776 (struct frame): Rename members scroll_bar_pixel_width to
3777 config_scroll_bar_width, and scroll_bar_cols to
3778 config_scroll_bar_cols. All uses changed.
3779 (struct frame): New member scroll_bar_actual_width which
3780 consolidates and renames the vertical_scroll_bar_extra member of
3781 x_output, w32_output, and mac_output structures. All uses changed.
3782 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
3783 from x/w32/macterm.h files. All uses changed. Also change code
3784 which referred to f->output_data...->pixel_height.
3785 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
3786 from x/w32/macterm.h files. All uses changed. Also change code
3787 which referred to f->output_data...->pixel_width.
3788 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
3789 Also change code which referred to f->height.
3790 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
3791 Also change code which referred to f->width.
3792 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
3793 to update new_text_lines and new_text_cols members directly.
3794 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
3795 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
3796 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
3797 FRAME_SCROLL_BAR_COLS. All uses changed.
3798 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
3799 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
3800 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
3801 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
3802 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
3803 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
3804 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
3805 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
3806 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
3807 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
3808 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
3809 return line_height member (it now has proper value also for
3810 non-window frames).
3811 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
3812 return new column_width member (rather than the default font width).
3813 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
3814 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
3815 from x/w32/macterm.h files. Unconditionally return corresponding
3816 member of frame structure (they now have proper values also for
3817 non-window frames).
3818 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
3819 Calculate return value from left and right widths.
3820 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
3821 internal_border_width member (has proper value for non-window frame).
3822 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
3823 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
3824 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
3825 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
3826 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
3827 consolidated from xterm.h, macterm.h, and w32term.h.
3828 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
3829 consolidated from xterm.h, macterm.h, and w32term.h.
3830 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
3831 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
3832 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
3833 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
3834 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
3835 consolidated from x/mac/w32term.h.
3836 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
3837 consolidated from x/mac/w32term.h.
3838 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
3839 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
3840 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
3841 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
3842
3843 * window.h (struct window): Rename members left to left_col,
3844 top to top_line, height to total_lines, width to total_cols,
3845 left_margin_width to left_margin_cols, right_margin_width to
3846 right_margin_cols, orig_height to orig_total_lines, orig_top to
3847 orig_top_line. All uses changed.
3848 (struct window): New members left_fringe_width, right_fringe_width,
3849 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
3850 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
3851 New macros primarily used to simplify other macros.
3852 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
3853 referred to XINT (w->width).
3854 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
3855 referred to XINT (w->height).
3856 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
3857 referred to XINT (w->width) * canon_x_unit.
3858 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
3859 referred to XINT (w->height) * canon_y_unit.
3860 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
3861 referred to XINT (w->left).
3862 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
3863 all uses and code that referred to XINT (w->left) + XINT (w->width).
3864 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
3865 referred to XINT (w->top).
3866 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
3867 referred to XINT (w->top) + XINT (w->height).
3868 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
3869 referred to XINT (w->left) * canon_x_unit.
3870 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
3871 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
3872 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
3873 referred to XINT (w->top) * canon_y_unit.
3874 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
3875 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
3876 (WINDOW_LEFTMOST_P): New macro.
3877 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
3878 All uses changed.
3879 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
3880 All uses changed.
3881 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
3882 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
3883 Do not exclude left fringe width.
3884 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
3885 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
3886 Do not exclude fringe widths.
3887 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
3888 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
3889 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
3890 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
3891 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
3892 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
3893 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
3894 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
3895 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
3896 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
3897 New macros. Change code which referenced corresponding
3898 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
3899 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
3900 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
3901 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
3902 allow per-window scroll-bar settings.
3903 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
3904 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
3905 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
3906 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
3907 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
3908 FRAME_SCROLL_BAR_WIDTH.
3909 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 3910 (WINDOW_SCROLL_BAR_AREA_X): New macros.
0416870b
KS
3911 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
3912 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
3913 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
3914 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
3915 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
3916 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
3917 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
3918 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
3919 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
3920 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
3921 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
3922 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
3923 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
3924 (window_from_coordinates): Update prototype.
3925 (Fset_window_buffer): Update EXFUN.
3926 (set_window_buffer): Update prototype.
9018a88e 3927
0416870b 3928 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 3929 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
3930 changed.
3931 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
3932 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
3933 internal_border_width is now set to 0 for non-window frames.
3934 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
3935 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
3936 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
3937 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
3938 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
3939 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
3940 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
3941 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
3942 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 3943 Move to window.h and renamed [see window.h changes].
0416870b
KS
3944 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
3945 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
3946 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
3947 Use WINDOW_TOTAL_LINES.
0416870b
KS
3948 (frame_update_line_height): Remove prototype.
3949
3950 * buffer.h (struct buffer): Rename members measured in columns:
3951 left_margin_width to left_margin_cols, right_margin_width to
3952 right_margin_cols. All uses changed.
3953 New members left_fringe_width, right_fringe_width,
3954 fringes_outside_margins for per-buffer fringe settings.
3955 New members scroll_bar_width and vertical_scroll_bar_type for
3956 per-buffer scroll bar settings.
3957
3958 * buffer.c (init_buffer_once): Set buffer_defaults and
3959 buffer_local_flags for new buffer-local variables
3960 left_fringe_width, right_fringe_width, fringes_outside_margins,
3961 scroll_bar_width, and vertical_scroll_bar_type.
3962 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
3963 default-* variables for them.
3964
3965 * dispnew.c: Make (many) trivial substitutions for renamed and
3966 new macros in dispextern.h, frame.h and window.h.
3967 (mode_line_string): No need to adjust width for mode lines, as it
3968 is already adjusted by the caller.
3969 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 3970
0416870b
KS
3971 * frame.c: Make (many) trivial substitutions for renamed and
3972 new macros in dispextern.h, frame.h and window.h.
3973 (make_frame): Initialize left_fringe_width, right_fringe_width,
3974 fringe_cols, scroll_bar_actual_width, border_width,
3975 internal_border_width, column_width, line_height, x_pixels_diff,
3976 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
3977 members with values suitable for a non-window frames.
3978
3979 * gtkutil.c: Make (many) trivial substitutions for renamed and
3980 new macros in dispextern.h, frame.h and window.h.
9018a88e 3981
0416870b
KS
3982 * indent.c: Make (few) trivial substitutions for renamed and
3983 new macros in dispextern.h, frame.h and window.h.
3984
3985 * keyboard.c: Make (many) trivial substitutions for renamed and
3986 new macros in dispextern.h, frame.h and window.h.
3987 (make_lispy_event): Use window positions returned from
3988 window_from_coordinates when constructing the lisp event for
3989 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
3990 (incorrect) values locally.
3991 (make_lispy_movement): Use window positions returned from
3992 window_from_coordinates when constructing the lisp event, rather
3993 than calculating (incorrect) values locally.
3994
3995 * scroll.c: Make (some) trivial substitutions for renamed and
3996 new macros in dispextern.h, frame.h and window.h.
3997
3998 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
3999 scroll-bars.
4000
4001 * sysdep.c: Make (few) trivial substitutions for renamed and
4002 new macros in dispextern.h, frame.h and window.h.
4003
4004 * term.c: Make (some) trivial substitutions for renamed and
4005 new macros in dispextern.h, frame.h and window.h.
4006
4007 * widget.c: Make (few) trivial substitutions for renamed and
4008 new macros in dispextern.h, frame.h and window.h.
4009
4010 * window.c: Make (many) trivial substitutions for renamed and
4011 new macros in dispextern.h, frame.h and window.h.
4012 (make_window): Initialize new members
4013 left_margin_cols, right_margin_cols, left_fringe_width,
4014 right_fringe_width, fringes_outside_margins, scroll_bar_width,
4015 and vertical_scroll_bar_type.
4016 (coordinates_in_window): Adapted to new fringe/margin positions
9018a88e 4017 and per-window fringes and scroll-bars.
0416870b 4018 Fix bug related to incorrectly adjusting coordinates by
9018a88e 4019 frame's internal_border_width (the effect normally negible since
0416870b
KS
4020 the internal_border_width is typically 0 or 1 pixel, but very
4021 noticeable for an internal_border_width of e.g. 25 pixels).
4022 Upon successful return (other than ON_NOTHING), the coordinates
4023 are now always properly converted to window relative for the
4024 given display element.
4025 (window_from_coordinates): Add new parameters wx and wy to
4026 return the window relative x and y position in the returned
4027 window and part. A null arg means, don't return the position.
4028 All callers changed.
4029 (adjust_window_margins): New function which may reduce the width
4030 of the display margins if a window's text area is too small after
4031 resizing or splitting windows.
4032 (size_window): Fix bug that did not account for display margin
4033 widths when checking the minimum width of a window; use
4034 adjust_window_margins.
4035 (set_window_buffer): Call Fset_window_fringes and
4036 Fset_window_scroll_bars to setup per-window elements.
4037 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
4038 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
4039 (e.g. after splitting a window or resizing the frame).
4040 All callers changed.
0416870b
KS
4041 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
4042 (Fsplit_window): Duplicate original window's display margin,
4043 fringe, and scroll-bar settings; then call Fset_window_buffer with
4044 KEEP_MARGINS non-nil. This fixes a bug which caused a split
4045 window to only preserve the display margins in one of the windows.
c4b8aebc 4046 When splitting horizontally, call adjust_window_margins on both
0416870b
KS
4047 windows to ensure that the text area of the new windows is non too
4048 narrow. This fixes a bug which could cause emacs to trap if the
4049 width of the split window was less than the width of the display
4050 margins.
9018a88e
SM
4051 (window_box_text_cols): Renamed from window_internal_width.
4052 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
4053 Fix bug that caused vertical separator to be subtracted also on
4054 window frames. Fix another bug that did not reduce the returned
4055 value by the columns used for display margins.
4056 (window_scroll_line_based): Fix bug related to scrolling too much
4057 when display margins are present (implicitly fixed by the fix to
4058 window_box_text_cols).
4059 (scroll_left, scroll_right): Fix bug related to scrolling too far
4060 by default when display margins are present (implicitly fixed by
4061 the fix to window_box_text_cols).
4062 (struct saved_window): Rename members left to left_col, top to
4063 top_line, width to total_cols, height to total_lines, orig_top to
4064 orig_top_line, orig_height to orig_total_lines. All uses changed.
4065 New members left_margin_cols, right_margin_cols,
4066 left_fringe_width, right_fringe_width, fringes_outside_margins,
4067 scroll_bar_width, and vertical_scroll_bar_type for saving
4068 per-window display elements.
4069 (Fset_window_configuration): Restore display margins, fringes,
4070 and scroll bar settings. This fixes a bug which caused display
4071 margins to be discarded when saving and restoring a window
4072 configuration.
4073 (save_window_save): Save display margins, fringes, and scroll bar
4074 settings. This fixes a bug which caused display margins to be
4075 discarded when saving and restoring a window configuration.
4076 (Fset_window_margins): Do nothing if display margins are not
4077 really changed. Otherwise, call adjust_window_margins to ensure
4078 the text area doesn't get too narrow. This fixes a bug which
4079 could cause emacs to trap if setting display margins wider than
4080 the width of the window.
4081 (Fset_window_fringes): New defun to allow user to specifically set
4082 this window's fringe widths and position vs. display margins.
4083 (Fwindow_fringes): New defun to return window's actual fringe
4084 settings.
4085 (Fset_window_scroll_bars): New defun to allow user to specifically
4086 set this window's scroll bar width and position.
4087 (Fwindow_scroll_bars): New defun to return window's actual scroll
4088 bar settings.
4089 (compare_window_configurations): Also compare display margins,
4090 fringes, and scroll bar settings.
4091 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
4092
4093 * xdisp.c: Make (many) trivial substitutions for renamed and
4094 new macros in dispextern.h, frame.h and window.h.
4095 (window_box_width): Adapt to per-window fringes and scroll bars,
4096 and new fringe vs. display margin position. Note that returned
4097 value is no longer guaranteed to be a whole multiple of the frame
4098 column width, since per-window fringes may now be any width.
4099 (window_box_left_offset): New function like window_box_left, but
4100 value is relative to left border of window (rather than frame).
4101 (window_box_right_offset): New function like window_box_right,
4102 but value is relative to left border of window.
4103 (window_box_left): Adapt to per-window fringes and scroll bars,
4104 and new fringe vs. display margin position. Simplify by using
4105 WINDOW_LEFT_EDGE_X and window_box_left_offset.
4106 (window_box): Allow null args for unnecessary return values;
4107 change/simplify relevant callers.
4108 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
4109 and new fringe vs. display margin position.
4110 Use window_box_left_offset and window_box_right_offset
0416870b 4111 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
4112 scroll bars, and new fringe vs. display margin position.
4113 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
4114 (draw_fringe_bitmap): Rework to handle per-window fringes and new
4115 fringe vs. display margin position.
4116 (hscroll_window_tree): Use window_box_width instead of window_box.
a64387ee
JB
4117 (redisplay_window): Adapt to per-window scroll bars.
4118 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
4119 bars, and new fringe vs. display margin position.
4120 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
a64387ee 4121 (x_clear_end_of_line): Adapt to per-window fringes and scroll
0416870b
KS
4122 bars, and new fringe vs. display margin position. Fix bug which
4123 increased total width of full_width rows by width of scroll bars
4124 although window's total width already includes that.
4125 (x_fix_overlapping_area): Simplify using window_box_left_offset.
4126 (expose_area): Simplify using window_box_left_offset.
4127 (x_draw_vertical_border): Handle per-window scroll bar settings,
4128 mixing windows with left, right and no scroll bars.
4129
4130 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
4131 where it's used in x_list_fonts (for clarity).
4132 (frame_update_line_height): Remove unused function; functionality
4133 is now done directly when setting the default font in x_set_font.
4134
4135 * xfns.c: Make (many) trivial substitutions for renamed and
4136 new macros in dispextern.h, frame.h and window.h.
4137
4138 * xmenu.c: Make (some) trivial substitutions for renamed and
4139 new macros in dispextern.h, frame.h and window.h.
4140
4141 * xterm.h (struct x_output): Move members left_pos, top_pos,
4142 border_width, pixel_height, pixel_width, line_height,
4143 internal_border_width, vertical_scroll_bar_extra,
4144 left_fringe_width, right_fringe_width, fringe_cols,
4145 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
4146 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
4147 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
4148 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
4149 (PIXEL_WIDTH, PIXEL_HEIGHT)
4150 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
4151 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
4152 frame.h and renamed [see frame.h changes].
4153 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
4154 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
4155 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
4156 and renamed [see frame.h changes].
9018a88e 4157
0416870b
KS
4158 * xterm.c: Make (several) trivial substitutions for renamed and
4159 new macros in dispextern.h, frame.h and window.h.
4160 (x_draw_glyph_string_box): Adapt to per-window fringes and
4161 scroll-bars.
4162 (scroll_run): Adapt to new fringe position.
4163 (glyph_rect): Use window coordinates returned from
4164 window_from_coordinates rather than frame_to_window_pixel_xy.
4165 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
4166 scroll-bars.
4167 (handle_one_xevent): Simplify a USE_GTK conditional.
4168 (x_clip_to_row): Remove superfluous whole_line_p arg and code
4169 (fringes are now inside margins, i.e. always in the clipping area).
4170 All callers changed.
4171 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
4172 directly, then call compute_fringe_widths. Don't call
4173 frame_update_line_height.
4174
4175 * w32term.h (struct w32_output): Move members left_pos, top_pos,
4176 border_width, pixel_height, pixel_width, line_height,
4177 internal_border_width, vertical_scroll_bar_extra,
4178 left_fringe_width, right_fringe_width, fringe_cols,
4179 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
4180 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
4181 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
4182 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
4183 (PIXEL_WIDTH, PIXEL_HEIGHT)
4184 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
4185 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
4186 frame.h and renamed [see frame.h changes].
4187 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
4188 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
4189 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
4190 and renamed [see frame.h changes].
9018a88e 4191
0416870b
KS
4192 * w32term.c: Make (several) trivial substitutions for renamed and
4193 new macros in dispextern.h, frame.h and window.h.
4194 (x_draw_glyph_string_box): Adapt to per-window fringes and
4195 scroll-bars.
4196 (glyph_rect): Use window coordinates returned from
4197 window_from_coordinates rather than frame_to_window_pixel_xy.
4198 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
4199 scroll-bars.
4200 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
4201 (fringes are now inside margins, i.e. always in the clipping area).
4202 All callers changed.
4203 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
4204 directly, then call compute_fringe_widths. Don't call
4205 frame_update_line_height.
4206
4207 * w32console.c: Make (few) trivial substitutions for renamed and
4208 new macros in dispextern.h, frame.h and window.h.
4209
4210 * w32fns.c: Make (many) trivial substitutions for renamed and
4211 new macros in dispextern.h, frame.h and window.h.
4212
4213 * w32menu.c: Make (few) trivial substitutions for renamed and
4214 new macros in dispextern.h, frame.h and window.h.
4215
4216 * macterm.h (struct mac_output): Move members left_pos, top_pos,
4217 border_width, pixel_height, pixel_width, line_height,
4218 internal_border_width, vertical_scroll_bar_extra,
4219 left_fringe_width, right_fringe_width, fringe_cols,
4220 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
4221 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
4222 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
4223 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
4224 (PIXEL_WIDTH, PIXEL_HEIGHT)
4225 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
4226 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
4227 frame.h and renamed [see frame.h changes].
4228 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
4229 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
4230 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
4231 and renamed [see frame.h changes].
9018a88e 4232
0416870b
KS
4233 * macterm.c: Make (several) trivial substitutions for renamed and
4234 new macros in dispextern.h, frame.h and window.h.
4235 (x_draw_glyph_string_box): Adapt to per-window fringes and
4236 scroll-bars.
4237 (glyph_rect): Use window coordinates returned from
4238 window_from_coordinates rather than frame_to_window_pixel_xy.
4239 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
4240 scroll-bars.
4241 (x_clip_to_row): Remove superfluous whole_line_p arg and code
4242 (fringes are now inside margins, i.e. always in the clipping area).
4243 All callers changed.
4244 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
4245 directly, then call compute_fringe_widths. Don't call
4246 frame_update_line_height.
4247
4248 * macfns.c: Make (several) trivial substitutions for renamed and
4249 new macros in dispextern.h, frame.h and window.h.
9018a88e 4250 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
4251
4252 * macmenu.c: Make (few) trivial substitutions for renamed and
4253 new macros in dispextern.h, frame.h and window.h.
4254
4255 * msdos.h (struct x_output): Remove members left_pos, top_pos,
4256 and line_height, and use corresponding new members in struct
4257 frame. All uses changed.
4258 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
4259 superseeded by corresponding macros in frame.h.
4260
4261 * msdos.c: Make (several) trivial substitutions for renamed and
4262 new macros in dispextern.h, frame.h and window.h.
4263 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 4264 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
4265 (internal_terminal_init): No need to initialize line_height here;
4266 it now defaults to 1.
4267
9018a88e
SM
42682003-05-24 Stefan Monnier <monnier@cs.yale.edu>
4269
4270 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
4271 dropping `down' events.
4272
016bd3c0
AS
42732003-05-24 Andreas Schwab <schwab@suse.de>
4274
4275 * coding.c (find_safe_codings): Fix last change.
4276
4dacadcc
TTN
42772003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
4278
4279 * xfns.c (x_window): Fix typo from 2003-05-21 change.
4280
319830ce
SM
42812003-05-23 Stefan Monnier <monnier@cs.yale.edu>
4282
9018a88e
SM
4283 * xdisp.c (display_mode_element): Increase max depth.
4284 Simplify the error handling code. Use a different error string
4285 for the case where we hit the depth limit.
4286
319830ce
SM
4287 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
4288
4289 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
4290
42912003-05-21 Stefan Monnier <monnier@cs.yale.edu>
4292
4293 * intervals.c (get_local_map): Don't get char-property of previous
4294 point any more: get_pos_property already does it and better.
4295
c67de8ba
DL
42962003-05-21 Dave Love <fx@gnu.org>
4297
4298 [Merged from unicode branch.]
4299
4300 * xfns.c (x_window, x_window): Use use_xim.
4301
4302 * xterm.c (use_xim): Initialize.
4303 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
4304 (x_term_init): Maybe set use_xim.
4305
4306 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
4307
edd3ff1d
JR
43082003-05-21 Jason Rumney <jasonr@gnu.org>
4309
4310 * unexw32.c (_start): Remove _fmode initialization.
4311
4312 * emacs.c (main) [WINDOWSNT]: Move it here.
4313
463f55ee
DL
43142003-05-20 Dave Love <fx@gnu.org>
4315
4316 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
4317
af253914
RS
43182003-05-19 Richard M. Stallman <rms@gnu.org>
4319
4320 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
4321 as value for QCfont attribute.
4322 (realize_default_face): lface should already exist; crash if not.
4323 Specify 0 for FORCE_P when calling set_lface_from_font_name.
4324
4325 * frame.c (Fignore_event): Doc fix.
4326
1d211019
KH
43272003-05-19 Kenichi Handa <handa@m17n.org>
4328
4329 * coding.c (decode_coding_string): Handle post-read-conversion
4330 even if the coding doesn't require decoding.
4331
4dd68254
RS
43322003-05-18 Richard M. Stallman <rms@gnu.org>
4333
4334 * callproc.c (Fcall_process_region): Doc fix.
4335
14d87dc9
SM
43362003-05-17 Stefan Monnier <monnier@cs.yale.edu>
4337
deca5d96
SM
4338 * lread.c (Fload): Print a message if package is obsolete.
4339
14d87dc9
SM
4340 * window.c (Fselect_window): Add optional `norecord' arg.
4341 (select_window_1): Fold into Fselect_window.
4342 (select_window_norecord): New function.
4343 (temp_output_buffer_show): Use it. Preserve current buffer.
4344
4345 * window.h (Fselect_window): Update declaration.
4346
4347 * window.c (delete_window, Fother_window, Fset_window_configuration):
4348 * minibuf.c (read_minibuf):
4349 * macterm.c (x_new_focus_frame):
4350 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
4351 * callint.c (Fcall_interactively):
4352 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
4353
4354 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
4355
78f52183
DK
43562003-05-17 David Kastrup <dak@gnu.org>
4357
4358 * process.c (read_process_output): Back out change from 2003-03-09.
4359
14d87dc9
SM
43602003-05-17 Stefan Monnier <monnier@cs.yale.edu>
4361
4362 * editfns.c (get_pos_property): Don't assume that `object' = nil.
4363
4364 * textprop.c (text_property_stickiness): New arg `buffer'.
4365
4366 * intervals.h (text_property_stickiness): New arg `buffer'.
4367 (get_pos_property): Declare.
4368
4369 * intervals.c (get_local_map): Use get_pos_property, to obey
4370 stickiness and empty overlays.
4371 (create_root_interval, graft_intervals_into_buffer): Use BEG.
4372 (merge_properties, intervals_equal, merge_properties_sticky):
4373 Use XCAR, XCDR.
4374 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
4375
1fd1cc2f
RS
43762003-05-17 Richard M. Stallman <rms@gnu.org>
4377
4f9f637a
RS
4378 * minibuf.c (read_minibuf): If buffer is empty, record the default
4379 in the history.
4380 (Fminibuffer_complete_word): When deleting the overlap, take account
4381 of its real position.
4382
4383 * fns.c (map_char_table): Fix previous change.
4384
1fd1cc2f
RS
4385 * syntax.c (find_defun_start):
4386 When open_paren_in_column_0_is_defun_start,
4387 return beginning of buffer.
4388
4389 * lisp.h (map_char_table): Declare added arg.
4390
4391 * fns.c (map_char_table): New arg TABLE gets the master table.
4392 All calls changed.
4393 Process default and inheritance, resorting to Faref if necessary.
4394
4395 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
4396 (Faccessible_keymaps): Pass new arg to map_char_table.
4397
4398 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
4399
4400 * casetab.c (set_case_table): Pass new arg to map_char_table.
4401
4402 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
4403
4404 * lisp.h (specbinding_func): New typedef.
4405 (struct specbinding): Use specbinding_func, to put the `volatile'
4406 in the right place.
4407
4408 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
4409 to avoid GCC warning.
14d87dc9 4410
b4bd27c5
RS
44112003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
4412
14d87dc9 4413 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 4414
35fb885d
SM
44152003-05-15 Stefan Monnier <monnier@cs.yale.edu>
4416
4417 * keyboard.c (apply_modifiers): Don't fill the other cache.
4418
9a274fbd
SM
44192003-05-14 Stefan Monnier <monnier@cs.yale.edu>
4420
c55b5fad
SM
4421 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
4422
9a274fbd
SM
4423 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
4424 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
4425 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
4426 (Fset_window_configuration, Fcurrent_window_configuration)
4427 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
4428 (Fpos_visible_in_window_p, mark_window_cursors_off)
4429 (window_internal_height, window_internal_width, Frecenter)
4430 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
4431 (replace_buffer_in_all_windows, init_window_once, init_window)
4432 (syms_of_window, keys_of_window): Move from lisp.h.
4433 * lisp.h: Move window.c declarations to window.h.
4434
4435 * bytecode.c: Include window.h.
4436 * emacs.c: Include window.h.
4437
14d87dc9 4438 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
4439 (keyremap): Add `parent' field.
4440 (keyremap_step): Use it. Remove `parent' argument.
4441 (read_key_sequence): Setup and use the new `parent' field.
4442
fd93e331
SM
44432003-05-11 Stefan Monnier <monnier@cs.yale.edu>
4444
4445 * keyboard.c (adjust_point_for_property): Ensure termination.
4446
1c4001a1
SM
44472003-05-10 Stefan Monnier <monnier@cs.yale.edu>
4448
4449 * keyboard.c (follow_key): Remove dead variable `did_meta'.
4450 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
4451 duplicated handling of function-key-map and key-translation-map
4452 in read_key_sequence.
4453 (read_key_sequence): Use them.
4454
4455 * keyboard.c (adjust_point_for_property): Try harder to move point
4456 to the non-sticky end of an invisible property.
4457
4458 * xdisp.c (single_display_prop_intangible_p): Make `space' display
4459 property intangible as well.
4460
780379b1
AS
44612003-05-10 Andreas Schwab <schwab@suse.de>
4462
4463 * xmenu.c (single_menu_item): Change last parameter to void* to
4464 avoid warning.
4465
ca2de342
RS
44662003-05-09 Richard M. Stallman <rms@gnu.org>
4467
4468 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
4469 Bind Qinhibit_modification_hooks to t so there will be no GC.
4470 Rename local `tem' to `save_deactivate_mark'.
4471
4472 * eval.c (specpdl_ptr): Declare volatile.
4473 (unbind_to): Copy the whole binding and decrement specpdl_ptr
4474 before doing the work of unbinding it.
4475
4476 * lisp.h (struct specbinding): Declare elements volatile.
4477 (specpdl_ptr): Declare volatile.
4478
4479 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
4480
4481 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
4482 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
4483
347003be
DL
44842003-05-08 Dave Love <fx@gnu.org>
4485
4486 * coding.c (Vlast_coding_system_used): Doc fix.
4487
5adcec23
JR
44882003-05-07 Jason Rumney <jasonr@gnu.org>
4489
4490 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
4491 when system does not support them.
4492
5fe3b8a4
SM
44932003-05-05 Stefan Monnier <monnier@cs.yale.edu>
4494
4495 * fileio.c (Qwrite_region_annotate_functions): New var.
4496 (build_annotations): Use it to process the global part of the hook.
4497 (syms_of_fileio): Init and staticpro it.
4498
4499 * keyboard.c (safe_run_hooks_error): Display a message instead of
4500 silently ignoring the error.
4501
45022003-05-03 Stefan Monnier <monnier@cs.yale.edu>
4503
4504 * keyboard.c (input_available_signal): Mark static.
4505 (menu_bar_items): Use map_keymap.
4506 (menu_bar_one_keymap): Remove.
4507 (menu_bar_item): Adjust arglist (for use in map_keymap).
4508 Properly hide a second binding when not both are keymaps.
4509
4510 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
4511 (single_keymap_panes): Use it and map_keymap.
4512 (single_menu_item): Use skp as well.
4513
4514 * keymap.h (map_keymap_function_t): New type.
4515 (map_keymap): Declare.
4516
4517 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
4518 (map_keymap_call, Fmap_keymap): New functions.
4519 (syms_of_keymap): Defsubr map-keymap.
4520
4b1b4443
JD
45212003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4522
4523 * gtkutil.c (create_dialog, make_widget_for_menu_item)
4524 (make_menu_item, create_menus, xg_update_menu_item): Don't call
4525 ..._with_mnemonic functions for menu items.
4526
1f816871
KH
45272003-05-01 Kenichi Handa <handa@m17n.org>
4528
4529 * coding.c (coding_system_accept_latin_extra_p): Delete this
4530 function.
4531 (find_safe_codings): Pay attention to
4532 the property tranlsation-table-for-encode of each codings.
4533 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
4534
5ed6ba5b
SM
45352003-05-01 Stefan Monnier <monnier@cs.yale.edu>
4536
4537 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
4538
32c06229
SM
45392003-04-30 Stefan Monnier <monnier@cs.yale.edu>
4540
4541 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
4542
4543 * lisp.h (CHECK): Wrap args in parenthesis.
4544 (specbind): Fix doc: symbol = Qnil is not supported any more.
4545
4546 * bytecode.c (Fbyte_code) <unwind-protect>:
4547 Use Fprogn rather than 0 and Qnil.
4548
4549 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
4550 `double', and `triple' modifiers as well.
4551
ed3c3314
RS
45522003-04-30 Richard M. Stallman <rms@gnu.org>
4553
4554 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
4555
4556 * alloc.c (abort_on_gc): New variable.
4557 (Fgarbage_collect): Abort if abort_on_gc is set.
4558
4559 * lisp.h (abort_on_gc): Add decl.
4560
4561 * eval.c (Fsignal): Clear abort_on_gc.
4562
4563 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 4564 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
4565
4566 * xdisp.c (move_it_vertically_backward): Do the final big else
4567 even if nlines is 0.
4568
4569 * xdisp.c (redisplay_internal): Finish the per-frame loop
4570 even if redisplay is suspended by input.
4571
0b325c12
AC
45722003-04-24 Andrew Choi <akochoi@shaw.ca>
4573
4574 * macterm.c (x_list_fonts): Return all fonts that match if
4575 maxnames = -1.
4576
4e837cd0
KH
45772003-04-25 Kenichi Handa <handa@m17n.org>
4578
4579 * syntax.c (skip_chars): Fix previous change.
4580
9af7511a
KH
45812003-04-24 Kenichi Handa <handa@m17n.org>
4582
4583 * syntax.c (skip_chars): Make the code faster by using the common
4584 technique of *p, *stop, and *endp.
4585
e3b2c21f
JD
45862003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4587
4588 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 4589 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
4590 being updated.
4591
32c06229
SM
45922003-04-19 Stefan Monnier <monnier@cs.yale.edu>
4593
4594 * eval.c (Fapply): Undo last change and add a comment about why.
4595
c6464167
MB
45962003-04-18 Miles Bader <miles@gnu.org>
4597
4598 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
4599 pickier PARSE_MULTIBYTE_SEQ.
4600
e509f168
SM
46012003-04-17 Stefan Monnier <monnier@cs.yale.edu>
4602
4603 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
4604 Use XCDR, XCAR, CONSP.
4605 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
4606 (Fapply): Remove unnecessary GCPRO.
4607
4608 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
4609
4610 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
4611
4612 * buffer.h: Don't hardcode BEG==1.
4613
4614 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
4615
5ceea398
RS
46162003-04-16 Richard M. Stallman <rms@gnu.org>
4617
4618 * xdisp.c (try_window, try_window_reusing_current_matrix):
4619 When at end of window, set window_end_pos to Z-ZV.
4620
4621 * buffer.c (Foverlay_recenter): Doc fix.
4622
e509f168
SM
46232003-04-14 Stefan Monnier <monnier@cs.yale.edu>
4624
4625 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
4626
d243e605
AC
46272003-04-14 Andrew Choi <akochoi@shaw.ca>
4628
4629 * macterm.c (mac_check_for_quit_char): Don't check more often than
4630 once a second.
4631
6901b111
SM
46322003-04-11 Stefan Monnier <monnier@cs.yale.edu>
4633
4634 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
4635 specially, so that they can't hide an implicit switch-frame event.
4636 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
4637 (head_table): Use switch-frame as event_kind for select-window.
4638 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
4639
4640 * editfns.c (Fformat): Lisp_Object/int mixup.
4641 (format2): Remove unused var numargs.
4642
e301806f 46432003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 4644
6901b111 4645 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
4646 (Qafter_insert_file_set_coding): New variable.
4647 (syms_of_fileio): Initialize and staticpro it. Delete declaration
4648 for after-insert-file-adjust-coding-function.
4649 (Finsert_file_contents): Call Qafter_insert_file_set_coding
4650 instead of Vafter_insert_file_adjust_coding_function.
4651
38914424
KH
46522003-04-11 Kenichi Handa <handa@m17n.org>
4653
4654 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
4655
4656 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
4657 string. Callers changed.
4658
46592003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 4660
6901b111 4661 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 4662 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
4663 (Finsert_file_contents):
4664 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
4665 decode-format.
4666
f979dc05
JD
46672003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4668
4669 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
4670 get GtkAdjustment as widget now is a GtkRange.
4671
4672 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
4673 GtkRange to avoid memory leak.
4674
f8c6b4c2 46752003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 4676
50ebc53d
KH
4677 * xfaces.c (Vface_font_rescale_alist): New variable.
4678 (struct font_name): New member rescale_ratio.
4679 (font_rescale_ratio): New function.
6901b111 4680 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
4681 (better_font_p): On comparing point sized, pay attention to
4682 recale_ratio member of fonts.
4683 (build_scalable_font_name): Reflect font->rescale_ratio in the
4684 font name.
6901b111 4685 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 4686
cb98871c
KH
4687 * lread.c (read1): Before calling index, check if the 2nd
4688 arguemnt is in ASCII range.
4689
4773b8ca
RS
46902003-04-08 Richard M. Stallman <rms@gnu.org>
4691
b0ada147
RS
4692 * fileio.c (Ffile_symlink_p): Doc fix.
4693
4694 * editfns.c (Fformat): Translate positions of text properties
4695 in the format string to apply them to the result.
4696
4773b8ca
RS
4697 * fileio.c (Finsert_file_contents): Doc fix.
4698 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
4699
47002003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 4701
4773b8ca
RS
4702 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
4703
e8f25745 47042003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 4705
e8f25745
ST
4706 * mac.c (init_mac_osx_environment): Switch libexec and bin so
4707 that self-contained application finds libexec files.
4708
f8c6b4c2 47092003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 4710
6901b111
SM
4711 * coding.c (code_convert_region_unwind):
4712 Set Vlast_coding_system_used to the argument.
2310d84c
KH
4713 (code_convert_region): If post-read-conversion function changed
4714 the value of last-coding-sytem, keep the new value in
4715 coding->symbol so that it won't be overridden.
4716 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
4717 (coding_system_accept_latin_extra_p): New function.
4718 (find_safe_codings): Pay attention to characters registered in
4719 latin-extra-code-table.
2310d84c 4720
39c9a034
TTN
47212003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
4722
4723 * Makefile.in (md5.o): Add missing dependency info.
4724
eb67c5d6
RS
47252003-04-06 Richard M. Stallman <rms@gnu.org>
4726
4727 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
4728
4729 * marker.c (verify_bytepos): New function.
4730
4731 * intervals.c (set_intervals_multibyte_1): When becoming
4732 multibyte, adjust right and left child sizes to a whole set of
4733 characters. If an interval gets zero total-length, delete it.
4734 If an interval consists of just its children, delete one of them.
4735
4736 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
4737 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 4738
eb67c5d6
RS
4739 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
4740 All calls deleted.
4741 (lisp_malloc): Do the work here directly.
4742
b1f81fc5
JB
47432003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
4744
4745 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
4746 char tables.
4747
47482003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
4749
4750 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
4751 destructively change "%S" to "%s".
4752
774666fb
MB
47532003-04-03 Miles Bader <miles@gnu.org>
4754
4755 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
4756 always set.
4757
19c37f01
DL
47582003-04-01 Dave Love <fx@gnu.org>
4759
4760 * xfns.c (xpm_lookup_color): Grok "opaque".
4761
2f4b24c3
AC
47622003-03-31 Andrew Choi <akochoi@shaw.ca>
4763
4764 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
4765 parent window ID.
4766
4767 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
4768
4769 * macterm.h (struct mac_output): Define x_pixels_diff and
4770 y_pixels_diff.
b1f81fc5 4771
9443fcf6
JB
47722003-03-31 Juanma Barranquero <lektu@terra.es>
4773
4774 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
4775 blockinput.h and files included from it.
4776
e072891b
KS
47772003-03-31 Kim F. Storm <storm@cua.dk>
4778
4779 The following changes consolidates the common code related to
4780 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
4781 files into frame.c.
9443fcf6 4782
e072891b
KS
4783 * frame.c: Include blockinput.h.
4784 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
4785 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
4786 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
4787 related vars here.
4788 (struct frame_parm_table, frame_parms): New table for describing
4789 frame parameters and their associated Q-variable.
4790 The order of the parameters corresponds to the sequence of the
4791 frame_parm_handlers table in redisplay_interface.
4792 (x_fullscreen_move, x_set_frame_parameters)
4793 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
4794 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
4795 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4796 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
4797 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
4798 Generic functions for processing of frame parameters.
4799 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
4800 (display_x_get_resource, x_get_resource_string): Functions for
4801 generic access to X resources.
4802 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
4803 (x_default_parameter, Fx_parse_geometry): Functions for generic
4804 access to frame parameters.
6901b111
SM
4805 (x_figure_window_size): Generic calculation of frame size.
4806 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
4807 (syms_of_frame): Intern and staticpro frame parameter variables.
4808 Defvar_lisp Vx_resource_class and Vx_resource_name here.
4809 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 4810
e072891b
KS
4811 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
4812 parameter related vars defined in frame.c.
4813 (EMACS_CLASS): Define here.
4814 (enum FULLSCREEN_*): Define here.
4815 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
4816 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
4817 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
4818 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
4819 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
4820 (x_set_visibility, x_set_autoraise, x_set_autolower)
4821 (x_set_unsplittable, x_set_vertical_scroll_bars)
4822 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
4823 (x_figure_window_size): Add prototypes.
4824
4825 * dispextern.h (frame_parm_handler): New typedef.
4826 (struct redisplay_interface): New member frame_parm_handlers.
4827 (enum resource_types): Move declaration here.
4828 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
4829 (x_default_parameter): Add prototypes.
4830
4831 * window.c: Remove extern decl for frame parameter vars.
4832 (change_window_heights): New generic function;
4833 replaces x_change_window_heights. All users changed.
4834
4835 * window.h (change_window_heights): Add prototype.
4836
4837 * xfaces.c: Remove extern decl for frame parameter vars.
4838
4839 * xterm.h (EMACS_CLASS): Remove. Use generic define.
4840 (struct w32_display_info): Fix type of xrdb member.
4841 (enum FULLSCREEN_*): Remove.
4842 Remove prototypes for generic functions (in frame.h).
4843
4844 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
4845 parameters now defined in frame.h and frame.c.
4846 (Vx_resource_name): Remove. Use generic var.
4847 (enum x_frame_parms): Remove (bogus, unused enum).
4848 (check_x_display_info): Make non-static (for frame.c).
4849 (struct x_frame_parm_table, x_frame_parms): Remove.
4850 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
4851 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
4852 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4853 (x_change_window_heights, x_set_autoraise, x_set_autolower)
4854 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
4855 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
4856 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
4857 Remove. Use generic functions instead.
4858 (enum resource_types): Remove.
4859 (x_set_scroll_bar_default_width): New global function (for frame.c).
4860 (Fx_create_frame): Depend on x_figure_window_size to add space for
4861 toolbar and setup size_hint_flags.
4862 (x_frame_parm_handlers): New table for redisplay_interface.
4863 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 4864
e072891b
KS
4865 * xterm.c: Remove unnecessary extern declarations.
4866 (x_fullscreen_adjust): Remove. Use generic instead.
4867 (x_redisplay_interface): Add x_frame_parm_handlers member.
4868
4869 * w32gui.h (XrmDatabase): New (dummy) typedef.
4870
4871 * w32term.h (EMACS_CLASS): Remove. Use generic define.
4872 (struct w32_display_info): Fix type of xrdb member.
4873 (enum FULLSCREEN_*): Remove.
4874 (x_fullscreen_adjust): Remove prototype.
4875
4876 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
4877 parameters now defined in frame.h and frame.c.
4878 (Vx_resource_name): Remove. Use generic var.
4879 (enum x_frame_parms): Remove (bogus, unused enum).
4880 (check_x_display_info): Make non-static (for frame.c).
4881 (struct x_frame_parm_table, x_frame_parms): Remove.
4882 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
4883 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
4884 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4885 (x_change_window_heights, x_set_autoraise, x_set_autolower)
4886 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
4887 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
4888 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
4889 Remove. Use generic functions instead.
4890 (enum resource_types): Remove.
4891 (x_set_scroll_bar_default_width): New global function (for frame.c).
4892 (Fx_create_frame): Depend on x_figure_window_size to add space for
4893 toolbar and setup size_hint_flags.
4894 (w32_frame_parm_handlers): New table for redisplay_interface.
4895 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 4896
e072891b
KS
4897 * w32term.c: Remove unnecessary extern declarations.
4898 (x_fullscreen_adjust): Remove. Use generic instead.
4899 (x_redisplay_interface): Add w32_frame_parm_handlers member.
4900
4901 * w32reg.c (x_get_string_resource): Use XrmDatabase.
4902
4903 * macgui.h (XrmDatabase): New (dummy) typedef.
4904
4905 * macterm.h (EMACS_CLASS): Remove.
4906 (struct mac_display_info): Add xrdb member.
4907 (struct mac_output): Add want_fullscreen member.
4908
4909 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
4910 parameters now defined in frame.h and frame.c.
4911 (Vx_resource_name): Remove. Use generic var.
4912 (check_x_display_info): Make non-static (for frame.c).
4913 (struct x_frame_parm_table, x_frame_parms): Remove.
4914 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
4915 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
4916 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4917 (x_change_window_heights, x_set_autoraise, x_set_autolower)
4918 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
4919 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
4920 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
4921 Remove. Use generic functions instead.
4922 (enum resource_types): Remove.
4923 (x_set_scroll_bar_default_width): New global function (for frame.c).
4924 (mac_frame_parm_handlers): New table for redisplay_interface.
4925 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 4926
e072891b
KS
4927 * macterm.c: Remove unnecessary extern declarations.
4928 (x_redisplay_interface): Add mac_frame_parm_handlers member.
4929
3e6a560b
KS
4930 * Makefile.in (frame.o): Add dependency on blockinput.h and files
4931 included from it (atimer.h and systime.h).
4932
7b7b454e
AS
49332003-03-30 Andreas Schwab <schwab@suse.de>
4934
4935 * xdisp.c (x_insert_glyphs): Fix swapped width and height
4936 parameters for shift_glyphs_for_insert.
4937
4938 * macterm.c (x_redisplay_interface): Add missing entry for
4939 draw_vertical_window_border.
4940
beb402de
KG
49412003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
4942
4943 * fileio.c (Fexpand_file_name): In the no-handler case, after
4944 expanding, look again for a handler and invoke it. This is needed
4945 for filenames like "/foo/../user@host:/bar/../baz" -- the first
4946 expansion produces "/user@host:/bar/../baz" which needs to be
4947 expanded again for the finame result "/user@host:/baz".
4948
b676f356
JD
49492003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4950
4951 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
4952 of area to be redrawn for better performance.
4953
3c671a56
SM
49542003-03-28 Stefan Monnier <monnier@cs.yale.edu>
4955
4956 * xterm.c (take_vertical_position_into_account): Remove.
4957 (xt_action_hook): Call set_vertical_scroll_bar if needed.
4958 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
4959 (xm_scroll_callback, x_create_toolkit_scroll_bar)
4960 (x_set_toolkit_scroll_bar_thumb): Simplify.
4961 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
4962 (XTread_socket): Remove unused var.
4963 (x_make_frame_invisible): Replace goto with else.
4964
4965 * xdisp.c (set_vertical_scroll_bar): New fun.
4966 (redisplay_window): Use it.
4967
84f2e615
RS
49682003-03-26 Richard M. Stallman <rms@gnu.org>
4969
4970 * xdisp.c (update_tool_bar): Recompute tool bar if
4971 update_mode_lines is set. Set w->update_mode_line
4972 only if the tool bar contents actually change.
4973 (update_menu_bar): Undo previous change.
4974
70b6104c
JD
49752003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4976
5fd6f727
JD
4977 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
4978 (xg_frame_set_char_size): Calculate scroll bar width before frame
4979 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
4980 (xg_separator_p): Check for all documented separator types.
4981 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
4982 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
4983
70b6104c
JD
4984 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
4985 so tool bar gets updated.
4986
d9b36d19
SM
49872003-03-26 Stefan Monnier <monnier@cs.yale.edu>
4988
4989 * data.c (store_symval_forwarding): Re-instate part of the code
4990 that was deleted with too much enthusiasm.
4991
49922003-03-25 Stefan Monnier <monnier@cs.yale.edu>
4993
4994 * data.c (store_symval_forwarding): Delete special read-only
4995 hack for type == -1, since we now use ->constant instead.
4996 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
4997
4998 * buffer.c (overlays_in): Declare static.
4999 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
5000 `constant' field rather than the variable's `type' field.
5001
365fa1b3
AC
50022003-03-24 Andrew Choi <akochoi@shaw.ca>
5003
5004 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
5005
5006 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
5007
5008 * fns.c [MAC_OSX]: Do not redefine vector.
5009
5010 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
5011
5012 * macgui.h: Remove definition of No_Cursor.
5013
d9b36d19 5014 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
5015
5016 * xdisp.c: Define No_Cursor.
5017 (x_write_glyphs, notice_overwritten_cursor)
5018 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
5019 (note_mouse_highlight): Remove Mac-specific code.
5020 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 5021
c0bcce6f
JPW
50222003-03-24 John Paul Wallington <jpw@gnu.org>
5023
5024 * xdisp.c (redisplay_window): If mini window's buffer is not
5025 empty, then redisplay it like other windows.
5026
a526b96c
KS
50272003-03-23 Kim F. Storm <storm@cua.dk>
5028
5029 * w32term.c (w32_draw_window_cursor): Fix last change.
5030
37ab321e
KH
50312003-03-23 Kenichi Handa <handa@m17n.org>
5032
a526b96c
KS
5033 * alloc.c (make_string_from_bytes, make_specified_string):
5034 Add `const' for the arg CONTENTS.
37ab321e
KH
5035
5036 * lisp.h (make_string_from_bytes, make_specified_string):
5037 Prototypes adjusted.
5038
7863d625
JD
50392003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5040
a526b96c 5041 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 5042
7863d625
JD
5043 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
5044 (XG_SB_RANGE): New define.
5045
5046 * gtkutil.c (xg_fixed_handle_expose): New function.
5047 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
5048 expose events.
5049 (xg_update_scrollbar_pos): Take two more arguments, left and width
5050 of scroll bar including borders.
5051 Clear left and right part outside scroll bar separately as some
5052 themes have bars that are not an even number of pixels.
d9b36d19 5053 Don't set reallocate_redraws, don't call
7863d625
JD
5054 gdk_window_process_all_updates.
5055 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
5056 so no need to change it. Calculate size and value with XG_SB_RANGE.
5057
d9b36d19
SM
5058 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
5059 Pass left and width of scroll bar including borders to
7863d625
JD
5060 xg_update_scrollbar_pos.
5061
af0ad939
TTN
50622003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
5063
5064 * Makefile.in: Make sure space precedes end-of-line backslashes.
5065
b22139fd
KS
50662003-03-22 Kim F. Storm <storm@cua.dk>
5067
5068 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
5069 Add generic versions here. Remove system specific versions
5070 defined elsewhere.
5071
5072 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
5073 Add prototypes.
5074
6e6410cf
KS
5075 * xterm.h (STORE_NATIVE_RECT): New macro.
5076
5c9cc435
KS
50772003-03-21 Kim F. Storm <storm@cua.dk>
5078
00c64fab
SM
5079 * xdisp.c (get_glyph_string_clip_rect):
5080 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
5081
5082 * dispextern.h (struct redisplay_interface): Add active_p
5083 argument to draw_window_cursor member. All uses changed.
5084
acd37560
KS
50852003-03-21 Kim F. Storm <storm@cua.dk>
5086
5087 The following changes consolidate code related to writing and
5088 inserting glyphs, exposing frame, the tool bar, the mouse face,
5089 the output cursor, and help echo from xterm.c, w32term.c and
5090 macterm.c into xdisp.c. It also generalizes the use of the
5091 window_part enum instead of using numeric values throughout.
af0ad939 5092
acd37560
KS
5093 * xdisp.c: Consolidate gui-independent code here.
5094 Include keymap.h.
5095 (Qhelp_echo): Import.
5096 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
5097 (help_echo_string, help_echo_window, help_echo_object)
5098 (previous_help_echo_string, help_echo_pos): Declare here.
5099 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
5100 (estimate_mode_line_height): Define here. Handle windowing
5101 systems directly (without using estimate_mode_line_height_hook).
5102 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
5103 (update_window_cursor, update_cursor_in_window_tree)
5104 (fast_find_position, fast_find_string_pos)
5105 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
5106 (expose_area, expose_line, expose_overlaps, expose_window)
5107 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
5108 declared static as they are only used locally in xdisp.c.
5109 (draw_glyphs): Rename from x_draw_glyphs and make static.
5110 (tool_bar_item_info, notice_overwritten_cursor): Make static.
5111 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
5112 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 5113 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
5114 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
5115 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
5116 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
5117 (note_mouse_highlight, x_clear_window_mouse_face)
5118 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
5119 (x_intersect_rectangles): New generic functions for use by xdisp.c
5120 and GUI front-ends.
5121 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
5122 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
5123
5124 * dispextern.h (Display_Info): Generic typedef for *_display_info.
5125 (NativeRectangle): Generic typedef for rectangle type.
5126 (enum window_part): Move here from window.c.
5127 (struct redisplay_interface): New members flush_display_optional,
5128 define_frame_cursor, clear_frame_area, draw_window_cursor,
5129 draw_vertical_window_border, shift_glyphs_for_insert.
5130 Rename member clear_mouse_face to clear_window_mouse_face.
5131 (estimate_mode_line_height_hook): Remove hook.
5132 (auto_raise_tool_bar_buttons_p): Don't declare extern.
5133 (tool_bar_item_info): Remove prototype.
5134 (help_echo_string, help_echo_window, help_echo_object)
5135 (previous_help_echo_string, help_echo_pos)
5136 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
5137 (x_stretch_cursor_p, output_cursor): Declare extern.
5138 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
5139 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
5140 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
5141 (display_and_set_cursor, set_output_cursor, x_cursor_to)
5142 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
5143 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
5144 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
5145 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
5146 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
5147 Add prototypes.
5148 (mode_line_string, marginal_area_string): Fix prototypes.
5149
5150 * window.c (enum window_part): Move to dispextern.h.
5151 (coordinates_in_window): Use enum window_part member names
5152 instead of numbers to describe return value.
5153 (struct check_window_data): Change part member to window_part.
5154 (check_window_containing): Return window_part unaltered.
5155 (window_from_coordinates): Change part arg from int to enum
5156 window_part. Allow part arg to be null. All users changed.
5157
5158 * window.h (window_from_coordinates): Fix prototype.
5159
5160 * term.c (estimate_mode_line_height): Move to xdisp.c.
5161
5162 * keyboard.c (make_lispy_event): Use enum window_part.
5163
5164 * dispnew.c (mode_line_string, marginal_area_string): Use enum
5165 window_part instead of int in arg list. Users changed.
5166
5167 * xterm.h (No_Cursor): Declare as None for X.
5168 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 5169
acd37560
KS
5170 * xterm.c: Remove consolidated defines and code.
5171 (BETWEEN): Remove unused macro.
5172 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
5173 (x_define_frame_cursor, x_clear_frame_area)
5174 (x_draw_window_cursor): New X-specific functions for RIF.
5175 (x_redisplay_interface): Add new members.
5176
5177 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
5178
5179 * w32term.h (struct w32_output): Remove cross_cursor member.
5180
5181 * w32term.c: Remove consolidated defines and code.
5182 (BETWEEN): Remove unused macro.
5183 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
5184 (w32_define_frame_cursor, w32_clear_frame_area)
5185 (w32_draw_window_cursor): New W32-specific functions for RIF.
5186 (w32_redisplay_interface): Add new members.
5187
a64387ee 5188 * w32gui.h (No_Cursor): Define as 0 for W32.
acd37560
KS
5189 (XRectangle): Add X compatible rectangle type.
5190 (NativeRectangle): Declare as RECT for W32.
5191 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
5192
5193 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
5194
5195 * w32console.c: Remove consolidated defines and code.
af0ad939 5196
acd37560
KS
5197 * msdos.h (Display_Info): Add generic typedef.
5198
5199 * msdos.c: Remove consolidated defines and code.
5200 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
5201
5202 * macterm.h (struct mac_output): Replace member cross_cursor by
5203 hand_cursor.
5204 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
5205
5206 * macterm.c: Remove consolidated defines and code.
5207 (BETWEEN): Remove unused macro.
5208 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
5209 (mac_define_frame_cursor, mac_clear_frame_area)
5210 (mac_draw_window_cursor): New Mac-specific functions for RIF.
5211 (x_redisplay_interface): Add new members.
5212
5213 * macgui.h (No_Cursor): Define as 0 for Mac.
5214 (XRectangle): Add X compatible rectangle type.
5215 (NativeRectangle): Declare as Rect for Mac.
5216 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
5217
204ccab1
KS
5218 * macfns.c (x_set_mouse_color): Setup hand_cursor.
5219 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 5220
9443fcf6 5221 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
5222 included from it. Add dependency on keymap.h.
5223
5224 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
5225
8ba01a70 52262003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
5227
5228 * fileio.c (Fexpand_file_name): Fix previous change.
5229
8ba01a70 52302003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
5231
5232 * fileio.c (Ffile_name_directory): Reconstruct file name by
5233 make_specified_string.
5234 (Ffile_name_nondirectory, Ffile_name_as_directory)
5235 (Fdirectory_file_name, Fexpand_file_name)
5236 (Fsubstitute_in_file_name): Likewise.
5237 (Fread_file_name): Compare decoded homedir with DIR and
5238 DEFAULT_FILENAME.
5239
5240 * alloc.c (make_specified_string): If NCHARS is negative, count
5241 the number of characters.
5242
19536747
JD
52432003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5244
de38ae5a
JD
5245 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
5246 all widgets.
5247
19536747
JD
5248 * gtkutil.h: Removed xg_ignore_next_thumb.
5249
37ab321e 52502003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
5251
5252 * coding.c (Vchar_coding_system_table): Remove this variable.
5253 (Vcoding_system_safe_chars): New variable.
5254 (intersection): Remove this function.
5255 (find_safe_codings): Don't use Vchar_coding_system_table, but try
5256 all codings in SAFE_CODINGS.
00c64fab 5257 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
5258 find_safe_codings. Get generic coding systems from
5259 Vcoding_system_safe_chars.
5260 (Fdefine_coding_system_internal): New function.
5261 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
5262 Initialize and staticpro Vcoding_system_safe_chars.
5263
17097258
JD
52642003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5265
2a2071c3
JD
5266 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
5267 equal old values before updating.
5268
17097258
JD
5269 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
5270
5271 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
5272
52732003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5274
5275 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
5276 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
5277 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
5278 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
5279 (xg_create_scroll_bar): Pass bar to button event callback.
5280 (xg_find_top_left_in_fixed): New function.
5281 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
5282 whole scroll bar area. Get old position with
5283 xg_find_top_left_in_fixed, calculate and only clear needed areas.
5284 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
5285 dragging is in progress. Calculate whole as for Motif.
5286 Remove code that saved last values. Call gtk_range functions to
5287 set scroll bar sizes.
5288
5289 * gtkutil.h: Removed xg_ignore_next_thumb.
5290
8cb9dfbf
JB
52912003-03-17 Juanma Barranquero <lektu@terra.es>
5292
5293 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
5294 and files included from it.
5295
00c64fab
SM
52962003-03-18 Stefan Monnier <monnier@cs.yale.edu>
5297
5298 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
5299 multiple occurrences of the same keymap under different prefixes.
5300 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
5301
c45bb3b2
JR
53022003-03-16 Jason Rumney <jasonr@gnu.org>
5303
5304 * w32gui.h: Use HDC for Display.
5305
5306 * w32term.c (w32_encode_char): Prevent double-byte chars from
5307 crashing Emacs.
5308
5309 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
5310 as binary.
5311
2a6d0874
JB
53122003-03-16 Juanma Barranquero <lektu@terra.es>
5313
5314 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
5315
03eb5fab
KS
53162003-03-16 Kim F. Storm <storm@cua.dk>
5317
5318 The following changes consolidate some of the gui-independent
5319 parts of the processing and drawing of "glyph strings" from
5320 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 5321
03eb5fab
KS
5322 * dispextern.h (struct glyph): Reduce face_id member from 22 to
5323 21 bits (this reduces number of faces from 4M to 2M).
5324 Replace W32 specific w32_font_type member (2 bits) by generic
5325 font_type member (3 bits) for portability.
5326 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
5327 (enum draw_glyphs_face): Define here.
5328 (struct glyph_string): Define here. Merge W32 and X versions.
5329 (struct redisplay_interface): New members per_char_metric,
5330 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
5331 (VCENTER_BASELINE_OFFSET): Define here.
5332 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
5333 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
5334
5335 * xdisp.c: Consolidate gui-independent "glyph string" code here.
5336 (dump_glyph_string): Moved here.
5337 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
5338 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
5339 (fill_composite_glyph_string, fill_glyph_string)
5340 (fill_image_glyph_string, fill_stretch_glyph_string)
5341 (left_overwritten, left_overwriting, right_overwritten)
5342 (right_overwriting, get_char_face_and_encoding)
5343 (set_glyph_string_background_width, compute_overhangs_and_x)
5344 (append_glyph, append_composite_glyph, produce_image_glyph)
5345 (take_vertical_position_into_account, append_stretch_glyph)
5346 (produce_stretch_glyph): New generic functions (based on X version).
5347 Call platform specific functions through rif.
5348 (INIT_GLYPH_STRING): New macro, hides W32 details.
5349 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
5350 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
5351 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
5352 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
5353 (notice_overwritten_cursor):
5354 Generic functions exported to platform modules. Users changed.
5355
5356 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
5357 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
5358 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 5359 New macros for consolidated code.
2a6d0874 5360
03eb5fab
KS
5361 * xterm.c: Remove consolidated defines and code.
5362 (x_per_char_metric, x_encode_char)
5363 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
5364 (x_redisplay_interface): Add new members.
5365
5366 * w32gui.h (Display): Add dummy typedef for consolidation.
5367 (XChar2b): Define alias for wchar_t for consolidation.
5368 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
5369
5370 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 5371 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
5372 New macros for consolidation.
5373
fad49844 5374 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
5375 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
5376 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
5377 (w32_per_char_metric): Change font_type arg to int for RIF.
5378 (w32_encode_char): Return int according to RIF requirements.
5379 (w32_compute_glyph_string_overhangs): Adapt to RIF.
5380 (w32_get_glyph_overhangs): New function for RIF. Uses generic
5381 x_get_glyph_overhangs.
5382 (w32_redisplay_interface): Add new members.
5383
5384 * macgui.h (XChar2b): Move typedef here for consolidation.
5385 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
5386
5387 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
5388 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
5389 consolidation.
5390
5391 * macterm.c: Remove consolidated defines and code.
5392 (mac_per_char_metric): New function for RIF.
00c64fab 5393 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
5394 (mac_compute_glyph_string_overhangs): Adapt for RIF.
5395 (x_redisplay_interface): Add new members.
5396
00c64fab
SM
53972003-03-15 Stefan Monnier <monnier@cs.yale.edu>
5398
5399 * keymap.c (Vmenu_events): New var.
5400 (syms_of_keymap): Initialize it.
5401 (where_is_internal): Check more carefully what is a menu event.
5402
225c7a07
RS
54032003-03-14 Richard M. Stallman <rms@gnu.org>
5404
5405 * lread.c (read1): After #!, exit loop on eof.
5406
cea9be54
JD
54072003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5408
9ea0e54d
JD
5409 * gtkutil.h: Add declaration for xg_frame_cleared.
5410
0cb35f4e
JD
5411 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
5412
cea9be54
JD
5413 * gtkutil.c (struct xg_last_sb_pos): New structure.
5414 (handle_fixed_child): New function.
5415 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
5416 and force a redraw on them.
5417 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
5418 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
5419 so we can avoid unneeded redraws.
5420 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
5421 and force a redraw on the scroll bar.
5422 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
5423 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 5424 (xg_frame_cleared): New function.
cea9be54 5425
20b853f3
KH
54262003-03-13 Kenichi Handa <handa@m17n.org>
5427
5428 * coding.c (Fdetect_coding_region): Fix docstring.
5429 (Fdetect_coding_string): Fix docstring.
5430
7a555aff
AS
54312003-03-13 Andreas Schwab <schwab@suse.de>
5432
25cc0080
AS
5433 * gtkutil.c: Add prototype for create_menus.
5434
30225431
AS
5435 * data.c (long_to_cons): Fix type of top.
5436
5437 * xselect.c (selection_data_to_lisp_data): Use int instead of
5438 long for an integer of size 4.
5439
7a555aff 5440 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 5441 (xg_tool_bar_help_callback): Likewise.
7a555aff 5442
a3e4741f
AS
54432003-03-12 Andreas Schwab <schwab@suse.de>
5444
5445 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
5446
9668be7c
KS
54472003-03-12 Kim F. Storm <storm@cua.dk>
5448
03eb5fab 5449 The following changes consolidate the fringe handling from
9668be7c 5450 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 5451
9668be7c
KS
5452 * xdisp.c: Consolidate fringe handling code here.
5453 (left_bits, right_bits, continued_bits, continuation_bits)
5454 (ov_bits, zv_bits): Define fringe bitmaps.
5455 (fringe_bitmaps): New array holding fringe bitmaps.
5456 (draw_fringe_bitmap): Draw a specific bitmap; call display
5457 specific drawing routine via rif->draw_fringe_bitmap.
5458 (draw_row_fringe_bitmaps): Generic replacement for
5459 x_draw_row_fringe_bitmaps; all callers changed.
5460 (compute_fringe_widths): Generic replacement for
5461 x_compute_fringe_widths; all callers changed.
5462
5463 * dispextern.h (enum fringe_bitmap_type): Define here.
5464 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
5465 (fringe_bitmaps): Declare extern.
5466 (struct redisplay_interface): New member draw_fringe_bitmap.
5467 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
5468
5469 * xterm.c: Remove generic fringe code.
5470 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
5471 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
5472
5473 * w32term.c: Remove generic fringe code.
5474 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
5475 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 5476
9668be7c
KS
5477 * macterm.c: Remove generic fringe code.
5478 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
5479 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
5480
00a88f32
SM
54812003-03-11 Stefan Monnier <monnier@cs.yale.edu>
5482
5483 * print.c (Fprin1_to_string): Return unibyte string if possible.
5484
1d1de695
DK
54852003-03-09 David Kastrup <dak@gnu.org>
5486
5487 * process.c (read_process_output): We have allocated enough space
5488 for readmax and carryover, so actually use the alloted space.
5489
257f40f2
JD
54902003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5491
5492 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
5493 toolkit scrollbar click.
5494
5495 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
5496 for USE_GTK.
5497 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
5498 also.
5499 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
5500 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 5501
257f40f2
JD
5502 * gtkutil.h: Declare xg_get_scroll_id_for_window.
5503
5504 * gtkutil.c (xg_get_scroll_id_for_window): New function.
5505 (xg_tool_bar_item_expose_callback): New function.
5506 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
5507 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
5508 on the tool bar widget.
5509 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
5510 to expose on the tool bar item widgets.
5511
15213141
JD
55122003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5513
26b74a0b 5514 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 5515 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
5516 deleted from the image cache).
5517
15213141
JD
5518 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
5519 the event isn't for a frame (i.e. for dialogs).
5520
20b853f3 55212003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
5522
5523 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
5524 composition components reaches the limit, terminate composing.
5525 (COMPOSITION_OK): New macro.
00a88f32 5526 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
5527 composition is found.
5528 (coding_restore_composition): Adjust the number of composition
5529 components if it is not sane.
5530
c9029fe5
JB
55312003-03-06 Juanma Barranquero <lektu@terra.es>
5532
5533 * w32term.h (struct w32_display_info): Add xrdb member to support
5534 passing resources via -xrm on Windows.
5535
5536 * w32term.c (w32_make_rdb): New function.
5537 (w32_term_init): Use it to initialize xrdb member of w32_display_info
5538 struct. Delete leftover code.
5539
5540 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
5541 for resources passed on the command line.
5542
5543 * w32reg.c (w32_get_rdb_resource): New function.
5544 (x_get_string_resource): Use it, so resources passed with -xrm
5545 supercede the ones in the registry.
5546
9d00001f
JD
55472003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5548
5549 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
5550 instead of x_top_window_to_frame.
5551
ca2417b9
JD
55522003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5553
5554 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
5555 when restarting Emacs.
5556
5b20caf0
RS
55572003-03-03 Richard M. Stallman <rms@gnu.org>
5558
5559 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
5560 to run kill-buffer-query-functions.
5561 (Qkill_buffer_query_functions): New var.
5562 (syms_of_buffer): Init and staticpro it.
5563
58e91b77
JD
55642003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5565
5566 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
5567
932357b4
KS
55682003-02-25 Kim F. Storm <storm@cua.dk>
5569
5570 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
5571 If centering point failed to make whole line visible and vscroll
5572 is non-zero, disable vscroll and try centering point again.
5573
5574 * lread.c (read1): Accept `single space' syntax like (? x).
5575
bb8db7e1
JD
55762003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5577
5578 * keyboard.c (cancel_hourglass_unwind): Surround with
5579 #ifdef HAVE_X_WINDOWS
5580
47d77aab
KH
55812003-02-25 Kenichi Handa <handa@m17n.org>
5582
5583 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
5584 process only when "subprocesses" is defined.
5585
6a097c0c
SM
55862003-02-24 Stefan Monnier <monnier@cs.yale.edu>
5587
5588 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
5589
0b063c27
JB
55902003-02-24 Juanma Barranquero <lektu@terra.es>
5591
d1135afc
JB
5592 * callint.c (fix_command): Declare as static void and move before
5593 Fcall_interactively.
5594
0b063c27
JB
5595 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
5596 (syms_of_xdisp): Don't initialize Qwhen.
5597
0af912f0
JD
55982003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5599
5600 * keyboard.c (cancel_hourglass_unwind): New function.
5601 (command_loop_1): Cancel hourglass with unwind-protect.
5602
120d0a23
RS
56032003-02-23 Richard M. Stallman <rms@gnu.org>
5604
5605 * callint.c (fix_command): New subroutine, from Fcall_interactively.
5606 Detect (when ... (region-beginning)) etc.
5607 (Fcall_interactively): Call fix_command.
5608 (Qif, Qwhen): New variables.
5609 (syms_of_callint): Init and staticpro them.
0b063c27 5610
120d0a23
RS
5611 * regex.c (print_partial_compiled_pattern): Output to stderr.
5612
4ece81a6
KG
56132003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
5614
5615 * dired.c (directory_files_internal): Don't expand directory.
5616 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
5617 instead. From Lars Hansen <larsh@math.ku.dk>.
5618
e52bd6b7
SM
56192003-02-22 Stefan Monnier <monnier@cs.yale.edu>
5620
5621 * fns.c (string_to_multibyte): Remove unused var i.
5622 (Flanginfo): Fix int/Lisp_Object mixup.
5623 (void_call2): New fun.
5624 (Fmap_char_table): Use it in place of call2.
5625
5626 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
5627
5628 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
5629
5630 * keymap.c (copy_keymap_1): Make it static.
5631
5632 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
5633
c33ef7c4
JB
56342003-02-22 David Ponce <david@dponce.com>
5635
5636 * lread.c (Fload): Don't check STRING_MULTIBYTE.
5637
16782258
JD
56382003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5639
5640 * process.h: Removed subtty field from struct Lisp_Process.
5641
5642 * process.c (create_process): Remove setting of subtty.
5643 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
5644 (Fprocess_running_child_p, process_send_signal):
5645 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
5646 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
5647
3abeca61
KG
56482003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
5649
5650 * keymap.c (Fdefine_key): Doc fix.
5651
92a8ce63
JB
56522003-02-21 Juanma Barranquero <lektu@terra.es>
5653
5654 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
5655
5656 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
5657 POLLING_PROBLEM_IN_SELECT.
5658
5659 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
5660 Delete #undef of POLLING_PROBLEM_IN_SELECT.
5661
5662 * s/hpux10-20.h: New file.
5663
e52bd6b7
SM
5664 * process.c (wait_reading_process_input):
5665 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 5666
20f1ef2e
KH
56672003-02-20 Kenichi Handa <handa@m17n.org>
5668
32d0a9dc
KH
5669 * fontset.c (check_fontset_name): If NAME is nil, return the
5670 default fontset.
5671 (override_font_info): New function.
e52bd6b7 5672 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
5673 (Ffontset_info): If FONTSET is not the default fontset, merge
5674 FONTSET onto the copy of the default fontset, and work on that
5675 copy. Document that NAME nil means the default fontset.
5676 (Ffontset_font): Document that NAME nil means the default fontset.
5677
20f1ef2e
KH
5678 * process.c (setup_process_coding_systems): If the process's
5679 in/out descriptor is -1, do nothing.
5680
77d1daf2
AS
56812003-02-19 Andreas Schwab <schwab@suse.de>
5682
e52bd6b7
SM
5683 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
5684 Add prototypes.
77d1daf2 5685
f9a45bb3
KH
56862003-02-19 Kenichi Handa <handa@m17n.org>
5687
5688 * xfaces.c (try_alternative_families): Try all scalable fonts if
5689 Vscalable_fonts_allowed is not Qt.
5690
72ecb43c
JD
56912003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5692
5693 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
5694
ee5be7c3
JD
56952003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5696
5697 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
5698 names.
5699
5700 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 5701 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
5702 x_face_list_fonts.
5703 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
5704 (Fx_list_fonts): Set maxnames to -1 to get all font names.
5705
4cd519a7
KS
57062003-02-18 Kim F. Storm <storm@cua.dk>
5707
068f9882
KS
5708 * lread.c (read1): Fix last change.
5709 "`" is not always special. Allow "?" after a character constant.
4cd519a7 5710
7290a344
AC
57112003-02-18 Andrew Choi <akochoi@shaw.ca>
5712
5713 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
5714
1f7fa69b
AS
57152003-02-18 Andreas Schwab <schwab@suse.de>
5716
5717 * window.c (window_scroll_pixel_based): Move outside a
5718 multi-glyph character before setting new window start.
5719
5720 * xdisp.c (in_display_vector_p): New function.
5721 * dispextern.h (in_display_vector_p): Declare.
5722
23e21195
KS
57232003-02-18 Kim F. Storm <storm@cua.dk>
5724
5725 * lread.c (read1): Fix and relax read syntax.
5726 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
5727 Only recognize "," after dotted-pair dot if inside backquote.
5728 Never include "`" or "," (inside backquote) in a symbol.
5729 Allow dotted-pair dot after a character constant.
5730 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 5731
f098b121
JD
57322003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5733
5734 * gtkutil.c (xg_tool_bar_expose_callback): New function.
5735 (xg_create_tool_bar): Force style of tool bar to be horizontal with
5736 icons. Set name of tool bar to emacs-toolbar.
5737 (update_frame_tool_bar): Connect expose event to
5738 xg_tool_bar_expose_callback.
5739
63020c46
RS
57402003-02-17 Richard M. Stallman <rms@gnu.org>
5741
5742 * keyboard.c (this_command_key_count_reset): New variable.
5743 Initiatize to 0 where this_command_key_count is set.
5744 (read_char): Save and restore this_command_key_count_reset
5745 around input method code.
5746 (read_char): If this_command_key_count_reset, echo reread commands.
5747 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
5748
fb4452cc
KH
57492003-02-17 Kenichi Handa <handa@m17n.org>
5750
5751 * fns.c (string_to_multibyte): Always return a multibyte string.
5752
bd11cc09
JR
57532003-02-16 Jason Rumney <jasonr@gnu.org>
5754
e52bd6b7
SM
5755 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
5756 Negative max_fonts parameter means list all.
bd11cc09 5757
4cdf4bde
DL
57582003-02-14 Dave Love <fx@gnu.org>
5759
5760 * fns.c (Flanginfo): Doc fix.
5761
023b93f6
KS
57622003-02-13 Kim F. Storm <storm@cua.dk>
5763
37cd4238
KS
5764 * lread.c (read_escape): Interpret \s as a SPACE character, except
5765 for \s-X in a character constant which still is the super modifier.
5766 (read1): Signal an `invalid read syntax' error if a character
5767 constant is immediately followed by a digit or symbol character.
5768
140a6b7e
KS
5769 * search.c (Fmatch_data): Doc fix. Explicitly state that
5770 match-data is undefined if last search failed.
5771
023b93f6
KS
5772 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
5773 All uses changed.
5774
7d5c86e5
JB
57752003-02-12 Juanma Barranquero <lektu@terra.es>
5776
5777 * eval.c (Fdefmacro): Fix typo.
5778
295fff2c
KS
57792003-02-12 Kim F. Storm <storm@cua.dk>
5780
5781 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
5782 macro is a string, convert meta modifiers in string when copying
5783 the string into a vector.
5784
60f3202d
KS
57852003-02-11 Kim F. Storm <storm@cua.dk>
5786
5787 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
5788
61cb0b53
KH
57892003-02-11 Kenichi Handa <handa@m17n.org>
5790
5791 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
5792
7392e23c
KS
57932003-02-10 Kim F. Storm <storm@cua.dk>
5794
5795 * process.c: Doc fixes.
5796 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
5797
ce4254bd
KH
57982003-02-10 Kenichi Handa <handa@m17n.org>
5799
9c7a329a
KH
5800 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
5801
ce4254bd
KH
5802 * process.c (QCfilter_multibyte): New variable.
5803 (setup_process_coding_systems): New function.
e52bd6b7
SM
5804 (Fset_process_buffer, Fset_process_filter):
5805 Call setup_process_coding_systems.
ce4254bd
KH
5806 (Fstart_process): Initialize the member `filter_multibyte' of
5807 struct Lisp_Process.
5808 (create_process): Call setup_process_coding_systems.
5809 (Fmake_network_process): New keyward `:filter-multibyte'.
5810 Initialize the member `filter_multibyte' of struct Lisp_Process.
5811 Call setup_process_coding_systems.
5812 (server_accept_connection): Call setup_process_coding_systems.
5813 (read_process_output): If the process has a filter, decide the
5814 multibyteness of a string to given to the filter by
5815 `filter_multibyte' member of the process. If the process doesn't
5816 have a filter and the result of conversion is unibyte, use
5817 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
5818 multibyte form.
5819 (Fset_process_coding_system): Call setup_process_coding_systems.
5820 (Fset_process_filter_multibyte): New function.
5821 (Fprocess_filter_multibyte_p): New function.
5822 (syms_of_process): Intern and staticpro QCfilter_multibyte.
5823 Defsubr Sset_process_filter_multibyte and
5824 Sprocess_filter_multibyte_p.
5825
5826 * process.h (struct Lisp_Process): New member filter_multibyte.
5827
5828 * lisp.h (setup_process_coding_systems): Add prototype.
5829
5830 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
5831 process, update coding systems for the process.
5832
b08d5f59
KH
58332003-02-09 Kenichi Handa <handa@m17n.org>
5834
5835 * fns.c (string_to_multibyte): New function.
5836 (Fstring_to_multibyte): New function.
5837 (syms_of_fns): Defsubr it.
5838
0dfd93c0
AS
58392003-02-08 Andreas Schwab <schwab@suse.de>
5840
5841 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
5842 instead of the substitution.
5843
7b76ca1c
JD
58442003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5845
5846 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
5847
5848 * xmenu.c (menu_position_func): Adjust menu popup position so that
5849 the menu is fully visible.
7b76ca1c 5850
2436a4e4
JD
58512003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5852
5853 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
5854 (x_make_frame_invisible, x_wm_set_icon_position):
5855 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
5856
5857 * xfns.c (x_set_name, x_set_title): Ditto.
5858
37d1e680
RS
58592003-02-04 Richard M. Stallman <rms@gnu.org>
5860
5861 * keyboard.c (echo_now): Update before_command_echo_length.
5862 (Freset_this_command_lengths): Reset this_command_key_count etc.
5863 immediately rather than arranging to do it later.
5864 (before_command_key_count_1, before_command_echo_length_1)
5865 (before_command_restore_flag): Vars deleted.
5866 (add_command_key): Don't handle before_command_restore_flag.
5867 (read_char, record_menu_key): Don't update before_command_key_count or
5868 before_command_echo_length.
5869 (read_char): Don't handle before_command_restore_flag.
5870
5871 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
5872 in direct-output clauses if it wouldn't be called in the ordinary case.
5873
578846a3
KS
58742003-02-04 Kim F. Storm <storm@cua.dk>
5875
5876 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
5877
49853a4d
JD
58782003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5879
5880 * gtkutil.c (remove_from_container): Copying list is not needed.
5881 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
5882 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
5883 on list returned from gtk_container_get_children to avoid memory leak.
5884
8b53dc06
JR
58852003-02-01 Jason Rumney <jasonr@gnu.org>
5886
5d54d177
JR
5887 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
5888 local malloc.
5889 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
5890 definitions in xpm.h.
5891 (init_xpm_functions): New function.
5892 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5893 (init_external_image_libraries): Try to load libXpm.dll.
5894
8b53dc06
JR
5895 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
5896 timestamp.
5897
b222e415
DL
58982003-01-31 Dave Love <fx@gnu.org>
5899
5900 * syntax.c (Fskip_chars_forward)
5901 (open-paren-in-column-0-is-defun-start): Doc fix.
5902
c60ee5e7
JB
59032003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
5904
5905 * fileio.c: Support // at start of name for Cygwin (just added proper
5906 preprocessor tests).
5907
5908 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
5909
5910 * Makefile.in: Use @EXEEXT@ for Cygwin.
5911
5912 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
5913
5914 * s/cygwin.h: Added for Cygwin port.
5915
53b37591
JB
59162003-01-31 Juanma Barranquero <lektu@terra.es>
5917
5918 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
5919 when including gif_lib.h.
fe929957
JB
5920 (init_gif_functions, init_tiff_functions): New functions.
5921 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
5922 Windows. Disable color table lookups. Call library functions
53b37591 5923 through pointers determined at runtime.
fe929957
JB
5924 (init_external_image_libraries): Try to load libungif.dll and
5925 libtiff.dll.
53b37591 5926
45415a8f
KH
59272003-01-31 Kenichi Handa <handa@m17n.org>
5928
5929 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 5930 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 5931
a97e4138
JD
59322003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5933
e52bd6b7 5934 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 5935
6eed9bed
DL
59362003-01-30 Dave Love <fx@gnu.org>
5937
5938 * alloc.c (Vgc_elapsed, gcs_done): New variables.
5939 (Fgarbage_collect): Use them.
5940 (init_alloc, syms_of_alloc): Set them up.
5941
100dcd40
JB
59422003-01-30 Juanma Barranquero <lektu@terra.es>
5943
5944 * w32fns.c (init_external_image_libraries): Add missing operator.
5945
fbd852af
JR
59462003-01-29 Jason Rumney <jasonr@gnu.org>
5947
5948 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
5949 an alternative name for jpeg.dll.
5950
8a2d8020
KH
59512003-01-29 Kenichi Handa <handa@m17n.org>
5952
5953 * xdisp.c (set_cursor_from_row): Pay attention to string display
5954 properties.
5955
058c18c7
AC
59562003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
5957
5958 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
5959 <escape>.
5960 (keycode_to_xkeysym_table): Reformat and add more comments.
5961 (XTread_socket): Drop special case for backspace.
5962
385f11cf
AC
59632003-01-28 Andrew Choi <akochoi@shaw.ca>
5964
5965 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
5966 values in old-style RGB specs.
5967
c922a224
JB
59682003-01-27 Juanma Barranquero <lektu@terra.es>
5969
5970 * w32fns.c (init_external_image_libraries): Try alternate names for the
5971 jpeg dll.
5972
0a1d6de0
JD
59732003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5974
5975 * gtkutil.c (create_dialog, xg_separator_p)
5976 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
5977 before calling strcmp or strlen.
5978
a97e4138 59792003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
5980
5981 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
5982 and handle image load failure.
5983
28908312
JR
59842003-01-26 Jason Rumney <jasonr@gnu.org>
5985
5986 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
5987 New functions.
5988 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
5989 Disable color table lookups. Call jpeg library functions
5990 through pointers determined at runtime.
5991 (init_external_image_libraries): Try to load jpeg.dll.
5992
84e47416
RS
59932003-01-25 Richard M. Stallman <rms@gnu.org>
5994
5995 * lisp.h: Declare format2 instead of format1.
5996
5997 * fileio.c (barf_or_query_if_file_exists):
5998 Call format2 instead of format1.
5999
6000 * editfns.c (format2): New function, replaces format1
6001 but takes exactly two Lisp Objects as format args.
6002
6003 * buffer.c (Fkill_buffer): Call format2 instead of format1.
6004
a97e4138 60052003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
6006
6007 * xterm.h: Change to return value of x_dispatch_event to int.
6008
6009 * xterm.c (x_filter_event): New function.
6010 (event_handler_gdk, XTread_socket): Call x_filter_event.
6011 (x_dispatch_event): Change to return value of finish.
6012 (event_handler_gdk): Use return value from x_dispatch_event.
6013
6014 * xfns.c (x_window): Call create_frame_xic for GTK version to
6015 initialize input methods.
6016
6017 * gtkutil.h: Add (void) prototypes.
6018
6019 * gtkutil.c (create_menus): Remove code that puts the help menu to
6020 the right.
6021
54eefef1
JR
60222003-01-25 Jason Rumney <jasonr@gnu.org>
6023
6024 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
6025 [HAVE_PNG]: Sync with xfns.c version.
6026 (png_load): Adjust colors for Windows. Use Windows
6027 bitmaps. Disable color table lookups.
c262430d
JR
6028 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
6029 (init_png_functions): New function.
6030 (png_read_from_memory, png_load): Call png library functions
6031 through pointers determined at runtime.
6032 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
6033 (init_external_image_libraries): New function.
6034 (init_xfns): Call it.
54eefef1 6035
1a9e275b
AS
60362003-01-24 Andreas Schwab <schwab@suse.de>
6037
6038 * minibuf.c (Fminibuffer_message): Verify type of parameter.
6039
a97e4138 60402003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
6041
6042 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
6043 of static initializer.
6044
422eec7e
DL
60452003-01-24 Dave Love <fx@gnu.org>
6046
6047 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
6048 architectures.
6049
6050 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
6051 Use __alignof__.
6052
2a026b04
KH
60532003-01-24 Kenichi Handa <handa@m17n.org>
6054
6055 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 6056 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
6057 (command_loop_1): Call adjust_point_for_property with proper
6058 second arg.
6059
a18bb28d
JR
60602003-01-22 Jason Rumney <jasonr@gnu.org>
6061
6062 Sync changes with xterm.c and xfns.c.
6063
6064 * w32term.c (x_draw_glyph_string_foreground)
6065 (x_draw_composite_glyph_string_foreground): Implement overstriking.
6066
6067 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
6068 phys_cursor's hpos is overwritten. This is still not completely
6069 correct, as it doesn't really make sense to use hpos at all to
6070 get the cursor glyph (as that is relative to the width of the
6071 characters on the line, which may have changed during the update).
6072
6073 * w32term.c (notice_overwritten_cursor): Handle the special case
6074 of the cursor being in the first blank non-text line at the
6075 end of a window.
6076
6077 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
6078 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
6079 Compute from the x position returned by x_draw_glyphs.
6080
6081 (x_display_and_set_cursor): Don't set phys_cursor_width here,
6082 except for NO_CURSOR and system caret, to make phys_cursor_width
6083 contain what its name suggests.
6084 (notice_overwritten_cursor): Consider the cursor image erased if
6085 the output area intersects the cursor image in y-direction.
6086
6a097c0c
SM
6087 * w32term.c (note_mode_line_or_margin_highlight): Rename from
6088 note_mode_line_highlight and extend.
a18bb28d
JR
6089
6090 * w32term.c (last_window): New variable.
6091 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
6092 (note_mouse_movement): Remove reimplemented code in #if 0.
6093
6094 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
6095 not update_mode_lines, and always set it to 1.
6096
ac6e47ef
JR
60972003-01-21 Jason Rumney <jasonr@gnu.org>
6098
6099 * w32fns.c (IDC_HAND): Define it if system headers don't.
6100
61012003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
6102
6103 * w32term.h (struct w32_output): New member hand_cursor.
6104 (WM_EMACS_SETCURSOR): New message definition.
6105
6106 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
6107 function w32_define_cursor.
6108 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
6109 position, change member name output_data.x to output_data.w32 and
6110 add function w32_define_cursor.
6111 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
6112 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
6113 (w32_initialize_display_info):
6114 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
6115
6116 * w32fns.c (Vx_hand_shape): New variable.
6117 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
6118 WM_EMACS_SETCURSOR.
6119 (x-create-frame): Setup Cursor types.
6120
ceb39a17
JB
61212003-01-21 David Ponce <david@dponce.com>
6122
ac6e47ef
JR
6123 * w32term.c (w32_encode_char): For DIM=1 charset, set
6124 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
6125 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 6126 2002-09-30.)
ac6e47ef
JR
6127 (w32_draw_relief_rect): Declare all args.
6128 (w32_define_cursor): New.
6129
6130 * w32fns.c (w32_load_cursor): New function.
6131 (w32_init_class): Use it.
6132 (x_put_x_image): Declare all args.
6133
46cf0bed
JB
61342003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
6135
6136 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
6137
a97e4138 61382003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
6139
6140 * gtkutil.c: Must include stdio.h before termhooks.h
6141
83fc9c63
DL
61422003-01-21 Dave Love <fx@gnu.org>
6143
6144 * alloc.c (Fgc_status): Print zombie list.
6145 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
6146 Fix assignment of zombies.
6147 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
6148 Don't take car of non-cons.
6149
6150 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6151
6152 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6153
fe04b8c8
JR
61542003-01-20 David Ponce <david@dponce.com>
6155
6156 * w32menu.c (digest_single_submenu): Declare all args.
6157
6158 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
6159 changes in xmenu.c:
6160
6161 (parse_single_submenu): Use individual keymap's prompt
6162 string as pane name, if there is one.
6163 (set_frame_menubar): Save menu_items_n_panes from each call to
6164 parse_single_submenu and use it when calling digest_single_submenu.
6165
539e69a9
ST
61662003-01-20 Steven Tamm <steventamm@mac.com>
6167
6168 * macterm.c (XTread_socket): Checks for valid, visible window
6169 before sending a scroll-wheel event.
6170
675d000f
RS
61712003-01-20 Richard M. Stallman <rms@gnu.org>
6172
6173 * xdisp.c (redisplay_window): If mini window's buffer is not
6174 a minibuffer, then redisplay it like other windows.
6175
a97e4138 61762003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
6177
6178 * gtkutil.c (xg_create_frame_widgets): Check if there is an
6179 external tool bar before setting tool bar height.
6180
048addec
JD
61812003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6182
6183 * xterm.c (handle_one_xevent): Surround popup_activated
6184 with #ifdef:s for non-toolkit version.
6185
6186 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
6187 (gtkutil.o): New file.
6188 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
6189 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
6190
6191 * gtkutil.c: New file for GTK version.
6192
6193 * gtkutil.h: New file for GTK version.
6194
6195 * xterm.h: Add xt_or_gtk_widget.
6196 Include gtk files for USE_GTK.
6197 (struct x_output): Add toolbar_height.
6198 (struct x_output): Add GTK widgets and Gdk size_hints.
6199 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
6200 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
6201 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
6202
6203 * xterm.c: Include gtkutil.h for USE_GTK.
6204 Declare extern void free_frame_menubar for USE_GTK.
6205 (note_mouse_highlight): Check popup_activated for USE_GTK.
6206 (xt_action_hook): Don't compile if USE_GTK.
6207 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
6208 (xg_scroll_callback): New function.
6209 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
6210 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
6211 for USE_GTK.
6212 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
6213 xg_show_scroll_bar for USE_GTK.
6214 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
6215 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
6216 (event_handler_gdk): New function for USE_GTK.
6217 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
6218 (handle_one_xevent): Make sure widget is mapped before
6219 calling x_real_positions for USE_GTK.
6220 (XTread_socket): Add GTK event loop for USE_GTK.
6221 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
6222 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
6223 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
6224 (x_iconify_frame): Add code for USE_GTK.
6225 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
6226 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
6227 is in gtkutil.c.
6228 (x_term_init): Add initialization for GTK.
6229 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
6230
6231 * xmenu.c: Include gtkutil.h for USE_GTK.
6232 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
6233 (single_menu_item, single_menu_item, Fx_popup_dialog):
6234 Check for USE_GTK.
048addec
JD
6235 (popup_widget_loop): New function for USE_GTK.
6236 (x_activate_menubar): Add code for USE_GTK.
6237 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
6238 (menu_highlight_callback, menubar_selection_callback):
6239 Add USE_GTK versions.
048addec
JD
6240 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
6241 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
6242 (free_frame_menubar): Only compile if not USE_GTK. GTK version
6243 is in gtkutil.c.
6244 (popup_selection_callback): New version for USE_GTK.
6245 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 6246 one USE_X_TOOLKIT version.
048addec
JD
6247 (xmenu_show): Call create_and_show_popup_menu.
6248 (dialog_selection_callback): New version for USE_GTK.
6249 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 6250 one USE_X_TOOLKIT version.
048addec
JD
6251 (xdialog_show): Call create_and_show_dialog.
6252
6253 * xfns.c: Include gtkutil for USE_GTK.
6254 (x_window_to_frame, x_any_window_to_frame)
6255 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
6256 (x_top_window_to_frame): Add code for USE_GTK.
6257 (x_set_background_color): Call xg_set_background_color for GTK.
6258 (x_set_menu_bar_lines): Check for USE_GTK.
6259 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
6260 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
6261 (x_window): Call xg_create_frame_widgets for USE_GTK.
6262 (Fx_create_frame): Check for USE_GTK
6263 (Fx_file_dialog): New implementation for USE_GTK.
6264
6265 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
6266 (update_menu_bar): Add check for USE_GTK.
6267 (update_tool_bar): Add check for USE_GTK and external tool bar.
6268 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
6269 (redisplay_internal): Add check for USE_GTK and popup_activated.
6270 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
6271 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
6272 (display_menu_bar): Add check for USE_GTK
6273
6274 * lisp.h: Declare Vx_resource_name extern.
6275
a64387ee 6276 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
048addec
JD
6277 for USE_GTK.
6278 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
6279
6280 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
6281 (FRAME_EXTERNAL_TOOL_BAR): New macro.
6282 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
6283
6284 * fileio.c (Fread_file_name): Add check for USE_GTK.
6285
6bdb309a
SM
6286 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
6287 Add check for USE_GTK.
048addec
JD
6288
6289 * config.in: Added HAVE_GTK
6290
6291 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
6292
62932003-01-18 Stefan Monnier <monnier@cs.yale.edu>
6294
6295 * charset.h (Funibyte_char_to_multibyte): Export.
6296
62972003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6298
6299 * xmenu.c (mouse_position_for_popup): New function.
6300 (Fx_popup_menu): Call mouse_position_for_popup for X and
6301 mouse_position_hook for others.
6302
63032003-01-17 Kim F. Storm <storm@cua.dk>
6304
6305 * editfns.c (Finsert): Mention `string-make-multibyte' and
6306 `string-as-multibyte' in doc string.
6307
63082003-01-17 Kenichi Handa <handa@m17n.org>
6309
6310 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 6311
048addec
JD
6312 * editfns.c (Fformat): Convert an unibyte char argument that is
6313 formatted by "%c" to multibyte if the total result must be a
6314 multibyte string.
cd7df9c0 6315
048addec 63162003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 6317
048addec
JD
6318 * process.c (set-process-filter): Document unibyte/multibyte-ness
6319 of string argument.
56210ecd 6320
048addec 63212003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 6322
048addec 6323 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 6324
048addec
JD
6325 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
6326 (re_search_2): Likewise.
6df8b9fe 6327
048addec 63282003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 6329
048addec
JD
6330 * xdisp.c (message_dolog): Fix bug of the case that *Message*
6331 buffer is unibyte.
292ddc31 6332
048addec 63332003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 6334
048addec 6335 * fns.c (Fsubstring): Clarify doc string.
292ddc31 6336
048addec
JD
6337 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
6338 (Fprevious_char_property_change)
6339 (Fnext_single_char_property_change)
6340 (Fprevious_single_char_property_change, Fnext_property_change)
6341 (Fnext_single_property_change, Fprevious_property_change)
6342 (Fprevious_single_property_change, Fadd_text_properties)
6343 (Fput_text_property, Fset_text_properties)
6344 (Fremove_text_properties, Fremove_list_of_text_properties)
6345 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 6346
048addec 63472003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 6348
048addec
JD
6349 * process.h (struct Lisp_Process): New member plist replaces old
6350 member private_vars. All uses changed.
63e4e4c6 6351
048addec 6352 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 6353 (QCplist): Rename from QCvars. Change all uses.
048addec 6354 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 6355 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 6356 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 6357 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 6358
048addec 63592003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 6360
6bdb309a 6361 * m/delta.h: Remove (obsolete).
e833850f 6362
048addec 63632003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 6364
048addec
JD
6365 * fileio.c (Fdelete_directory, Fdelete_file): Document the
6366 behaviour in front of symlinks.
6367 (Fdelete_file): Raise an error on directories.
817cb127 6368
048addec 63692003-01-13 Dave Love <fx@gnu.org>
817cb127 6370
048addec 6371 * fns.c (Freverse): Use QUIT.
3e8cf2ea 6372
048addec 63732003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 6374
048addec
JD
6375 * minibuf.c (minibuffer_completion_contents):
6376 Error if point is inside prompt.
3e8cf2ea 6377
048addec
JD
6378 * keyboard.c (command_loop_1): Don't redisplay directly
6379 if there's a post-command-hook.
3e8cf2ea 6380
048addec
JD
6381 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
6382 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 6383
048addec 63842003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 6385
048addec 6386 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 6387
048addec
JD
6388 * process.c (QCvars): New variable.
6389 (syms_of_process): Intern and staticpro it.
6390 (Fset_process_contact): Removed function.
6391 (Fprocess_variable, Fset_process_variable): New functions.
6392 (syms_of_process): Defsubr them.
6393 (Fstart_process): Initialize private_vars plist to nil.
6394 (Fmake_network_process): New arg :vars to setup the private
6395 variables for new network process.
6396 (server_accept_connection): Copy server's private variables to
6397 client process.
2c10f029 6398
048addec
JD
6399 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
6400 crashes). Code rewritten and simplified. Now directly aligns the
6401 pointer and recalculates pure_bytes_used, rather than aligning the
6402 size and adjusting the pointer.
b8a76c6c 6403
048addec 64042003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 6405
048addec
JD
6406 * process.c (Fset_process_contact): New function.
6407 (syms_of_process): defsubr it.
6408 (make-network-process): Update doc.
3a8d0899 6409
048addec 64102003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 6411
048addec
JD
6412 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
6413 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 6414
048addec 64152003-01-10 Dave Love <fx@gnu.org>
4abc7470 6416
048addec 6417 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 6418
048addec 64192003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 6420
048addec
JD
6421 * process.c (Fmake_network_process): Convert new port number
6422 to host byte order for `:service t' case. From Mario Lang.
bf338245 6423
048addec 64242003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 6425
048addec
JD
6426 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
6427 instead of XtAppProcessEvent.
bf338245 6428
048addec
JD
6429 * xterm.c (handle_one_xevent): New function.
6430 (x_dispatch_event): New function.
6431 (XTread_socket): Call handle_one_xevent.
bf338245 6432
048addec 6433 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 6434
048addec
JD
6435 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
6436 call XQueryPointer to get coordinates.
6437 (popup_get_selection): Do not set popup_activated_flag to zero,
6438 let popup_deactivate_callback do that. Needed for Motif.
6439 Call x_dispatch_event instead of XtDispatchEvent.
6440 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 6441
048addec 64422003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 6443
6bdb309a 6444 * process.c (server_accept_connection): Fix recording of new
048addec
JD
6445 connection's local address in :local property of contact info.
6446 (Fmake_network_process): Record local network address for new
6447 client processes in :local property of contact info.
6bdb309a 6448 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 6449
048addec 64502003-01-07 Dave Love <fx@gnu.org>
00e3ab56 6451
048addec 6452 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 6453
048addec 64542003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 6455
048addec 6456 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 6457
048addec
JD
6458 * eval.c (Fuser_variable_p): Doc change. For custom variables,
6459 use the same test as for custom-variable-p.
8c6d74c6 6460
048addec 64612003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 6462
048addec
JD
6463 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
6464 Count LAST_LINE_MISFIT in scroll margin for end of window.
6465 Move label too_near_end before setting SCROLL_MARGIN_POS.
6466 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 6467
048addec
JD
6468 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
6469 scroll_conservatively case. If scrolling that much doesn't change
6470 STARTP, move it down one line.
e833850f 6471
048addec
JD
6472 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
6473 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 6474
048addec
JD
6475 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
6476 selected frame.
8c6d74c6 6477
048addec
JD
6478 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
6479 (syms_of_keymap): staticpro them.
6480 (Fapropos_internal): Initialize them and clear them out.
6481 Don't GCPRO them.
8c6d74c6 6482
048addec
JD
6483 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
6484 Doc fixes.
8c6d74c6 6485
048addec
JD
6486 * lisp.h: New misc type Lisp_Save_Value.
6487 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
6488 (XSAVE_VALUE): New macro.
6489 (struct Lisp_Save_Value): New data type.
6490 (union Lisp_Misc): Add u_save_value alternative.
6491 (make_save_value): Declared.
8c6d74c6 6492
048addec 6493 * alloc.c (make_save_value): New function.
8c6d74c6 6494
048addec
JD
6495 * xterm.c (x_catch_errors): Save dpy using make_save_value.
6496 (x_catch_errors_unwind): Call XSync.
8c6d74c6 6497
048addec 64982003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 6499
048addec 6500 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 6501
048addec
JD
6502 * keyboard.c (command_loop_1): Call adjust_point_for_property
6503 in direct action cases for Qforward_char and Qbackward_char.
6504 Set already_adjusted so it won't be done twice.
8c6d74c6 6505
048addec 65062002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
8c6d74c6 6507
048addec
JD
6508 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
6509 type definition of size_t.
8c609cff 6510
048addec 65112003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 6512
048addec
JD
6513 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
6514 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 6515
048addec 65162002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 6517
048addec
JD
6518 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
6519 to default to t.
fa634a5e 6520
048addec 65212002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 6522
048addec 6523 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 6524
048addec 65252002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 6526
048addec
JD
6527 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
6528 allow building in a different directory than source. Uses some
6529 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 6530
048addec 65312002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 6532
048addec
JD
6533 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
6534 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
6535 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
6536 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 6537
048addec 65382002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 6539
048addec
JD
6540 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
6541 <scroll-down-aggressively>: Doc fix.
2155ecf3 6542
048addec
JD
6543 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
6544 string as pane name, if there is one.
6545 (set_frame_menubar): Save menu_items_n_panes from each call to
6546 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 6547
048addec
JD
6548 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
6549 Don't try to make last line fully visible if it is past end of window.
61f1d295 6550
048addec 65512002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 6552
048addec
JD
6553 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
6554 (mac_menu_show): Add support for hierarchical popup menus.
6555 (add_menu_item): Remove indentation support.
6556 (fill_submenu, fill_menu): Create hierarchical menus
6557 instead of using indentation.
0b17a217 6558
048addec 65592002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 6560
048addec
JD
6561 * xdisp.c (try_cursor_movement): Don't call try_window here.
6562 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 6563
048addec 6564 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 6565
048addec 65662002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 6567
048addec
JD
6568 * macterm.c (XTread_socket): Call KeyTranslate for control and
6569 meta to deal correctly shifted non-alpha characters, like C-S-5
6570 being treated like C-%. Does not look for shift key to deal
6571 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 6572
048addec 65732002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 6574
048addec
JD
6575 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
6576 If it is non-nil, run timers. Use an unwind-protect to requeue
6577 the events that were read ahead.
6578 (popup_get_selection_unwind): New subroutine.
6579 (popup_get_selection_queue): File-scope variable now holds that queue.
6580 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
6581 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
6582 Use an unwind-protect to pop down the dialog box.
6583 (xdialog_show_unwind): New subroutine implements that.
f02cac82 6584
048addec
JD
6585 * xdisp.c (row_containing_pos): Change exit test using last_y.
6586 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 6587
048addec
JD
6588 * lread.c (load_error_handler): New function.
6589 (Fload): Handle errors in Fsubstitute_in_file_name.
6590 Don't expect Fsignal to return.
f02cac82 6591
048addec
JD
6592 * eval.c: Errors and throws work right with interrupt blocking.
6593 (struct catchtag): New elt interrupt_input_blocked.
6594 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
6595 (internal_catch, Fcondition_case, internal_condition_case)
6596 (internal_condition_case_1, internal_condition_case_2): Save it.
6597 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 6598
048addec 6599 * editfns.c (Fformat): Add parens.
f02cac82 6600
048addec
JD
6601 * dired.c (file_name_completion): Fix that change.
6602 Delete special quit-handling code; just use QUIT.
f02cac82 6603
048addec 66042002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
f02cac82 6605
048addec
JD
6606 * dired.c (file_name_completion): Close directory on error
6607 just as in directory_files_internal.
1a590729 6608
048addec 66092002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 6610
048addec
JD
6611 * window.c (Fset_window_configuration): Set old_point to correct
6612 value when new_current_buffer == current_buffer.
f02cac82 6613
048addec 66142002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 6615
048addec
JD
6616 Revisited my earlier fix for the following entry in etc/PROBLEMS:
6617 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
6618 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 6619
048addec
JD
6620 These changes were in part based upon suggestions made by Peter
6621 'Luna' Runestig [peter@runestig.com].
9785d95b 6622
048addec
JD
6623 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
6624 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 6625 g_b_init_get_sid_identifier_authority ): Add several static
048addec 6626 global variables.
9785d95b 6627
048addec
JD
6628 * w32.c (globals_of_w32): New function. Used to initialize those
6629 global variables that must always be initialized on startup even
6630 when the global variable initialized is non zero. Its primary
6631 purpose at this time is to set the global variables
6632 g_b_init_is_windows_9x, g_b_init_open_process_token,
6633 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
6634 g_b_init_get_sid_identifier_authority to 0 on startup.
6635 Called from main.
9785d95b 6636
048addec
JD
6637 * w32.c (is_windows_9x): Perform initialization only if
6638 g_b_init_is_windows_9x is equal to 0. On initialization set
6639 g_b_init_is_windows_9x equal to 1.
2308af15 6640
048addec
JD
6641 * w32.c (open_process_token): Perform initialization only if
6642 g_b_init_open_process_token is equal to 0. On initialization set
6643 g_b_init_open_process_token equal to 1.
2308af15 6644
048addec
JD
6645 * w32.c (get_token_information): Perform initialization only if
6646 g_b_init_get_token_information is equal to 0. On initialization
6647 set g_b_init_get_token_information equal to 1.
9785d95b 6648
048addec
JD
6649 * w32.c (lookup_account_sid): Perform initialization only if
6650 g_b_init_lookup_account_sid is equal to 0. On initialization
6651 set g_b_init_lookup_account_sid equal to 1.
9785d95b 6652
048addec
JD
6653 * w32.c (get_sid_identifier_authority): Perform initialization
6654 only if g_b_init_get_sid_identifier_authority is equal to 0.
6655 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 6656
048addec
JD
6657 * w32fns.c (globals_of_w32fns): New function. Used to initialize
6658 those global variables that must always be initialized on startup
6659 even when the global variable initialized is non zero.
6660 Its primary purpose at this time is to initialize the global variable
6661 track_mouse_event_fn.
9785d95b 6662
a64387ee 6663 * w32fns.c (w32_wnd_proc): Remove initialization of
048addec 6664 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 6665
048addec 6666 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 6667
a64387ee 6668 * w32menu.c (globals_of_w32menu): New function. Used to
048addec
JD
6669 initialize those global variables that must always be initialized
6670 on startup even when the global variable initialized is non zero.
6671 Its primary purpose at this time is to initialize the global
6672 variables get_menu_item_info and set_menu_item_info.
9785d95b 6673
048addec
JD
6674 * w32menu.c (initialize_frame_menubar): Remove initialization of
6675 get_menu_item_info and set_menu_item_info.
9785d95b 6676
048addec 6677 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 6678
048addec
JD
6679 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
6680 Declare them.
9785d95b 6681
048addec
JD
6682 * emacs.c (main): Call globals_of_w32 prior to calling
6683 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
6684 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
6685 is defined.
9785d95b 6686
048addec
JD
6687 * w32term.c (x_update_window_begin): Fix Windows API error
6688 detected by BoundsChecker. Test to determine if
6689 w32_system_caret_hwnd is NULL prior to attempting to use
6690 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 6691
048addec
JD
6692 * w32term.c (x_update_window_end): Fix Windows API error
6693 detected by BoundsChecker. Test to determine if
6694 w32_system_caret_hwnd is NULL prior to attempting to use
6695 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 6696
048addec 66972002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 6698
048addec
JD
6699 * coding.c (coding_system_require_warning): New variable.
6700 (syms_of_coding): DEFVAR it.
b6da19ef 6701
048addec 6702 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 6703
048addec
JD
6704 * fileio.c (choose_write_coding_system): Even if
6705 Vcoding_system_for_write is non-nil, if
6706 coding_system_require_warning is nonzero, call
6707 Vselect_safe_coding_system_function.
bfcf6dbe 6708
048addec 67092002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 6710
048addec
JD
6711 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
6712 (lisp): Add font-core.
2c568af5 6713
048addec 67142002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 6715
048addec
JD
6716 * textprop.c (text_read_only): New arg `propval'.
6717 (get_char_property_and_overlay): Remove unused var `next_overlay'.
6718 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 6719
048addec 67202002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 6721
048addec 6722 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 6723
048addec 67242002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 6725
048addec
JD
6726 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
6727 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
6728 Be more careful about when help_events are generated.
96720f09 6729
048addec 67302002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 6731
048addec
JD
6732 * macterm.c (mac_check_for_quit_char): Correctly set the
6733 modifiers of the event to 0.
6734 * mac.c (sys_select): Duplicate rfds before calling select to
6735 ensure that rfds survive the while loop.
e5ae1c49 6736
048addec 67372002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 6738
048addec
JD
6739 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
6740 row_containing_pos returned NULL.
2eb46b2d 6741
048addec 67422002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 6743
6bdb309a 6744 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 6745 non-blocking.
6bdb309a 6746 (sys_select): Fix sys_select to not use a timeout larger than
048addec 6747 the one given.
b11f1d8a 6748
048addec 67492002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 6750
048addec 6751 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 6752
048addec 67532002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 6754
048addec
JD
6755 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
6756 as the last thing.
a4ac5b17 6757
048addec 67582002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 6759
048addec 6760 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 6761
048addec 67622002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 6763
048addec
JD
6764 * editfns.c (Fformat): Handle precision in string conversion
6765 specifiers like libc functions do (ie, print at most that many
6766 characters).
85cce843 6767
048addec 67682002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 6769
048addec
JD
6770 * xdisp.c (row_containing_pos): Check more carefully
6771 whether charpos is really in the row before returning it.
0d4d26a7 6772
048addec 67732002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 6774
048addec 6775 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 6776
048addec
JD
6777 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
6778 each stack frame. This may change as it could be time consuming.
0d4d26a7 6779
048addec
JD
6780 * macterm.c (mac_check_for_quit_char, quit_char_comp)
6781 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 6782 (mac_initialize): Add code to check for pressing of quit_char
048addec 6783 in the OS event queue.
b11f1d8a 6784
048addec
JD
6785 * mac.c (sys_select): Call mac_check_for_quit_char every second
6786 while blocking on select.
0d4d26a7 6787
048addec
JD
6788 * mac.c (sys_read): Use sys_select to test for input first
6789 before calling read, to allow C-g to break.
9252f7bc 6790
048addec 67912002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 6792
048addec 6793 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 6794
048addec 6795 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 6796
048addec 6797 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 6798
048addec
JD
6799 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
6800 autoload.
9252f7bc 6801
048addec 6802 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 6803
048addec 6804 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 6805
048addec 68062002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 6807
048addec 6808 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 6809
048addec 68102002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 6811
048addec 6812 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 6813
048addec 6814 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 6815
048addec 6816 * alloca.c: Don't use #error.
02d588e2 6817
048addec 68182002-12-03 Dave Love <fx@gnu.org>
02d588e2 6819
048addec
JD
6820 * buffer.c (Qucs_set_table_for_input): New.
6821 (Fget_buffer_create): Use it.
6822 (Qset_buffer_major_mode_hook): Deleted.
6823 (Fset_buffer_major_mode): Revert previous change.
6824 (init_buffer_once): Intern ucs-set-table-for-input.
6825 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
6826 Add &Qucs_set_table_for_input.
451e2697 6827
048addec 68282002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 6829
048addec
JD
6830 * callint.c (Fcall_interactively): Use next_event only if less
6831 than key_count.
72742a99 6832
048addec 68332002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 6834
048addec
JD
6835 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
6836 names to 255 characters.
72742a99 6837
048addec
JD
6838 * macterm.c (XTread_socket): If all frames have been collapsed,
6839 expand the first one before handling drag-and-drop events.
72742a99 6840
048addec
JD
6841 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
6842 which is detected by autoconf.
40e6ff95 6843
048addec 68442002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 6845
048addec
JD
6846 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
6847 offset in two hints table to allow prebinding to be redone and
6848 allow the executable to be stripped.
c02138c6 6849
048addec 68502002-11-29 Dave Love <fx@gnu.org>
c02138c6 6851
048addec
JD
6852 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
6853 already provided.
0e47bbf7 6854
048addec 68552002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 6856
048addec
JD
6857 * xdisp.c (start_display): Check more intelligently for
6858 whether the line is continued.
6859 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 6860
048addec 68612002-11-28 Dave Love <fx@gnu.org>
44129dcb 6862
048addec
JD
6863 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
6864 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 6865
048addec 68662002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 6867
048addec
JD
6868 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
6869 more descriptive error output from lread.c:Fload upon most require
6870 cycles during boostrapping.
1637fd2c 6871
048addec 68722002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 6873
048addec
JD
6874 * fileio.c (Finsert_file_contents): Give a more appropriate error
6875 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 6876
048addec
JD
6877 * dired.c (Ffile_attributes): Don't return negative file sizes for
6878 files bigger than 2Gb when off_t is 32 bit.
540c2788 6879
048addec 68802002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 6881
048addec 6882 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 6883
048addec
JD
6884 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
6885 Test GETPGRP_VOID instead.
6886 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 6887
048addec
JD
6888 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
6889 Don't define.
6890 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 6891
048addec 6892 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 6893
048addec 68942002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 6895
048addec
JD
6896 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
6897 supported.
4042a81a 6898
048addec 68992002-11-25 Dave Love <fx@gnu.org>
4042a81a 6900
048addec 6901 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 6902
048addec 6903 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 6904
048addec 69052002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 6906
048addec 6907 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 6908
048addec 69092002-11-24 Steven Tamm <steventamm@mac.com>
82122254 6910
048addec
JD
6911 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
6912 determine the size of pointers alloced in unexed space instead
6913 of using possibly invalid emacs_zone pointers. This fixes the
6914 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 6915
048addec 69162002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 6917
048addec 6918 * search.c (Fstring_match): Doc fix.
c1ee53bc 6919
048addec
JD
6920 * callint.c (Fcall_interactively): If a command fails because
6921 `*' detects a read-only buffer, but RECORD_FLAG is set,
6922 record it anyway if the args don't actually do tty input.
5598c32e 6923
048addec 69242002-11-22 Dave Love <fx@gnu.org>
5598c32e 6925
048addec 6926 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 6927
048addec
JD
6928 * keyboard.c (interrupt_signal): Provide forward declaration.
6929 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 6930
048addec 6931 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 6932
048addec 69332002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 6934
048addec
JD
6935 * eval.c (interactive_p): Skip any number of bytecode
6936 and special form frames, in any order.
516eea8e 6937
048addec 69382002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 6939
048addec
JD
6940 * w32fns.c (convert_mono_to_color_image): New function.
6941 (xbm_load, xbm_load_image): Use it when foreground or background
6942 is explicitly set.
04dbfa08 6943
048addec 69442002-11-19 Dave Love <fx@gnu.org>
04dbfa08 6945
048addec 6946 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 6947
048addec 69482002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 6949
048addec
JD
6950 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
6951 (XPutPixel): Swap blue and red.
6952 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
6953 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
6954 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
6955 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 6956
048addec 69572002-11-18 Dave Love <fx@gnu.org>
d824beee 6958
048addec 6959 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 6960
048addec 6961 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 6962
048addec 6963 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 6964
048addec
JD
6965 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
6966 malloc, realloc, calloc.
d824beee 6967
048addec
JD
6968 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
6969 (bcmp): Don't define.
d824beee 6970
048addec 6971 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 6972
048addec 6973 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 6974
048addec 6975 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 6976
048addec 6977 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 6978
048addec
JD
6979 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
6980 Don't include alloca.h.
d824beee 6981
048addec 6982 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 6983
048addec 6984 * regex.c (_GNU_SOURCE): Don't define.
1998560a 6985
048addec 6986 * process.c (_GNU_SOURCE): Don't define.
1998560a 6987
048addec 6988 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 6989
048addec 69902002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 6991
048addec 6992 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 6993
048addec 69942002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 6995
048addec
JD
6996 * dispextern.h (struct face): Add `overstrike' field.
6997 * xterm.c (x_draw_glyph_string_foreground)
6998 (x_draw_composite_glyph_string_foreground): Implement overstriking.
6999 * xfaces.c (load_face_font): Set `face->overstrike' based on
7000 result from choose_face_font.
7001 (best_matching_font, choose_face_font): Add `needs_overstrike'
7002 argument, and use it to return whether overstriking is desirable
7003 for this face/font combo.
7004 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 7005
048addec 70062002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 7007
048addec
JD
7008 This change is my fix for the following entry in etc/PROBLEMS:
7009 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
7010 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 7011
048addec
JD
7012 * w32.c: Added wrapper functions around the win32 API functions
7013 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
7014 GetSidIdentifierAuthority. These wrapper functions serve two
7015 purposes:
7016 1. They ensure that the wrapped function can never be called
7017 when Emacs is running on an operating system on which they are
7018 not supported (Microsoft Windows 95 / 98 / ME).
7019 2. They call the wrapped functions via function pointers rather
7020 than calling them directly. This avoids taking advantage of the
7021 undocumented fact that although these functions are not supported
7022 in the 9x branch of Microsoft Windows, the functions do exist in
7023 the version of advapi32.dll that is found in the 9x branch of
7024 Microsoft Windows.
f60ae425 7025
6bdb309a 7026 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
7027 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
7028 and GetSidIdentifierAuthority with calls to the newly added
7029 wrapper functions.
f60ae425 7030
048addec
JD
7031 * w32.h: Added extern declarations for the following functions:
7032 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
7033 syms_of_w32menu, and void syms_of_fontset.
f60ae425 7034
6bdb309a 7035 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
7036 function pointer track_mouse_event_fn in the handler for the
7037 WM_SETFOCUS message.
3582b6a3 7038
6bdb309a 7039 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
7040 reinitialize the function pointers set_menu_item_info and
7041 get_menu_item_info.
f60ae425 7042
048addec 70432002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 7044
048addec
JD
7045 * sound.c: Added a partial implementation of play-sound-internal
7046 for Microsoft Windows. Added various #ifdef / #else / #endif
7047 code blocks to separate the code that will compile under
7048 Microsoft Windows from the code that is specific to Gnu/Linux.
7049 Moved several blocks of code around to make this separation of code
7050 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 7051
048addec 7052 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 7053
048addec
JD
7054 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
7055 added support for play-sound-internal under Windows would be
7056 included in the build of Emacs.
517f42a0 7057
048addec 70582002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 7059
048addec 7060 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 7061
048addec 7062 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 7063
048addec 70642002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 7065
048addec
JD
7066 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
7067 (adjust_point_for_property): Move out of display and invisible even if
7068 we were already inside before (in case a property was added while
7069 we weren't looking). Be more careful when handling invisible props.
7070 Skip invisible text as if it really wasn't there at all.
aab83f91 7071
048addec 70722002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 7073
048addec
JD
7074 * w32term.c (x_draw_image_foreground)
7075 (w32_draw_image_foreground_1): Use standard copy and invert
7076 operations to draw images.
aab83f91 7077
048addec
JD
7078 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
7079 depth of 1.
7080 (xbm_read_bitmap_data): Invert bits as xbm is read in.
7081 (XPutPixel): Don't invert bits here.
a4478a76 7082
048addec 70832002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 7084
048addec
JD
7085 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
7086 (w32_draw_image_foreground_1): Handle image masks.
7087 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 7088
048addec
JD
7089 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
7090 (x_from_xcolors): Adjust RGB values for W32.
7091 (image_background, image_background_transparent)
7092 (postprocess_image, x_to_xcolors, x_disable_image)
7093 (x_build_heuristic_mask): Adapt for W32 and enable.
7094 (x_create_x_image_and_pixmap): Mark images with palettes as such.
7095 (xbm_load): Remove unused variable.
03670a65 7096
048addec 70972002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 7098
048addec 7099 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 7100
048addec 71012002-11-14 Dave Love <fx@gnu.org>
59daa29a 7102
048addec 7103 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 7104
048addec
JD
7105 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
7106 * xmenu.c (unuse_menu_items, digest_single_submenu):
7107 * xfns.c (x_put_x_image):
7108 * xdisp.c (message2_nolog, set_message):
7109 * undo.c (record_point):
7110 * terminfo.c (tparam):
7111 * syntax.c (scan_sexps_forward):
7112 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
7113 * composite.c (update_compositions):
7114 * cm.c (calccost, cmgoto):
7115 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 7116
048addec 7117 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 7118
048addec
JD
7119 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
7120 Don't declare.
59daa29a 7121
048addec 7122 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 7123
048addec
JD
7124 * fns.c (Fcopy_sequence): Doc fix.
7125 (Fmap_char_table): Cast `call2'.
3947677c 7126
048addec
JD
71272002-11-14 Francesco Potorti` <pot@gnu.org>
7128
7129 * s/sol2-8.h: New file.
7130
71312002-11-14 Kim F. Storm <storm@cua.dk>
7132
7133 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
7134 dependency on `risky-local-variable' and the :propertize form.
7135
71362002-11-12 Stefan Monnier <monnier@cs.yale.edu>
7137
7138 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
7139
7140 * syntax.c (scan_sexps_forward): Undo last patch.
7141 Use a more obvious fix: check eob before updating the syntax table.
7142
71432002-11-09 Stefan Monnier <monnier@cs.yale.edu>
7144
7145 * syntax.c (scan_sexps_forward): Update syntax table before reading
7146 a char rather than after so we don't update the table past eob.
7147
71482002-11-09 Dave Love <fx@gnu.org>
7149
7150 * buffer.c (Fset_buffer_major_mode): Fix last change.
7151
7152 * regex.c (regexec): Fix pmatch declaration.
7153
7154 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
7155
7156 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
7157 to self-inserting characters.
7158 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
7159
7160 * coding.c (Vtranslation_table_for_input): New.
7161 (syms_of_coding): DEFVAR it.
7162
71632002-11-08 Juanma Barranquero <lektu@terra.es>
7164
7165 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
7166 window.
7167
71682002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7169
6bdb309a 7170 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
7171 cp, and i.
7172
71732002-11-06 Dave Love <fx@gnu.org>
7174
7175 * buffer.c (Qset_buffer_major_mode_hook): New.
7176 (Fset_buffer_major_mode): Use it.
7177
71782002-11-06 Richard M. Stallman <rms@gnu.org>
7179
7180 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
7181 and stop_polling.
7182
7183 * process.c (wait_reading_process_input):
7184 Test POLLING_PROBLEM_IN_SELECT, not hpux.
7185 Avoid initialization for auto Lisp_Object var.
7186
7187 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
7188
7189 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
7190
71912002-11-05 Richard M. Stallman <rms@gnu.org>
7192
7193 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
7194
7195 * callint.c (Fcall_interactively): New local filter_specs.
7196 (Fcall_interactively): Check for progn as well as let.
7197 Add a gcpro.
7198 (Qprogn): New variable.
7199 (syms_of_callint): Staticpro and init Qprogn.
7200
72012002-11-04 John Paul Wallington <jpw@shootybangbang.com>
7202
7203 * lread.c (Feval_buffer): Doc fix.
7204
72052002-11-04 Dave Love <fx@gnu.org>
7206
7207 * keyboard.c (read_char): Always translate iff
7208 Vkeyboard_translate_table is a char table and c is valid.
7209
7210 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
7211 and fix C types.
7212
72132002-11-03 Stefan Monnier <monnier@cs.yale.edu>
7214
7215 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
7216
7217 * editfns.c (get_pos_property): Don't hardcode Qfield.
7218
7219 * keyboard.c (adjust_point_for_property): Handle `display' prop on
7220 overlays. Also handle `invisible' prop.
7221
72222002-11-02 Stefan Monnier <monnier@cs.yale.edu>
7223
7224 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
7225 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
7226
72272002-11-01 Andreas Schwab <schwab@suse.de>
7228
7229 * editfns.c (Fmessage): Revert last change to properly handle %%.
7230
72312002-11-01 Stefan Monnier <monnier@cs.yale.edu>
7232
7233 * xmenu.c (unuse_menu_items): New fun.
7234 (menu_items_inuse): New var.
7235 (syms_of_xmenu): Initialize it.
7236 (init_menu_items): Use it to detect re-entrance.
7237 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
7238 (Fx_popup_menu): Remove spurious XSETFRAME.
7239
7240 * editfns.c (find_field): Make an exception for nil fields.
7241
72422002-11-01 Dave Love <fx@gnu.org>
7243
7244 * m/gec63.h: Deleted.
7245
72462002-10-31 Dave Love <fx@gnu.org>
7247
7248 * xterm.c (XTread_socket): Fix last change.
7249 (xaw_scroll_callback): Cast call_data to long to avoid warning.
7250
72512002-10-31 Stefan Monnier <monnier@cs.yale.edu>
7252
7253 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
7254
72552002-10-30 Stefan Monnier <monnier@cs.yale.edu>
7256
7257 * editfns.c (overlays_around, get_pos_property): New funs.
7258 (find_field): Use them.
7259 Also be careful not to modify POS before its last use.
7260 (Fmessage): Don't Fformat if there's nothing to format.
7261
72622002-10-30 Dave Love <fx@gnu.org>
7263
7264 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
7265 [HAVE_PTY_H]; Include pty.h.
7266
7267 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
7268
7269 * xterm.c (Qeql): Declare.
7270 (Vx_keysym_table): New.
7271 (syms_of_xterm): Initialize it.
7272 (XTread_socket): Use it. Deal with ASCII keysyms.
7273 (XSetIMValues) [HAVE_X11R6]: Prototype.
7274
7275 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
7276 (lispy_kana_keys): Comment out.
7277 (make_lispy_event) [XK_kana_A]: Comment out.
7278 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
7279 Fix sprintf call.
7280
7281 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
7282 regexp.h change).
7283 (TERMINFO, LIBS_TERMCAP): Define.
7284
7285 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
7286 (bcmp): Define conditional on HAVE_BCMP.
7287 (NO_SIOCTL_H): Don't define.
7288 (TIOCSIGSEND): Don't make conditional on IRIX6.
7289
7290 * s/sol2-5.h: Don't include strings.h.
7291 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
7292
7293 * s/irix6-0.h (IRIX6): Don't define.
7294 (bcopy, bcmp, bzero): Don't undef.
7295
7296 * s/irix6-5.h: Don't include strings.h.
7297 (IRIX6): Don't define.
7298 (bcopy, bcmp, bzero): Don't undef.
7299
7300 * syntax.c (Fforward_comment): Doc fix.
7301
73022002-10-29 Kim F. Storm <storm@cua.dk>
7303
7304 * process.c (Fsignal_process): Allow PROCESS to be specified by
7305 name in addition to pid (as integer or string).
7306
73072002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
7308
7309 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
7310 environments.
7311
73122002-10-27 Kim F. Storm <storm@cua.dk>
7313
7314 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
7315
7316 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
7317
7318 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
7319
7320 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
7321
73222002-10-26 Richard M. Stallman <rms@gnu.org>
7323
7324 * editfns.c (Fformat): Detect invalid format letters for floats.
7325
73262002-10-25 Kenichi Handa <handa@m17n.org>
7327
7328 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
7329 (x_set_title): Likewise.
7330
73312002-10-25 Juanma Barranquero <lektu@terra.es>
7332
7333 * macgui.h:
7334 * w32gui.h: Remove definition of XColor.
7335
7336 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
7337
73382002-10-24 Kim F. Storm <storm@cua.dk>
7339
7340 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
7341 Callers changed (supply dummy arg).
7342
7343 * lisp.h (get_window_cursor_type): Update prototype.
7344
7345 * w32term.c (x_display_and_set_cursor): Get active_cursor from
7346 get_window_cursor_type to track system caret.
7347
73482002-10-24 Kim F. Storm <storm@cua.dk>
7349
7350 * process.c (Fformat_network_address): New function.
7351 (syms_of_process): Defsubr it.
7352 (list_processes_1): Use it to format :local/:remote address if
7353 service/host is not set; before emacs would crash in that case.
7354 (Fmake_network_process): Don't use Ffind_operation_coding_system
7355 to setup coding system if host or service is not set.
7356
73572002-10-23 Juanma Barranquero <lektu@terra.es>
7358
7359 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
7360
7361 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
7362 COLORREF.
7363
7364 * macgui.h:
7365 * w32gui.h: Add definition of XColor.
7366
7367 * macfns.c:
7368 * w32fns.c:
7369 * xfaces.c: Remove definition of XColor.
7370
73712002-10-22 Stefan Monnier <monnier@cs.yale.edu>
7372
7373 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
7374
7375 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
7376 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
7377 window if it is dedicated.
7378 (Fshrink_window): Add preserve_before as was done for enlarge_window.
7379 (Vspecial_display_function): Update docstring.
7380
7381 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
7382 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
7383 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
7384
73852002-10-21 Stefan Monnier <monnier@cs.yale.edu>
7386
7387 * casefiddle.c (casify_region): Don't treat a prefix char as part
7388 of a word when at the beginning.
7389
73902002-10-17 Juanma Barranquero <lektu@terra.es>
7391
7392 * lread.c (syms_of_lread): Fix typos.
7393
73942002-10-17 Dave Love <fx@gnu.org>
7395
7396 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
7397
73982002-10-16 Richard M. Stallman <rms@gnu.org>
7399
7400 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
7401
74022002-10-14 Juanma Barranquero <lektu@terra.es>
7403
7404 * w16select.c (syms_of_win16select): Fix docstring for
7405 `selection-coding-system'.
7406
7407 * w32select.c (syms_of_w32select): Likewise.
7408
74092002-10-14 Stefan Monnier <monnier@cs.yale.edu>
7410
7411 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
7412 a backslash-quoted char.
7413 (scan_lists, scan_sexps_forward): Pacify the compiler.
7414
74152002-10-13 Richard M. Stallman <rms@gnu.org>
7416
7417 * window.c (window_scroll): Set immediate_quit.
7418
7419 * print.c (print): When backquote form is the car of a list,
7420 output in old style. Use old_backquote_output to output all
7421 comma forms inside it in old style too.
7422
7423 * buffer.h (struct buffer): Move `undo_list' down below `name'.
7424
74252002-10-11 Markus Rost <rost@math.ohio-state.edu>
7426
7427 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
7428 batch mode).
7429
7430 * lread.c (Fload): Doc fix (load-suffixes).
7431
74322002-10-10 Steven Tamm <steventamm@mac.com>
7433
7434 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
7435 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
7436 Also switch the default to Qnil from Qt.
7437
74382002-10-08 Kenichi Handa <handa@m17n.org>
7439
7440 * coding.c (code_convert_region): When we need more GAP for
7441 conversion, pay attention to the case that coding->produced is not
7442 greater than coding->consumed.
7443
74442002-10-07 Richard M. Stallman <rms@gnu.org>
7445
7446 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
7447
74482002-10-06 Andrew Choi <akochoi@shaw.ca>
7449
7450 * macmenu.c (mac_menu_show): Add j to count menu items; match
7451 menu_item_selection to it to find selected item.
7452
74532002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7454
7455 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
7456 cases. The correct fix is to pass ReparentNotify to Xt.
7457 The shell widget interprets ConfigureNotify differently depending
7458 on if it has been reparented or not.
7459
74602002-10-05 Markus Rost <rost@math.ohio-state.edu>
7461
7462 * editfns.c (Fformat_time_string): Doc fix.
7463
74642002-10-05 John Paul Wallington <jpw@shootybangbang.com>
7465
7466 * fns.c (Flength): Doc fix.
7467
74682002-10-04 Stefan Monnier <monnier@cs.yale.edu>
7469
7470 * keyboard.c (keyremap): New struct.
7471 (read_key_sequence): Use it: globally replace keytran_foo with
7472 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
7473 keytran_next and fkey_next to just `next'.
7474
74752002-10-04 Steven Tamm <steventamm@mac.com>
7476
7477 * macterm.c (keycode_to_xkeysym_table): Change return to be
7478 treated like an X keysym.
7479
74802002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7481
7482 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
7483 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
7484 This is to also handle x/y changes that occur because of a resize.
7485
74862002-10-02 John Paul Wallington <jpw@shootybangbang.com>
7487
7488 * frame.c (Vdelete_frame_functions): New variable.
7489 (syms_of_frame): Initialize and defvar it.
7490 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
7491 it when frame's `tooltip' parameter is non-nil.
7492
7493 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
7494
7495 * w32fns.c (x_create_tip_frame): Likewise.
7496
7497 * macfns.c (x_create_tip_frame): Likewise.
7498
74992002-09-30 Kenichi Handa <handa@m17n.org>
7500
7501 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
7502 -1 before calling ccl_driver.
7503
7504 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
7505 Only when it is non-nil, handle composition sequence.
7506 (setup_coding_system) <0>: Don't force composition handling.
7507
7508 * Makefile.in (lisp, shortlisp): Add utf-16.elc
7509
75102002-09-29 Richard M. Stallman <rms@gnu.org>
7511
7512 * search.c (Freplace_match): Adjust match data for the substitution
7513 just made in the buffer.
7514
7515 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
7516 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
7517
75182002-09-27 Richard M. Stallman <rms@gnu.org>
7519
7520 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
7521 (read_char): Use them. Do all exits thru the end of the function.
7522
75232002-09-27 Kenichi Handa <handa@etl.go.jp>
7524
7525 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
7526 is nil.
7527
75282002-09-26 Richard M. Stallman <rms@gnu.org>
7529
7530 * regex.h (__restrict_arr): Don't define if already defined.
7531
7532 * coding.c (run_pre_post_conversion_on_str):
7533 Save and restore Vdeactivate_mark.
7534
75352002-09-26 John Paul Wallington <jpw@shootybangbang.com>
7536
7537 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
7538
75392002-09-26 Kenichi Handa <handa@etl.go.jp>
7540
7541 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
7542 nonzero, try face's family at first. Otherwise try FAMILY at first.
7543 (choose_face_font): If C is a single byte char or latin-1, call
7544 try_font_list with PREFER_FACE_FAMILY 1.
7545
75462002-09-21 Richard M. Stallman <rms@gnu.org>
7547
7548 * window.c (select_window_1): Don't select frame.
7549 Set frame's selected window only when frame itself is selected.
7550 (Fselect_window): Doc fix.
7551
75522002-09-18 Kim F. Storm <storm@cua.dk>
7553
7554 * process.c (make-network-process): Doc fix (there is no
7555 network-server-log-function hook).
7556
75572002-09-18 Richard M. Stallman <rms@gnu.org>
7558
7559 * print.c (print): Clear out the unused parts of Vprint_number_table.
7560 (syms_of_print): Doc fix for `print-number-table'.
7561
7562 * unexelf.c (unexec): Undo previous change.
7563
75642002-09-17 Andreas Schwab <schwab@suse.de>
7565
7566 * m/alpha.h [LINUX]: Don't define DATA_START.
7567
75682002-09-16 Dave Love <fx@gnu.org>
7569
7570 * unexelf.c (unexec): Deal with .got, reinstating change from
7571 25-08-1999.
7572
75732002-09-13 Richard M. Stallman <rms@gnu.org>
7574
7575 * s/sol2-6.h (UNEXEC): Comment out definition.
7576
7577 * unexsol.c (unexec): Don't downcase first letter of error msg.
7578
7579 * xfaces.c (Fcolor_supported_p): Just one arg is required.
7580
75812002-09-12 Markus Rost <rost@math.ohio-state.edu>
7582
7583 * unexsol.c: Include buffer.h, charset.h, coding.h.
7584
75852002-09-11 Richard M. Stallman <rms@gnu.org>
7586
7587 * unexsol.c: Don't use report_file_error; do it by hand
7588 using dlerror.
7589
7590 * process.c (wait_reading_process_input, both versions):
7591 Before calling turn_on_atimers, call stop_polling.
7592
7593 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
7594
7595 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
7596 we go to too_near_end, call clear_glyph_matrix.
7597 (redisplay_window): After make_cursor_line_fully_visible,
7598 call clear_glyph_matrix and bypass `goto done'.
7599
7600 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
7601 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
7602
76032002-09-10 Richard M. Stallman <rms@gnu.org>
7604
7605 * fileio.c (Fdo_auto_save): Catch error making directory.
7606 Only call push_message if we need to.
7607 At the same time, make an unwind-protect to pop it.
7608 Rename local message_p to old_message_p.
7609 (do_auto_save_make_dir, do_auto_save_eh): New functions.
7610 (do_auto_save_unwind): Don't call pop_message.
7611
7612 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
7613
7614 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
7615
7616 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
7617
7618 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
7619
76202002-09-10 Stefan Monnier <monnier@cs.yale.edu>
7621
7622 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
7623 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
7624 (re_match_2_internal): Be more careful with infinite loops.
7625
76262002-09-10 Kim F. Storm <storm@cua.dk>
7627
7628 * macros.c (end_kbd_macro): New function.
7629 (Fend_kbd_macro): Use it.
7630
7631 * macros.h (end_kbd_macro): Declare extern.
7632
7633 * keyboard.c (Fdiscard_input): If defining keyboard macro,
7634 end and save it instead of discarding it.
7635
76362002-09-09 Markus Rost <rost@math.ohio-state.edu>
7637
7638 * s/sol2-6.h: Fix typo. Add comment.
7639
76402002-09-09 Richard M. Stallman <rms@gnu.org>
7641
7642 * regex.c (regnum_t): Use signed int, not unsigned int.
7643
7644 * s/sol2-6.h: New file.
7645
7646 * s/sol2-5.h (UNEXEC): Definition deleted.
7647
76482002-09-08 Kim F. Storm <storm@cua.dk>
7649
7650 * macros.c (executing_macro_index): Change type to EMACS_INT.
7651 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
7652
7653 * macros.h (executing_macro_index): Change type to EMACS_INT.
7654
76552002-09-06 Richard M. Stallman <rms@gnu.org>
7656
7657 * casetab.c (set_case_table): Make canon table point to eqv table.
7658
76592002-09-06 Juanma Barranquero <lektu@terra.es>
7660
7661 * coding.c (syms_of_coding): Fix spacing.
7662
7663 * composite.c (Fcompose_region_internal)
7664 (Fcompose_string_internal): Likewise.
7665
7666 * data.c (Flsh): Likewise.
7667
7668 * fontset.c (Fset_fontset_font): Likewise.
7669
7670 * macfns.c (Fx_server_max_request_size): Likewise.
7671
7672 * w16select.c (syms_of_win16select): Likewise.
7673
7674 * w32select.c (syms_of_w32select): Likewise.
7675
7676 * xselect.c (syms_of_xselect): Likewise.
7677
76782002-09-05 Richard M. Stallman <rms@gnu.org>
7679
7680 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
7681 call EXTEND_RANGE_TABLE and return a proper value.
7682 (set_image_of_range): Don't call set_image_of_range_1
7683 if no TRANSLATE or if range includes all of Latin-1.
7684 Only call it for the Latin-1 part of the range.
7685 For other cases, make two separate ranges,
7686 one for the original specified characters and one for
7687 their case-conversions.
7688
76892002-09-04 Richard M. Stallman <rms@gnu.org>
7690
7691 * s/sol2-5.h (UNEXEC): Use unexsol.o.
7692
7693 * window.c (displayed_window_lines): Correct for one-off bug
7694 in HEIGHT on non-window displays.
7695
7696 * regex.c (set_image_of_range_1): New function.
7697 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
7698 Return a value to indicate running out of memory.
7699 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
7700 (extend_range_table_work_area): New subroutine.
7701 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
7702 Different calling conventions, and used from set_image_of_range{,_1}.
7703 (IMMEDIATE_QUIT_CHECK): Definitions moved.
7704
77052002-09-04 Juanma Barranquero <lektu@terra.es>
7706
7707 * makefile.w32-in: All dependencies updated.
7708
77092002-09-01 Richard M. Stallman <rms@gnu.org>
7710
7711 * unexsol.c: New file.
7712
7713 * xfns.c (Qbox): Declare external, don't define.
7714
7715 * xdisp.c (redisplay_window) <force-start case>:
7716 If point is on semi-visible last line, reposition
7717 it at previous line.
7718
7719 * alloc.c (display_malloc_warning): Use display-warning.
7720 (malloc_warning_1): Function deleted.
7721
7722 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
7723
7724 * lread.c (read1): Handle #! by skipping the line.
7725
77262002-08-31 Richard M. Stallman <rms@gnu.org>
7727
7728 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
7729 Don't include LDFLAGS.
7730 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
7731
77322002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
7733
7734 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
7735 member of x_display_info unless we compile for some window system.
7736
77372002-08-31 Kim F. Storm <storm@cua.dk>
7738
7739 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
7740 (get_window_cursor_type): Don't use them.
7741 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
7742
77432002-08-30 Kenichi Handa <handa@etl.go.jp>
7744
7745 * xdisp.c (get_next_display_element): Fix previous change.
7746
77472002-08-30 Andrew Choi <akochoi@shaw.ca>
7748
7749 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
7750 (expose_window): Use it to fix the display of overlapping
7751 rows (merge code from xterm.c).
7752
7753 * macfns.c (Qbox): Add extern declaration.
7754
77552002-08-30 Juanma Barranquero <lektu@terra.es>
7756
7757 * w32fns.c (Qbox): Make extern.
7758 (syms_of_w32fns): Remove initialization of Qbox.
7759
77602002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
7761
7762 * xfns.c (Fx_open_connection): Fix error message.
7763
77642002-08-30 Kim F. Storm <storm@cua.dk>
7765
7766 The following changes consolidates the handling of the cursor
7767 type in xdisp.c, moving duplicate code and functionality from
7768 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
7769
7770 * frame.h (enum text_cursor_kinds): Consolidated here.
7771 Added DEFAULT_CURSOR value.
7772 (struct frame) <desired_cursor, cursor_width>
7773 <blink_off_cursor, blink_off_cursor_width>: New fields.
7774 Consolidated from output_x, output_w32 and output_mac structs.
7775 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
7776 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
7777
7778 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
7779 Variables consolidated here.
7780 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
7781 (Vcursor_in_non_selected_windows): Renamed from
7782 cursor_in_non_selected_windows and changed to Lisp_Object.
7783 (syms_of_xdisp): Define and staticpro new and moved variables.
7784 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
7785 consolidated here. Recognize Qhollow setting.
7786 (set_frame_cursor_types): New function to set frame cursor types
7787 based on the frame parameters.
7788 (get_window_cursor_type): New function to calculate new cursor
7789 type and width for the specified window. Based on duplicated
7790 code consolidated here.
7791 Enhancements: cursor-in-non-selected-windows may be a cursor type,
7792 check buffer-local alternate-cursor-type and blink-cursor-alist
7793 before using built-in blink off methods.
7794
7795 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
7796
7797 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
7798 (get_specified_cursor_type, get_window_cursor_type)
7799 (set_frame_cursor_types): Added prototypes.
7800
7801 * macfns.c (x_specified_cursor_type): Removed.
7802 (x_set_cursor_type): Use set_frame_cursor_types.
7803 (Qbar, Qbox): Removed.
7804 (syms_of_macfns): Don't intern or staticpro them.
7805
7806 * macterm.c (x_specified_cursor_type): Remove prototype.
7807 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
7808 (x_display_and_set_cursor): Use get_window_cursor_type.
7809 Remove unused local variables cursor_non_selected, active_cursor.
7810 Redraw cursor if hbar cursor width changes.
7811 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
7812
7813 * macterm.h (enum text_cursor_kinds): Removed.
7814 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
7815 <blink_off_cursor, blink_off_cursor_width>: Members removed.
7816 (FRAME_DESIRED_CURSOR): Macro removed.
7817
7818 * w32fns.c (Vblink_cursor_alist): Removed.
7819 (Qbar, Qhbar, Qbox, Qhollow): Removed.
7820 (syms_of_w32fns): Don't intern, staticpro, or define them.
7821 (x_specified_cursor_type): Removed.
7822 (x_set_cursor_type): Use set_frame_cursor_types.
7823
7824 * w32term.c (x_specified_cursor_type): Remove prototype.
7825 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
7826 (x_display_and_set_cursor): Use get_window_cursor_type.
7827 Remove unused local variables cursor_off_state.
7828 Redraw cursor if hbar cursor width changes.
7829 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
7830
7831 * w32term.h (enum text_cursor_kinds): Removed.
7832 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
7833 <blink_off_cursor, blink_off_cursor_width>: Members removed.
7834 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
7835 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
7836 (struct w32_display_info) <x_highlight_frame>: Renamed member from
7837 w32_highlight_frame.
7838
7839 * xfns.c (Vblink_cursor_alist): Removed.
7840 (Qbar, Qhbar, Qbox, Qhollow): Removed.
7841 (syms_of_xfns): Don't intern, staticpro, or define them.
7842 (x_specified_cursor_type): Removed.
7843 (x_set_cursor_type): Use set_frame_cursor_types.
7844
7845 * xterm.c (x_specified_cursor_type): Remove prototype.
7846 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
7847 (x_display_and_set_cursor): Use get_window_cursor_type.
7848 Remove unused local variables cursor_off_state.
7849 Redraw cursor if hbar cursor width changes.
7850
7851 * xterm.h (enum text_cursor_kinds): Removed.
7852 (struct output_x) <current_cursor, desired_cursor, cursor_width>
7853 <blink_off_cursor, blink_off_cursor_width>: Members removed.
7854 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
7855 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
7856 (x_specified_cursor_type): Remove prototype.
7857
78582002-08-28 Richard M. Stallman <rms@gnu.org>
7859
7860 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
7861 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
7862 (Vblink_cursor_alist): New variable.
7863 (syms_of_w32fns): Initialize and defvar it.
7864 (x_specified_cursor_type): Recognize Qbox for filled box.
7865 Exceptions are hollow boxes.
7866 (Qbox, Qhollow): New variables.
7867 (syms_of_w32fns): Initialize and staticpro them.
7868
7869 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
7870 New macros.
7871 (struct w32_output): New fields blink_off_cursor,
7872 blink_off_cursor_width.
7873 (FRAME_CURSOR_WIDTH): New macro.
7874
7875 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
7876 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
7877
7878 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
7879 for bar cursor.
7880
7881 * w32term.c (expose_overlaps): New function.
7882 (expose_window): Use it to fix the display of overlapping rows.
7883
78842002-08-28 Simon Josefsson <jas@extundo.com>
7885
7886 * xfns.c (Fx_open_connection): Improve help when X connection
7887 fails, xhost is insecure and xauth is better.
7888
78892002-08-28 Juanma Barranquero <lektu@terra.es>
7890
7891 * makefile.w32-in: Add missing dependencies on w32term.h and
7892 composite.h.
7893
7894 * emacs.c (USAGE1): Add missing newline.
7895
78962002-08-27 Andrew Choi <akochoi@shaw.ca>
7897
7898 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
7899
79002002-08-27 Richard M. Stallman <rms@gnu.org>
7901
7902 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
7903 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
7904 (Vblink_cursor_alist): New variable.
7905 (syms_of_xfns): Initialize and defvar it.
7906 (x_specified_cursor_type): Recognize Qbox for filled box.
7907 Exceptions are hollow boxes.
7908 (Qbox, Qhollow): New variables.
7909 (syms_of_xfns): Initialize and staticpro them.
7910
7911 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
7912 New macros.
7913 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
7914
7915 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
7916 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
7917
7918 * emacs.c (main): Handle --script.
7919 (USAGE1): Mention --script.
7920 (standard_args): Define sort order for --script.
7921
79222002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
7923
7924 * xdisp.c (redisplay_updating_p): Variable removed.
7925 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
7926 New variables.
7927 (init_iterator): Don't free realized faces if
7928 inhibit_free_realized_faces is set.
7929 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
7930 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
7931 initialize Qinhibit_free_realized_faces.
7932
7933 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
7934 when iterator is adding glyphs to a glyph matrix.
7935
79362002-08-27 Kenichi Handa <handa@etl.go.jp>
7937
7938 * xdisp.c (get_next_display_element): In unibyte case, don't use
7939 octal form for such eight-bit characters that can be converted to
7940 multibyte char.
7941
79422002-08-26 Kim F. Storm <storm@cua.dk>
7943
7944 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
7945 and background colors. From Joe Buehler (tiny change).
7946
79472002-08-26 Miles Bader <miles@gnu.org>
7948
7949 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
7950
79512002-08-25 Andrew Choi <akochoi@shaw.ca>
7952
7953 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
7954 defined instead of MAC_OSX.
7955
7956 * s/darwin.h (select): Define select to sys_select only if
7957 HAVE_CARBON is defined.
7958 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
7959 (DONT_REOPEN_PTY): #def it.
7960
7961 * macterm.c (XTread_socket): Remove code to call
7962 SendEventToEventTarget for keys with command modifiers when
7963 mac_command_key_is_meta is nil.
7964
79652002-08-24 Andreas Schwab <schwab@suse.de>
7966
7967 * eval.c (Fdefvar): Fix last change.
7968
79692002-08-23 Richard M. Stallman <rms@gnu.org>
7970
7971 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
7972 Record variables in load history as (defvar . VAR).
7973 (Fdefvar): Don't record in load history if no initial value.
7974 (Qdefvar): New variable.
7975 (syms_of_eval): Init and staticpro it.
7976
7977 * lread.c (syms_of_lread): Doc fix.
7978 (build_load_history): Use Fmember to see if a definition
7979 is already in the Vload_history element.
7980
7981 * process.c (Fstart_process): Remove /: from program name.
7982
7983 * emacs.c (decode_env_path): Don't add /: if file name handler
7984 has a `safe-magic' property.
7985
7986 * callproc.c (Fcall_process): Remove /: from program name.
7987
79882002-08-23 Stefan Monnier <monnier@cs.yale.edu>
7989
7990 * regex.c (PATFETCH): Remove the translating fetch.
7991 (PATFETCH_RAW): Rename to PATFETCH.
7992 (set_image_of_range): New fun.
7993 (SET_RANGE_TABLE_WORK_AREA): Use it.
7994 (regex_compile): Don't translate the pattern chars so eagerly.
7995 Only do it when inserting an `exactn' bytecode or when handling
7996 a char-range.
7997 (mutually_exclusive_p): Avoid empty statement.
7998
79992002-08-22 Kim F. Storm <storm@cua.dk>
8000
8001 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
8002 end up on a partially visible line; this reverts a specific part
8003 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
8004 display error which has been reported several times now.
8005 However it introduces the problem that changes was supposed to fix.
8006 See my comments in the source if you want to debug this further.
8007
80082002-08-20 Kenichi Handa <handa@etl.go.jp>
8009
8010 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
8011
80122002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
8013
8014 * msdos.c (croak): Add `void' to definition.
8015
8016 * sysdep.c [MSDOS] (request_sigio, unrequest_sigio):
8017 Don't define them, they are defined in msdos.c.
8018
8019 * mem-limits.h [MSDOS]: Declare etext.
8020
8021 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
8022 `const' since CORRECT_DIR_SEPS modifies its target.
8023
80242002-08-19 Kim F. Storm <storm@cua.dk>
8025
8026 * keyboard.c (Fclear_this_command_keys): Added optional arg
8027 KEEP-RECORD to avoid clearing lossage when we just want to clear
8028 the current key sequence (kmacro needs this).
8029
80302002-08-19 Kenichi Handa <handa@localhost>
8031
8032 * composite.c (run_composition_function): Call FUNC if it is fboundp.
8033
8034 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
8035 cons, return Qnil.
8036
80372002-08-17 Richard M. Stallman <rms@gnu.org>
8038
8039 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
8040
8041 * sysdep.c [!VMS]: Include sys/files.h.
8042
8043 * editfns.c (save_restriction_restore): Defend from unchained marker.
8044
8045 * buffer.c (overlays_at): Handle extending vec uniformly.
8046 (overlays_in): Handle extending vec from length 0 as in overlays_at.
8047
80482002-08-15 Andrew Choi <akochoi@shaw.ca>
8049
8050 * mac.c (init_mac_osx_environment): New function.
8051
8052 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
8053
80542002-08-14 Kim F. Storm <storm@cua.dk>
8055
8056 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
8057 executing macro before appending to it (when used from Lisp).
8058 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
8059 which is called prior to each iteration of macro (for kmacro.el).
8060 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
8061
8062 * lisp.h (Fexecute_kbd_macro): Update prototype.
8063
8064 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
8065
80662002-08-14 Kenichi Handa <handa@etl.go.jp>
8067
8068 * xselect.c (QUTF8_STRING): New variable.
8069 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
8070 (x_atom_to_symbol): Likewise.
8071 (x_get_local_selection): New argument local_request. If it is
8072 nonzero, call handler_fn with the second arg nil.
8073 (x_handle_selection_request): Call x_get_local_selection with
8074 local_request 0.
8075 (lisp_data_to_selection_data): Don't encode the string here.
8076 (Fx_get_selection_internal): Call x_get_local_selection with
8077 local_request 1.
8078 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
8079
8080 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
8081
8082 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
8083
80842002-08-13 Richard M. Stallman <rms@gnu.org>
8085
8086 * minibuf.c (Fminibufferp): New function.
8087 (syms_of_minibuf): Defsubr it.
8088 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
8089
80902002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
8091
8092 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
8093
80942002-08-12 Richard M. Stallman <rms@gnu.org>
8095
8096 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
8097 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
8098 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
8099 already.
8100
8101 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
8102
81032002-08-11 Andrew Choi <akochoi@shaw.ca>
8104
8105 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
8106 (Vmac_pass_command_to_system): New variable.
8107 (Vmac_pass_control_to_system): New variable.
8108 (do_mouse_moved): Check wp with is_emacs_window.
8109 (XTread_socket): Check window_ptr with is_emacs_window.
8110 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
8111 events back to Mac Toolbox for processing, depending on values of
8112 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
8113 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
8114 Vmac_pass_control_to_system.
8115
81162002-08-10 Kenichi Handa <handa@etl.go.jp>
8117
8118 * coding.c (unencodable_char_position): New function.
8119 (Funencodable_char_position): New function.
8120 (syms_of_coding): Defsubr Funencodable_char_position.
8121
81222002-08-10 Andrew Choi <akochoi@shaw.ca>
8123
8124 * mac.c (sys_select) [MAC_OSX]: New function.
8125
8126 * macterm.c (MakeMeTheFrontProcess): New function.
8127 (mac_initialize): Call MakeMeTheFrontProcess.
8128
8129 * s/darwin.h: Define select to sys_select.
8130
81312002-08-09 Richard M. Stallman <rms@gnu.org>
8132
8133 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
8134
81352002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
8136
8137 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
8138 end of the buffer.
8139
81402002-08-08 Ken Raeburn <raeburn@mit.edu>
8141
8142 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
8143
8144 * puresize.h (BASE_PURESIZE): Increase to 910000.
8145
81462002-08-08 Kenichi Handa <handa@etl.go.jp>
8147
8148 * coding.c (Ffind_operation_coding_system): For write-region, if
8149 VISIT is a filename, make it the target.
8150
81512002-08-07 Richard M. Stallman <rms@gnu.org>
8152
8153 * alloc.c (mark_object): Detect long lists for debugging.
8154 (mark_object_loop_halt): New variable.
8155
8156 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
8157
8158 * data.c (Fmake_variable_frame_local): Doc fix.
8159
81602002-08-01 David Ponce <david@dponce.com>
8161
8162 * w32menu.c (local_heap, local_alloc, local_free): New macros.
8163 (malloc_widget_value, free_widget_value)
8164 (w32_free_submenu_strings): Use them.
8165
8166 (push_submenu_start, push_submenu_end, push_left_right_boundary)
8167 (push_menu_pane, push_menu_item, single_keymap_panes)
8168 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
8169 (single_submenu, set_frame_menubar)
8170 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
8171
8172 (Fx_popup_menu): Don't show pop up menu until preceding one is
8173 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
8174
8175 * w32menu.c: Changes adapted from xmenu.c
8176 (set_frame_menubar): First parse all submenus,
8177 then make widget_value trees from them.
8178 Don't allocate any widget_value objects
8179 until we are done with the parsing.
8180 (parse_single_submenu): New function.
8181 (digest_single_submenu): New function.
8182 (single_submenu): Function deleted, replaced by those two.
8183
81842002-08-04 Andrew Choi <akochoi@shaw.ca>
8185
8186 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
8187 returns a valid window pointer before proceeding for keyDown and
8188 autoKey events.
8189
81902002-08-03 Andrew Choi <akochoi@shaw.ca>
8191
8192 * macterm.c (USE_CARBON_EVENTS): New macro.
8193 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
8194 (x_iconify_frame): Call CollapseWindow.
8195 (Vmac_reverse_ctrl_meta): New variable.
8196 (Vmac_wheel_button_is_mouse_2): New variable.
8197 (init_mac_drag_n_drop): New function.
8198 (mac_do_receive_drag): New function.
8199 (mac_handle_service_event): New function.
8200 (init_service_handler): New function.
8201 (mac_to_emacs_modifiers): New function.
8202 (mac_event_to_emacs_modifiers): New function.
8203 (mac_get_mouse_btn): New function.
8204 (mac_convert_event_ref): New function.
8205 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
8206 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
8207 mac_get_mouse_btn.
8208 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
8209
8210 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
8211 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
8212 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
8213 TOOL_BAR_EVENT for MAC_OS as well.
8214 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
8215 as for WINDOWS_NT.
8216 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
8217
8218 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
8219
82202002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
8221
8222 * xdisp.c (forward_to_next_line_start): Fix a condition that
8223 lead to a newline being skipped.
8224
82252002-08-02 Andrew Choi <akochoi@shaw.ca>
8226
8227 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
8228
82292002-08-01 Richard M. Stallman <rms@gnu.org>
8230
8231 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
8232
82332002-07-31 Andrew Choi <akochoi@shaw.ca>
8234
8235 * macfns.c: #undef init_process before #define-ing it.
8236
8237 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
8238 HAVE_CARBON is defined.
8239
82402002-07-31 Richard M. Stallman <rms@gnu.org>
8241
8242 * xmenu.c (set_frame_menubar): First parse all submenus,
8243 then make widget_value trees from them.
8244 Don't allocate any widget_value objects
8245 until we are done with the parsing.
8246 (parse_single_submenu): New function.
8247 (digest_single_submenu): New function.
8248 (single_submenu): Function deleted, replaced by those two.
8249
82502002-07-30 Juanma Barranquero <lektu@terra.es>
8251
8252 * w32proc.c (syms_of_ntproc): Fix docstring of
8253 `w32-get-true-file-attributes'.
8254
82552002-07-28 Richard M. Stallman <rms@gnu.org>
8256
8257 * s/hpux8.h (HPUX8): Define this before including hpux.h.
8258 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
8259
8260 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
8261
8262 * keyboard.c (make_lispy_event):
8263 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
8264 Explicitly clear up_modifier in event->modifiers.
8265
82662002-07-27 Richard M. Stallman <rms@gnu.org>
8267
8268 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
8269
8270 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
8271 for bar cursor.
8272
82732002-07-26 Kenichi Handa <handa@etl.go.jp>
8274
8275 * coding.c (detect_coding_iso2022): While checking a byte sequence
8276 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
8277 it in the normal loop.
8278
82792002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
8280
8281 * xterm.c (expose_overlaps): New function.
8282 (expose_window): Use it to fix the display of overlapping rows.
8283
8284 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
8285
82862002-07-23 Ken Raeburn <raeburn@gnu.org>
8287
8288 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
8289 since it only depends on XUINT.
8290
8291 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
8292 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
8293 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
8294 Macros deleted.
3947677c 8295
77d1daf2
AS
8296 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
8297 its value over other approaches.
8298 * sysdep.c (start_of_data): Don't define the function if a macro
8299 form has been defined.
8a8e19a3 8300
048addec
JD
83012002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
8302
8303 * xdisp.c (redisplay_updating_p): New variable.
8304 (init_iterator): Don't free realized faces when
8305 redisplay_updating_p is set.
8306 (redisplay_internal): Set redisplay_updating_p while updating
8307 the display.
8308
83092002-07-23 Richard M. Stallman <rms@gnu.org>
8310
8311 * editfns.c (Fmessage): Treat "" like nil.
8312
83132002-07-23 Kenichi Handa <handa@etl.go.jp>
8314
8315 * xdisp.c (face_before_or_after_it_pos):
8316 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
8317
83182002-07-22 Juanma Barranquero <lektu@terra.es>
8319
8320 * callproc.c (init_callproc) [DOS_NT]:
8321 Initialize Vshared_game_score_directory to nil.
8322 (syms_of_callproc) [DOS_NT]: Likewise.
8323
83242002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
8325
8326 * xdisp.c (display_line): Replace an abort with xassert.
8327
83282002-07-21 Richard M. Stallman <rms@gnu.org>
8329
8330 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
8331 and END_UNCHANGED when setting buffer_unchanged_p.
8332 Use current_matrix_up_to_date_p to decide whether to use
8333 try_cursor_movement.
8334
8335 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
8336
8337 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
8338
8339 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
8340 Set to nil if dir does not exist.
8341 (syms_of_callproc): Init unconditionally and simply.
8342
8343 * buffer.c (Fbuffer_list): Doc fix.
8344
83452002-07-21 Ken Raeburn <raeburn@gnu.org>
8346
8347 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
8348
8349 * buffer.c (mmap_realloc): When shrinking, make sure number of
8350 pages to unmap is rounded towards zero.
8351
8352 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
8353 (XSETINT): Deleted.
8354
8355 * m/att3b.h (XINT): Don't define.
8356 (VALBITS, VALMASK, XTYPE): Deleted.
8357 (DATA_SEG_BITS): Define.
8358 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
8359 ARRAY_MARK_FLAG): Deleted.
8360 (DATA_SEG_BITS): Define.
8361 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
8362 (DATA_SEG_BITS): Define.
8363
83642002-07-20 Richard M. Stallman <rms@gnu.org>
8365
8366 * print.c (print_error_message): New args CONTEXT and CALLER.
8367 Calls changed.
8368
8369 * lisp.h (print_error_message): Declare new args.
8370
8371 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
8372 and CONTEXT to print_error_message, don't print them here.
8373 For a Quit, don't use Vsignaling_function.
8374 Call message_log_maybe_newline.
8375
8376 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
8377
83782002-07-20 Kim F. Storm <storm@cua.dk>
8379
8380 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
8381
83822002-07-19 Ken Raeburn <raeburn@gnu.org>
8383
8384 * bytecode.c (struct byte_stack): Pointers into byte string now
8385 point to const.
8386 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
8387 const.
8388 * charset.h (BCOPY_SHORT): Source pointer now points to const.
8389 * coding.c (encode_eol, detect_coding, detect_eol):
8390 (decode_coding, encode_coding, detect_coding_system):
8391 Source strings now treated as const.
8392 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
8393 modify Lisp string contents.
8394 * coding.h (decode_coding, encode_coding, detect_coding,
8395 detect_eol): Declarations updated.
8396 * composite.c (compose_chars_in_text): Treat Lisp string contents
8397 as const.
8398 * dispnew.c (safe_bcopy): Source pointer now points to const.
8399 * lisp.h (STRING_COPYIN): New macro.
8400 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
8401 (internal_with_output_to_temp_buffer): Declarations updated.
8402 * print.c (temp_output_buffer_setup):
8403 (internal_with_output_to_temp_buffer): Buffer name argument is now
8404 pointer to const.
8405 * sound.c (struct sound_device): Function pointer field "write"
8406 buffer argument now points to const.
8407 (vox_write): Buffer argument points to const.
8408 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
8409 contents as const.
8410 * sysdep.c (emacs_write): Buffer pointer now const.
8411 * term.c (encode_terminal_code): Buffer pointer now const.
8412 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
8413 (x_face_list_fonts, x_update_menu_appearance):
8414 (hash_string_case_insensitive): Treat Lisp string contents as const.
8415
84162002-07-19 Juanma Barranquero <lektu@terra.es>
8417
048addec
JD
8418 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
8419
8420 * fileio.c (syms_of_fileio): Likewise.
c62aec78
JB
8421 (Ffile_name_as_directory): Fix argument name in docstring.
8422 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
048addec
JD
8423
84242002-07-18 Richard M. Stallman <rms@gnu.org>
8425
8426 * data.c (Fdefalias): Doc fix.
8427
84282002-07-17 Dave Love <fx@gnu.org>
8429
8430 * intervals.h (text_property_stickiness): Use P_.
8431
8432 * ccl.c: Remove `emacs' conditionals.
8433 (ccl_backtrace_table): Fix size spec.
8434 (ccl_driver): Fix type errors.
8435
84362002-07-16 Ken Raeburn <raeburn@gnu.org>
8437
8438 * alloc.c (xstrdup, make_string, make_unibyte_string)
8439 (make_multibyte_string, build_string): String pointer args now
8440 point to const.
8441 * charset.c (find_charset_in_text, c_string_width):
8442 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
8443 * fileio.c (report_file_error):
8444 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
8445 (count_combining_before, count_combining_after, insert_1_both):
8446 (insert, insert_and_inherit, insert_string):
8447 (insert_before_markers, insert_before_markers_and_inherit):
8448 * lread.c (intern, oblookup, hash_string):
8449 * minibuf.c (temp_echo_area_glyphs):
8450 * search.c (fast_c_string_match_ignore_case):
8451 * sysdep.c (emacs_open, set_file_times):
8452 * xfaces.c (xstricmp):
8453 * xdisp.c (store_frame_title, string_char_and_length):
8454 (message_dolog, message2, message2_nolog, set_message): Likewise.
8455 (set_message_1): Cast message string argument to const pointer.
8456 * editfns.c (general_insert_function): Insertion function now
8457 takes pointer to const for input data.
8458 * charset.h (find_charset_in_text, c_string_width):
8459 (parse_str_as_multibyte): Declarations updated.
8460 * dispextern.h (xstricmp): Declaration updated.
8461 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
8462 (count_size_as_multibyte, count_combining_before):
8463 (count_combining_after, insert_1, insert_1_both, message_dolog):
8464 (insert, insert_and_inherit, insert_before_markers)
8465 (insert_before_markers_and_inherit, set_message, message2):
8466 (message2_dolog, build_string, make_string, make_unibyte_string):
8467 (make_multibyte_string, intern, oblookup, report_file_error):
8468 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
8469 (emacs_open, xstrdup): Declarations updated.
8470 * systime.h (set_file_times): Declaration updated.
8471
8472 * charset.c (find_charset_in_text, lisp_string_width): Use const
8473 for pointer to lisp string data.
8474 * charset.h (FETCH_STRING_CHAR_ADVANCE):
8475 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
8476 * coding.c (Ffind_coding_systems_region_interval):
8477 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
8478 (Fmake_directory_internal, Fdelete_directory):
8479 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
8480 * fontset.c (font_family_registry, fs_query_fontset):
8481 (list_fontsets):
8482 * frame.c (Fframe_parameter):
8483 * keyboard.c (cmd_error_internal):
8484 * keymap.c (Fdescribe_buffer_bindings):
8485 * lread.c (complete_filename_p, openp):
8486 * minibuf.c (Fminibuffer_complete_word):
8487 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
8488 (face_before_or_after_it_pos, next_element_from_string):
8489 (get_overlay_arrow_glyph_row, display_mode_element):
8490 (decode_mode_spec_coding):
8491 * xterm.c (same_x_server): Likewise.
8492
8493 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
8494 settings of non-existent fields.
8495
8496 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
8497 copy a lisp value.
8498
8499 * lread.c (Fintern_soft): Use string macros instead of
8500 Lisp_String fields.
8501 * keyboard.c (echo_char, parse_modifiers_uncached):
8502 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
8503 * textprop.c (validate_interval_range, interval_of): Likewise.
8504
8505 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
8506
8507 * charset.h (FETCH_STRING_CHAR_ADVANCE)
8508 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
8509 XSTRING()->size_byte.
8510
8511 * lisp.h (SDATA, SREF): Produce rvalue.
8512 (SSET): New macro.
8513 * alloc.c (make_event_array): Use SSET for storing into a string.
8514 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
8515 a string.
8516 * casefiddle.c (casify_object): Use SSET.
8517 * charset.h (FETCH_STRING_CHAR_ADVANCE)
8518 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
8519 address of string contents.
8520 * data.c (Faref): Use SDATA.
8521 (Faset): Use SDATA, SSET.
8522 * dired.c (directory_files_internal): Use SSET.
8523 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
8524 (Fread_file_name): Use SREF, SSET.
8525 * fns.c (concat): Use SSET.
8526 (concat, Fdelete): Use SDATA.
8527 * insdel.c (insert_from_string_1): Use SDATA.
8528 * keyboard.c (Fevent_convert_list): Use SREF.
8529 * lread.c (Fload): Use SDATA, SSET.
8530 * macfns.c (validate_x_resource_name): Use SSET.
8531 * process.c (status_message): Use SSET.
8532 * search.c (wordify): Use SDATA.
8533 (Freplace_match): Use SREF.
8534 * w32fns.c (validate_x_resource_name): Use SSET.
8535 * xfns.c (validate_x_resource_name): Use SSET.
8536 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
8537
85382002-07-16 Richard M. Stallman <rms@gnu.org>
8539
8540 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
8541
8542 * xdisp.c (reconsider_clip_changes):
8543 Don't test prevent_redisplay_optimizations_p.
8544 (redisplay_internal): Test prevent_redisplay_optimizations_p
8545 along with clip_changed in some cases.
8546 (try_window_id): Likewise.
8547 (redisplay_window): New local var buffer_unchanged_p.
8548
8549 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
8550
8551 * process.c (create_process): Test USG_SUBTTY_WORKS.
8552 (process_send_signal): Clean up handling of GID.
8553 Detect errors in ioctls meant to set GID.
8554
8555 * window.c (temp_output_buffer_show):
8556 Don't set prevent_redisplay_optimizations_p.
8557
85582002-07-15 Juanma Barranquero <lektu@terra.es>
8559
8560 * eval.c (Fdefvaralias): Add docstring argument.
8561
85622002-07-15 Ken Raeburn <raeburn@gnu.org>
8563
8564 * lisp.h (STRING_INTERVALS): Produce rvalue.
8565 (STRING_SET_INTERVALS): New macro.
8566 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
8567 * fns.c (Fstring_as_multibyte): Likewise.
8568 * intervals.c (balance_possible_root_interval, delete_interval)
8569 (create_root_interval, copy_intervals_to_string): Likewise.
8570 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
8571 instead of 0.
8572
85732002-07-14 Ken Raeburn <raeburn@gnu.org>
8574
8575 * lisp.h (STRING_SET_CHARS): New macro.
8576 (SCHARS, SBYTES): Produce rvalues.
8577 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
8578 * fns.c (concat): Likewise.
8579 * lread.c (read_vector): Likewise.
8580
8581 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
8582 (STRING_SET_UNIBYTE): New macro.
8583 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
8584 length of -1) changed to use STRING_SET_UNIBYTE.
8585 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
8586 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
8587 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
8588 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
8589 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
8590 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
8591 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
8592 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
8593 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
8594 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
8595 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
8596 STRING_BYTES or indirection changed to SCHARS, SBYTES,
8597 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
8598 unchanged for now.
8599
86002002-07-13 Kim F. Storm <storm@cua.dk>
8601
8602 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
8603
86042002-07-12 Richard M. Stallman <rms@gnu.org>
8605
8606 * fileio.c (Fwrite_region): Doc fix.
8607
8608 * print.c (print_error_message): Don't handle Vsignaling_function here.
8609
8610 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
8611 (command_loop_1): Avoid certain actions after memory-full error.
8612
8613 * eval.c (Fsignal): Don't call cancel_hourglass.
8614 For a memory-full error, don't call Vsignal_hook_function
8615 and don't set Vsignaling_function.
8616
8617 * process.c (process_send_signal): Add abort call.
8618
86192002-07-11 Markus Rost <rost@math.ohio-state.edu>
8620
8621 * keymap.c (Fkey_binding): Fix typo.
8622
86232002-07-11 Richard M. Stallman <rms@gnu.org>
8624
8625 * alloc.c (Vmemory_full): New variable.
8626 (Vmemory_signal_data): Renamed from memory_signal_data.
8627 Uses changed.
8628 (syms_of_alloc): Defvar them.
8629 (memory_full, buffer_memory_full): Set Vmemory_full.
8630
8631 * lisp.h (Vmemory_full): Add declaration.
8632 (current_column, indented_beyond_p): Change declaration.
8633
8634 * indent.c (last_known_column): Declare as double, not float.
8635 (current_column, current_column_1, string_display_width)
8636 (position_indentation): Return `double'.
8637 (indented_beyond_p): Arg `column' is `double'. Callers changed.
8638
8639 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
8640 (back_to_previous_visible_line_start)
8641 (reseat_at_next_visible_line_start, next_element_from_buffer):
8642 Use `double', not `float', when calling indented_beyond_p.
8643
8644 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
8645
8646 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
8647
86482002-07-11 Juanma Barranquero <lektu@terra.es>
8649
8650 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
d814862a
JB
8651 composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
8652 fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
8653 macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
8654 textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
8655 xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
048addec
JD
8656
86572002-07-10 Juanma Barranquero <lektu@terra.es>
8658
d814862a
JB
8659 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
8660 All callers changed.
048addec
JD
8661
86622002-07-09 Stefan Monnier <monnier@cs.yale.edu>
8663
8664 * data.c (Fdefalias): Add an optional `docstring' argument.
8665 (set_internal, Fsetq_default): Use XCAR/XCDR.
8666
8667 * composite.c (HASH_VALUE, HASH_KEY):
8668 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
8669
86702002-07-09 Kenichi Handa <handa@etl.go.jp>
8671
8672 * callproc.c (Fcall_process): Fix previous change.
8673
86742002-07-07 Stefan Monnier <monnier@cs.yale.edu>
8675
8676 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
8677 Add support for hash-tables.
8678 (Ftry_completion): Return t even if the string appears multiple times.
8679
8680 * fns.c (Fnconc): Use XCDR.
8681 (Fprovide): Use CONSP and XCDR.
8682 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
8683 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
8684 (Fmake_hash_table): Accept `:size nil'.
8685 (Fmakehash): Delete: moved to subr.el.
8686 (syms_of_fns): Don't defsubr makehash.
8687
8688 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
8689 (HASH_TABLE_SIZE): Move from fns.c.
8690
86912002-07-07 Richard M. Stallman <rms@gnu.org>
8692
8693 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
8694 Instead just return 0 when there is something to be done.
8695 (try_scrolling): If make_cursor_line_fully_visible returns 0,
8696 retry scrolling as if cursor were off the bottom.
8697 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
8698 return CURSOR_MOVEMENT_MUST_SCROLL.
8699 (redisplay_window): If make_cursor_line_fully_visible returns 0,
8700 go to try_to_scroll.
8701
8702 * buffer.c (Fbuffer_local_value): Store current value into its binding
8703 so we get the up-to-date value for the binding that is loaded.
8704
8705 * eval.c (Fdefmacro): Doc fix.
8706
87072002-07-05 Dave Love <fx@gnu.org>
8708
8709 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
8710 correctly.
8711
8712 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
8713 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
8714 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
8715 CCL_LookupCharConstTbl.
8716 (syms_of_ccl): Defvar translation-hash-table-vector.
8717
87182002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8719
8720 * xdisp.c: Remove unused variable `face'.
8721
87222002-07-04 Juanma Barranquero <lektu@terra.es>
8723
8724 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
8725 obsolescence information.
8726
87272002-07-03 Andrew Choi <akochoi@shaw.ca>
8728
8729 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
8730 pattern. Search cache first.
8731 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
8732 for Japanese font.
8733 (XLoadQueryFont): Use it.
8734
87352002-07-02 Richard M. Stallman <rms@gnu.org>
8736
8737 * keymap.c (Fdefine_key): Doc fix.
8738
8739 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
8740
87412002-07-02 Juanma Barranquero <lektu@terra.es>
8742
8743 * keymap.c (syms_of_keymap): Fix typo.
8744
87452002-07-01 Andrew Choi <akochoi@shaw.ca>
8746
8747 * s/darwin.h: Define POSIX_SIGNALS.
8748
8749 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
8750 and FSRefMakePath to convert FSSpec returned with Apple Event to
8751 Posix pathname.
8752 (mac_initialize) [TARGET_API_MAC_CARBON]:
8753 Call init_required_apple_events and disable the `Quit' menu item
8754 provided automatically by the Carbon Toolbox.
8755
87562002-07-01 Dave Love <fx@gnu.org>
8757
8758 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
8759 for K&R.
8760
8761 * xterm.c: Fix prototype for K&R.
8762
8763 * term.c (costs_set): Declare static, non-initialized for pcc.
8764
87652002-07-01 Richard M. Stallman <rms@gnu.org>
8766
8767 * keyboard.c (timer_last_idleness_start_time): New variable.
8768 (timer_start_idle): Set that.
8769 (read_key_sequence): Use that to reset timer_idleness_start_time
8770 to previous value.
8771
8772 * window.c (Frecenter): With arg, set optional_new_start.
8773
8774 * xdisp.c (redisplay_internal): Make optional_new_start really work.
8775
8776 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
8777 buffer for completion.
8778
87792002-06-29 Ken Raeburn <raeburn@gnu.org>
8780
8781 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
8782
87832002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8784
8785 * keyboard.c (readable_filtered_events): New function that filters
8786 FOCUS_IN_EVENT depending on parameter.
8787 (readable_events): Calls readable_filtered_events, not filtering
8788 FOCUS_IN_EVENT.
8789 (get_filtered_input_pending): New function, filtering parameter passed
8790 to readable_filtered_events.
8791 (get_input_pending): Calls get_filtered_input_pending, not filtering
8792 FOCUS_IN_EVENT.
8793 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
8794 FOCUS_IN_EVENT.
8795
8796 * xterm.h (struct x_output): Add focus_state.
8797
8798 * xterm.c (x_focus_changed): New function.
8799 (x_detect_focus_change): New function.
8800 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
8801 EnterNotify and LeaveNotify to track X focus changes.
8802
88032002-06-28 Andreas Schwab <schwab@suse.de>
8804
8805 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
8806
88072002-06-27 Kim F. Storm <storm@cua.dk>
8808
8809 * xdisp.c: (mode_line_string_list, mode_line_string_face)
8810 (mode_line_string_face_prop): New variables.
8811 (store_mode_line_string): New function.
8812 (display_mode_element): Use store_mode_line_string to
8813 add mode-line string elements to mode_line_string_list
8814 when mode_line_string_list is non-nil.
8815 (Fformat_mode_line): Now returns propertized string by
8816 default. New arg NO-PROPS to ignore properties.
8817 (decode_mode_spec): Only add two dashes for %- in propertized
8818 mode-line string.
8819 (syms_of_xdisp): Init and staticpro mode_line_string_list.
8820
88212002-06-27 Stefan Monnier <monnier@cs.yale.edu>
8822
8823 * minibuf.c (minibuffer_completion_contents): Add return type.
8824
88252002-06-27 Juanma Barranquero <lektu@terra.es>
8826
8827 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
8828
88292002-06-26 Juanma Barranquero <lektu@terra.es>
8830
8831 * fileio.c (read_file_name_cleanup): Add missing return.
8832
88332002-06-26 Richard M. Stallman <rms@gnu.org>
8834
8835 * window.c (Frecenter): Don't set force_start flag.
8836
8837 * minibuf.c (do_completion, Fminibuffer_complete_word)
8838 (Fminibuffer_completion_help): Complete just the text before point.
8839 (minibuffer_completion_contents): New function.
8840
8841 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
8842
8843 * frame.c (frames_bury_buffer): Function deleted.
8844
88452002-06-25 Miles Bader <miles@gnu.org>
8846
8847 * callint.c (Fcall_interactively): When checking to see if doprnt hit
8848 the end of callint_message, allow for a terminating '\0'.
8849
88502002-06-24 Juanma Barranquero <lektu@terra.es>
8851
8852 * w32select.c: Include composite.h
8853
8854 * w16select.c: Likewise.
8855
88562002-06-24 Kenichi Handa <handa@etl.go.jp>
8857
8858 * callproc.c (Fcall_process): If code detection is necessary,
8859 call detect_coding directly here.
8860
8861 * coding.c (detect_eol): Preserve coding->cmp_data.
8862
8863 * w16select.c (Fw16_get_clipboard_data):
8864 * w32fns.c (w32_to_x_font):
8865 * w32select.c (Fw32_get_clipboard_data):
8866 * xselect.c (selection_data_to_lisp_data):
8867 * xterm.c (XTread_socket): Disable composition handling.
8868
88692002-06-24 Stefan Monnier <monnier@cs.yale.edu>
8870
8871 * print.c (temp_output_buffer_setup): Kill all local variables.
8872
88732002-06-22 Stefan Monnier <monnier@cs.yale.edu>
8874
8875 * lread.c (Fread): Remove redundant and imprecise declaration.
8876
8877 * xfns.c (check_x_display_info): Use check_x_frame.
8878
8879 * .gdbinit (xprintsym): Use the new `xname' field.
8880 (xsymbol): Use it.
8881
88822002-06-22 Jason Rumney <jasonr@gnu.org>
8883
8884 * w32fns.c (file_dialog_callback): New function.
8885 (Fx_file_dialog): Allow selecting directories as well as files.
8886
88872002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8888
8889 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
8890 OpenBSD. Add support for mipseb-*-netbsd* machines.
8891
88922002-06-17 Andrew Choi <akochoi@shaw.ca>
8893
8894 * macterm.c (mac_scroll_area): Set foreground and backcolor to
8895 black and white before scrolling. Restore frame background and
8896 foreground color after scrolling.
8897 (do_window_update): Call XClearWindow before calling expose_frame.
8898 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
8899 FRAME_FOREGROUND_PIXEL of frame.
8900
8901 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
8902 test Mac command key as <ALT> key.
8903
89042002-06-17 Stefan Monnier <monnier@cs.yale.edu>
8905
8906 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
8907
8908 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
8909 Lookup keys in function-key-map immediately so that key-translation-map
8910 can be applied earlier.
8911 Remove function_key_possible and key_translation_possible, replaced
8912 by checking `keytran_start < t'.
8913
8914 * .gdbinit (xsymbol): Use the new `xname' field.
8915
89162002-06-17 Andrew Choi <akochoi@shaw.ca>
8917
8918 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
8919 test Mac command key as <ALT> key.
8920
8921 * mac.c (do_applescript): Call initialize_applescript if necessary
8922 when first called. Dispose of result_desc only when there is no error.
8923 (Fdo_applescript): Use %d format specifier instead of %ld.
8924
89252002-06-16 Andrew Choi <akochoi@shaw.ca>
8926
8927 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
8928 of FrontWindow for cases keyDown and autoKey.
8929
8930 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
8931 Vdefault_fontset to Monaco with mac-roman coding.
8932
8933 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
8934 init_process before and after inclusion of Carbon/Carbon.h, resp.
8935
8936 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
8937 cursor_gc.
8938 (add_font_name_table_entry): New function.
8939 (init_font_name_table): Use add_font_name_table_entry; add italic,
8940 bold, and bold-italic entries for truetype fonts.
8941
8942 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
8943 for Mac too.
8944 (try_font_list) [MAC_OS]: If no font matches given registry, try
8945 fonts with any registry matching face_family.
8946 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
8947
8948 * s/darwin.h: If autoconf detects the Ncurses library, define
8949 LIBS_TERMCAP to -lncurses to use it.
8950
89512002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
8952
8953 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
8954
89552002-06-15 Richard M. Stallman <rms@gnu.org>
8956
8957 * window.c (Fset_window_configuration): Explicitly preserve
8958 the point value that new_current_buffer had at the start.
8959
89602002-06-14 Juanma Barranquero <lektu@terra.es>
8961
8962 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
8963 Fix typos.
8964
89652002-06-14 Kim F. Storm <storm@cua.dk>
8966
8967 * insdel.c (insert_1_both, insert_from_string_1)
8968 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
8969 insert happened in the end_unchanged region. Otherwise, the
8970 redisplay may be confused and duplicate the last line in the
8971 buffer [seen after save-buffer when require-final-newline==t].
8972
89732002-06-13 Jason Rumney <jasonr@gnu.org>
8974
8975 * w32.c (init_environment): Remove EMACSLOCKDIR.
8976 (stat): Swap _S_IFDIR and _S_IFREG.
8977
89782002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8979
8980 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
8981 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
8982 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
8983 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
8984 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
8985 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
8986 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
8987 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
8988 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
8989 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
8990 SELECTION_REQUEST_EVENT, selection_clear_event to
8991 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
8992 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
8993 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
8994 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
8995 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
8996 no_event to NO_EVENT.
8997
89982002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8999
9000 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
9001
90022002-06-12 Stefan Monnier <monnier@cs.yale.edu>
9003
9004 * intervals.c (textget): Don't forget to `return'.
9005 (lookup_char_property): Use XCAR/XCDR.
9006
90072002-06-12 Juanma Barranquero <lektu@terra.es>
9008
9009 * xdisp.c (Fformat_mode_line): Fix typo.
9010
90112002-06-12 Kim F. Storm <storm@cua.dk>
9012
9013 * xdisp.c (Fformat_mode_line): New function.
9014 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
9015 (store_frame_title_char, store_frame_title): Use unconditionally.
9016 (init_xdisp): Defsubr Fformat_mode_line.
9017 Initialize frame_title_buf etc. unconditionally.
9018
90192002-06-11 Stefan Monnier <monnier@cs.yale.edu>
9020
9021 * keyboard.c (read_key_sequence):
9022 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
9023 things through those maps after downcasing events.
9024 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
9025 applies after function-key-map.
9026 Make sure that keytran can be done in the middle in the sequence.
9027 Be careful not to throw away events past the one we downcase.
9028
9029 * lread.c (read_integer): Remove unused var `tem'.
9030 (read1): Fix int/Lisp_Object mixup.
9031
9032 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
9033
90342002-06-11 Richard M. Stallman <rms@gnu.org>
9035
9036 * keyboard.c (readable_events): Ignore any number of
9037 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
9038
90392002-06-09 Miles Bader <miles@gnu.org>
9040
9041 * xfaces.c (Ftty_supports_face_attributes_p): New function.
9042 (parse_rgb_list, tty_lookup_color): New functions.
9043 (tty_defined_color): Use `tty_lookup_color' to do all the work.
9044 (color_distance, Fcolor_distance): New functions.
9045 (TTY_SAME_COLOR_THRESHOLD): New macro.
9046 (Qtty_color_standard_values): New variable.
9047 (syms_of_xfaces): Initialize new vars & functions.
9048
90492002-06-08 Colin Walters <walters@verbum.org>
9050
9051 * textprop.c (Vchar_property_alias_alist): New variable.
9052 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
9053
9054 * intervals.c (lookup_char_property): New function for looking up
9055 overlay and text properties, created from textget.
9056 (textget): Use it.
9057
9058 * intervals.h (lookup_char_property): Declare.
9059 (Vchar_property_alias_alist): Declare.
9060
9061 * buffer.c (Foverlay_get): Use lookup_char_property.
9062
90632002-06-07 Sam Steingold <sds@gnu.org>
9064
9065 * xselect.c (lisp_data_to_selection_data): Fix last change:
9066 *data_ret is not a Lisp string, while unibyte_string is.
9067
90682002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
9069
9070 * xselect.c (lisp_data_to_selection_data): Fix last change:
9071 set size_ret.
9072
90732002-06-07 Andreas Schwab <schwab@suse.de>
9074
9075 * m/amdx86-64.h: New file.
9076
90772002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
9078
9079 * fns.c (Fstring_make_unibyte): Doc fix.
9080
9081 * xselect.c (lisp_data_to_selection_data): If the requested type
9082 is STRING, call string_make_unibyte to encode the selected text
9083 as a string.
9084
9085 * window.c (Fset_window_hscroll): Doc fix.
9086
90872002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9088
9089 * fileio.c (choose_write_coding_system):
9090 Call select-safe-coding-system properly.
9091
90922002-06-03 Richard M. Stallman <rms@gnu.org>
9093
9094 * xdisp.c (message_with_string): Error if STRING is not a string.
9095
9096 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
9097
9098 * fileio.c (choose_write_coding_system): Pass FILE arg to
9099 Vselect_safe_coding_system_function.
9100
91012002-06-03 Ken Raeburn <raeburn@gnu.org>
9102
9103 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
9104
91052002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
9106
9107 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
9108 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
9109 * keymap.c (describe_command): Likewise.
9110 * minibuf.c (read_minibuf): Likewise.
9111
9112 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
9113 Cast `current_column' return value to int.
9114 (back_to_previous_visible_line_start)
9115 (reseat_at_next_visible_line_start, next_element_from_buffer):
9116 Cast `indented_beyond_p' 3rd arg to float.
9117
9118 * indent.c (last_known_column): Now a float.
9119 (current_column_1, position_indentation, current_column)
9120 (string_display_width): Return float.
9121 (Fcurrent_column): Cast `current_column' return value to int.
9122 (Fcurrent_indentation): Cast `position_indentation' retval to int.
9123 (indented_beyond_p): Third arg now a float.
9124 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
9125
9126 * lisp.h (current_column): Now returns float.
9127 (indented_beyond_p): 3rd arg now a float.
9128
91292002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
9130
9131 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
9132 is Qcompound_text_with_extensions.
9133
9134 * xselect.c (lisp_data_to_selection_data): Always set selection
9135 type as string if x_encode_text returns streingp non-NULL.
9136
9137 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
9138
91392002-05-30 Richard M. Stallman <rms@gnu.org>
9140
9141 * window.c (Fset_window_configuration): Correct the handling
9142 of point in current buffer, to work with multiple windows.
9143
91442002-05-29 Colin Walters <walters@verbum.org>
9145
9146 * lread.c (Fread_from_string): Don't depend on order of evaluation
9147 for C function parameters.
9148
91492002-05-28 Richard M. Stallman <rms@gnu.org>
9150
9151 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
9152 way for blinked-off state and for a nonselected window.
9153
9154 * window.c (window_scroll_pixel_based): Don't call Fbolp;
9155 instead, see if the new start pos is at beginning of line.
9156
9157 * fileio.c (Fwrite_region): If START is a string, don't
9158 make any annotations.
9159
9160 * eval.c (syms_of_eval): Doc fix.
9161
91622002-05-28 Colin Walters <walters@debian.org>
9163
9164 * emacs.c (USAGE1): Add --no-splash.
9165 (standard_args): Ditto.
9166
91672002-05-28 Colin Walters <walters@gnu.org>
9168
9169 * lread.c (readchar_count): New variable.
9170 (readchar): Increment it.
9171 (unreadchar): Decrement it.
9172 (read_multibyte): Decrement it.
9173 (Vread_with_symbol_positions): New variable.
9174 (Vread_symbol_positions_list): New variable.
9175 (read_internal_start): New function, created from Fread and
9176 Fread_from_string. Handle Vread_symbol_positions_list and
9177 Vread_with_symbol_positions.
9178 (readevalloop, Fread, Fread_from_string): Use it.
9179 (read1): Use readchar_count to add symbol positions to
9180 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
9181 (syms_of_lread): DEFVAR_LISP and initialize them.
9182
9183 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
9184 (substitute_object_recurse, substitute_object_in_subtree)
9185 (substitute_in_interval): Prototype.
9186 (read_multibyte): Return c if it's less than zero.
9187
91882002-05-28 Kim F. Storm <storm@cua.dk>
9189
9190 * fileio.c (Fread_file_name_internal): Added brute-force
9191 speed up for using predicate file-directory-p.
9192
91932002-05-28 Kim F. Storm <storm@cua.dk>
9194
9195 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
9196 New variables.
9197 (syms_of_fileio): DEFVAR_LISP them.
9198 (read_file_name_cleanup): New unwind function.
9199 (Fread_file_name_internal): Only return completions satifying
9200 Vread_file_name_predicate. Temporarily unwind protect and rebind
9201 default-directory while checking completions against the predicate.
9202 (Fread_file_name): Added PREDICATE argument. Specbind it to
9203 Vread_file_name_predicate during completion.
9204 Call Vread_file_name_function to read the file name if non-nil.
9205
9206 * lisp.h (Fread_file_name): Now has 6 args.
9207
9208 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
9209 predicate for Fread_file_name when reading directory name.
9210 Supply Qnil for predicate in other calls to Fread_file_name.
9211
92122002-05-26 Miles Bader <miles@gnu.org>
9213
9214 * term.c (tty_capable_p): New function.
9215 * dispextern.h (tty_capable_p): New function declaration.
9216 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
9217 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
9218
92192002-05-23 Stefan Monnier <monnier@cs.yale.edu>
9220
9221 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
9222 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
9223 (Vwrite_region_annotate_functions): Docstring fix.
9224
92252002-05-23 Kim F. Storm <storm@cua.dk>
9226
9227 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
9228 phys_cursor's hpos is overwritten. This is still not completely
9229 correct, as it doesn't really make sense to use hpos at all to
9230 get the cursor glyph (as that is relative to the width of the
9231 characters on the line, which may have changed during the update).
9232
92332002-05-22 Jason Rumney <jasonr@gnu.org>
9234
9235 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
9236 Lisp_Object.
9237 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
9238 Use modified enumfont_t struct.
9239
9240 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
9241
9242 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
9243 Handle the `hbar' cursor type.
9244 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
9245
9246 * w32fns.c (Qhbar): New variable.
9247 (x_specified_cursor_type): Use it.
9248
92492002-05-21 Ken Raeburn <raeburn@gnu.org>
9250
9251 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
9252 now, when the address is needed.
9253
92542002-05-21 Colin Walters <walters@gnu.org>
9255
9256 * Makefile.in (shortlisp): Add font-core.el.
9257
92582002-05-20 Richard M. Stallman <rms@gnu.org>
9259
9260 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
9261
9262 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
9263 equivalent key bindings here.
9264
92652002-05-20 Ken Raeburn <raeburn@gnu.org>
9266
9267 Change symbol structure to contain a lisp object for the symbol
9268 name:
9269 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
9270 object field named "xname".
9271 (SYMBOL_NAME): New macro.
9272 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
9273 name field.
9274 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
9275 (mark_object, gc_sweep): Use symbol xname field and XSTRING
9276 instead of name field.
9277 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
9278 SYMBOL_NAME instead of XSYMBOL and name field.
9279 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
9280 instead of XSYMBOL and name field.
9281 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
9282 and SYMBOL_NAME instead of XSYMBOL and name field.
9283 * coding.c (Fread_coding_system, code_convert_region1)
9284 (code_convert_string1, code_convert_string_norecord)
9285 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
9286 XSYMBOL and name field.
9287 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
9288 (Fmake_variable_buffer_local, Fmake_local_variable)
9289 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
9290 of XSYMBOL and name field.
9291 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
9292 XSYMBOL and name field.
9293 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
9294 instead of XSYMBOL and name field.
9295 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
9296 XSYMBOL and name field.
9297 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
9298 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
9299 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
9300 instead of XSYMBOL and name field.
9301 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
9302 (parse_modifiers, apply_modifiers, Fevent_convert_list)
9303 (parse_solitary_modifier, Fexecute_extended_command):
9304 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
9305 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
9306 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
9307 of XSYMBOL and name field.
9308 (describe_command, describe_translation): Use SYMBOL_NAME and
9309 assignment instead of XSYMBOL and name field and XSETSTRING.
9310 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
9311 instead of XSYMBOL and name field.
9312 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
9313 name field and XSETSTRING.
9314 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
9315 of XSYMBOL and name field.
9316 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
9317 assignment instead of XSYMBOL and name field and XSETSTRING.
9318 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
9319 XSTRING instead of XSYMBOL and name field.
9320 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
9321 and XSTRING instead of XSYMBOL and name field.
9322 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
9323 and XSTRING instead of XSYMBOL and name field.
9324 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
9325 XSTRING instead of XSYMBOL and name field.
9326 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
9327 of XSYMBOL and name field.
9328 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
9329 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
9330
93312002-05-19 Ken Raeburn <raeburn@gnu.org>
9332
9333 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
9334 and XCDR real rvalues in most configurations.
9335
9336 * buffer.c (fix_overlays_in_range, fix_overlays_before):
9337 Don't take the address of the cdr part of a cons cell; instead, track
9338 the parent cell and call XSETCDR, or set the variable for the head
9339 of the list if we haven't started down the list yet.
9340
93412002-05-19 Richard M. Stallman <rms@gnu.org>
9342
9343 * doc.c (reread_doc_file): Don't ask for confirmation.
9344
93452002-05-18 Jason Rumney <jasonr@gnu.org>
9346
9347 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
9348 (xbm_load_image): Use it.
9349 (xbm_load): Ditto.
9350 (xbm_read_bitmap_data): Reverted to xfns.c version.
9351 From David Ponce <david@dponce.com>.
9352
93532002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
9354
9355 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
9356 2.02 and later.
9357
93582002-05-16 Juanma Barranquero <lektu@terra.es>
9359
9360 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
9361
93622002-05-15 Stefan Monnier <monnier@cs.yale.edu>
9363
9364 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
9365 meaningful test.
9366 (read_char_minibuf_menu_prompt): Fix typo.
9367
93682002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
9369
9370 * eval.c (Fcommandp): Doc fix.
9371
93722002-05-13 Stefan Monnier <monnier@cs.yale.edu>
9373
9374 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
9375 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
9376 (Fset_keymap_parent): Gcpro a bit more.
9377 (access_keymap): Gcpro around meta_map call and around the main loop.
9378 (get_keyelt): Gcpro when following indirect references.
9379 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
9380 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
9381 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
9382 Remove useless ad-hoc remap code.
9383
93842002-05-13 Richard M. Stallman <rms@gnu.org>
9385
9386 * search.c (search_buffer): Give up boyer moore search if inverse
9387 translation change charset_base.
9388
93892002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
9390
9391 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
9392 characters is carried over from the previous block of text, adjust
9393 coding->produced to account for the extra character.
9394
93952002-05-11 Andreas Schwab <schwab@suse.de>
9396
9397 * coding.c (intersection): Keep the elements of the returned list
9398 in the same order as in the first list.
9399
94002002-05-11 Kim F. Storm <storm@cua.dk>
9401
9402 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
9403 only update cmm_size if realloc actually succeeds.
9404 Testing with initial size of 2 elements revealed that using
9405 realloc on GNU/Linux would cause a random trap in xmalloc
9406 later on, so I rewrote the code to use malloc/bcopy/free instead
9407 of realloc.
9408
94092002-05-10 Jason Rumney <jasonr@gnu.org>
9410
9411 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
9412
94132002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
9414
9415 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
9416 parens, to ensure correct evaluation order.
9417
94182002-05-10 Kim F. Storm <storm@cua.dk>
9419
9420 * keymap.c (Vemulation_mode_map_alists): New variable.
9421 (syms_of_keymap): DEFVAR_LISP it.
9422 (current_minor_maps): Process keymap alists in that list before
9423 minor-mode-overriding-map-alist and minor-mode-map-alist.
9424
94252002-05-09 Richard M. Stallman <rms@gnu.org>
9426
9427 * search.c (Freplace_match): Doc fix.
9428
94292002-05-09 Kim F. Storm <storm@cua.dk>
9430
9431 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
9432 Enlarge cursor rectangle drawn around image with non-zero relief.
9433
9434 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
9435 Enlarge cursor rectangle drawn around image with non-zero relief.
9436
9437 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
9438 Enlarge cursor rectangle drawn around image with non-zero relief.
9439
94402002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
9441
9442 * xselect.c (lisp_data_to_selection_data): Don't set selection
9443 type if comes from the Lisp object's car. If the selection
9444 contains a pure ASCII text, always return QSTRING as its type.
9445
94462002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9447
9448 * mac.c (mac-cut-function): Doc fix.
9449
94502002-05-05 Richard M. Stallman <rms@gnu.org>
9451
9452 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
9453
94542002-05-04 Jason Rumney <jasonr@gnu.org>
9455
9456 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
9457 for event-click-count.
9458
9459 * process.c (init_process): Only add server subfeature if we can
9460 use non-blocking I/O.
9461
94622002-05-04 Andrew Choi <akochoi@shaw.ca>
9463
9464 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
9465 repeatedly.
9466
94672002-05-03 Jason Rumney <jasonr@gnu.org>
9468
9469 * process.c (Fmake_network_process): Only support server sockets
9470 when we can make them non-blocking.
9471
9472 * s/ms-w32.h (HAVE_SELECT): Define.
9473
9474 * w32.h (FILE_NDELAY): New flag.
9475
9476 * w32.c (sys_getpeername, fcntl): New functions.
9477 (_sys_read_ahead): Temporarily block on non-blocking sockets.
9478
9479 * w32proc.c: include sys/file.h.
9480
94812002-05-03 Colin Walters <walters@verbum.org>
9482
9483 * callproc.c (Vgame_score_directory): Renamed to
9484 Vshared_game_score_directory.
9485
94862002-04-30 Richard M. Stallman <rms@gnu.org>
9487
9488 * s/gnu.h [emacs]: Include stdio.h.
9489 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
9490
9491 * eval.c (do_autoload): Error if called while preparing to dump.
9492
9493 * fns.c (Frequire): Error if need to load while preparing to dump.
9494
94952002-04-28 Colin Walters <walters@verbum.org>
9496
9497 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
9498 Default to "~/.emacs.d/games".
9499
95002002-04-29 Stefan Monnier <monnier@cs.yale.edu>
9501
9502 * lread.c (openp): Change arg exec_only to predicate.
9503 (build_load_history): Use XCAR/XCDR.
9504 (Flocate_file_internal): New fun.
9505 (syms_of_lread): Defsubr it.
9506 (Fload): Update call to openp.
9507
9508 * lisp.h (openp): Update prototype.
9509
9510 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
9511 * w32proc.c (sys_spawnve):
9512 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
9513 * w32.c (check_windows_init_file):
9514 * sound.c (Fplay_sound_internal):
9515 * process.c (Fstart_process):
9516 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
9517 * mac.c (run_mac_command):
9518 * emacs.c (init_cmdargs):
9519 * callproc.c (Fcall_process): Update call to openp.
9520
9521 * textprop.c (remove_properties): Don't use XCAR without CONSP.
9522
9523 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
9524
95252002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9526
9527 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
9528 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
9529
95302002-04-28 Richard M. Stallman <rms@gnu.org>
9531
9532 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
9533
9534 * eval.c (Fcommandp): New arg for_call_interactively.
9535 * lisp.h (Fcommandp): Declare new arg.
9536
95372002-04-28 Jason Rumney <jasonr@gnu.org>
9538
9539 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
9540
9541 * w32.c (stat, fstat): Use file index information to generate
9542 inodes for directories where available.
9543
95442002-04-26 Andrew Choi <akochoi@shaw.ca>
9545
9546 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
9547 [HAVE_CARBON]: Include Mac object files.
9548
9549 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
9550 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
9551 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
9552 MAC_OSX, and MAC_OS instead of macintosh.
9553
9554 * editfns.c [MAC_OS8]: Include stdio.h.
9555
9556 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
9557
9558 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
9559 Apple Monaco.
9560
9561 * process.c: Declare QCfamily and QCfilter as extern.
9562 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
9563 calling select.
9564
9565 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
9566
9567 * tparam.c [MAC_OSX]: Don't define BC and UP.
9568
9569 * config.in [HAVE_CARBON]: Add.
9570
9571 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
9572 Move here from mac/src and mac/inc.
9573
9574 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
9575
95762002-04-26 Gerd Moellmann <gerd@gnu.org>
9577
9578 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
9579 Compute phys_cursor_width from the x position returned
9580 by x_draw_glyhs, which is cheaper.
9581 (x_display_and_set_cursor): Compute the buffer-local value
9582 of `cursor-in-non-selected-windows' only when needed.
9583
95842002-04-25 Gerd Moellmann <gerd@gnu.org>
9585
9586 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
9587 cursor on a stretch glyph has a width that depends on
9588 x_stretch_cursor_p.
9589
95902002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9591
9592 * abbrev.c (abbrev-start-location): Doc fix.
9593
9594 * indent.c (Fvertical_motion): Fix last change.
9595
95962002-04-25 Gerd Moellmann <gerd@gnu.org>
9597
9598 * indent.c (Fvertical_motion): Move to the start of the line
9599 containing PT before moving up or down.
9600
96012002-04-24 Gerd Moellmann <gerd@gnu.org>
9602
9603 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
9604 case of writing a whole row, more or less analogous to the case of
9605 writing only parts of a row.
9606
9607 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
9608 0 for NO_CURSOR.
9609
9610 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
9611
96122002-04-23 Colin Walters <walters@verbum.org>
9613
9614 * buffer.c (syms_of_buffer): Doc fix.
9615
96162002-04-23 Gerd Moellmann <gerd@gnu.org>
9617
9618 * xterm.c (notice_overwritten_cursor): Handle the special case
9619 of the cursor being in the first blank non-text line at the
9620 end of a window.
9621
9622 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
9623 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
9624 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
9625 bar cursors only, to make phys_cursor_width contain what its name
9626 suggests.
9627 (notice_overwritten_cursor): Consider the cursor image erased if
9628 the output area intersects the cursor image in y-direction.
9629
96302002-04-23 Simon Marshall <simon@gnu.org>
9631
9632 * xfns.c (x_set_mouse_color): Change default for cross_cursor
9633 to XC_hand2.
9634
96352002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9636
9637 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
9638
96392002-04-22 Kim F. Storm <storm@cua.dk>
9640
9641 * textprop.c (remove_properties): Fixed trap for malformed plist.
9642
96432002-04-22 Richard M. Stallman <rms@gnu.org>
9644
9645 * cmds.c (Fend_of_line): Handle intangible text in mid line.
9646
9647 * window.c (make_window): Initialize height_fixed_p,
9648 last_cursor_off_p, and p->cursor_off_p slots.
9649
96502002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9651
9652 * fns.c (use-dialog-box): Doc fix.
9653
96542002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9655
9656 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
9657 variables `row', `i' and `area'.
9658 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
9659 toolkit library.
9660
96612002-04-19 Stefan Monnier <monnier@cs.yale.edu>
9662
9663 * xfaces.c (clear_font_table): Don't free the default font of
9664 a frame even if it's on another display.
9665 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
9666 that could be Qt.
9667
96682002-04-19 Juanma Barranquero <lektu@terra.es>
9669
9670 * indent.c (Fmove_to_column): Remove unused local variable
9671 `next_boundary_byte'.
9672 (current_column_1): Likewise.
9673
96742002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
9675
9676 * msdos.c (Qhbar): New variable.
9677 (syms_of_msdos): Intern and staticpro it.
9678 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
9679 cursor type.
9680
96812002-04-19 Dave Lambert <dlambert@acm.org>
9682
9683 Theses change implement an underscore-like (`hbar') cursor.
9684
9685 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
9686
9687 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
9688 Handle the `hbar' cursor type.
9689 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
9690
9691 * xfns.c (Qhbar): New variable.
9692 (syms_of_xfns): Intern and staticpro it.
9693 (x_specified_cursor_type): Handle `hbar' cursor.
9694
9695 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
9696 not defined.
9697
96982002-04-18 Richard M. Stallman <rms@gnu.org>
9699
9700 * textprop.c (remove_properties): New arg LIST allows scanning
9701 either a list or a plist.
9702 (interval_has_some_properties_list): New function, like
9703 interval_has_some_properties using list instead of plist.
9704 All callers changed.
9705 (Fremove_list_of_text_properties): New function.
9706 (syms_of_textprop): Defsubr it.
9707
97082002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
9709
9710 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
9711
97122002-04-17 Juanma Barranquero <lektu@terra.es>
9713
9714 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
9715
97162002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
9717
9718 * window.c (coordinates_in_window): Don't report on margin area
9719 if its width is zero.
9720
97212002-04-16 Jason Rumney <jasonr@gnu.org>
9722
9723 * w32fns.c (Fx_file_dialog): Decode file name before using.
9724
9725 * w32term.c (construct_drag_n_drop): Likewise.
9726
97272002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
9728
9729 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
9730 store load-history in pure space.
9731
9732 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
9733
97342002-04-16 Stefan Monnier <monnier@cs.yale.edu>
9735
9736 * xterm.c (Qlatin_1, Qutf_8): New vars.
9737 (syms_of_xterm): Initialize them.
9738 (XTread_socket): Eliminate incorrect optimization that tried to avoid
9739 decoding the output of X*LookupString.
9740 Always use latin-1 to decode the output of XLookupString.
9741 Try Xutf8LookupString if XmbLookupString failed.
9742
9743 * region-cache.c (new_region_cache): Use BEG.
9744
97452002-04-16 Gerd Moellmann <gerd@gnu.org>
9746
9747 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
9748 configuration files.
9749 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
9750 returns 0.
9751
97522002-04-15 Andreas Schwab <schwab@suse.de>
9753
9754 * config.in: Regenerated using autoheader.
9755
9756 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
9757 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
9758 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
9759 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
9760 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
9761 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
9762 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
9763 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
9764 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
9765 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
9766 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
9767 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
9768 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
9769 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
9770 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
9771 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
9772 STACK_DIRECTION, now set by autoconf.
9773
97742002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9775
9776 * dispnew.c (marginal_area_string): Sort arguments.
9777
9778 * dispextern.h (marginal_area_string): Add prototype.
9779
97802002-04-13 Richard M. Stallman <rms@gnu.org>
9781
9782 * fileio.c (Finsert_file_contents):
9783 Don't call temp_output_buffer_setup--do just part, by hand.
9784
9785 * coding.c (run_pre_post_conversion_on_str):
9786 Don't call temp_output_buffer_setup--do just part, by hand.
9787
9788 * keyboard.c (command_loop_1): Don't call start_hourglass
9789 or cancel_hourglass when executing a macro.
9790
9791 * marker.c (count_markers): New function.
9792
9793 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
9794 grow without limit. Move recently used elements to the front.
9795
97962002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
9797
9798 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
9799
98002002-04-12 Gerd Moellmann <gerd@gnu.org>
9801
9802 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
9803 rows marginal areas.
9804 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
9805 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
9806
9807 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
9808
98092002-04-12 Dave Love <fx@gnu.org>
9810
9811 * dispnew.c (marginal_area_string): New.
9812
9813 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
9814 (Qleft_margin, Qright_margin): Declare.
9815 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
9816
9817 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
9818 note_mode_line_highlight and extended.
9819
9820 * keyboard.c (Qleft_margin, Qright_margin): Declare.
9821 (make_lispy_event): Deal with mouse events in margins.
9822
98232002-04-12 Stefan Monnier <monnier@cs.yale.edu>
9824
9825 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
9826
9827 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
9828 than deactivating the mark if tmm is set to `lambda'.
9829 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
9830 Use a single event for HELP_EVENT.
9831 (Fexecute_extended_command): Save last_point_position.
9832
98332002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9834
9835 * lisp.h (Fpropertize): Add prototype.
9836
9837 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
9838
98392002-04-10 Colin Walters <walters@verbum.org>
9840
9841 * config.in: Add HAVE_SHARED_GAME_DIR.
9842
9843 * callproc.c: (Vgame_score_directory): New variable.
9844 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
9845
98462002-04-10 Richard M. Stallman <rms@gnu.org>
9847
9848 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
9849
98502002-04-09 Stefan Monnier <monnier@cs.yale.edu>
9851
9852 * minibuf.c (read_minibuf): Use empty_string.
9853 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
9854 Short-circuit the search as soon as it "failed".
9855 (Fall_completions): Allow lambda forms and lists of strings for alist.
9856 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
9857 when require_match is nil.
9858 (Ftest_completion): Rename from `test_completion' and export to elisp.
9859 Call the predicate also when alist is a list.
9860 Obey Vcompletion_regexp_list.
9861 (do_completion, Fminibuffer_complete_and_exit): Use it.
9862 (Fassoc_string): Rename from `assoc_for_completion'.
9863 Allow list of strings as well and export to elisp.
9864
98652002-04-08 Stefan Monnier <monnier@cs.yale.edu>
9866
9867 * puresize.h (BASE_PURESIZE): Increase to 900KB.
9868
98692002-04-08 Juanma Barranquero <lektu@terra.es>
9870
9871 * w32.c (sys_accept): Don't hide variable `s'.
9872
98732002-04-05 Gerd Moellmann <gerd@gnu.org>
9874
9875 * callint.c (Fcall_interactively): Use INTEGERP instead of
9876 NUMBERP for checking Vhistory_length.
9877
98782002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9879
9880 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
9881 Doc fix to reflect it.
9882
98832002-04-04 Richard M. Stallman <rms@gnu.org>
9884
9885 * xdisp.c (display_mode_element): New arg RISKY.
9886 Disregard text props found or specified within a variable
9887 that isn't marked risky-local-variable.
9888 (Qrisky_local_variable): New variable.
9889 (syms_of_xdisp): Init and staticpro it.
9890
98912002-04-04 Stefan Monnier <monnier@cs.yale.edu>
9892
9893 * undo.c (record_point): New fun.
9894 (record_delete, record_insert): Use it.
9895
98962002-04-03 Juanma Barranquero <lektu@terra.es>
9897
9898 * doc.c (Fdocumentation): Add missing parentheses.
9899 (Fdocumentation_property): Likewise.
9900
99012002-04-03 Stefan Monnier <monnier@cs.yale.edu>
9902
9903 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
9904 data is 0, just return nil.
9905
99062002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
9907
9908 * msdos.c (syms_of_msdos): Fix last change with
9909 mouse_autoselect_window.
9910
99112002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9912
9913 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
9914 mouse_autoselect_window.
9915
99162002-04-02 Stefan Monnier <monnier@cs.yale.edu>
9917
9918 * keyboard.c (make_lispy_event): Handle unknown keysyms together
9919 with system-specific keysyms. Use it also for unknown function keys.
9920
9921 * doc.c (reread_doc_file): Return whether reload was attempted.
9922 (Fdocumentation, Fdocumentation_property): Don't try to reload
9923 if the doc is 0 and only ask once.
9924
9925 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
9926
99272002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
9928
9929 * keyboard.c (read_char): If the event was Qselect_window,
9930 restore timer_idleness_start_time to its previous value.
9931
9932 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
9933
99342002-04-01 Stefan Monnier <monnier@cs.yale.edu>
9935
9936 * region-cache.c (new_region_cache): Use BEG.
9937
9938 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
9939 Use BEG and BEG_BYTE.
9940
9941 * doc.c (get_doc_string): Return nil if the location is wrong.
9942 (reread_doc_file): New fun.
9943 (Fdocumentation, Fdocumentation_property):
9944 Call it if get_doc_string fails.
9945 (Fsnarf_documentation): Make it work for a dumped Emacs.
9946
9947 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
9948 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
9949
9950 * charset.c (Fstring): Allow 0 arguments.
9951
9952 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
9953
9954 * process.c (DATAGRAM_CONN_P, list_processes_1)
9955 (Fprocess_datagram_address, Fset_process_datagram_address)
9956 (Fset_network_process_options, server_accept_connection):
9957 Fix some int/Lisp_Object confusions (thank you union types).
9958
99592002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9960
9961 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
9962
9963 * w32term.c: Likewise.
9964 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
9965
9966 * keyboard.c (Qselect_window): New symbol.
9967 (head_table): Use it.
9968 (keys_of_keyboard): Bound select-window event to handle-select-window.
9969 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
9970
9971 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
9972 (last_window): New variable.
9973 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
9974 (note_mouse_movement): Remove reimplemented code in #if 0.
9975 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
9976 Emacs windows.
9977
9978 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
9979
99802002-03-31 Gerd Moellmann <gerd@gnu.org>
9981
9982 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
9983 Callers changed.
9984
99852002-03-30 Richard M. Stallman <rms@gnu.org>
9986
9987 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
9988 loop whenever it stops making progress.
9989
9990 * widget.c (set_frame_size): Don't call change_frame_size.
9991
99922002-03-30 Gerd Moellmann <gerd@gnu.org>
9993
9994 * dispnew.c (direct_output_for_insert):
9995 Call mark_window_display_accurate.
9996
99972002-03-29 Jason Rumney <jasonr@gnu.org>
9998
9999 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
10000
100012002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
10002
10003 * Makefile.in (lread.o): Depend on coding.h.
10004
10005 * lread.c (openp, Fload): Encode the file name before passing it
10006 to `stat', `access', and `emacs_open'.
10007 (openp): GCPRO the encoded file name. Don't recompute Lisp
10008 strings unnecessarily.
10009
100102002-03-29 Kim F. Storm <storm@cua.dk>
10011
10012 * fns.c (Flax_plist_put): Doc fix.
10013
100142002-03-28 Miles Bader <miles@gnu.org>
10015
10016 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
10017
100182002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10019
10020 * process.c (set-network-process-options): Add usage.
10021 (make-network-process): Doc fix.
10022
100232002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
10024
10025 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
10026
100272002-03-26 Richard M. Stallman <rms@gnu.org>
10028
10029 * fns.c (Fsubstring_no_properties): New function.
10030 (Flax_plist_get, Flax_plist_put): New functions.
10031 (syms_of_fns): defsubr them.
10032
10033 * xdisp.c (update_menu_bar): Test only update_mode_lines;
10034 don't test or alter w->update_mode_line.
10035
10036 * window.c (Fdisplay_buffer): Doc fix.
10037
100382002-03-24 Richard M. Stallman <rms@gnu.org>
10039
10040 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
10041
100422002-03-24 Gerd Moellmann <gerd@gnu.org>
10043
10044 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
10045 (Fdefmacro): Handle `(declare ...)'.
10046 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
10047 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
10048
100492002-03-24 Jason Rumney <jasonr@gnu.org>
10050
10051 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
10052 (xbm_file_p): Add prototypes.
10053 (xbm_format, xbm_image_p): Sync with xfns.c.
10054 (reflect_byte): New function.
10055 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
10056 (xbm_load_image): Create bitmaps with a depth of 1.
10057 (init_xfns): Enable XBM images.
10058
100592002-03-23 Jason Rumney <jasonr@gnu.org>
10060
10061 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
10062 correctly. Do not pass up_modifier to keyboard buffer.
10063
10064 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
10065
100662002-03-22 Stefan Monnier <monnier@cs.yale.edu>
10067
10068 * Makefile.in (bootstrapclean): New target.
10069 (bootstrap-temacs, bootstrap-doc): Remove.
10070 (bootstrap-emacs): Use a bog-standard `temacs'.
10071 Don't bother to build a DOC file.
10072
10073 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
10074
10075 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
10076 in temacs even if !CANNOT_DUMP.
10077 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
10078
10079 * alloc.c (check_pure_size): Only output a warning.
10080
100812002-03-22 Jason Rumney <jasonr@gnu.org>
10082
10083 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
10084 supported.
10085
10086 * w32term.c (zv_bits): Declare as short, for word alignment.
10087 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
10088 (syms_of_w32term): Define x-use-underline-position-properties.
10089
10090 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
10091 (clear_image_cache): Block input, fix logic, clear matrices in
10092 all frames that share this cache.
10093
100942002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
10095
10096 * emacs.c (main): Update the Copyright year in the blurb printed
10097 by "emacs --version".
10098
10099 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
10100
10101 * xterm.c (XTread_socket): If XK_ISO_Lock and
10102 XK_ISO_Last_Group_Lock are defined, handle keysyms between
10103 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
10104
101052002-03-21 Kim F. Storm <storm@cua.dk>
10106
10107 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
10108 menu-bar bindings in keymap and local-map properties _are_ used.
10109 But try keymap property first in accordance with 2002-01-03 patch.
10110 Added comment describing why this is not always reliable.
10111 (tool_bar_items): Ditto for tool-bar.
10112
101132002-03-21 Jason Rumney <jasonr@gnu.org>
10114
10115 * w32fns.c (x_clear_image_1): Disable color table code.
10116
101172002-03-21 Kim F. Storm <storm@cua.dk>
10118
10119 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
10120 removed the wrong version of the DEFUN macro; fixed it.
10121
10122 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
10123 Fmember rather than Fmemq).
10124 (Fprovide): Check that subfeatures is a list.
10125
10126 * process.c (QCfeature, QCdatagram): Removed variables.
10127 (QCtype, Qdatagram): New variables.
10128 (network_process_featurep): Removed function.
10129 (Fmake_network_process): Removed :feature check.
10130 Use :type 'datagram instead of :datagram t to create a datagram
10131 socket. This allows us to add other connection types (e.g. raw
10132 sockets) later in a consistent manner.
10133 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
10134 supported subfeatures for feature make-network-process.
10135 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
10136 Intern and staticpro QCtype and Qdatagram.
10137 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
10138
10139 * xfns.c: (QCtype): Remove duplicate declaration and
10140 initialization (is now declared in process.c).
10141
10142 * w32fns.c: (QCtype): Remove duplicate declaration and
10143 initialization (is now declared in process.c).
10144
101452002-03-21 Richard M. Stallman <rms@gnu.org>
10146
10147 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
10148 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
10149 when jumping to `fail' to avoid undoing reg changes in the
10150 last iteration of the loop.
10151 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
10152
10153 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
10154 Depend on process.h.
10155
101562002-03-20 Jason Rumney <jasonr@gnu.org>
10157
10158 Most of the following changes are still conditional on HAVE_IMAGES
10159 which is not set by default on Windows.
10160
10161 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
10162
10163 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
10164 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
10165 (four_corners_best, x_clear_image_1, x_clear_image)
10166 (x_alloc_image_color, postprocess_image)
10167 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
10168 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
10169 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
10170
10171 * w32gui.h (struct XImage): Define.
10172
10173 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
10174 extract mouse co-ordinates.
10175
101762002-03-20 Jason Rumney <jasonr@gnu.org>
10177
10178 * w32.c (init_winsock): Dynamically load new server and UDP
10179 socket functions.
10180 (socket_to_fd): New function.
10181 (sys_socket): Use it.
10182 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
10183 (sys_recvfrom, sys_sendto): New wrapper functions.
10184
10185 * process.c (QCfamily, QCfilter): Remove duplicate declaration
10186 and initialization.
10187
10188 * makefile.w32-in (LIBS): Remove $(WSOCK32).
10189
101902002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
10191
10192 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
10193 Don't use "sun" as a variable, it's a predefined constant on Sun
10194 machines.
10195
101962002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10197
10198 * bytecode.c (Fbyte_code): Revert last change.
10199
102002002-03-19 Kim F. Storm <storm@cua.dk>
10201
10202 * makefile.w32-in (LIBS): Add $(WSOCK32).
10203 From David Ponce <dponce@voila.fr>.
10204
102052002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10206
10207 * process.c (wait_reading_process_input): Move variables `pname'
10208 and `pnamelen' down where they are used.
10209
10210 * bytecode.c (Fbyte_code): Discard unused computed value to
10211 prevent gcc warning.
10212
10213 * lisp.h (Fplist_member): Add prototype.
10214
102152002-03-18 Kim F. Storm <storm@cua.dk>
10216
10217 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
10218 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
10219
10220 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
10221 Remove explicit GNU_LINUX settings for datagram support.
10222
102232002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10224
10225 * process.c (Fmake_network_process): Remove unused variable `sa'.
10226 Doc fix. Add usage:.
10227 (set_socket_options): Remove unused variables `optnum' and `opttype'.
10228
102292002-03-17 Richard M. Stallman <rms@gnu.org>
10230
10231 * xdisp.c (cursor_type_changed): New variable.
10232 (redisplay_internal): Redisplay all windows if cursor_type_changed.
10233 Clear it when clearing windows_or_buffers_changed.
10234 (try_cursor_movement, redisplay_window, try_window_id)
10235 (try_window_reusing_current_matrix): Test cursor_type_changed
10236 along with windows_or_buffers_changed.
10237
10238 * window.h (cursor_type_changed): New variable.
10239
10240 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
10241 not update_mode_lines, and always set it to 1.
10242
10243 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
10244 if no frames needed redrawing.
10245
102462002-03-17 Kim F. Storm <storm@cua.dk>
10247
10248 The following changes add support for network server processes,
10249 datagram connections, and local (unix) sockets.
10250
10251 * process.h (struct Lisp_Process): New member log.
10252 Doc fix: Member command used to indicate stopped network process.
10253 Doc fix: Member childp contains plist for network process.
10254 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
10255
10256 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
10257 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
10258 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
10259 New variables.
10260 (NETCONN1_P): New macro.
10261 (DATAGRAM_SOCKETS): New conditional symbol.
10262 (datagram_address): New array.
10263 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
10264 (status_message): Use concat3.
10265 (Fprocess_status): Add `listen' status to doc string. Return `stop'
10266 for a stopped network process.
10267 (Fset_process_buffer): Update contact plist for network process.
10268 (Fset_process_filter): Ditto. Don't enable input for stopped
10269 network processes. Server must listen, even if filter is t.
10270 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
10271 New functions.
10272 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
10273 (Fprocess_contact): Added KEY argument. Handle datagrams.
10274 (list_processes_1): Optionally show only processes with the query
10275 on exit flag set. Dynamically adjust column widths. Omit tty
10276 column if not needed. Report stopped network processes.
10277 Identify server and datagram network processes.
10278 (Flist_processes): New optional arg `query-only'.
10279 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
10280 (conv_lisp_to_sockaddr, set_socket_options)
10281 (network_process_featurep, unwind_request_sigio): New helper functions.
10282 (Fprocess_datagram_address, Fset_process_datagram_address):
10283 (Fset_network_process_options): New lisp functions.
10284 (Fopen_network_stream): Removed. Now defined in simple.el.
10285 (Fmake_network_process): New lisp function. Code is based on previous
10286 Fopen_network_stream, but heavily reworked with new property list based
10287 argument list, support for datagrams, server processes, and local
10288 sockets in addition to old client-only functionality.
10289 (server_accept_connection): New function.
10290 (wait_reading_process_input): Use it to handle incoming connects.
10291 Do not enable input on a new connection if process is stopped.
10292 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
10293 (send_process): Handle datagram sockets.
10294 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
10295 network process is indicated by setting command field to t .
10296 (Fprocess_send_eof): No-op if datagram connection.
10297 (Fstatus_notify): Don't read input for a stream server socket or a
10298 stopped network process.
10299 (init_process): Initialize datagram_address array.
10300 (syms_of_process): Intern and staticpro new variables, defsubr new
10301 functions.
10302
103032002-03-16 Jason Rumney <jasonr@gnu.org>
10304
10305 * w32fns.c (w32_to_all_x_charsets): Return correct type in
10306 startup case.
10307
103082002-03-16 Richard M. Stallman <rms@gnu.org>
10309
10310 * xdisp.c (redisplay_internal, redisplay_windows):
10311 Use list_of_error to call internal_condition_case_1.
10312 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
10313 so as to catch all errors with no possibility of debugger redisplay.
10314 (list_of_error): New variable.
10315 (syms_of_xdisp): Init and staticpro it.
10316
10317 * print.c (print_object): Delete `\ ' from printed rep of frame.
10318
103192002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
10320
10321 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
10322 until its implementation is fixed.
10323
103242002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10325
10326 * xfns.c (png_load): Remove unused variable `gamma_str'.
10327
103282002-03-14 Richard M. Stallman <rms@gnu.org>
10329
10330 * xfns.c (x_real_positions): Handle failure in XQueryTree.
10331
103322002-03-14 Miles Bader <miles@gnu.org>
10333
10334 * intervals.c (adjust_for_invis_intang): New function.
10335 (set_point_both): Use `adjust_for_invis_intang' to do most of the
10336 work for dealing with invisible+intangible regions. Do so before
10337 and after both forward and backward movements, to handle both
10338 front-sticky and rear-sticky cases.
10339 * textprop.c (text_property_stickiness): Function moved here from
10340 `editfns.c'.
10341 * intervals.h (text_property_stickiness): New declaration.
10342 * editfns.c (char_property_eq): Function removed.
10343 (text_property_stickiness): Function moved to `textprop.c'.
10344
103452002-03-13 Jason Rumney <jasonr@gnu.org>
10346
10347 * config.in: Add STRFTIME_NO_POSIX2.
10348
10349 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
10350 and %OX when underlying strftime does not.
10351
103522002-03-13 Stefan Monnier <monnier@cs.yale.edu>
10353
10354 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
10355 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
10356 line) to avoid annoying flicker.
10357 (xm_scroll_callback): Get rid of the now unnecessary kludge.
10358 (XTread_socket): Mark it static.
10359
10360 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
10361
103622002-03-13 Kim F. Storm <storm@cua.dk>
10363
10364 * puresize.h (BASE_PURESIZE): Increase to 775000.
10365
103662002-03-12 Juanma Barranquero <lektu@terra.es>
10367
10368 * editfns.c (syms_of_editfns): Fix typo.
10369
103702002-03-12 Gerd Moellmann <gerd@gnu.org>
10371
10372 * xsmfns.c: Include stdio.h because termhooks.h needs it.
10373 Include termopt.h for interrupt_input.
10374
103752002-03-11 Andreas Schwab <schwab@suse.de>
10376
10377 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
10378
103792002-03-11 Gerd Moellmann <gerd@gnu.org>
10380
10381 * xterm.c (note_mouse_movement): Put code for
10382 x_autoselect_window_p in #if 0.
10383
10384 * lread.c (Fload): Don't assume that message_with_string uses the
10385 string it is given like a C string.
10386
103872002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10388
10389 * xterm.h (x_session_check_input, x_session_initialize): Declared.
10390
10391 * xterm.c: (XTread_socket): Add call to x_session_check_input and
10392 x_session_have_connection.
10393 (x_initialize): Add call to x_session_initialize.
10394
10395 * termhooks.h (enum event_kind): Add save_session_event.
10396
10397 * keyboard.c: Add Emacs event save_session_event.
10398
10399 * emacs.c (main): Add call to syms_of_xsmfns.
10400
10401 * lisp.h: Declare syms_of_xsmfns as extern.
10402
10403 * config.in: Add HAVE_X_SM.
10404
10405 * Makefile.in (LIBXT): Add -lSM -lICE
10406 if HAVE_X_SM and not USE_X_TOOLKIT.
10407 (XOBJ): New file xsmfns.c added.
10408
10409 * xsmfns.c: New file for X session management.
10410
104112002-03-09 Jason Rumney <jasonr@gnu.org>
10412
10413 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
10414 read-only when setting modified time.
10415
104162002-03-08 Gerd Moellmann <gerd@gnu.org>
10417
10418 * xdisp.c (move_it_vertically_backward): At the end of the function,
10419 when moving forward by lines, treat terminal frames specially.
10420
10421 * keyboard.c (echo_char): Make sure to add a separator between
10422 keys even if echo_dash hasn't been called.
10423
10424 * xdisp.c: Use new string macros.
10425 (update_echo_area): Pass number of bytes to message3 instead of
10426 number of chars.
10427 (set_message_1): Don't access a string's size_byte directly.
10428 (decode_mode_spec_coding): Use number of bytes of eoltype string
10429 instead number of chars.
10430
10431 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
10432
104332002-03-08 Juanma Barranquero <lektu@terra.es>
10434
10435 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
10436 24-bit.
10437
104382002-03-06 Jason Rumney <jasonr@gnu.org>
10439
10440 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
10441
104422002-03-06 Gerd Moellmann <gerd@gnu.org>
10443
10444 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
10445 (cancel_echoing, echo_length, echo_truncate): Changed to
10446 work with new kboard definition.
10447 (echo_now): Use message3_nolog instead of message2_nolog.
10448
10449 * alloc.c (mark_kboards): Mark echo_string.
10450
10451 * keyboard.h (ECHOBUFSIZE): Removed.
10452 (struct kboard): Member echoptr removed, member echobuf renamed
10453 to echo_string.
10454
10455 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
10456 message3 instead of message2 to display the message using STRING's
10457 text properties.
10458
104592002-03-05 Andreas Schwab <schwab@suse.de>
10460
10461 * xdisp.c (hscroll_margin): Change to EMACS_INT.
10462
104632002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
10464
10465 * frame.c (default-frame-alist): Explain that setting it doesn't
10466 affect existing frames.
10467
104682002-03-05 Stefan Monnier <monnier@cs.yale.edu>
10469
10470 * indent.c (skip_invisible): Fix my brain fart.
10471
10472 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
10473
104742002-03-04 Stefan Monnier <monnier@cs.yale.edu>
10475
10476 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
10477 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
10478 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
10479 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
10480 and variables to use EMACS_INT instead of just int.
10481
10482 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
10483
104842002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
10485
10486 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
10487 environment, pass it down with corrected value.
10488
104892002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10490
10491 * lread.c (read_filtered_event): Do not call start_hourglass
10492 before returning.
10493
104942002-03-04 Juanma Barranquero <lektu@terra.es>
10495
10496 * w32term.c (x_display_and_set_cursor): Fix typo.
10497
104982002-03-03 Richard M. Stallman <rms@gnu.org>
10499
10500 * fileio.c (Fmake_temp_name): Doc fix.
10501
105022002-03-03 Gary Wong <gtw@gnu.org>
10503
10504 * termcap.c [!emacs]: Replace ospeed for building standalone
10505 libtermcap, for binary compatibility.
10506
10507 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
10508
105092002-03-03 Richard M. Stallman <rms@gnu.org>
10510
10511 * xrdb.c (file_p): Rename arg `path' to `filename'.
10512
10513 * abbrev.c (Fexpand_abbrev): Increment plist as use count
10514 only if it is an integer.
10515
10516 * xfns.c (png_load): Set screen_gamma based on f->gamma.
10517 If png_get_sRGB gives an answer, call png_set_gamma
10518 using the default image gamma value.
10519
10520 * lread.c (read1): When reading from a file, default string to
10521 multibyte only if it has some multibyte characters.
10522
10523 * print.c (print_object): Output multibyte chars 128...255
10524 using \x even if ! print_escape_multibyte.
10525
10526 * xdisp.c (display_mode_element): Move the places where
10527 bytepos, charpos, this, and lisp_string are set.
10528 Use lisp_string to set bytepos.
10529
10530 * xdisp.c (redisplay_internal):
10531 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
10532
10533 * xdisp.c (display_mode_element): Merge properties specified with
10534 :propertize onto those that come with the string.
10535
105362002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
10537
10538 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
10539 automatic-hscrolling. Users changed.
10540 <hscroll-margin>: Renamed from automatic-hscroll-margin.
10541 Users changed.
10542 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
10543
105442002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
10545
10546 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
10547
105482002-03-02 Kim F. Storm <storm@cua.dk>
10549
10550 * window.c (Fminibuffer_selected_window): New function.
10551 (syms_of_window): Defsubr it.
10552
105532002-03-01 Kim F. Storm <storm@cua.dk>
10554
10555 * window.h (struct window): New member phys_cursor_width.
10556
10557 * window.c (make_window, replace_window): Init phys_cursor_width.
10558
10559 * xterm.c (x_display_and_set_cursor): Blink box cursor using
10560 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
10561
10562 * w32term.c (x_display_and_set_cursor): Blink box cursor using
10563 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
10564
10565 * lisp.h (GCPRO6): New macro.
10566
10567 * process.c (Fopen_network_stream): Use GCPRO6.
10568
105692002-03-01 Kim F. Storm <storm@cua.dk>
10570
10571 * process.c (Qconnect, Qfailed): New variables.
10572 (syms_of_process): Intern and staticpro them.
10573 (Fprocess_status): Document connect and failed return values.
10574 [NON_BLOCKING_CONNECT]: New conditional.
10575 (connect_wait_mask, num_pending_connects): New variables.
10576 (status_message): Convert Qfailed status.
10577 (Fopen_network_stream): Added support for non-blocking connect.
10578 New optional args: filter, sentinel, non_blocking. Doc updated.
10579 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
10580 (deactivate_process): Handle pending non-blocking connect.
10581 (wait_reading_process_input): Poll for status of non-blocking
10582 connects. Exec sentinel directly when connect succeeds.
10583 (status_notify): Don't read process output if not yet connected.
10584
105852002-02-28 Kim F. Storm <storm@cua.dk>
10586
10587 * window.c: (minibuf_selected_window): Renamed from
10588 Vminibuf_selected_window. Users changed.
10589 (syms_of_window): Staticpro it.
10590
105912002-02-26 Kim F. Storm <storm@cua.dk>
10592
10593 The following changes add a new Vminibuf_selected_window variable
10594 which is similar to Vminibuf_scroll_window, but which is only set
10595 on entry to the minibuffer (from a non-minibuffer window):
10596
10597 * window.c: (Vminibuf_selected_window): New variable.
10598 (struct save_window_data): New member minibuf_selected_window.
10599 (Fset_window_configuration): Restore Vminibuf_selected_window.
10600 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
10601 Set minibuf_scroll_window member to nil if minibuf_level is 0.
10602 (compare_window_configurations): Compare minibuf_selected_window.
10603
10604 * window.h: (Vminibuf_selected_window): Declare extern.
10605
10606 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
10607 entry to minibuffer or on entry from a non-minibuffer window.
10608
10609 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
10610 Vminibuf_selected_window instead of Vminibuf_scroll_window.
10611
10612 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
10613 instead of Vminibuf_scroll_window when deciding in which window
10614 the region should be highlighted. Consequently, the region remains
10615 highlighteded even when a completion buffer is also displayed.
10616
106172002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
10618
10619 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
10620
10621 * xselect.c (Qcompound_text_with_extensions): Renamed from
10622 Qcompound_text_no_extensions.
10623 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
10624
106252002-02-26 Juanma Barranquero <lektu@terra.es>
10626
10627 * w32proc.c (syms_of_ntproc): Doc fix.
10628
106292002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10630
10631 * intervals.h: Include "dispextern.h" unconditionally.
10632
106332002-02-24 Jason Rumney <jasonr@gnu.org>
10634
10635 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
10636 and disp-table.elc.
10637 (lisp): Add emacs-lisp/backquote.elc.
10638
106392002-02-24 Kim F. Storm <storm@cua.dk>
10640
10641 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
10642 The validation of the event type was too strict as it didn't
10643 allow string events; buffer names are used in bindings for
10644 menu-bar-select-buffer (see `menu-bar-update-buffers').
10645
106462002-02-23 Kim F. Storm <storm@cua.dk>
10647
10648 The following changes rework my patch of 2002-02-06 which
10649 added command remapping by entering the commands directly into
10650 the keymaps. Now, command remapping uses an explicit `remap'
10651 prefix in the keymaps, i.e. [remap COMMAND].
10652
10653 * keymap.c (Qremap, remap_command_vector): New variables.
10654 (is_command_symbol): Removed function.
10655 (Fdefine_key): No longer accept a symbol for KEY.
10656 Added validation of [remap COMMAND] argument for KEY.
10657 The DEF is no longer required to be a symbol when remapping a command.
10658 (Fremap_command): New function to remap command through keymaps.
10659 (Flookup_key): Perform command remapping initiated by
10660 Fremap_command directly for speed.
10661 (Fkey_binding): Use Fremap_command for command remapping.
10662 (where_is_internal): Handle new command remapping representation.
10663 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
10664 staticpro them. Defsubr Fremap_command.
10665
10666 * keymap.h (Fremap_command): Declare extern.
10667 (is_command_symbol): Remove extern.
10668
10669 * keyboard.c (command_loop_1): Use Fremap_command for command
10670 remapping; now try command remapping for all symbols.
10671
106722002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
10673
10674 * coding.h (run_pre_post_conversion_on_str): Add prototype.
10675
106762002-02-23 Jason Rumney <jasonr@gnu.org>
10677
10678 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
10679 on the string before encoding it.
10680 (Fw32_get_clipboard_data): Run post-read-conversion on the string
10681 after decoding it.
10682
10683 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
10684
106852002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10686
10687 * w32term.c (enter_timestamp): Remove unused static variable to
10688 prevent warning.
10689
10690 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
10691
106922002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
10693
10694 * w16select.c (Fw16_get_clipboard_data): Fix last change.
10695
10696 * xselect.c (selection_data_to_lisp_data): Fix last change.
10697
106982002-02-22 Jason Rumney <jasonr@gnu.org>
10699
10700 * w32term.h (struct w32_output): New member menu_command_in_progress.
10701
10702 * w32menu.c (menubar_selection_callback): Free the menu and
10703 clear the menu_command_in_progress flag.
10704
10705 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
10706 (menu_free_timer): New variable.
10707 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
10708 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
10709 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
10710 menu command is in progress.
10711 <WM_COMMAND>: Set the menu_command_in_progress flag.
10712 Kill any menu_free_timer that is running.
10713
10714 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
10715 Call ExtTextOutA rather than ExtTextOut.
10716
107172002-02-22 Eli Zaretskii <eliz@gnu.org>
10718
10719 * puresize.h (BASE_PURESIZE): Increase to 755000.
10720
107212002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
10722
10723 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
10724 on the string before encoding it.
10725 (Fw16_get_clipboard_data): Run post-read-conversion on the string
10726 after decoding it.
10727
107282002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
10729
10730 Support for ICCCM Extended Segments in X selections:
10731
10732 * xselect.c <Qcompound_text_no_extensions>: New variable.
10733 (syms_of_xselect): Intern and staticpro it.
10734 (selection_data_to_lisp_data): Run post-read-conversion on decoded
10735 selection text.
10736 (lisp_data_to_selection_data): If next-selection-coding-system is
10737 compound-text-no-extensions, set the type of selection to be
10738 compound-text.
10739
10740 * xterm.h (x_encode_text): Update prototype.
10741
10742 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
10743 callers changed. If SELECTIONP is non-zero, run the
10744 pre-write-conversion function before encoding the selection text.
10745
107462002-02-21 Kim F. Storm <storm@cua.dk>
10747
10748 * frame.c (syms_of_frame): Change mouse-highlight default to t.
10749
10750 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
10751 Correct composing of language-change event.
10752
107532002-02-20 Kim F. Storm <storm@cua.dk>
10754
10755 * keyboard.c (menu_bar_items): Don't include keymap or local-map
10756 bindings at PT when building menu (the menu is not updated often
10757 enough for this to work reliable).
10758 (tool_bar_items): Likewise.
10759 (current_active_maps): Removed unused (and buggy) function.
10760
107612002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10762
10763 * xfns.c (gif_load): Use correct width and height for GIF images.
10764
107652002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
10766
10767 * floatfns.c (Fatan): Accept an optional second arg and call
10768 atan2 if passed 2 args.
10769
107702002-02-18 Jason Rumney <jasonr@gnu.org>
10771
10772 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
10773
107742002-02-17 Jason Rumney <jasonr@gnu.org>
10775
10776 * w32term.c (x_autoselect_window_p): New variable.
10777 (syms_of_w32term): DEFVAR_BOOL and initialize it.
10778 (note_mouse_movement): Use it.
10779
10780 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
10781
10782 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
10783
10784 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
10785 New variables.
10786 (syms_of_w32fns): Intern and staticpro them.
10787 (x_frame_parms) <"fullscreen">: New parameter.
10788 (x_fullscreen_move, x_set_fullscreen): New functions.
10789 (x_set_frame_parameters): Support Qfullscreen.
10790 (x_real_positions): Save x/y_pixels_diff frame params.
10791 (x_figure_window_size): Support full-screen frames.
10792 (Fx_create_frame): Default the fullscreen parameter.
10793
10794 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
10795 (x_fullscreen_adjust): New functions.
10796 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
10797 fullscreen. Call x_check_fullscreen_move, and set the
10798 want_fullscreen member of output_data.w32
10799 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
10800
10801 * w32term.h: New enum for FULLSCREEN_* constants.
10802 (struct w32_output): New members want_fullscreen, x_pixels_diff,
10803 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
10804 (x-fullscreen-adjust): New prototype.
10805
108062002-02-17 Kim F. Storm <storm@cua.dk>
10807
10808 * frame.c: (Vmouse_highlight): New variable.
10809 (syms_of_frame): DEFVAR_LISP it.
10810
10811 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 10812
048addec 10813 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 10814
048addec
JD
10815 * xterm.c (disable_mouse_highlight): Removed variable.
10816 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
10817 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
10818 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
10819 and on after keyboard input.
10820 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 10821
048addec 10822 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 10823
048addec
JD
10824 * msdos.c (disable_mouse_highlight): Removed variable.
10825 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
10826 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
10827 (internal_terminal_init): Initialize mouse_face_hidden.
10828 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
10829 and on after keyboard input.
4f1b1854 10830
048addec 10831 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 10832
048addec
JD
10833 * w32term.c (disable_mouse_highlight): Removed variable.
10834 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
10835 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
10836 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
10837 and on after keyboard input.
10838 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 10839
048addec 108402002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 10841
048addec
JD
10842 * msdos.c (last_mouse_window): New variable.
10843 (dos_rawgetc): Fix last change--if the mouse is in the same window
10844 as recorded in last_mouse_window, don't select this window.
5cb6905d 10845
048addec 10846 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 10847
048addec
JD
10848 * msdos.c (x_autoselect_window_p): New variable.
10849 (syms_of_msdos): Defvar it.
10850 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
10851 which the last mouse movement occured, unless it is already selected.
437dfb9f 10852
048addec
JD
10853 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
10854 New variables.
10855 (syms_of_xdisp): DEVFAR them.
10856 (hscroll_window_tree): Use automatic_hscroll_margin and
10857 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 10858
048addec 108592002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 10860
048addec
JD
10861 * xterm.c (x-autoselect-window): New variable.
10862 (note_mouse_movement): Use it.
9f696a00 10863
048addec 10864 * keyboard.c: Do not include "systime.h" twice.
d57966d7 10865
048addec 108662002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 10867
048addec 10868 * puresize.h (BASE_PURESIZE): Increase to 9/5.
d57966d7 10869
048addec 10870 * alloc.c (NSTATICS): Increase to 1280.
74779f52 10871
048addec 108722002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 10873
048addec 10874 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 10875
048addec
JD
10876 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
10877 (Vx_super_keysym): New variables.
10878 (syms_of_xterm): DEFVAR_LISP them.
10879 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
10880 variables to determine which keys to use for the various modifiers.
a474d59c 10881
048addec 108822002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 10883
048addec
JD
10884 * window.c: (Vmode_line_in_non_selected_windows): Removed.
10885 (mode_line_in_non_selected_windows): New variable.
10886 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 10887
048addec
JD
10888 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
10889 Use mode_line_in_non_selected_windows.
10890 (mode_line_in_non_selected_windows): Declare extern.
10891 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 10892
048addec 108932002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 10894
048addec
JD
10895 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
10896 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
10897 (Fclear_this_command_keys): Doc fixes.
2d10309f 10898
048addec
JD
10899 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
10900 (update_face_from_frame_parameter): Increment face_change_count
10901 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 10902
048addec
JD
10903 * xdisp.c (QCpropertize): New variable.
10904 (mode_line_proptrans_alist): New variable.
10905 (display_mode_element): New arg PROPS; all calls changed.
10906 Implement this, for strings.
10907 Handle literal output of strings by sharing the
10908 main-line code for strings, using local var `literal'.
10909 Handle :propertize feature.
10910 (syms_of_xdisp): Initialze and staticpro QCpropertize and
10911 mode_line_proptrans_alist.
0b1e6b54 10912
048addec 109132002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 10914
048addec
JD
10915 * window.c: (Vmode_line_in_non_selected_windows): New variable.
10916 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 10917
048addec
JD
10918 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
10919 (CURRENT_MODE_LINE_FACE_ID): Use it.
10920 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 10921
048addec
JD
10922 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
10923 to get mode line face.
e17144de 10924
048addec 109252002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 10926
048addec
JD
10927 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
10928 variables; cus-start.el doesn't need them anymore.
44368f8f 10929
048addec 109302002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 10931
048addec
JD
10932 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
10933 reduction. This fixes a display problem where stray newlines were
10934 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 10935
048addec 109362002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 10937
048addec 10938 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 10939
048addec 10940 * xdisp.c (display_mode_lines): Fix last change.
453c5510 10941
048addec 109422002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 10943
048addec
JD
10944 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
10945 match each other.
10946 (w32_load_system_font): Prevent Cleartype fonts from loading.
10947 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 10948
048addec 109492002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 10950
048addec
JD
10951 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
10952 (CURRENT_MODE_LINE_HEIGHT): Use it.
10953 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 10954
048addec
JD
10955 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
10956 (pos_visible_p, handle_face_prop): Likewise.
10957 (display_mode_lines): Likewise, but for the real selected window.
10958 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 10959
048addec
JD
10960 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
10961 in non-selected windows.
10962 (realize_basic_faces): Realize it.
10963 (syms_of_term): Intern and staticpro it.
308dd672 10964
048addec 109652002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 10966
048addec
JD
10967 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
10968 Changed mail addresses to emacs-devel@gnu.org.
308dd672 10969
048addec 109702002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 10971
048addec
JD
10972 * fileio.c (Fsubstitute_in_file_name): If the file name includes
10973 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 10974
048addec 10975 * floatfns.c (Fround): Doc fix.
3c1e6b46 10976
048addec 109772002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 10978
048addec 10979 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 10980
048addec 109812002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 10982
048addec 10983 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 10984
048addec 109852002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 10986
048addec
JD
10987 * keymap.c (where_is_internal): Only check whether definition is
10988 remapped if it fulfills is_command_symbol.
0065bb74 10989
048addec 109902002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 10991
048addec 10992 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 10993
048addec 10994 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 10995
048addec 109962002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 10997
048addec
JD
10998 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
10999 defining command remapping. Doc updated.
11000 (Flookup_key): Remap command through keymap if KEY is a symbol.
11001 (is_command_symbol): New function.
11002 (Fkey_binding): Use it. New optional argument NO-REMAP.
11003 Doc updated. Callers changed. Perform command remapping via
11004 recursive call unless that arg is non-nil.
11005 (where_is_internal): New argument no_remap. Callers changed.
11006 Call recursively to find original key bindings for a remapped
11007 comand unless that arg is non-nil.
11008 (Fwhere_is_internal): New optional argument NO-REMAP.
11009 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 11010
048addec
JD
11011 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
11012 (is_command_symbol): Added prototype.
0d8466cc 11013
048addec
JD
11014 * keyboard.c (Vthis_original_command): New variable.
11015 (syms_of_keyboard): DEFVAR_LISP it.
11016 (command_loop_1): Set it, and perform command remapping.
15fff01d 11017
048addec 110182002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 11019
048addec 11020 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 11021
048addec 110222002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 11023
048addec 11024 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 11025
048addec 110262002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 11027
048addec 11028 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 11029
048addec 110302002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 11031
048addec 11032 * filelock.c (S_ISLNK): Define if not defined.
3a232704 11033
048addec 110342002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 11035
048addec 11036 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 11037
048addec
JD
11038 * lread.c (read1): Redesign strategy for force_multibyte and
11039 force_singlebyte. Now is_multibyte records whether read_buffer
11040 is multibyte. Encountering any multibyte character makes it so.
4e02881b 11041
048addec 110422002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 11043
048addec
JD
11044 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
11045 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 11046
048addec 110472002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 11048
048addec
JD
11049 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
11050 latter never being defined on GNU/Linux.
749f499f 11051
048addec 110522002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 11053
048addec
JD
11054 * xfaces.c (realize_default_face): Don't set the weight and slant of
11055 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 11056
048addec 110572002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 11058
048addec
JD
11059 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
11060 Call cancel_hourglass unconditionally.
d0fd26dd 11061
048addec
JD
11062 * eval.c (Fsignal): Remove duplicated declaration of
11063 the variable `display_hourglass_p'.
b4c45162 11064
048addec 110652002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 11066
048addec 11067 * editfns.c (region_limit): Nicer error message.
c95eaa61 11068
048addec
JD
11069 * coding.c (decode_composition_emacs_mule):
11070 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 11071
048addec
JD
11072 * callint.c (check_mark): New arg to specify clearer error message.
11073 Callers changed.
c95eaa61 11074
048addec 110752002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 11076
048addec 11077 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 11078
048addec 110792002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 11080
048addec
JD
11081 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
11082 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
11083 Fix doc-strings.
c95eaa61 11084
048addec 110852002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 11086
048addec 11087 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 11088
048addec
JD
11089 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
11090 and scroll_up_aggressively.
c95eaa61 11091
048addec 110922002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 11093
048addec 11094 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 11095
048addec 110962002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 11097
048addec
JD
11098 * textprop.c (Fnext_property_change, Fnext_single_property_change)
11099 (Fprevious_property_change, Fprevious_single_property_change):
11100 Stay within the narrowed-buffer boundaries.
e2c3786a 11101
048addec 111022002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 11103
048addec
JD
11104 * term.c (Ftty_display_color_cells): New function.
11105 (syms_of_term): Defsubr it.
11106 (Ftty_display_color_cells, Ftty_display_color_p): Change the
11107 argument name to DISPLAY. Doc fix.
bf794306 11108
048addec
JD
11109 * dispextern.h: Add prototype for set_tty_color_mode and
11110 tty_setup_colors.
bf794306 11111
048addec 111122002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 11113
048addec
JD
11114 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
11115 If region left to draw is not what was expected, mark the frame as
11116 garbaged.
62582985 11117
048addec
JD
11118 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
11119 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 11120
048addec 111212002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 11122
048addec
JD
11123 * w32term.c (x_update_window_begin): Only hide caret if
11124 w32_use_visible_system_caret is set.
11125 (x_update_window_end): Only show caret if
11126 w32_use_visible_system_caret is set.
11127 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 11128
048addec 11129 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 11130
048addec 111312002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 11132
048addec
JD
11133 * unexelf.c (unexec): Define n so as to cause compilation error
11134 for the code where people have often written n instead of nn.
1e9a6186 11135
048addec 11136 * .gdbinit (hookpost-run): Defined.
1e9a6186 11137
048addec 111382002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 11139
048addec 11140 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 11141
048addec 111422002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 11143
048addec
JD
11144 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
11145 if fullscreen is being set.
7c75be36 11146
048addec 111472002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 11148
048addec
JD
11149 * minibuf.c (Fminibuffer_contents)
11150 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
11151 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 11152
048addec 111532002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 11154
048addec 11155 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 11156
048addec 111572002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 11158
048addec
JD
11159 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
11160 height before comparison.
11161 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 11162
048addec 111632002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 11164
048addec
JD
11165 * w32term.c (w32_system_caret_width): Remove.
11166 (w32_use_visible_system_caret): New user flag.
11167 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
11168 Windows reports a screen reader running.
11169 (x_update_window_begin): Hide the system caret.
11170 (x_update_window_end): Show the system caret.
11171 (x_display_and_set_cursor): Don't draw a cursor when
11172 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 11173
048addec
JD
11174 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
11175 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
11176 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
11177 the user requests it. Use system default width when creating.
11178 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 11179
048addec
JD
11180 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
11181 New window messages.
905cc05a 11182
048addec 111832002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 11184
048addec 11185 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 11186
048addec 111872002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 11188
048addec 11189 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 11190
048addec 111912002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 11192
048addec 11193 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 11194
048addec 111952002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 11196
048addec
JD
11197 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
11198 that Windows returns. If a double check fails, try to guess how
11199 ExtTextOut is going to act.
4d0fa4f3 11200
048addec
JD
11201 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
11202 in place of stricmp.
11203 (w32_list_synthesized_fonts): Removed.
11204 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
11205 (struct enumfont_t): New element; list.
11206 (enum_font_cb2): List all style and charset variations of a font.
11207 (Fw32_select_font): New optional argument; include_proportional.
11208 Exclude vertical fonts. Exclude proportional fonts unless
11209 include_proportional is non-nil.
11210 (w32_enable_synthesized_fonts): Change to a boolean.
11211 (Fw32_send_sys_command): Doc fix.
493faf20 11212
048addec 112132002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 11214
048addec
JD
11215 * dispnew.c (update_frame): Move the variable `tem' to the block
11216 where it is used.
4971e491 11217
048addec 112182002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 11219
048addec
JD
11220 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
11221 call to face-set-after-frame-default.
4971e491 11222
048addec 112232002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 11224
048addec
JD
11225 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
11226 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 11227
048addec 112282002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 11229
048addec
JD
11230 * window.c (enlarge_window): When exceeding size of parent,
11231 directly delete all the siblings instead of trying to resize it.
201c831a 11232
048addec 112332002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 11234
048addec 11235 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 11236
048addec 112372002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 11238
048addec 11239 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 11240
048addec 112412002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 11242
048addec
JD
11243 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
11244 is invisible. This can happen if cursor is on top line of a
11245 window, and we switch to a buffer with a header line.
d77fbc16 11246
048addec 11247 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 11248
048addec 112492002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 11250
048addec
JD
11251 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
11252 `dont_resize' only when used.
61e3b944 11253
048addec 11254 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 11255
048addec 112562002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 11257
048addec
JD
11258 * xdisp.c (display_mode_element): When computing charpos, depend
11259 on multibyteness of elt, not the text in field.
8af01033 11260
048addec 112612002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 11262
048addec
JD
11263 * buffer.c (Fkill_all_local_variables):
11264 Increment `update_mode_lines' only once.
7363986a 11265
048addec 112662002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 11267
048addec
JD
11268 * lisp.h (adjust_after_replace_noundo)
11269 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 11270
048addec 11271 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 11272
048addec 112732002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 11274
048addec
JD
11275 Support for the --color command-line argument and tty-color-mode
11276 frame parameter:
f1a85b89 11277
048addec
JD
11278 * term.c (tty_default_color_capabilities, tty_setup_colors)
11279 (set_tty_color_mode): New functions.
11280 (term_init): Call tty_default_color_capabilities.
11281 (Qtty_color_mode_alist): New variable.
11282 (syms_of_term): Intern and staticpro it.
f1a85b89 11283
048addec
JD
11284 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
11285 frames.
11286 (do_switch_frame): For termcap frames, switch the tty
11287 color mode as specified by the frame's parameters.
11288 (Qtty_color_mode): New variable.
11289 (syms_of_frame): Intern and staticpro it.
3a62677f 11290
048addec
JD
11291 * emacs.c (USAGE2): Add the --color option.
11292 (standard_args): Ditto.
72244db2 11293
048addec
JD
112942002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11295
11296 * xterm.h (struct x_output): New members want_fullscreen,
11297 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
11298 y_pixels_outer_diff.
11299 New enum for FULLSCREEN_* constants.
11300 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
11301 is NULL.
11302 (x_fullscreen_adjust): Add prototype.
3a62677f 11303
048addec
JD
11304 * emacs.c (USAGE2): Add the new full-screen arguments.
11305 (standard_args): Ditto.
3a62677f 11306
048addec
JD
11307 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
11308 New variables.
11309 (syms_of_xfns): Intern and staticpro them.
11310 (x_frame_parms) <"fullscreen">: New parameter.
11311 (x_fullscreen_move, x_set_fullscreen): New functions.
11312 (x_set_frame_parameters): Support for Qfullscreen.
11313 (x_real_positions): More accurate computation of the frame position.
11314 (x_figure_window_size): Support full-screen frames.
11315 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 11316
048addec
JD
11317 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
11318 (XTread_socket) <Expose>: Call x_check_fullscreen.
11319 <ConfigureNotify>: Don't resize to fullscreen.
11320 Call x_check_fullscreen_move, and set the want_fullscreen member of
11321 output_data.x.
3a62677f 11322
048addec 113232002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 11324
048addec
JD
11325 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
11326 for mice with more than 3 buttons.
b8523839 11327
048addec
JD
11328 * w32term.c (parse_button): New parameter xbutton. Callers changed.
11329 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 11330
048addec
JD
11331 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
11332 (syms_of_w32fns): DEFVAR_BOOL it.
11333 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 11334
048addec 113352002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 11336
048addec 11337 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 11338
048addec 113392002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 11340
048addec 11341 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 11342
048addec 113432002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 11344
048addec
JD
11345 * .gdbinit (xbuffer): Remove address operator since data is now a
11346 pointer.
c93674bb 11347
048addec 113482002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 11349
048addec 11350 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 11351
048addec 11352 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 11353
048addec 113542002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 11355
048addec
JD
11356 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
11357 when checking for multiple frames.
91175673 11358
048addec 113592002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 11360
048addec
JD
11361 * window.c (delete_window): Rewrite the code for changing the
11362 selected window to handle the case where WINDOW is not a leaf.
91175673 11363
048addec 113642002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 11365
048addec
JD
11366 * process.c (send_process): Set src_multibyte to 1 after the call
11367 top setup_coding_system, not before the call.
e0fead5d 11368
048addec 113692002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 11370
048addec
JD
11371 * xmenu.c (set_frame_menubar, xmenu_show):
11372 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 11373
048addec
JD
11374 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
11375 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 11376
048addec 113772002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 11378
048addec 11379 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 11380
048addec 11381 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 11382
048addec 11383 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 11384
048addec 113852002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 11386
048addec
JD
11387 * insdel.c (make_gap_larger): Make sure buffer size does not
11388 overflow range of int.
62854fe2 11389
048addec 113902002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 11391
048addec
JD
11392 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
11393 OVERLAPS_P.
656f46bb 11394
048addec 11395 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 11396
048addec
JD
11397 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
11398 to the left or to the right of the pointer, put it against
11399 the left screen edge.
11400 (x_frame_parms): Add missing braces around initializer.
036e218d 11401
048addec
JD
11402 * w32term.c (x_setup_relief_colors): Don't compute an image's
11403 background color if it doesn't have a Pixmap.
11404 (notice_overwritten_cursor): Don't depend on
11405 output_cursor and updated_area. Compare pixel coordinates with
11406 window's cursor pixel coordinates.
11407 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
11408 Call notice_overwritten_cursor with new arg list.
11409 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
11410 unconditionally.
11411 (x_draw_image_relief): Use predefined macro instead of
11412 constant when the value of `tool_bar_button_relief' is negative.
036e218d 11413
048addec 11414 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 11415
048addec 114162002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 11417
048addec 11418 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 11419
048addec 114202002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 11421
048addec
JD
11422 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
11423 (Fkey_binding): Try the `keymap' property map first.
11424 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
11425 minor mode bindings.
90647b07 11426
048addec 114272002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 11428
048addec 11429 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 11430
048addec 114312002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 11432
048addec
JD
11433 * keyboard.c (read_key_sequence): Handle the keymap property
11434 before minor mode maps.
9fbc32aa 11435
048addec
JD
11436 * editfns.c (Fformat): Update thissize from field_width
11437 based on the actual width, in the string case.
036e218d 11438
048addec 114392002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 11440
048addec
JD
11441 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
11442 when used as truth value to prevent gcc warnings.
9fbc32aa 11443
048addec
JD
11444 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
11445 * w32proc.c: Include <config.h>.
9fbc32aa 11446
048addec 114472002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 11448
048addec
JD
11449 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
11450 not EMACS_INT, to make them compatible with DEFVAR_INT.
11451 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 11452
048addec 114532002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 11454
048addec
JD
11455 * print.c (print_object): Test print_escape_nonascii only for
11456 unibyte strings.
11457 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
11458 when outputting to a multibyte buffer.
9fbc32aa 11459
048addec 114602001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 11461
048addec
JD
11462 * print.c (print_object): In multibyte string, use hex escapes.
11463 Use octal only for unibyte strings.
11464 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 11465
048addec
JD
11466 * lread.c (read_escape): New arg BYTEREP for reporting whether
11467 escape forces unibyte or multibyte.
11468 (read1): When reading a string, take note of that info.
0142178a 11469
048addec 114702001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 11471
048addec
JD
11472 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
11473 comparison to test lisp value returned by Fget.
d4824a5d 11474
048addec 114752001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 11476
048addec 11477 * lisp.h (max_specpdl_size): Add declaration.
b1356234 11478
048addec 11479 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 11480
048addec
JD
11481 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
11482 Handle modifier bits. Correct typo in error message.
99e380ee 11483
048addec 114842001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 11485
048addec
JD
11486 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
11487 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
11488 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
11489 Update calls to Fdefine_abbrev.
11490 (write_abbrev): Update for changed data format.
11491 Don't list "system" abbrevs.
11492 (Fexpand_abbrev): Update use count with new data format.
11493 (describe_abbrev): Update for changed data format.
11494 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 11495
048addec 11496 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 11497
048addec 11498 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 11499
048addec
JD
11500 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
11501 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 11502
048addec
JD
11503 * keymap.c (Flookup_key): Error message if key has wrong data type.
11504 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
11505 (exclude_key): New variable.
59a86c99 11506
048addec 115072001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 11508
048addec
JD
11509 * xterm.c (x_setup_relief_colors): Don't compute an image's
11510 background color if it doesn't have a Pixmap.
eb77a5f4 11511
048addec
JD
11512 * xterm.c (notice_overwritten_cursor): Don't depend on
11513 output_cursor and updated_area. Compare pixel coordinates with
11514 window's cursor pixel coordinates.
11515 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
11516 Call notice_overwritten_cursor with new arg list.
11517 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
11518 unconditionally.
eb77a5f4 11519
048addec
JD
11520 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
11521 height of the cursor line to the amount to scroll.
eb77a5f4 11522
048addec 115232001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 11524
048addec
JD
11525 * intervals.c (set_point_both): The position after an invisible,
11526 intangible character is not an acceptable stopping point.
bb313871 11527
048addec 115282001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 11529
048addec
JD
11530 * window.c (enlarge_window): In new preserve_before code, convert
11531 CURBEG from lisp object to integer before doing arithmetic.
6052529b 11532
048addec 115332001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 11534
048addec 11535 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 11536
048addec 115372001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 11538
048addec
JD
11539 * keyboard.c (record_char): Ignore duplicate help-echo events only
11540 separated by mouse-movement. When tracking mouse, only record
11541 first and last mouse-movement event in same window.
11542 Don't record mouse-movement events in keyboard macros.
3ce081f5 11543
048addec 115442001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 11545
048addec
JD
11546 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
11547 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 11548
048addec
JD
11549 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
11550 instead of Fstring_as_unibyte.
9fabb2f5 11551
048addec 115522001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 11553
048addec 11554 The following changes remove mocklisp support:
9fabb2f5 11555
048addec 11556 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 11557
048addec
JD
11558 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
11559 `Qmocklisp' and `Qmocklisp_arguments'.
11560 Remove prototype of syms_of_mocklisp.
2fa0eedf 11561
048addec 11562 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 11563
048addec
JD
11564 * callint.c: Do not include mocklisp.h.
11565 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 11566
048addec
JD
11567 * eval.c: Remove variables `Qmocklisp_arguments',
11568 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
11569 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
11570 Do not test for mocklisp case.
11571 (Fwhile): Remove unused variable `tem'.
11572 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 11573
048addec 11574 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 11575
048addec 11576 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 11577
048addec 11578 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 11579
048addec 115802001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 11581
048addec
JD
11582 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
11583 to the left or to the right of the pointer, put it against
11584 the left screen edge.
6108b49c 11585
048addec 115862001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 11587
048addec
JD
11588 * Makefile.in (distclean): Remove .gdbinit if we are building
11589 outside the source tree.
5eea19a4 11590
048addec 115912001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 11592
048addec 11593 * w32.c (emacs_root_dir): New function.
5eea19a4 11594
048addec 11595 * msdos.c (emacs_root_dir): New function.
5eea19a4 11596
048addec
JD
11597 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
11598 of the current drive as the fallback for default_directory.
438e57dd 11599
048addec
JD
11600 * dired.c (file_name_completion): Run the elements of
11601 completion-ignored-extensions through ENCODE_FILE.
438e57dd 11602
048addec
JD
11603 * lisp.h (scmp): Remove prototype, since it's now a static
11604 function private to dired.c.
c88e5347 11605
048addec 116062001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 11607
048addec
JD
11608 * dired.c (scmp): Function moved from minibuf.c.
11609 Delete multibyte handling--used only on encoded strings.
59ce1461 11610
048addec 11611 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 11612
048addec 11613 * fns.c (merge): Add QUIT call.
59ce1461 11614
048addec 116152001-12-18 Dave Love <fx@gnu.org>
8727d588 11616
048addec
JD
11617 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
11618 language/georgian.el.
8727d588 11619
048addec 116202001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 11621
048addec
JD
11622 * Makefile.in (lisp, shortlisp): Synchronize with changes to
11623 lisp/Makefile.in:DONTCOMPILE.
cc63037e 11624
048addec 116252001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 11626
048addec
JD
11627 * xdisp.c (window_box_height): Do not return negative values.
11628 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 11629
048addec 11630 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 11631
048addec 11632 * term.c (keys): Likewise.
deece6f5 11633
048addec 11634 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 11635
048addec 116362001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 11637
048addec
JD
11638 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
11639 patch (COMPOSING_P, not COMPOSING).
28ff4293 11640
048addec 116412001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 11642
048addec 11643 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 11644
048addec
JD
11645 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
11646 before calling decode_coding.
9b46de40 11647
048addec 11648 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 11649
048addec
JD
11650 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
11651 instead of only for COMPOSITION_DISABLED.
9b46de40 11652
048addec 116532001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 11654
048addec 11655 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 11656
048addec 11657 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 11658
048addec
JD
11659 * buffer.h (struct buffer): New field `display_error_modiff'.
11660 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 11661
048addec 11662 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 11663
048addec
JD
11664 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
11665 Call redisplay_window, but not if display_error_modiff field says no.
11666 (redisplay_window_error): New function.
11667 (displayed_buffer): New variable.
11668 (redisplay_internal, redisplay_windows): Call the new functions
11669 instead of redisplay_window directly.
2cd23960 11670
048addec 116712001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 11672
048addec 11673 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 11674
048addec 116752001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 11676
048addec
JD
11677 * makefile.w32-in (EMACSLOADPATH): Define.
11678 ($(EMACS)): Run `list-load-path-shadows' after dumping emacs.
11679 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 11680
048addec 116812001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 11682
048addec
JD
11683 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
11684 parameter have a numeric value all the time.
f6fa0866 11685
048addec 11686 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 11687
048addec 116882001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 11689
048addec 11690 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 11691
048addec
JD
11692 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
11693 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 11694
048addec 116952001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 11696
048addec
JD
11697 * xdisp.c (move_it_vertically_backward): Change heuristic
11698 for the case that we didn't move far enough initially.
91c153e2 11699
048addec
JD
11700 * window.c (Frecenter): Simplify computation in the case of window
11701 system frames and ARG < 0; use window_box_height.
65b7d3e7 11702
048addec 117032001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 11704
048addec
JD
11705 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
11706 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 11707
048addec 117082001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 11709
048addec
JD
11710 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
11711 arg is negative.
be676094 11712
048addec 117132001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 11714
048addec
JD
11715 * m/hp800.h: Split the __hpux conditional into the parts
11716 that are right for GNU/Linux too and the parts that are not.
11717 Use the former if GNU_LINUX.
11718 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 11719
048addec 11720 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 11721
048addec 117222001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 11723
048addec
JD
11724 * macros.c, msdos.c, w16select.c: Change doc-string comments to
11725 `new style' [w/`doc:' keyword].
032a857d 11726
048addec 117272001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 11728
048addec
JD
11729 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
11730 before using.
b6270150 11731
048addec 117322001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 11733
048addec
JD
11734 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
11735 keyword].
98cbb9fa 11736
048addec 117372001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 11738
048addec 11739 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 11740
048addec 11741 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 11742
048addec 117432001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 11744
048addec
JD
11745 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
11746 Add comment to explain where the struct came from.
11747 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
11748 (add_menu_item): Process pop-up menus first to avoid memory leak.
11749 (add_menu_item, w32_menu_display_help): Use `help' field as
11750 Lisp_Object.
11751 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 11752
048addec 117532001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 11754
048addec 11755 * COPYING: Moved back.
fa336b91 11756
048addec
JD
11757 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
11758 Add parentheses around && within ||.
077907d4 11759
048addec 11760 * indent.c (compute_motion): Likewise.
aa2af83a 11761
048addec 11762 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 11763
048addec
JD
11764 * coding.c (setup_coding_system, shrink_encoding_region)
11765 (Fdecode_sjis_char): Likewise.
60a653f1 11766
048addec 117672001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 11768
048addec
JD
11769 * xdisp.c (display_mode_element): Don't read past end of string if
11770 it ends with '%'.
60a653f1 11771
048addec
JD
11772 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
11773 can hold.
60a653f1 11774
048addec
JD
11775 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
11776 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
11777 type changed to Lisp_Object.
11778 (syms_of_data): DEFVAR_LISP them.
60a653f1 11779
048addec 117802001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 11781
048addec
JD
11782 * callproc.c (init_callproc): Set Vdata_directory based on the source
11783 location whenever Emacs was run uninstalled.
60a653f1 11784
048addec 117852001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 11786
048addec
JD
11787 * config.in (HAVE_WORKING_VFORK): New #undefs.
11788 * process.c (create_process):
11789 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
11790 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
11791 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
11792 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
11793 * m/intel386.h (HAVE_VFORK): Likewise.
11794 * m/mips-siemens.h (HAVE_VFORK): Likewise.
11795 * m/mips.h (HAVE_VFORK): Likewise.
11796 * s/freebsd.h (vfork): Remove #define.
11797 * s/lynxos.h (HAVE_VFORK): Remove #undef.
11798 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 11799
048addec 118002001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 11801
048addec
JD
11802 * s/hpux10.h (random): Add undef.
11803 (HAVE_RANDOM): Define it just once.
60a653f1 11804
048addec 118052001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11806
048addec 11807 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 11808
048addec 118092001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 11810
048addec
JD
11811 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
11812 scroll bars of the frame before deleting the frame itself. If the
11813 frame has a widget, delete the frame with XtDestroyWidget, and do
11814 not call XDestroyWindow before that.
60a653f1 11815
048addec 118162001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 11817
048addec 11818 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 11819
048addec 11820 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 11821
048addec 118222001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 11823
048addec
JD
11824 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
11825 excessively large.
60a653f1 11826
048addec
JD
11827 * insdel.c (make_gap_larger): New function.
11828 (make_gap_smaller): New function.
11829 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
11830 Call make_gap_smaller if arg is negative.
60a653f1 11831
048addec 118322001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11833
048addec
JD
11834 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
11835 Pass a dummy argument when calling interrupt_signal.
11836 (parse_menu_item): Mark disabled items before checking for empty def.
11837 (read_char_minibuf_menu_prompt): Make safety more visible.
11838 (read_key_sequence): Add a `first_unbound' variable.
11839 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
11840 unbound prefix as soon as we can detect it.
60a653f1 11841
048addec
JD
11842 * doc.c (Fsnarf_documentation): Add prototype.
11843 (get_doc_string): Handle negative arguments.
11844 (Fdocumentation): Use AREF and ASIZE.
11845 Move the calls to get_doc_string to a single place.
11846 Don't confuse an interactive-spec for a docstring reference.
11847 (Fdocumentation_property): Take advantage of the fact that
11848 get_doc_string now ignores the sign of the docstring position.
60a653f1 11849
048addec 11850 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 11851
048addec 118522001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11853
a64387ee 11854 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
60a653f1 11855
048addec 118562001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11857
048addec
JD
11858 * xterm.c (x_draw_image_relief): Use predefined macro instead of
11859 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 11860
048addec 118612001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 11862
048addec
JD
11863 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
11864 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 11865
048addec 11866 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 11867
048addec 118682001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11869
048addec 11870 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 11871
048addec 118722001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 11873
048addec 11874 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 11875
048addec 118762001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 11877
048addec 11878 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 11879
048addec
JD
11880 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
11881 [!WM_MOUSELEAVE]: Define.
60a653f1 11882
048addec
JD
11883 * w32menu.c (current_popup_menu, get_menu_item_info):
11884 (set_menu_item_info): New vars.
11885 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
11886 (w32_menu_show): Set current_popup_menu.
11887 (add_menu_item): Allocate new strings for owner-drawn menu items
11888 and help strings.
11889 Use owner-draw for disabled menu items again.
11890 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
11891 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 11892
048addec
JD
11893 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
11894 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
11895 <WM_EXITMENULOOP>: Free menu strings.
11896 <WM_MOUSELEAVE>: Stop tracking mouse.
11897 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 11898
048addec
JD
11899 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
11900 and mouse face.
60a653f1 11901
048addec 119022001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 11903
048addec
JD
11904 The following changes add left-fringe and right-fringe
11905 frame parameters to adjust fringe widths, or remove one or
11906 both fringes.
60a653f1 11907
048addec
JD
11908 * frame.h (struct frame): Remove trunc_area_pixel_width and
11909 trunc_area_cols fields.
11910 (Qleft_fringe, Qright_fringe): Declare.
11911 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 11912
048addec
JD
11913 * frame.c (Qleft_fringe, Qright_fringe): New vars.
11914 (syms_of_frame): Initialize them.
60a653f1 11915
048addec
JD
11916 * window.c (coordinates_in_window): Handle separate left and right
11917 fringe widths.
60a653f1 11918
048addec
JD
11919 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
11920 and fringe_cols fields.
11921 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
11922 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
11923 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
11924 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
11925 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
11926 (x_compute_fringe_widths): Add prototype.
60a653f1 11927
048addec
JD
11928 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
11929 fill fringe evenly with small dashes.
11930 (x_draw_fringe_bitmap): Clear background if necessary. Align and
11931 clip the new ZV bitmap to avoid jitter between rows.
11932 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
11933 background. Don't draw fringe bitmaps if fringe width is zero.
11934 (x_compute_fringe_widths): New function.
11935 (x_new_font, x_set_window_size_1): Use it.
60a653f1 11936
048addec
JD
11937 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
11938 (x_set_frame_parameters): Process `font' parameter before other
11939 parameters as fringe widths depend on it.
11940 (x_set_fringe_width): New function.
11941 (x_figure_window_size): Use x_compute_fringe_widths.
11942 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
11943 parameters.
60a653f1 11944
048addec
JD
11945 * widget.c (set_frame_size): Use x_compute_fringe_widths.
11946 (EmacsFrameSetCharSize): Ditto.
60a653f1 11947
048addec
JD
11948 * w32term.h: Merged changes from xterm.h.
11949 * w32term.c: Merged changes from xterm.c.
11950 * w32fns.c: Merged changes from xfns.c.
60a653f1 11951
048addec 119522001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11953
048addec 11954 * COPYING: Removed.
60a653f1 11955
048addec 119562001-11-29 Dave Love <fx@gnu.org>
60a653f1 11957
048addec
JD
11958 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
11959 extra extra slot.
11960 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 11961
048addec 119622001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11963
048addec
JD
11964 * fileio.c (file-name-coding-system)
11965 (default-file-name-coding-system): Doc fix (links to referenced
11966 variables added).
60a653f1 11967
048addec 119682001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11969
048addec
JD
11970 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
11971 Add dummy uses of gcproN variables.
60a653f1 11972
048addec
JD
11973 * category.c (describe_category, describe_category_1)
11974 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
11975 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 11976
048addec 119772001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 11978
048addec 11979 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 11980
048addec
JD
11981 * Makefile.in (lispdir): New variable, referring to build dir.
11982 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 11983
048addec 119842001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 11985
048addec
JD
11986 * w32menu.c (w32_menu_display_help): Actually add the new argument
11987 OWNER.
60a653f1 11988
048addec 119892001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 11990
048addec
JD
11991 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
11992 menu items. From David Ponce <dponce@wanadoo.fr>.
11993 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
11994 conditionally.
11995 (w32_menu_display_help): New argument OWNER. Rewritten to store a
11996 help event in the owner frame's keyboard buffer.
60a653f1 11997
048addec
JD
11998 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
11999 (Fx_show_tip): Don't subtract last width from row width.
12000
12001 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
12002 (w32_read_socket): Use EQ to compare frames.
60a653f1 12003
048addec 120042001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 12005
048addec
JD
12006 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
12007 OVERLAPS_P.
60a653f1 12008
048addec 120092001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 12010
048addec
JD
12011 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
12012 `gcpro3' and `gcpro4'.
60a653f1 12013
048addec 12014 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 12015
048addec 120162001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12017
048addec 12018 * ccl.c: Use AREF and ASIZE.
60a653f1 12019
048addec 120202001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12021
048addec
JD
12022 * lisp.h (run_hook_list_with_args): Remove.
12023 (LIST_END_P): Fix call to wrong_type_argument.
12024 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 12025
048addec 120262001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12027
048addec
JD
12028 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
12029 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 12030
048addec
JD
12031 * eval.c: Use AREF and ASIZE.
12032 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 12033
048addec
JD
12034 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
12035 which match the end of the file-name.
12036 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
12037 is not a valid env var, but leave it as is instead.
60a653f1 12038
048addec
JD
12039 * keymap.c (access_keymap): Handle t bindings like nil bindings.
12040 Make nil bindings in char-tables transparent.
12041 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 12042
048addec 120432001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 12044
048addec
JD
12045 * textprop.c (set_text_properties_1): Allow START, END in either order.
12046 Do nothing if range is empty.
60a653f1 12047
048addec 12048 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 12049
048addec
JD
12050 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
12051 (clean): Not here.
60a653f1 12052
048addec 120532001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12054
048addec
JD
12055 * textprop.c (set_text_properties_1): Clearly mark that the
12056 interval should not be empty.
60a653f1 12057
048addec
JD
12058 * intervals.c (graft_intervals_into_buffer):
12059 Don't call set_text_properties_1 on an empty interval.
60a653f1 12060
048addec 120612001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 12062
048addec 12063 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 12064
048addec
JD
12065 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
12066 don't lose the data in it.
60a653f1 12067
048addec 120682001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 12069
048addec 12070 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 12071
c62aec78 12072 * buffer.c (Fkill_buffer): Likewise.
60a653f1 12073
c62aec78 12074 * print.c (temp_output_buffer_setup): Likewise.
60a653f1 12075
048addec 120762001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12077
048addec 12078 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 12079
048addec 120802001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 12081
048addec
JD
12082 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
12083 Niemitalo <kon@iki.fi>.
60a653f1 12084
048addec 120852001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 12086
048addec 12087 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 12088
048addec
JD
12089 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
12090 (Fx_show_tip): Block input during frame creation.
12091 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 12092
048addec 120932001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 12094
048addec
JD
12095 * lread.c (Fload): Detect recursive load error for more than 3
12096 nestings of the same file.
12097 (Vrecursive_load_depth_limit): Variable deleted.
12098 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 12099
048addec 121002001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 12101
048addec
JD
12102 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
12103 mouse position if either left or top is not specified.
60a653f1 12104
048addec
JD
12105 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
12106 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
12107 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
12108 (my_create_tip_window): Assign tip_window.
12109 (x_create_tip_frame): Use same defaults as X.
12110 (compute_tip_xy): Remove unused variable. Use full screen width.
12111 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 12112
048addec
JD
12113 * w32term.c (x_after_update_window_line): Doc fix.
12114 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
12115 frames.
12116 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 12117
048addec
JD
12118 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
12119 for all Windowed systems.
60a653f1 12120
048addec 121212001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 12122
048addec
JD
12123 * msdos.c (IT_clear_screen): If the frame's faces are not yet
12124 realized, use the initial screen colors to clear the screen.
60a653f1 12125
048addec 121262001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 12127
048addec
JD
12128 * textprop.c (Fset_text_properties): Remove unused variables
12129 `unchanged', `prev_changed', `s' and `len'.
60a653f1 12130
048addec
JD
12131 * search.c (Freplace_match): Remove unused variable `inslen'.
12132
12133 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
12134
121352001-11-22 Jason Rumney <jasonr@gnu.org>
12136
12137 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
12138 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
12139 (my_create_tip_window): New function.
12140 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
12141 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
12142
121432001-11-20 Jason Rumney <jasonr@gnu.org>
12144
12145 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
12146 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
12147
12148 * w32fns.c (Vw32_system_coding_system): Remove.
12149 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
12150
121512001-11-19 Stefan Monnier <monnier@cs.yale.edu>
12152
12153 * fileio.c (Fwrite_region): Move choose_write_coding_system to
12154 after build_annotations.
12155
12156 * syntax.c (describe_syntax): Add dummy arg.
12157 (describe_syntax_1): Update call to describe_vector.
12158
12159 * category.c (describe_category): Add dummy arg.
12160 (describe_category_1): Update call to describe_vector.
12161
12162 * keymap.c (Fdescribe_vector): Add `describer' parameter.
12163 (describe_command, describe_translation): Add dummy second param.
12164 (describe_map): Call elt_describer with two arguments.
12165 (describe_vector_princ): Add `fun' parameter.
12166 Call it instead of the hardcoded `princ'.
12167 (describe_vector): Add arg `args'.
12168 Pass it as a new second argument to elt_describer.
60a653f1 12169
048addec 12170 * keymap.h (describe_vector): Update prototype.
60a653f1 12171
048addec
JD
12172 * frame.c: Don't include keymap.h any more.
12173 (keys_of_frame): Remove.
60a653f1 12174
048addec 12175 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 12176
048addec 12177 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 12178
048addec 121792001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 12180
048addec
JD
12181 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
12182 if defined, 0 otherwise.
12183 (MAP_FAILED): Define if not defined and use it to test mmap failure.
12184 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 12185
048addec 121862001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 12187
048addec 12188 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 12189
048addec 121902001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 12191
048addec
JD
12192 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
12193 (x_draw_bar_cursor): If the background color of the glyph under
12194 the cursor equals the frame's cursor color, use the glyph's
12195 foreground color for drawing the bar cursor.
12196 (x_after_update_window_line): Clear internal border in different
12197 circumstances.
12198 (w32_set_vertical_scroll_bar): Check for width and height > 0.
12199 (w32_draw_relief_rect): Correct relief by 1 pixel.
12200 (x_set_glyph_string_background_width):
12201 Set extends_to_end_of_line_p if the row's fill_line_p is set and
12202 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
12203 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
12204 if cursor_in_non_selected_windows is false.
12205 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
12206 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
12207 Notice if cursor gets overwritten.
12208 (notice_overwritten_cursor): Renamed from
12209 note_overwritten_text_cursor. Rewritten to take glyph widths
12210 into account, and to take X positions as parameters.
12211 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
12212 around call to x_draw_glyphs.
12213 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
12214 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
12215 color to use for image glyph reliefs.
12216 (x_draw_image_relief): Accept zero tool_bar_button_relief.
12217 (glyph_rect): Remove unused variable `area'.
60a653f1 12218
048addec
JD
12219 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
12220 some items.
12221 (x_set_internal_border_width): Set frame garbaged when window
12222 doesn't exist yet.
12223 (Fx_create_frame): Accept zero tool_bar_button_relief.
12224 (x_clear_image_1, four_corners_best, image_background)
12225 (image_background_transparent): New functions.
12226 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
12227 (gs_format): Add `:background' entry.
12228 (lookup_image): Set IMG's background color if specified.
12229 (pbm_load, xbm_load_image, png_load): Set IMG's background field
12230 when appropriate.
12231 (x_clear_image_1): Reset `background_valid' and
12232 `background_transparent_valid' fields.
12233 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
12234 calculating it here. Set IMG's background_transparent field.
12235 (enum xpm_keyword_index): Add XPM_BACKGROUND.
12236 (enum png_keyword_index): Add PNG_BACKGROUND.
12237 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
12238 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
12239 (enum gif_keyword_index): Add GIF_BACKGROUND.
12240 (enum gs_keyword_index): Add GS_BACKGROUND.
12241 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
12242 Pre-calculate image background color where necessary.
12243 (x_create_x_image_and_pixmap, xbm_load, gs_load):
12244 Use display info's n_cbits entry for screen depth.
12245 (Fx_show_tip): Remove unused variables `buffer', `top',
12246 `left', `max_width' and `max_height'.
60a653f1 12247
048addec 12248 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 12249
048addec 122502001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 12251
048addec 12252 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 12253
048addec 122542001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 12255
048addec 12256 * frame.c (Fframe_live_p): Doc fix.
60a653f1 12257
048addec 122582001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 12259
048addec
JD
12260 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
12261 (message_dolog_marker3): New static variables hold three markers.
12262 (syms_of_xdisp): Initialize and staticpro them.
12263 (message_dolog): Use message_dolog_marker1..3 instead of
12264 allocating markers each time. Unchain them when done.
60a653f1 12265
048addec 122662001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 12267
048addec 12268 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 12269
048addec 122702001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 12271
048addec 12272 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 12273
048addec 122742001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 12275
048addec 12276 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 12277
048addec 122782001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 12279
048addec 12280 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 12281
048addec 122822001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 12283
048addec
JD
12284 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
12285 with invalid position.
60a653f1 12286
048addec 122872001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 12288
048addec 12289 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 12290
048addec
JD
12291 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
12292 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
12293 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 12294
048addec 12295 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 12296
048addec 122972001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12298
048addec
JD
12299 * fileio.c (build_annotations): Split off the tail.
12300 (build_annotations_2): New fun. Extracted from build_annotations.
12301 (Fwrite_region): Split the call to build_annotations into two
12302 calls to build_annotations and build_annotations_2.
077907d4 12303
048addec 123042001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 12305
048addec
JD
12306 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
12307 clear_waiting_for_input with argument.
1756e2fb 12308
048addec 12309 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 12310
048addec 12311 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 12312
048addec 12313 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 12314
048addec 12315 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 12316
048addec 123172001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 12318
048addec
JD
12319 * fileio.c (choose_write_coding_system): New fun, extracted
12320 from Fwrite_region.
12321 (Fwrite_region): Use it.
fa336b91 12322
048addec
JD
12323 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
12324 (funcall_lambda, run_hook_with_args): Make static and add prototype.
12325 (ml_apply, find_handler_clause): Add prototype.
fa336b91 12326
048addec 123272001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 12328
048addec 12329 * config.in: Add #undef HAVE_COFF_H.
fa336b91 12330
048addec
JD
12331 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
12332 Required for ISC 4.1.
fa336b91 12333
048addec 123342001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 12335
048addec
JD
12336 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
12337 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 12338
048addec 123392001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 12340
048addec
JD
12341 The following changes are made to clean up the various internal
12342 references to the fringes to actually use the term `fringe' for
12343 them. Previously, they were called `flags areas', `bitmap areas',
12344 `left/right side of windows', or implicitly as `flags' or
12345 `bitmaps':
fa336b91 12346
048addec
JD
12347 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
12348 Comments fixed. Use renamed symbols.
06e8f738 12349
048addec 12350 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 12351
048addec
JD
12352 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
12353 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
12354 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 12355
048addec 12356 * msdos.c: Comment fix.
9ce647f4 12357
048addec 12358 * w32fns.c: Use renamed symbols.
9b784ab8 12359
048addec
JD
12360 * w32term.c: Comment fixes. Use renamed symbols.
12361 (fringe_bitmap_type): Renamed from bitmap_type.
12362 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
12363 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
12364 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 12365
048addec
JD
12366 * w32term.h: Comment fixes. Use renamed symbols.
12367 (fringes_extra): Renamed from flags_areas_extra.
12368 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
12369 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
12370 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
12371 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
12372 (FRAME_X_LEFT_FRINGE_WIDTH):
12373 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
12374 (FRAME_X_RIGHT_FRINGE_WIDTH):
12375 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 12376
048addec 12377 * widget.c: Use renamed symbols.
9f7e52b4 12378
048addec
JD
12379 * window.c: Comment fixes. Use renamed symbols.
12380 (coordinates-in-window-p): Doc fix.
fa336b91 12381
048addec 12382 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 12383
048addec 12384 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 12385
048addec 12386 * xfns.c: Use renamed symbols.
89512fcd 12387
048addec
JD
12388 * xterm.c: Comment fixes. Use renamed symbols.
12389 (fringe_bitmap_type): Renamed from bitmap_type.
12390 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
12391 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
12392 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 12393
048addec
JD
12394 * xterm.h: Comment fixes. Use renamed symbols.
12395 (fringes_extra): Renamed from flags_areas_extra.
12396 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
12397 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
12398 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
12399 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
12400 (FRAME_X_LEFT_FRINGE_WIDTH):
12401 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
12402 (FRAME_X_RIGHT_FRINGE_WIDTH):
12403 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
12404
124052001-11-15 Jason Rumney <jasonr@gnu.org>
12406
12407 * w32menu.c (add-menu-item): Make help_echo and radio buttons
12408 work for most menu items. From David Ponce
12409 <david.ponce@wanadoo.fr>.
12410
124112001-11-15 Gerd Moellmann <gerd@gnu.org>
12412
12413 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
12414 Some x_set_* function expect to be called even if old and new
12415 value are equal.
12416
12417 * xdisp.c (build_desired_tool_bar_string): Accept zero
12418 tool_bar_button_relief.
12419
12420 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
12421
12422 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
12423
12424 * xterm.c (x_draw_bar_cursor): If the background color of the
12425 glyph under the cursor equals the frame's cursor color, use
12426 the glyph's foreground color for drawing the bar cursor.
12427
12428 * dispnew.c (direct_output_forward_char): Fix character/byte
12429 position comparison.
7d18891d 12430
048addec 124312001-11-15 Miles Bader <miles@gnu.org>
d2936d21 12432
048addec
JD
12433 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
12434 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
12435 Update arguments to find_field.
12436 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
12437 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
12438 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
12439 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 12440
048addec 124412001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 12442
048addec 12443 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 12444
048addec
JD
12445 * dispextern.h (image_background, image_background_transparent):
12446 Conditionalize on HAVE_X_WINDOWS.
7d18891d 12447
048addec 124482001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 12449
048addec 12450 * print.c (Fprin1_to_string): Doc fix.
7d18891d 12451
048addec 12452 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 12453
048addec 12454 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 12455
048addec 12456 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 12457
048addec 12458 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 12459
048addec 12460 * eval.c (syms_of_eval): Doc fix.
7d18891d 12461
048addec 12462 * coding.c (syms_of_coding): Doc fix.
7d18891d 12463
048addec 12464 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 12465
048addec 12466 * dispnew.c (syms_of_display): Doc fix.
9474c847 12467
048addec 12468 * category.c (Fget_unused_category): Doc fix.
9474c847 12469
048addec 12470 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 12471
048addec 124722001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 12473
048addec 12474 * print.c (prin1, print): Doc fix.
e3059a5d 12475
048addec 124762001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 12477
048addec
JD
12478 * fontset.h: Remove declarations of variables
12479 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 12480
048addec
JD
12481 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
12482 `Vclip_large_size_font'.
eae936e2 12483
048addec 124842001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 12485
048addec 12486 * w32fns.c: Doc fix.
ddb67bdc 12487
048addec 124882001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 12489
048addec 12490 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 12491
048addec 12492 * fns.c: Doc fix.
6e1b91d7 12493
048addec 12494 * emacs.c: Doc fix.
1c1d3d69 12495
048addec 12496 * coding.c: Doc fix.
1c1d3d69 12497
048addec
JD
12498 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
12499 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
12500 `new style' [w/`doc:' keyword].
b6f4c7ba 12501
048addec 125022001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 12503
048addec
JD
12504 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
12505 LeaveNotify events. Only FocusIn and FocusOut do that now.
12506 (x_display_and_set_cursor): Do display hollow cursors in active
12507 minibuffer windows when they are not selected.
b6f4c7ba 12508
048addec 125092001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 12510
048addec
JD
12511 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
12512 * w32term.c: Change doc-string comments to `new style'.
12513 [w/`doc:' keyword]. Doc fixes.
a89f435d 12514
048addec
JD
12515 * w32fns.c: Don't define max.
12516 (Fx_open_connection): Only execute once.
a4cd0cd7 12517
048addec 125182001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 12519
048addec
JD
12520 * ccl.c: Change macros to use do-while block instead of if-else.
12521 Use braces to follow GNU Coding Standards.
eafb659a 12522
048addec 125232001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 12524
048addec 12525 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 12526
048addec 12527 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 12528
048addec
JD
12529 * insdel.c (replace_range): Use adjust_markers_for_replace
12530 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 12531
048addec 12532 * intervals.h: Declare set_text_properties and set_text_properties_1.
a4cd0cd7 12533
048addec
JD
12534 * textprop.c (set_text_properties_1): New subroutine
12535 broken out of set_text_properties.
12536 (set_text_properties): Use set_text_properties_1.
91823618 12537
048addec
JD
12538 * intervals.c (graft_intervals_into_buffer):
12539 Use set_text_properties_1 to clear out properties.
91823618 12540
048addec
JD
12541 * search.c (Freplace_match): Use replace_range to insert
12542 and delete. Don't request property inheritance from
12543 surrounding text.
86928dfb 12544
048addec 125452001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 12546
048addec
JD
12547 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
12548 vertical fonts. Allow them if face name is explicitly specified.
12549 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 12550
048addec 125512001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 12552
048addec
JD
12553 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
12554 instead of malloc/free.
a78e0303 12555
048addec 125562001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 12557
048addec
JD
12558 * xfaces.c (merge_face_vectors): Use braces to follow GNU
12559 Coding Standards.
12560 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 12561
048addec 12562 * buffer.c (Fbury_buffer): Likewise.
0c99b139 12563
048addec 12564 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 12565
048addec
JD
12566 * coding.c (encode_coding): Use precomputed value of `src'.
12567 (encode_coding): Remove unused variable `src_end'.
12568 (code_convert_region): Remove unused variables `count'.
830ddd77 12569
048addec 125702001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 12571
048addec
JD
12572 * w32term.c (x_display_and_set_cursor): Do not move system caret
12573 if cursor_glyph is NULL.
55c6d645 12574
048addec 125752001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 12576
048addec 12577 * keymap.c (access_keymap): Fix compilation error.
5de38842 12578
048addec 125792001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 12580
048addec 12581 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 12582
048addec 125832001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 12584
048addec
JD
12585 * intervals.c (graft_intervals_into_buffer):
12586 Remove #ifdef'd-out code.
12587 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 12588
048addec
JD
12589 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
12590 code (eval-current-buffer).
12591 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 12592
048addec 125932001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 12594
048addec 12595 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 12596
048addec 125972001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 12598
048addec 12599 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 12600
048addec
JD
12601 * keyboard.c (make_lispy_event): Check integerness and fix
12602 Lisp_Object/int mixup.
17893c65 12603
048addec 126042001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 12605
048addec 12606 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 12607
048addec
JD
12608 * fontset.c (fontset_font_pattern): Remove unused variable
12609 `family_registry'.
d5360cc7 12610
048addec 12611 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 12612
048addec 126132001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 12614
048addec 12615 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 12616
048addec
JD
12617 * buffer.c (Fkill_buffer): Don't delete auto save file
12618 if buffer is modified.
d9d54213 12619
048addec 126202001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 12621
048addec
JD
12622 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
12623 CHECK_NUMBER_CDR.
b116830b 12624
048addec 126252001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 12626
048addec 12627 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 12628
048addec 126292001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 12630
048addec 12631 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 12632
048addec 126332001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 12634
048addec 12635 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 12636
048addec 126372001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 12638
048addec
JD
12639 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
12640 the program image directly.
982f6c7e 12641
048addec 126422001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 12643
048addec 12644 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 12645
048addec 126462001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 12647
048addec
JD
12648 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
12649 and CHECK_BUFFER.
d31053f9 12650
048addec
JD
12651 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
12652 (record_char): Likewise.
d31053f9 12653
048addec
JD
12654 * keyboard.c (make_lispy_event): Don't insist a drag event must
12655 move to a different buffer position. Instead, check for moving at
12656 least double_click_fuzz.
982f6c7e 12657
048addec 12658 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 12659
048addec 12660 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 12661
048addec
JD
12662 * indent.c (current_column_1, Fmove_to_column): Separate the code
12663 for display-table glyphs from the code for buffer text, to fix
12664 bugs in the former.
830047fd 12665
048addec 126662001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 12667
048addec
JD
12668 * buffer.c (Fbuffer_local_value): New function.
12669 (syms_of_buffer): Defsubr it.
2df5238c 12670
048addec
JD
12671 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
12672 value of `cursor-in-non-selected-windows'.
4e397688 12673
048addec
JD
12674 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
12675 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
12676 (syms_of_xdisp): Initialize it.
48b0f3ae 12677
048addec 126782001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 12679
048addec 12680 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 12681
048addec
JD
12682 * coding.c: Change doc-string comments to `new style' [w/`doc:'
12683 keyword].
3ecaf7e5 12684
048addec
JD
12685 * eval.c (top_level_value, top_level_set): Remove commented and
12686 #ifdef'd-out code.
12687 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 12688
048addec 126892001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 12690
048addec 12691 * xfns.c: Include unistd.h, if it exists.
8db2e33b 12692
048addec 12693 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 12694
048addec 12695 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 12696
048addec 126972001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 12698
048addec
JD
12699 * lisp.h (CHECK_STRING_CAR): New macro.
12700 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
12701 treating XCAR and XCDR as lvalues.
12702 (openp): Use CHECK_STRING_CAR.
12703 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 12704
048addec 127052001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 12706
048addec
JD
12707 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
12708 (SIGMASKTYPE): Define.
1b1acc13 12709
048addec 12710 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 12711
048addec 127122001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 12713
048addec
JD
12714 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
12715 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
12716 Fix typos in comments.
6cb16f95 12717
048addec
JD
12718 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
12719 and #ifdef'd-out code.
12720 Fix and reindent comments.
6cb16f95 12721
048addec 12722 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 12723
048addec
JD
12724 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
12725 argument `i' in macros.
6cb16f95 12726
048addec
JD
12727 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
12728 `i' in macros.
7e9d3c2f 12729
048addec
JD
12730 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
12731 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
12732 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
12733 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
12734 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
12735 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
12736 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
12737 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
12738 in macros.
7e9d3c2f 12739
048addec
JD
12740 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
12741 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
12742 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
12743 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
12744 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
12745 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
12746 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
12747 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
12748 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
12749 (remove unused second argument).
7e9d3c2f 12750
048addec 127512001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 12752
048addec
JD
12753 * syntax.c (describe_syntax): New wrapper.
12754 (Finternal_describe_syntax_value): Rename from describe_syntax.
12755 Don't insert space at front and \n at the end.
12756 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 12757
048addec
JD
12758 * regex.c (re_wctype): Try to fix some warnings.
12759 (regcomp, regexec): Don't forget the __restrict.
9ba48103 12760
048addec 127612001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 12762
048addec 12763 * textprop.c (Fget_char_property): Doc fix.
9ba48103 12764
048addec 127652001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 12766
048addec 12767 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 12768
048addec 12769 * data.c (Fsetq_default): Ditto.
c22e59e1 12770
048addec 12771 * callint.c (Finteractive): Ditto.
9271ed2c 12772
048addec 127732001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 12774
048addec
JD
12775 * macros.c: Don't include keymap.h any more.
12776
127772001-11-01 Richard M. Stallman <rms@gnu.org>
12778
12779 * data.c (Fmake_local_variable): Doc fix.
12780
12781 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
12782 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 12783
048addec 12784 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
12785 bindings along with or instead of the buffer local map.
12786 Make the overriding maps override what they should.
12787
f00691a3 127882001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
12789
12790 * window.c (grow_mini_window): Fix typo in comment.
12791
27188d11
GM
127922001-11-01 Gerd Moellmann <gerd@gnu.org>
12793
7b49b9d2
GM
12794 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
12795 (XTset_vertical_scroll_bar): Likewise.
12796
43f7c3ea
GM
12797 * xfns.c (x_build_heuristic_mask): Use four_corners_best
12798 instead of IMAGE_BACKGROUND.
c22e59e1 12799
b350c2e5
GM
12800 * xfns.c (four_corners_best): Reindent.
12801
c22e59e1 12802 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
12803 Handle :box so that it is possible to specify sexprs.
12804
bf00d461
EZ
128052001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
12806
12807 * s/hpux11.h: New file.
12808
f00691a3 128092001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 12810
2b209b97
PJ
12811 * emacs.c (USAGE1): Show command line option --no-window-system
12812 instead of --no-windows in usage.
12813 (standard_args): Rename --no-windows to --no-window-system.
12814 (bug_reporting_address): Follow Emacs coding conventions.
12815
9dbc9081
PJ
12816 * eval.c (Fcommandp): Doc fix.
12817 Change doc-string comments to `new style' [w/`doc:' keyword].
12818
4e10df59
PJ
12819 * frame.c (Fframe_live_p): Doc fix.
12820
12821 * buffer.c (selective-display-ellipses): Doc fix.
12822
dd387b25
GM
128232001-10-31 Gerd Moellmann <gerd@gnu.org>
12824
fe957e65
GM
12825 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
12826
dd387b25
GM
12827 * xfaces.c (realize_x_face): If C is not a single-byte character,
12828 set the face's colors_copied_bitwise_p instead of the defaulted_p
12829 members which have a different meaning.
12830 (free_face_colors): Do nothing for a face whose colors have been
12831 copied bitwise.
12832
c22e59e1 12833 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 12834
f00691a3 128352001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 12836
687784e8
PJ
12837 * marker.c, mocklisp.c: Change doc-string comments to `new style'
12838 [w/`doc:' keyword].
2e1280f8 12839
b9d9a9b9
GM
128402001-10-31 Gerd Moellmann <gerd@gnu.org>
12841
12842 * fns.c (require_unwind): Return Lisp_Object.
12843
f00691a3 128442001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 12845
fa1361cb
PJ
12846 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
12847 (last-input-char): Revert doc-string to be the same as the
12848 doc-string of `last-input-event'.
12849
6c465a15 12850 * xdisp.c: Fix typos in comments.
48400103 12851
eafa3196
GM
128522001-10-31 Gerd Moellmann <gerd@gnu.org>
12853
12854 * window.c (grow_mini_window): Handle case that the root
12855 window is already smaller than the nominal mininum height.
12856
747d3f2a
SM
128572001-10-30 Stefan Monnier <monnier@cs.yale.edu>
12858
bf9bb76f
SM
12859 * emacs.c (main): Don't call keys_of_macros any more.
12860
12861 * lisp.h (keys_of_macros): Remove.
12862
12863 * macros.c (keys_of_macros): Remove.
12864
747d3f2a
SM
12865 * xfaces.c (Fface_attribute_relative_p): Declare args.
12866
5e905a57
JR
128672001-10-30 Jason Rumney <jasonr@gnu.org>
12868
12869 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
12870 (enum_font_cb2): Ignore fonts with vertical orientation.
12871
3a426197
RS
128722001-10-30 Richard M. Stallman <rms@gnu.org>
12873
12874 * keyboard.c (Finput_pending_p): Doc fix.
12875
a742d646
GM
128762001-10-30 Gerd Moellmann <gerd@gnu.org>
12877
259cf6bc
GM
12878 * xterm.c (x_after_update_window_line): Don't run the code
12879 clearing in borders for rows whose visible height is 0.
12880
3f99f948
GM
12881 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
12882 resized_p flag is set. If not set, use the much less flickering
12883 method previously used.
12884
12885 * dispnew.c (change_frame_size_1): Set frame's resized_p.
12886
12887 * frame.h (struct frame) <resized_p>: New member.
12888
b4a3be43
GM
12889 * lread.c (to_multibyte): Ensure read_buffer is at least twice
12890 as large as the number of bytes to convert.
747d3f2a 12891
a742d646
GM
12892 * lread.c (to_multibyte): New function.
12893 (read1): Use it.
12894
cacbb9e9
EZ
128952001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
12896
12897 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
12898
99cb6b2f
GM
128992001-10-30 Gerd Moellmann <gerd@gnu.org>
12900
327f42ee 12901 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
12902 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
12903 if the row's fill_line_p is set and drawing the last glyph with
12904 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 12905
99cb6b2f
GM
12906 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
12907
8e8223e2
SM
129082001-10-29 Stefan Monnier <monnier@cs.yale.edu>
12909
12910 * xmenu.c: Include coding.h and charset.h.
12911 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
12912 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
12913 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
12914 Explicitly set wv->help. Use `TRUE' rather than `True'.
12915 (menu_help_callback): Use empty_string.
12916
12917 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
12918 (Fx_popup_dialog): Explicitly init f.
12919 (w32_menu_display_help): Use empty_string.
12920
4d083a8f
RS
129212001-10-29 Richard M. Stallman <rms@gnu.org>
12922
b2304472
RS
12923 * fns.c (Frequire): Detect recursive try to require the same
12924 feature 3 or more levels deep, and get error.
12925 (require_unwind): New subroutine.
12926 (require_nesting_list): New variable.
12927 (syms_of_fns): Init and staticpro it.
12928
4d083a8f
RS
12929 * print.c (print_object): Clarify indication of insertion type.
12930
2fe41216
EZ
129312001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
12932
90480000
EZ
12933 * coding.c (syms_of_coding): Document that locale-coding-system is
12934 used for decoding input on X.
12935
2fe41216
EZ
12936 * window.c (Fscroll_left, Fscroll_right): Doc fix.
12937
f00691a3 129382001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
12939
12940 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
12941 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
12942
60ebcfe8
GM
129432001-10-29 Gerd Moellmann <gerd@gnu.org>
12944
9a7bdceb
GM
12945 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
12946 use NO_CURSOR if cursor_in_non_selected_windows is false.
12947
3f08fcd2
GM
12948 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
12949 the slant attribute if FRAME is t.
12950
0ccfdad2
GM
12951 * xfns.c (x_set_internal_border_width): Set frame garbaged
12952 when X window doesn't exist yet.
12953
ef253080
GM
12954 * xterm.c (x_after_update_window_line): Clear internal border
12955 in different circumstances.
b116830b 12956
60ebcfe8
GM
12957 * xterm.c (XTread_socket) <KeyPress>: Don't use
12958 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
12959 <handa@etl.go.jp>.
12960
73d25f9c
EZ
129612001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
12962
12963 * m/ibms390.h: New file. From Adam Thornton
12964 <athornton@sinenomine.net>.
12965
cac1daf0
GM
129662001-10-28 Gerd Moellmann <gerd@gnu.org>
12967
053b3256 12968 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 12969
cac1daf0
GM
12970 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
12971 a loop counter.
12972
f00691a3 129732001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 12974
186486eb
PJ
12975 * emacs.c: Use argv[0] instead of emacs when -t was specified.
12976
4707d2d0
PJ
12977 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
12978 keyword].
12979 Fix typos in comments.
b116830b 12980
d883731c
PJ
12981 * emacs.c (bug_reporting_address): New function.
12982 Use it when displaying usage message.
12983
04012254
PJ
12984 * minibuf.c (read_minibuf): Remove unused external declaration of
12985 variable `Qread_only'.
12986
13b1a09c
PJ
12987 * keymap.c (access_keymap): Remove unused variable `charset'.
12988
5bbf4378
MB
129892001-10-28 Miles Bader <miles@gnu.org>
12990
12991 * xfaces.c (merge_face_heights): Handle TO being relative as well.
12992 Remove #ifdef'd-out code.
12993 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
12994 (syms_of_xfaces): Initialize them.
12995
1ce1e4ee
JR
129962001-10-27 Jason Rumney <jasonr@gnu.org>
12997
12998 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
12999 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
13000 position using the system caret.
13001
13002 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
13003 (w32_system_caret_height, w32_system_caret_x)
13004 (w32_system_caret_y): New variables for tracking system caret.
13005 (w32_initialize): Initialize them.
c2d53558 13006 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 13007
c2d53558
SM
13008 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
13009 New messages types.
1ce1e4ee
JR
13010
13011 * w32term.c (note_mouse_highlight): Clear old help_echo.
13012
f00691a3 130132001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 13014
bb4600a4
PJ
13015 * xterm.c: Fix typo in a comment.
13016
7db35a48
PJ
13017 * emacs.c: Fix typos in comments.
13018 Remove unnecessary spaces.
13019 Change doc-string comments to `new style' [w/`doc:' keyword].
13020 (USAGE2): Fix typos in usage string.
13021
a7248e4f
PJ
13022 * xterm.c: Fix typo in a comment.
13023
4e30ce42
PJ
13024 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
13025 emacs.c.
13026
62725a92
GM
130272001-10-27 Gerd Moellmann <gerd@gnu.org>
13028
798dbe1f 13029 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 13030 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
13031 farther backward when target_y was not reached.
13032
62725a92
GM
13033 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
13034 Display errno only if non-zero.
13035 (sound_warning): New function.
13036 (vox_configure): Don't treat failing to set sample rate as error.
13037 (various places): Improve error messages.
13038
d4e34d24
EZ
130392001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
13040
944e6f60
EZ
13041 * fileio.c (Faccess_file): Run the argument filename through
13042 Fexpand_file_name, before using it.
13043
d4e34d24
EZ
13044 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
13045 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
13046
38d2af0c
GM
130472001-10-26 Gerd Moellmann <gerd@gnu.org>
13048
da80a8d5
GM
13049 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
13050
38d2af0c
GM
13051 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
13052 Fix clearing in the case of scroll bars on the right.
c2d53558 13053
45de4a6f 130542001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
13055
13056 * w32gui.h (XImage): Add a dummy typedef.
13057
fbd5ceb2
GM
130582001-10-26 Gerd Moellmann <gerd@gnu.org>
13059
c2d53558 13060 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 13061
b23236fb
EZ
130622001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
13063
13064 * frame.c (Fframe_parameter): Fix last change.
13065
5d991fc4
EZ
13066 * fileio.c: Revert last change (which removed old commented-out
13067 version of expand-file-name). Add a comment that explains why
13068 this old version should not be removed.
13069
879eadc3
GM
130702001-10-25 Gerd Moellmann <gerd@gnu.org>
13071
75700ff2
GM
13072 * frame.c (Fframe_parameter): Fix a bug whereby some
13073 ``artificial'' frame parameters, like `minibuffer' were not
13074 obtained by calling Fframe_parameters.
13075
dfe92a6a
GM
13076 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
13077 cursor differently.
13078
879eadc3
GM
13079 * xdisp.c (move_it_vertically_backward): Compute line height
13080 differently. Add heuristic to try to be more compatible to 20.x.
13081
e1010ebe
SM
130822001-10-25 Stefan Monnier <monnier@cs.yale.edu>
13083
d73a471b
SM
13084 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
13085
d6da5a06
GM
13086 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
13087 boolean.
e1010ebe 13088
f66bd220
MB
130892001-10-25 Miles Bader <miles@gnu.org>
13090
13091 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
13092 BG is a pointer to a structure, not a structure.
13093 (gif_format, png_format): Add missing commas.
13094
d436d538
RS
130952001-10-24 Richard M. Stallman <rms@gnu.org>
13096
13097 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 13098 (syms_of_xfaces): Defsubr it.
d436d538 13099
f00691a3 131002001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
13101
13102 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
13103 variable `area'.
13104
f00691a3 131052001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 13106
c2d53558 13107 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 13108
e2a57b34
MB
131092001-10-25 Miles Bader <miles@gnu.org>
13110
13111 * dispextern.h (struct image): Add `background',
13112 `background_valid', and `background_transparent' fields.
13113 (image_background, image_background_transparent): New declarations.
13114 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
13115 * xfns.c (image_background, image_background_transparent)
13116 (four_corners_best): New functions.
c2d53558 13117 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
13118 (gs_format): Add `:background' entry.
13119 (lookup_image): Set IMG's background color if specified.
13120 (pbm_load, xbm_load_image, png_load): Set IMG's background field
13121 when appropriate.
13122 (x_clear_image_1): Reset `background_valid' and
13123 `background_transparent_valid' fields.
13124 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
13125 calculating it here. Set IMG's background_transparent field.
13126 (enum xpm_keyword_index): Add XPM_BACKGROUND.
13127 (enum png_keyword_index): Add PNG_BACKGROUND.
13128 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
13129 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
13130 (enum gif_keyword_index): Add GIF_BACKGROUND.
13131 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 13132 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
13133 Pre-calculate image background color where necessary.
13134 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
13135 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
13136 color to use for image glyph reliefs.
13137
b547b6e8
GM
131382001-10-24 Gerd Moellmann <gerd@gnu.org>
13139
d9e3b8c6
GM
13140 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
13141 in full-width rows.
c2d53558 13142
b547b6e8
GM
13143 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
13144 Fix clearing of area not covered by scroll bar.
13145
f00691a3 131462001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
13147
13148 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
13149 and `real_start'.
c2d53558 13150 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
13151 (glyph_rect): Remove unused variable `area'.
13152
76cb5e06
GM
131532001-10-24 Gerd Moellmann <gerd@gnu.org>
13154
bdbdebff 13155 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
13156
13157 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
13158 (row_containing_pos): Take additional argument DY.
13159 Treat rows ending in middle of char differently.
62e33982
GM
13160 (display_line): Handle tabs on window systems differently.
13161
13162 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
13163 with additional argument.
13164
13165 * dispextern.h (row_containing_pos): Adjust prototype.
13166
76cb5e06
GM
13167 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
13168 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
13169 (try_window_id, try_window_reusing_current_matrix)
13170 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 13171 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 13172
f00691a3 131732001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 13174
c9e60620
PJ
13175 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
13176 gnuemacs).
13177 (HAVE_BOXES): Fix typo in comment.
13178 (push_menu_pane): Fix typo in comment.
13179
3b552d56
PJ
13180 * xdisp.c: (display_prop_string_p): Remove unused local declaration
13181 of `Qwhen'.
13182 (single_display_prop_string_p): Remove unused local declarations
13183 of `Qwhen' and `Qmargin'.
13184 (string_buffer_position): Remove unused variable `around'.
13185 (store_frame_title): Remove unused variable `width'.
13186
15c565ac
PJ
13187 * window.c: Don't define max.
13188 (coordinates_in_window): Remove unused variable `uy'.
13189
a8818eb9
PJ
13190 * widget.c: Don't define max.
13191
996fee11
PJ
13192 * process.c: Don't define max.
13193 (create_process): Remove unused variable `buffer'.
13194
496e1a5b
GM
131952001-10-23 Gerd Moellmann <gerd@gnu.org>
13196
c2d53558 13197 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 13198
5905ae8b
EZ
131992001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
13200
13201 * xfaces.c (Finternal_set_lisp_face_attribute)
13202 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
13203 frame is on a windowed display.
13204
24db49fb
GM
132052001-10-23 Gerd Moellmann <gerd@gnu.org>
13206
c2d53558
SM
13207 * dispnew.c (sync_window_with_frame_matrix_rows):
13208 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
13209 of marginal areas.
13210
c2d53558 13211 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 13212
f0487f05
EZ
132132001-10-23 Andreas Schwab <schwab@suse.de>
13214
13215 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
13216 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
13217
f0a48a01
GM
132182001-10-23 Gerd Moellmann <gerd@gnu.org>
13219
c2d53558 13220 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
13221 REAL_END. Notice if cursor gets overwritten.
13222 (notice_overwritten_cursor): Take X positions as parameters.
13223 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
13224 around call to x_draw_glyphs.
13225
f00691a3 132262001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 13227
fc11dff0
PJ
13228 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
13229 instead of C) and usage.
a50a10a0 13230
fc11dff0
PJ
13231 * editfns.c (char-to-string): Fix argument names (use CHAR instead
13232 of C) and usage.
a50a10a0
PJ
13233
13234 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
13235 `left', `max_width' and `max_height'.
13236
8738febd
GM
132372001-10-23 Gerd Moellmann <gerd@gnu.org>
13238
13239 * xdisp.c (display_line): For a tab continued to the next line,
13240 set row's ends_in_middle_of_char_p.
13241
653c329b
GM
132422001-10-22 Gerd Moellmann <gerd@gnu.org>
13243
13244 * xdisp.c (display_line): Fix computation of continuation lines
13245 width for TABs.
13246
f00691a3 132472001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 13248
7ba51063
PJ
13249 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
13250 `Qlaplace'.
13251
f958c5ac
PJ
13252 * fileio.c: Remove unused code.
13253
eb360291
MB
132542001-10-22 Miles Bader <miles@gnu.org>
13255
13256 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
13257 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
13258 Remove `DOC_STRINGS_IN_COMMENTS' cases.
13259
98515cf0
JR
132602001-10-21 Jason Rumney <jasonr@gnu.org>
13261
13262 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
13263
93026d88
EZ
132642001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
13265
13266 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
13267 (Finsert_string): Avoid the multi-line string literals warning.
13268
c9a95b79
MB
132692001-10-22 Miles Bader <miles@gnu.org>
13270
13271 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
13272 (Fdocumentation): Don't use it.
13273 (syms_of_doc): Don't initialize it.
13274
13275 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
13276 * print.c (Fwith_output_to_temp_buffer): Likewise.
13277 * window.c (Fsave_window_excursion): Likewise.
c2d53558 13278 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 13279 (Fsave_restriction): Likewise.
c2d53558
SM
13280 * eval.c (Frun_hooks, Frun_hook_with_args)
13281 (Frun_hook_with_args_until_failure)
13282 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
13283 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
13284 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
13285 (Funwind_protect, Fcondition_case): Likewise.
13286 * coding.c (Ffind_operation_coding_system): Likewise.
13287 * keyboard.c (Ftrack_mouse): Likewise.
13288
a3b10252
MB
132892001-10-21 Miles Bader <miles@gnu.org>
13290
c2d53558 13291 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
13292 (Fmake_hash_table): Add usage: string to doc string.
13293 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 13294 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
13295 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
13296 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
13297 (Fml_prefix_argument_loop): Likewise.
13298
f00691a3 132992001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 13300
c2d53558 13301 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 13302
c6f73eec
PJ
13303 * sysdep.c (init_sys_modes): Change doc-string comments to `new
13304 style' [w/`doc:' keyword].
13305
13306 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
13307 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
13308 comments to `new style' [w/`doc:' keyword].
13309
3cf3436e
JR
133102001-10-21 Jason Rumney <jasonr@gnu.org>
13311
13312 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
13313
c169b8f1
JR
13314 * w32term.c (remember_mouse_glyph): New function.
13315 (w32_mouse_position): Use it.
13316 (note_mouse_movement): If the mouse moved off the glyph, remember
13317 its new position.
c2d53558 13318
4fdd691b
JR
13319 * w32term.h (struct w32_output): Correct spelling of x_compatible.
13320 (w32_display_info): Add mouse_face_overlay.
13321
c169b8f1
JR
13322 * w32term.c (notice_overwritten_cursor): Renamed from
13323 note_overwritten_text_cursor. Rewritten to take glyph widths into
13324 account.
13325 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
13326 (fast_find_string_pos): New function.
13327 (fast_find_position): Return the correct vpos. Add parameter
13328 STOP. In the final row, stop before glyphs having STOP as object.
13329 Don't consider glyphs that are not from a buffer.
13330 (fast_find_position) [0]: Add a presumably more correct version
13331 for after 21.1.
13332 (expose_window_tree, expose_frame): Don't compute intersections here.
13333 (expose_window): Do it here instead.
13334 (expose_window_tree, expose_window, expose_line): Return 1 when
13335 overwriting mouse-face.
13336 (expose_window): If W is the window currently being updated, mark
13337 the frame garbaged.
13338 (expose_frame): If mouse-face was overwritten, redo it.
13339 (x_use_underline_position_properties): New variable.
13340 (syms_of_xterm): DEFVAR_BOOL it.
13341 (x_draw_glyph_string): Add comment to use it in future.
13342 (x_draw_glyph_string): Restore clipping after drawing box.
13343 Fix a computation of the underline position.
13344 (w32_get_glyph_string_clip_rect): Minor cleanup.
13345 (x_fill_stretch_glyph_string): Remove an assertion.
13346 (x_produce_glyphs): Don't convert multibyte characters
13347 to unibyte characters in unibyte buffers.
13348 (cursor_in_mouse_face_p): New function.
13349 (x_draw_stretch_glyph_string): Use it to choose a different GC
13350 when drawing a cursor within highlighted text. Don't draw
13351 background again if it has already been drawn.
13352 (x_draw_glyph_string_box): Don't draw a full-width
13353 box just because the glyph row's full_width_p flag is set.
13354 (x_draw_glyphs): Fix computation of rightmost x for
13355 full-width rows.
13356 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
13357 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
13358 change bottom shadow accordingly. Some cleanup.
13359 (x_update_window_end): Handle overwritten mouse face
13360 also for tool bar windows.
13361 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
13362 DRAW is DRAW_IMAGE_RAISED.
13363 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
13364 actually redrawn. Make the function static.
13365 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
13366 optimize away highlighting if we pass over that same overlay again.
13367 (note_mouse_highlight): Call mouse_face_overlay_overlaps
13368 to detect a case where we have to highlight a different region
13369 despite not having left the currently highlighted region.
13370 Set mouse_face_overlay in the x_display_info. Avoid changing the
13371 mouse pointer shape when show_mouse_face has already done it, or
13372 there is no need. Handle mouse-face and help-echo in strings.
13373 (glyph_rect): New function.
13374 (w32_mouse_position): Use it to raise the threshold for mouse
13375 movement event generation.
13376 (w32_initialize_display_info): Initialize the x_display_info's
13377 mouse_face_overlay.
13378 (w32_set_vertical_scroll_bar): Don't clear a zero height
13379 or width area.
13380 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
13381 a widget to zero height.
13382
3cf3436e 13383 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 13384 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
13385 equivalents in menu_items.
13386 (w32_menu_show): Don't overwrite an item's name with its key
13387 description in case the description is a multibyte string.
13388 (single_submenu): Some cleanup.
13389
13390 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
13391 (postprocess_image): New function.
13392 (lookup_image): Call it for all image types except PostScript.
13393 (x_kill_gs_process): Call postprocess_image.
13394 (tiff_error_handler, tiff_warning_handler): New functions.
13395 (tiff_load): Install them as handlers.
13396 (x_kill_gs_process): Recognize if someone has cleared the image
13397 cache under us.
13398 (valid_image_p): Protect better against invalid image
13399 specifications. Previous code could signal an error.
13400 (Fx_hide_tip, Fshow_tip): Doc fix.
13401 (Fv_max_tooltip_size): New variable.
13402 (syns_of_xfns): DEFVAR_LISP it.
13403 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
13404 window buffer to *tip* right after creating the frame. Set frame's
13405 window_width. Use a maximum tooltip size specified by
13406 Vx_max_tooltip_size, if that has valid contents.
13407 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
13408 Make sure the tooltip is completely visible.
13409 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
13410 (Fx_create_frame): Adjust the frame's height for presence
13411 of the tool bar before calling x_figure_window_size.
13412 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
13413 when the window gets smaller.
13414 (x_set_foreground_color): Set frame's cursor_pixel.
13415 (x_set_foreground_color, x_set_background_color): Cleaned up.
13416 (x_set_font): Handle case of x_new_fontset returning the same name
13417 as before, although there was a change in fontsets.
13418
386ca361
MB
134192001-10-21 Miles Bader <miles@gnu.org>
13420
c2d53558 13421 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
13422 (Flogxor): Add usage: string to doc string.
13423 * charset.c (Fstring): Likewise.
13424 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
13425 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
13426
f00691a3 134272001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 13428
03be2694
PJ
13429 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
13430
13431 * alloc.c: Reindent DEFUNs with doc: keywords.
13432
13433 * abbrev.c (Finsert_abbrev_table_description): Reindent.
13434
14ff1ee0
PJ
13435 * frame.c: Change doc-string comments to `new style' [w/`doc:'
13436 keyword].
13437
2f147815 13438See ChangeLog.9 for earlier changes.
6922b018
KH
13439
13440;; Local Variables:
49b3bd82 13441;; coding: iso-2022-7bit
6922b018 13442;; End:
2a34a036 13443
2f147815 13444 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
13445 Copying and distribution of this file, with or without modification,
13446 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
13447
13448;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4