Add "(require 'eshell)", to get necessary features
[bpt/emacs.git] / src / ChangeLog
CommitLineData
d3b111bd
KS
12004-04-27 Kim F. Storm <storm@cua.dk>
2
07dc1231
KS
3 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
4 header line strings.
5
360fe9d2
KS
6 * dispextern.h (struct it): New member use_default_face.
7
d3b111bd
KS
8 * xdisp.c (Qline_height): New variable.
9 (syms_of_xdisp): Intern and staticpro it.
10 (append_space_for_newline): Partially undo 2004-04-25 change;
11 add default_face_p arg, and restore callers.
12 Clear it->use_default_face after use.
13 (x_produce_glyphs): Set default font for ascii char if
14 it->use_default_font is set. Change line-spacing property to set
15 just extra line spacing. Handle new line-height property.
16
0448588b
AS
172004-04-26 Andreas Schwab <schwab@suse.de>
18
19 * print.c (print_object): Print non-ascii characters in bool
20 vector representation as octal escapes.
21
22 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
23 * print.c (print_object): Use it instead of BITS_PER_CHAR for
24 bool vectors.
25 * lread.c (read1): Likewise.
26 * alloc.c (Fmake_bool_vector): Likewise.
27 * data.c (Faref, Faset): Likewise.
28 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
29 (mapcar1): Likewise.
d3b111bd 30
536d6baa
ST
312004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
32
33 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
34
ae11577a
MB
352004-04-26 Miles Bader <miles@gnu.org>
36
37 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
38
e198ba87
JB
392004-04-26 Juanma Barranquero <lektu@terra.es>
40
41 * buffer.c (Fpop_to_buffer): Fix docstring.
42
f3d5f92d 432004-04-26 Steven Tamm <steventamm@mac.com>
e198ba87 44
f3d5f92d
ST
45 * lread.c (init_lread): Don't display missing lisp directory
46 warnings with Carbon Emacs because self-contained bundled Emacs
e198ba87 47 may be built without correct installation path.
f3d5f92d 48
03e35edc
KS
492004-04-25 Kim F. Storm <storm@cua.dk>
50
9ff3aa31
KS
51 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
52
53 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
54
03e35edc
KS
55 * xdisp.c (append_space_for_newline): Rename from append_space.
56 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
57 (x_produce_glyphs): Handle line-spacing property on newline char.
58 If value is t, adjust ascent and descent to fit current row height.
59 If value is an integer or float, set extra_line_spacing to integer
60 value, or to float value x current line height.
61
f24814e0
KH
622004-04-23 Kenichi Handa <handa@m17n.org>
63
64 * fontset.c (Finternal_char_font): If POSITION is nil, return
65 font for displaying CH with the default face.
66
d814862a
JB
672004-04-23 Juanma Barranquero <lektu@terra.es>
68
69 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
70
063a45c5
SM
712004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
72
73 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
74 Don't make assumptions about the relative place of i and val.
75 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
76
ae7ab2d3
KS
772004-04-21 Kim F. Storm <storm@cua.dk>
78
79 * dispextern.h (struct glyph_slice): New struct.
80 (struct glyph): New member slice.
81 (GLYPH_SLICE_EQUAL_P): New macro.
82 (GLYPH_EQUAL_P): Use it.
83 (struct glyph_string): New member slice.
84 (struct it_slice): New struct.
85 (struct it): New member slice, add member to stack too.
86 New member constrain_row_ascent_descent_p.
87 (image_ascent): Add prototype.
88
89 * dispnew.c (buffer_posn_from_coords): Return full image width
90 and height even for image slices (posn is relative to full image).
91 (marginal_area_string): Adjust x0,y0 for image slice.
92
93 * image.c (image_ascent): Add slice arg; calculate ascent for
94 image slice (or full image).
95
96 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
97 (syms_of_keyboard): Defsubr them.
98
99 * lisp.h (pos_visible_p): Fix prototype.
100
c62aec78 101 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
ae7ab2d3
KS
102 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
103 (x_draw_image_foreground, x_draw_image_relief)
104 (x_draw_image_foreground_1, x_draw_image_glyph_string):
105 Draw sliced images.
106
107 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
108 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
109 (x_draw_image_foreground, x_draw_image_relief)
110 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
111 Draw sliced images.
112
113 * w32term.h (image_ascent): Remove prototype.
114
115 * window.c (Fpos_visible_in_window_p): Return pixel position if
116 PARTIALLY arg is non-nil. Simplify. Doc fix.
117 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
118 to return/set vscroll in pixels.
119
120 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
121
122 * xdisp.c (Qslice): New variable.
123 (syms_of_xdisp): Intern and staticpro it.
124 (pos_visible_p): Return pixel position in new x and y args.
125 (init_iterator): Reset it->slice info.
126 (handle_display_prop): Parse (slice ...) property.
127 (push_it, pop_it): Save/restore slice info.
128 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
129 force repositioning of tall row if window is vscrolled, as that
130 would reset vscroll.
131 (append_space): Set it->constrain_row_ascent_descent_p to avoid
132 increasing row height if row is non-empty.
133 (fill_image_glyph_string): Copy slice info.
134 (take_vertical_position_into_account): Simplify.
135 (produce_image_glyph): Handle iterator slice info, setup glyph
136 slice info. Do not force minimum line height.
137 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
138 do not increase height (ascent/descent) of non-empty row when
139 adding normal character glyph; instead reduce glyph ascent/descent
140 appropriately; if row is higher than current glyph, adjust glyph
141 descent/ascent to reposition glyph within the existing row.
142 Likewise, when char is newline, only set ascent/descent if row is
143 currently empty.
144 (note_mouse_highlight): Handle hotspots with sliced image.
145
146 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
147 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
148 (x_draw_image_foreground, x_draw_image_relief)
149 (x_draw_image_foreground_1, x_draw_image_glyph_string):
150 Draw sliced images.
151
152 * xterm.h (image_ascent): Remove prototype.
153
d58f8753
SM
1542004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
155
156 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
157
4ce2719d
JPW
1582004-04-20 John Paul Wallington <jpw@gnu.org>
159
160 * fns.c (Fassoc, Feql): Fix indentation.
161
d58f8753 162 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
4ce2719d 163
95f8c3b9
JPW
1642004-04-19 John Paul Wallington <jpw@gnu.org>
165
166 * fns.c (Feql): New function.
d58f8753 167 (syms_of_fns): Defsubr it.
95f8c3b9 168
b7e85537
JR
1692004-04-18 Jason Rumney <jasonr@gnu.org>
170
171 * w32select.c (Fw32_set_clipboard_data): Get sequence number
172 after closing the clipboard.
173
5a72efd4
LT
1742004-04-16 Luc Teirlinck <teirllm@auburn.edu>
175
176 * buffer.c (Fbuffer_base_buffer): Doc fix.
177
20dc8583
KS
1782004-04-17 Kim F. Storm <storm@cua.dk>
179
60962ec4
KS
180 * keymap.c (Fkey_description): Add optional PREFIX arg.
181 Combine prefix with KEYS to make up the full key sequence to describe.
182 Correlate meta_prefix_char and following (simple) key to describe
183 as meta modifier. All callers changed.
184 (describe_map): Rename arg `keys' to `prefix'. Remove local
185 `elt_prefix' var. Use Fkey_description with prefix instead of
186 elt_prefix combined with Fsingle_key_description.
187 (describe_vector): Declare static. Replace arg `elt_prefix' with
188 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
189 if !KEYMAP_P. Use Fkey_description with prefix instead of
190 Fsingle_key_description.
191
192 * keymap.h (Fkey_description): Fix prototype.
193 (describe_vector): Remove prototype.
194
409368b9
KS
195 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
196
20dc8583
KS
197 * image.c (PNG_BG_COLOR_SHIFT): Remove.
198 (png_load): Fix calculation of transparent background color on X
199 and W32 platforms.
200
75c5501b
JB
2012004-04-16 Juanma Barranquero <lektu@terra.es>
202
203 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
204 not too large before computing how much to scroll.
205
da879ae8
SM
2062004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
207
208 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
209
d01ca4a8
LT
2102004-04-14 Luc Teirlinck <teirllm@auburn.edu>
211
212 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
213 Add hyperlink to Elisp manual to the docstring.
214
572943b3
SM
2152004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
216
217 * callint.c (fix_command): Use XDCR.
218
5e30a0fb
NR
2192004-04-14 Nick Roberts <nick@nick.uklinux.net>
220
221 * window.c (Fget_lru_window): Doc fix.
222
a27ddfaf
KS
2232004-04-14 Kim F. Storm <storm@cua.dk>
224
225 * editfns.c (Fformat): Fix allocation size of precision array.
226
227 * dispnew.c (update_window): Only set changed_p if
228 scrolling_window actually did scroll.
229 (scrolling_window): Only return 1 if we actually did scroll.
230
231 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
232 height to glyph height when cursor row is not fully visible.
233 (make_cursor_line_fully_visible): Add FORCE_P arg to return
234 failure in case row is higher than window. Callers changed.
235 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
236 Try to scroll partially visible, higher-than-window cursor row.
237 (redisplay_window): Always try to scroll partially visible,
238 higher-than-window cursor row - both initially and again with
239 centering_position = 0.
240 Clear desired matrix before retrying with centering_position = 0.
241
da879ae8
SM
2422004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
243
244 * syntax.c (scan_lists): Simplify backward string scan.
245 Fix off-by-one boundary check for string and comment fences.
246
5fc16e8e
SM
2472004-04-13 Joe Buehler <jbuehler@hekimian.com>
248
249 * sheap.c, unexcw.c: New files.
250
c9aac8e6
LT
2512004-04-12 Luc Teirlinck <teirllm@auburn.edu>
252
253 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
254 base buffer has been killed. Correct the error message if the
255 base buffer does not exist.
256
1e88a355
SM
2572004-04-12 Joe Buehler <jbuehler@hekimian.com>
258
259 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
260 Cygwin itself. Add support for Xaw3d scrollbars.
261
262 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
263
264 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
265
266 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
267 before Cygwin unexec.
268
269 * Makefile.in: Link changes for Cygwin unexec() support.
270
8dbff9a0
AS
2712004-04-12 Andreas Schwab <schwab@suse.de>
272
273 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
274
54dffe35
LT
2752004-04-11 Luc Teirlinck <teirllm@auburn.edu>
276
277 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
278 IGNORE argument equals NAME. Doc fix.
279
99a72bdf
MY
2802004-04-11 Masatake YAMATO <jet@gyve.org>
281
1e88a355 282 * buffer.c (fix_start_end_in_overlays): Make overlays
99a72bdf
MY
283 empty if they are backwards.
284
40899d7b
SM
2852004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
286
287 * xfaces.c (face_color_supported_p): Fix compilation without X11.
288
f8f853de
SM
2892004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
290
291 * doc.c (Fsnarf_documentation): Ignore new file name entries.
292
c953fe1b
KS
2932004-04-06 Kim F. Storm <storm@cua.dk>
294
661e85c1
KS
295 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
296 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
297
298 * w32term.c (w32_read_socket): Set mouse_face_hidden after
299 clearing highlight.
300
301 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
302
303 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
304 clearing highlight.
305
c953fe1b
KS
306 * indent.c (vmotion): Do not reserve one column for continuation
307 marks on window frames.
308
c1994268
EZ
3092004-04-04 Eli Zaretskii <eliz@gnu.org>
310
311 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
312 from GCC.
313
9f691b0d
SM
3142004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
315
316 * .gdbinit-union: Remove.
317
318 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
319 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
320 ($nonvalbits): Remove.
321 ($valmask): Set it by calling xreload to avoid redundancy.
322
323 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
324 (gdb_emacs_intbits): Remove.
325
7a8560d7
JD
3262004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
327
9f691b0d 328 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
7a8560d7 329
3c8111fc
KH
3302004-03-30 Kenichi Handa <handa@m17n.org>
331
332 * editfns.c (Fformat): Fix initialization of the array info.
333
48a0bce4
KS
3342004-03-30 Kim F. Storm <storm@cua.dk>
335
336 * xterm.c (x_mouse_click_focus_ignore_position): New var.
337 (syms_of_xterm): DEFVAR_BOOL it.
338 (ignore_next_mouse_click_timeout): New var.
339 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
340 Use it to filter mouse clicks following focus event.
341
1cd0066c
KS
3422004-03-29 David Ponce <david@dponce.com>
343
344 * callint.c (Fcall_interactively): Fix last change.
345
adb3b353
SM
3462004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
347
348 * eval.c (Fcommandp): Simplify.
349
350 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
351 Extend to handle all kinds of functions.
352
353 * lisp.h (Finteractive_form): Declare.
354
355 * callint.c (Fcall_interactively): Use it.
356
6fc4c9c9
KS
3572004-03-26 Kim F. Storm <storm@cua.dk>
358
359 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
360 to catch errors in calc_pixel_width_or_height during redisplay.
361
abdb9b83
MY
3622004-03-26 Masatake YAMATO <jet@gyve.org>
363
b17856dd 364 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
abdb9b83 365
b17856dd 366 * lisp.h (fix_start_end_in_overlays): Likewise.
abdb9b83 367
b17856dd 368 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
abdb9b83 369
b17856dd 370 * editfns.c (Ftranspose_regions): Likewise.
abdb9b83 371
e8a84b6c
JD
3722004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
373
b17856dd 374 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
e8a84b6c 375
36a3fd05
RS
3762004-03-19 Richard M. Stallman <rms@gnu.org>
377
378 * s/sol2-6.h: Delete previous change.
379
ab24c127
KS
3802004-03-19 Kim F. Storm <storm@cua.dk>
381
382 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
383 to_charpos corresponds to newline in right fringe. Use local
384 BUFFER_POS_REACHED_P macro.
385
992126de
JD
3862004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
387
388 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
389 to compile on non-window system.
390
45dbfc84
KS
3912004-03-19 Kim F. Storm <storm@cua.dk>
392
393 * dispextern.h (calc_pixel_width_or_height): Add prototype.
394
395 * image.c (Qcenter): Move to xdisp.c.
396
397 * xdisp.c (Qcenter): Declare here.
adb3b353 398 (syms_of_xdisp): Intern and staticpro it.
45dbfc84
KS
399 (handle_single_display_prop): Allow space display property on all
400 platforms.
401 (display_mode_line): Set mode_line_p before displaying line.
402 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
403 handling. Remove complex cases for fringes and scroll-bars.
404 Add left, right, and center alignment positions. Add text (area)
405 width/height. Return width or height for image specs.
406 (produce_stretch_glyph): Improve handling of :align-to. Is now
407 relative to left of text area by default, but other base offsets
408 can be specified -- also for text lines.
409
410 * term.c (produce_glyphs): Handle IT_STRETCH.
411 (produce_stretch_glyph): New function to handle space width and
412 align-to display properties on non-window systems.
413
37264101
SM
4142004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
415
416 * fileio.c (Fread_file_name): Set completion-ignore-case for
417 case-insensitive systems.
418
73bc43da
MY
4192004-03-14 Masatake YAMATO <jet@gyve.org>
420
421 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
422 when keymap and cursor are setup.
423
9062aa89
ST
4242004-03-14 Steven Tamm <steventamm@mac.com>
425
b17856dd 426 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
9062aa89 427
e4b1b5ab
KS
4282004-03-14 Kim F. Storm <storm@cua.dk>
429
430 * dispextern.h (x_find_image_file): Add prototype.
431
432 * image.c (x_find_image_file): Make extern.
433
434 * xfns.c (x_find_image_file): Remove prototype.
435
a6eeaa81 4362004-03-13 Eli Zaretskii <eliz@gnu.org>
5109b06a 437
37264101 438 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
5109b06a 439
37264101 440 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
5109b06a 441
e69cfac2
RS
4422004-03-12 Richard M. Stallman <rms@gnu.org>
443
444 * fns.c (internal_equal): New arg PROPS controls comparing
445 text properties. All callers changed.
446 (Fequal_including_properties): New function.
447 (syms_of_fns): defsubr it.
448
45034953
KS
4492004-03-12 Kim F. Storm <storm@cua.dk>
450
451 Fix image support on MAC. From YAMAMOTO Mitsuharu.
37264101 452
45034953
KS
453 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
454 (image_background, image_background_transparent): Fix prototypes.
455
37264101 456 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
45034953
KS
457
458 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
459 (x_query_font, x_find_ccl_program, x_set_window_size)
460 (x_make_frame_visible, mac_initialize, XCreatePixmap)
461 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
462 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
463
464 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
465 (x_query_font, x_find_ccl_program, x_set_window_size)
466 (x_make_frame_visible, mac_initialize, XCreatePixmap)
467 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
468 (mac_draw_line_to_pixmap): Add prototypes.
469
4702004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
471
472 * macterm.c (XTread_socket): Fix mouse click on tool bar.
473
a12d3d87
KS
4742004-03-11 Kim F. Storm <storm@cua.dk>
475
d3ab1cf1
KS
476 * dispextern.h: Move image related prototypes from xfns.c section
477 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
478 HAVE_X_WINDOWS.
37264101 479
37de9f51 480 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
37264101 481 Move gtkutil.o to new GTK_OBJ list.
a12d3d87
KS
482 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
483 (GTK_OBJ) [USE_GTK]: New declaration.
484 (obj): Add $(GTK_OBJ) to list.
485
5243c06a 4862004-03-11 Steven Tamm <steventamm@mac.com>
5109b06a 487
5243c06a
ST
488 * image.c [MAC_OSX]: Include sys/stat.h
489
490 * macfns.c (syms_of_macfns): Remove definitions of things now
491 defined in image.c
492
c0f97789
KS
4932004-03-11 Kim F. Storm <storm@cua.dk>
494
495 The following changes consolidates the identical/similar image
496 support code previously found in xfns.c, w32fns.c, and macfns.c
497 into a new file image.c.
498
499 * makefile.w32-in (OBJ1): Add image.o.
500 ($(BLD)/image.$(O)): Add dependencies.
501
502 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
503 (image.o): Add dependencies.
37264101 504
c0f97789
KS
505 * image.c: New file with consolidated image support code.
506 (COLOR_TABLE_SUPPORT): New define to control whether
507 color table support is available (X only).
508 (Bitmap_Record): Common name for x_bitmap_record,
509 w32_bitmap_record, and mac_bitmap_record.
510 (XImagePtr): Common name for pointer to XImage or equivalent.
511 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
512 to XImagePtr on X+MAC, and to HDC on W32.
513 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
514 (NO_PIXMAP): Common name for "None" or equivalent.
515 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
516 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
517 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
37264101
SM
518 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
519 Define with suitable equivalents on W32 and MAC for code sharing.
c0f97789
KS
520 (XDrawLine): Define on MAC for code sharing.
521 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
522 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
523 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
524 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
525 (x_reference_bitmap, x_create_bitmap_from_data)
526 (x_create_bitmap_from_file, x_destroy_bitmap)
527 (x_destroy_all_bitmaps, x_create_bitmap_mask)
528 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
529 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
530 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
531 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
532 (define_image_type, lookup_image_type, valid_image_p)
533 (image_error, enum image_value_type, struct image_keyword)
534 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
535 (make_image, free_image, prepare_image_for_display, image_ascent)
536 (four_corners_best, image_background, image_background_transparent)
537 (x_clear_image_1, x_clear_image, x_alloc_image_color)
538 (make_image_cache, free_image_cache, clear_image_cache)
539 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
540 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
541 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
542 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
543 (init_image_func_pointer, image_load_quartz2d)
544 (struct ct_color, init_color_table, free_color_table)
545 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
546 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
547 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
548 (x_disable_image, x_build_heuristic_mask)
549 (XBM support, XPM support, PBM support, PNG support, JPEG support)
550 (TIFF support, GIF support, Ghostscript support): Consolidate image
551 code from xfns.c, w32fns.c, and macfns.c.
552 (syms_of_image): Consolidate image related symbol setup here.
553 (init_image): Consolidate image related initializations here.
37264101 554
c0f97789
KS
555 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
556 and init_image. Remove call to init_xfns.
557
37264101
SM
558 * macterm.h (struct mac_bitmap_record): Add file member.
559 Not currently used, but simplifies code sharing.
c0f97789
KS
560
561 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
562 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
563 (x_reference_bitmap, x_create_bitmap_from_data)
564 (x_create_bitmap_from_file, x_destroy_bitmap)
565 (x_destroy_all_bitmaps, x_create_bitmap_mask)
566 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
567 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
568 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
569 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
570 (define_image_type, lookup_image_type, valid_image_p)
571 (image_error, enum image_value_type, struct image_keyword)
572 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
573 (make_image, free_image, prepare_image_for_display, image_ascent)
574 (four_corners_best, image_background, image_background_transparent)
575 (x_clear_image_1, x_clear_image, x_alloc_image_color)
576 (make_image_cache, free_image_cache, clear_image_cache)
577 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
578 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
579 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
580 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
581 (init_image_func_pointer, image_load_quartz2d)
582 (struct ct_color, init_color_table, free_color_table)
583 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
584 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
585 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
586 (x_disable_image, x_build_heuristic_mask)
587 (XBM support, XPM support, PBM support, PNG support, JPEG support)
588 (TIFF support, GIF support, Ghostscript support): Merge with image
589 code from xfns.c and macfns.c into image.c.
590 (syms_of_xfns): Move image related symbols to image.c.
591 (init_external_image_libraries, init_xfns): Remove; initialization
592 moved to init_image in image.c.
593
594 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
595 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
596 (x_reference_bitmap, x_create_bitmap_from_data)
597 (x_create_bitmap_from_file, x_destroy_bitmap)
598 (x_destroy_all_bitmaps, x_create_bitmap_mask)
599 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
600 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
601 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
602 (define_image_type, lookup_image_type, valid_image_p)
603 (image_error, enum image_value_type, struct image_keyword)
604 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
605 (make_image, free_image, prepare_image_for_display, image_ascent)
606 (four_corners_best, image_background, image_background_transparent)
607 (x_clear_image_1, x_clear_image, x_alloc_image_color)
608 (make_image_cache, free_image_cache, clear_image_cache)
609 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
610 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
611 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
612 (struct ct_color, init_color_table, free_color_table)
613 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
614 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
615 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
616 (x_disable_image, x_build_heuristic_mask)
617 (XBM support, XPM support, PBM support, PNG support, JPEG support)
618 (TIFF support, GIF support, Ghostscript support): Merge with image
619 code from xfns.c and macfns.c into image.c.
620 (syms_of_xfns): Move image related symbols to image.c.
621 (init_external_image_libraries, init_xfns): Remove; initialization
622 moved to init_image in image.c.
623
624 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
625 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
626 (x_reference_bitmap, x_create_bitmap_from_data)
627 (x_create_bitmap_from_file, x_destroy_bitmap)
628 (x_destroy_all_bitmaps, x_create_bitmap_mask)
629 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
630 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
631 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
632 (define_image_type, lookup_image_type, valid_image_p)
633 (image_error, enum image_value_type, struct image_keyword)
634 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
635 (make_image, free_image, prepare_image_for_display, image_ascent)
636 (four_corners_best, image_background, image_background_transparent)
637 (x_clear_image_1, x_clear_image, x_alloc_image_color)
638 (make_image_cache, free_image_cache, clear_image_cache)
639 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
640 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
641 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
642 (struct ct_color, init_color_table, free_color_table)
643 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
644 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
645 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
646 (x_disable_image, x_build_heuristic_mask)
647 (XBM support, XPM support, PBM support, PNG support, JPEG support)
648 (TIFF support, GIF support, Ghostscript support): Merge with
649 w32fns.c and macfns.c image code into image.c.
650 (syms_of_xfns): Move image related symbols to image.c.
651 (init_xfns): Remove; initialization moved to init_image in image.c.
652
653 * lisp.h (syms_of_image, init_image): Add protoypes.
654 (init_xfns): Remove prototype.
655
656 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
657 (x_reference_bitmap, x_create_bitmap_from_data)
658 (x_create_bitmap_from_file, x_destroy_bitmap)
659 (x_create_bitmap_mask): Move prototypes from dispextern.h.
660 (gamma_correct) [MAC_OS]: Add prototype.
661
662 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
663 (x_reference_bitmap, x_create_bitmap_from_data)
664 (x_create_bitmap_from_file, x_destroy_bitmap)
665 (x_create_bitmap_mask): Move prototypes to dispextern.h.
666
6eced09c
KH
6672004-03-09 Kenichi Handa <handa@etlken2>
668
669 * coding.c (decode_coding_emacs_mule): Handle insufficent source
670 correctly.
671
9a7e95f3
RS
6722004-03-04 Richard M. Stallman <rms@gnu.org>
673
04a6e76b
RS
674 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
675
9a7e95f3
RS
676 * window.c (Fdisplay_buffer): Doc fix.
677
678 * buffer.c (Fpop_to_buffer): Doc fix.
679
6c2488df
KS
6802004-03-03 Kim F. Storm <storm@cua.dk>
681
682 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
683
d8d95bc7
SM
6842004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
685
686 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
687
357589bf
RS
6882004-03-02 Richard M. Stallman <rms@gnu.org>
689
690 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
691
409949b5
KH
6922004-03-02 Kenichi Handa <handa@m17n.org>
693
694 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
695
d24bc50f
KS
6962004-03-02 Kim F. Storm <storm@cua.dk>
697
698 * window.h (struct window): New member overlay_arrow_bitmap.
699
700 * window.c (make_window): Initialize overlay_arrow_bitmap.
701
702 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
703 implement and integrate multiple overlay arrows with redisplay.
704 (syms_of_xdisp): DEFVAR_LISP and initialize it.
705 (last_arrow_position, last_arrow_string): Replace by properties.
706 (Qlast_arrow_position, Qlast_arrow_string)
707 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
708 (syms_of_xdisp): Intern and staticpro them.
709 (overlay_arrow_string_or_property, update_overlay_arrows)
710 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
711 (overlay_arrow_at_row): New functions for multiple overlay arrows.
712 (redisplay_internal): Use them instead of directly accessing
713 Voverlay_arrow_position etc. for multiple overlay arrows.
714 (mark_window_display_accurate): Use update_overlay_arrows.
715 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
716 (try_window_id): Use overlay_arrows_changed_p.
717 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
718 (display_line): Use overlay_arrow_at_row to check multiple
719 overlay arrows, and get relevant overlay-arrow-string and
d8d95bc7 720 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
d24bc50f
KS
721 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
722 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
723
724 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
725 (update_window_fringes): Remove unused code.
726
c1464661
JR
7272004-03-01 Jason Rumney <jasonr@gnu.org>
728
729 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
730
a64387ee
JB
7312004-03-01 Juanma Barranquero <lektu@terra.es>
732
733 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
734
735 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
736
334faa08
JD
7372004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
738
739 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
740 how many colors can be displayed.
741
bb62616f
KH
7422004-03-01 Kenichi Handa <handa@m17n.org>
743
744 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
745 correctly.
746
0fd16104
KS
7472004-02-28 Kim F. Storm <storm@cua.dk>
748
749 * dispnew.c (update_window): Update header line also if there are
750 no other changes in window (move code after set_cursor label).
751
752 * lisp.h (mark_window_display_accurate): Remove prototype.
753
754 * window.c (window_loop, Fforce_window_update): Force mode line
755 updates by setting prevent_redisplay_optimizations_p and
756 update_mode_lines.
757
b59dd9c8
JD
7582004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
759
d8d95bc7 760 * xfns.c (x_window): Fix indentation.
b59dd9c8
JD
761
762 * xterm.c (x_calc_absolute_position): Call x_real_positions
763 to get WM window sizes and use those to calculate position.
d8d95bc7 764 (x_set_offset): Remove code commented out.
b59dd9c8 765
a874691c
MB
7662004-02-28 Miles Bader <miles@gnu.org>
767
768 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
769
3e0c6482
KS
7702004-02-28 Kim F. Storm <storm@cua.dk>
771
772 * keyboard.c (kbd_buffer_store_event_hold): New function to store
773 an event into kbd fifo, but with special handling of quit event;
774 a quit event is saved for later, and further events are discarded
775 until the saved quit event has been processed.
776 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
777 (gen_help_event): Store help event in kbd fifo.
778 (NREAD_INPUT_EVENTS): Remove.
779 (read_avail_input): Adapt to new read_socket_hook interface.
780 Remove allocation and initialization of local input_event buffer,
781 as read_socket_hook stores events directly in fifo. Allocate and
782 initialize local hold_quit event to handle postponed quit event
783 (and store it if set by kbd_buffer_store_event_hold).
784
785 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
786 (gen_help_event): Fix prototype.
787
a64387ee 788 * macterm.c (XTread_socket): Remove bufp_r and
3e0c6482
KS
789 numcharsp args. Add hold_quit arg.
790 Rework to use just one, local, inev input_event. Store inev
791 directly in fifo using kbd_buffer_store_event_hold.
792
793 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
794 (read_input_waiting): Adapt to new read_socket_hook interface.
795 Remove allocation and initialization of local input_event buffer,
796 as read_socket_hook stores events directly in fifo. Allocate and
797 initialize local hold_quit event to handle postponed quit event
798 (and store it if set by kbd_buffer_store_event_hold).
799
a64387ee 800 * term.c (read_socket_hook): Fix arg list.
3e0c6482
KS
801
802 * termhooks.h (read_socket_hook): Fix prototype.
803
804 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
805 numcharsp args. Add hold_quit arg.
806 Rework to use just one, local, inev input_event. Store inev
807 directly in fifo using kbd_buffer_store_event_hold.
808
809 * w32inevt.h (w32_console_mouse_position): Fix prototype.
810
811 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
812 Add hold_quit arg. Rework to use just one, local, inev
813 input_event. Store inev directly in fifo using
814 kbd_buffer_store_event_hold. Update count in one place.
815 Postpone call to gen_help_event until inev is stored; use new
816 local do_help for this.
817 Remove local emacs_event in handing of ButtonPress event; just use
818 inev instead (so no reason to copy it later).
819
820 * xsmfns.c (x_session_check_input): Remove numchars arg.
821
d8d95bc7
SM
822 * xterm.c (x_focus_changed, x_detect_focus_change):
823 Remove numchars arg. Always store event into bufp arg.
824 Return nothing. Callers changed accordingly.
3e0c6482
KS
825 (glyph_rect): Simplify.
826 (STORE_KEYSYM_FOR_DEBUG): New macro.
827 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
828 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
829 (current_hold_quit) [USE_GTK]: Add.
830 (event_handler_gdk): Adapt to new handle_one_xevent.
831 (handle_one_xevent): 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 Simplify handling of keysyms (consolidate common code). Fix bug
838 where count was updated with nchars instead of nbytes.
839 Remove local emacs_event in handing of ButtonPress event; just use
840 inev instead (so no reason to copy it later).
841 Remove `out' label. Rename label `ret' to `done'; add various
842 `goto done' to clarify code flow in deeply nested blocks.
843 (x_dispatch_event): Simplify as handle_one_xevent now calls
844 kbd_buffer_store_event itself.
845 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
846 arg. Call handle_one_xevent with new arglist. Store event from
847 x_session_check_input in fifo.
848 [USE_GTK]: Setup current_hold_quit.
849 Decrement handling_signal before unblocking input.
850 (x_initialize) [USE_GTK]: Initialize current_count.
851
852 * xterm.h (x_session_check_input): Fix prototype.
853
e3564461 8542004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
a64387ee 855
d8d95bc7 856 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
a64387ee 857
e3564461
ST
858 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
859 macgui.h).
a64387ee 860
e3564461 861 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
a64387ee 862
e3564461
ST
863 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
864 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
865 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
866 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
867 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
868 (Bitmap): Remove typedef.
869 (Pixmap): Change int to GWorldPtr.
870
d8d95bc7 871 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
a64387ee 872
d8d95bc7
SM
873 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
874 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
875 New #define to extract 16-bit depth color components from unsigned
e3564461
ST
876 long representation.
877 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
878 colors used for masks.
879 (struct mac_display_info): Add color_p. Remove n_cbits.
a64387ee 880
e3564461
ST
881 * macfns.c: Include sys/types.h and sys/stat.h.
882 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
883 Include QuickTime/QuickTime.h.
884 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
885 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
886 functions defined in macterm.c.
887 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
888 (ZPixmap): New #define for compatibility with xfns.c.
889 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
890 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
d8d95bc7
SM
891 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
892 New functions.
e3564461 893 (four_corners_best, x_create_x_image_and_pixmap)
d8d95bc7
SM
894 (x_destroy_x_image, unwind_create_frame, x_disable_image)
895 (x_edge_detection, init_color_table, colors_in_color_table)
e3564461
ST
896 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
897 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
898 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
899 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
900 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
901 long mixup.
902 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
903 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
904 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
905 (x_set_cursor_type, Fxw_color_values, valid_image_p)
906 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
907 (x_alloc_image_color, clear_image_cache, lookup_image)
908 (x_find_image_file, xbm_read_bitmap_file_data)
909 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
910 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
911 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
912 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
913 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
d8d95bc7 914 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
e3564461
ST
915 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
916 #if 0.
917 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
918 #if 0. Free white_relief.gc and black_relief.gc.
d8d95bc7
SM
919 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
920 New functions (from xfns.c).
e3564461
ST
921 (Fx_create_frame): Record unwind_create_frame.
922 (Fxw_display_color_p): Use dpyinfo->color_p.
923 (Fx_display_grayscale_p, Fx_display_planes): Don't use
924 dpyinfo->n_cbits.
925 (Fx_display_color_cells): Use dpyinfo->n_planes;
926 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
927 (Qheuristic, cross_disabled_images, emboss_matrix)
928 (laplace_matrix): New variables (from xfns.c).
929 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
930 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
931 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
d8d95bc7
SM
932 (image_background_transparent): New function (from xfns.c).
933 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
934 (image_load_quicktime): Add declaration.
935 [MAC_OSX] (image_load_quartz2d): Likewise.
936 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
937 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
d8d95bc7 938 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
e3564461
ST
939 (xbm_load_image_from_file, x_laplace_read_row)
940 (x_laplace_write_row, pbm_read_file): Remove functions.
941 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
942 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
943 (colors_in_color_table): Sync with xfns.c (although not used).
944 (lookup_rgb_color): Don't lookup color table. Just do gamma
945 correction.
946 (COLOR_INTENSITY): New #define (from xfns.c).
d8d95bc7
SM
947 (x_disable_image): New function (from xfns.c).
948 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
949 (x_build_heuristic_mask): Sync with xfns.c.
950 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
951 (HAVE_PBM): Remove #ifdef.
952 (pbm_load): Sync with xfns.c. Set img->width and img->height
953 before IMAGE_BACKGROUND.
d8d95bc7 954 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
e3564461
ST
955 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
956 Don't enclose with #if HAVE_PNG.
957 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
d8d95bc7
SM
958 symbol _CGImageCreateWithPNGDataProvider is defined.
959 Otherwise use image_load_quicktime.
e3564461 960 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
d8d95bc7
SM
961 [HAVE_PNG] (png_load): Sync with xfns.c.
962 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
963 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
964 HAVE_JPEG.
965 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
966 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
967 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
968 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
969 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
970 (tiff_image_p, tiff_load): Don't enclose declarations with #if
971 HAVE_TIFF.
972 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
973 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
974 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
d8d95bc7
SM
975 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
976 New functions (from xfns.c).
e3564461 977 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
d8d95bc7 978 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
e3564461
ST
979 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
980 Don't enclose with #if HAVE_GIF.
981 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
982 animated gif. Otherwise use image_load_quicktime.
983 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
984 gif_DrawText to avoid conflict with QuickdrawText.h.
985 [HAVE_GIF] (gif_load): Sync with xfns.c.
986 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
987 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
988 Ghostscript is not supported yet).
989 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
990 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
991 cross_disabled_images (from xfns.c). Remove #if 0 for supported
992 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
993 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
994 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
d8d95bc7
SM
995 HAVE_PNG. Call EnterMovies to support animated gifs.
996 Call init_image_func_pointer to bind a symbol
e3564461 997 _CGImageCreateWithPNGDataProvider if it is defined.
a64387ee 998
d8d95bc7 999 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
e3564461
ST
1000 (x_draw_bar_cursor): Sync declaration with xterm.c.
1001 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
1002 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
1003 graphics).
1004 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
1005 (mac_draw_line_to_pixmap, XCreatePixmap)
1006 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
d8d95bc7
SM
1007 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
1008 New functions.
1009 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
1010 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
1011 Cast bits to char *.
e3564461
ST
1012 (reflect_byte): New function (from w32fns.c).
1013 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
1014 due to byte alignment.
d8d95bc7
SM
1015 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
1016 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
e3564461
ST
1017 (XSetForeground): Remove static (now used in macfns.c).
1018 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
1019 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
1020 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
1021 (x_draw_glyph_string_box, x_draw_image_foreground)
1022 (x_draw_image_foreground_1, x_draw_image_glyph_string)
1023 (x_draw_stretch_glyph_string, x_draw_glyph_string)
1024 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
1025 Sync with xterm.c.
1026 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
1027 than the xterm.c version when a strictly horizontal or vertical
1028 line is drawn.
1029 (XTset_terminal_window): Add static.
1030 (x_make_frame_visible): Add UNBLOCK_INPUT.
1031 (x_free_frame_resources): New funcion (from xterm.c).
1032 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
1033 occurs in tool bar area.
d8d95bc7
SM
1034 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
1035 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
e3564461
ST
1036 Initialize image cache.
1037 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
1038 Enclose unused functions with #if 0.
1039 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
1040 (decode_mac_font_name): New function to apply code conversions
d8d95bc7 1041 from a mac font name to an XLFD font name according to its script code.
e3564461 1042 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
d8d95bc7 1043 font name to a mac font name according to REGISTRY and ENCODING fields.
e3564461
ST
1044 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
1045 whose name starts with `.'.
1046 (init_font_name_table): Use decode_mac_font_name. Add both
1047 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
1048 of a font is smJapanese.
1049 (mac_do_list_fonts): New function to list fonts that match a given
1050 pattern.
1051 (x_list_fonts, XLoadQueryFont): Use it.
1052 (XLoadQueryFont): Set rbearing field for each variable width
1053 character to avoid needless redraw.
1054 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
1055
446f5f3d
KS
10562004-02-26 Kim F. Storm <storm@cua.dk>
1057
af617d0f
KS
1058 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
1059 as read_socket_hook handler on X aborts if buffer is too small
1060 and W32 handler doesn't always check buffer limit.
1061
446f5f3d
KS
1062 * xdisp.c (handle_single_display_prop): Handle left-fringe and
1063 right-fringe similar to a display margin image. Specifically,
1064 the characters having the fringe prop are no longer shown, and
1065 we use IT_IMAGE/next_element_from_image with image_id = -1 to
1066 do this. Set fringe bitmap face_id in it->face_id.
1067 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
1068 still realize it->face (i.e. the fringe bitmap face).
1069
7d8a0b55
MB
10702004-02-25 Miles Bader <miles@gnu.org>
1071
1072 * xdisp.c (check_it): Check string/string_pos consistency.
1073 (init_iterator): Initialize string-related fields properly.
1074
10752004-02-11 Miles Bader <miles@gnu.org>
1076
1077 * xdisp.c (produce_image_glyph): Force negative descents to zero.
1078
10792004-02-10 Miles Bader <miles@gnu.org>
1080
1081 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
1082 BLOCK_INPUT can be nested, so it doesn't make much sense.
1083
a64387ee 10842004-02-24 Michael Mauger <mmaug@yahoo.com>
ce35edd1
JR
1085
1086 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
1087 (xbm_read_bitmap_data): Use unsigned char for image data.
1088
92f5fba2
LT
10892004-02-23 Luc Teirlinck <teirllm@auburn.edu>
1090
1091 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
1092
8565fb3d
JR
10932004-02-22 Jason Rumney <jasonr@gnu.org>
1094
1095 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
1096 correctly over other bitmaps.
1097
a6eeaa81 10982004-02-21 Eli Zaretskii <eliz@gnu.org>
f8125c39
EZ
1099
1100 * emacs.c (USAGE1): Split into two halves.
1101 (USAGE2): Second half of the old USAGE1.
d8d95bc7
SM
1102 (USAGE3): Rename from USAGE2.
1103 (USAGE4): Rename from USAGE3.
f8125c39 1104
4effffca
EZ
11052004-02-21 Juri Linkov <juri@jurta.org>
1106
1107 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
1108 Fix --multibyte. Move --help, --version to USAGE2. Add alias
1109 --file. Fix -f, -l. Sort options. Untabify.
1110 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
1111
923c1e6f
LT
11122004-02-19 Luc Teirlinck <teirllm@auburn.edu>
1113
1114 * category.c (Fdefine_category, Fcategory_docstring)
1115 (Fget_unused_category, Fset_category_table)
1116 (Fcategory_set_mnemonics): Doc fixes.
1117
b0e225fd
KS
11182004-02-20 Kim F. Storm <storm@cua.dk>
1119
1120 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
1121 The following changes are relative to the 2004-01-21 revision.
1122 (NREAD_INPUT_EVENTS): Define as max number of input events to read
1123 in one call to read_socket_hook. Value is 8.
1124 (read_avail_input): Separate and rework handling of read_socket_hook
1125 and non-read_socket_hook cases. Use smaller input_event buffer
d8d95bc7
SM
1126 in read_socket_hook case, and repeat if full buffer is read.
1127 Use new local variable 'discard' to skip input after C-g.
b0e225fd
KS
1128 In non-read_socket_hook case, just use a single input_event, and
1129 call kbd_buffer_store_event on the fly for each character.
1130
b15aa9f9
SM
11312004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
1132
1133 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
1134 Remove unused `gu' alternative.
1135
83c9aa95
AS
11362004-02-19 Andreas Schwab <schwab@suse.de>
1137
1138 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
1139 warning.
1140
cc808173
KS
11412004-02-18 Kim F. Storm <storm@cua.dk>
1142
1143 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
1144 Fix last change.
1145
ab90a54d
KS
11462004-02-17 Kim F. Storm <storm@cua.dk>
1147
b26f249f
KS
1148 * xdisp.c (fast_find_position): Fix return value of new version;
1149 it was inverted compared to the 21.1 version.
1150 (get_window_cursor_type): Don't look at glyph if NULL.
1151 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 1152
ab90a54d
KS
1153 * keyboard.c: Rework previous change; it didn't consider that the
1154 buf array was allocated on the stack.
1155 (prev_read): Remove variable.
1156 (read_avail_input_buf): New static event buffer array.
b9568dfc 1157 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 1158 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
1159 Use in_read_avail_input to handle re-entrance; when re-entered,
1160 fully initialize and use tmp_buf array instead of read_avail_input_buf.
1161 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
1162 is always cleared on entry. To ensure that, we clear (just) the
1163 entries that were used before we return.
1164 (init_keyboard): Initialize read_avail_input_buf here.
1165
4e039f3f
EZ
11662004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change)
1167
1168 * cmds.c (Fend_of_line): Doc fix.
1169
7b5368c1
EZ
11702004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
1171
1172 * keyboard.c (prev_read): New static variable.
1173 (read_avail_input): Use it to zero out only those slots in buf[]
1174 that were used last time we were called.
1175
a6eeaa81 11762004-02-16 Eli Zaretskii <eliz@gnu.org>
ca4bc494
EZ
1177
1178 * Makefile.in (obj): Move fringe.o from here...
1179 (XOBJ, MAC_OBJ): ...to here.
1180
159c348e
SE
11812004-02-16 Stephen Eglen <stephen@gnu.org>
1182
1183 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
1184
d2f14999
SM
11852004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
1186
b15aa9f9
SM
1187 * data.c (Fbyteorder):
1188 * fringe.c (Fdefine_fringe_bitmap):
1189 * xdisp.c (handle_single_display_prop):
d2f14999
SM
1190 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
1191
8d50508a
JR
11922004-02-16 Jason Rumney <jasonr@gnu.org>
1193
1194 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
1195
dd4497dc
ST
11962004-02-15 Steven Tamm <steventamm@mac.com>
1197
1198 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
1199 controlling emulation of a three button mouse with option and
1200 command keys.
1201 (Qreverse, mac_get_enumlated_btn): Handle the emulation
b15aa9f9 1202 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
dd4497dc 1203
c9159cb3
KS
12042004-02-15 Kim F. Storm <storm@cua.dk>
1205
2cc52658
KS
1206 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
1207
c9159cb3
KS
1208 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
1209 Perform byte-swapping.
1210
12fde2dc
KS
12112004-02-14 Kim F. Storm <storm@cua.dk>
1212
1213 * dispextern.h (struct draw_fringe_bitmap_params): Change member
1214 bits from char to short to facilitate wider bitmaps.
1215 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
1216 member.
1217
1218 * fringe.c (struct fringe_bitmap): Change member bits from char to
1219 short to facilitate 16 bits wide bitmaps. Modify all standard
1220 bitmaps accordingly.
1221 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
1222 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
1223 (draw_fringe_bitmap): Ditto.
1224 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
1225 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
1226 handle up to 16 bits wide bitmaps.
1227 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 1228 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
1229
1230 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
1231 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
1232 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
1233
1234 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
1235 so it is no longer necessary to expand them here.
1236
1237 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
1238
9d7271e8
KS
12392004-02-12 Kim F. Storm <storm@cua.dk>
1240
1241 * window.c (Fwindow_fringes): Doc fix.
1242
706c1e4f
JD
12432004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1244
1245 * xselect.c (x_get_foreign_selection): Add new optional parameter
1246 time_stamp.
1247 (Fx_get_selection_internal): Ditto, pass time_stamp to
1248 x_get_foreign_selection.
1249
1250 * data.c (Fbyteorder): New function.
1251
c2d12b5d
JD
12522004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1253
1254 * atimer.c: Move include stdio.h to same place as in other files.
1255
1256 * region-cache.c: Ditto.
1257
1258 * sysdep.c: Ditto.
1259
1260 * xfaces.c: Ditto.
1261
4c1947b9
SS
12622004-02-09 Sam Steingold <sds@gnu.org>
1263
1264 * w32term.c (w32_draw_fringe_bitmap): Fixed a typo in the last patch.
1265
82722af3
KS
12662004-02-09 Kim F. Storm <storm@cua.dk>
1267
1268 * fringe.c: New file. Move original fringe related declarations
1269 and code from dispextern.h and xdisp.c here.
1270 Rework code to support user defined fringe bitmaps, redefining
1271 standard bitmaps, ability to overlay user defined bitmap with
1272 overlay arrow bitmap, and add faces to bitmaps.
1273 (Voverflow_newline_into_fringe): Declare here.
1274 (enum fringe_bitmap_align): New enum.
1275 (..._bits): All bitmaps are now defined without bitswapping; that
1276 is now done in init_fringe_once (if necessary).
1277 (standard_bitmaps): New array with specifications for the
1278 standard fringe bitmaps.
1279 (fringe_faces): New array.
1280 (valid_fringe_bitmap_id_p): New function.
1281 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
1282 (draw_fringe_bitmap): New function which draws fringe bitmap,
1283 possibly overlaying bitmap with cursor in right fringe or the
1284 overlay arrow in the left fringe.
1285 (update_window_fringes): Do not handle overlay arrow here.
1286 Compare and copy fringe bitmap faces.
1287 (init_fringe_bitmap): New function.
1288 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
1289 define and destroy user defined fringe bitmaps.
1290 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
1291 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
1292 (syms_of_fringe): New function. Defsubr new DEFUNs.
1293 DEFVAR_LISP Voverflow_newline_into_fringe.
1294 (init_fringe_once, init_fringe): New functions.
1295 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 1296
82722af3
KS
1297 * Makefile.in (obj): Add fringe.o.
1298 (fringe.o): New dependencies.
1299
1300 * dispextern.h (FRINGE_ID_BITS): New definition for number of
1301 bits allocated to hold a fringe number. Increase number of bits
1302 from 4 to 8 to allow user defined fringe bitmaps.
1303 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
1304 left_user_fringe_face_id, right_user_fringe_bitmap,
1305 right_user_fringe_face_id.
1306 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
1307 Move to new file fringe.c.
1308 (MAX_FRINGE_BITMAPS): Define here.
1309 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
1310 and overlay_p. Change member which to int.
1311 (struct redisplay_interface): New members define_fringe_bitmap
1312 and destroy_fringe_bitmap.
1313 (valid_fringe_bitmap_id_p): Add prototype.
1314 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
1315
1316 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
1317 arrows.
1318 (update_frame): Do flush_display if force_flush_display_p to
1319 ensure display (specifically fringes) are updated in a timely
1320 manner when resizing the frame by dragging the mouse.
1321 (update_window_line): Update row if overlay arrow changed.
1322 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
1323 or overlay arrow changed.
1324
1325 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
1326 syms_of_fringe, and init_fringe.
1327
1328 * frame.h (struct frame): New member force_flush_display_p.
1329
1330 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
1331 Add prototypes.
1332
a3993cc8 1333 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
a64387ee 1334 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
a3993cc8
KS
1335 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
1336 Use cursor color for displaying cursor in fringe.
82722af3
KS
1337 (x_redisplay_interface): Add null handlers for
1338 define_fringe_bitmap and destroy_fringe_bitmap functions.
1339
1340 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
1341 xterm.c to handle overlayed fringe bitmaps and to use cursor color
1342 for displaying cursor in fringe.
1343 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
1344 specific functions to define and destroy fringe bitmaps in fringe_bmp.
1345 (w32_redisplay_interface): Add them to redisplay_interface.
1346 (w32_term_init): Call w32_init_fringe instead of explicitly
1347 defining fringe bitmaps in fringe_bmp array.
1348 (x_delete_display): Call w32_reset_fringes instead of explicitly
1349 destroying fringe bitmaps in fringe_bmp array.
1350
1351 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
1352 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
1353 (continued_bits, continuation_bits, ov_bits, first_line_bits)
1354 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
1355 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
1356 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
1357 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
1358 Move fringe handling vars and code to new file fringe.c.
1359 (handle_display_prop): Handle left-fringe and right-fringe
1360 display properties; store user fringe bitmaps in iterator.
1361 (move_it_in_display_line_to): Handle cursor in fringe at eob.
1362 (clear_garbaged_frames): Set force_flush_display_p if resized.
1363 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
1364 (display_line): Handle cursor in fringe at eob.
1365 (display_line): Set row user fringe bitmaps from iterator.
1366
1367 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
1368 Use cursor color for displaying cursor in fringe.
1369 (x_redisplay_interface): Add null handlers for
1370 define_fringe_bitmap and destroy_fringe_bitmap functions.
1371
030400eb
JD
13722004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1373
1374 * macfns.c (Fx_change_window_property): Make doc string and
1375 parameters same as for X version.
1376
1377 * w32fns.c (Fx_change_window_property): Ditto.
1378
3af55251
KS
13792004-02-07 Kim F. Storm <storm@cua.dk>
1380
ec110e9e
KS
1381 * xdisp.c (hscroll_window_tree): Position cursor near to right
1382 margin in hscrolled window when jumping to end of line (rather
1383 than centering cursor).
1384
3af55251
KS
1385 * process.c (wait_reading_process_input): Don't do adaptive read
1386 buffering if waiting for a specific process.
1387
b0c138ce
LT
13882004-02-05 Luc Teirlinck <teirllm@auburn.edu>
1389
1390 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
1391 (Fread_minibuffer, Feval_minibuffer)
1392 (Fread_string, Fread_no_blanks_input)
1393 (Fcompleting_read): Doc fixes.
1394 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
1395 completion-regexp-list. Define Qcase_fold_search and staticpro it.
1396 (read_minibuf): Fix initial comment.
1397 (Ftry_completion, Fall_completions, Ftest_completion): Bind
1398 case-fold-serach to the value of completion-ignore-case when
1399 checking completion-regexp-list.
1400 (Fdisplay_completion_list): Make it handle arguments that are
1401 symbols. Doc fix.
1402
9676f5ad 14032004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 1404
9676f5ad 1405 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 1406
9676f5ad
JD
1407 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
1408 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 1409 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 1410 format. Remove unused variable cons.
5b698285
JD
1411
1412 * xselect.c: Include stdio,h.
1413
fc1d15f6
KH
14142004-02-05 Kenichi Handa <handa@m17n.org>
1415
ebaff4af
KH
1416 * fns.c (Fset_char_table_range): Fix previous change.
1417
fc1d15f6
KH
1418 * buffer.c (Fset_buffer_multibyte): Fix docstring.
1419
9676f5ad
JD
14202004-02-04 Luc Teirlinck <teirllm@auburn.edu>
1421
1422 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
1423
da75761f
SM
14242004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
1425
1426 * keymap.c (Vmouse_events): Rename from Vmenu_events.
1427 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
1428
13c5d120
KH
14292004-02-04 Kenichi Handa <handa@m17n.org>
1430
1431 * fns.c (Fset_char_table_range): Handle charsets ascii,
1432 eight-bit-control, and eight-bit-graphic correctly.
1433
2883d842
JR
14342004-02-03 Jason Rumney <jasonr@gnu.org>
1435
1436 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
1437
1438 * w32fns.c (x_to_w32_font): Likewise.
1439
69eff41f
JD
14402004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1441
1442 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
1443 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
1444
1445 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
1446 ClientMessages.
1447
1448 * xselect.c: Include termhooks.h and X11/Xproto.h
1449 (x_check_property_data, x_fill_property_data)
1450 (x_property_data_to_lisp, mouse_position_for_drop)
1451 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 1452 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
1453 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
1454
da75761f 1455 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
1456 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
1457 OUTER_P.
1458 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
1459 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
1460 if vector_ret_p is true.
1461 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 1462
a6eeaa81 14632004-02-02 Eli Zaretskii <eliz@gnu.org>
dcdbbb5d
EZ
1464
1465 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
1466 basename of FILE relative to it, not FILE itself.
1467
09721b31
KH
14682004-02-02 Kenichi Handa <handa@m17n.org>
1469
1470 * coding.c (coding_restore_composition): Check invalid
1471 composition data more rigidly.
1472
eb996101
LT
14732004-01-30 Luc Teirlinck <teirllm@auburn.edu>
1474
1475 * fileio.c (Fread_file_name_internal): Correctly handle the case
1476 where insert-default-directory is nil.
1477 (Fread_file_name): Always return an empty string if the user exits
1478 with an empty minibuffer. Adapt the docstring accordingly.
1479 (syms_of_fileio): Adapt the docstring of insert-default-directory
1480 to the change in Fread_file_name.
1481
a6eeaa81 14822004-01-29 Eli Zaretskii <eliz@gnu.org>
a0367d42
EZ
1483
1484 * alloca.c [!alloca]: Fix the prototype for xfree.
1485
13f52ed8
KH
14862004-01-29 Kenichi Handa <handa@m17n.org>
1487
1488 * fns.c (string_char_to_byte): Optimize for ASCII only string.
1489 (string_byte_to_char): Likewise.
1490
d57625a0
JR
14912004-01-28 Peter Runestig <peter@runestig.com>
1492
1493 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
1494
a64387ee 14952004-01-27 Steven Tamm <steventamm@mac.com>
911c78b4
ST
1496
1497 * unexmacosx.c (unexec_copy): Do not copy more than was
1498 requested to prevent overwriting during unexec.
1499
eb37b8fd
JD
15002004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1501
ce38070a
JD
1502 * process.c (sigchld_handler): Add comment about not calling malloc.
1503
eb37b8fd
JD
1504 * process.h: Add extern to synch_process_termsig.
1505
a64387ee 15062004-01-27 Steven Tamm <steventamm@mac.com>
21a3e657 1507
da75761f
SM
1508 * macterm.c (make_mac_frame, make_mac_terminal_frame):
1509 Move setting of scroll bars from make_mac_frame to
1510 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 1511
d62a265d
RS
15122004-01-26 Richard M. Stallman <rms@gnu.org>
1513
1514 * search.c (Freplace_match): Handle nonexistent
1515 back-references properly.
1516
15172004-01-03 Richard M. Stallman <rms@gnu.org>
1518
1519 * window.c (decode_any_window): New function.
1520 (Fwindow_height, Fwindow_width, Fwindow_edges)
1521 (Fwindow_pixel_edges, Fwindow_inside_edges)
1522 (Fwindow_inside_pixel_edges): Use decode_any_window.
1523
ff236419
JD
15242004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1525
1526 * process.h: synch_process_termsig new variable.
1527
1528 * callproc.c: Define synch_process_termsig.
1529 (Fcall_process): Initiate synch_process_termsig to zero and
1530 check if non-zero and get signal name after subprocess has ended.
1531
1532 * process.c (sigchld_handler): Set synch_process_termsig
1533 if terminated by a signal. synch_process_death setting removed.
1534
1535 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
1536
41b867ea
AS
15372004-01-26 Andreas Schwab <schwab@suse.de>
1538
1539 * print.c (print_preprocess): Declare size as EMACS_INT to not
1540 lose bits.
1541 (print_object): Likewise.
1542 * alloc.c (Fpurecopy): Likewise.
1543
a08084ff
LT
15442004-01-25 Luc Teirlinck <teirllm@auburn.edu>
1545
1546 * window.c (Fwindow_minibuffer_p): Doc fix.
1547
b19ac475
JY
15482004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
1549
1550 * editfns.c (Fformat): Make both passes accept the same set of flags.
1551
fe905025
KH
15522004-01-23 Kenichi Handa <handa@m17n.org>
1553
1554 * fns.c (Fmd5): If OBJECT is a buffer different from the current
1555 one, set buffer to OBJECT temporarily.
1556
438fc6c0
SM
15572004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
1558
455316e2
SM
1559 * keyboard.c (kbd_buffer_gcpro): Remove.
1560 (kbd_buffer_store_event, clear_event, Fdiscard_input)
1561 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
1562 Don't initialize and/or maintain the variable any more. It was made
1563 redundant by my commit of 2003-06-15.
1564
438fc6c0
SM
1565 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
1566
5335a4ee
JD
15672004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1568
1569 * lisp.h: Add undef DECL_ALIGN.
1570
dcdaeebc
SM
15712004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
1572
1573 * process.c (wait_reading_process_input) [SYNC_INPUT]:
1574 Check interrupt_input_pending explicitly.
1575
1576 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
1577
1578 * keyboard.c (handle_async_input): New fun,
1579 extracted from input_available_signal.
1580 (input_available_signal, reinvoke_input_signal): Use it.
1581
9076a823
SM
15822004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
1583
d7107586
SM
1584 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
1585
1586 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
1587 manipulation macros for when tags are in the lower bits.
1588 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
1589 (DECL_ALIGN): New macro.
1590 (DEFUN): Use it.
1591
1592 * lisp.h [ENABLE_CHECKING]: Don't force union type.
1593
1594 * s/darwin.h (__attribute__): Remove outdated workaround.
1595
1596 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
1597
1598 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
1599 Don't check range of malloc address.
1600 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
1601
9076a823
SM
1602 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
1603
1604 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
1605
ba029065
KH
16062004-01-19 Kenichi Handa <handa@m17n.org>
1607
1608 * fontset.c (fontset_font_pattern): Fix previous change.
1609
7af0e8d7
MB
16102004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
1611
1612 * xdisp.c (Voverflow_newline_into_fringe)
1613 (move_it_in_display_line_to, redisplay_internal)
1614 (update_window_fringes, redisplay_window, display_line, window):
1615 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
1616 that it compiles without a window-system.
1617 * dispnew.c (direct_output_for_insert, update_window): Likewise.
1618
77a9cf69
KS
16192004-01-16 Kim F. Storm <storm@cua.dk>
1620
1621 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
1622
a64387ee 1623 * buffer.c (init_buffer_once): Set buffer_defaults and
77a9cf69
KS
1624 buffer_local_flags for indicate_buffer_boundaries.
1625 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
1626 default- variable for it.
1627
1628 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
1629 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 1630 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
1631 overflowing newlines into right fringe.
1632 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
1633 and indicate_bottom_line_p for buffer boundaries and scrolling.
1634 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
1635 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
1636 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
1637 and HOLLOW_SQUARE_BITMAP.
1638 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
1639 Add prototypes.
1640
1641 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
1642 instead of related indicator fields.
1643 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
1644 (direct_output_for_insert): Handle exact width lines like
1645 contined lines. Call update_window_fringes.
1646 (update_window): Call update_window_fringes.
1647 (scrolling_window): Don't skip desired rows with changed bitmaps.
1648 Check if fringe bitmaps changes when assigning scrolled rows.
1649
1650 * xdisp.c (Voverflow_newline_into_fringe): New variable.
1651 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
1652 (move_it_in_display_line_to): Overflow newline into fringe for
1653 rows that are exactly as wide as the window.
1654 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
1655 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
1656 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
1657 (fringe_bitmaps): Add new bitmaps.
1658 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
1659 Select proper bitmap for cursor in fringe when appropriate.
1660 Handle alignment of bitmap to top or bottom of row.
1661 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
1662 done by update_window_fringes.
1663 (update_window_fringes, draw_window_fringes): New functions.
1664 (redisplay_internal): Call update_window_fringes in case only
1665 cursor row is updated.
1666 (redisplay_window): Call update_window_fringes.
1667 Explicitly call draw_window_fringes if redisplay was done using
1668 the current matrix or the overlay arrow is in the window.
1669 (try_window_reusing_current_matrix): Mark scrolled rows for
1670 fringe update (to update buffer-boundaries / scrolling icons).
1671 (find_last_unchanged_at_beg_row): Handle exact width lines line
1672 continued lines.
1673 (display_line): Overflow newline into fringe for rows that are
1674 exactly as wide as the window. Don't append space for newline
d7107586 1675 in this case.
77a9cf69
KS
1676 (notice_overwritten_cursor): Explicitly clear cursor bitmap
1677 in fringe as if it had been overwritten.
1678 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 1679 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
1680 void-text-area-pointer as user options.
1681 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 1682
77a9cf69
KS
1683 * xterm.c (x_update_window_end): Call draw_window_fringes.
1684 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
1685 in row instead of actually drawing fringe bitmaps.
1686 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
1687 (x_draw_window_cursor): Draw cursor in fringe.
1688
1689 * w32term.c (x_update_window_end): Call draw_window_fringes.
1690 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
1691 in row instead of actually drawing fringe bitmaps.
1692 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
1693 (w32_draw_window_cursor): Draw cursor in fringe.
1694
1695 * macterm.c (x_update_window_end): Call draw_window_fringes.
1696 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
1697 in row instead of actually drawing fringe bitmaps.
1698 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
1699 (mac_draw_window_cursor): Draw cursor in fringe.
1700
a633a954
JD
17012004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1702
1703 * xterm.c (handle_one_xevent): Don't handle characters that are part
1704 of an old style (XLookupString) compose sequence.
1705
80460525
KH
17062004-01-15 Kenichi Handa <handa@m17n.org>
1707
1708 * search.c (Freplace_match): Use make_multibyte_string or
1709 make_unibyte_string according to the buffer multibyteness.
1710
7fc34f85
SM
17112004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
1712
1713 * alloc.c (struct interval_block, struct string_block)
1714 (struct symbol_block, struct marker_block, live_string_p)
1715 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
1716 Better preserve alignment for objects in blocks.
1717 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
1718
1719 * lread.c (defvar_per_buffer): Remove dead declaration.
1720
1721 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
1722 space size.
1723
66070bd1
JD
17242004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1725
1726 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
1727 if a key press should pop down. Only pop down if a key is pressed
1728 outside the menu/dialog.
1729 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
1730 popup_get_selection.
1731 (create_and_show_dialog): Pass 1 for down_on_keypress to
1732 popup_get_selection.
1733
de7515d6
JD
17342004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1735
1736 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
1737 BLOCK/UNBLOCK_INPUT.
1738
160b1b50
JD
17392004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1740
1741 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
1742 specified.
1743
3a9f36e6
KH
17442004-01-08 Kenichi Handa <handa@m17n.org>
1745
1746 * editfns.c (Fformat): Fix '&' to '&&'.
1747
3803eb32
AS
17482004-01-08 Andreas Schwab <schwab@suse.de>
1749
1750 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
1751 size if PSEUDOVECTOR_FLAG is set.
1752
9da88f37
KH
17532004-01-07 Kenichi Handa <handa@m17n.org>
1754
74ac5074
KH
1755 * charset.c (Fdeclare_equiv_charset): Fix docstring.
1756
9da88f37
KH
1757 * fontset.c (fontset_ref_via_base): Fix previous change.
1758
05faee07
KS
17592004-01-07 Kim F. Storm <storm@cua.dk>
1760
1761 * process.c (read_process_output): Only activate adaptive
1762 buffering if we read less than 256 bytes at a time.
1763
634910c8
KS
17642004-01-06 Kim F. Storm <storm@cua.dk>
1765
1766 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
1767 object and image object. Return glyph width and height.
1768 (mode_line_string, marginal_area_string): Ditto.
1769
1770 * dispextern.h (buffer_posn_from_coords, mode_line_string)
1771 (marginal_area_string): Fix prototypes.
1772
1773 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
1774 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
1775 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
1776
1777 * keyboard.c (make_lispy_position): Use modified mode_line_string,
1778 buffer_posn_from_coords, and marginal_area_string functions to
1779 include both string object and image object in the lispy position.
1780 Also add actual glyph width and height to position.
1781 (read_key_sequence): Use real buffer position from mouse
1782 event to find keymap property even when click is in marginal area.
1783
1784 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
1785 mode_line_string and marginal_area_string functions to handle
1786 both string object and image object properties.
d7107586 1787
57951c2e
AS
17882004-01-06 Andreas Schwab <schwab@suse.de>
1789
1790 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
1791 character.
1792
181e6a61
AS
17932004-01-02 Andreas Schwab <schwab@suse.de>
1794
d7107586
SM
1795 * macterm.c (emacs_options, x_initialized, same_x_server):
1796 Remove unused (and duplicated) definitions.
181e6a61 1797
31e0fbdd
KS
17982004-01-02 Kim F. Storm <storm@cua.dk>
1799
1800 * process.h (struct Lisp_Process): New members for adaptive read
1801 buffering: adaptive_read_buffering, read_output_delay, and
1802 read_output_skip.
1803
1804 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
1805 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
1806 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
1807 (process_output_delay_count, process_output_skip): New vars.
1808 (Vprocess_adaptive_read_buffering): New variable.
1809 (make_process): Initialize adaptive read buffering members.
1810 (Fstart_process): Set adaptive_read_buffering member.
1811 (deactivate_process): Cleanup adaptive read buffering.
1812 (wait_reading_process_input): Temporarily omit delayed
1813 subprocesses from the set of file descriptors to read from;
1814 adjust the select timeout if we skipped any subprocesses.
1815 (read_process_output): Increase adaptive read buffering delay if
1816 we read less than a full buffer; reduce delay when we read a
1817 full buffer.
1818 (send_process): Simplify using local Lisp_Process var.
1819 Reset adaptive read buffering delay after write.
1820 (init_process): Initialize process_output_delay_count and
1821 process_output_skip.
1822 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
1823
68c6a789
JR
18242004-01-01 Jason Rumney <jasonr@gnu.org>
1825
d7107586 1826 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 1827
3f70fe82
LT
18282003-12-30 Luc Teirlinck <teirllm@auburn.edu>
1829
1830 * print.c (Ferror_message_string): Add hyperlink in the docstring
1831 to the definition of `signal' in the Elisp manual.
1832 * eval.c (Fsignal): Ditto.
1833
a64387ee 18342003-12-29 James Clark <jjc@jclark.com> (tiny change)
c2be49ed
EZ
1835
1836 * fns.c (internal_equal): Return t for two NaN arguments.
1837
7abd90ea
RS
18382003-12-29 Richard M. Stallman <rms@gnu.org>
1839
1840 * data.c (store_symval_forwarding): Handle setting
1841 default-fill-column, etc., by changing the value in
1842 buffers that use the default.
1843
1844 * minibuf.c (Fset_minibuffer_window): Doc fix.
1845
1846 * fileio.c (choose_write_coding_system): Ignore auto_saving
1847 if using the visited file for auto saves.
1848 (Fwrite_region): Don't update SAVE_MODIFF
1849 if auto-saving in visited file.
1850
3e7cfcdc
KH
18512003-12-29 Kenichi Handa <handa@m17n.org>
1852
1853 * dispextern.h (face_font_available_p): Extern it.
1854
1855 * fontset.c (Voverriding_fontspec_alist): New variable.
1856 (lookup_overriding_fontspec): New function.
d7107586 1857 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
1858 (fontset_font_pattern): Likewise.
1859 (regulalize_fontname): New function.
1860 (Fset_fontset_font): Call regulalize_fontname.
1861 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
1862 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
1863 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
1864
1865 * xfaces.c (face_font_available_p): New function.
1866
7abd90ea
RS
18672003-12-28 Richard M. Stallman <rms@gnu.org>
1868
1869 * buffer.c (Fother_buffer): Don't crash if BUF is nil
1870 or if its name is nil.
1871
1872 * buffer.c (Fkill_buffer): Don't delete auto-save file
1873 if it's the same as the visited file.
1874
de1d1a40
LT
18752003-12-28 Luc Teirlinck <teirllm@auburn.edu>
1876
1877 * coding.c (Fcheck_coding_system): Doc fix.
1878
204fb75e
KS
18792003-12-28 Kim F. Storm <storm@cua.dk>
1880
1881 * Makefile.in (eval.o): Depend on dispextern.h.
1882
1883 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
1884 image glyph using image's ascent.
1885 (mode_line_string): Return image glyph as object clicked on.
1886 Adjust y0 for image glyph using image's ascent.
1887
1888 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
1889 (struct glyph): New members, ascent and descent. Used to save
1890 this glyph's ascent and descent, instead of having.
1891 (struct glyph): Declare member face_id using FACE_ID_BITS.
1892 (find_hot_spot): Add prototype.
1893
1894 * keyboard.c (Qimage): Remove extern (now in lisp.h).
1895 (QCmap): Declare extern.
1896 (make_lispy_position): When position is inside image hot-spot,
1897 use hot-spot element's id as posn element.
1898
1899 * lisp.h (IMAGEP): New macro to test for image object type.
1900 (Qimage): Declare extern.
1901
1902 * macfns.c (Qimage): Remove extern (now in lisp.h).
1903 (valid_image_p, parse_image_spec): Use IMAGEP macro.
1904
1905 * macterm.c (Qface, Qmouse_face): Remove unused externs.
1906
1907 * w32fns.c (Qimage): Remove extern (now in lisp.h).
1908 (valid_image_p, parse_image_spec): Use IMAGEP macro.
1909
1910 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
1911
1912 * w32term.c (Qface, Qmouse_face): Remove unused externs.
1913
1914 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
1915 pointer types.
1916 (Qrelative_width, Qalign_to): Remove unused variables.
1917 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
1918 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
1919 image maps.
d7107586 1920 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
1921 new dx and dy args.
1922 Remove buffer_only_p arg (always 0). Simplify code accordingly.
1923 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
1924 than row's ascent and height, to get sensible height on tall rows.
1925 (build_desired_tool_bar_string): Remove Qimage extern.
1926 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
1927 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
1928 image glyph is alone on the last line.
1929 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 1930 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 1931 (on_hot_spot_p): New function to check if position is inside an
d7107586 1932 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
1933 (find_hot_spot): New function to search for image hot-spot.
1934 (Flookup_image_map): New defun to search for image hot-spot.
1935 (define_frame_cursor1): New aux function to determine frame pointer.
1936 (note_mode_line_or_margin_highlight, note_mouse_highlight):
1937 Handle `pointer' text property and :pointer image property to
1938 control frame pointer shape. Detect image hot-spots for pointer
1939 and help_echo properties. Use define_frame_cursor1.
1940 (note_mouse_highlight): Use Vvoid_text_area_pointer.
1941 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
1942 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
1943
1944 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
1945
1946 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
1947 (Qimage): Remove extern (now in lisp.h).
1948 (valid_image_p, parse_image_spec): Use IMAGEP macro.
1949
1950 * xmenu.c (show_help_event): Remove unused code.
1951
1952 * xterm.c (Qface, Qmouse_face): Remove unused externs.
1953 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
1954 row's ascent and descent, to get a sensible height on tall rows.
1955
fc052137
LT
19562003-12-25 Luc Teirlinck <teirllm@auburn.edu>
1957
1958 * minibuf.c (Fcompleting_read): Undo previous change.
1959
a64387ee 19602003-12-25 Lars Hansen <larsh@math.ku.dk>
b9148500
LH
1961
1962 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
1963 Arguments GCPRO'ed in call to file name handler.
1964
56ffd194
TTN
19652003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
1966
1967 * termcap.c (tgetst1): Scan for "%pN"; if all
1968 N are continuous in [1,9], remove all "%pN".
1969
5202d23d
JD
19702003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1971
f26fab36
JD
1972 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
1973
5202d23d
JD
1974 * xfaces.c (lface_fully_specified_p): Take into account that
1975 MAC OS always have unspecified stipple.
1976
8babaa59
TTN
19772003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
1978
1979 * tparam.c (tparam1): Add handling for `%pN', which
1980 means use param N for the next substitution.
1981
2d176448
TTN
19822003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
1983
1984 * xfaces.c (Fcolor_gray_p): Fix omission bug:
1985 In case `frame' is nil, consult the selected frame.
1986 (Fcolor_supported_p): Likewise.
1987
adb0708c
LT
19882003-12-23 Luc Teirlinck <teirllm@auburn.edu>
1989
000eeb15
LT
1990 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
1991 Doc fixes.
0dc72b11
LT
1992
1993 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
1994 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
1995 (Fread_from_minibuffer): Delete code moved into read_minibuf.
1996 Doc fix.
1997 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
1998 read_minibuf.
1999 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 2000 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 2001
2e4d132b
KH
20022003-12-03 Kenichi Handa <handa@m17n.org>
2003
2004 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
2005 encoding sequence.
2006
3999c705
KH
20072003-12-01 Kenichi Handa <handa@m17n.org>
2008
2009 * composite.c (syms_of_composite): Don't make the compostion hash
2010 table week.
2011
d344ecbb
LT
20122003-11-30 Luc Teirlinck <teirllm@auburn.edu>
2013
2014 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
2015 * textprop.c (Fget_char_property_and_overlay): New function.
2016 (syms_of_textprop): Defsubr it.
2017
03d6484e
JD
20182003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2019
019b1f0e
JD
2020 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
2021 to compile on terminal configuration.
2022
03d6484e
JD
2023 * fileio.c (Fread_file_name): Check use_file_dialog also before
2024 calling Fx_file_dialog.
2025
2026 * fns.c: use_file_dialog: New variable.
2027 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
2028
442d3fd0
KS
20292003-11-29 Kim F. Storm <storm@cua.dk>
2030
2031 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
2032 (syms_of_msdos): Don't intern and staticpro them.
2033
0f6a07a8
KS
20342003-11-27 Kim F. Storm <storm@cua.dk>
2035
2036 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
2037 coordinates relative to glyph at posn. If glyph is an image,
2038 return that as object at posn. Callers changed.
2039 (mode_line_string, marginal_area_string): Calculate and return
2040 pixel coordinates relative to glyph. Callers changed.
2041
2042 * dispextern.h (buffer_posn_from_coords, mode_line_string)
2043 (marginal_area_string): Fix prototypes.
2044 (window_box_left_offset, window_box_right_offset): Add prototypes.
2045
2046 * frame.h (get_specified_cursor_type, get_window_cursor_type):
2047 Remove prototypes.
2048
2049 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
2050
2051 * keyboard.c (make_lispy_position): Add x and y coordinates
2052 relative to the current glyph as 7th element of position.
2053 If glyph is an image, return it in the object element.
2054 (read_key_sequence): Skip checks for keymap property in cases
2055 where POSN_STRING is not a string (e.g. an image).
2056
2057 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
2058 (Vshow_text_cursor_in_void): New variable.
2059 (glyph_to_pixel_coords): Don't use negative hpos.
2060 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
2061 (append_stretch_glyph): Change ascent arg to be actual value
2062 in pixels rather than ratio to height. Callers changed.
2063 (calc_pixel_width_or_height): New aux function, implementing
2064 pixel based artihmetic for glyph widths and heights.
2065 (produce_stretch_glyph): Use calc_pixel_width_or_height for
2066 :width, :height, :align-to, and :ascent, thus allowing these to
2067 be specified in pixels as well as multiples of characters.
2068 Don't produce stretch glyphs with zero width or height.
2069 (get_specified_cursor_type): Declare static.
2070 (get_window_cursor_type): Declare static. Add glyph arg to be
2071 able to know when cursor is on an image; always substitute
2072 hollow-box cursor for filled-box cursor on images, to avoid
2073 negative images and flicker when blinking the cursor.
2074 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
2075 (note_mode_line_or_margin_highlight): Use non-text cursor rather
2076 than vertical scroll-bar cursor in display margins.
2077 (note_mouse_highlight): Use non-text cursor rather than text
2078 cursor in fringes and over images in the text area.
2079 Use non-text cursor when mouse pointer is outside editable text,
2080 i.e. in the void after end-of-line or end-of-buffer; this was
2081 already done for W32, but is now standard for all systems --
2082 user can toggle show-text-cursor-in-void to get old behaviour.
2083 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
2084 Vdisplay_pixels_per_inch.
2085
00498bfc
AS
20862003-11-25 Andreas Schwab <schwab@suse.de>
2087
2088 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
2089 EMACS_INT to not lose bits.
2090 (Ffillarray): Don't set bits beyond the size of a bool vector.
2091
edaa824d
KS
20922003-11-25 Kim F. Storm <storm@cua.dk>
2093
2094 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
2095 define this defun on systems that cannot use stderr as lvalue.
2096
74d6f539
GM
20972003-11-24 Gerd Moellmann <gerd@gnu.org>
2098
2099 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
2100 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
2101 ld's default is incompatible with unexec.
2102
6a1ff3ba
KS
21032003-11-23 Kim F. Storm <storm@cua.dk>
2104
63dc7c6b
KS
2105 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
2106 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
2107 (Fforce_window_update): New defun.
2108 (syms_of_window): Defsubr it.
2109 (Fset_window_margins, Fset_window_fringes): Doc fix.
2110
6a1ff3ba
KS
2111 * print.c (Fredirect_debugging_output): New defun.
2112 (syms_of_print): Defsubr it.
2113
aef109b7
LT
21142003-11-22 Luc Teirlinck <teirllm@auburn.edu>
2115
2116 * fns.c (Fset_char_table_parent): Doc fix.
2117
6a1ff3ba 21182003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
2119
2120 * dispnew.c (buffer_posn_from_coords): Return actual row/column
2121 for glyph clicked on, rather than (unused) pixel positions.
2122 (mode_line_string, marginal_area_string): Change X and Y args to
2123 pointers for returning actual row/column for glyph clicked on.
2124 Simplify and optimize loops.
2125
aef109b7
LT
2126 * dispextern.h (mode_line_string, marginal_area_string):
2127 Update prototypes.
63ccbe21
KS
2128
2129 * keyboard.c (make_lispy_position): New function for generating
2130 mouse click positions from frame and pixel coordinates.
2131 Enhanced to return buffer position and actual row/column for
2132 events outside the text area using updated mode_line_string and
2133 marginal_area_string functions.
2134 Return left-fringe and right-fringe clicks as such, rather than
2135 clicks in text area.
2136 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
2137 pixel_to_glyph_coords, as we never use the results.
2138 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
2139 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
2140 Eliminate unused code in WHEEL_EVENT handling.
2141 (make_lispy_movement): Use make_lispy_position.
2142
2143 * window.c (coordinates_in_window): Remove redundant tests.
2144 Fix returned X pixel value for left-margin.
2145
2146 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
2147 mode_line_string and marginal_area_string parameters.
2148
a64387ee 21492003-11-22 Lars Hansen <larsh@math.ku.dk>
930a9995 2150
d7107586
SM
2151 * w32.c (struct the_group, getgrgid): Add.
2152 * mac.c (struct my_group, getgrgid): Add.
aef109b7 2153
3dbf3426
LT
21542003-11-21 Luc Teirlinck <teirllm@auburn.edu>
2155
2156 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
2157
cae8ddbb 21582003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 2159
d7107586
SM
2160 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
2161 include in call to file name handler. Optionally translate numeric
2162 UID and GID to strings. Update docstring.
2163 (directory_files_internal): Add parameter ID-FORMAT.
2164 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
2165 include in call to file name handler and call to
2166 directory_files_internal. Update Docstring.
2167 (Fdirectory_files): Add dummy parameter in call to
2168 directory_files_internal.
2169 * lisp.h (Qinteger): Add.
2170 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
2171 (Ffile_attributes): Add parameter.
2172 * data.c (Qinteger): Export.
cae8ddbb 2173
2550b848
LT
21742003-11-21 Luc Teirlinck <teirllm@auburn.edu>
2175
3dbf3426 2176 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 2177
88380018
KS
21782003-11-19 Kim F. Storm <storm@cua.dk>
2179
2180 * xdisp.c (init_iterator): Initialize it->start to position
2181 before reseating (in case start position is invisible).
2182 (init_to_row_start): Set it->start to row-start.
2183 (redisplay_window): Accept optional_new_start if start position
2184 is invisible (in which case IT_CHARPOS overshoots PT).
2185 (display_line): Setup row->start from it->start (rather than
2186 it->current which is wrong if first char on line is invisible).
2187 When done, reseat it->start to it->current (= start of next row).
2188 (expose_area): Fix exposure of text area when first char (e.g. TAB)
2189 is only partially visible.
2190
2191 * dispextern.h (struct it): New member start.
2192
854c1a59
SM
21932003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
2194
455316e2
SM
2195 * alloc.c (make_float, Fcons): Clear the markbit at init time.
2196 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
2197 of block_index outside of the macro call.
2198 (Fgarbage_collect): Remove null code.
2199
2200 * m/amdx86-64.h: Don't redefine XPNTR.
2201
854c1a59
SM
2202 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
2203 of VALMASK.
2204
2205 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
2206 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
2207 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
2208
2209 * lisp.h (VALMASK): Only define for non-union type.
2210 (MARKBIT): Remove.
2211 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
2212 (XTYPE): Define unconditionally.
2213 (XSETTYPE): Remove one more remnant.
2214 (EQ): Define differently for the union and non-union cases.
2215 (INTMASK): New bit mask.
2216 (struct Lisp_Marker): Move down to prepare for upcoming patch.
2217 (GC_EQ): Delegate to EQ.
2218
2219 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
2220
a0c6ef2d
JD
22212003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2222
2223 * xterm.c (x_window_to_scroll_bar): Move check of display to
2224 where window_id is compared.
2225
859492c4
KS
22262003-11-17 Kim F. Storm <storm@cua.dk>
2227
2228 * dispextern.h (struct it): New member first_vpos.
2229
2230 * xdisp.c (start_display): Set it->first_vpos.
2231 (try_window_id): Use first_vpos to start display in first _text_
2232 line if no reusable lines at start of window with header line.
2233
810f2256
JD
22342003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2235
7c402969 2236 * w32fns.c (XPutPixel):
854c1a59
SM
2237 * w32bdf.c (w32_init_bdf_font):
2238 * sunfns.c (sel_read):
2239 * process.c (Fmake_network_process):
2240 * frame.c (store_frame_param):
2241 * fontset.c (Fset_fontset_font):
2242 * emacs.c (shut_down_emacs):
a64387ee 2243 * ccl.c (ccl_driver): Remove period at end of error message.
7c402969 2244
a32e9bfd
JD
2245 * config.in: Regenerate.
2246
810f2256
JD
2247 * xfns.c (x_window_to_frame, x_any_window_to_frame)
2248 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
2249 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
2250 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
2251 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
2252
2253 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
2254
2255 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
2256 (XTmouse_position, handle_one_xevent): Pass Display* to
2257 x_window_to_scroll_bar.
2258 (x_window_to_scroll_bar): Take a Display* argument.
2259 Check that display for frame is equal to Display* argument.
854c1a59 2260 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
2261 x_display_info_for_display instead. Use Display in xev instead
2262 of GDK_DISPLAY.
2263 (x_dispatch_event): Call x_display_info_for_display.
2264 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
2265 (x_connection_closed): Call xg_display_close for GTK.
2266 (x_term_init): Call xg_display_open for additional displays.
2267 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
2268 for GTK.
2269
2270 * xmenu.c (single_menu_item, mouse_position_for_popup)
2271 (x_activate_menubar): Formatting adjustments.
2272
2273 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
2274 adjustments.
2275
2276 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
2277 (xg_display_close, xg_create_default_cursor)
2278 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
2279 handling.
854c1a59
SM
2280 (xg_left_ptr_cursor): Remove.
2281 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
2282 cursor here.
2283 (xg_win_to_widget): Take Display* argument, call
2284 gdk_xid_table_lookup_for_display.
2285 (xg_create_frame_widgets, xg_get_file_name, create_menus)
2286 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
2287 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
2288 in FRAME_X_DISPLAY_INFO.
2289 (xg_get_scroll_id_for_window): Take Display* argument.
2290 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 2291 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256
JD
2292
2293 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
2294 Display* argument also. Declare xg_display_open,
2295 xg_display_close, xg_create_default_cursor.
2296
0b03cc78
JD
22972003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2298
2299 * xterm.c (x_detect_focus_change): Do not change focus frame for
2300 Enter/LeaveNotify if the current focus frame has explicit focus.
2301
77e688fa
KS
23022003-11-14 Kim F. Storm <storm@cua.dk>
2303
2304 * dispnew.c (update_text_area): Fix redisplay error when hscroll
2305 is active and first glyph is only partially visible.
854c1a59 2306
dd429b03
KH
23072003-11-13 Kenichi Handa <handa@m17n.org>
2308
2309 * xdisp.c (select_frame_for_redisplay): New function.
2310 (redisplay_internal): Record also selected_frame for
2311 unwind_redisplay. Call select_frame_for_redisplay before
2312 redrawing each frame.
2313 (unwind_redisplay): Argument changed to a cons.
2314
6d9266f4
LT
23152003-11-12 Luc Teirlinck <teirllm@auburn.edu>
2316
2317 * fns.c (Fstring_to_multibyte): Doc fix.
2318
80060eb3
KH
23192003-11-11 Kenichi Handa <handa@m17n.org>
2320
2321 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
2322
74305183
JD
23232003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2324
2325 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
2326 program specified positions.
2327
cfda993e
JD
23282003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2329
2330 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
2331
df211069
KH
23322003-11-08 Kenichi Handa <handa@m17n.org>
2333
2334 * Makefile.in (lisp): Add kannada.el.
2335 (shortlisp): Likewise.
2336
4307d534
KH
23372003-11-07 Kenichi Handa <handa@m17n.org>
2338
854c1a59
SM
2339 * coding.c (coding_allocate_composition_data):
2340 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
2341 (coding_restore_composition): Detect invalid composition data.
2342 Give Fstring and Fvector a Lispy integer, not C int.
2343
854c1a59
SM
23442003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
2345
2346 * floatfns.c (Flogb): Don't use VALMASK.
2347
2348 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
2349 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
2350
2351 * lisp.h (XINT): Move the cast to clarify what is going on.
2352 (GCTYPEMASK, XSETTYPE): Remove.
2353 (XGCTYPE): Make it an alias of XTYPE.
2354
d04103a1
JD
23552003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2356
2357 * xterm.c (x_term_init): Fix formatting.
2358
da18b5ac
JD
23592003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2360
2361 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
2362 and xg_did_tearoff.
2363
2364 * gtkutil.c: Remove variable xg_did_tearoff.
2365 (xg_have_tear_offs): New function.
2366 (tearoff_remove): Just decrease xg_detached_menus.
2367 (tearoff_activate): Increase xg_detached_menus and call
2368 tearoff_remove when tearoff is removed.
854c1a59 2369 (xg_keep_popup): Remove function.
da18b5ac
JD
2370 (create_menus): Give add_tearoff_p as argument to recursive
2371 call to create_menus.
2372 (xg_create_widget): Use variables instead of multiple
2373 strcmp. Tell create_menus to create tear off only for
2374 menu bar menus.
2375 (xg_update_menubar): Change title for a detached menu also.
2376 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
2377 of deep_p.
2378 (xg_initialize): Initialize xg_detached_menus, remove
2379 initialization of xg_did_tearoff.
2380
2381 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
2382 xg_have_tear_offs returns non-zero.
2383 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
2384 call to xg_keep_popup.
2385
64d4923e
AC
23862003-11-01 Andrew Choi <akochoi@shaw.ca>
2387
2388 * macterm.c (XTread_socket): Handle menubar selection and grow
2389 window only for mouseDown events.
854c1a59 2390
6cc8bc07
JD
23912003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2392
2393 * xterm.c (x_term_init): For GTK part, increase x_initialized
2394 to check for more than one display. Use error instead of return 0.
2395
043131c4
AC
23962003-10-31 Andrew Choi <akochoi@shaw.ca>
2397
854c1a59 2398 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
2399 (copy_dysymtab): Call it.
2400
bdda99a1
LT
24012003-10-31 Luc Teirlinck <teirllm@auburn.edu>
2402
2403 * eval.c (Fdefvaralias): Doc fix.
2404
800f42ff 24052003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
2406
2407 * data.c (Fsetplist): Doc fix.
2408
ef35b389
LK
24092003-10-14 Lute Kamstra <lute@gnu.org>
2410
2411 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 2412
ef35b389 24132003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 2414
07107abc
KS
2415 * window.c (Fset_window_margins): Simplify arg checking.
2416
f7005886
RS
24172003-10-13 Richard M. Stallman <rms@gnu.org>
2418
2419 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
2420 (print_partial_compiled_pattern): Replace assert with a printout.
2421 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
2422
2423 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
2424
2425 * window.c (Fset_window_margins): Allow only integers as args.
2426 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
2427 Doc fixes.
2428
9c0c2af5
LK
24292003-10-13 Lute Kamstra <lute@gnu.org>
2430
2431 * window.c (Fset_window_fringes): Elaborate docstring.
2432
3f080e4e
AC
24332003-10-12 Andrew Choi <akochoi@shaw.ca>
2434
854c1a59 2435 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 2436
3f080e4e
AC
2437 * s/darwin.h (GC_MARK_STACK): Define.
2438
0aa513ed
JD
24392003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2440
2441 * window.c (shrink_windows): New function.
2442 (size_window): Call shrink_windows to calculate window sizes when
2443 shrinking frame with more than one window.
2444
6aa8858a
KS
24452003-10-12 Kim F. Storm <storm@cua.dk>
2446
2447 * xdisp.c (compute_fringe_widths): Doc fix.
2448
c2164d91
KH
24492003-10-08 Kenichi Handa <handa@m17n.org>
2450
854c1a59 2451 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 2452
f82ac129
KH
24532003-10-07 Kenichi Handa <handa@m17n.org>
2454
2455 * coding.c (Qcoding_system_define_form): New variable.
2456 (syms_of_coding): Intern and staticpro it.
2457 (Fcheck_coding_system): Try to autoload the definition of
2458 CODING-SYSTEM.
2459
9296c947
LT
24602003-10-05 Luc Teirlinck <teirllm@auburn.edu>
2461
2462 * fns.c (Frequire): Doc fix.
2463
c1f0671a
JD
24642003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2465
3d8c3826
JD
2466 * xfns.c (Fx_send_client_event): New function as a base for
2467 manipulating extended window manager hints.
6dc15d98 2468 (Fx_send_client_event): Remove unused variable s.
3d8c3826 2469
068ae0fd
JD
2470 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
2471 that function is removed.
2472
2473 * xterm.c (x_set_offset): Use move_offset_left/top instead of
2474 x/y_pixels_outer_diff.
2475 (x_check_expected_move): Calculate move_offset_left/top.
2476
2477 * xterm.h (struct x_output): New members: move_offset_top/left.
2478
854c1a59 2479 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
2480 call x_set_offset directly.
2481
2482 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
2483
96f09305
JD
2484 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
2485
2486 * xterm.c (x_delete_display): Free font names and font_encoder
2487 in dpyinfo->font_table.
2488
854c1a59
SM
2489 * xfns.c (Fx_close_connection): Only call XFreeFont here.
2490 Move xfree of font names to x_delete_display.
96f09305 2491
c1f0671a
JD
2492 * xterm.h (struct x_display_info): New member, wm_type.
2493 (struct x_output): New members, expected_top/left and
2494 check_expected_move.
2495
2496 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
2497 is received.
854c1a59
SM
2498 (handle_one_xevent): Rename x_check_expected_move from
2499 x_check_fullscreen_move.
c1f0671a
JD
2500 (x_set_offset): Only add WM decoration sizes to modified_top/left
2501 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 2502 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
2503 Removed fullscreen specific code. Use check_expected_move,
2504 expected_left/top instead. Also, set wm_type.
2505 (x_term_init): Initialize wm_type to unknown.
2506
2507 * frame.c (x_fullscreen_move): Remove addition of WM decoration
2508 sizes to move_x/y.
2509
be2fdba9
KH
25102003-10-03 Kenichi Handa <handa@m17n.org>
2511
2512 * macterm.c (x_load_font): Clear all members of FONTP before start
2513 filling them.
2514
25152003-10-02 Kenichi Handa <handa@m17n.org>
2516
2517 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
2518 before calling find_ccl_program_func. Call find_ccl_program_func
2519 only when fontp->font_encoder is not NULL.
2520
2521 * xterm.c (x_load_font): Clear all members of FONTP before start
2522 filling them.
2523
26a6e439
JPW
25242003-10-03 John Paul Wallington <jpw@gnu.org>
2525
2526 * keymap.c (map_keymap): Don't abort when binding is a vector.
2527
0d4c2dc2
JR
25282003-10-02 Jason Rumney <jasonr@gnu.org>
2529
854c1a59
SM
2530 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
2531 Sync dependencies with Makefile.in.
a63cf46f
JR
2532 (alloca.o): Remove.
2533
0d4c2dc2
JR
2534 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
2535 filling them.
2536
2537 * w32bdf.c (w32_load_bdf_font): Likewise.
2538
ab8f7d5c
RS
25392003-09-30 Richard M. Stallman <rms@gnu.org>
2540
2541 * term.c (set_tty_color_mode): Calculate current_mode_spec
2542 regardless of value of VAL.
2543
854c1a59 2544 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
2545 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
2546 Handle over_used when splitting UNDER.
2547
a64387ee 25482003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ab8f7d5c
RS
2549
2550 * regex.c (regex_compile): Free the stack when returning from function.
2551
3413f972
KH
25522003-09-28 Kenichi Handa <handa@m17n.org>
2553
2554 * fontset.c (Finternal_char_font): Change return value to
2555 cons (FONT-NAME . GLYPH-CODE).
2556
a6eeaa81 25572003-09-28 Eli Zaretskii <eliz@gnu.org>
40409f05
EZ
2558
2559 * term.c (tty_setup_colors): Treat any negative argument as -1.
2560
f98ddc99
KH
25612003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
2562
2563 * process.c (send_process): Delete unused temp_buf.
2564
66c8f1a8
DL
25652003-09-26 Dave Love <fx@gnu.org>
2566
2567 * xterm.c (x_bitmap_mask): Declare.
2568
ca716c26
DL
25692003-09-25 Dave Love <fx@gnu.org>
2570
2571 * Makefile.in (fns.o): Depend on md5.h.
2572
fbe57420
KS
25732003-09-25 Kim F. Storm <storm@cua.dk>
2574
2575 * window.c (set_window_buffer): Fix redisplay problems when
2576 switching between buffers with different display margin widths.
2577
ef6ae4ff
KS
25782003-09-23 Kim F. Storm <storm@cua.dk>
2579
2580 * process.c (set_socket_option): Fix :bindtodevice option.
2581 (Fset_network_process_option): Update process contact list when
2582 setting option succeeds.
2583 (Fmake_network_process): Doc fix.
2584
68e03c1c
DL
25852003-09-23 Dave Love <fx@gnu.org>
2586
7146d1c1 2587 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 2588
a6eeaa81 25892003-09-22 Eli Zaretskii <eliz@gnu.org>
2f809aae
EZ
2590
2591 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
2592 color mode is an integer number (it could be -1).
2593
8fe7d8c8
RS
25942003-09-22 Richard M. Stallman <rms@gnu.org>
2595
2596 * intervals.c (graft_intervals_into_buffer): Correct the main loop
2597 in the case where OVER is longer than UNDER.
2598
2f71b5ea
MY
25992003-09-22 Masatake YAMATO <jet@gyve.org>
2600
7146d1c1 2601 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 2602 `vertical_type'.
7146d1c1 2603
0c4da023
KS
26042003-09-21 Kim F. Storm <storm@cua.dk>
2605
2606 * frame.c (Vdefault_frame_scroll_bars): New variable.
2607 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
2608 (syms_of_frame): DEFVAR_LISP it, and initialize according to
2609 window-system default scroll bar position.
2610
b648413b
KS
2611 * window.c (Fwindow_scroll_bars): Doc fix.
2612
8f5b9e34
JD
26132003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2614
854c1a59 2615 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 2616
b0f23edf
RS
26172003-09-19 Richard M. Stallman <rms@gnu.org>
2618
2619 * atimer.h: Don't include lisp.h.
2620 (P_): Define it here (as well as elsewhere).
2621
2622 * print.c (Fprin1_to_string): Move the PRINTPREPARE
2623 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
2624
2625 * data.c (Fvariable_binding_locus): New function.
2626 (syms_of_data): defsubr it.
2627 (Flocal_variable_p): Delete duplicate call to indirect_variable.
2628
e1283999
DL
26292003-09-18 Dave Love <fx@gnu.org>
2630
ad5f3636
DL
2631 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
2632
e1283999
DL
2633 * process.c (Fnetwork_interface_info): Fix type error.
2634 (Fnetwork_interface_list): Doc fix.
2635 (read_process_output, read_process_output): Delete unused var.
2636
b8c7fd71
KS
26372003-09-17 Kim F. Storm <storm@cua.dk>
2638
2639 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
2640 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
2641 (Fnetwork_interface_info): Check that ifreq struct has required
2642 fields before accessing them; this requires that those fields are
2643 defined as macros, which may be too restrictive on some platforms,
2644 but it is better than failing on other platforms.
2645 (syms_of_process): Only defsubr above fns when included.
2646
11e0a411
DL
26472003-09-17 Dave Love <fx@gnu.org>
2648
2649 * unexalpha.c: Don't include varargs.h.
2650
e9c50801
KS
26512003-09-17 Kim F. Storm <storm@cua.dk>
2652
2653 * process.c (Fset_process_sentinel): Add sentinel to childp plist
2654 for network process.
2655 (socket_options): Add `:' prefix to option names. Add optbit field.
2656 (set_socket_option): Remove no_error arg and special handling of s < 0.
2657 Return 1<<optbit for known option, 0 for unknown.
2658 Do not interpret 0 as false for boolean option (only nil).
2659 Pass failed option and value to report_file_error.
7146d1c1 2660 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
2661 (Fset_network_process_option): New function to set just one option.
2662 (Fmake_network_process): Allow :coding arg to be a cons.
2663 Allow :server arg to be an integer specifying backlog size.
2664 Remove :options arg, and allow options to be specified directly
2665 as :KEY, VALUE pairs. Parse these options before binding socket.
2666 As before, :reuseaddr t is default for a server process, but this
2667 can now be disabled by specifying :reuseaddr nil.
2668 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
2669 (init_process): Availability of network options is now checked with
2670 simpler syntax (featurep 'make-network-process :OPTION); use loop to
2671 setup features.
2672 (syms_of_process): Fix defsubr's for the replaced functions.
2673
a0fc3644
DL
26742003-09-16 Dave Love <fx@gnu.org>
2675
2676 * Makefile.in: Depend on coding.h.
2677
6df2a645
KS
26782003-09-14 Kim F. Storm <storm@cua.dk>
2679
2680 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
2681 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
2682 (syms_of_process): Defsubr them.
2683
2684 * config.in: Regenerate.
7146d1c1
SM
2685
26862003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
2687
2688 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
2689 * m/news-r6.h (XUNMARK): Remove.
2690 * m/mips.h (XUNMARK): Remove.
2691 * m/mips-siemens.h (XUNMARK): Remove.
2692 * m/iris4d.h (XUNMARK): Remove.
2693 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
2694
0930c1a1
SM
26952003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
2696
31003b9e
SM
2697 * lisp.h (VALBITS): Don't remove 1 for the markbit.
2698 (union Lisp_Object): Use unsigned int for types. Remove markbit.
2699 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
2700 (XTYPE): Use unsigned right-shift.
2701 (XMARKBIT, XMARK, XUNMARK): Remove.
2702
0930c1a1
SM
2703 * alloc.c (init_intervals, init_symbol, init_marker):
2704 Don't preallocate anything.
2705 (Fgarbage_collect, mark_object): Ignore the markbit.
2706
2707 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
2708
19bb0fcd 27092003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
2710
2711 * xdisp.c (pint2hrstr): New function.
2712 (decode_mode_spec): Add `%i' and `%I' specs.
2713 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
2714 for `mode-line-format'.
2715
03bb6a06
AS
27162003-09-07 Andreas Schwab <schwab@suse.de>
2717
2718 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
2719 avoid warning.
2720
a6eeaa81 27212003-09-07 Eli Zaretskii <eliz@gnu.org>
2063d89c 2722
0930c1a1 2723 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 2724
ed159bbf
KS
27252003-09-03 Kim F. Storm <storm@cua.dk>
2726
2727 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
2728 change (superseded by 2002-08-30 change); the default blink-off
2729 cursor is now again "no cursor".
2730
fe64a394
JR
27312003-09-01 Jason Rumney <jasonr@gnu.org>
2732
2733 * makefile.w32-in (alloca.o): Remove.
2734 (coding.o): Depend on intervals.h
2735 (emacs.o, bytecode.o): Depend on window.h
2736
c0175e24
DL
27372003-09-01 Dave Love <fx@gnu.org>
2738
2739 * Makefile.in (alloca.o): Remove commands.
2740 (coding.o): Depend on intervals.h composite.h window.h.
2741 (emacs.o): Depend on window.h keyboard.h keymap.h.
2742 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
2743 (bytecode.o): Depend on window.h.
2744
a24d4cb2
JR
27452003-08-31 Jason Rumney <jasonr@gnu.org>
2746
4bc2315e
JR
2747 * w32term.c (w32_per_char_metric): Allow cached metrics to be
2748 returned even when font_type is unknown.
2749
a24d4cb2
JR
2750 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
2751
9d35adc7
JD
27522003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2753
2754 * xterm.c (x_term_init): Initialize new fields in x_display_info.
2755
2756 * xterm.h (struct x_display_info): Add red/green/blue_bits and
2757 *_offset.
2758
2759 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
2760 calculate pixel value.
2761
6f68b035
GM
27622003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
2763
0930c1a1
SM
2764 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
2765 Don't tell redisplay display is accurate when it's actually been
2766 paused for pending input.
6f68b035 2767
4828b4d7
RS
27682003-08-29 Richard M. Stallman <rms@gnu.org>
2769
2770 * dispnew.c (adjust_glyph_matrix): Call window_box
2771 whenever W is nonzero.
2772
2773 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
2774 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 2775 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
2776 Use indirect_variable to trace thru variable aliases.
2777
2778 * config.in: Updated.
2779
2780 * callint.c (Fcall_interactively): Save and restore
2781 Vthis_command, Vthis_original_command, real_this_command,
2782 and current_kboard->Vlast_command.
2783
2784 * abbrev.c (Fexpand_abbrev): Insert before deleting.
2785
e019878d
GM
27862003-08-29 Gerd Moellmann <gerd@gnu.org>
2787
2788 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
2789
85478bc6
KH
27902003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
2791
0930c1a1 2792 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
2793 (decode_coding_sjis_big5): Likewise.
2794
07ce82d3
JR
27952003-08-27 Jason Rumney <jasonr@gnu.org>
2796
d3703de3
JR
2797 * w32.c (sys_pipe): Protect against file descriptor overflow.
2798
ee4a01d1
JR
2799 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
2800
07ce82d3
JR
2801 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
2802
a64387ee 28032003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
72d19c66
LK
2804
2805 * xfns.c (Vgtk_version_string): New variable.
2806 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
2807
a6eeaa81 28082003-08-24 Eli Zaretskii <eliz@gnu.org>
5459e42a 2809
0930c1a1 2810 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 2811
5459e42a
EZ
2812 * Makefile.in (msdos.o): Depend on intervals.h.
2813
0930c1a1 2814 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 2815
231d6cfb
JD
28162003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2817
2818 * xterm.h (struct x_display_info): New fields: client_leader_window
2819 and Xatom_wm_client_leader.
2820
2821 * xterm.c (x_initialize): Move call to x_session_initialize to ...
2822 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
2823
2824 * xsmfns.c (create_client_leader_window): New function.
2825 (x_session_initialize): Call create_client_leader_window, take
2826 dpyinfo as argument.
2827
2828 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
2829
2830 * Makefile.in (xsmfns.o): Add more depenedencies.
2831
afa88464
DL
28322003-08-21 Dave Love <fx@gnu.org>
2833
2834 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
2835
f730033e
KH
28362003-08-21 Kenichi Handa <handa@m17n.org>
2837
2838 * term.c (term_init): Fix previous change; don't rely on the
2839 length of `buffer' if TERMINFO is defined.
2840
6dca786c
DL
28412003-08-20 Dave Love <fx@gnu.org>
2842
2843 * atimer.h: Include lisp.h.
2844
2845 * lisp.h (EMACS_LISP_H): New.
2846 (popup_activated_flag): Don't declare.
2847
2848 * alloca.c: Some merging with gnulib. Change logic and doc
2849 concerning (x)malloc/(x)free -- no longer Emacs-specific.
2850 [DO_BLOCK_INPUT]: Don't include lisp.h.
2851 (xmalloc, xfree): Declare.
2852 (malloc): Don't declare.
2853
0930c1a1 2854 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
2855 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
2856 atimer.h, blockinput.h.
2857
2858 * alloc.c (lisp_align_malloc): Change type of `aligned'.
2859
2860 * alloca.s: Removed.
2861
3a06a6d9
RS
28622003-08-19 Gerd Moellmann <gerd@gnu.org>
2863
2864 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
2865 use -lncurses.
2866
2867 * term.c (term_init): Use a buffer of size 4096 for tgetent since
2868 FreeBSD returns something longer than 2044. Abort if the end of
2869 the buffer is overwritten.
2870
27eeee55
MB
28712003-08-19 Miles Bader <miles@gnu.org>
2872
2873 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
2874
2f297815
GM
28752003-08-19 Gerd Moellmann <gerd@gnu.org>
2876
f4446bbf
GM
2877 * alloc.c (lisp_align_malloc): Check for memory full when
2878 allocating ablocks, which also avoids freeing a pointer into an
2879 ablocks structure.
2880
2881 * puresize.h (BASE_PURESIZE): Increase to 1100000.
2882
0930c1a1 2883 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 2884
0e7d7aae
RS
28852003-08-16 Richard M. Stallman <rms@gnu.org>
2886
2887 * editfns.c (Fencode_time): Doc fix.
2888
28892003-08-16 David Ponce <david@dponce.com>
2890
2891 * fileio.c (Fwrite_region): Fix conditional expression to issue
2892 the right message.
2893
28942003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
2895
2896 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 2897 Set default value to 1.
0e7d7aae 2898
5d551295
KH
28992003-08-15 Kenichi Handa <handa@m17n.org>
2900
2901 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
2902 what autoscaled.
2903 (best_matching_font): Once we find a better scalable font, set
2904 non_scalable_has_exact_height_p to 1.
2905 (try_font_list): Call try_alternative_families to try any family
2906 with the given registry.
2907
1661e56b
AS
29082003-08-09 Andreas Schwab <schwab@suse.de>
2909
f29181dc
AS
2910 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
2911
1661e56b
AS
2912 * print.c (print_string): Fix printing of multibyte string with
2913 nontrivial printcharfun.
2914
465aa50a
JD
29152003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2916
2917 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
2918
2919 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
2920
e430e5ba
KH
29212003-07-31 Kenichi Handa <handa@m17n.org>
2922
2923 * process.c (read_process_output): Return the actually read bytes
2924 instead of the result of decoding.
2925
97e7188e
KH
29262003-07-31 Kenichi Handa <handa@m17n.org>
2927
2928 * xterm.h (struct x_bitmap_record): New member have_mask.
2929
2930 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
2931 to 0.
2932 (x_create_bitmap_from_file): Likewise.
2933 (x_destroy_bitmap): Check have_mask member before freeing a mask.
2934 (x_destroy_all_bitmaps): Likewise.
2935 (x_create_bitmap_mask): Set have_mask member to 1.
2936
b53094d6
RS
29372003-07-30 Richard M. Stallman <rms@gnu.org>
2938
2939 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
2940
631f2082
JD
29412003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2942
2943 * gtkutil.c (xg_mark_data): Update calls to mark_object.
2944
c855f2ca
RS
29452003-07-29 Richard M. Stallman <rms@gnu.org>
2946
2947 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
2948 Conditionalize XIM code on HAVE_XIM.
2949
2950 * fns.c (Fclear_string): New function.
2951 (syms_of_fns): defsubr it.
2952
17e6d491
KH
29532003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
2954
0930c1a1 2955 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 2956
29ea8ae9
SM
29572003-07-22 Stefan Monnier <monnier@cs.yale.edu>
2958
2959 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
2960
2961 * buffer.c (delete_all_overlays): New function.
2962 * buffer.h (delete_all_overlays): Declare.
2963 * coding.c (run_pre_post_conversion_on_str):
2964 * print.c (temp_output_buffer_setup):
2965 * fileio.c (Finsert_file_contents):
2966 * minibuf.c (get_minibuffer): Use it.
2967
1dd7ccf2
AC
29682003-07-22 Andrew Choi <akochoi@shaw.ca>
2969
2970 * unexmacosx.c (unexec_regions_sort_compare):
2971 (unexec_regions_merge): New functions. Sort and merge unexec
2972 regions before dumping them.
2973
f57bd967
DL
29742003-07-22 Dave Love <fx@gnu.org>
2975
2976 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
2977
7cdee936
SM
29782003-07-21 Stefan Monnier <monnier@cs.yale.edu>
2979
2980 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
2981 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
2982 MARKBIT as the gcmarkbit for strings.
2983
e50886d3
RS
29842003-07-21 Richard M. Stallman <rms@gnu.org>
2985
2986 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
2987
29ea8ae9 2988 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
2989 (syms_of_fns): Corresponding change.
2990
2991 * alloc.c (syms_of_alloc): Doc fixes.
2992
29932003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
2994
2995 * s/netbsd.h: Use -Wl syntax.
2996
fdc39b59
RS
29972003-07-17 Richard M. Stallman <rms@gnu.org>
2998
2999 * xterm.c (xim_initialize): Redo 6/24 change.
3000
9c53385f
SM
30012003-07-15 Stefan Monnier <monnier@cs.yale.edu>
3002
3003 * buffer.c (copy_overlays): Use EMACS_INT for positions.
3004 (Fswitch_to_buffer): Don't signal an error when switching to the same
3005 buffer in a dedicated window.
3006
3007 * alloc.c: Use bitmaps for cons, as was done for floats.
3008 (init_float, init_cons): Let the normal code allocate the first block.
3009 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
3010 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
3011 New macros.
3012 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
3013 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
3014 (live_cons_p): Check the pointer is not past the `conses' array.
3015 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
3016 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
3017 (survives_gc_p): Use CONS_MARKED_P and simplify.
3018 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
3019
dde13196
PE
30202003-07-13 Paul Eggert <eggert@twinsun.com>
3021
3022 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
3023 puts it into BSS instead, at least on Solaris 8 and 9.
3024 This is a valid optimization, and it may occur on other platforms,
3025 so Emacs should not assume that initializing a static variable to
3026 zero puts it into data.
3027 * alloc.c (pure, staticvec):
3028 Initialize these arrays to nonzero, so that they're not
3029 put into BSS by that optimization.
3030
a801bc34
SM
30312003-07-13 Stefan Monnier <monnier@cs.yale.edu>
3032
3033 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
3034 (lisp_align_malloc): Use posix_memalign is available.
3035 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
3036 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
3037 for consistency. Update users.
3038
0c8b2afa
RS
30392003-07-13 Richard M. Stallman <rms@gnu.org>
3040
3041 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
3042
668c2ab0
JB
30432003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
3044
3045 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
3046 and use the Gtk+ function gtk_window_icon_from_file if available.
3047
3048 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
3049 handle mask of bitmaps.
3050 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
3051 mask property.
3052 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
3053
3054 * xterm.h (xg_set_icon): New function.
3055
800bebe3
RS
30562003-07-12 Paul Eggert <eggert@twinsun.com>
3057
3058 * unexelf.c (unexec): Consider a section to precede the .bss
3059 section if its addresses overlap that of .bss.
3060
69e38995
RS
30612003-07-12 Richard M. Stallman <rms@gnu.org>
3062
3063 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
3064
3065 * config.in (HAVE_CRTIN): Add #undef.
3066 (INLINE): Really inline only if OPTIMIZE is defined.
3067
3068 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
3069 END_FILES_1.
3070 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 3071 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
3072
3073 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
3074 (TERMINFO): Define.
3075 (LIBS_TERMCAP): Define.
3076 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
3077
3078 * xfns.c: Include libpng/png.h instead of png.h.
3079
f1d0c238
AS
30802003-07-11 Andreas Schwab <schwab@suse.de>
3081
3082 * buffer.c (modify_overlay): Update prototype.
3083 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
3084 Likewise.
3085
5f6bf5fe
SM
30862003-07-09 Stefan Monnier <monnier@cs.yale.edu>
3087
3088 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
3089 (struct interval): Move to intervals.h.
3090 (struct Lisp_Marker): Use EMACS_INT for position info.
3091 (forward_point): Remove prototype of defunct function.
3092 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
3093 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
3094 (syms_of_textprop, set_text_properties): Remove prototypes that are
3095 already in intervals.h.
3096
3097 * intervals.h (struct interval): Move from lisp.h.
3098 Use EMACS_INT for position and size info.
3099
3100 * coding.c: Include intervals.h for Fset_text_properties.
3101
3102 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
3103 position and length information.
3104
2765b457
SM
31052003-07-09 Stefan Monnier <monnier@cs.yale.edu>
3106
3107 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
3108 position and length information.
3109
2410d73a
SM
31102003-07-09 Stefan Monnier <monnier@cs.yale.edu>
3111
3112 Change overlays_after and overlays_before so the overlays themselves
3113 are linked into lists, rather than using cons cells. After all each
3114 Lisp_Misc already occupies 5 words, so we can add a `next' field to
3115 Lisp_Overlay for free and save up one cons cell per overlay (not
3116 to mention one indirection when traversing the list of overlay).
3117
3118 * lisp.h (struct Lisp_Overlay): New field `next'.
3119
3120 * buffer.h (struct buffer): Change overlays_before and overlays_after
3121 from Lisp lists of overlays to pointers to overlays.
3122
3123 * buffer.c (overlay_strings, recenter_overlay_lists):
3124 Fix typo in eassert in last commit.
3125 (unchain_overlay): New function.
3126 (add_overlay_mod_hooklist): Use AREF.
3127 (copy_overlays, reset_buffer, overlays_at, overlays_in)
3128 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
3129 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
3130 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
3131 (report_overlay_modification, evaporate_overlays, init_buffer_once):
3132 Adjust to new type of overlays_(before|after).
3133
3134 * alloc.c (mark_object): Mark the new `next' field of overlays.
3135 (mark_buffer): Manually mark the overlays_(after|before) fields.
3136
3137 * coding.c (run_pre_post_conversion_on_str):
3138 * editfns.c (overlays_around):
3139 * xdisp.c (load_overlay_strings):
3140 * fileio.c (Finsert_file_contents):
3141 * indent.c (current_column):
3142 * insdel.c (signal_before_change, signal_after_change):
3143 * intervals.c (set_point_both):
3144 * print.c (temp_output_buffer_setup): Use new type for
3145 overlays_(before|after).
3146
04812929
SM
31472003-07-08 Stefan Monnier <monnier@cs.yale.edu>
3148
3149 * buffer.c (report_overlay_modification): Don't run hooks while
3150 traversing the list of overlays.
3151
3152 * buffer.h (struct buffer): Use an int for overlay_center.
3153 (overlays_at, evaporate_overlays, recenter_overlay_lists)
3154 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
3155
3156 * buffer.c (reset_buffer, recenter_overlay_lists)
3157 (adjust_overlays_for_insert, adjust_overlays_for_delete)
3158 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
3159 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
3160 (overlays_at, evaporate_overlays, recenter_overlay_lists)
3161 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
3162
3163 * xdisp.c (fast_find_position): Remove unused var.
3164
3165 * cmds.c (Qexpand_abbrev): New sym.
3166 (syms_of_cmds): Initialize it.
3167 (internal_self_insert): Use it to call expand-abbrev.
3168
2e7ecf15
KS
31692003-07-09 Kim F. Storm <storm@cua.dk>
3170
3171 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if emacs
3172 was configured with --without-xim.
42f81f64 3173 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 3174
c6de56a0
RS
31752003-07-07 Richard M. Stallman <rms@gnu.org>
3176
3177 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
3178
3179 * alloc.c (Fgarbage_collect): Doc fix.
3180
b93fb365
KH
31812003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
3182
3183 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
3184
bfe1a3f7
SM
31852003-07-06 Stefan Monnier <monnier@cs.yale.edu>
3186
04812929
SM
3187 * minibuf.c (read_minibuf): UNGCPRO before returning.
3188 (Ftry_completion, Fall_completions): Doc fix.
3189
bfe1a3f7
SM
3190 * alloc.c (live_float_p): Check that p is not past the `floats' array,
3191 now that `floats' is not the last element of the struct any more.
3192
ee79d1aa
JR
31932003-07-06 Jason Rumney <jasonr@gnu.org>
3194
3195 * w32term.h (ClipboardSequence_Proc): New type.
3196
3197 * w32fns.c (clipboard_sequence_fn): New variable.
3198 (globals_of_w32fns): Initialize it.
3199
3200 * w32select.c (last_clipboard_sequence_number): New variable.
3201 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
3202 number if possible.
3203
49723c04
SM
32042003-07-06 Stefan Monnier <monnier@cs.yale.edu>
3205
4698665f
SM
3206 * m/amdx86-64.h (MARKBIT):
3207 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
3208 MARKBIT and ARRAY_MARK_FLAG any more.
3209
3210 * m/hp800.h (XSETMARKBIT):
3211 * m/sr2k.h (XSETMARKBIT):
3212 * lisp.h (XSETMARKBIT): Remove unused macro.
3213
49723c04
SM
3214 * lisp.h (mark_object): Change prototype.
3215
3216 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
3217 (last_marked): Change accordingly.
3218 (mark_interval, mark_maybe_object, mark_maybe_pointer)
3219 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
3220 (mark_buffer): Update calls to mark_object.
3221
3222 * bytecode.c (mark_byte_stack):
3223 * fns.c (sweep_weak_table):
3224 * keyboard.c (mark_kboards): Update calls to mark_object.
3225
1d660eca
JR
32262003-07-06 Jason Rumney <jasonr@gnu.org>
3227
3228 * alloc.c (struct ablock): Only include padding when there is some.
3229
618b5ae4
SM
32302003-07-04 Stefan Monnier <monnier@cs.yale.edu>
3231
3232 * alloc.c (ALIGN): Add casts to simplify usage.
3233 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
3234 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
3235 (struct ablock, struct ablocks): New types.
3236 (free_ablock): New global var.
3237 (lisp_align_malloc, lisp_align_free): New functions.
3238 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
3239 (struct float_block): Reorder and add gcmarkbits.
3240 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
3241 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
3242 (init_float, make_float): Use lisp_align_malloc.
3243 (free_float, live_float_p): Don't use `type' any more.
3244 (make_float): Use FLOAT_UNMARK to access to mark bit.
3245 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
3246 Use FLOAT_MARKED_P to access the mark bit.
3247 (pure_alloc): Simplify use of ALIGN.
3248 (mark_object): Use FLOAT_MARK to access the mark bit.
3249 (gc_sweep): Use new macros to access the float's mark bit.
3250 (init_alloc_once): Init free_ablock.
3251
3252 * lisp.h (struct Lisp_Float): Remove unused field `type'.
3253
3ef06d12
SM
32542003-06-27 Stefan Monnier <monnier@cs.yale.edu>
3255
3256 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
3257 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
3258 (allocate_buffer): Move.
3259 (string_bytes): Don't mask markbit of `size_byte'.
3260 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
3261 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
3262 Use the `size' field of buffers (rather than the `name' field) for
3263 the mark bit, as is done for all other vectorlike objects.
3264 Use the new macros to access the mark bit of vectorlike objects.
3265
e81043aa
RS
32662003-06-26 Richard M. Stallman <rms@gnu.org>
3267
3268 * puresize.h (BASE_PURESIZE): Increment base size.
3269
3270 * xdisp.c (fast_find_position): Enable Gerd's new definition.
3271
3272 * xterm.c (xim_initialize): Undo previous change.
3273
2d0834cc
SM
32742003-06-26 Stefan Monnier <monnier@cs.yale.edu>
3275
3276 * alloc.c (survives_gc_p): Simplify.
3277
3278 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
3279
3280 * window.c (Fset_window_dedicated_p): Simplify.
3281 (display_buffer_1): Don't raise the win from which minibuf was entered.
3282 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
3283 (Fminibuffer_selected_window): Simplify.
3284
3285 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
3286
3287 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
3288 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
3289
3290 * insdel.c (check_markers, adjust_markers_for_delete)
3291 (adjust_markers_for_insert, adjust_markers_for_replace)
3292 (prepare_to_modify_buffer, RESTORE_VALUE):
3293 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
3294 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
3295 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
3296 * alloc.c (Fmake_marker, free_marker, gc_sweep):
3297 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
3298 * editfns.c (save_excursion_restore, transpose_markers):
3299 * window.c (delete_window):
3300 * xdisp.c (message_dolog): Update for new types.
3301
d54ae3d8
JD
33022003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3303
a5f696ac
JD
3304 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
3305 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 3306 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
3307
3308 * frame.c (make_frame): Initialize default_face_done_p.
3309
3310 * frame.h (struct frame): Add default_face_done_p.
3311
d54ae3d8
JD
3312 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
3313 will be defined.
3314
2336fe58
SM
33152003-06-25 Stefan Monnier <monnier@cs.yale.edu>
3316
3317 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
3318 Initialize the new field `gcmarkbit'.
3319 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
3320 (mark_interval_tree): Don't mark the tree separately from the nodes.
3321 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
3322 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
3323 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
3324
3325 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
3326 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
3327 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
3328 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
3329 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
3330
bcea31c2
DL
33312003-06-24 Dave Love <fx@gnu.org>
3332
3333 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
3334
3335 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
3336 from gnulib.
3337
2601f59e
RS
33382003-06-21 Richard M. Stallman <rms@gnu.org>
3339
3340 * fileio.c (Fwrite_region): Alternate messages
3341 for append and partial write.
3342
3343 * keyboard.c (read_key_sequence): When converting upcase fn key to
3344 downcase, update fkey and keytran so `backspace' gets translated.
3345
3346 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
3347
3348 * process.c (wait_reading_process_input): Don't signal SIGIO
3349 in batch mode.
3350
b5d2c621
KH
33512003-06-17 Kenichi Handa <handa@m17n.org>
3352
3353 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
3354 composite.h.
3355
3356 * xselect.c: Don't include charset.h, coding.h, composite.h.
3357 (Qforeign_selection): New variable.
3358 (syms_of_xselect): Intern and static it.
3359 (selection_data_to_lisp_data): Return a unibyte string made from
3360 data with `foreign-selection' text property.
3361
6793bc63
SM
33622003-06-15 Stefan Monnier <monnier@cs.yale.edu>
3363
3364 * termhooks.h (EVENT_INIT): New macro.
3365
3366 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
3367
3368 * alloc.c (mark_kboards): Move to keyboard.c.
3369
3370 * keyboard.c (record_asynch_buffer_change, read_avail_input):
3371 * xterm.c (x_dispatch_event):
3372 * xmenu.c (find_and_call_menu_selection):
3373 * xdisp.c (handle_tool_bar_click):
3374 * w32menu.c (menubar_selection_callback):
3375 * sysdep.c (kbd_input_ast, read_input_waiting):
3376 * msdos.c (dos_rawgetc):
3377 * macterm.c (mac_check_for_quit_char):
3378 * macmenu.c (menubar_selection_callback):
3379 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
3380 data to kbd_buffer_store_event.
3381
b3ea810c
KS
33822003-06-15 Kim F. Storm <storm@cua.dk>
3383
3384 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 3385 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 3386
b8f75eda
KG
33872003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
3388
3389 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
3390
ba92ce48
KH
33912003-06-12 Kenichi Handa <handa@m17n.org>
3392
3393 * fileio.c (Fwrite_region): Save and restore restriction.
3394
b80263be
DL
33952003-06-12 Dave Love <fx@gnu.org>
3396
3397 * alloca.c (alloca): Declare arg as size_t.
3398
6793bc63
SM
3399 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
3400 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 3401
b23c0a83
DL
34022003-06-11 Dave Love <fx@gnu.org>
3403
3404 * search.c (shrink_regexp_cache): Use xrealloc.
3405 (syms_of_search): Use xmalloc.
3406
700e47c2
KS
34072003-06-10 Kim F. Storm <storm@cua.dk>
3408
3409 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
3410 Adjust phys_cursor.x to be relative to window box, rather than
3411 text area before checking -- to ensure cursor is redrawn when
3412 exposing window.
3413 Note: This also fixes a similar (older) bug if display margins
3414 are present.
3415
f11aa0b2
KH
34162003-06-06 Kenichi Handa <handa@m17n.org>
3417
3418 * coding.c (encoding_buffer_size): If coding->type is
3419 coding_type_ccl, double magnification on CRLF encoding.
3420
3d143690
JR
34212003-06-06 Jason Rumney <jasonr@gnu.org>
3422
3423 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
3424 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
3425
3426 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
3427 Mac too.
3428
f16205ca
DL
34292003-06-05 Dave Love <fx@gnu.org>
3430
b23c0a83
DL
3431 * strftime.c: Merge changes from gnulib.
3432
f16205ca
DL
3433 * mktime.c (__mktime_internal): Merge changes from gnulib
3434 involving year 69 and dst2.
3435
3436 Changes to merge with gnulib version and be consistent with the
3437 autoconf test:
3438
6793bc63
SM
3439 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
3440 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
3441 [HAVE_LOCALE_H]: Include locale.h.
3442 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
3443
9b87a0bc
KS
34442003-06-05 Kim F. Storm <storm@cua.dk>
3445
3446 * window.c (coordinates_in_window): Convert X and Y to window
3447 relative coordinates inside mode-line and header-line parts.
3448 Convert X and Y to margin area relative coordinates inside left
3449 and right display margin parts.
3450
5a8a15ec
JR
34512003-06-05 Jason Rumney <jasonr@gnu.org>
3452
3453 * w32fns.c (add_system_logical_colors_to_map): New function.
3454 (Fx_open_connection): Use it.
3455
01ed8ff1
SM
34562003-06-04 Stefan Monnier <monnier@cs.yale.edu>
3457
3458 * process.c (allocate_pty): Revert part of the previous patch.
3459 (Faccept_process_output): Simplify.
3460
b427b65d
JR
34612003-06-04 Jason Rumney <jasonr@gnu.org>
3462
3463 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
3464
3465 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
3466 (lispy_mouse_wheel_names): Remove.
3467 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
3468 Always define drag_and_drop_syms.
3469
3470 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
3471 WHEEL_EVENT events.
3472
914a8c47
SM
34732003-06-03 Stefan Monnier <monnier@cs.yale.edu>
3474
01ed8ff1
SM
3475 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
3476
914a8c47
SM
3477 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
3478
adcb132c
JD
34792003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3480
3481 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
3482 menu item label.
3483
be781fa7
RS
34842003-06-03 Richard M. Stallman <rms@gnu.org>
3485
3486 * window.c (Fwindow_edges): Doc fix.
3487 (Fwindow_pixel_edges, Fwindow_inside_edges)
3488 (Fwindow_inside_pixel_edges): New functions.
3489 (syms_of_window): defsubr them.
3490
3491 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
3492 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
3493
914a8c47
SM
34942003-06-02 Stefan Monnier <monnier@cs.yale.edu>
3495
3496 * dispnew.c (Fsit_for): Don't lie about the number of args.
3497
5b07197a
DL
34982003-06-02 Dave Love <fx@gnu.org>
3499
3500 * callproc.c: Use HAVE_FCNTL_H, not USG5.
3501 (syms_of_callproc) <process-environment>: Doc fix.
3502
3503 * doc.c: Use HAVE_FCNTL_H, not USG5.
3504
3505 * xfaces.c (font_rescale_ratio): Fix for K&R.
3506
3507 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
3508
3509 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
3510
3511 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
3512
3513 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
3514 (xg_create_frame_widgets): Use ENCODE_UTF_8.
3515
d7107586 3516 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
3517
3518 * xmenu.c (ENCODE_MENU_STRING): New.
3519 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
3520 Use it.
3521
3522 * coding.h (ENCODE_UTF_8): New.
3523 (Qutf_8): Declare.
3524
3525 * coding.c (Qutf_8): New.
3526 (syms_of_coding): Intern it.
3527
3528 * fns.c: Doc fixes.
3529
7335b336
KH
35302003-06-02 Kenichi Handa <handa@m17n.org>
3531
3532 * buffer.c (Fset_buffer_multibyte): Fix previous change.
3533
914a8c47
SM
35342003-06-01 Stefan Monnier <monnier@cs.yale.edu>
3535
3536 * lread.c (openp): Make sure STR is a string.
3537
9862c135
JR
35382003-06-01 David Ponce <david@dponce.com>
3539
3540 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
3541 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
3542
3543 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
3544 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
3545 (discard_mouse_events): Discard WHEEL_EVENT events too.
3546 (lispy_wheel_names, wheel_syms): New.
3547 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
3548 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
3549 defined.
914a8c47 3550 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
3551
3552 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
3553 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
3554 WHEEL_EVENT events.
3555
f984e73e
JPW
35562003-05-31 John Paul Wallington <jpw@gnu.org>
3557
3558 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
3559 timer are in lisp/emacs-lisp.
3560
1efcd78f
KH
35612003-05-31 Kenichi Handa <handa@m17n.org>
3562
458c8af4
KH
3563 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
3564 region when a buffer is changed to unibyte.
3565
1efcd78f
KH
3566 * charset.h (VALID_LEADING_CODE_P): New macro.
3567 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
3568
778e2804
KH
3569 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
3570 is nonzero, accept multibyte form of eight-bit-control chars.
3571 (decode_composition_emacs_mule): Likewise.
3572 (decode_coding_emacs_mule): Likewise.
3573 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
3574 multibyte form of eight-bit-control chars.
3575
3576 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
3577 (Finsert_file_contents): If coding-system-for-read is bound to
3578 Qauto_save_coding, use the coding system emacs-mule with special
3579 setting for recovering a file.
3580 (choose_write_coding_system): On auto saving, use the coding
3581 system emacs-mule with special setting for auto saving.
3582 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
3583
034060e4
KH
35842003-05-30 Kenichi Handa <handa@m17n.org>
3585
3586 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
3587 properly before calling ccl_driver.
3588
778e2804 3589 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4
KH
3590
3591 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
3592 nonzero.
3593 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
3594 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
3595
595f5aa5
GM
35962003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
3597
3598 * xfaces.c (realize_default_face): Do not abort if lface is
3599 non-existent - reverts change from 2003-05-19.
3600
103e0180
KH
36012003-05-29 Kenichi Handa <handa@m17n.org>
3602
3603 * coding.c (decode_coding_iso2022): Pay attention to the byte
3604 sequence of CTEXT extended segment, and retain those bytes as is.
3605
36062003-05-28 Kenichi Handa <handa@m17n.org>
3607
3608 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
3609 of CODING_REPLACEMENT_CHARACTER.
3610 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
3611 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
3612 check this flag on encoding.
3613 (encode_coding_sjis_big5): Check
3614 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
3615 (Fset_terminal_coding_system_internal): Set
3616 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
3617 instead of setting CODING_FLAG_ISO_SAFE flag in
3618 terminal_coding.flags.
3619
3620 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
3621 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
3622 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
3623
ff6a3bfb 36242003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 3625
ff6a3bfb
RS
3626 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
3627
3628 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 3629
1963c428
KS
36302003-05-28 Kim F. Storm <storm@cua.dk>
3631
3632 * xdisp.c (expose_window): Fix error in calculation of
3633 window relative coordinates of area to redisplay.
3634
2b5d4601
JR
36352003-05-27 Jason Rumney <jasonr@gnu.org>
3636
3637 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
3638
1c64a4a2
JB
36392003-05-27 David Ponce <david@dponce.com>
3640
3641 Handle W32 mouse wheel events as mouse click events, like in X.
3642
3643 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
3644 MOUSE_WHEEL_EVENT anymore.
3645
3646 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
3647 Scrolling down/up the mouse wheel is respectively mapped to mouse
3648 button 4 and 5.
3649 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
3650 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
3651 WM_MOUSEWHEEL events.
3652
2d031b89
AS
36532003-05-27 Andreas Schwab <schwab@suse.de>
3654
20464fdf
AS
3655 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
3656
2d031b89
AS
3657 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
3658 partially visible line.
3659
3660 * alloc.c (Fgarbage_collect): Fix last change.
3661
97bc76d4
JPW
36622003-05-26 John Paul Wallington <jpw@gnu.org>
3663
3664 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
3665
56613f06
SM
36662003-05-25 Stefan Monnier <monnier@cs.yale.edu>
3667
3668 * window.c (Fset_window_buffer): Add type of `keep_margins'.
3669 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
3670
3671 * window.h (window_box_text_cols): Declare.
3672
3673 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
3674 (x_draw_vertical_border): Remove unused var `f'.
3675
3676 * xfaces.c (build_scalable_font_name): Remove `unused var
3677 pixel_size' warning.
3678
3679 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
3680
3681 * unexelf.c (unexec): Remove `unused var n' warning.
3682
3683 * strftime.c (my_strftime_localtime_r): Remove `defined but
3684 unused' warning.
3685
3686 * process.c (allocate_pty): Remove `unused var stb' and
3687 `cp might be used uninitialized' warnings.
3688
3689 * dispnew.c (mode_line_string): Remove unused var `f'.
3690
3691 * coding.c (find_safe_codings): Remove unused var `i'.
3692
3693 * bytecode.c (Fbyte_code): Remove `unused val' warning.
3694
3695 * buffer.c (Fkill_buffer): Remove unused var `list'.
3696
3697 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
3698
93421a1f
JD
36992003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3700
3701 * frame.c (make_frame): Condition want_fullscreen with
3702 HAVE_WINDOW_SYSTEM.
3703
c4b8aebc
JB
37042003-05-25 Juanma Barranquero <lektu@terra.es>
3705
3706 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
3707 (Fwindow_scroll_bars): Fix typo in docstring.
3708
0416870b
KS
37092003-05-24 Kim F. Storm <storm@cua.dk>
3710
3711 The following changes serve several purposes:
3712
3713 1) Swap the position of fringes and display margins in windows, i.e.
3714 the fringes are now displayed between the margins and the text area
3715 (by default).
3716
3717 2) Allow fringe and scroll bar parameters to be set per-buffer and
3718 per-window (like display margins). Such settings are now stored
3719 in window configurations, preserved when frames are resized, and
9018a88e 3720 copied when windows are split vertically or horizontally.
0416870b
KS
3721 Several bugs related to display margins have been fixed.
3722
3723 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 3724
0416870b
KS
3725 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
3726 rather than FRAME_WIDTH (FRAME_FONT (f)).
3727
3728 5) Introduce a consistent naming of variables, members and macros
3729 depending on whether their value is measured in pixels or in
3730 canonical columns/lines. Pixel dimensions are named *_width and
3731 *_height, while canonical columns/lines are named *_cols and
3732 *_lines. Pixel positions are named *_x and *_y, while column/line
3733 positions are named *_col and *_line.
3734
3735 6) Consolidate more of the X, W32, and MAC gui code by moving
3736 common data into struct frame, and generalize it for the non-gui
3737 case by using suitable defaults.
3738
3739 7) Cleanup and consolidate the macros controlling frame and window
3740 layout into frame.h and window.h, and generalize the use of the
3741 various window_box_* functions (enhanced to handle the new fringe
3742 position and the per-window fringe and scroll bar settings).
3743
3744 * frame.h (struct frame): Rename members height to text_lines,
3745 width to text_cols, window_height to total_lines, window_width to
3746 total_cols, new_height to new_text_lines, new_width to
3747 new_text_cols. All uses changed.
3748 (struct frame): New members which consolidate common members of
3749 x_output, w32_output, and mac_output structures: left_pos,
3750 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
3751 win_gravity, size_hint_flags, border_width, internal_border_width,
3752 line_height, fringe_cols, left_fringe_width, right_fringe_width,
3753 want_fullscreen. All uses changed.
3754 (struct frame): New member column_width contaning the canonical
3755 column width, analogue to line_height. All uses changed.
3756 (struct frame): Rename members scroll_bar_pixel_width to
3757 config_scroll_bar_width, and scroll_bar_cols to
3758 config_scroll_bar_cols. All uses changed.
3759 (struct frame): New member scroll_bar_actual_width which
3760 consolidates and renames the vertical_scroll_bar_extra member of
3761 x_output, w32_output, and mac_output structures. All uses changed.
3762 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
3763 from x/w32/macterm.h files. All uses changed. Also change code
3764 which referred to f->output_data...->pixel_height.
3765 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
3766 from x/w32/macterm.h files. All uses changed. Also change code
3767 which referred to f->output_data...->pixel_width.
3768 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
3769 Also change code which referred to f->height.
3770 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
3771 Also change code which referred to f->width.
3772 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
3773 to update new_text_lines and new_text_cols members directly.
3774 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
3775 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
3776 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
3777 FRAME_SCROLL_BAR_COLS. All uses changed.
3778 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
3779 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
3780 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
3781 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
3782 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
3783 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
3784 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
3785 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
3786 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
3787 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
3788 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
3789 return line_height member (it now has proper value also for
3790 non-window frames).
3791 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
3792 return new column_width member (rather than the default font width).
3793 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
3794 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
3795 from x/w32/macterm.h files. Unconditionally return corresponding
3796 member of frame structure (they now have proper values also for
3797 non-window frames).
3798 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
3799 Calculate return value from left and right widths.
3800 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
3801 internal_border_width member (has proper value for non-window frame).
3802 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
3803 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
3804 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
3805 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
3806 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
3807 consolidated from xterm.h, macterm.h, and w32term.h.
3808 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
3809 consolidated from xterm.h, macterm.h, and w32term.h.
3810 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
3811 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
3812 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
3813 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
3814 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
3815 consolidated from x/mac/w32term.h.
3816 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
3817 consolidated from x/mac/w32term.h.
3818 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
3819 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
3820 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
3821 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
3822
3823 * window.h (struct window): Rename members left to left_col,
3824 top to top_line, height to total_lines, width to total_cols,
3825 left_margin_width to left_margin_cols, right_margin_width to
3826 right_margin_cols, orig_height to orig_total_lines, orig_top to
3827 orig_top_line. All uses changed.
3828 (struct window): New members left_fringe_width, right_fringe_width,
3829 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
3830 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
3831 New macros primarily used to simplify other macros.
3832 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
3833 referred to XINT (w->width).
3834 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
3835 referred to XINT (w->height).
3836 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
3837 referred to XINT (w->width) * canon_x_unit.
3838 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
3839 referred to XINT (w->height) * canon_y_unit.
3840 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
3841 referred to XINT (w->left).
3842 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
3843 all uses and code that referred to XINT (w->left) + XINT (w->width).
3844 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
3845 referred to XINT (w->top).
3846 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
3847 referred to XINT (w->top) + XINT (w->height).
3848 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
3849 referred to XINT (w->left) * canon_x_unit.
3850 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
3851 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
3852 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
3853 referred to XINT (w->top) * canon_y_unit.
3854 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
3855 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
3856 (WINDOW_LEFTMOST_P): New macro.
3857 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
3858 All uses changed.
3859 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
3860 All uses changed.
3861 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
3862 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
3863 Do not exclude left fringe width.
3864 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
3865 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
3866 Do not exclude fringe widths.
3867 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
3868 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
3869 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
3870 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
3871 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
3872 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
3873 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
3874 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
3875 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
3876 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
3877 New macros. Change code which referenced corresponding
3878 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
3879 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
3880 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
3881 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
3882 allow per-window scroll-bar settings.
3883 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
3884 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
3885 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
3886 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
3887 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
3888 FRAME_SCROLL_BAR_WIDTH.
3889 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 3890 (WINDOW_SCROLL_BAR_AREA_X): New macros.
0416870b
KS
3891 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
3892 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
3893 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
3894 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
3895 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
3896 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
3897 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
3898 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
3899 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
3900 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
3901 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
3902 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
3903 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
3904 (window_from_coordinates): Update prototype.
3905 (Fset_window_buffer): Update EXFUN.
3906 (set_window_buffer): Update prototype.
9018a88e 3907
0416870b 3908 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 3909 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
3910 changed.
3911 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
3912 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
3913 internal_border_width is now set to 0 for non-window frames.
3914 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
3915 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
3916 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
3917 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
3918 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
3919 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
3920 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
3921 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
3922 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 3923 Move to window.h and renamed [see window.h changes].
0416870b
KS
3924 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
3925 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
3926 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
3927 Use WINDOW_TOTAL_LINES.
0416870b
KS
3928 (frame_update_line_height): Remove prototype.
3929
3930 * buffer.h (struct buffer): Rename members measured in columns:
3931 left_margin_width to left_margin_cols, right_margin_width to
3932 right_margin_cols. All uses changed.
3933 New members left_fringe_width, right_fringe_width,
3934 fringes_outside_margins for per-buffer fringe settings.
3935 New members scroll_bar_width and vertical_scroll_bar_type for
3936 per-buffer scroll bar settings.
3937
3938 * buffer.c (init_buffer_once): Set buffer_defaults and
3939 buffer_local_flags for new buffer-local variables
3940 left_fringe_width, right_fringe_width, fringes_outside_margins,
3941 scroll_bar_width, and vertical_scroll_bar_type.
3942 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
3943 default-* variables for them.
3944
3945 * dispnew.c: Make (many) trivial substitutions for renamed and
3946 new macros in dispextern.h, frame.h and window.h.
3947 (mode_line_string): No need to adjust width for mode lines, as it
3948 is already adjusted by the caller.
3949 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 3950
0416870b
KS
3951 * frame.c: Make (many) trivial substitutions for renamed and
3952 new macros in dispextern.h, frame.h and window.h.
3953 (make_frame): Initialize left_fringe_width, right_fringe_width,
3954 fringe_cols, scroll_bar_actual_width, border_width,
3955 internal_border_width, column_width, line_height, x_pixels_diff,
3956 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
3957 members with values suitable for a non-window frames.
3958
3959 * gtkutil.c: Make (many) trivial substitutions for renamed and
3960 new macros in dispextern.h, frame.h and window.h.
9018a88e 3961
0416870b
KS
3962 * indent.c: Make (few) trivial substitutions for renamed and
3963 new macros in dispextern.h, frame.h and window.h.
3964
3965 * keyboard.c: Make (many) trivial substitutions for renamed and
3966 new macros in dispextern.h, frame.h and window.h.
3967 (make_lispy_event): Use window positions returned from
3968 window_from_coordinates when constructing the lisp event for
3969 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
3970 (incorrect) values locally.
3971 (make_lispy_movement): Use window positions returned from
3972 window_from_coordinates when constructing the lisp event, rather
3973 than calculating (incorrect) values locally.
3974
3975 * scroll.c: Make (some) trivial substitutions for renamed and
3976 new macros in dispextern.h, frame.h and window.h.
3977
3978 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
3979 scroll-bars.
3980
3981 * sysdep.c: Make (few) trivial substitutions for renamed and
3982 new macros in dispextern.h, frame.h and window.h.
3983
3984 * term.c: Make (some) trivial substitutions for renamed and
3985 new macros in dispextern.h, frame.h and window.h.
3986
3987 * widget.c: Make (few) trivial substitutions for renamed and
3988 new macros in dispextern.h, frame.h and window.h.
3989
3990 * window.c: Make (many) trivial substitutions for renamed and
3991 new macros in dispextern.h, frame.h and window.h.
3992 (make_window): Initialize new members
3993 left_margin_cols, right_margin_cols, left_fringe_width,
3994 right_fringe_width, fringes_outside_margins, scroll_bar_width,
3995 and vertical_scroll_bar_type.
3996 (coordinates_in_window): Adapted to new fringe/margin positions
9018a88e 3997 and per-window fringes and scroll-bars.
0416870b 3998 Fix bug related to incorrectly adjusting coordinates by
9018a88e 3999 frame's internal_border_width (the effect normally negible since
0416870b
KS
4000 the internal_border_width is typically 0 or 1 pixel, but very
4001 noticeable for an internal_border_width of e.g. 25 pixels).
4002 Upon successful return (other than ON_NOTHING), the coordinates
4003 are now always properly converted to window relative for the
4004 given display element.
4005 (window_from_coordinates): Add new parameters wx and wy to
4006 return the window relative x and y position in the returned
4007 window and part. A null arg means, don't return the position.
4008 All callers changed.
4009 (adjust_window_margins): New function which may reduce the width
4010 of the display margins if a window's text area is too small after
4011 resizing or splitting windows.
4012 (size_window): Fix bug that did not account for display margin
4013 widths when checking the minimum width of a window; use
4014 adjust_window_margins.
4015 (set_window_buffer): Call Fset_window_fringes and
4016 Fset_window_scroll_bars to setup per-window elements.
4017 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
4018 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
4019 (e.g. after splitting a window or resizing the frame).
4020 All callers changed.
0416870b
KS
4021 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
4022 (Fsplit_window): Duplicate original window's display margin,
4023 fringe, and scroll-bar settings; then call Fset_window_buffer with
4024 KEEP_MARGINS non-nil. This fixes a bug which caused a split
4025 window to only preserve the display margins in one of the windows.
c4b8aebc 4026 When splitting horizontally, call adjust_window_margins on both
0416870b
KS
4027 windows to ensure that the text area of the new windows is non too
4028 narrow. This fixes a bug which could cause emacs to trap if the
4029 width of the split window was less than the width of the display
4030 margins.
9018a88e
SM
4031 (window_box_text_cols): Renamed from window_internal_width.
4032 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
4033 Fix bug that caused vertical separator to be subtracted also on
4034 window frames. Fix another bug that did not reduce the returned
4035 value by the columns used for display margins.
4036 (window_scroll_line_based): Fix bug related to scrolling too much
4037 when display margins are present (implicitly fixed by the fix to
4038 window_box_text_cols).
4039 (scroll_left, scroll_right): Fix bug related to scrolling too far
4040 by default when display margins are present (implicitly fixed by
4041 the fix to window_box_text_cols).
4042 (struct saved_window): Rename members left to left_col, top to
4043 top_line, width to total_cols, height to total_lines, orig_top to
4044 orig_top_line, orig_height to orig_total_lines. All uses changed.
4045 New members left_margin_cols, right_margin_cols,
4046 left_fringe_width, right_fringe_width, fringes_outside_margins,
4047 scroll_bar_width, and vertical_scroll_bar_type for saving
4048 per-window display elements.
4049 (Fset_window_configuration): Restore display margins, fringes,
4050 and scroll bar settings. This fixes a bug which caused display
4051 margins to be discarded when saving and restoring a window
4052 configuration.
4053 (save_window_save): Save display margins, fringes, and scroll bar
4054 settings. This fixes a bug which caused display margins to be
4055 discarded when saving and restoring a window configuration.
4056 (Fset_window_margins): Do nothing if display margins are not
4057 really changed. Otherwise, call adjust_window_margins to ensure
4058 the text area doesn't get too narrow. This fixes a bug which
4059 could cause emacs to trap if setting display margins wider than
4060 the width of the window.
4061 (Fset_window_fringes): New defun to allow user to specifically set
4062 this window's fringe widths and position vs. display margins.
4063 (Fwindow_fringes): New defun to return window's actual fringe
4064 settings.
4065 (Fset_window_scroll_bars): New defun to allow user to specifically
4066 set this window's scroll bar width and position.
4067 (Fwindow_scroll_bars): New defun to return window's actual scroll
4068 bar settings.
4069 (compare_window_configurations): Also compare display margins,
4070 fringes, and scroll bar settings.
4071 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
4072
4073 * xdisp.c: Make (many) trivial substitutions for renamed and
4074 new macros in dispextern.h, frame.h and window.h.
4075 (window_box_width): Adapt to per-window fringes and scroll bars,
4076 and new fringe vs. display margin position. Note that returned
4077 value is no longer guaranteed to be a whole multiple of the frame
4078 column width, since per-window fringes may now be any width.
4079 (window_box_left_offset): New function like window_box_left, but
4080 value is relative to left border of window (rather than frame).
4081 (window_box_right_offset): New function like window_box_right,
4082 but value is relative to left border of window.
4083 (window_box_left): Adapt to per-window fringes and scroll bars,
4084 and new fringe vs. display margin position. Simplify by using
4085 WINDOW_LEFT_EDGE_X and window_box_left_offset.
4086 (window_box): Allow null args for unnecessary return values;
4087 change/simplify relevant callers.
4088 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
4089 and new fringe vs. display margin position.
4090 Use window_box_left_offset and window_box_right_offset
0416870b 4091 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
4092 scroll bars, and new fringe vs. display margin position.
4093 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
4094 (draw_fringe_bitmap): Rework to handle per-window fringes and new
4095 fringe vs. display margin position.
4096 (hscroll_window_tree): Use window_box_width instead of window_box.
a64387ee
JB
4097 (redisplay_window): Adapt to per-window scroll bars.
4098 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
4099 bars, and new fringe vs. display margin position.
4100 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
a64387ee 4101 (x_clear_end_of_line): Adapt to per-window fringes and scroll
0416870b
KS
4102 bars, and new fringe vs. display margin position. Fix bug which
4103 increased total width of full_width rows by width of scroll bars
4104 although window's total width already includes that.
4105 (x_fix_overlapping_area): Simplify using window_box_left_offset.
4106 (expose_area): Simplify using window_box_left_offset.
4107 (x_draw_vertical_border): Handle per-window scroll bar settings,
4108 mixing windows with left, right and no scroll bars.
4109
4110 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
4111 where it's used in x_list_fonts (for clarity).
4112 (frame_update_line_height): Remove unused function; functionality
4113 is now done directly when setting the default font in x_set_font.
4114
4115 * xfns.c: Make (many) trivial substitutions for renamed and
4116 new macros in dispextern.h, frame.h and window.h.
4117
4118 * xmenu.c: Make (some) trivial substitutions for renamed and
4119 new macros in dispextern.h, frame.h and window.h.
4120
4121 * xterm.h (struct x_output): Move members left_pos, top_pos,
4122 border_width, pixel_height, pixel_width, line_height,
4123 internal_border_width, vertical_scroll_bar_extra,
4124 left_fringe_width, right_fringe_width, fringe_cols,
4125 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
4126 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
4127 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
4128 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
4129 (PIXEL_WIDTH, PIXEL_HEIGHT)
4130 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
4131 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
4132 frame.h and renamed [see frame.h changes].
4133 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
4134 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
4135 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
4136 and renamed [see frame.h changes].
9018a88e 4137
0416870b
KS
4138 * xterm.c: Make (several) trivial substitutions for renamed and
4139 new macros in dispextern.h, frame.h and window.h.
4140 (x_draw_glyph_string_box): Adapt to per-window fringes and
4141 scroll-bars.
4142 (scroll_run): Adapt to new fringe position.
4143 (glyph_rect): Use window coordinates returned from
4144 window_from_coordinates rather than frame_to_window_pixel_xy.
4145 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
4146 scroll-bars.
4147 (handle_one_xevent): Simplify a USE_GTK conditional.
4148 (x_clip_to_row): Remove superfluous whole_line_p arg and code
4149 (fringes are now inside margins, i.e. always in the clipping area).
4150 All callers changed.
4151 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
4152 directly, then call compute_fringe_widths. Don't call
4153 frame_update_line_height.
4154
4155 * w32term.h (struct w32_output): Move members left_pos, top_pos,
4156 border_width, pixel_height, pixel_width, line_height,
4157 internal_border_width, vertical_scroll_bar_extra,
4158 left_fringe_width, right_fringe_width, fringe_cols,
4159 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
4160 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
4161 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
4162 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
4163 (PIXEL_WIDTH, PIXEL_HEIGHT)
4164 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
4165 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
4166 frame.h and renamed [see frame.h changes].
4167 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
4168 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
4169 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
4170 and renamed [see frame.h changes].
9018a88e 4171
0416870b
KS
4172 * w32term.c: Make (several) trivial substitutions for renamed and
4173 new macros in dispextern.h, frame.h and window.h.
4174 (x_draw_glyph_string_box): Adapt to per-window fringes and
4175 scroll-bars.
4176 (glyph_rect): Use window coordinates returned from
4177 window_from_coordinates rather than frame_to_window_pixel_xy.
4178 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
4179 scroll-bars.
4180 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
4181 (fringes are now inside margins, i.e. always in the clipping area).
4182 All callers changed.
4183 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
4184 directly, then call compute_fringe_widths. Don't call
4185 frame_update_line_height.
4186
4187 * w32console.c: Make (few) trivial substitutions for renamed and
4188 new macros in dispextern.h, frame.h and window.h.
4189
4190 * w32fns.c: Make (many) trivial substitutions for renamed and
4191 new macros in dispextern.h, frame.h and window.h.
4192
4193 * w32menu.c: Make (few) trivial substitutions for renamed and
4194 new macros in dispextern.h, frame.h and window.h.
4195
4196 * macterm.h (struct mac_output): Move members left_pos, top_pos,
4197 border_width, pixel_height, pixel_width, line_height,
4198 internal_border_width, vertical_scroll_bar_extra,
4199 left_fringe_width, right_fringe_width, fringe_cols,
4200 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
4201 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
4202 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
4203 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
4204 (PIXEL_WIDTH, PIXEL_HEIGHT)
4205 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
4206 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
4207 frame.h and renamed [see frame.h changes].
4208 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
4209 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
4210 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
4211 and renamed [see frame.h changes].
9018a88e 4212
0416870b
KS
4213 * macterm.c: Make (several) trivial substitutions for renamed and
4214 new macros in dispextern.h, frame.h and window.h.
4215 (x_draw_glyph_string_box): Adapt to per-window fringes and
4216 scroll-bars.
4217 (glyph_rect): Use window coordinates returned from
4218 window_from_coordinates rather than frame_to_window_pixel_xy.
4219 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
4220 scroll-bars.
4221 (x_clip_to_row): Remove superfluous whole_line_p arg and code
4222 (fringes are now inside margins, i.e. always in the clipping area).
4223 All callers changed.
4224 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
4225 directly, then call compute_fringe_widths. Don't call
4226 frame_update_line_height.
4227
4228 * macfns.c: Make (several) trivial substitutions for renamed and
4229 new macros in dispextern.h, frame.h and window.h.
9018a88e 4230 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
4231
4232 * macmenu.c: Make (few) trivial substitutions for renamed and
4233 new macros in dispextern.h, frame.h and window.h.
4234
4235 * msdos.h (struct x_output): Remove members left_pos, top_pos,
4236 and line_height, and use corresponding new members in struct
4237 frame. All uses changed.
4238 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
4239 superseeded by corresponding macros in frame.h.
4240
4241 * msdos.c: Make (several) trivial substitutions for renamed and
4242 new macros in dispextern.h, frame.h and window.h.
4243 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 4244 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
4245 (internal_terminal_init): No need to initialize line_height here;
4246 it now defaults to 1.
4247
9018a88e
SM
42482003-05-24 Stefan Monnier <monnier@cs.yale.edu>
4249
4250 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
4251 dropping `down' events.
4252
016bd3c0
AS
42532003-05-24 Andreas Schwab <schwab@suse.de>
4254
4255 * coding.c (find_safe_codings): Fix last change.
4256
4dacadcc
TTN
42572003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
4258
4259 * xfns.c (x_window): Fix typo from 2003-05-21 change.
4260
319830ce
SM
42612003-05-23 Stefan Monnier <monnier@cs.yale.edu>
4262
9018a88e
SM
4263 * xdisp.c (display_mode_element): Increase max depth.
4264 Simplify the error handling code. Use a different error string
4265 for the case where we hit the depth limit.
4266
319830ce
SM
4267 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
4268
4269 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
4270
42712003-05-21 Stefan Monnier <monnier@cs.yale.edu>
4272
4273 * intervals.c (get_local_map): Don't get char-property of previous
4274 point any more: get_pos_property already does it and better.
4275
c67de8ba
DL
42762003-05-21 Dave Love <fx@gnu.org>
4277
4278 [Merged from unicode branch.]
4279
4280 * xfns.c (x_window, x_window): Use use_xim.
4281
4282 * xterm.c (use_xim): Initialize.
4283 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
4284 (x_term_init): Maybe set use_xim.
4285
4286 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
4287
edd3ff1d
JR
42882003-05-21 Jason Rumney <jasonr@gnu.org>
4289
4290 * unexw32.c (_start): Remove _fmode initialization.
4291
4292 * emacs.c (main) [WINDOWSNT]: Move it here.
4293
463f55ee
DL
42942003-05-20 Dave Love <fx@gnu.org>
4295
4296 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
4297
af253914
RS
42982003-05-19 Richard M. Stallman <rms@gnu.org>
4299
4300 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
4301 as value for QCfont attribute.
4302 (realize_default_face): lface should already exist; crash if not.
4303 Specify 0 for FORCE_P when calling set_lface_from_font_name.
4304
4305 * frame.c (Fignore_event): Doc fix.
4306
1d211019
KH
43072003-05-19 Kenichi Handa <handa@m17n.org>
4308
4309 * coding.c (decode_coding_string): Handle post-read-conversion
4310 even if the coding doesn't require decoding.
4311
4dd68254
RS
43122003-05-18 Richard M. Stallman <rms@gnu.org>
4313
4314 * callproc.c (Fcall_process_region): Doc fix.
4315
14d87dc9
SM
43162003-05-17 Stefan Monnier <monnier@cs.yale.edu>
4317
deca5d96
SM
4318 * lread.c (Fload): Print a message if package is obsolete.
4319
14d87dc9
SM
4320 * window.c (Fselect_window): Add optional `norecord' arg.
4321 (select_window_1): Fold into Fselect_window.
4322 (select_window_norecord): New function.
4323 (temp_output_buffer_show): Use it. Preserve current buffer.
4324
4325 * window.h (Fselect_window): Update declaration.
4326
4327 * window.c (delete_window, Fother_window, Fset_window_configuration):
4328 * minibuf.c (read_minibuf):
4329 * macterm.c (x_new_focus_frame):
4330 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
4331 * callint.c (Fcall_interactively):
4332 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
4333
4334 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
4335
78f52183
DK
43362003-05-17 David Kastrup <dak@gnu.org>
4337
4338 * process.c (read_process_output): Back out change from 2003-03-09.
4339
14d87dc9
SM
43402003-05-17 Stefan Monnier <monnier@cs.yale.edu>
4341
4342 * editfns.c (get_pos_property): Don't assume that `object' = nil.
4343
4344 * textprop.c (text_property_stickiness): New arg `buffer'.
4345
4346 * intervals.h (text_property_stickiness): New arg `buffer'.
4347 (get_pos_property): Declare.
4348
4349 * intervals.c (get_local_map): Use get_pos_property, to obey
4350 stickiness and empty overlays.
4351 (create_root_interval, graft_intervals_into_buffer): Use BEG.
4352 (merge_properties, intervals_equal, merge_properties_sticky):
4353 Use XCAR, XCDR.
4354 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
4355
1fd1cc2f
RS
43562003-05-17 Richard M. Stallman <rms@gnu.org>
4357
4f9f637a
RS
4358 * minibuf.c (read_minibuf): If buffer is empty, record the default
4359 in the history.
4360 (Fminibuffer_complete_word): When deleting the overlap, take account
4361 of its real position.
4362
4363 * fns.c (map_char_table): Fix previous change.
4364
1fd1cc2f
RS
4365 * syntax.c (find_defun_start):
4366 When open_paren_in_column_0_is_defun_start,
4367 return beginning of buffer.
4368
4369 * lisp.h (map_char_table): Declare added arg.
4370
4371 * fns.c (map_char_table): New arg TABLE gets the master table.
4372 All calls changed.
4373 Process default and inheritance, resorting to Faref if necessary.
4374
4375 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
4376 (Faccessible_keymaps): Pass new arg to map_char_table.
4377
4378 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
4379
4380 * casetab.c (set_case_table): Pass new arg to map_char_table.
4381
4382 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
4383
4384 * lisp.h (specbinding_func): New typedef.
4385 (struct specbinding): Use specbinding_func, to put the `volatile'
4386 in the right place.
4387
4388 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
4389 to avoid GCC warning.
14d87dc9 4390
b4bd27c5
RS
43912003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
4392
14d87dc9 4393 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 4394
35fb885d
SM
43952003-05-15 Stefan Monnier <monnier@cs.yale.edu>
4396
4397 * keyboard.c (apply_modifiers): Don't fill the other cache.
4398
9a274fbd
SM
43992003-05-14 Stefan Monnier <monnier@cs.yale.edu>
4400
c55b5fad
SM
4401 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
4402
9a274fbd
SM
4403 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
4404 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
4405 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
4406 (Fset_window_configuration, Fcurrent_window_configuration)
4407 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
4408 (Fpos_visible_in_window_p, mark_window_cursors_off)
4409 (window_internal_height, window_internal_width, Frecenter)
4410 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
4411 (replace_buffer_in_all_windows, init_window_once, init_window)
4412 (syms_of_window, keys_of_window): Move from lisp.h.
4413 * lisp.h: Move window.c declarations to window.h.
4414
4415 * bytecode.c: Include window.h.
4416 * emacs.c: Include window.h.
4417
14d87dc9 4418 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
4419 (keyremap): Add `parent' field.
4420 (keyremap_step): Use it. Remove `parent' argument.
4421 (read_key_sequence): Setup and use the new `parent' field.
4422
fd93e331
SM
44232003-05-11 Stefan Monnier <monnier@cs.yale.edu>
4424
4425 * keyboard.c (adjust_point_for_property): Ensure termination.
4426
1c4001a1
SM
44272003-05-10 Stefan Monnier <monnier@cs.yale.edu>
4428
4429 * keyboard.c (follow_key): Remove dead variable `did_meta'.
4430 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
4431 duplicated handling of function-key-map and key-translation-map
4432 in read_key_sequence.
4433 (read_key_sequence): Use them.
4434
4435 * keyboard.c (adjust_point_for_property): Try harder to move point
4436 to the non-sticky end of an invisible property.
4437
4438 * xdisp.c (single_display_prop_intangible_p): Make `space' display
4439 property intangible as well.
4440
780379b1
AS
44412003-05-10 Andreas Schwab <schwab@suse.de>
4442
4443 * xmenu.c (single_menu_item): Change last parameter to void* to
4444 avoid warning.
4445
ca2de342
RS
44462003-05-09 Richard M. Stallman <rms@gnu.org>
4447
4448 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
4449 Bind Qinhibit_modification_hooks to t so there will be no GC.
4450 Rename local `tem' to `save_deactivate_mark'.
4451
4452 * eval.c (specpdl_ptr): Declare volatile.
4453 (unbind_to): Copy the whole binding and decrement specpdl_ptr
4454 before doing the work of unbinding it.
4455
4456 * lisp.h (struct specbinding): Declare elements volatile.
4457 (specpdl_ptr): Declare volatile.
4458
4459 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
4460
4461 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
4462 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
4463
347003be
DL
44642003-05-08 Dave Love <fx@gnu.org>
4465
4466 * coding.c (Vlast_coding_system_used): Doc fix.
4467
5adcec23
JR
44682003-05-07 Jason Rumney <jasonr@gnu.org>
4469
4470 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
4471 when system does not support them.
4472
5fe3b8a4
SM
44732003-05-05 Stefan Monnier <monnier@cs.yale.edu>
4474
4475 * fileio.c (Qwrite_region_annotate_functions): New var.
4476 (build_annotations): Use it to process the global part of the hook.
4477 (syms_of_fileio): Init and staticpro it.
4478
4479 * keyboard.c (safe_run_hooks_error): Display a message instead of
4480 silently ignoring the error.
4481
44822003-05-03 Stefan Monnier <monnier@cs.yale.edu>
4483
4484 * keyboard.c (input_available_signal): Mark static.
4485 (menu_bar_items): Use map_keymap.
4486 (menu_bar_one_keymap): Remove.
4487 (menu_bar_item): Adjust arglist (for use in map_keymap).
4488 Properly hide a second binding when not both are keymaps.
4489
4490 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
4491 (single_keymap_panes): Use it and map_keymap.
4492 (single_menu_item): Use skp as well.
4493
4494 * keymap.h (map_keymap_function_t): New type.
4495 (map_keymap): Declare.
4496
4497 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
4498 (map_keymap_call, Fmap_keymap): New functions.
4499 (syms_of_keymap): Defsubr map-keymap.
4500
4b1b4443
JD
45012003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4502
4503 * gtkutil.c (create_dialog, make_widget_for_menu_item)
4504 (make_menu_item, create_menus, xg_update_menu_item): Don't call
4505 ..._with_mnemonic functions for menu items.
4506
1f816871
KH
45072003-05-01 Kenichi Handa <handa@m17n.org>
4508
4509 * coding.c (coding_system_accept_latin_extra_p): Delete this
4510 function.
4511 (find_safe_codings): Pay attention to
4512 the property tranlsation-table-for-encode of each codings.
4513 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
4514
5ed6ba5b
SM
45152003-05-01 Stefan Monnier <monnier@cs.yale.edu>
4516
4517 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
4518
32c06229
SM
45192003-04-30 Stefan Monnier <monnier@cs.yale.edu>
4520
4521 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
4522
4523 * lisp.h (CHECK): Wrap args in parenthesis.
4524 (specbind): Fix doc: symbol = Qnil is not supported any more.
4525
4526 * bytecode.c (Fbyte_code) <unwind-protect>:
4527 Use Fprogn rather than 0 and Qnil.
4528
4529 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
4530 `double', and `triple' modifiers as well.
4531
ed3c3314
RS
45322003-04-30 Richard M. Stallman <rms@gnu.org>
4533
4534 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
4535
4536 * alloc.c (abort_on_gc): New variable.
4537 (Fgarbage_collect): Abort if abort_on_gc is set.
4538
4539 * lisp.h (abort_on_gc): Add decl.
4540
4541 * eval.c (Fsignal): Clear abort_on_gc.
4542
4543 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 4544 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
4545
4546 * xdisp.c (move_it_vertically_backward): Do the final big else
4547 even if nlines is 0.
4548
4549 * xdisp.c (redisplay_internal): Finish the per-frame loop
4550 even if redisplay is suspended by input.
4551
0b325c12
AC
45522003-04-24 Andrew Choi <akochoi@shaw.ca>
4553
4554 * macterm.c (x_list_fonts): Return all fonts that match if
4555 maxnames = -1.
4556
4e837cd0
KH
45572003-04-25 Kenichi Handa <handa@m17n.org>
4558
4559 * syntax.c (skip_chars): Fix previous change.
4560
9af7511a
KH
45612003-04-24 Kenichi Handa <handa@m17n.org>
4562
4563 * syntax.c (skip_chars): Make the code faster by using the common
4564 technique of *p, *stop, and *endp.
4565
e3b2c21f
JD
45662003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4567
4568 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 4569 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
4570 being updated.
4571
32c06229
SM
45722003-04-19 Stefan Monnier <monnier@cs.yale.edu>
4573
4574 * eval.c (Fapply): Undo last change and add a comment about why.
4575
c6464167
MB
45762003-04-18 Miles Bader <miles@gnu.org>
4577
4578 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
4579 pickier PARSE_MULTIBYTE_SEQ.
4580
e509f168
SM
45812003-04-17 Stefan Monnier <monnier@cs.yale.edu>
4582
4583 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
4584 Use XCDR, XCAR, CONSP.
4585 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
4586 (Fapply): Remove unnecessary GCPRO.
4587
4588 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
4589
4590 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
4591
4592 * buffer.h: Don't hardcode BEG==1.
4593
4594 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
4595
5ceea398
RS
45962003-04-16 Richard M. Stallman <rms@gnu.org>
4597
4598 * xdisp.c (try_window, try_window_reusing_current_matrix):
4599 When at end of window, set window_end_pos to Z-ZV.
4600
4601 * buffer.c (Foverlay_recenter): Doc fix.
4602
e509f168
SM
46032003-04-14 Stefan Monnier <monnier@cs.yale.edu>
4604
4605 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
4606
d243e605
AC
46072003-04-14 Andrew Choi <akochoi@shaw.ca>
4608
4609 * macterm.c (mac_check_for_quit_char): Don't check more often than
4610 once a second.
4611
6901b111
SM
46122003-04-11 Stefan Monnier <monnier@cs.yale.edu>
4613
4614 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
4615 specially, so that they can't hide an implicit switch-frame event.
4616 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
4617 (head_table): Use switch-frame as event_kind for select-window.
4618 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
4619
4620 * editfns.c (Fformat): Lisp_Object/int mixup.
4621 (format2): Remove unused var numargs.
4622
e301806f 46232003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 4624
6901b111 4625 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
4626 (Qafter_insert_file_set_coding): New variable.
4627 (syms_of_fileio): Initialize and staticpro it. Delete declaration
4628 for after-insert-file-adjust-coding-function.
4629 (Finsert_file_contents): Call Qafter_insert_file_set_coding
4630 instead of Vafter_insert_file_adjust_coding_function.
4631
38914424
KH
46322003-04-11 Kenichi Handa <handa@m17n.org>
4633
4634 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
4635
4636 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
4637 string. Callers changed.
4638
46392003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 4640
6901b111 4641 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 4642 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
4643 (Finsert_file_contents):
4644 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
4645 decode-format.
4646
f979dc05
JD
46472003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4648
4649 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
4650 get GtkAdjustment as widget now is a GtkRange.
4651
4652 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
4653 GtkRange to avoid memory leak.
4654
f8c6b4c2 46552003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 4656
50ebc53d
KH
4657 * xfaces.c (Vface_font_rescale_alist): New variable.
4658 (struct font_name): New member rescale_ratio.
4659 (font_rescale_ratio): New function.
6901b111 4660 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
4661 (better_font_p): On comparing point sized, pay attention to
4662 recale_ratio member of fonts.
4663 (build_scalable_font_name): Reflect font->rescale_ratio in the
4664 font name.
6901b111 4665 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 4666
cb98871c
KH
4667 * lread.c (read1): Before calling index, check if the 2nd
4668 arguemnt is in ASCII range.
4669
4773b8ca
RS
46702003-04-08 Richard M. Stallman <rms@gnu.org>
4671
b0ada147
RS
4672 * fileio.c (Ffile_symlink_p): Doc fix.
4673
4674 * editfns.c (Fformat): Translate positions of text properties
4675 in the format string to apply them to the result.
4676
4773b8ca
RS
4677 * fileio.c (Finsert_file_contents): Doc fix.
4678 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
4679
46802003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 4681
4773b8ca
RS
4682 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
4683
e8f25745 46842003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 4685
e8f25745
ST
4686 * mac.c (init_mac_osx_environment): Switch libexec and bin so
4687 that self-contained application finds libexec files.
4688
f8c6b4c2 46892003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 4690
6901b111
SM
4691 * coding.c (code_convert_region_unwind):
4692 Set Vlast_coding_system_used to the argument.
2310d84c
KH
4693 (code_convert_region): If post-read-conversion function changed
4694 the value of last-coding-sytem, keep the new value in
4695 coding->symbol so that it won't be overridden.
4696 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
4697 (coding_system_accept_latin_extra_p): New function.
4698 (find_safe_codings): Pay attention to characters registered in
4699 latin-extra-code-table.
2310d84c 4700
39c9a034
TTN
47012003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
4702
4703 * Makefile.in (md5.o): Add missing dependency info.
4704
eb67c5d6
RS
47052003-04-06 Richard M. Stallman <rms@gnu.org>
4706
4707 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
4708
4709 * marker.c (verify_bytepos): New function.
4710
4711 * intervals.c (set_intervals_multibyte_1): When becoming
4712 multibyte, adjust right and left child sizes to a whole set of
4713 characters. If an interval gets zero total-length, delete it.
4714 If an interval consists of just its children, delete one of them.
4715
4716 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
4717 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 4718
eb67c5d6
RS
4719 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
4720 All calls deleted.
4721 (lisp_malloc): Do the work here directly.
4722
b1f81fc5
JB
47232003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
4724
4725 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
4726 char tables.
4727
47282003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
4729
4730 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
4731 destructively change "%S" to "%s".
4732
774666fb
MB
47332003-04-03 Miles Bader <miles@gnu.org>
4734
4735 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
4736 always set.
4737
19c37f01
DL
47382003-04-01 Dave Love <fx@gnu.org>
4739
4740 * xfns.c (xpm_lookup_color): Grok "opaque".
4741
2f4b24c3
AC
47422003-03-31 Andrew Choi <akochoi@shaw.ca>
4743
4744 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
4745 parent window ID.
4746
4747 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
4748
4749 * macterm.h (struct mac_output): Define x_pixels_diff and
4750 y_pixels_diff.
b1f81fc5 4751
9443fcf6
JB
47522003-03-31 Juanma Barranquero <lektu@terra.es>
4753
4754 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
4755 blockinput.h and files included from it.
4756
e072891b
KS
47572003-03-31 Kim F. Storm <storm@cua.dk>
4758
4759 The following changes consolidates the common code related to
4760 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
4761 files into frame.c.
9443fcf6 4762
e072891b
KS
4763 * frame.c: Include blockinput.h.
4764 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
4765 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
4766 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
4767 related vars here.
4768 (struct frame_parm_table, frame_parms): New table for describing
4769 frame parameters and their associated Q-variable.
4770 The order of the parameters corresponds to the sequence of the
4771 frame_parm_handlers table in redisplay_interface.
4772 (x_fullscreen_move, x_set_frame_parameters)
4773 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
4774 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
4775 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4776 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
4777 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
4778 Generic functions for processing of frame parameters.
4779 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
4780 (display_x_get_resource, x_get_resource_string): Functions for
4781 generic access to X resources.
4782 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
4783 (x_default_parameter, Fx_parse_geometry): Functions for generic
4784 access to frame parameters.
6901b111
SM
4785 (x_figure_window_size): Generic calculation of frame size.
4786 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
4787 (syms_of_frame): Intern and staticpro frame parameter variables.
4788 Defvar_lisp Vx_resource_class and Vx_resource_name here.
4789 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 4790
e072891b
KS
4791 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
4792 parameter related vars defined in frame.c.
4793 (EMACS_CLASS): Define here.
4794 (enum FULLSCREEN_*): Define here.
4795 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
4796 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
4797 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
4798 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
4799 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
4800 (x_set_visibility, x_set_autoraise, x_set_autolower)
4801 (x_set_unsplittable, x_set_vertical_scroll_bars)
4802 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
4803 (x_figure_window_size): Add prototypes.
4804
4805 * dispextern.h (frame_parm_handler): New typedef.
4806 (struct redisplay_interface): New member frame_parm_handlers.
4807 (enum resource_types): Move declaration here.
4808 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
4809 (x_default_parameter): Add prototypes.
4810
4811 * window.c: Remove extern decl for frame parameter vars.
4812 (change_window_heights): New generic function;
4813 replaces x_change_window_heights. All users changed.
4814
4815 * window.h (change_window_heights): Add prototype.
4816
4817 * xfaces.c: Remove extern decl for frame parameter vars.
4818
4819 * xterm.h (EMACS_CLASS): Remove. Use generic define.
4820 (struct w32_display_info): Fix type of xrdb member.
4821 (enum FULLSCREEN_*): Remove.
4822 Remove prototypes for generic functions (in frame.h).
4823
4824 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
4825 parameters now defined in frame.h and frame.c.
4826 (Vx_resource_name): Remove. Use generic var.
4827 (enum x_frame_parms): Remove (bogus, unused enum).
4828 (check_x_display_info): Make non-static (for frame.c).
4829 (struct x_frame_parm_table, x_frame_parms): Remove.
4830 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
4831 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
4832 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4833 (x_change_window_heights, x_set_autoraise, x_set_autolower)
4834 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
4835 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
4836 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
4837 Remove. Use generic functions instead.
4838 (enum resource_types): Remove.
4839 (x_set_scroll_bar_default_width): New global function (for frame.c).
4840 (Fx_create_frame): Depend on x_figure_window_size to add space for
4841 toolbar and setup size_hint_flags.
4842 (x_frame_parm_handlers): New table for redisplay_interface.
4843 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 4844
e072891b
KS
4845 * xterm.c: Remove unnecessary extern declarations.
4846 (x_fullscreen_adjust): Remove. Use generic instead.
4847 (x_redisplay_interface): Add x_frame_parm_handlers member.
4848
4849 * w32gui.h (XrmDatabase): New (dummy) typedef.
4850
4851 * w32term.h (EMACS_CLASS): Remove. Use generic define.
4852 (struct w32_display_info): Fix type of xrdb member.
4853 (enum FULLSCREEN_*): Remove.
4854 (x_fullscreen_adjust): Remove prototype.
4855
4856 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
4857 parameters now defined in frame.h and frame.c.
4858 (Vx_resource_name): Remove. Use generic var.
4859 (enum x_frame_parms): Remove (bogus, unused enum).
4860 (check_x_display_info): Make non-static (for frame.c).
4861 (struct x_frame_parm_table, x_frame_parms): Remove.
4862 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
4863 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
4864 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4865 (x_change_window_heights, x_set_autoraise, x_set_autolower)
4866 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
4867 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
4868 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
4869 Remove. Use generic functions instead.
4870 (enum resource_types): Remove.
4871 (x_set_scroll_bar_default_width): New global function (for frame.c).
4872 (Fx_create_frame): Depend on x_figure_window_size to add space for
4873 toolbar and setup size_hint_flags.
4874 (w32_frame_parm_handlers): New table for redisplay_interface.
4875 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 4876
e072891b
KS
4877 * w32term.c: Remove unnecessary extern declarations.
4878 (x_fullscreen_adjust): Remove. Use generic instead.
4879 (x_redisplay_interface): Add w32_frame_parm_handlers member.
4880
4881 * w32reg.c (x_get_string_resource): Use XrmDatabase.
4882
4883 * macgui.h (XrmDatabase): New (dummy) typedef.
4884
4885 * macterm.h (EMACS_CLASS): Remove.
4886 (struct mac_display_info): Add xrdb member.
4887 (struct mac_output): Add want_fullscreen member.
4888
4889 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
4890 parameters now defined in frame.h and frame.c.
4891 (Vx_resource_name): Remove. Use generic var.
4892 (check_x_display_info): Make non-static (for frame.c).
4893 (struct x_frame_parm_table, x_frame_parms): Remove.
4894 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
4895 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
4896 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4897 (x_change_window_heights, x_set_autoraise, x_set_autolower)
4898 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
4899 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
4900 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
4901 Remove. Use generic functions instead.
4902 (enum resource_types): Remove.
4903 (x_set_scroll_bar_default_width): New global function (for frame.c).
4904 (mac_frame_parm_handlers): New table for redisplay_interface.
4905 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 4906
e072891b
KS
4907 * macterm.c: Remove unnecessary extern declarations.
4908 (x_redisplay_interface): Add mac_frame_parm_handlers member.
4909
3e6a560b
KS
4910 * Makefile.in (frame.o): Add dependency on blockinput.h and files
4911 included from it (atimer.h and systime.h).
4912
7b7b454e
AS
49132003-03-30 Andreas Schwab <schwab@suse.de>
4914
4915 * xdisp.c (x_insert_glyphs): Fix swapped width and height
4916 parameters for shift_glyphs_for_insert.
4917
4918 * macterm.c (x_redisplay_interface): Add missing entry for
4919 draw_vertical_window_border.
4920
beb402de
KG
49212003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
4922
4923 * fileio.c (Fexpand_file_name): In the no-handler case, after
4924 expanding, look again for a handler and invoke it. This is needed
4925 for filenames like "/foo/../user@host:/bar/../baz" -- the first
4926 expansion produces "/user@host:/bar/../baz" which needs to be
4927 expanded again for the finame result "/user@host:/baz".
4928
b676f356
JD
49292003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4930
4931 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
4932 of area to be redrawn for better performance.
4933
3c671a56
SM
49342003-03-28 Stefan Monnier <monnier@cs.yale.edu>
4935
4936 * xterm.c (take_vertical_position_into_account): Remove.
4937 (xt_action_hook): Call set_vertical_scroll_bar if needed.
4938 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
4939 (xm_scroll_callback, x_create_toolkit_scroll_bar)
4940 (x_set_toolkit_scroll_bar_thumb): Simplify.
4941 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
4942 (XTread_socket): Remove unused var.
4943 (x_make_frame_invisible): Replace goto with else.
4944
4945 * xdisp.c (set_vertical_scroll_bar): New fun.
4946 (redisplay_window): Use it.
4947
84f2e615
RS
49482003-03-26 Richard M. Stallman <rms@gnu.org>
4949
4950 * xdisp.c (update_tool_bar): Recompute tool bar if
4951 update_mode_lines is set. Set w->update_mode_line
4952 only if the tool bar contents actually change.
4953 (update_menu_bar): Undo previous change.
4954
70b6104c
JD
49552003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4956
5fd6f727
JD
4957 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
4958 (xg_frame_set_char_size): Calculate scroll bar width before frame
4959 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
4960 (xg_separator_p): Check for all documented separator types.
4961 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
4962 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
4963
70b6104c
JD
4964 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
4965 so tool bar gets updated.
4966
d9b36d19
SM
49672003-03-26 Stefan Monnier <monnier@cs.yale.edu>
4968
4969 * data.c (store_symval_forwarding): Re-instate part of the code
4970 that was deleted with too much enthusiasm.
4971
49722003-03-25 Stefan Monnier <monnier@cs.yale.edu>
4973
4974 * data.c (store_symval_forwarding): Delete special read-only
4975 hack for type == -1, since we now use ->constant instead.
4976 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
4977
4978 * buffer.c (overlays_in): Declare static.
4979 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
4980 `constant' field rather than the variable's `type' field.
4981
365fa1b3
AC
49822003-03-24 Andrew Choi <akochoi@shaw.ca>
4983
4984 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
4985
4986 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
4987
4988 * fns.c [MAC_OSX]: Do not redefine vector.
4989
4990 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
4991
4992 * macgui.h: Remove definition of No_Cursor.
4993
d9b36d19 4994 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
4995
4996 * xdisp.c: Define No_Cursor.
4997 (x_write_glyphs, notice_overwritten_cursor)
4998 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
4999 (note_mouse_highlight): Remove Mac-specific code.
5000 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 5001
c0bcce6f
JPW
50022003-03-24 John Paul Wallington <jpw@gnu.org>
5003
5004 * xdisp.c (redisplay_window): If mini window's buffer is not
5005 empty, then redisplay it like other windows.
5006
a526b96c
KS
50072003-03-23 Kim F. Storm <storm@cua.dk>
5008
5009 * w32term.c (w32_draw_window_cursor): Fix last change.
5010
37ab321e
KH
50112003-03-23 Kenichi Handa <handa@m17n.org>
5012
a526b96c
KS
5013 * alloc.c (make_string_from_bytes, make_specified_string):
5014 Add `const' for the arg CONTENTS.
37ab321e
KH
5015
5016 * lisp.h (make_string_from_bytes, make_specified_string):
5017 Prototypes adjusted.
5018
7863d625
JD
50192003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5020
a526b96c 5021 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 5022
7863d625
JD
5023 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
5024 (XG_SB_RANGE): New define.
5025
5026 * gtkutil.c (xg_fixed_handle_expose): New function.
5027 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
5028 expose events.
5029 (xg_update_scrollbar_pos): Take two more arguments, left and width
5030 of scroll bar including borders.
5031 Clear left and right part outside scroll bar separately as some
5032 themes have bars that are not an even number of pixels.
d9b36d19 5033 Don't set reallocate_redraws, don't call
7863d625
JD
5034 gdk_window_process_all_updates.
5035 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
5036 so no need to change it. Calculate size and value with XG_SB_RANGE.
5037
d9b36d19
SM
5038 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
5039 Pass left and width of scroll bar including borders to
7863d625
JD
5040 xg_update_scrollbar_pos.
5041
af0ad939
TTN
50422003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
5043
5044 * Makefile.in: Make sure space precedes end-of-line backslashes.
5045
b22139fd
KS
50462003-03-22 Kim F. Storm <storm@cua.dk>
5047
5048 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
5049 Add generic versions here. Remove system specific versions
5050 defined elsewhere.
5051
5052 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
5053 Add prototypes.
5054
6e6410cf
KS
5055 * xterm.h (STORE_NATIVE_RECT): New macro.
5056
5c9cc435
KS
50572003-03-21 Kim F. Storm <storm@cua.dk>
5058
00c64fab
SM
5059 * xdisp.c (get_glyph_string_clip_rect):
5060 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
5061
5062 * dispextern.h (struct redisplay_interface): Add active_p
5063 argument to draw_window_cursor member. All uses changed.
5064
acd37560
KS
50652003-03-21 Kim F. Storm <storm@cua.dk>
5066
5067 The following changes consolidate code related to writing and
5068 inserting glyphs, exposing frame, the tool bar, the mouse face,
5069 the output cursor, and help echo from xterm.c, w32term.c and
5070 macterm.c into xdisp.c. It also generalizes the use of the
5071 window_part enum instead of using numeric values throughout.
af0ad939 5072
acd37560
KS
5073 * xdisp.c: Consolidate gui-independent code here.
5074 Include keymap.h.
5075 (Qhelp_echo): Import.
5076 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
5077 (help_echo_string, help_echo_window, help_echo_object)
5078 (previous_help_echo_string, help_echo_pos): Declare here.
5079 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
5080 (estimate_mode_line_height): Define here. Handle windowing
5081 systems directly (without using estimate_mode_line_height_hook).
5082 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
5083 (update_window_cursor, update_cursor_in_window_tree)
5084 (fast_find_position, fast_find_string_pos)
5085 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
5086 (expose_area, expose_line, expose_overlaps, expose_window)
5087 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
5088 declared static as they are only used locally in xdisp.c.
5089 (draw_glyphs): Rename from x_draw_glyphs and make static.
5090 (tool_bar_item_info, notice_overwritten_cursor): Make static.
5091 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
5092 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 5093 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
5094 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
5095 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
5096 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
5097 (note_mouse_highlight, x_clear_window_mouse_face)
5098 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
5099 (x_intersect_rectangles): New generic functions for use by xdisp.c
5100 and GUI front-ends.
5101 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
5102 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
5103
5104 * dispextern.h (Display_Info): Generic typedef for *_display_info.
5105 (NativeRectangle): Generic typedef for rectangle type.
5106 (enum window_part): Move here from window.c.
5107 (struct redisplay_interface): New members flush_display_optional,
5108 define_frame_cursor, clear_frame_area, draw_window_cursor,
5109 draw_vertical_window_border, shift_glyphs_for_insert.
5110 Rename member clear_mouse_face to clear_window_mouse_face.
5111 (estimate_mode_line_height_hook): Remove hook.
5112 (auto_raise_tool_bar_buttons_p): Don't declare extern.
5113 (tool_bar_item_info): Remove prototype.
5114 (help_echo_string, help_echo_window, help_echo_object)
5115 (previous_help_echo_string, help_echo_pos)
5116 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
5117 (x_stretch_cursor_p, output_cursor): Declare extern.
5118 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
5119 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
5120 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
5121 (display_and_set_cursor, set_output_cursor, x_cursor_to)
5122 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
5123 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
5124 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
5125 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
5126 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
5127 Add prototypes.
5128 (mode_line_string, marginal_area_string): Fix prototypes.
5129
5130 * window.c (enum window_part): Move to dispextern.h.
5131 (coordinates_in_window): Use enum window_part member names
5132 instead of numbers to describe return value.
5133 (struct check_window_data): Change part member to window_part.
5134 (check_window_containing): Return window_part unaltered.
5135 (window_from_coordinates): Change part arg from int to enum
5136 window_part. Allow part arg to be null. All users changed.
5137
5138 * window.h (window_from_coordinates): Fix prototype.
5139
5140 * term.c (estimate_mode_line_height): Move to xdisp.c.
5141
5142 * keyboard.c (make_lispy_event): Use enum window_part.
5143
5144 * dispnew.c (mode_line_string, marginal_area_string): Use enum
5145 window_part instead of int in arg list. Users changed.
5146
5147 * xterm.h (No_Cursor): Declare as None for X.
5148 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 5149
acd37560
KS
5150 * xterm.c: Remove consolidated defines and code.
5151 (BETWEEN): Remove unused macro.
5152 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
5153 (x_define_frame_cursor, x_clear_frame_area)
5154 (x_draw_window_cursor): New X-specific functions for RIF.
5155 (x_redisplay_interface): Add new members.
5156
5157 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
5158
5159 * w32term.h (struct w32_output): Remove cross_cursor member.
5160
5161 * w32term.c: Remove consolidated defines and code.
5162 (BETWEEN): Remove unused macro.
5163 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
5164 (w32_define_frame_cursor, w32_clear_frame_area)
5165 (w32_draw_window_cursor): New W32-specific functions for RIF.
5166 (w32_redisplay_interface): Add new members.
5167
a64387ee 5168 * w32gui.h (No_Cursor): Define as 0 for W32.
acd37560
KS
5169 (XRectangle): Add X compatible rectangle type.
5170 (NativeRectangle): Declare as RECT for W32.
5171 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
5172
5173 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
5174
5175 * w32console.c: Remove consolidated defines and code.
af0ad939 5176
acd37560
KS
5177 * msdos.h (Display_Info): Add generic typedef.
5178
5179 * msdos.c: Remove consolidated defines and code.
5180 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
5181
5182 * macterm.h (struct mac_output): Replace member cross_cursor by
5183 hand_cursor.
5184 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
5185
5186 * macterm.c: Remove consolidated defines and code.
5187 (BETWEEN): Remove unused macro.
5188 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
5189 (mac_define_frame_cursor, mac_clear_frame_area)
5190 (mac_draw_window_cursor): New Mac-specific functions for RIF.
5191 (x_redisplay_interface): Add new members.
5192
5193 * macgui.h (No_Cursor): Define as 0 for Mac.
5194 (XRectangle): Add X compatible rectangle type.
5195 (NativeRectangle): Declare as Rect for Mac.
5196 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
5197
204ccab1
KS
5198 * macfns.c (x_set_mouse_color): Setup hand_cursor.
5199 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 5200
9443fcf6 5201 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
5202 included from it. Add dependency on keymap.h.
5203
5204 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
5205
8ba01a70 52062003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
5207
5208 * fileio.c (Fexpand_file_name): Fix previous change.
5209
8ba01a70 52102003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
5211
5212 * fileio.c (Ffile_name_directory): Reconstruct file name by
5213 make_specified_string.
5214 (Ffile_name_nondirectory, Ffile_name_as_directory)
5215 (Fdirectory_file_name, Fexpand_file_name)
5216 (Fsubstitute_in_file_name): Likewise.
5217 (Fread_file_name): Compare decoded homedir with DIR and
5218 DEFAULT_FILENAME.
5219
5220 * alloc.c (make_specified_string): If NCHARS is negative, count
5221 the number of characters.
5222
19536747
JD
52232003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5224
de38ae5a
JD
5225 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
5226 all widgets.
5227
19536747
JD
5228 * gtkutil.h: Removed xg_ignore_next_thumb.
5229
37ab321e 52302003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
5231
5232 * coding.c (Vchar_coding_system_table): Remove this variable.
5233 (Vcoding_system_safe_chars): New variable.
5234 (intersection): Remove this function.
5235 (find_safe_codings): Don't use Vchar_coding_system_table, but try
5236 all codings in SAFE_CODINGS.
00c64fab 5237 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
5238 find_safe_codings. Get generic coding systems from
5239 Vcoding_system_safe_chars.
5240 (Fdefine_coding_system_internal): New function.
5241 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
5242 Initialize and staticpro Vcoding_system_safe_chars.
5243
17097258
JD
52442003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5245
2a2071c3
JD
5246 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
5247 equal old values before updating.
5248
17097258
JD
5249 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
5250
5251 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
5252
52532003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5254
5255 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
5256 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
5257 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
5258 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
5259 (xg_create_scroll_bar): Pass bar to button event callback.
5260 (xg_find_top_left_in_fixed): New function.
5261 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
5262 whole scroll bar area. Get old position with
5263 xg_find_top_left_in_fixed, calculate and only clear needed areas.
5264 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
5265 dragging is in progress. Calculate whole as for Motif.
5266 Remove code that saved last values. Call gtk_range functions to
5267 set scroll bar sizes.
5268
5269 * gtkutil.h: Removed xg_ignore_next_thumb.
5270
8cb9dfbf
JB
52712003-03-17 Juanma Barranquero <lektu@terra.es>
5272
5273 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
5274 and files included from it.
5275
00c64fab
SM
52762003-03-18 Stefan Monnier <monnier@cs.yale.edu>
5277
5278 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
5279 multiple occurrences of the same keymap under different prefixes.
5280 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
5281
c45bb3b2
JR
52822003-03-16 Jason Rumney <jasonr@gnu.org>
5283
5284 * w32gui.h: Use HDC for Display.
5285
5286 * w32term.c (w32_encode_char): Prevent double-byte chars from
5287 crashing Emacs.
5288
5289 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
5290 as binary.
5291
2a6d0874
JB
52922003-03-16 Juanma Barranquero <lektu@terra.es>
5293
5294 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
5295
03eb5fab
KS
52962003-03-16 Kim F. Storm <storm@cua.dk>
5297
5298 The following changes consolidate some of the gui-independent
5299 parts of the processing and drawing of "glyph strings" from
5300 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 5301
03eb5fab
KS
5302 * dispextern.h (struct glyph): Reduce face_id member from 22 to
5303 21 bits (this reduces number of faces from 4M to 2M).
5304 Replace W32 specific w32_font_type member (2 bits) by generic
5305 font_type member (3 bits) for portability.
5306 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
5307 (enum draw_glyphs_face): Define here.
5308 (struct glyph_string): Define here. Merge W32 and X versions.
5309 (struct redisplay_interface): New members per_char_metric,
5310 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
5311 (VCENTER_BASELINE_OFFSET): Define here.
5312 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
5313 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
5314
5315 * xdisp.c: Consolidate gui-independent "glyph string" code here.
5316 (dump_glyph_string): Moved here.
5317 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
5318 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
5319 (fill_composite_glyph_string, fill_glyph_string)
5320 (fill_image_glyph_string, fill_stretch_glyph_string)
5321 (left_overwritten, left_overwriting, right_overwritten)
5322 (right_overwriting, get_char_face_and_encoding)
5323 (set_glyph_string_background_width, compute_overhangs_and_x)
5324 (append_glyph, append_composite_glyph, produce_image_glyph)
5325 (take_vertical_position_into_account, append_stretch_glyph)
5326 (produce_stretch_glyph): New generic functions (based on X version).
5327 Call platform specific functions through rif.
5328 (INIT_GLYPH_STRING): New macro, hides W32 details.
5329 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
5330 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
5331 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
5332 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
5333 (notice_overwritten_cursor):
5334 Generic functions exported to platform modules. Users changed.
5335
5336 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
5337 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
5338 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 5339 New macros for consolidated code.
2a6d0874 5340
03eb5fab
KS
5341 * xterm.c: Remove consolidated defines and code.
5342 (x_per_char_metric, x_encode_char)
5343 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
5344 (x_redisplay_interface): Add new members.
5345
5346 * w32gui.h (Display): Add dummy typedef for consolidation.
5347 (XChar2b): Define alias for wchar_t for consolidation.
5348 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
5349
5350 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 5351 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
5352 New macros for consolidation.
5353
fad49844 5354 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
5355 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
5356 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
5357 (w32_per_char_metric): Change font_type arg to int for RIF.
5358 (w32_encode_char): Return int according to RIF requirements.
5359 (w32_compute_glyph_string_overhangs): Adapt to RIF.
5360 (w32_get_glyph_overhangs): New function for RIF. Uses generic
5361 x_get_glyph_overhangs.
5362 (w32_redisplay_interface): Add new members.
5363
5364 * macgui.h (XChar2b): Move typedef here for consolidation.
5365 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
5366
5367 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
5368 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
5369 consolidation.
5370
5371 * macterm.c: Remove consolidated defines and code.
5372 (mac_per_char_metric): New function for RIF.
00c64fab 5373 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
5374 (mac_compute_glyph_string_overhangs): Adapt for RIF.
5375 (x_redisplay_interface): Add new members.
5376
00c64fab
SM
53772003-03-15 Stefan Monnier <monnier@cs.yale.edu>
5378
5379 * keymap.c (Vmenu_events): New var.
5380 (syms_of_keymap): Initialize it.
5381 (where_is_internal): Check more carefully what is a menu event.
5382
225c7a07
RS
53832003-03-14 Richard M. Stallman <rms@gnu.org>
5384
5385 * lread.c (read1): After #!, exit loop on eof.
5386
cea9be54
JD
53872003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5388
9ea0e54d
JD
5389 * gtkutil.h: Add declaration for xg_frame_cleared.
5390
0cb35f4e
JD
5391 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
5392
cea9be54
JD
5393 * gtkutil.c (struct xg_last_sb_pos): New structure.
5394 (handle_fixed_child): New function.
5395 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
5396 and force a redraw on them.
5397 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
5398 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
5399 so we can avoid unneeded redraws.
5400 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
5401 and force a redraw on the scroll bar.
5402 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
5403 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 5404 (xg_frame_cleared): New function.
cea9be54 5405
20b853f3
KH
54062003-03-13 Kenichi Handa <handa@m17n.org>
5407
5408 * coding.c (Fdetect_coding_region): Fix docstring.
5409 (Fdetect_coding_string): Fix docstring.
5410
7a555aff
AS
54112003-03-13 Andreas Schwab <schwab@suse.de>
5412
25cc0080
AS
5413 * gtkutil.c: Add prototype for create_menus.
5414
30225431
AS
5415 * data.c (long_to_cons): Fix type of top.
5416
5417 * xselect.c (selection_data_to_lisp_data): Use int instead of
5418 long for an integer of size 4.
5419
7a555aff 5420 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 5421 (xg_tool_bar_help_callback): Likewise.
7a555aff 5422
a3e4741f
AS
54232003-03-12 Andreas Schwab <schwab@suse.de>
5424
5425 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
5426
9668be7c
KS
54272003-03-12 Kim F. Storm <storm@cua.dk>
5428
03eb5fab 5429 The following changes consolidate the fringe handling from
9668be7c 5430 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 5431
9668be7c
KS
5432 * xdisp.c: Consolidate fringe handling code here.
5433 (left_bits, right_bits, continued_bits, continuation_bits)
5434 (ov_bits, zv_bits): Define fringe bitmaps.
5435 (fringe_bitmaps): New array holding fringe bitmaps.
5436 (draw_fringe_bitmap): Draw a specific bitmap; call display
5437 specific drawing routine via rif->draw_fringe_bitmap.
5438 (draw_row_fringe_bitmaps): Generic replacement for
5439 x_draw_row_fringe_bitmaps; all callers changed.
5440 (compute_fringe_widths): Generic replacement for
5441 x_compute_fringe_widths; all callers changed.
5442
5443 * dispextern.h (enum fringe_bitmap_type): Define here.
5444 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
5445 (fringe_bitmaps): Declare extern.
5446 (struct redisplay_interface): New member draw_fringe_bitmap.
5447 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
5448
5449 * xterm.c: Remove generic fringe code.
5450 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
5451 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
5452
5453 * w32term.c: Remove generic fringe code.
5454 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
5455 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 5456
9668be7c
KS
5457 * macterm.c: Remove generic fringe code.
5458 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
5459 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
5460
00a88f32
SM
54612003-03-11 Stefan Monnier <monnier@cs.yale.edu>
5462
5463 * print.c (Fprin1_to_string): Return unibyte string if possible.
5464
1d1de695
DK
54652003-03-09 David Kastrup <dak@gnu.org>
5466
5467 * process.c (read_process_output): We have allocated enough space
5468 for readmax and carryover, so actually use the alloted space.
5469
257f40f2
JD
54702003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5471
5472 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
5473 toolkit scrollbar click.
5474
5475 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
5476 for USE_GTK.
5477 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
5478 also.
5479 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
5480 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 5481
257f40f2
JD
5482 * gtkutil.h: Declare xg_get_scroll_id_for_window.
5483
5484 * gtkutil.c (xg_get_scroll_id_for_window): New function.
5485 (xg_tool_bar_item_expose_callback): New function.
5486 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
5487 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
5488 on the tool bar widget.
5489 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
5490 to expose on the tool bar item widgets.
5491
15213141
JD
54922003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5493
26b74a0b 5494 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 5495 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
5496 deleted from the image cache).
5497
15213141
JD
5498 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
5499 the event isn't for a frame (i.e. for dialogs).
5500
20b853f3 55012003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
5502
5503 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
5504 composition components reaches the limit, terminate composing.
5505 (COMPOSITION_OK): New macro.
00a88f32 5506 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
5507 composition is found.
5508 (coding_restore_composition): Adjust the number of composition
5509 components if it is not sane.
5510
c9029fe5
JB
55112003-03-06 Juanma Barranquero <lektu@terra.es>
5512
5513 * w32term.h (struct w32_display_info): Add xrdb member to support
5514 passing resources via -xrm on Windows.
5515
5516 * w32term.c (w32_make_rdb): New function.
5517 (w32_term_init): Use it to initialize xrdb member of w32_display_info
5518 struct. Delete leftover code.
5519
5520 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
5521 for resources passed on the command line.
5522
5523 * w32reg.c (w32_get_rdb_resource): New function.
5524 (x_get_string_resource): Use it, so resources passed with -xrm
5525 supercede the ones in the registry.
5526
9d00001f
JD
55272003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5528
5529 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
5530 instead of x_top_window_to_frame.
5531
ca2417b9
JD
55322003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5533
5534 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
5535 when restarting Emacs.
5536
5b20caf0
RS
55372003-03-03 Richard M. Stallman <rms@gnu.org>
5538
5539 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
5540 to run kill-buffer-query-functions.
5541 (Qkill_buffer_query_functions): New var.
5542 (syms_of_buffer): Init and staticpro it.
5543
58e91b77
JD
55442003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5545
5546 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
5547
932357b4
KS
55482003-02-25 Kim F. Storm <storm@cua.dk>
5549
5550 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
5551 If centering point failed to make whole line visible and vscroll
5552 is non-zero, disable vscroll and try centering point again.
5553
5554 * lread.c (read1): Accept `single space' syntax like (? x).
5555
bb8db7e1
JD
55562003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5557
5558 * keyboard.c (cancel_hourglass_unwind): Surround with
5559 #ifdef HAVE_X_WINDOWS
5560
47d77aab
KH
55612003-02-25 Kenichi Handa <handa@m17n.org>
5562
5563 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
5564 process only when "subprocesses" is defined.
5565
6a097c0c
SM
55662003-02-24 Stefan Monnier <monnier@cs.yale.edu>
5567
5568 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
5569
0b063c27
JB
55702003-02-24 Juanma Barranquero <lektu@terra.es>
5571
d1135afc
JB
5572 * callint.c (fix_command): Declare as static void and move before
5573 Fcall_interactively.
5574
0b063c27
JB
5575 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
5576 (syms_of_xdisp): Don't initialize Qwhen.
5577
0af912f0
JD
55782003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5579
5580 * keyboard.c (cancel_hourglass_unwind): New function.
5581 (command_loop_1): Cancel hourglass with unwind-protect.
5582
120d0a23
RS
55832003-02-23 Richard M. Stallman <rms@gnu.org>
5584
5585 * callint.c (fix_command): New subroutine, from Fcall_interactively.
5586 Detect (when ... (region-beginning)) etc.
5587 (Fcall_interactively): Call fix_command.
5588 (Qif, Qwhen): New variables.
5589 (syms_of_callint): Init and staticpro them.
0b063c27 5590
120d0a23
RS
5591 * regex.c (print_partial_compiled_pattern): Output to stderr.
5592
4ece81a6
KG
55932003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
5594
5595 * dired.c (directory_files_internal): Don't expand directory.
5596 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
5597 instead. From Lars Hansen <larsh@math.ku.dk>.
5598
e52bd6b7
SM
55992003-02-22 Stefan Monnier <monnier@cs.yale.edu>
5600
5601 * fns.c (string_to_multibyte): Remove unused var i.
5602 (Flanginfo): Fix int/Lisp_Object mixup.
5603 (void_call2): New fun.
5604 (Fmap_char_table): Use it in place of call2.
5605
5606 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
5607
5608 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
5609
5610 * keymap.c (copy_keymap_1): Make it static.
5611
5612 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
5613
c33ef7c4
JB
56142003-02-22 David Ponce <david@dponce.com>
5615
5616 * lread.c (Fload): Don't check STRING_MULTIBYTE.
5617
16782258
JD
56182003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5619
5620 * process.h: Removed subtty field from struct Lisp_Process.
5621
5622 * process.c (create_process): Remove setting of subtty.
5623 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
5624 (Fprocess_running_child_p, process_send_signal):
5625 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
5626 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
5627
3abeca61
KG
56282003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
5629
5630 * keymap.c (Fdefine_key): Doc fix.
5631
92a8ce63
JB
56322003-02-21 Juanma Barranquero <lektu@terra.es>
5633
5634 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
5635
5636 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
5637 POLLING_PROBLEM_IN_SELECT.
5638
5639 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
5640 Delete #undef of POLLING_PROBLEM_IN_SELECT.
5641
5642 * s/hpux10-20.h: New file.
5643
e52bd6b7
SM
5644 * process.c (wait_reading_process_input):
5645 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 5646
20f1ef2e
KH
56472003-02-20 Kenichi Handa <handa@m17n.org>
5648
32d0a9dc
KH
5649 * fontset.c (check_fontset_name): If NAME is nil, return the
5650 default fontset.
5651 (override_font_info): New function.
e52bd6b7 5652 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
5653 (Ffontset_info): If FONTSET is not the default fontset, merge
5654 FONTSET onto the copy of the default fontset, and work on that
5655 copy. Document that NAME nil means the default fontset.
5656 (Ffontset_font): Document that NAME nil means the default fontset.
5657
20f1ef2e
KH
5658 * process.c (setup_process_coding_systems): If the process's
5659 in/out descriptor is -1, do nothing.
5660
77d1daf2
AS
56612003-02-19 Andreas Schwab <schwab@suse.de>
5662
e52bd6b7
SM
5663 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
5664 Add prototypes.
77d1daf2 5665
f9a45bb3
KH
56662003-02-19 Kenichi Handa <handa@m17n.org>
5667
5668 * xfaces.c (try_alternative_families): Try all scalable fonts if
5669 Vscalable_fonts_allowed is not Qt.
5670
72ecb43c
JD
56712003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5672
5673 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
5674
ee5be7c3
JD
56752003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5676
5677 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
5678 names.
5679
5680 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 5681 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
5682 x_face_list_fonts.
5683 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
5684 (Fx_list_fonts): Set maxnames to -1 to get all font names.
5685
4cd519a7
KS
56862003-02-18 Kim F. Storm <storm@cua.dk>
5687
068f9882
KS
5688 * lread.c (read1): Fix last change.
5689 "`" is not always special. Allow "?" after a character constant.
4cd519a7 5690
7290a344
AC
56912003-02-18 Andrew Choi <akochoi@shaw.ca>
5692
5693 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
5694
1f7fa69b
AS
56952003-02-18 Andreas Schwab <schwab@suse.de>
5696
5697 * window.c (window_scroll_pixel_based): Move outside a
5698 multi-glyph character before setting new window start.
5699
5700 * xdisp.c (in_display_vector_p): New function.
5701 * dispextern.h (in_display_vector_p): Declare.
5702
23e21195
KS
57032003-02-18 Kim F. Storm <storm@cua.dk>
5704
5705 * lread.c (read1): Fix and relax read syntax.
5706 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
5707 Only recognize "," after dotted-pair dot if inside backquote.
5708 Never include "`" or "," (inside backquote) in a symbol.
5709 Allow dotted-pair dot after a character constant.
5710 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 5711
f098b121
JD
57122003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5713
5714 * gtkutil.c (xg_tool_bar_expose_callback): New function.
5715 (xg_create_tool_bar): Force style of tool bar to be horizontal with
5716 icons. Set name of tool bar to emacs-toolbar.
5717 (update_frame_tool_bar): Connect expose event to
5718 xg_tool_bar_expose_callback.
5719
63020c46
RS
57202003-02-17 Richard M. Stallman <rms@gnu.org>
5721
5722 * keyboard.c (this_command_key_count_reset): New variable.
5723 Initiatize to 0 where this_command_key_count is set.
5724 (read_char): Save and restore this_command_key_count_reset
5725 around input method code.
5726 (read_char): If this_command_key_count_reset, echo reread commands.
5727 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
5728
fb4452cc
KH
57292003-02-17 Kenichi Handa <handa@m17n.org>
5730
5731 * fns.c (string_to_multibyte): Always return a multibyte string.
5732
bd11cc09
JR
57332003-02-16 Jason Rumney <jasonr@gnu.org>
5734
e52bd6b7
SM
5735 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
5736 Negative max_fonts parameter means list all.
bd11cc09 5737
4cdf4bde
DL
57382003-02-14 Dave Love <fx@gnu.org>
5739
5740 * fns.c (Flanginfo): Doc fix.
5741
023b93f6
KS
57422003-02-13 Kim F. Storm <storm@cua.dk>
5743
37cd4238
KS
5744 * lread.c (read_escape): Interpret \s as a SPACE character, except
5745 for \s-X in a character constant which still is the super modifier.
5746 (read1): Signal an `invalid read syntax' error if a character
5747 constant is immediately followed by a digit or symbol character.
5748
140a6b7e
KS
5749 * search.c (Fmatch_data): Doc fix. Explicitly state that
5750 match-data is undefined if last search failed.
5751
023b93f6
KS
5752 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
5753 All uses changed.
5754
7d5c86e5
JB
57552003-02-12 Juanma Barranquero <lektu@terra.es>
5756
5757 * eval.c (Fdefmacro): Fix typo.
5758
295fff2c
KS
57592003-02-12 Kim F. Storm <storm@cua.dk>
5760
5761 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
5762 macro is a string, convert meta modifiers in string when copying
5763 the string into a vector.
5764
60f3202d
KS
57652003-02-11 Kim F. Storm <storm@cua.dk>
5766
5767 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
5768
61cb0b53
KH
57692003-02-11 Kenichi Handa <handa@m17n.org>
5770
5771 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
5772
7392e23c
KS
57732003-02-10 Kim F. Storm <storm@cua.dk>
5774
5775 * process.c: Doc fixes.
5776 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
5777
ce4254bd
KH
57782003-02-10 Kenichi Handa <handa@m17n.org>
5779
9c7a329a
KH
5780 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
5781
ce4254bd
KH
5782 * process.c (QCfilter_multibyte): New variable.
5783 (setup_process_coding_systems): New function.
e52bd6b7
SM
5784 (Fset_process_buffer, Fset_process_filter):
5785 Call setup_process_coding_systems.
ce4254bd
KH
5786 (Fstart_process): Initialize the member `filter_multibyte' of
5787 struct Lisp_Process.
5788 (create_process): Call setup_process_coding_systems.
5789 (Fmake_network_process): New keyward `:filter-multibyte'.
5790 Initialize the member `filter_multibyte' of struct Lisp_Process.
5791 Call setup_process_coding_systems.
5792 (server_accept_connection): Call setup_process_coding_systems.
5793 (read_process_output): If the process has a filter, decide the
5794 multibyteness of a string to given to the filter by
5795 `filter_multibyte' member of the process. If the process doesn't
5796 have a filter and the result of conversion is unibyte, use
5797 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
5798 multibyte form.
5799 (Fset_process_coding_system): Call setup_process_coding_systems.
5800 (Fset_process_filter_multibyte): New function.
5801 (Fprocess_filter_multibyte_p): New function.
5802 (syms_of_process): Intern and staticpro QCfilter_multibyte.
5803 Defsubr Sset_process_filter_multibyte and
5804 Sprocess_filter_multibyte_p.
5805
5806 * process.h (struct Lisp_Process): New member filter_multibyte.
5807
5808 * lisp.h (setup_process_coding_systems): Add prototype.
5809
5810 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
5811 process, update coding systems for the process.
5812
b08d5f59
KH
58132003-02-09 Kenichi Handa <handa@m17n.org>
5814
5815 * fns.c (string_to_multibyte): New function.
5816 (Fstring_to_multibyte): New function.
5817 (syms_of_fns): Defsubr it.
5818
0dfd93c0
AS
58192003-02-08 Andreas Schwab <schwab@suse.de>
5820
5821 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
5822 instead of the substitution.
5823
7b76ca1c
JD
58242003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5825
5826 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
5827
5828 * xmenu.c (menu_position_func): Adjust menu popup position so that
5829 the menu is fully visible.
7b76ca1c 5830
2436a4e4
JD
58312003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5832
5833 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
5834 (x_make_frame_invisible, x_wm_set_icon_position):
5835 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
5836
5837 * xfns.c (x_set_name, x_set_title): Ditto.
5838
37d1e680
RS
58392003-02-04 Richard M. Stallman <rms@gnu.org>
5840
5841 * keyboard.c (echo_now): Update before_command_echo_length.
5842 (Freset_this_command_lengths): Reset this_command_key_count etc.
5843 immediately rather than arranging to do it later.
5844 (before_command_key_count_1, before_command_echo_length_1)
5845 (before_command_restore_flag): Vars deleted.
5846 (add_command_key): Don't handle before_command_restore_flag.
5847 (read_char, record_menu_key): Don't update before_command_key_count or
5848 before_command_echo_length.
5849 (read_char): Don't handle before_command_restore_flag.
5850
5851 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
5852 in direct-output clauses if it wouldn't be called in the ordinary case.
5853
578846a3
KS
58542003-02-04 Kim F. Storm <storm@cua.dk>
5855
5856 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
5857
49853a4d
JD
58582003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5859
5860 * gtkutil.c (remove_from_container): Copying list is not needed.
5861 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
5862 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
5863 on list returned from gtk_container_get_children to avoid memory leak.
5864
8b53dc06
JR
58652003-02-01 Jason Rumney <jasonr@gnu.org>
5866
5d54d177
JR
5867 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
5868 local malloc.
5869 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
5870 definitions in xpm.h.
5871 (init_xpm_functions): New function.
5872 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5873 (init_external_image_libraries): Try to load libXpm.dll.
5874
8b53dc06
JR
5875 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
5876 timestamp.
5877
b222e415
DL
58782003-01-31 Dave Love <fx@gnu.org>
5879
5880 * syntax.c (Fskip_chars_forward)
5881 (open-paren-in-column-0-is-defun-start): Doc fix.
5882
c60ee5e7
JB
58832003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
5884
5885 * fileio.c: Support // at start of name for Cygwin (just added proper
5886 preprocessor tests).
5887
5888 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
5889
5890 * Makefile.in: Use @EXEEXT@ for Cygwin.
5891
5892 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
5893
5894 * s/cygwin.h: Added for Cygwin port.
5895
53b37591
JB
58962003-01-31 Juanma Barranquero <lektu@terra.es>
5897
5898 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
5899 when including gif_lib.h.
fe929957
JB
5900 (init_gif_functions, init_tiff_functions): New functions.
5901 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
5902 Windows. Disable color table lookups. Call library functions
53b37591 5903 through pointers determined at runtime.
fe929957
JB
5904 (init_external_image_libraries): Try to load libungif.dll and
5905 libtiff.dll.
53b37591 5906
45415a8f
KH
59072003-01-31 Kenichi Handa <handa@m17n.org>
5908
5909 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 5910 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 5911
a97e4138
JD
59122003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5913
e52bd6b7 5914 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 5915
6eed9bed
DL
59162003-01-30 Dave Love <fx@gnu.org>
5917
5918 * alloc.c (Vgc_elapsed, gcs_done): New variables.
5919 (Fgarbage_collect): Use them.
5920 (init_alloc, syms_of_alloc): Set them up.
5921
100dcd40
JB
59222003-01-30 Juanma Barranquero <lektu@terra.es>
5923
5924 * w32fns.c (init_external_image_libraries): Add missing operator.
5925
fbd852af
JR
59262003-01-29 Jason Rumney <jasonr@gnu.org>
5927
5928 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
5929 an alternative name for jpeg.dll.
5930
8a2d8020
KH
59312003-01-29 Kenichi Handa <handa@m17n.org>
5932
5933 * xdisp.c (set_cursor_from_row): Pay attention to string display
5934 properties.
5935
058c18c7
AC
59362003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
5937
5938 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
5939 <escape>.
5940 (keycode_to_xkeysym_table): Reformat and add more comments.
5941 (XTread_socket): Drop special case for backspace.
5942
385f11cf
AC
59432003-01-28 Andrew Choi <akochoi@shaw.ca>
5944
5945 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
5946 values in old-style RGB specs.
5947
c922a224
JB
59482003-01-27 Juanma Barranquero <lektu@terra.es>
5949
5950 * w32fns.c (init_external_image_libraries): Try alternate names for the
5951 jpeg dll.
5952
0a1d6de0
JD
59532003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5954
5955 * gtkutil.c (create_dialog, xg_separator_p)
5956 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
5957 before calling strcmp or strlen.
5958
a97e4138 59592003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
5960
5961 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
5962 and handle image load failure.
5963
28908312
JR
59642003-01-26 Jason Rumney <jasonr@gnu.org>
5965
5966 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
5967 New functions.
5968 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
5969 Disable color table lookups. Call jpeg library functions
5970 through pointers determined at runtime.
5971 (init_external_image_libraries): Try to load jpeg.dll.
5972
84e47416
RS
59732003-01-25 Richard M. Stallman <rms@gnu.org>
5974
5975 * lisp.h: Declare format2 instead of format1.
5976
5977 * fileio.c (barf_or_query_if_file_exists):
5978 Call format2 instead of format1.
5979
5980 * editfns.c (format2): New function, replaces format1
5981 but takes exactly two Lisp Objects as format args.
5982
5983 * buffer.c (Fkill_buffer): Call format2 instead of format1.
5984
a97e4138 59852003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
5986
5987 * xterm.h: Change to return value of x_dispatch_event to int.
5988
5989 * xterm.c (x_filter_event): New function.
5990 (event_handler_gdk, XTread_socket): Call x_filter_event.
5991 (x_dispatch_event): Change to return value of finish.
5992 (event_handler_gdk): Use return value from x_dispatch_event.
5993
5994 * xfns.c (x_window): Call create_frame_xic for GTK version to
5995 initialize input methods.
5996
5997 * gtkutil.h: Add (void) prototypes.
5998
5999 * gtkutil.c (create_menus): Remove code that puts the help menu to
6000 the right.
6001
54eefef1
JR
60022003-01-25 Jason Rumney <jasonr@gnu.org>
6003
6004 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
6005 [HAVE_PNG]: Sync with xfns.c version.
6006 (png_load): Adjust colors for Windows. Use Windows
6007 bitmaps. Disable color table lookups.
c262430d
JR
6008 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
6009 (init_png_functions): New function.
6010 (png_read_from_memory, png_load): Call png library functions
6011 through pointers determined at runtime.
6012 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
6013 (init_external_image_libraries): New function.
6014 (init_xfns): Call it.
54eefef1 6015
1a9e275b
AS
60162003-01-24 Andreas Schwab <schwab@suse.de>
6017
6018 * minibuf.c (Fminibuffer_message): Verify type of parameter.
6019
a97e4138 60202003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
6021
6022 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
6023 of static initializer.
6024
422eec7e
DL
60252003-01-24 Dave Love <fx@gnu.org>
6026
6027 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
6028 architectures.
6029
6030 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
6031 Use __alignof__.
6032
2a026b04
KH
60332003-01-24 Kenichi Handa <handa@m17n.org>
6034
6035 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 6036 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
6037 (command_loop_1): Call adjust_point_for_property with proper
6038 second arg.
6039
a18bb28d
JR
60402003-01-22 Jason Rumney <jasonr@gnu.org>
6041
6042 Sync changes with xterm.c and xfns.c.
6043
6044 * w32term.c (x_draw_glyph_string_foreground)
6045 (x_draw_composite_glyph_string_foreground): Implement overstriking.
6046
6047 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
6048 phys_cursor's hpos is overwritten. This is still not completely
6049 correct, as it doesn't really make sense to use hpos at all to
6050 get the cursor glyph (as that is relative to the width of the
6051 characters on the line, which may have changed during the update).
6052
6053 * w32term.c (notice_overwritten_cursor): Handle the special case
6054 of the cursor being in the first blank non-text line at the
6055 end of a window.
6056
6057 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
6058 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
6059 Compute from the x position returned by x_draw_glyphs.
6060
6061 (x_display_and_set_cursor): Don't set phys_cursor_width here,
6062 except for NO_CURSOR and system caret, to make phys_cursor_width
6063 contain what its name suggests.
6064 (notice_overwritten_cursor): Consider the cursor image erased if
6065 the output area intersects the cursor image in y-direction.
6066
6a097c0c
SM
6067 * w32term.c (note_mode_line_or_margin_highlight): Rename from
6068 note_mode_line_highlight and extend.
a18bb28d
JR
6069
6070 * w32term.c (last_window): New variable.
6071 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
6072 (note_mouse_movement): Remove reimplemented code in #if 0.
6073
6074 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
6075 not update_mode_lines, and always set it to 1.
6076
ac6e47ef
JR
60772003-01-21 Jason Rumney <jasonr@gnu.org>
6078
6079 * w32fns.c (IDC_HAND): Define it if system headers don't.
6080
60812003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
6082
6083 * w32term.h (struct w32_output): New member hand_cursor.
6084 (WM_EMACS_SETCURSOR): New message definition.
6085
6086 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
6087 function w32_define_cursor.
6088 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
6089 position, change member name output_data.x to output_data.w32 and
6090 add function w32_define_cursor.
6091 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
6092 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
6093 (w32_initialize_display_info):
6094 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
6095
6096 * w32fns.c (Vx_hand_shape): New variable.
6097 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
6098 WM_EMACS_SETCURSOR.
6099 (x-create-frame): Setup Cursor types.
6100
ceb39a17
JB
61012003-01-21 David Ponce <david@dponce.com>
6102
ac6e47ef
JR
6103 * w32term.c (w32_encode_char): For DIM=1 charset, set
6104 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
6105 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 6106 2002-09-30.)
ac6e47ef
JR
6107 (w32_draw_relief_rect): Declare all args.
6108 (w32_define_cursor): New.
6109
6110 * w32fns.c (w32_load_cursor): New function.
6111 (w32_init_class): Use it.
6112 (x_put_x_image): Declare all args.
6113
46cf0bed
JB
61142003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
6115
6116 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
6117
a97e4138 61182003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
6119
6120 * gtkutil.c: Must include stdio.h before termhooks.h
6121
83fc9c63
DL
61222003-01-21 Dave Love <fx@gnu.org>
6123
6124 * alloc.c (Fgc_status): Print zombie list.
6125 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
6126 Fix assignment of zombies.
6127 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
6128 Don't take car of non-cons.
6129
6130 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6131
6132 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6133
fe04b8c8
JR
61342003-01-20 David Ponce <david@dponce.com>
6135
6136 * w32menu.c (digest_single_submenu): Declare all args.
6137
6138 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
6139 changes in xmenu.c:
6140
6141 (parse_single_submenu): Use individual keymap's prompt
6142 string as pane name, if there is one.
6143 (set_frame_menubar): Save menu_items_n_panes from each call to
6144 parse_single_submenu and use it when calling digest_single_submenu.
6145
539e69a9
ST
61462003-01-20 Steven Tamm <steventamm@mac.com>
6147
6148 * macterm.c (XTread_socket): Checks for valid, visible window
6149 before sending a scroll-wheel event.
6150
675d000f
RS
61512003-01-20 Richard M. Stallman <rms@gnu.org>
6152
6153 * xdisp.c (redisplay_window): If mini window's buffer is not
6154 a minibuffer, then redisplay it like other windows.
6155
a97e4138 61562003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
6157
6158 * gtkutil.c (xg_create_frame_widgets): Check if there is an
6159 external tool bar before setting tool bar height.
6160
048addec
JD
61612003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6162
6163 * xterm.c (handle_one_xevent): Surround popup_activated
6164 with #ifdef:s for non-toolkit version.
6165
6166 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
6167 (gtkutil.o): New file.
6168 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
6169 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
6170
6171 * gtkutil.c: New file for GTK version.
6172
6173 * gtkutil.h: New file for GTK version.
6174
6175 * xterm.h: Add xt_or_gtk_widget.
6176 Include gtk files for USE_GTK.
6177 (struct x_output): Add toolbar_height.
6178 (struct x_output): Add GTK widgets and Gdk size_hints.
6179 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
6180 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
6181 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
6182
6183 * xterm.c: Include gtkutil.h for USE_GTK.
6184 Declare extern void free_frame_menubar for USE_GTK.
6185 (note_mouse_highlight): Check popup_activated for USE_GTK.
6186 (xt_action_hook): Don't compile if USE_GTK.
6187 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
6188 (xg_scroll_callback): New function.
6189 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
6190 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
6191 for USE_GTK.
6192 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
6193 xg_show_scroll_bar for USE_GTK.
6194 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
6195 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
6196 (event_handler_gdk): New function for USE_GTK.
6197 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
6198 (handle_one_xevent): Make sure widget is mapped before
6199 calling x_real_positions for USE_GTK.
6200 (XTread_socket): Add GTK event loop for USE_GTK.
6201 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
6202 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
6203 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
6204 (x_iconify_frame): Add code for USE_GTK.
6205 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
6206 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
6207 is in gtkutil.c.
6208 (x_term_init): Add initialization for GTK.
6209 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
6210
6211 * xmenu.c: Include gtkutil.h for USE_GTK.
6212 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
6213 (single_menu_item, single_menu_item, Fx_popup_dialog):
6214 Check for USE_GTK.
048addec
JD
6215 (popup_widget_loop): New function for USE_GTK.
6216 (x_activate_menubar): Add code for USE_GTK.
6217 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
6218 (menu_highlight_callback, menubar_selection_callback):
6219 Add USE_GTK versions.
048addec
JD
6220 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
6221 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
6222 (free_frame_menubar): Only compile if not USE_GTK. GTK version
6223 is in gtkutil.c.
6224 (popup_selection_callback): New version for USE_GTK.
6225 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 6226 one USE_X_TOOLKIT version.
048addec
JD
6227 (xmenu_show): Call create_and_show_popup_menu.
6228 (dialog_selection_callback): New version for USE_GTK.
6229 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 6230 one USE_X_TOOLKIT version.
048addec
JD
6231 (xdialog_show): Call create_and_show_dialog.
6232
6233 * xfns.c: Include gtkutil for USE_GTK.
6234 (x_window_to_frame, x_any_window_to_frame)
6235 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
6236 (x_top_window_to_frame): Add code for USE_GTK.
6237 (x_set_background_color): Call xg_set_background_color for GTK.
6238 (x_set_menu_bar_lines): Check for USE_GTK.
6239 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
6240 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
6241 (x_window): Call xg_create_frame_widgets for USE_GTK.
6242 (Fx_create_frame): Check for USE_GTK
6243 (Fx_file_dialog): New implementation for USE_GTK.
6244
6245 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
6246 (update_menu_bar): Add check for USE_GTK.
6247 (update_tool_bar): Add check for USE_GTK and external tool bar.
6248 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
6249 (redisplay_internal): Add check for USE_GTK and popup_activated.
6250 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
6251 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
6252 (display_menu_bar): Add check for USE_GTK
6253
6254 * lisp.h: Declare Vx_resource_name extern.
6255
a64387ee 6256 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
048addec
JD
6257 for USE_GTK.
6258 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
6259
6260 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
6261 (FRAME_EXTERNAL_TOOL_BAR): New macro.
6262 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
6263
6264 * fileio.c (Fread_file_name): Add check for USE_GTK.
6265
6bdb309a
SM
6266 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
6267 Add check for USE_GTK.
048addec
JD
6268
6269 * config.in: Added HAVE_GTK
6270
6271 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
6272
62732003-01-18 Stefan Monnier <monnier@cs.yale.edu>
6274
6275 * charset.h (Funibyte_char_to_multibyte): Export.
6276
62772003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6278
6279 * xmenu.c (mouse_position_for_popup): New function.
6280 (Fx_popup_menu): Call mouse_position_for_popup for X and
6281 mouse_position_hook for others.
6282
62832003-01-17 Kim F. Storm <storm@cua.dk>
6284
6285 * editfns.c (Finsert): Mention `string-make-multibyte' and
6286 `string-as-multibyte' in doc string.
6287
62882003-01-17 Kenichi Handa <handa@m17n.org>
6289
6290 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 6291
048addec
JD
6292 * editfns.c (Fformat): Convert an unibyte char argument that is
6293 formatted by "%c" to multibyte if the total result must be a
6294 multibyte string.
cd7df9c0 6295
048addec 62962003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 6297
048addec
JD
6298 * process.c (set-process-filter): Document unibyte/multibyte-ness
6299 of string argument.
56210ecd 6300
048addec 63012003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 6302
048addec 6303 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 6304
048addec
JD
6305 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
6306 (re_search_2): Likewise.
6df8b9fe 6307
048addec 63082003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 6309
048addec
JD
6310 * xdisp.c (message_dolog): Fix bug of the case that *Message*
6311 buffer is unibyte.
292ddc31 6312
048addec 63132003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 6314
048addec 6315 * fns.c (Fsubstring): Clarify doc string.
292ddc31 6316
048addec
JD
6317 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
6318 (Fprevious_char_property_change)
6319 (Fnext_single_char_property_change)
6320 (Fprevious_single_char_property_change, Fnext_property_change)
6321 (Fnext_single_property_change, Fprevious_property_change)
6322 (Fprevious_single_property_change, Fadd_text_properties)
6323 (Fput_text_property, Fset_text_properties)
6324 (Fremove_text_properties, Fremove_list_of_text_properties)
6325 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 6326
048addec 63272003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 6328
048addec
JD
6329 * process.h (struct Lisp_Process): New member plist replaces old
6330 member private_vars. All uses changed.
63e4e4c6 6331
048addec 6332 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 6333 (QCplist): Rename from QCvars. Change all uses.
048addec 6334 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 6335 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 6336 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 6337 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 6338
048addec 63392003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 6340
6bdb309a 6341 * m/delta.h: Remove (obsolete).
e833850f 6342
048addec 63432003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 6344
048addec
JD
6345 * fileio.c (Fdelete_directory, Fdelete_file): Document the
6346 behaviour in front of symlinks.
6347 (Fdelete_file): Raise an error on directories.
817cb127 6348
048addec 63492003-01-13 Dave Love <fx@gnu.org>
817cb127 6350
048addec 6351 * fns.c (Freverse): Use QUIT.
3e8cf2ea 6352
048addec 63532003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 6354
048addec
JD
6355 * minibuf.c (minibuffer_completion_contents):
6356 Error if point is inside prompt.
3e8cf2ea 6357
048addec
JD
6358 * keyboard.c (command_loop_1): Don't redisplay directly
6359 if there's a post-command-hook.
3e8cf2ea 6360
048addec
JD
6361 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
6362 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 6363
048addec 63642003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 6365
048addec 6366 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 6367
048addec
JD
6368 * process.c (QCvars): New variable.
6369 (syms_of_process): Intern and staticpro it.
6370 (Fset_process_contact): Removed function.
6371 (Fprocess_variable, Fset_process_variable): New functions.
6372 (syms_of_process): Defsubr them.
6373 (Fstart_process): Initialize private_vars plist to nil.
6374 (Fmake_network_process): New arg :vars to setup the private
6375 variables for new network process.
6376 (server_accept_connection): Copy server's private variables to
6377 client process.
2c10f029 6378
048addec
JD
6379 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
6380 crashes). Code rewritten and simplified. Now directly aligns the
6381 pointer and recalculates pure_bytes_used, rather than aligning the
6382 size and adjusting the pointer.
b8a76c6c 6383
048addec 63842003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 6385
048addec
JD
6386 * process.c (Fset_process_contact): New function.
6387 (syms_of_process): defsubr it.
6388 (make-network-process): Update doc.
3a8d0899 6389
048addec 63902003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 6391
048addec
JD
6392 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
6393 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 6394
048addec 63952003-01-10 Dave Love <fx@gnu.org>
4abc7470 6396
048addec 6397 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 6398
048addec 63992003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 6400
048addec
JD
6401 * process.c (Fmake_network_process): Convert new port number
6402 to host byte order for `:service t' case. From Mario Lang.
bf338245 6403
048addec 64042003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 6405
048addec
JD
6406 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
6407 instead of XtAppProcessEvent.
bf338245 6408
048addec
JD
6409 * xterm.c (handle_one_xevent): New function.
6410 (x_dispatch_event): New function.
6411 (XTread_socket): Call handle_one_xevent.
bf338245 6412
048addec 6413 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 6414
048addec
JD
6415 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
6416 call XQueryPointer to get coordinates.
6417 (popup_get_selection): Do not set popup_activated_flag to zero,
6418 let popup_deactivate_callback do that. Needed for Motif.
6419 Call x_dispatch_event instead of XtDispatchEvent.
6420 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 6421
048addec 64222003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 6423
6bdb309a 6424 * process.c (server_accept_connection): Fix recording of new
048addec
JD
6425 connection's local address in :local property of contact info.
6426 (Fmake_network_process): Record local network address for new
6427 client processes in :local property of contact info.
6bdb309a 6428 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 6429
048addec 64302003-01-07 Dave Love <fx@gnu.org>
00e3ab56 6431
048addec 6432 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 6433
048addec 64342003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 6435
048addec 6436 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 6437
048addec
JD
6438 * eval.c (Fuser_variable_p): Doc change. For custom variables,
6439 use the same test as for custom-variable-p.
8c6d74c6 6440
048addec 64412003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 6442
048addec
JD
6443 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
6444 Count LAST_LINE_MISFIT in scroll margin for end of window.
6445 Move label too_near_end before setting SCROLL_MARGIN_POS.
6446 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 6447
048addec
JD
6448 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
6449 scroll_conservatively case. If scrolling that much doesn't change
6450 STARTP, move it down one line.
e833850f 6451
048addec
JD
6452 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
6453 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 6454
048addec
JD
6455 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
6456 selected frame.
8c6d74c6 6457
048addec
JD
6458 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
6459 (syms_of_keymap): staticpro them.
6460 (Fapropos_internal): Initialize them and clear them out.
6461 Don't GCPRO them.
8c6d74c6 6462
048addec
JD
6463 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
6464 Doc fixes.
8c6d74c6 6465
048addec
JD
6466 * lisp.h: New misc type Lisp_Save_Value.
6467 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
6468 (XSAVE_VALUE): New macro.
6469 (struct Lisp_Save_Value): New data type.
6470 (union Lisp_Misc): Add u_save_value alternative.
6471 (make_save_value): Declared.
8c6d74c6 6472
048addec 6473 * alloc.c (make_save_value): New function.
8c6d74c6 6474
048addec
JD
6475 * xterm.c (x_catch_errors): Save dpy using make_save_value.
6476 (x_catch_errors_unwind): Call XSync.
8c6d74c6 6477
048addec 64782003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 6479
048addec 6480 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 6481
048addec
JD
6482 * keyboard.c (command_loop_1): Call adjust_point_for_property
6483 in direct action cases for Qforward_char and Qbackward_char.
6484 Set already_adjusted so it won't be done twice.
8c6d74c6 6485
048addec 64862002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
8c6d74c6 6487
048addec
JD
6488 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
6489 type definition of size_t.
8c609cff 6490
048addec 64912003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 6492
048addec
JD
6493 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
6494 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 6495
048addec 64962002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 6497
048addec
JD
6498 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
6499 to default to t.
fa634a5e 6500
048addec 65012002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 6502
048addec 6503 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 6504
048addec 65052002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 6506
048addec
JD
6507 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
6508 allow building in a different directory than source. Uses some
6509 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 6510
048addec 65112002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 6512
048addec
JD
6513 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
6514 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
6515 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
6516 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 6517
048addec 65182002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 6519
048addec
JD
6520 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
6521 <scroll-down-aggressively>: Doc fix.
2155ecf3 6522
048addec
JD
6523 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
6524 string as pane name, if there is one.
6525 (set_frame_menubar): Save menu_items_n_panes from each call to
6526 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 6527
048addec
JD
6528 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
6529 Don't try to make last line fully visible if it is past end of window.
61f1d295 6530
048addec 65312002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 6532
048addec
JD
6533 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
6534 (mac_menu_show): Add support for hierarchical popup menus.
6535 (add_menu_item): Remove indentation support.
6536 (fill_submenu, fill_menu): Create hierarchical menus
6537 instead of using indentation.
0b17a217 6538
048addec 65392002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 6540
048addec
JD
6541 * xdisp.c (try_cursor_movement): Don't call try_window here.
6542 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 6543
048addec 6544 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 6545
048addec 65462002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 6547
048addec
JD
6548 * macterm.c (XTread_socket): Call KeyTranslate for control and
6549 meta to deal correctly shifted non-alpha characters, like C-S-5
6550 being treated like C-%. Does not look for shift key to deal
6551 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 6552
048addec 65532002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 6554
048addec
JD
6555 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
6556 If it is non-nil, run timers. Use an unwind-protect to requeue
6557 the events that were read ahead.
6558 (popup_get_selection_unwind): New subroutine.
6559 (popup_get_selection_queue): File-scope variable now holds that queue.
6560 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
6561 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
6562 Use an unwind-protect to pop down the dialog box.
6563 (xdialog_show_unwind): New subroutine implements that.
f02cac82 6564
048addec
JD
6565 * xdisp.c (row_containing_pos): Change exit test using last_y.
6566 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 6567
048addec
JD
6568 * lread.c (load_error_handler): New function.
6569 (Fload): Handle errors in Fsubstitute_in_file_name.
6570 Don't expect Fsignal to return.
f02cac82 6571
048addec
JD
6572 * eval.c: Errors and throws work right with interrupt blocking.
6573 (struct catchtag): New elt interrupt_input_blocked.
6574 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
6575 (internal_catch, Fcondition_case, internal_condition_case)
6576 (internal_condition_case_1, internal_condition_case_2): Save it.
6577 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 6578
048addec 6579 * editfns.c (Fformat): Add parens.
f02cac82 6580
048addec
JD
6581 * dired.c (file_name_completion): Fix that change.
6582 Delete special quit-handling code; just use QUIT.
f02cac82 6583
048addec 65842002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
f02cac82 6585
048addec
JD
6586 * dired.c (file_name_completion): Close directory on error
6587 just as in directory_files_internal.
1a590729 6588
048addec 65892002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 6590
048addec
JD
6591 * window.c (Fset_window_configuration): Set old_point to correct
6592 value when new_current_buffer == current_buffer.
f02cac82 6593
048addec 65942002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 6595
048addec
JD
6596 Revisited my earlier fix for the following entry in etc/PROBLEMS:
6597 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
6598 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 6599
048addec
JD
6600 These changes were in part based upon suggestions made by Peter
6601 'Luna' Runestig [peter@runestig.com].
9785d95b 6602
048addec
JD
6603 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
6604 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 6605 g_b_init_get_sid_identifier_authority ): Add several static
048addec 6606 global variables.
9785d95b 6607
048addec
JD
6608 * w32.c (globals_of_w32): New function. Used to initialize those
6609 global variables that must always be initialized on startup even
6610 when the global variable initialized is non zero. Its primary
6611 purpose at this time is to set the global variables
6612 g_b_init_is_windows_9x, g_b_init_open_process_token,
6613 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
6614 g_b_init_get_sid_identifier_authority to 0 on startup.
6615 Called from main.
9785d95b 6616
048addec
JD
6617 * w32.c (is_windows_9x): Perform initialization only if
6618 g_b_init_is_windows_9x is equal to 0. On initialization set
6619 g_b_init_is_windows_9x equal to 1.
2308af15 6620
048addec
JD
6621 * w32.c (open_process_token): Perform initialization only if
6622 g_b_init_open_process_token is equal to 0. On initialization set
6623 g_b_init_open_process_token equal to 1.
2308af15 6624
048addec
JD
6625 * w32.c (get_token_information): Perform initialization only if
6626 g_b_init_get_token_information is equal to 0. On initialization
6627 set g_b_init_get_token_information equal to 1.
9785d95b 6628
048addec
JD
6629 * w32.c (lookup_account_sid): Perform initialization only if
6630 g_b_init_lookup_account_sid is equal to 0. On initialization
6631 set g_b_init_lookup_account_sid equal to 1.
9785d95b 6632
048addec
JD
6633 * w32.c (get_sid_identifier_authority): Perform initialization
6634 only if g_b_init_get_sid_identifier_authority is equal to 0.
6635 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 6636
048addec
JD
6637 * w32fns.c (globals_of_w32fns): New function. Used to initialize
6638 those global variables that must always be initialized on startup
6639 even when the global variable initialized is non zero.
6640 Its primary purpose at this time is to initialize the global variable
6641 track_mouse_event_fn.
9785d95b 6642
a64387ee 6643 * w32fns.c (w32_wnd_proc): Remove initialization of
048addec 6644 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 6645
048addec 6646 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 6647
a64387ee 6648 * w32menu.c (globals_of_w32menu): New function. Used to
048addec
JD
6649 initialize those global variables that must always be initialized
6650 on startup even when the global variable initialized is non zero.
6651 Its primary purpose at this time is to initialize the global
6652 variables get_menu_item_info and set_menu_item_info.
9785d95b 6653
048addec
JD
6654 * w32menu.c (initialize_frame_menubar): Remove initialization of
6655 get_menu_item_info and set_menu_item_info.
9785d95b 6656
048addec 6657 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 6658
048addec
JD
6659 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
6660 Declare them.
9785d95b 6661
048addec
JD
6662 * emacs.c (main): Call globals_of_w32 prior to calling
6663 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
6664 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
6665 is defined.
9785d95b 6666
048addec
JD
6667 * w32term.c (x_update_window_begin): Fix Windows API error
6668 detected by BoundsChecker. Test to determine if
6669 w32_system_caret_hwnd is NULL prior to attempting to use
6670 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 6671
048addec
JD
6672 * w32term.c (x_update_window_end): Fix Windows API error
6673 detected by BoundsChecker. Test to determine if
6674 w32_system_caret_hwnd is NULL prior to attempting to use
6675 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 6676
048addec 66772002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 6678
048addec
JD
6679 * coding.c (coding_system_require_warning): New variable.
6680 (syms_of_coding): DEFVAR it.
b6da19ef 6681
048addec 6682 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 6683
048addec
JD
6684 * fileio.c (choose_write_coding_system): Even if
6685 Vcoding_system_for_write is non-nil, if
6686 coding_system_require_warning is nonzero, call
6687 Vselect_safe_coding_system_function.
bfcf6dbe 6688
048addec 66892002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 6690
048addec
JD
6691 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
6692 (lisp): Add font-core.
2c568af5 6693
048addec 66942002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 6695
048addec
JD
6696 * textprop.c (text_read_only): New arg `propval'.
6697 (get_char_property_and_overlay): Remove unused var `next_overlay'.
6698 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 6699
048addec 67002002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 6701
048addec 6702 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 6703
048addec 67042002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 6705
048addec
JD
6706 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
6707 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
6708 Be more careful about when help_events are generated.
96720f09 6709
048addec 67102002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 6711
048addec
JD
6712 * macterm.c (mac_check_for_quit_char): Correctly set the
6713 modifiers of the event to 0.
6714 * mac.c (sys_select): Duplicate rfds before calling select to
6715 ensure that rfds survive the while loop.
e5ae1c49 6716
048addec 67172002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 6718
048addec
JD
6719 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
6720 row_containing_pos returned NULL.
2eb46b2d 6721
048addec 67222002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 6723
6bdb309a 6724 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 6725 non-blocking.
6bdb309a 6726 (sys_select): Fix sys_select to not use a timeout larger than
048addec 6727 the one given.
b11f1d8a 6728
048addec 67292002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 6730
048addec 6731 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 6732
048addec 67332002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 6734
048addec
JD
6735 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
6736 as the last thing.
a4ac5b17 6737
048addec 67382002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 6739
048addec 6740 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 6741
048addec 67422002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 6743
048addec
JD
6744 * editfns.c (Fformat): Handle precision in string conversion
6745 specifiers like libc functions do (ie, print at most that many
6746 characters).
85cce843 6747
048addec 67482002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 6749
048addec
JD
6750 * xdisp.c (row_containing_pos): Check more carefully
6751 whether charpos is really in the row before returning it.
0d4d26a7 6752
048addec 67532002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 6754
048addec 6755 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 6756
048addec
JD
6757 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
6758 each stack frame. This may change as it could be time consuming.
0d4d26a7 6759
048addec
JD
6760 * macterm.c (mac_check_for_quit_char, quit_char_comp)
6761 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 6762 (mac_initialize): Add code to check for pressing of quit_char
048addec 6763 in the OS event queue.
b11f1d8a 6764
048addec
JD
6765 * mac.c (sys_select): Call mac_check_for_quit_char every second
6766 while blocking on select.
0d4d26a7 6767
048addec
JD
6768 * mac.c (sys_read): Use sys_select to test for input first
6769 before calling read, to allow C-g to break.
9252f7bc 6770
048addec 67712002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 6772
048addec 6773 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 6774
048addec 6775 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 6776
048addec 6777 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 6778
048addec
JD
6779 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
6780 autoload.
9252f7bc 6781
048addec 6782 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 6783
048addec 6784 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 6785
048addec 67862002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 6787
048addec 6788 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 6789
048addec 67902002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 6791
048addec 6792 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 6793
048addec 6794 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 6795
048addec 6796 * alloca.c: Don't use #error.
02d588e2 6797
048addec 67982002-12-03 Dave Love <fx@gnu.org>
02d588e2 6799
048addec
JD
6800 * buffer.c (Qucs_set_table_for_input): New.
6801 (Fget_buffer_create): Use it.
6802 (Qset_buffer_major_mode_hook): Deleted.
6803 (Fset_buffer_major_mode): Revert previous change.
6804 (init_buffer_once): Intern ucs-set-table-for-input.
6805 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
6806 Add &Qucs_set_table_for_input.
451e2697 6807
048addec 68082002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 6809
048addec
JD
6810 * callint.c (Fcall_interactively): Use next_event only if less
6811 than key_count.
72742a99 6812
048addec 68132002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 6814
048addec
JD
6815 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
6816 names to 255 characters.
72742a99 6817
048addec
JD
6818 * macterm.c (XTread_socket): If all frames have been collapsed,
6819 expand the first one before handling drag-and-drop events.
72742a99 6820
048addec
JD
6821 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
6822 which is detected by autoconf.
40e6ff95 6823
048addec 68242002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 6825
048addec
JD
6826 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
6827 offset in two hints table to allow prebinding to be redone and
6828 allow the executable to be stripped.
c02138c6 6829
048addec 68302002-11-29 Dave Love <fx@gnu.org>
c02138c6 6831
048addec
JD
6832 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
6833 already provided.
0e47bbf7 6834
048addec 68352002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 6836
048addec
JD
6837 * xdisp.c (start_display): Check more intelligently for
6838 whether the line is continued.
6839 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 6840
048addec 68412002-11-28 Dave Love <fx@gnu.org>
44129dcb 6842
048addec
JD
6843 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
6844 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 6845
048addec 68462002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 6847
048addec
JD
6848 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
6849 more descriptive error output from lread.c:Fload upon most require
6850 cycles during boostrapping.
1637fd2c 6851
048addec 68522002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 6853
048addec
JD
6854 * fileio.c (Finsert_file_contents): Give a more appropriate error
6855 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 6856
048addec
JD
6857 * dired.c (Ffile_attributes): Don't return negative file sizes for
6858 files bigger than 2Gb when off_t is 32 bit.
540c2788 6859
048addec 68602002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 6861
048addec 6862 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 6863
048addec
JD
6864 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
6865 Test GETPGRP_VOID instead.
6866 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 6867
048addec
JD
6868 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
6869 Don't define.
6870 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 6871
048addec 6872 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 6873
048addec 68742002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 6875
048addec
JD
6876 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
6877 supported.
4042a81a 6878
048addec 68792002-11-25 Dave Love <fx@gnu.org>
4042a81a 6880
048addec 6881 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 6882
048addec 6883 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 6884
048addec 68852002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 6886
048addec 6887 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 6888
048addec 68892002-11-24 Steven Tamm <steventamm@mac.com>
82122254 6890
048addec
JD
6891 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
6892 determine the size of pointers alloced in unexed space instead
6893 of using possibly invalid emacs_zone pointers. This fixes the
6894 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 6895
048addec 68962002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 6897
048addec 6898 * search.c (Fstring_match): Doc fix.
c1ee53bc 6899
048addec
JD
6900 * callint.c (Fcall_interactively): If a command fails because
6901 `*' detects a read-only buffer, but RECORD_FLAG is set,
6902 record it anyway if the args don't actually do tty input.
5598c32e 6903
048addec 69042002-11-22 Dave Love <fx@gnu.org>
5598c32e 6905
048addec 6906 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 6907
048addec
JD
6908 * keyboard.c (interrupt_signal): Provide forward declaration.
6909 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 6910
048addec 6911 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 6912
048addec 69132002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 6914
048addec
JD
6915 * eval.c (interactive_p): Skip any number of bytecode
6916 and special form frames, in any order.
516eea8e 6917
048addec 69182002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 6919
048addec
JD
6920 * w32fns.c (convert_mono_to_color_image): New function.
6921 (xbm_load, xbm_load_image): Use it when foreground or background
6922 is explicitly set.
04dbfa08 6923
048addec 69242002-11-19 Dave Love <fx@gnu.org>
04dbfa08 6925
048addec 6926 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 6927
048addec 69282002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 6929
048addec
JD
6930 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
6931 (XPutPixel): Swap blue and red.
6932 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
6933 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
6934 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
6935 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 6936
048addec 69372002-11-18 Dave Love <fx@gnu.org>
d824beee 6938
048addec 6939 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 6940
048addec 6941 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 6942
048addec 6943 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 6944
048addec
JD
6945 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
6946 malloc, realloc, calloc.
d824beee 6947
048addec
JD
6948 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
6949 (bcmp): Don't define.
d824beee 6950
048addec 6951 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 6952
048addec 6953 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 6954
048addec 6955 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 6956
048addec 6957 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 6958
048addec
JD
6959 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
6960 Don't include alloca.h.
d824beee 6961
048addec 6962 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 6963
048addec 6964 * regex.c (_GNU_SOURCE): Don't define.
1998560a 6965
048addec 6966 * process.c (_GNU_SOURCE): Don't define.
1998560a 6967
048addec 6968 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 6969
048addec 69702002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 6971
048addec 6972 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 6973
048addec 69742002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 6975
048addec
JD
6976 * dispextern.h (struct face): Add `overstrike' field.
6977 * xterm.c (x_draw_glyph_string_foreground)
6978 (x_draw_composite_glyph_string_foreground): Implement overstriking.
6979 * xfaces.c (load_face_font): Set `face->overstrike' based on
6980 result from choose_face_font.
6981 (best_matching_font, choose_face_font): Add `needs_overstrike'
6982 argument, and use it to return whether overstriking is desirable
6983 for this face/font combo.
6984 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 6985
048addec 69862002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 6987
048addec
JD
6988 This change is my fix for the following entry in etc/PROBLEMS:
6989 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
6990 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 6991
048addec
JD
6992 * w32.c: Added wrapper functions around the win32 API functions
6993 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
6994 GetSidIdentifierAuthority. These wrapper functions serve two
6995 purposes:
6996 1. They ensure that the wrapped function can never be called
6997 when Emacs is running on an operating system on which they are
6998 not supported (Microsoft Windows 95 / 98 / ME).
6999 2. They call the wrapped functions via function pointers rather
7000 than calling them directly. This avoids taking advantage of the
7001 undocumented fact that although these functions are not supported
7002 in the 9x branch of Microsoft Windows, the functions do exist in
7003 the version of advapi32.dll that is found in the 9x branch of
7004 Microsoft Windows.
f60ae425 7005
6bdb309a 7006 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
7007 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
7008 and GetSidIdentifierAuthority with calls to the newly added
7009 wrapper functions.
f60ae425 7010
048addec
JD
7011 * w32.h: Added extern declarations for the following functions:
7012 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
7013 syms_of_w32menu, and void syms_of_fontset.
f60ae425 7014
6bdb309a 7015 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
7016 function pointer track_mouse_event_fn in the handler for the
7017 WM_SETFOCUS message.
3582b6a3 7018
6bdb309a 7019 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
7020 reinitialize the function pointers set_menu_item_info and
7021 get_menu_item_info.
f60ae425 7022
048addec 70232002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 7024
048addec
JD
7025 * sound.c: Added a partial implementation of play-sound-internal
7026 for Microsoft Windows. Added various #ifdef / #else / #endif
7027 code blocks to separate the code that will compile under
7028 Microsoft Windows from the code that is specific to Gnu/Linux.
7029 Moved several blocks of code around to make this separation of code
7030 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 7031
048addec 7032 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 7033
048addec
JD
7034 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
7035 added support for play-sound-internal under Windows would be
7036 included in the build of Emacs.
517f42a0 7037
048addec 70382002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 7039
048addec 7040 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 7041
048addec 7042 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 7043
048addec 70442002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 7045
048addec
JD
7046 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
7047 (adjust_point_for_property): Move out of display and invisible even if
7048 we were already inside before (in case a property was added while
7049 we weren't looking). Be more careful when handling invisible props.
7050 Skip invisible text as if it really wasn't there at all.
aab83f91 7051
048addec 70522002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 7053
048addec
JD
7054 * w32term.c (x_draw_image_foreground)
7055 (w32_draw_image_foreground_1): Use standard copy and invert
7056 operations to draw images.
aab83f91 7057
048addec
JD
7058 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
7059 depth of 1.
7060 (xbm_read_bitmap_data): Invert bits as xbm is read in.
7061 (XPutPixel): Don't invert bits here.
a4478a76 7062
048addec 70632002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 7064
048addec
JD
7065 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
7066 (w32_draw_image_foreground_1): Handle image masks.
7067 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 7068
048addec
JD
7069 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
7070 (x_from_xcolors): Adjust RGB values for W32.
7071 (image_background, image_background_transparent)
7072 (postprocess_image, x_to_xcolors, x_disable_image)
7073 (x_build_heuristic_mask): Adapt for W32 and enable.
7074 (x_create_x_image_and_pixmap): Mark images with palettes as such.
7075 (xbm_load): Remove unused variable.
03670a65 7076
048addec 70772002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 7078
048addec 7079 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 7080
048addec 70812002-11-14 Dave Love <fx@gnu.org>
59daa29a 7082
048addec 7083 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 7084
048addec
JD
7085 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
7086 * xmenu.c (unuse_menu_items, digest_single_submenu):
7087 * xfns.c (x_put_x_image):
7088 * xdisp.c (message2_nolog, set_message):
7089 * undo.c (record_point):
7090 * terminfo.c (tparam):
7091 * syntax.c (scan_sexps_forward):
7092 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
7093 * composite.c (update_compositions):
7094 * cm.c (calccost, cmgoto):
7095 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 7096
048addec 7097 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 7098
048addec
JD
7099 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
7100 Don't declare.
59daa29a 7101
048addec 7102 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 7103
048addec
JD
7104 * fns.c (Fcopy_sequence): Doc fix.
7105 (Fmap_char_table): Cast `call2'.
3947677c 7106
048addec
JD
71072002-11-14 Francesco Potorti` <pot@gnu.org>
7108
7109 * s/sol2-8.h: New file.
7110
71112002-11-14 Kim F. Storm <storm@cua.dk>
7112
7113 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
7114 dependency on `risky-local-variable' and the :propertize form.
7115
71162002-11-12 Stefan Monnier <monnier@cs.yale.edu>
7117
7118 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
7119
7120 * syntax.c (scan_sexps_forward): Undo last patch.
7121 Use a more obvious fix: check eob before updating the syntax table.
7122
71232002-11-09 Stefan Monnier <monnier@cs.yale.edu>
7124
7125 * syntax.c (scan_sexps_forward): Update syntax table before reading
7126 a char rather than after so we don't update the table past eob.
7127
71282002-11-09 Dave Love <fx@gnu.org>
7129
7130 * buffer.c (Fset_buffer_major_mode): Fix last change.
7131
7132 * regex.c (regexec): Fix pmatch declaration.
7133
7134 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
7135
7136 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
7137 to self-inserting characters.
7138 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
7139
7140 * coding.c (Vtranslation_table_for_input): New.
7141 (syms_of_coding): DEFVAR it.
7142
71432002-11-08 Juanma Barranquero <lektu@terra.es>
7144
7145 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
7146 window.
7147
71482002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7149
6bdb309a 7150 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
7151 cp, and i.
7152
71532002-11-06 Dave Love <fx@gnu.org>
7154
7155 * buffer.c (Qset_buffer_major_mode_hook): New.
7156 (Fset_buffer_major_mode): Use it.
7157
71582002-11-06 Richard M. Stallman <rms@gnu.org>
7159
7160 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
7161 and stop_polling.
7162
7163 * process.c (wait_reading_process_input):
7164 Test POLLING_PROBLEM_IN_SELECT, not hpux.
7165 Avoid initialization for auto Lisp_Object var.
7166
7167 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
7168
7169 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
7170
71712002-11-05 Richard M. Stallman <rms@gnu.org>
7172
7173 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
7174
7175 * callint.c (Fcall_interactively): New local filter_specs.
7176 (Fcall_interactively): Check for progn as well as let.
7177 Add a gcpro.
7178 (Qprogn): New variable.
7179 (syms_of_callint): Staticpro and init Qprogn.
7180
71812002-11-04 John Paul Wallington <jpw@shootybangbang.com>
7182
7183 * lread.c (Feval_buffer): Doc fix.
7184
71852002-11-04 Dave Love <fx@gnu.org>
7186
7187 * keyboard.c (read_char): Always translate iff
7188 Vkeyboard_translate_table is a char table and c is valid.
7189
7190 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
7191 and fix C types.
7192
71932002-11-03 Stefan Monnier <monnier@cs.yale.edu>
7194
7195 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
7196
7197 * editfns.c (get_pos_property): Don't hardcode Qfield.
7198
7199 * keyboard.c (adjust_point_for_property): Handle `display' prop on
7200 overlays. Also handle `invisible' prop.
7201
72022002-11-02 Stefan Monnier <monnier@cs.yale.edu>
7203
7204 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
7205 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
7206
72072002-11-01 Andreas Schwab <schwab@suse.de>
7208
7209 * editfns.c (Fmessage): Revert last change to properly handle %%.
7210
72112002-11-01 Stefan Monnier <monnier@cs.yale.edu>
7212
7213 * xmenu.c (unuse_menu_items): New fun.
7214 (menu_items_inuse): New var.
7215 (syms_of_xmenu): Initialize it.
7216 (init_menu_items): Use it to detect re-entrance.
7217 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
7218 (Fx_popup_menu): Remove spurious XSETFRAME.
7219
7220 * editfns.c (find_field): Make an exception for nil fields.
7221
72222002-11-01 Dave Love <fx@gnu.org>
7223
7224 * m/gec63.h: Deleted.
7225
72262002-10-31 Dave Love <fx@gnu.org>
7227
7228 * xterm.c (XTread_socket): Fix last change.
7229 (xaw_scroll_callback): Cast call_data to long to avoid warning.
7230
72312002-10-31 Stefan Monnier <monnier@cs.yale.edu>
7232
7233 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
7234
72352002-10-30 Stefan Monnier <monnier@cs.yale.edu>
7236
7237 * editfns.c (overlays_around, get_pos_property): New funs.
7238 (find_field): Use them.
7239 Also be careful not to modify POS before its last use.
7240 (Fmessage): Don't Fformat if there's nothing to format.
7241
72422002-10-30 Dave Love <fx@gnu.org>
7243
7244 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
7245 [HAVE_PTY_H]; Include pty.h.
7246
7247 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
7248
7249 * xterm.c (Qeql): Declare.
7250 (Vx_keysym_table): New.
7251 (syms_of_xterm): Initialize it.
7252 (XTread_socket): Use it. Deal with ASCII keysyms.
7253 (XSetIMValues) [HAVE_X11R6]: Prototype.
7254
7255 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
7256 (lispy_kana_keys): Comment out.
7257 (make_lispy_event) [XK_kana_A]: Comment out.
7258 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
7259 Fix sprintf call.
7260
7261 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
7262 regexp.h change).
7263 (TERMINFO, LIBS_TERMCAP): Define.
7264
7265 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
7266 (bcmp): Define conditional on HAVE_BCMP.
7267 (NO_SIOCTL_H): Don't define.
7268 (TIOCSIGSEND): Don't make conditional on IRIX6.
7269
7270 * s/sol2-5.h: Don't include strings.h.
7271 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
7272
7273 * s/irix6-0.h (IRIX6): Don't define.
7274 (bcopy, bcmp, bzero): Don't undef.
7275
7276 * s/irix6-5.h: Don't include strings.h.
7277 (IRIX6): Don't define.
7278 (bcopy, bcmp, bzero): Don't undef.
7279
7280 * syntax.c (Fforward_comment): Doc fix.
7281
72822002-10-29 Kim F. Storm <storm@cua.dk>
7283
7284 * process.c (Fsignal_process): Allow PROCESS to be specified by
7285 name in addition to pid (as integer or string).
7286
72872002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
7288
7289 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
7290 environments.
7291
72922002-10-27 Kim F. Storm <storm@cua.dk>
7293
7294 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
7295
7296 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
7297
7298 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
7299
7300 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
7301
73022002-10-26 Richard M. Stallman <rms@gnu.org>
7303
7304 * editfns.c (Fformat): Detect invalid format letters for floats.
7305
73062002-10-25 Kenichi Handa <handa@m17n.org>
7307
7308 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
7309 (x_set_title): Likewise.
7310
73112002-10-25 Juanma Barranquero <lektu@terra.es>
7312
7313 * macgui.h:
7314 * w32gui.h: Remove definition of XColor.
7315
7316 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
7317
73182002-10-24 Kim F. Storm <storm@cua.dk>
7319
7320 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
7321 Callers changed (supply dummy arg).
7322
7323 * lisp.h (get_window_cursor_type): Update prototype.
7324
7325 * w32term.c (x_display_and_set_cursor): Get active_cursor from
7326 get_window_cursor_type to track system caret.
7327
73282002-10-24 Kim F. Storm <storm@cua.dk>
7329
7330 * process.c (Fformat_network_address): New function.
7331 (syms_of_process): Defsubr it.
7332 (list_processes_1): Use it to format :local/:remote address if
7333 service/host is not set; before emacs would crash in that case.
7334 (Fmake_network_process): Don't use Ffind_operation_coding_system
7335 to setup coding system if host or service is not set.
7336
73372002-10-23 Juanma Barranquero <lektu@terra.es>
7338
7339 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
7340
7341 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
7342 COLORREF.
7343
7344 * macgui.h:
7345 * w32gui.h: Add definition of XColor.
7346
7347 * macfns.c:
7348 * w32fns.c:
7349 * xfaces.c: Remove definition of XColor.
7350
73512002-10-22 Stefan Monnier <monnier@cs.yale.edu>
7352
7353 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
7354
7355 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
7356 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
7357 window if it is dedicated.
7358 (Fshrink_window): Add preserve_before as was done for enlarge_window.
7359 (Vspecial_display_function): Update docstring.
7360
7361 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
7362 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
7363 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
7364
73652002-10-21 Stefan Monnier <monnier@cs.yale.edu>
7366
7367 * casefiddle.c (casify_region): Don't treat a prefix char as part
7368 of a word when at the beginning.
7369
73702002-10-17 Juanma Barranquero <lektu@terra.es>
7371
7372 * lread.c (syms_of_lread): Fix typos.
7373
73742002-10-17 Dave Love <fx@gnu.org>
7375
7376 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
7377
73782002-10-16 Richard M. Stallman <rms@gnu.org>
7379
7380 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
7381
73822002-10-14 Juanma Barranquero <lektu@terra.es>
7383
7384 * w16select.c (syms_of_win16select): Fix docstring for
7385 `selection-coding-system'.
7386
7387 * w32select.c (syms_of_w32select): Likewise.
7388
73892002-10-14 Stefan Monnier <monnier@cs.yale.edu>
7390
7391 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
7392 a backslash-quoted char.
7393 (scan_lists, scan_sexps_forward): Pacify the compiler.
7394
73952002-10-13 Richard M. Stallman <rms@gnu.org>
7396
7397 * window.c (window_scroll): Set immediate_quit.
7398
7399 * print.c (print): When backquote form is the car of a list,
7400 output in old style. Use old_backquote_output to output all
7401 comma forms inside it in old style too.
7402
7403 * buffer.h (struct buffer): Move `undo_list' down below `name'.
7404
74052002-10-11 Markus Rost <rost@math.ohio-state.edu>
7406
7407 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
7408 batch mode).
7409
7410 * lread.c (Fload): Doc fix (load-suffixes).
7411
74122002-10-10 Steven Tamm <steventamm@mac.com>
7413
7414 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
7415 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
7416 Also switch the default to Qnil from Qt.
7417
74182002-10-08 Kenichi Handa <handa@m17n.org>
7419
7420 * coding.c (code_convert_region): When we need more GAP for
7421 conversion, pay attention to the case that coding->produced is not
7422 greater than coding->consumed.
7423
74242002-10-07 Richard M. Stallman <rms@gnu.org>
7425
7426 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
7427
74282002-10-06 Andrew Choi <akochoi@shaw.ca>
7429
7430 * macmenu.c (mac_menu_show): Add j to count menu items; match
7431 menu_item_selection to it to find selected item.
7432
74332002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7434
7435 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
7436 cases. The correct fix is to pass ReparentNotify to Xt.
7437 The shell widget interprets ConfigureNotify differently depending
7438 on if it has been reparented or not.
7439
74402002-10-05 Markus Rost <rost@math.ohio-state.edu>
7441
7442 * editfns.c (Fformat_time_string): Doc fix.
7443
74442002-10-05 John Paul Wallington <jpw@shootybangbang.com>
7445
7446 * fns.c (Flength): Doc fix.
7447
74482002-10-04 Stefan Monnier <monnier@cs.yale.edu>
7449
7450 * keyboard.c (keyremap): New struct.
7451 (read_key_sequence): Use it: globally replace keytran_foo with
7452 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
7453 keytran_next and fkey_next to just `next'.
7454
74552002-10-04 Steven Tamm <steventamm@mac.com>
7456
7457 * macterm.c (keycode_to_xkeysym_table): Change return to be
7458 treated like an X keysym.
7459
74602002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7461
7462 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
7463 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
7464 This is to also handle x/y changes that occur because of a resize.
7465
74662002-10-02 John Paul Wallington <jpw@shootybangbang.com>
7467
7468 * frame.c (Vdelete_frame_functions): New variable.
7469 (syms_of_frame): Initialize and defvar it.
7470 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
7471 it when frame's `tooltip' parameter is non-nil.
7472
7473 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
7474
7475 * w32fns.c (x_create_tip_frame): Likewise.
7476
7477 * macfns.c (x_create_tip_frame): Likewise.
7478
74792002-09-30 Kenichi Handa <handa@m17n.org>
7480
7481 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
7482 -1 before calling ccl_driver.
7483
7484 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
7485 Only when it is non-nil, handle composition sequence.
7486 (setup_coding_system) <0>: Don't force composition handling.
7487
7488 * Makefile.in (lisp, shortlisp): Add utf-16.elc
7489
74902002-09-29 Richard M. Stallman <rms@gnu.org>
7491
7492 * search.c (Freplace_match): Adjust match data for the substitution
7493 just made in the buffer.
7494
7495 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
7496 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
7497
74982002-09-27 Richard M. Stallman <rms@gnu.org>
7499
7500 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
7501 (read_char): Use them. Do all exits thru the end of the function.
7502
75032002-09-27 Kenichi Handa <handa@etl.go.jp>
7504
7505 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
7506 is nil.
7507
75082002-09-26 Richard M. Stallman <rms@gnu.org>
7509
7510 * regex.h (__restrict_arr): Don't define if already defined.
7511
7512 * coding.c (run_pre_post_conversion_on_str):
7513 Save and restore Vdeactivate_mark.
7514
75152002-09-26 John Paul Wallington <jpw@shootybangbang.com>
7516
7517 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
7518
75192002-09-26 Kenichi Handa <handa@etl.go.jp>
7520
7521 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
7522 nonzero, try face's family at first. Otherwise try FAMILY at first.
7523 (choose_face_font): If C is a single byte char or latin-1, call
7524 try_font_list with PREFER_FACE_FAMILY 1.
7525
75262002-09-21 Richard M. Stallman <rms@gnu.org>
7527
7528 * window.c (select_window_1): Don't select frame.
7529 Set frame's selected window only when frame itself is selected.
7530 (Fselect_window): Doc fix.
7531
75322002-09-18 Kim F. Storm <storm@cua.dk>
7533
7534 * process.c (make-network-process): Doc fix (there is no
7535 network-server-log-function hook).
7536
75372002-09-18 Richard M. Stallman <rms@gnu.org>
7538
7539 * print.c (print): Clear out the unused parts of Vprint_number_table.
7540 (syms_of_print): Doc fix for `print-number-table'.
7541
7542 * unexelf.c (unexec): Undo previous change.
7543
75442002-09-17 Andreas Schwab <schwab@suse.de>
7545
7546 * m/alpha.h [LINUX]: Don't define DATA_START.
7547
75482002-09-16 Dave Love <fx@gnu.org>
7549
7550 * unexelf.c (unexec): Deal with .got, reinstating change from
7551 25-08-1999.
7552
75532002-09-13 Richard M. Stallman <rms@gnu.org>
7554
7555 * s/sol2-6.h (UNEXEC): Comment out definition.
7556
7557 * unexsol.c (unexec): Don't downcase first letter of error msg.
7558
7559 * xfaces.c (Fcolor_supported_p): Just one arg is required.
7560
75612002-09-12 Markus Rost <rost@math.ohio-state.edu>
7562
7563 * unexsol.c: Include buffer.h, charset.h, coding.h.
7564
75652002-09-11 Richard M. Stallman <rms@gnu.org>
7566
7567 * unexsol.c: Don't use report_file_error; do it by hand
7568 using dlerror.
7569
7570 * process.c (wait_reading_process_input, both versions):
7571 Before calling turn_on_atimers, call stop_polling.
7572
7573 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
7574
7575 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
7576 we go to too_near_end, call clear_glyph_matrix.
7577 (redisplay_window): After make_cursor_line_fully_visible,
7578 call clear_glyph_matrix and bypass `goto done'.
7579
7580 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
7581 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
7582
75832002-09-10 Richard M. Stallman <rms@gnu.org>
7584
7585 * fileio.c (Fdo_auto_save): Catch error making directory.
7586 Only call push_message if we need to.
7587 At the same time, make an unwind-protect to pop it.
7588 Rename local message_p to old_message_p.
7589 (do_auto_save_make_dir, do_auto_save_eh): New functions.
7590 (do_auto_save_unwind): Don't call pop_message.
7591
7592 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
7593
7594 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
7595
7596 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
7597
7598 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
7599
76002002-09-10 Stefan Monnier <monnier@cs.yale.edu>
7601
7602 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
7603 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
7604 (re_match_2_internal): Be more careful with infinite loops.
7605
76062002-09-10 Kim F. Storm <storm@cua.dk>
7607
7608 * macros.c (end_kbd_macro): New function.
7609 (Fend_kbd_macro): Use it.
7610
7611 * macros.h (end_kbd_macro): Declare extern.
7612
7613 * keyboard.c (Fdiscard_input): If defining keyboard macro,
7614 end and save it instead of discarding it.
7615
76162002-09-09 Markus Rost <rost@math.ohio-state.edu>
7617
7618 * s/sol2-6.h: Fix typo. Add comment.
7619
76202002-09-09 Richard M. Stallman <rms@gnu.org>
7621
7622 * regex.c (regnum_t): Use signed int, not unsigned int.
7623
7624 * s/sol2-6.h: New file.
7625
7626 * s/sol2-5.h (UNEXEC): Definition deleted.
7627
76282002-09-08 Kim F. Storm <storm@cua.dk>
7629
7630 * macros.c (executing_macro_index): Change type to EMACS_INT.
7631 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
7632
7633 * macros.h (executing_macro_index): Change type to EMACS_INT.
7634
76352002-09-06 Richard M. Stallman <rms@gnu.org>
7636
7637 * casetab.c (set_case_table): Make canon table point to eqv table.
7638
76392002-09-06 Juanma Barranquero <lektu@terra.es>
7640
7641 * coding.c (syms_of_coding): Fix spacing.
7642
7643 * composite.c (Fcompose_region_internal)
7644 (Fcompose_string_internal): Likewise.
7645
7646 * data.c (Flsh): Likewise.
7647
7648 * fontset.c (Fset_fontset_font): Likewise.
7649
7650 * macfns.c (Fx_server_max_request_size): Likewise.
7651
7652 * w16select.c (syms_of_win16select): Likewise.
7653
7654 * w32select.c (syms_of_w32select): Likewise.
7655
7656 * xselect.c (syms_of_xselect): Likewise.
7657
76582002-09-05 Richard M. Stallman <rms@gnu.org>
7659
7660 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
7661 call EXTEND_RANGE_TABLE and return a proper value.
7662 (set_image_of_range): Don't call set_image_of_range_1
7663 if no TRANSLATE or if range includes all of Latin-1.
7664 Only call it for the Latin-1 part of the range.
7665 For other cases, make two separate ranges,
7666 one for the original specified characters and one for
7667 their case-conversions.
7668
76692002-09-04 Richard M. Stallman <rms@gnu.org>
7670
7671 * s/sol2-5.h (UNEXEC): Use unexsol.o.
7672
7673 * window.c (displayed_window_lines): Correct for one-off bug
7674 in HEIGHT on non-window displays.
7675
7676 * regex.c (set_image_of_range_1): New function.
7677 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
7678 Return a value to indicate running out of memory.
7679 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
7680 (extend_range_table_work_area): New subroutine.
7681 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
7682 Different calling conventions, and used from set_image_of_range{,_1}.
7683 (IMMEDIATE_QUIT_CHECK): Definitions moved.
7684
76852002-09-04 Juanma Barranquero <lektu@terra.es>
7686
7687 * makefile.w32-in: All dependencies updated.
7688
76892002-09-01 Richard M. Stallman <rms@gnu.org>
7690
7691 * unexsol.c: New file.
7692
7693 * xfns.c (Qbox): Declare external, don't define.
7694
7695 * xdisp.c (redisplay_window) <force-start case>:
7696 If point is on semi-visible last line, reposition
7697 it at previous line.
7698
7699 * alloc.c (display_malloc_warning): Use display-warning.
7700 (malloc_warning_1): Function deleted.
7701
7702 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
7703
7704 * lread.c (read1): Handle #! by skipping the line.
7705
77062002-08-31 Richard M. Stallman <rms@gnu.org>
7707
7708 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
7709 Don't include LDFLAGS.
7710 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
7711
77122002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
7713
7714 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
7715 member of x_display_info unless we compile for some window system.
7716
77172002-08-31 Kim F. Storm <storm@cua.dk>
7718
7719 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
7720 (get_window_cursor_type): Don't use them.
7721 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
7722
77232002-08-30 Kenichi Handa <handa@etl.go.jp>
7724
7725 * xdisp.c (get_next_display_element): Fix previous change.
7726
77272002-08-30 Andrew Choi <akochoi@shaw.ca>
7728
7729 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
7730 (expose_window): Use it to fix the display of overlapping
7731 rows (merge code from xterm.c).
7732
7733 * macfns.c (Qbox): Add extern declaration.
7734
77352002-08-30 Juanma Barranquero <lektu@terra.es>
7736
7737 * w32fns.c (Qbox): Make extern.
7738 (syms_of_w32fns): Remove initialization of Qbox.
7739
77402002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
7741
7742 * xfns.c (Fx_open_connection): Fix error message.
7743
77442002-08-30 Kim F. Storm <storm@cua.dk>
7745
7746 The following changes consolidates the handling of the cursor
7747 type in xdisp.c, moving duplicate code and functionality from
7748 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
7749
7750 * frame.h (enum text_cursor_kinds): Consolidated here.
7751 Added DEFAULT_CURSOR value.
7752 (struct frame) <desired_cursor, cursor_width>
7753 <blink_off_cursor, blink_off_cursor_width>: New fields.
7754 Consolidated from output_x, output_w32 and output_mac structs.
7755 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
7756 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
7757
7758 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
7759 Variables consolidated here.
7760 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
7761 (Vcursor_in_non_selected_windows): Renamed from
7762 cursor_in_non_selected_windows and changed to Lisp_Object.
7763 (syms_of_xdisp): Define and staticpro new and moved variables.
7764 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
7765 consolidated here. Recognize Qhollow setting.
7766 (set_frame_cursor_types): New function to set frame cursor types
7767 based on the frame parameters.
7768 (get_window_cursor_type): New function to calculate new cursor
7769 type and width for the specified window. Based on duplicated
7770 code consolidated here.
7771 Enhancements: cursor-in-non-selected-windows may be a cursor type,
7772 check buffer-local alternate-cursor-type and blink-cursor-alist
7773 before using built-in blink off methods.
7774
7775 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
7776
7777 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
7778 (get_specified_cursor_type, get_window_cursor_type)
7779 (set_frame_cursor_types): Added prototypes.
7780
7781 * macfns.c (x_specified_cursor_type): Removed.
7782 (x_set_cursor_type): Use set_frame_cursor_types.
7783 (Qbar, Qbox): Removed.
7784 (syms_of_macfns): Don't intern or staticpro them.
7785
7786 * macterm.c (x_specified_cursor_type): Remove prototype.
7787 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
7788 (x_display_and_set_cursor): Use get_window_cursor_type.
7789 Remove unused local variables cursor_non_selected, active_cursor.
7790 Redraw cursor if hbar cursor width changes.
7791 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
7792
7793 * macterm.h (enum text_cursor_kinds): Removed.
7794 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
7795 <blink_off_cursor, blink_off_cursor_width>: Members removed.
7796 (FRAME_DESIRED_CURSOR): Macro removed.
7797
7798 * w32fns.c (Vblink_cursor_alist): Removed.
7799 (Qbar, Qhbar, Qbox, Qhollow): Removed.
7800 (syms_of_w32fns): Don't intern, staticpro, or define them.
7801 (x_specified_cursor_type): Removed.
7802 (x_set_cursor_type): Use set_frame_cursor_types.
7803
7804 * w32term.c (x_specified_cursor_type): Remove prototype.
7805 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
7806 (x_display_and_set_cursor): Use get_window_cursor_type.
7807 Remove unused local variables cursor_off_state.
7808 Redraw cursor if hbar cursor width changes.
7809 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
7810
7811 * w32term.h (enum text_cursor_kinds): Removed.
7812 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
7813 <blink_off_cursor, blink_off_cursor_width>: Members removed.
7814 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
7815 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
7816 (struct w32_display_info) <x_highlight_frame>: Renamed member from
7817 w32_highlight_frame.
7818
7819 * xfns.c (Vblink_cursor_alist): Removed.
7820 (Qbar, Qhbar, Qbox, Qhollow): Removed.
7821 (syms_of_xfns): Don't intern, staticpro, or define them.
7822 (x_specified_cursor_type): Removed.
7823 (x_set_cursor_type): Use set_frame_cursor_types.
7824
7825 * xterm.c (x_specified_cursor_type): Remove prototype.
7826 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
7827 (x_display_and_set_cursor): Use get_window_cursor_type.
7828 Remove unused local variables cursor_off_state.
7829 Redraw cursor if hbar cursor width changes.
7830
7831 * xterm.h (enum text_cursor_kinds): Removed.
7832 (struct output_x) <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 (x_specified_cursor_type): Remove prototype.
7837
78382002-08-28 Richard M. Stallman <rms@gnu.org>
7839
7840 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
7841 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
7842 (Vblink_cursor_alist): New variable.
7843 (syms_of_w32fns): Initialize and defvar it.
7844 (x_specified_cursor_type): Recognize Qbox for filled box.
7845 Exceptions are hollow boxes.
7846 (Qbox, Qhollow): New variables.
7847 (syms_of_w32fns): Initialize and staticpro them.
7848
7849 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
7850 New macros.
7851 (struct w32_output): New fields blink_off_cursor,
7852 blink_off_cursor_width.
7853 (FRAME_CURSOR_WIDTH): New macro.
7854
7855 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
7856 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
7857
7858 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
7859 for bar cursor.
7860
7861 * w32term.c (expose_overlaps): New function.
7862 (expose_window): Use it to fix the display of overlapping rows.
7863
78642002-08-28 Simon Josefsson <jas@extundo.com>
7865
7866 * xfns.c (Fx_open_connection): Improve help when X connection
7867 fails, xhost is insecure and xauth is better.
7868
78692002-08-28 Juanma Barranquero <lektu@terra.es>
7870
7871 * makefile.w32-in: Add missing dependencies on w32term.h and
7872 composite.h.
7873
7874 * emacs.c (USAGE1): Add missing newline.
7875
78762002-08-27 Andrew Choi <akochoi@shaw.ca>
7877
7878 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
7879
78802002-08-27 Richard M. Stallman <rms@gnu.org>
7881
7882 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
7883 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
7884 (Vblink_cursor_alist): New variable.
7885 (syms_of_xfns): Initialize and defvar it.
7886 (x_specified_cursor_type): Recognize Qbox for filled box.
7887 Exceptions are hollow boxes.
7888 (Qbox, Qhollow): New variables.
7889 (syms_of_xfns): Initialize and staticpro them.
7890
7891 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
7892 New macros.
7893 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
7894
7895 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
7896 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
7897
7898 * emacs.c (main): Handle --script.
7899 (USAGE1): Mention --script.
7900 (standard_args): Define sort order for --script.
7901
79022002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
7903
7904 * xdisp.c (redisplay_updating_p): Variable removed.
7905 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
7906 New variables.
7907 (init_iterator): Don't free realized faces if
7908 inhibit_free_realized_faces is set.
7909 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
7910 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
7911 initialize Qinhibit_free_realized_faces.
7912
7913 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
7914 when iterator is adding glyphs to a glyph matrix.
7915
79162002-08-27 Kenichi Handa <handa@etl.go.jp>
7917
7918 * xdisp.c (get_next_display_element): In unibyte case, don't use
7919 octal form for such eight-bit characters that can be converted to
7920 multibyte char.
7921
79222002-08-26 Kim F. Storm <storm@cua.dk>
7923
7924 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
7925 and background colors. From Joe Buehler (tiny change).
7926
79272002-08-26 Miles Bader <miles@gnu.org>
7928
7929 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
7930
79312002-08-25 Andrew Choi <akochoi@shaw.ca>
7932
7933 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
7934 defined instead of MAC_OSX.
7935
7936 * s/darwin.h (select): Define select to sys_select only if
7937 HAVE_CARBON is defined.
7938 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
7939 (DONT_REOPEN_PTY): #def it.
7940
7941 * macterm.c (XTread_socket): Remove code to call
7942 SendEventToEventTarget for keys with command modifiers when
7943 mac_command_key_is_meta is nil.
7944
79452002-08-24 Andreas Schwab <schwab@suse.de>
7946
7947 * eval.c (Fdefvar): Fix last change.
7948
79492002-08-23 Richard M. Stallman <rms@gnu.org>
7950
7951 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
7952 Record variables in load history as (defvar . VAR).
7953 (Fdefvar): Don't record in load history if no initial value.
7954 (Qdefvar): New variable.
7955 (syms_of_eval): Init and staticpro it.
7956
7957 * lread.c (syms_of_lread): Doc fix.
7958 (build_load_history): Use Fmember to see if a definition
7959 is already in the Vload_history element.
7960
7961 * process.c (Fstart_process): Remove /: from program name.
7962
7963 * emacs.c (decode_env_path): Don't add /: if file name handler
7964 has a `safe-magic' property.
7965
7966 * callproc.c (Fcall_process): Remove /: from program name.
7967
79682002-08-23 Stefan Monnier <monnier@cs.yale.edu>
7969
7970 * regex.c (PATFETCH): Remove the translating fetch.
7971 (PATFETCH_RAW): Rename to PATFETCH.
7972 (set_image_of_range): New fun.
7973 (SET_RANGE_TABLE_WORK_AREA): Use it.
7974 (regex_compile): Don't translate the pattern chars so eagerly.
7975 Only do it when inserting an `exactn' bytecode or when handling
7976 a char-range.
7977 (mutually_exclusive_p): Avoid empty statement.
7978
79792002-08-22 Kim F. Storm <storm@cua.dk>
7980
7981 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
7982 end up on a partially visible line; this reverts a specific part
7983 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
7984 display error which has been reported several times now.
7985 However it introduces the problem that changes was supposed to fix.
7986 See my comments in the source if you want to debug this further.
7987
79882002-08-20 Kenichi Handa <handa@etl.go.jp>
7989
7990 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
7991
79922002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
7993
7994 * msdos.c (croak): Add `void' to definition.
7995
7996 * sysdep.c [MSDOS] (request_sigio, unrequest_sigio):
7997 Don't define them, they are defined in msdos.c.
7998
7999 * mem-limits.h [MSDOS]: Declare etext.
8000
8001 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
8002 `const' since CORRECT_DIR_SEPS modifies its target.
8003
80042002-08-19 Kim F. Storm <storm@cua.dk>
8005
8006 * keyboard.c (Fclear_this_command_keys): Added optional arg
8007 KEEP-RECORD to avoid clearing lossage when we just want to clear
8008 the current key sequence (kmacro needs this).
8009
80102002-08-19 Kenichi Handa <handa@localhost>
8011
8012 * composite.c (run_composition_function): Call FUNC if it is fboundp.
8013
8014 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
8015 cons, return Qnil.
8016
80172002-08-17 Richard M. Stallman <rms@gnu.org>
8018
8019 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
8020
8021 * sysdep.c [!VMS]: Include sys/files.h.
8022
8023 * editfns.c (save_restriction_restore): Defend from unchained marker.
8024
8025 * buffer.c (overlays_at): Handle extending vec uniformly.
8026 (overlays_in): Handle extending vec from length 0 as in overlays_at.
8027
80282002-08-15 Andrew Choi <akochoi@shaw.ca>
8029
8030 * mac.c (init_mac_osx_environment): New function.
8031
8032 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
8033
80342002-08-14 Kim F. Storm <storm@cua.dk>
8035
8036 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
8037 executing macro before appending to it (when used from Lisp).
8038 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
8039 which is called prior to each iteration of macro (for kmacro.el).
8040 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
8041
8042 * lisp.h (Fexecute_kbd_macro): Update prototype.
8043
8044 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
8045
80462002-08-14 Kenichi Handa <handa@etl.go.jp>
8047
8048 * xselect.c (QUTF8_STRING): New variable.
8049 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
8050 (x_atom_to_symbol): Likewise.
8051 (x_get_local_selection): New argument local_request. If it is
8052 nonzero, call handler_fn with the second arg nil.
8053 (x_handle_selection_request): Call x_get_local_selection with
8054 local_request 0.
8055 (lisp_data_to_selection_data): Don't encode the string here.
8056 (Fx_get_selection_internal): Call x_get_local_selection with
8057 local_request 1.
8058 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
8059
8060 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
8061
8062 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
8063
80642002-08-13 Richard M. Stallman <rms@gnu.org>
8065
8066 * minibuf.c (Fminibufferp): New function.
8067 (syms_of_minibuf): Defsubr it.
8068 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
8069
80702002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
8071
8072 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
8073
80742002-08-12 Richard M. Stallman <rms@gnu.org>
8075
8076 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
8077 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
8078 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
8079 already.
8080
8081 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
8082
80832002-08-11 Andrew Choi <akochoi@shaw.ca>
8084
8085 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
8086 (Vmac_pass_command_to_system): New variable.
8087 (Vmac_pass_control_to_system): New variable.
8088 (do_mouse_moved): Check wp with is_emacs_window.
8089 (XTread_socket): Check window_ptr with is_emacs_window.
8090 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
8091 events back to Mac Toolbox for processing, depending on values of
8092 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
8093 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
8094 Vmac_pass_control_to_system.
8095
80962002-08-10 Kenichi Handa <handa@etl.go.jp>
8097
8098 * coding.c (unencodable_char_position): New function.
8099 (Funencodable_char_position): New function.
8100 (syms_of_coding): Defsubr Funencodable_char_position.
8101
81022002-08-10 Andrew Choi <akochoi@shaw.ca>
8103
8104 * mac.c (sys_select) [MAC_OSX]: New function.
8105
8106 * macterm.c (MakeMeTheFrontProcess): New function.
8107 (mac_initialize): Call MakeMeTheFrontProcess.
8108
8109 * s/darwin.h: Define select to sys_select.
8110
81112002-08-09 Richard M. Stallman <rms@gnu.org>
8112
8113 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
8114
81152002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
8116
8117 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
8118 end of the buffer.
8119
81202002-08-08 Ken Raeburn <raeburn@mit.edu>
8121
8122 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
8123
8124 * puresize.h (BASE_PURESIZE): Increase to 910000.
8125
81262002-08-08 Kenichi Handa <handa@etl.go.jp>
8127
8128 * coding.c (Ffind_operation_coding_system): For write-region, if
8129 VISIT is a filename, make it the target.
8130
81312002-08-07 Richard M. Stallman <rms@gnu.org>
8132
8133 * alloc.c (mark_object): Detect long lists for debugging.
8134 (mark_object_loop_halt): New variable.
8135
8136 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
8137
8138 * data.c (Fmake_variable_frame_local): Doc fix.
8139
81402002-08-01 David Ponce <david@dponce.com>
8141
8142 * w32menu.c (local_heap, local_alloc, local_free): New macros.
8143 (malloc_widget_value, free_widget_value)
8144 (w32_free_submenu_strings): Use them.
8145
8146 (push_submenu_start, push_submenu_end, push_left_right_boundary)
8147 (push_menu_pane, push_menu_item, single_keymap_panes)
8148 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
8149 (single_submenu, set_frame_menubar)
8150 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
8151
8152 (Fx_popup_menu): Don't show pop up menu until preceding one is
8153 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
8154
8155 * w32menu.c: Changes adapted from xmenu.c
8156 (set_frame_menubar): First parse all submenus,
8157 then make widget_value trees from them.
8158 Don't allocate any widget_value objects
8159 until we are done with the parsing.
8160 (parse_single_submenu): New function.
8161 (digest_single_submenu): New function.
8162 (single_submenu): Function deleted, replaced by those two.
8163
81642002-08-04 Andrew Choi <akochoi@shaw.ca>
8165
8166 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
8167 returns a valid window pointer before proceeding for keyDown and
8168 autoKey events.
8169
81702002-08-03 Andrew Choi <akochoi@shaw.ca>
8171
8172 * macterm.c (USE_CARBON_EVENTS): New macro.
8173 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
8174 (x_iconify_frame): Call CollapseWindow.
8175 (Vmac_reverse_ctrl_meta): New variable.
8176 (Vmac_wheel_button_is_mouse_2): New variable.
8177 (init_mac_drag_n_drop): New function.
8178 (mac_do_receive_drag): New function.
8179 (mac_handle_service_event): New function.
8180 (init_service_handler): New function.
8181 (mac_to_emacs_modifiers): New function.
8182 (mac_event_to_emacs_modifiers): New function.
8183 (mac_get_mouse_btn): New function.
8184 (mac_convert_event_ref): New function.
8185 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
8186 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
8187 mac_get_mouse_btn.
8188 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
8189
8190 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
8191 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
8192 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
8193 TOOL_BAR_EVENT for MAC_OS as well.
8194 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
8195 as for WINDOWS_NT.
8196 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
8197
8198 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
8199
82002002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
8201
8202 * xdisp.c (forward_to_next_line_start): Fix a condition that
8203 lead to a newline being skipped.
8204
82052002-08-02 Andrew Choi <akochoi@shaw.ca>
8206
8207 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
8208
82092002-08-01 Richard M. Stallman <rms@gnu.org>
8210
8211 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
8212
82132002-07-31 Andrew Choi <akochoi@shaw.ca>
8214
8215 * macfns.c: #undef init_process before #define-ing it.
8216
8217 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
8218 HAVE_CARBON is defined.
8219
82202002-07-31 Richard M. Stallman <rms@gnu.org>
8221
8222 * xmenu.c (set_frame_menubar): First parse all submenus,
8223 then make widget_value trees from them.
8224 Don't allocate any widget_value objects
8225 until we are done with the parsing.
8226 (parse_single_submenu): New function.
8227 (digest_single_submenu): New function.
8228 (single_submenu): Function deleted, replaced by those two.
8229
82302002-07-30 Juanma Barranquero <lektu@terra.es>
8231
8232 * w32proc.c (syms_of_ntproc): Fix docstring of
8233 `w32-get-true-file-attributes'.
8234
82352002-07-28 Richard M. Stallman <rms@gnu.org>
8236
8237 * s/hpux8.h (HPUX8): Define this before including hpux.h.
8238 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
8239
8240 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
8241
8242 * keyboard.c (make_lispy_event):
8243 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
8244 Explicitly clear up_modifier in event->modifiers.
8245
82462002-07-27 Richard M. Stallman <rms@gnu.org>
8247
8248 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
8249
8250 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
8251 for bar cursor.
8252
82532002-07-26 Kenichi Handa <handa@etl.go.jp>
8254
8255 * coding.c (detect_coding_iso2022): While checking a byte sequence
8256 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
8257 it in the normal loop.
8258
82592002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
8260
8261 * xterm.c (expose_overlaps): New function.
8262 (expose_window): Use it to fix the display of overlapping rows.
8263
8264 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
8265
82662002-07-23 Ken Raeburn <raeburn@gnu.org>
8267
8268 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
8269 since it only depends on XUINT.
8270
8271 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
8272 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
8273 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
8274 Macros deleted.
3947677c 8275
77d1daf2
AS
8276 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
8277 its value over other approaches.
8278 * sysdep.c (start_of_data): Don't define the function if a macro
8279 form has been defined.
8a8e19a3 8280
048addec
JD
82812002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
8282
8283 * xdisp.c (redisplay_updating_p): New variable.
8284 (init_iterator): Don't free realized faces when
8285 redisplay_updating_p is set.
8286 (redisplay_internal): Set redisplay_updating_p while updating
8287 the display.
8288
82892002-07-23 Richard M. Stallman <rms@gnu.org>
8290
8291 * editfns.c (Fmessage): Treat "" like nil.
8292
82932002-07-23 Kenichi Handa <handa@etl.go.jp>
8294
8295 * xdisp.c (face_before_or_after_it_pos):
8296 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
8297
82982002-07-22 Juanma Barranquero <lektu@terra.es>
8299
8300 * callproc.c (init_callproc) [DOS_NT]:
8301 Initialize Vshared_game_score_directory to nil.
8302 (syms_of_callproc) [DOS_NT]: Likewise.
8303
83042002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
8305
8306 * xdisp.c (display_line): Replace an abort with xassert.
8307
83082002-07-21 Richard M. Stallman <rms@gnu.org>
8309
8310 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
8311 and END_UNCHANGED when setting buffer_unchanged_p.
8312 Use current_matrix_up_to_date_p to decide whether to use
8313 try_cursor_movement.
8314
8315 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
8316
8317 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
8318
8319 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
8320 Set to nil if dir does not exist.
8321 (syms_of_callproc): Init unconditionally and simply.
8322
8323 * buffer.c (Fbuffer_list): Doc fix.
8324
83252002-07-21 Ken Raeburn <raeburn@gnu.org>
8326
8327 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
8328
8329 * buffer.c (mmap_realloc): When shrinking, make sure number of
8330 pages to unmap is rounded towards zero.
8331
8332 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
8333 (XSETINT): Deleted.
8334
8335 * m/att3b.h (XINT): Don't define.
8336 (VALBITS, VALMASK, XTYPE): Deleted.
8337 (DATA_SEG_BITS): Define.
8338 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
8339 ARRAY_MARK_FLAG): Deleted.
8340 (DATA_SEG_BITS): Define.
8341 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
8342 (DATA_SEG_BITS): Define.
8343
83442002-07-20 Richard M. Stallman <rms@gnu.org>
8345
8346 * print.c (print_error_message): New args CONTEXT and CALLER.
8347 Calls changed.
8348
8349 * lisp.h (print_error_message): Declare new args.
8350
8351 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
8352 and CONTEXT to print_error_message, don't print them here.
8353 For a Quit, don't use Vsignaling_function.
8354 Call message_log_maybe_newline.
8355
8356 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
8357
83582002-07-20 Kim F. Storm <storm@cua.dk>
8359
8360 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
8361
83622002-07-19 Ken Raeburn <raeburn@gnu.org>
8363
8364 * bytecode.c (struct byte_stack): Pointers into byte string now
8365 point to const.
8366 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
8367 const.
8368 * charset.h (BCOPY_SHORT): Source pointer now points to const.
8369 * coding.c (encode_eol, detect_coding, detect_eol):
8370 (decode_coding, encode_coding, detect_coding_system):
8371 Source strings now treated as const.
8372 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
8373 modify Lisp string contents.
8374 * coding.h (decode_coding, encode_coding, detect_coding,
8375 detect_eol): Declarations updated.
8376 * composite.c (compose_chars_in_text): Treat Lisp string contents
8377 as const.
8378 * dispnew.c (safe_bcopy): Source pointer now points to const.
8379 * lisp.h (STRING_COPYIN): New macro.
8380 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
8381 (internal_with_output_to_temp_buffer): Declarations updated.
8382 * print.c (temp_output_buffer_setup):
8383 (internal_with_output_to_temp_buffer): Buffer name argument is now
8384 pointer to const.
8385 * sound.c (struct sound_device): Function pointer field "write"
8386 buffer argument now points to const.
8387 (vox_write): Buffer argument points to const.
8388 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
8389 contents as const.
8390 * sysdep.c (emacs_write): Buffer pointer now const.
8391 * term.c (encode_terminal_code): Buffer pointer now const.
8392 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
8393 (x_face_list_fonts, x_update_menu_appearance):
8394 (hash_string_case_insensitive): Treat Lisp string contents as const.
8395
83962002-07-19 Juanma Barranquero <lektu@terra.es>
8397
048addec
JD
8398 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
8399
8400 * fileio.c (syms_of_fileio): Likewise.
c62aec78
JB
8401 (Ffile_name_as_directory): Fix argument name in docstring.
8402 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
048addec
JD
8403
84042002-07-18 Richard M. Stallman <rms@gnu.org>
8405
8406 * data.c (Fdefalias): Doc fix.
8407
84082002-07-17 Dave Love <fx@gnu.org>
8409
8410 * intervals.h (text_property_stickiness): Use P_.
8411
8412 * ccl.c: Remove `emacs' conditionals.
8413 (ccl_backtrace_table): Fix size spec.
8414 (ccl_driver): Fix type errors.
8415
84162002-07-16 Ken Raeburn <raeburn@gnu.org>
8417
8418 * alloc.c (xstrdup, make_string, make_unibyte_string)
8419 (make_multibyte_string, build_string): String pointer args now
8420 point to const.
8421 * charset.c (find_charset_in_text, c_string_width):
8422 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
8423 * fileio.c (report_file_error):
8424 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
8425 (count_combining_before, count_combining_after, insert_1_both):
8426 (insert, insert_and_inherit, insert_string):
8427 (insert_before_markers, insert_before_markers_and_inherit):
8428 * lread.c (intern, oblookup, hash_string):
8429 * minibuf.c (temp_echo_area_glyphs):
8430 * search.c (fast_c_string_match_ignore_case):
8431 * sysdep.c (emacs_open, set_file_times):
8432 * xfaces.c (xstricmp):
8433 * xdisp.c (store_frame_title, string_char_and_length):
8434 (message_dolog, message2, message2_nolog, set_message): Likewise.
8435 (set_message_1): Cast message string argument to const pointer.
8436 * editfns.c (general_insert_function): Insertion function now
8437 takes pointer to const for input data.
8438 * charset.h (find_charset_in_text, c_string_width):
8439 (parse_str_as_multibyte): Declarations updated.
8440 * dispextern.h (xstricmp): Declaration updated.
8441 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
8442 (count_size_as_multibyte, count_combining_before):
8443 (count_combining_after, insert_1, insert_1_both, message_dolog):
8444 (insert, insert_and_inherit, insert_before_markers)
8445 (insert_before_markers_and_inherit, set_message, message2):
8446 (message2_dolog, build_string, make_string, make_unibyte_string):
8447 (make_multibyte_string, intern, oblookup, report_file_error):
8448 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
8449 (emacs_open, xstrdup): Declarations updated.
8450 * systime.h (set_file_times): Declaration updated.
8451
8452 * charset.c (find_charset_in_text, lisp_string_width): Use const
8453 for pointer to lisp string data.
8454 * charset.h (FETCH_STRING_CHAR_ADVANCE):
8455 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
8456 * coding.c (Ffind_coding_systems_region_interval):
8457 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
8458 (Fmake_directory_internal, Fdelete_directory):
8459 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
8460 * fontset.c (font_family_registry, fs_query_fontset):
8461 (list_fontsets):
8462 * frame.c (Fframe_parameter):
8463 * keyboard.c (cmd_error_internal):
8464 * keymap.c (Fdescribe_buffer_bindings):
8465 * lread.c (complete_filename_p, openp):
8466 * minibuf.c (Fminibuffer_complete_word):
8467 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
8468 (face_before_or_after_it_pos, next_element_from_string):
8469 (get_overlay_arrow_glyph_row, display_mode_element):
8470 (decode_mode_spec_coding):
8471 * xterm.c (same_x_server): Likewise.
8472
8473 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
8474 settings of non-existent fields.
8475
8476 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
8477 copy a lisp value.
8478
8479 * lread.c (Fintern_soft): Use string macros instead of
8480 Lisp_String fields.
8481 * keyboard.c (echo_char, parse_modifiers_uncached):
8482 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
8483 * textprop.c (validate_interval_range, interval_of): Likewise.
8484
8485 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
8486
8487 * charset.h (FETCH_STRING_CHAR_ADVANCE)
8488 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
8489 XSTRING()->size_byte.
8490
8491 * lisp.h (SDATA, SREF): Produce rvalue.
8492 (SSET): New macro.
8493 * alloc.c (make_event_array): Use SSET for storing into a string.
8494 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
8495 a string.
8496 * casefiddle.c (casify_object): Use SSET.
8497 * charset.h (FETCH_STRING_CHAR_ADVANCE)
8498 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
8499 address of string contents.
8500 * data.c (Faref): Use SDATA.
8501 (Faset): Use SDATA, SSET.
8502 * dired.c (directory_files_internal): Use SSET.
8503 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
8504 (Fread_file_name): Use SREF, SSET.
8505 * fns.c (concat): Use SSET.
8506 (concat, Fdelete): Use SDATA.
8507 * insdel.c (insert_from_string_1): Use SDATA.
8508 * keyboard.c (Fevent_convert_list): Use SREF.
8509 * lread.c (Fload): Use SDATA, SSET.
8510 * macfns.c (validate_x_resource_name): Use SSET.
8511 * process.c (status_message): Use SSET.
8512 * search.c (wordify): Use SDATA.
8513 (Freplace_match): Use SREF.
8514 * w32fns.c (validate_x_resource_name): Use SSET.
8515 * xfns.c (validate_x_resource_name): Use SSET.
8516 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
8517
85182002-07-16 Richard M. Stallman <rms@gnu.org>
8519
8520 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
8521
8522 * xdisp.c (reconsider_clip_changes):
8523 Don't test prevent_redisplay_optimizations_p.
8524 (redisplay_internal): Test prevent_redisplay_optimizations_p
8525 along with clip_changed in some cases.
8526 (try_window_id): Likewise.
8527 (redisplay_window): New local var buffer_unchanged_p.
8528
8529 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
8530
8531 * process.c (create_process): Test USG_SUBTTY_WORKS.
8532 (process_send_signal): Clean up handling of GID.
8533 Detect errors in ioctls meant to set GID.
8534
8535 * window.c (temp_output_buffer_show):
8536 Don't set prevent_redisplay_optimizations_p.
8537
85382002-07-15 Juanma Barranquero <lektu@terra.es>
8539
8540 * eval.c (Fdefvaralias): Add docstring argument.
8541
85422002-07-15 Ken Raeburn <raeburn@gnu.org>
8543
8544 * lisp.h (STRING_INTERVALS): Produce rvalue.
8545 (STRING_SET_INTERVALS): New macro.
8546 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
8547 * fns.c (Fstring_as_multibyte): Likewise.
8548 * intervals.c (balance_possible_root_interval, delete_interval)
8549 (create_root_interval, copy_intervals_to_string): Likewise.
8550 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
8551 instead of 0.
8552
85532002-07-14 Ken Raeburn <raeburn@gnu.org>
8554
8555 * lisp.h (STRING_SET_CHARS): New macro.
8556 (SCHARS, SBYTES): Produce rvalues.
8557 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
8558 * fns.c (concat): Likewise.
8559 * lread.c (read_vector): Likewise.
8560
8561 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
8562 (STRING_SET_UNIBYTE): New macro.
8563 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
8564 length of -1) changed to use STRING_SET_UNIBYTE.
8565 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
8566 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
8567 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
8568 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
8569 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
8570 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
8571 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
8572 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
8573 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
8574 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
8575 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
8576 STRING_BYTES or indirection changed to SCHARS, SBYTES,
8577 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
8578 unchanged for now.
8579
85802002-07-13 Kim F. Storm <storm@cua.dk>
8581
8582 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
8583
85842002-07-12 Richard M. Stallman <rms@gnu.org>
8585
8586 * fileio.c (Fwrite_region): Doc fix.
8587
8588 * print.c (print_error_message): Don't handle Vsignaling_function here.
8589
8590 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
8591 (command_loop_1): Avoid certain actions after memory-full error.
8592
8593 * eval.c (Fsignal): Don't call cancel_hourglass.
8594 For a memory-full error, don't call Vsignal_hook_function
8595 and don't set Vsignaling_function.
8596
8597 * process.c (process_send_signal): Add abort call.
8598
85992002-07-11 Markus Rost <rost@math.ohio-state.edu>
8600
8601 * keymap.c (Fkey_binding): Fix typo.
8602
86032002-07-11 Richard M. Stallman <rms@gnu.org>
8604
8605 * alloc.c (Vmemory_full): New variable.
8606 (Vmemory_signal_data): Renamed from memory_signal_data.
8607 Uses changed.
8608 (syms_of_alloc): Defvar them.
8609 (memory_full, buffer_memory_full): Set Vmemory_full.
8610
8611 * lisp.h (Vmemory_full): Add declaration.
8612 (current_column, indented_beyond_p): Change declaration.
8613
8614 * indent.c (last_known_column): Declare as double, not float.
8615 (current_column, current_column_1, string_display_width)
8616 (position_indentation): Return `double'.
8617 (indented_beyond_p): Arg `column' is `double'. Callers changed.
8618
8619 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
8620 (back_to_previous_visible_line_start)
8621 (reseat_at_next_visible_line_start, next_element_from_buffer):
8622 Use `double', not `float', when calling indented_beyond_p.
8623
8624 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
8625
8626 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
8627
86282002-07-11 Juanma Barranquero <lektu@terra.es>
8629
8630 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
d814862a
JB
8631 composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
8632 fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
8633 macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
8634 textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
8635 xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
048addec
JD
8636
86372002-07-10 Juanma Barranquero <lektu@terra.es>
8638
d814862a
JB
8639 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
8640 All callers changed.
048addec
JD
8641
86422002-07-09 Stefan Monnier <monnier@cs.yale.edu>
8643
8644 * data.c (Fdefalias): Add an optional `docstring' argument.
8645 (set_internal, Fsetq_default): Use XCAR/XCDR.
8646
8647 * composite.c (HASH_VALUE, HASH_KEY):
8648 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
8649
86502002-07-09 Kenichi Handa <handa@etl.go.jp>
8651
8652 * callproc.c (Fcall_process): Fix previous change.
8653
86542002-07-07 Stefan Monnier <monnier@cs.yale.edu>
8655
8656 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
8657 Add support for hash-tables.
8658 (Ftry_completion): Return t even if the string appears multiple times.
8659
8660 * fns.c (Fnconc): Use XCDR.
8661 (Fprovide): Use CONSP and XCDR.
8662 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
8663 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
8664 (Fmake_hash_table): Accept `:size nil'.
8665 (Fmakehash): Delete: moved to subr.el.
8666 (syms_of_fns): Don't defsubr makehash.
8667
8668 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
8669 (HASH_TABLE_SIZE): Move from fns.c.
8670
86712002-07-07 Richard M. Stallman <rms@gnu.org>
8672
8673 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
8674 Instead just return 0 when there is something to be done.
8675 (try_scrolling): If make_cursor_line_fully_visible returns 0,
8676 retry scrolling as if cursor were off the bottom.
8677 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
8678 return CURSOR_MOVEMENT_MUST_SCROLL.
8679 (redisplay_window): If make_cursor_line_fully_visible returns 0,
8680 go to try_to_scroll.
8681
8682 * buffer.c (Fbuffer_local_value): Store current value into its binding
8683 so we get the up-to-date value for the binding that is loaded.
8684
8685 * eval.c (Fdefmacro): Doc fix.
8686
86872002-07-05 Dave Love <fx@gnu.org>
8688
8689 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
8690 correctly.
8691
8692 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
8693 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
8694 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
8695 CCL_LookupCharConstTbl.
8696 (syms_of_ccl): Defvar translation-hash-table-vector.
8697
86982002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8699
8700 * xdisp.c: Remove unused variable `face'.
8701
87022002-07-04 Juanma Barranquero <lektu@terra.es>
8703
8704 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
8705 obsolescence information.
8706
87072002-07-03 Andrew Choi <akochoi@shaw.ca>
8708
8709 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
8710 pattern. Search cache first.
8711 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
8712 for Japanese font.
8713 (XLoadQueryFont): Use it.
8714
87152002-07-02 Richard M. Stallman <rms@gnu.org>
8716
8717 * keymap.c (Fdefine_key): Doc fix.
8718
8719 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
8720
87212002-07-02 Juanma Barranquero <lektu@terra.es>
8722
8723 * keymap.c (syms_of_keymap): Fix typo.
8724
87252002-07-01 Andrew Choi <akochoi@shaw.ca>
8726
8727 * s/darwin.h: Define POSIX_SIGNALS.
8728
8729 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
8730 and FSRefMakePath to convert FSSpec returned with Apple Event to
8731 Posix pathname.
8732 (mac_initialize) [TARGET_API_MAC_CARBON]:
8733 Call init_required_apple_events and disable the `Quit' menu item
8734 provided automatically by the Carbon Toolbox.
8735
87362002-07-01 Dave Love <fx@gnu.org>
8737
8738 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
8739 for K&R.
8740
8741 * xterm.c: Fix prototype for K&R.
8742
8743 * term.c (costs_set): Declare static, non-initialized for pcc.
8744
87452002-07-01 Richard M. Stallman <rms@gnu.org>
8746
8747 * keyboard.c (timer_last_idleness_start_time): New variable.
8748 (timer_start_idle): Set that.
8749 (read_key_sequence): Use that to reset timer_idleness_start_time
8750 to previous value.
8751
8752 * window.c (Frecenter): With arg, set optional_new_start.
8753
8754 * xdisp.c (redisplay_internal): Make optional_new_start really work.
8755
8756 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
8757 buffer for completion.
8758
87592002-06-29 Ken Raeburn <raeburn@gnu.org>
8760
8761 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
8762
87632002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8764
8765 * keyboard.c (readable_filtered_events): New function that filters
8766 FOCUS_IN_EVENT depending on parameter.
8767 (readable_events): Calls readable_filtered_events, not filtering
8768 FOCUS_IN_EVENT.
8769 (get_filtered_input_pending): New function, filtering parameter passed
8770 to readable_filtered_events.
8771 (get_input_pending): Calls get_filtered_input_pending, not filtering
8772 FOCUS_IN_EVENT.
8773 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
8774 FOCUS_IN_EVENT.
8775
8776 * xterm.h (struct x_output): Add focus_state.
8777
8778 * xterm.c (x_focus_changed): New function.
8779 (x_detect_focus_change): New function.
8780 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
8781 EnterNotify and LeaveNotify to track X focus changes.
8782
87832002-06-28 Andreas Schwab <schwab@suse.de>
8784
8785 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
8786
87872002-06-27 Kim F. Storm <storm@cua.dk>
8788
8789 * xdisp.c: (mode_line_string_list, mode_line_string_face)
8790 (mode_line_string_face_prop): New variables.
8791 (store_mode_line_string): New function.
8792 (display_mode_element): Use store_mode_line_string to
8793 add mode-line string elements to mode_line_string_list
8794 when mode_line_string_list is non-nil.
8795 (Fformat_mode_line): Now returns propertized string by
8796 default. New arg NO-PROPS to ignore properties.
8797 (decode_mode_spec): Only add two dashes for %- in propertized
8798 mode-line string.
8799 (syms_of_xdisp): Init and staticpro mode_line_string_list.
8800
88012002-06-27 Stefan Monnier <monnier@cs.yale.edu>
8802
8803 * minibuf.c (minibuffer_completion_contents): Add return type.
8804
88052002-06-27 Juanma Barranquero <lektu@terra.es>
8806
8807 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
8808
88092002-06-26 Juanma Barranquero <lektu@terra.es>
8810
8811 * fileio.c (read_file_name_cleanup): Add missing return.
8812
88132002-06-26 Richard M. Stallman <rms@gnu.org>
8814
8815 * window.c (Frecenter): Don't set force_start flag.
8816
8817 * minibuf.c (do_completion, Fminibuffer_complete_word)
8818 (Fminibuffer_completion_help): Complete just the text before point.
8819 (minibuffer_completion_contents): New function.
8820
8821 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
8822
8823 * frame.c (frames_bury_buffer): Function deleted.
8824
88252002-06-25 Miles Bader <miles@gnu.org>
8826
8827 * callint.c (Fcall_interactively): When checking to see if doprnt hit
8828 the end of callint_message, allow for a terminating '\0'.
8829
88302002-06-24 Juanma Barranquero <lektu@terra.es>
8831
8832 * w32select.c: Include composite.h
8833
8834 * w16select.c: Likewise.
8835
88362002-06-24 Kenichi Handa <handa@etl.go.jp>
8837
8838 * callproc.c (Fcall_process): If code detection is necessary,
8839 call detect_coding directly here.
8840
8841 * coding.c (detect_eol): Preserve coding->cmp_data.
8842
8843 * w16select.c (Fw16_get_clipboard_data):
8844 * w32fns.c (w32_to_x_font):
8845 * w32select.c (Fw32_get_clipboard_data):
8846 * xselect.c (selection_data_to_lisp_data):
8847 * xterm.c (XTread_socket): Disable composition handling.
8848
88492002-06-24 Stefan Monnier <monnier@cs.yale.edu>
8850
8851 * print.c (temp_output_buffer_setup): Kill all local variables.
8852
88532002-06-22 Stefan Monnier <monnier@cs.yale.edu>
8854
8855 * lread.c (Fread): Remove redundant and imprecise declaration.
8856
8857 * xfns.c (check_x_display_info): Use check_x_frame.
8858
8859 * .gdbinit (xprintsym): Use the new `xname' field.
8860 (xsymbol): Use it.
8861
88622002-06-22 Jason Rumney <jasonr@gnu.org>
8863
8864 * w32fns.c (file_dialog_callback): New function.
8865 (Fx_file_dialog): Allow selecting directories as well as files.
8866
88672002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8868
8869 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
8870 OpenBSD. Add support for mipseb-*-netbsd* machines.
8871
88722002-06-17 Andrew Choi <akochoi@shaw.ca>
8873
8874 * macterm.c (mac_scroll_area): Set foreground and backcolor to
8875 black and white before scrolling. Restore frame background and
8876 foreground color after scrolling.
8877 (do_window_update): Call XClearWindow before calling expose_frame.
8878 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
8879 FRAME_FOREGROUND_PIXEL of frame.
8880
8881 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
8882 test Mac command key as <ALT> key.
8883
88842002-06-17 Stefan Monnier <monnier@cs.yale.edu>
8885
8886 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
8887
8888 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
8889 Lookup keys in function-key-map immediately so that key-translation-map
8890 can be applied earlier.
8891 Remove function_key_possible and key_translation_possible, replaced
8892 by checking `keytran_start < t'.
8893
8894 * .gdbinit (xsymbol): Use the new `xname' field.
8895
88962002-06-17 Andrew Choi <akochoi@shaw.ca>
8897
8898 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
8899 test Mac command key as <ALT> key.
8900
8901 * mac.c (do_applescript): Call initialize_applescript if necessary
8902 when first called. Dispose of result_desc only when there is no error.
8903 (Fdo_applescript): Use %d format specifier instead of %ld.
8904
89052002-06-16 Andrew Choi <akochoi@shaw.ca>
8906
8907 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
8908 of FrontWindow for cases keyDown and autoKey.
8909
8910 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
8911 Vdefault_fontset to Monaco with mac-roman coding.
8912
8913 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
8914 init_process before and after inclusion of Carbon/Carbon.h, resp.
8915
8916 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
8917 cursor_gc.
8918 (add_font_name_table_entry): New function.
8919 (init_font_name_table): Use add_font_name_table_entry; add italic,
8920 bold, and bold-italic entries for truetype fonts.
8921
8922 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
8923 for Mac too.
8924 (try_font_list) [MAC_OS]: If no font matches given registry, try
8925 fonts with any registry matching face_family.
8926 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
8927
8928 * s/darwin.h: If autoconf detects the Ncurses library, define
8929 LIBS_TERMCAP to -lncurses to use it.
8930
89312002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
8932
8933 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
8934
89352002-06-15 Richard M. Stallman <rms@gnu.org>
8936
8937 * window.c (Fset_window_configuration): Explicitly preserve
8938 the point value that new_current_buffer had at the start.
8939
89402002-06-14 Juanma Barranquero <lektu@terra.es>
8941
8942 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
8943 Fix typos.
8944
89452002-06-14 Kim F. Storm <storm@cua.dk>
8946
8947 * insdel.c (insert_1_both, insert_from_string_1)
8948 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
8949 insert happened in the end_unchanged region. Otherwise, the
8950 redisplay may be confused and duplicate the last line in the
8951 buffer [seen after save-buffer when require-final-newline==t].
8952
89532002-06-13 Jason Rumney <jasonr@gnu.org>
8954
8955 * w32.c (init_environment): Remove EMACSLOCKDIR.
8956 (stat): Swap _S_IFDIR and _S_IFREG.
8957
89582002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8959
8960 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
8961 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
8962 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
8963 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
8964 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
8965 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
8966 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
8967 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
8968 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
8969 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
8970 SELECTION_REQUEST_EVENT, selection_clear_event to
8971 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
8972 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
8973 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
8974 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
8975 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
8976 no_event to NO_EVENT.
8977
89782002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8979
8980 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
8981
89822002-06-12 Stefan Monnier <monnier@cs.yale.edu>
8983
8984 * intervals.c (textget): Don't forget to `return'.
8985 (lookup_char_property): Use XCAR/XCDR.
8986
89872002-06-12 Juanma Barranquero <lektu@terra.es>
8988
8989 * xdisp.c (Fformat_mode_line): Fix typo.
8990
89912002-06-12 Kim F. Storm <storm@cua.dk>
8992
8993 * xdisp.c (Fformat_mode_line): New function.
8994 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
8995 (store_frame_title_char, store_frame_title): Use unconditionally.
8996 (init_xdisp): Defsubr Fformat_mode_line.
8997 Initialize frame_title_buf etc. unconditionally.
8998
89992002-06-11 Stefan Monnier <monnier@cs.yale.edu>
9000
9001 * keyboard.c (read_key_sequence):
9002 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
9003 things through those maps after downcasing events.
9004 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
9005 applies after function-key-map.
9006 Make sure that keytran can be done in the middle in the sequence.
9007 Be careful not to throw away events past the one we downcase.
9008
9009 * lread.c (read_integer): Remove unused var `tem'.
9010 (read1): Fix int/Lisp_Object mixup.
9011
9012 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
9013
90142002-06-11 Richard M. Stallman <rms@gnu.org>
9015
9016 * keyboard.c (readable_events): Ignore any number of
9017 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
9018
90192002-06-09 Miles Bader <miles@gnu.org>
9020
9021 * xfaces.c (Ftty_supports_face_attributes_p): New function.
9022 (parse_rgb_list, tty_lookup_color): New functions.
9023 (tty_defined_color): Use `tty_lookup_color' to do all the work.
9024 (color_distance, Fcolor_distance): New functions.
9025 (TTY_SAME_COLOR_THRESHOLD): New macro.
9026 (Qtty_color_standard_values): New variable.
9027 (syms_of_xfaces): Initialize new vars & functions.
9028
90292002-06-08 Colin Walters <walters@verbum.org>
9030
9031 * textprop.c (Vchar_property_alias_alist): New variable.
9032 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
9033
9034 * intervals.c (lookup_char_property): New function for looking up
9035 overlay and text properties, created from textget.
9036 (textget): Use it.
9037
9038 * intervals.h (lookup_char_property): Declare.
9039 (Vchar_property_alias_alist): Declare.
9040
9041 * buffer.c (Foverlay_get): Use lookup_char_property.
9042
90432002-06-07 Sam Steingold <sds@gnu.org>
9044
9045 * xselect.c (lisp_data_to_selection_data): Fix last change:
9046 *data_ret is not a Lisp string, while unibyte_string is.
9047
90482002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
9049
9050 * xselect.c (lisp_data_to_selection_data): Fix last change:
9051 set size_ret.
9052
90532002-06-07 Andreas Schwab <schwab@suse.de>
9054
9055 * m/amdx86-64.h: New file.
9056
90572002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
9058
9059 * fns.c (Fstring_make_unibyte): Doc fix.
9060
9061 * xselect.c (lisp_data_to_selection_data): If the requested type
9062 is STRING, call string_make_unibyte to encode the selected text
9063 as a string.
9064
9065 * window.c (Fset_window_hscroll): Doc fix.
9066
90672002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9068
9069 * fileio.c (choose_write_coding_system):
9070 Call select-safe-coding-system properly.
9071
90722002-06-03 Richard M. Stallman <rms@gnu.org>
9073
9074 * xdisp.c (message_with_string): Error if STRING is not a string.
9075
9076 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
9077
9078 * fileio.c (choose_write_coding_system): Pass FILE arg to
9079 Vselect_safe_coding_system_function.
9080
90812002-06-03 Ken Raeburn <raeburn@gnu.org>
9082
9083 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
9084
90852002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
9086
9087 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
9088 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
9089 * keymap.c (describe_command): Likewise.
9090 * minibuf.c (read_minibuf): Likewise.
9091
9092 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
9093 Cast `current_column' return value to int.
9094 (back_to_previous_visible_line_start)
9095 (reseat_at_next_visible_line_start, next_element_from_buffer):
9096 Cast `indented_beyond_p' 3rd arg to float.
9097
9098 * indent.c (last_known_column): Now a float.
9099 (current_column_1, position_indentation, current_column)
9100 (string_display_width): Return float.
9101 (Fcurrent_column): Cast `current_column' return value to int.
9102 (Fcurrent_indentation): Cast `position_indentation' retval to int.
9103 (indented_beyond_p): Third arg now a float.
9104 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
9105
9106 * lisp.h (current_column): Now returns float.
9107 (indented_beyond_p): 3rd arg now a float.
9108
91092002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
9110
9111 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
9112 is Qcompound_text_with_extensions.
9113
9114 * xselect.c (lisp_data_to_selection_data): Always set selection
9115 type as string if x_encode_text returns streingp non-NULL.
9116
9117 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
9118
91192002-05-30 Richard M. Stallman <rms@gnu.org>
9120
9121 * window.c (Fset_window_configuration): Correct the handling
9122 of point in current buffer, to work with multiple windows.
9123
91242002-05-29 Colin Walters <walters@verbum.org>
9125
9126 * lread.c (Fread_from_string): Don't depend on order of evaluation
9127 for C function parameters.
9128
91292002-05-28 Richard M. Stallman <rms@gnu.org>
9130
9131 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
9132 way for blinked-off state and for a nonselected window.
9133
9134 * window.c (window_scroll_pixel_based): Don't call Fbolp;
9135 instead, see if the new start pos is at beginning of line.
9136
9137 * fileio.c (Fwrite_region): If START is a string, don't
9138 make any annotations.
9139
9140 * eval.c (syms_of_eval): Doc fix.
9141
91422002-05-28 Colin Walters <walters@debian.org>
9143
9144 * emacs.c (USAGE1): Add --no-splash.
9145 (standard_args): Ditto.
9146
91472002-05-28 Colin Walters <walters@gnu.org>
9148
9149 * lread.c (readchar_count): New variable.
9150 (readchar): Increment it.
9151 (unreadchar): Decrement it.
9152 (read_multibyte): Decrement it.
9153 (Vread_with_symbol_positions): New variable.
9154 (Vread_symbol_positions_list): New variable.
9155 (read_internal_start): New function, created from Fread and
9156 Fread_from_string. Handle Vread_symbol_positions_list and
9157 Vread_with_symbol_positions.
9158 (readevalloop, Fread, Fread_from_string): Use it.
9159 (read1): Use readchar_count to add symbol positions to
9160 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
9161 (syms_of_lread): DEFVAR_LISP and initialize them.
9162
9163 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
9164 (substitute_object_recurse, substitute_object_in_subtree)
9165 (substitute_in_interval): Prototype.
9166 (read_multibyte): Return c if it's less than zero.
9167
91682002-05-28 Kim F. Storm <storm@cua.dk>
9169
9170 * fileio.c (Fread_file_name_internal): Added brute-force
9171 speed up for using predicate file-directory-p.
9172
91732002-05-28 Kim F. Storm <storm@cua.dk>
9174
9175 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
9176 New variables.
9177 (syms_of_fileio): DEFVAR_LISP them.
9178 (read_file_name_cleanup): New unwind function.
9179 (Fread_file_name_internal): Only return completions satifying
9180 Vread_file_name_predicate. Temporarily unwind protect and rebind
9181 default-directory while checking completions against the predicate.
9182 (Fread_file_name): Added PREDICATE argument. Specbind it to
9183 Vread_file_name_predicate during completion.
9184 Call Vread_file_name_function to read the file name if non-nil.
9185
9186 * lisp.h (Fread_file_name): Now has 6 args.
9187
9188 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
9189 predicate for Fread_file_name when reading directory name.
9190 Supply Qnil for predicate in other calls to Fread_file_name.
9191
91922002-05-26 Miles Bader <miles@gnu.org>
9193
9194 * term.c (tty_capable_p): New function.
9195 * dispextern.h (tty_capable_p): New function declaration.
9196 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
9197 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
9198
91992002-05-23 Stefan Monnier <monnier@cs.yale.edu>
9200
9201 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
9202 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
9203 (Vwrite_region_annotate_functions): Docstring fix.
9204
92052002-05-23 Kim F. Storm <storm@cua.dk>
9206
9207 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
9208 phys_cursor's hpos is overwritten. This is still not completely
9209 correct, as it doesn't really make sense to use hpos at all to
9210 get the cursor glyph (as that is relative to the width of the
9211 characters on the line, which may have changed during the update).
9212
92132002-05-22 Jason Rumney <jasonr@gnu.org>
9214
9215 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
9216 Lisp_Object.
9217 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
9218 Use modified enumfont_t struct.
9219
9220 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
9221
9222 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
9223 Handle the `hbar' cursor type.
9224 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
9225
9226 * w32fns.c (Qhbar): New variable.
9227 (x_specified_cursor_type): Use it.
9228
92292002-05-21 Ken Raeburn <raeburn@gnu.org>
9230
9231 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
9232 now, when the address is needed.
9233
92342002-05-21 Colin Walters <walters@gnu.org>
9235
9236 * Makefile.in (shortlisp): Add font-core.el.
9237
92382002-05-20 Richard M. Stallman <rms@gnu.org>
9239
9240 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
9241
9242 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
9243 equivalent key bindings here.
9244
92452002-05-20 Ken Raeburn <raeburn@gnu.org>
9246
9247 Change symbol structure to contain a lisp object for the symbol
9248 name:
9249 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
9250 object field named "xname".
9251 (SYMBOL_NAME): New macro.
9252 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
9253 name field.
9254 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
9255 (mark_object, gc_sweep): Use symbol xname field and XSTRING
9256 instead of name field.
9257 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
9258 SYMBOL_NAME instead of XSYMBOL and name field.
9259 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
9260 instead of XSYMBOL and name field.
9261 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
9262 and SYMBOL_NAME instead of XSYMBOL and name field.
9263 * coding.c (Fread_coding_system, code_convert_region1)
9264 (code_convert_string1, code_convert_string_norecord)
9265 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
9266 XSYMBOL and name field.
9267 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
9268 (Fmake_variable_buffer_local, Fmake_local_variable)
9269 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
9270 of XSYMBOL and name field.
9271 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
9272 XSYMBOL and name field.
9273 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
9274 instead of XSYMBOL and name field.
9275 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
9276 XSYMBOL and name field.
9277 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
9278 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
9279 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
9280 instead of XSYMBOL and name field.
9281 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
9282 (parse_modifiers, apply_modifiers, Fevent_convert_list)
9283 (parse_solitary_modifier, Fexecute_extended_command):
9284 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
9285 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
9286 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
9287 of XSYMBOL and name field.
9288 (describe_command, describe_translation): Use SYMBOL_NAME and
9289 assignment instead of XSYMBOL and name field and XSETSTRING.
9290 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
9291 instead of XSYMBOL and name field.
9292 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
9293 name field and XSETSTRING.
9294 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
9295 of XSYMBOL and name field.
9296 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
9297 assignment instead of XSYMBOL and name field and XSETSTRING.
9298 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
9299 XSTRING instead of XSYMBOL and name field.
9300 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
9301 and XSTRING instead of XSYMBOL and name field.
9302 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
9303 and XSTRING instead of XSYMBOL and name field.
9304 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
9305 XSTRING instead of XSYMBOL and name field.
9306 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
9307 of XSYMBOL and name field.
9308 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
9309 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
9310
93112002-05-19 Ken Raeburn <raeburn@gnu.org>
9312
9313 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
9314 and XCDR real rvalues in most configurations.
9315
9316 * buffer.c (fix_overlays_in_range, fix_overlays_before):
9317 Don't take the address of the cdr part of a cons cell; instead, track
9318 the parent cell and call XSETCDR, or set the variable for the head
9319 of the list if we haven't started down the list yet.
9320
93212002-05-19 Richard M. Stallman <rms@gnu.org>
9322
9323 * doc.c (reread_doc_file): Don't ask for confirmation.
9324
93252002-05-18 Jason Rumney <jasonr@gnu.org>
9326
9327 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
9328 (xbm_load_image): Use it.
9329 (xbm_load): Ditto.
9330 (xbm_read_bitmap_data): Reverted to xfns.c version.
9331 From David Ponce <david@dponce.com>.
9332
93332002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
9334
9335 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
9336 2.02 and later.
9337
93382002-05-16 Juanma Barranquero <lektu@terra.es>
9339
9340 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
9341
93422002-05-15 Stefan Monnier <monnier@cs.yale.edu>
9343
9344 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
9345 meaningful test.
9346 (read_char_minibuf_menu_prompt): Fix typo.
9347
93482002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
9349
9350 * eval.c (Fcommandp): Doc fix.
9351
93522002-05-13 Stefan Monnier <monnier@cs.yale.edu>
9353
9354 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
9355 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
9356 (Fset_keymap_parent): Gcpro a bit more.
9357 (access_keymap): Gcpro around meta_map call and around the main loop.
9358 (get_keyelt): Gcpro when following indirect references.
9359 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
9360 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
9361 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
9362 Remove useless ad-hoc remap code.
9363
93642002-05-13 Richard M. Stallman <rms@gnu.org>
9365
9366 * search.c (search_buffer): Give up boyer moore search if inverse
9367 translation change charset_base.
9368
93692002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
9370
9371 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
9372 characters is carried over from the previous block of text, adjust
9373 coding->produced to account for the extra character.
9374
93752002-05-11 Andreas Schwab <schwab@suse.de>
9376
9377 * coding.c (intersection): Keep the elements of the returned list
9378 in the same order as in the first list.
9379
93802002-05-11 Kim F. Storm <storm@cua.dk>
9381
9382 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
9383 only update cmm_size if realloc actually succeeds.
9384 Testing with initial size of 2 elements revealed that using
9385 realloc on GNU/Linux would cause a random trap in xmalloc
9386 later on, so I rewrote the code to use malloc/bcopy/free instead
9387 of realloc.
9388
93892002-05-10 Jason Rumney <jasonr@gnu.org>
9390
9391 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
9392
93932002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
9394
9395 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
9396 parens, to ensure correct evaluation order.
9397
93982002-05-10 Kim F. Storm <storm@cua.dk>
9399
9400 * keymap.c (Vemulation_mode_map_alists): New variable.
9401 (syms_of_keymap): DEFVAR_LISP it.
9402 (current_minor_maps): Process keymap alists in that list before
9403 minor-mode-overriding-map-alist and minor-mode-map-alist.
9404
94052002-05-09 Richard M. Stallman <rms@gnu.org>
9406
9407 * search.c (Freplace_match): Doc fix.
9408
94092002-05-09 Kim F. Storm <storm@cua.dk>
9410
9411 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
9412 Enlarge cursor rectangle drawn around image with non-zero relief.
9413
9414 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
9415 Enlarge cursor rectangle drawn around image with non-zero relief.
9416
9417 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
9418 Enlarge cursor rectangle drawn around image with non-zero relief.
9419
94202002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
9421
9422 * xselect.c (lisp_data_to_selection_data): Don't set selection
9423 type if comes from the Lisp object's car. If the selection
9424 contains a pure ASCII text, always return QSTRING as its type.
9425
94262002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9427
9428 * mac.c (mac-cut-function): Doc fix.
9429
94302002-05-05 Richard M. Stallman <rms@gnu.org>
9431
9432 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
9433
94342002-05-04 Jason Rumney <jasonr@gnu.org>
9435
9436 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
9437 for event-click-count.
9438
9439 * process.c (init_process): Only add server subfeature if we can
9440 use non-blocking I/O.
9441
94422002-05-04 Andrew Choi <akochoi@shaw.ca>
9443
9444 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
9445 repeatedly.
9446
94472002-05-03 Jason Rumney <jasonr@gnu.org>
9448
9449 * process.c (Fmake_network_process): Only support server sockets
9450 when we can make them non-blocking.
9451
9452 * s/ms-w32.h (HAVE_SELECT): Define.
9453
9454 * w32.h (FILE_NDELAY): New flag.
9455
9456 * w32.c (sys_getpeername, fcntl): New functions.
9457 (_sys_read_ahead): Temporarily block on non-blocking sockets.
9458
9459 * w32proc.c: include sys/file.h.
9460
94612002-05-03 Colin Walters <walters@verbum.org>
9462
9463 * callproc.c (Vgame_score_directory): Renamed to
9464 Vshared_game_score_directory.
9465
94662002-04-30 Richard M. Stallman <rms@gnu.org>
9467
9468 * s/gnu.h [emacs]: Include stdio.h.
9469 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
9470
9471 * eval.c (do_autoload): Error if called while preparing to dump.
9472
9473 * fns.c (Frequire): Error if need to load while preparing to dump.
9474
94752002-04-28 Colin Walters <walters@verbum.org>
9476
9477 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
9478 Default to "~/.emacs.d/games".
9479
94802002-04-29 Stefan Monnier <monnier@cs.yale.edu>
9481
9482 * lread.c (openp): Change arg exec_only to predicate.
9483 (build_load_history): Use XCAR/XCDR.
9484 (Flocate_file_internal): New fun.
9485 (syms_of_lread): Defsubr it.
9486 (Fload): Update call to openp.
9487
9488 * lisp.h (openp): Update prototype.
9489
9490 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
9491 * w32proc.c (sys_spawnve):
9492 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
9493 * w32.c (check_windows_init_file):
9494 * sound.c (Fplay_sound_internal):
9495 * process.c (Fstart_process):
9496 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
9497 * mac.c (run_mac_command):
9498 * emacs.c (init_cmdargs):
9499 * callproc.c (Fcall_process): Update call to openp.
9500
9501 * textprop.c (remove_properties): Don't use XCAR without CONSP.
9502
9503 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
9504
95052002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9506
9507 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
9508 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
9509
95102002-04-28 Richard M. Stallman <rms@gnu.org>
9511
9512 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
9513
9514 * eval.c (Fcommandp): New arg for_call_interactively.
9515 * lisp.h (Fcommandp): Declare new arg.
9516
95172002-04-28 Jason Rumney <jasonr@gnu.org>
9518
9519 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
9520
9521 * w32.c (stat, fstat): Use file index information to generate
9522 inodes for directories where available.
9523
95242002-04-26 Andrew Choi <akochoi@shaw.ca>
9525
9526 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
9527 [HAVE_CARBON]: Include Mac object files.
9528
9529 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
9530 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
9531 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
9532 MAC_OSX, and MAC_OS instead of macintosh.
9533
9534 * editfns.c [MAC_OS8]: Include stdio.h.
9535
9536 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
9537
9538 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
9539 Apple Monaco.
9540
9541 * process.c: Declare QCfamily and QCfilter as extern.
9542 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
9543 calling select.
9544
9545 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
9546
9547 * tparam.c [MAC_OSX]: Don't define BC and UP.
9548
9549 * config.in [HAVE_CARBON]: Add.
9550
9551 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
9552 Move here from mac/src and mac/inc.
9553
9554 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
9555
95562002-04-26 Gerd Moellmann <gerd@gnu.org>
9557
9558 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
9559 Compute phys_cursor_width from the x position returned
9560 by x_draw_glyhs, which is cheaper.
9561 (x_display_and_set_cursor): Compute the buffer-local value
9562 of `cursor-in-non-selected-windows' only when needed.
9563
95642002-04-25 Gerd Moellmann <gerd@gnu.org>
9565
9566 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
9567 cursor on a stretch glyph has a width that depends on
9568 x_stretch_cursor_p.
9569
95702002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9571
9572 * abbrev.c (abbrev-start-location): Doc fix.
9573
9574 * indent.c (Fvertical_motion): Fix last change.
9575
95762002-04-25 Gerd Moellmann <gerd@gnu.org>
9577
9578 * indent.c (Fvertical_motion): Move to the start of the line
9579 containing PT before moving up or down.
9580
95812002-04-24 Gerd Moellmann <gerd@gnu.org>
9582
9583 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
9584 case of writing a whole row, more or less analogous to the case of
9585 writing only parts of a row.
9586
9587 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
9588 0 for NO_CURSOR.
9589
9590 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
9591
95922002-04-23 Colin Walters <walters@verbum.org>
9593
9594 * buffer.c (syms_of_buffer): Doc fix.
9595
95962002-04-23 Gerd Moellmann <gerd@gnu.org>
9597
9598 * xterm.c (notice_overwritten_cursor): Handle the special case
9599 of the cursor being in the first blank non-text line at the
9600 end of a window.
9601
9602 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
9603 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
9604 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
9605 bar cursors only, to make phys_cursor_width contain what its name
9606 suggests.
9607 (notice_overwritten_cursor): Consider the cursor image erased if
9608 the output area intersects the cursor image in y-direction.
9609
96102002-04-23 Simon Marshall <simon@gnu.org>
9611
9612 * xfns.c (x_set_mouse_color): Change default for cross_cursor
9613 to XC_hand2.
9614
96152002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9616
9617 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
9618
96192002-04-22 Kim F. Storm <storm@cua.dk>
9620
9621 * textprop.c (remove_properties): Fixed trap for malformed plist.
9622
96232002-04-22 Richard M. Stallman <rms@gnu.org>
9624
9625 * cmds.c (Fend_of_line): Handle intangible text in mid line.
9626
9627 * window.c (make_window): Initialize height_fixed_p,
9628 last_cursor_off_p, and p->cursor_off_p slots.
9629
96302002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9631
9632 * fns.c (use-dialog-box): Doc fix.
9633
96342002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9635
9636 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
9637 variables `row', `i' and `area'.
9638 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
9639 toolkit library.
9640
96412002-04-19 Stefan Monnier <monnier@cs.yale.edu>
9642
9643 * xfaces.c (clear_font_table): Don't free the default font of
9644 a frame even if it's on another display.
9645 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
9646 that could be Qt.
9647
96482002-04-19 Juanma Barranquero <lektu@terra.es>
9649
9650 * indent.c (Fmove_to_column): Remove unused local variable
9651 `next_boundary_byte'.
9652 (current_column_1): Likewise.
9653
96542002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
9655
9656 * msdos.c (Qhbar): New variable.
9657 (syms_of_msdos): Intern and staticpro it.
9658 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
9659 cursor type.
9660
96612002-04-19 Dave Lambert <dlambert@acm.org>
9662
9663 Theses change implement an underscore-like (`hbar') cursor.
9664
9665 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
9666
9667 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
9668 Handle the `hbar' cursor type.
9669 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
9670
9671 * xfns.c (Qhbar): New variable.
9672 (syms_of_xfns): Intern and staticpro it.
9673 (x_specified_cursor_type): Handle `hbar' cursor.
9674
9675 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
9676 not defined.
9677
96782002-04-18 Richard M. Stallman <rms@gnu.org>
9679
9680 * textprop.c (remove_properties): New arg LIST allows scanning
9681 either a list or a plist.
9682 (interval_has_some_properties_list): New function, like
9683 interval_has_some_properties using list instead of plist.
9684 All callers changed.
9685 (Fremove_list_of_text_properties): New function.
9686 (syms_of_textprop): Defsubr it.
9687
96882002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
9689
9690 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
9691
96922002-04-17 Juanma Barranquero <lektu@terra.es>
9693
9694 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
9695
96962002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
9697
9698 * window.c (coordinates_in_window): Don't report on margin area
9699 if its width is zero.
9700
97012002-04-16 Jason Rumney <jasonr@gnu.org>
9702
9703 * w32fns.c (Fx_file_dialog): Decode file name before using.
9704
9705 * w32term.c (construct_drag_n_drop): Likewise.
9706
97072002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
9708
9709 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
9710 store load-history in pure space.
9711
9712 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
9713
97142002-04-16 Stefan Monnier <monnier@cs.yale.edu>
9715
9716 * xterm.c (Qlatin_1, Qutf_8): New vars.
9717 (syms_of_xterm): Initialize them.
9718 (XTread_socket): Eliminate incorrect optimization that tried to avoid
9719 decoding the output of X*LookupString.
9720 Always use latin-1 to decode the output of XLookupString.
9721 Try Xutf8LookupString if XmbLookupString failed.
9722
9723 * region-cache.c (new_region_cache): Use BEG.
9724
97252002-04-16 Gerd Moellmann <gerd@gnu.org>
9726
9727 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
9728 configuration files.
9729 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
9730 returns 0.
9731
97322002-04-15 Andreas Schwab <schwab@suse.de>
9733
9734 * config.in: Regenerated using autoheader.
9735
9736 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
9737 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
9738 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
9739 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
9740 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
9741 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
9742 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
9743 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
9744 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
9745 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
9746 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
9747 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
9748 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
9749 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
9750 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
9751 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
9752 STACK_DIRECTION, now set by autoconf.
9753
97542002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9755
9756 * dispnew.c (marginal_area_string): Sort arguments.
9757
9758 * dispextern.h (marginal_area_string): Add prototype.
9759
97602002-04-13 Richard M. Stallman <rms@gnu.org>
9761
9762 * fileio.c (Finsert_file_contents):
9763 Don't call temp_output_buffer_setup--do just part, by hand.
9764
9765 * coding.c (run_pre_post_conversion_on_str):
9766 Don't call temp_output_buffer_setup--do just part, by hand.
9767
9768 * keyboard.c (command_loop_1): Don't call start_hourglass
9769 or cancel_hourglass when executing a macro.
9770
9771 * marker.c (count_markers): New function.
9772
9773 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
9774 grow without limit. Move recently used elements to the front.
9775
97762002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
9777
9778 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
9779
97802002-04-12 Gerd Moellmann <gerd@gnu.org>
9781
9782 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
9783 rows marginal areas.
9784 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
9785 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
9786
9787 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
9788
97892002-04-12 Dave Love <fx@gnu.org>
9790
9791 * dispnew.c (marginal_area_string): New.
9792
9793 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
9794 (Qleft_margin, Qright_margin): Declare.
9795 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
9796
9797 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
9798 note_mode_line_highlight and extended.
9799
9800 * keyboard.c (Qleft_margin, Qright_margin): Declare.
9801 (make_lispy_event): Deal with mouse events in margins.
9802
98032002-04-12 Stefan Monnier <monnier@cs.yale.edu>
9804
9805 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
9806
9807 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
9808 than deactivating the mark if tmm is set to `lambda'.
9809 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
9810 Use a single event for HELP_EVENT.
9811 (Fexecute_extended_command): Save last_point_position.
9812
98132002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9814
9815 * lisp.h (Fpropertize): Add prototype.
9816
9817 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
9818
98192002-04-10 Colin Walters <walters@verbum.org>
9820
9821 * config.in: Add HAVE_SHARED_GAME_DIR.
9822
9823 * callproc.c: (Vgame_score_directory): New variable.
9824 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
9825
98262002-04-10 Richard M. Stallman <rms@gnu.org>
9827
9828 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
9829
98302002-04-09 Stefan Monnier <monnier@cs.yale.edu>
9831
9832 * minibuf.c (read_minibuf): Use empty_string.
9833 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
9834 Short-circuit the search as soon as it "failed".
9835 (Fall_completions): Allow lambda forms and lists of strings for alist.
9836 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
9837 when require_match is nil.
9838 (Ftest_completion): Rename from `test_completion' and export to elisp.
9839 Call the predicate also when alist is a list.
9840 Obey Vcompletion_regexp_list.
9841 (do_completion, Fminibuffer_complete_and_exit): Use it.
9842 (Fassoc_string): Rename from `assoc_for_completion'.
9843 Allow list of strings as well and export to elisp.
9844
98452002-04-08 Stefan Monnier <monnier@cs.yale.edu>
9846
9847 * puresize.h (BASE_PURESIZE): Increase to 900KB.
9848
98492002-04-08 Juanma Barranquero <lektu@terra.es>
9850
9851 * w32.c (sys_accept): Don't hide variable `s'.
9852
98532002-04-05 Gerd Moellmann <gerd@gnu.org>
9854
9855 * callint.c (Fcall_interactively): Use INTEGERP instead of
9856 NUMBERP for checking Vhistory_length.
9857
98582002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9859
9860 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
9861 Doc fix to reflect it.
9862
98632002-04-04 Richard M. Stallman <rms@gnu.org>
9864
9865 * xdisp.c (display_mode_element): New arg RISKY.
9866 Disregard text props found or specified within a variable
9867 that isn't marked risky-local-variable.
9868 (Qrisky_local_variable): New variable.
9869 (syms_of_xdisp): Init and staticpro it.
9870
98712002-04-04 Stefan Monnier <monnier@cs.yale.edu>
9872
9873 * undo.c (record_point): New fun.
9874 (record_delete, record_insert): Use it.
9875
98762002-04-03 Juanma Barranquero <lektu@terra.es>
9877
9878 * doc.c (Fdocumentation): Add missing parentheses.
9879 (Fdocumentation_property): Likewise.
9880
98812002-04-03 Stefan Monnier <monnier@cs.yale.edu>
9882
9883 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
9884 data is 0, just return nil.
9885
98862002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
9887
9888 * msdos.c (syms_of_msdos): Fix last change with
9889 mouse_autoselect_window.
9890
98912002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9892
9893 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
9894 mouse_autoselect_window.
9895
98962002-04-02 Stefan Monnier <monnier@cs.yale.edu>
9897
9898 * keyboard.c (make_lispy_event): Handle unknown keysyms together
9899 with system-specific keysyms. Use it also for unknown function keys.
9900
9901 * doc.c (reread_doc_file): Return whether reload was attempted.
9902 (Fdocumentation, Fdocumentation_property): Don't try to reload
9903 if the doc is 0 and only ask once.
9904
9905 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
9906
99072002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
9908
9909 * keyboard.c (read_char): If the event was Qselect_window,
9910 restore timer_idleness_start_time to its previous value.
9911
9912 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
9913
99142002-04-01 Stefan Monnier <monnier@cs.yale.edu>
9915
9916 * region-cache.c (new_region_cache): Use BEG.
9917
9918 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
9919 Use BEG and BEG_BYTE.
9920
9921 * doc.c (get_doc_string): Return nil if the location is wrong.
9922 (reread_doc_file): New fun.
9923 (Fdocumentation, Fdocumentation_property):
9924 Call it if get_doc_string fails.
9925 (Fsnarf_documentation): Make it work for a dumped Emacs.
9926
9927 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
9928 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
9929
9930 * charset.c (Fstring): Allow 0 arguments.
9931
9932 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
9933
9934 * process.c (DATAGRAM_CONN_P, list_processes_1)
9935 (Fprocess_datagram_address, Fset_process_datagram_address)
9936 (Fset_network_process_options, server_accept_connection):
9937 Fix some int/Lisp_Object confusions (thank you union types).
9938
99392002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9940
9941 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
9942
9943 * w32term.c: Likewise.
9944 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
9945
9946 * keyboard.c (Qselect_window): New symbol.
9947 (head_table): Use it.
9948 (keys_of_keyboard): Bound select-window event to handle-select-window.
9949 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
9950
9951 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
9952 (last_window): New variable.
9953 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
9954 (note_mouse_movement): Remove reimplemented code in #if 0.
9955 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
9956 Emacs windows.
9957
9958 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
9959
99602002-03-31 Gerd Moellmann <gerd@gnu.org>
9961
9962 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
9963 Callers changed.
9964
99652002-03-30 Richard M. Stallman <rms@gnu.org>
9966
9967 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
9968 loop whenever it stops making progress.
9969
9970 * widget.c (set_frame_size): Don't call change_frame_size.
9971
99722002-03-30 Gerd Moellmann <gerd@gnu.org>
9973
9974 * dispnew.c (direct_output_for_insert):
9975 Call mark_window_display_accurate.
9976
99772002-03-29 Jason Rumney <jasonr@gnu.org>
9978
9979 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
9980
99812002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
9982
9983 * Makefile.in (lread.o): Depend on coding.h.
9984
9985 * lread.c (openp, Fload): Encode the file name before passing it
9986 to `stat', `access', and `emacs_open'.
9987 (openp): GCPRO the encoded file name. Don't recompute Lisp
9988 strings unnecessarily.
9989
99902002-03-29 Kim F. Storm <storm@cua.dk>
9991
9992 * fns.c (Flax_plist_put): Doc fix.
9993
99942002-03-28 Miles Bader <miles@gnu.org>
9995
9996 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
9997
99982002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9999
10000 * process.c (set-network-process-options): Add usage.
10001 (make-network-process): Doc fix.
10002
100032002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
10004
10005 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
10006
100072002-03-26 Richard M. Stallman <rms@gnu.org>
10008
10009 * fns.c (Fsubstring_no_properties): New function.
10010 (Flax_plist_get, Flax_plist_put): New functions.
10011 (syms_of_fns): defsubr them.
10012
10013 * xdisp.c (update_menu_bar): Test only update_mode_lines;
10014 don't test or alter w->update_mode_line.
10015
10016 * window.c (Fdisplay_buffer): Doc fix.
10017
100182002-03-24 Richard M. Stallman <rms@gnu.org>
10019
10020 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
10021
100222002-03-24 Gerd Moellmann <gerd@gnu.org>
10023
10024 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
10025 (Fdefmacro): Handle `(declare ...)'.
10026 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
10027 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
10028
100292002-03-24 Jason Rumney <jasonr@gnu.org>
10030
10031 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
10032 (xbm_file_p): Add prototypes.
10033 (xbm_format, xbm_image_p): Sync with xfns.c.
10034 (reflect_byte): New function.
10035 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
10036 (xbm_load_image): Create bitmaps with a depth of 1.
10037 (init_xfns): Enable XBM images.
10038
100392002-03-23 Jason Rumney <jasonr@gnu.org>
10040
10041 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
10042 correctly. Do not pass up_modifier to keyboard buffer.
10043
10044 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
10045
100462002-03-22 Stefan Monnier <monnier@cs.yale.edu>
10047
10048 * Makefile.in (bootstrapclean): New target.
10049 (bootstrap-temacs, bootstrap-doc): Remove.
10050 (bootstrap-emacs): Use a bog-standard `temacs'.
10051 Don't bother to build a DOC file.
10052
10053 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
10054
10055 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
10056 in temacs even if !CANNOT_DUMP.
10057 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
10058
10059 * alloc.c (check_pure_size): Only output a warning.
10060
100612002-03-22 Jason Rumney <jasonr@gnu.org>
10062
10063 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
10064 supported.
10065
10066 * w32term.c (zv_bits): Declare as short, for word alignment.
10067 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
10068 (syms_of_w32term): Define x-use-underline-position-properties.
10069
10070 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
10071 (clear_image_cache): Block input, fix logic, clear matrices in
10072 all frames that share this cache.
10073
100742002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
10075
10076 * emacs.c (main): Update the Copyright year in the blurb printed
10077 by "emacs --version".
10078
10079 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
10080
10081 * xterm.c (XTread_socket): If XK_ISO_Lock and
10082 XK_ISO_Last_Group_Lock are defined, handle keysyms between
10083 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
10084
100852002-03-21 Kim F. Storm <storm@cua.dk>
10086
10087 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
10088 menu-bar bindings in keymap and local-map properties _are_ used.
10089 But try keymap property first in accordance with 2002-01-03 patch.
10090 Added comment describing why this is not always reliable.
10091 (tool_bar_items): Ditto for tool-bar.
10092
100932002-03-21 Jason Rumney <jasonr@gnu.org>
10094
10095 * w32fns.c (x_clear_image_1): Disable color table code.
10096
100972002-03-21 Kim F. Storm <storm@cua.dk>
10098
10099 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
10100 removed the wrong version of the DEFUN macro; fixed it.
10101
10102 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
10103 Fmember rather than Fmemq).
10104 (Fprovide): Check that subfeatures is a list.
10105
10106 * process.c (QCfeature, QCdatagram): Removed variables.
10107 (QCtype, Qdatagram): New variables.
10108 (network_process_featurep): Removed function.
10109 (Fmake_network_process): Removed :feature check.
10110 Use :type 'datagram instead of :datagram t to create a datagram
10111 socket. This allows us to add other connection types (e.g. raw
10112 sockets) later in a consistent manner.
10113 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
10114 supported subfeatures for feature make-network-process.
10115 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
10116 Intern and staticpro QCtype and Qdatagram.
10117 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
10118
10119 * xfns.c: (QCtype): Remove duplicate declaration and
10120 initialization (is now declared in process.c).
10121
10122 * w32fns.c: (QCtype): Remove duplicate declaration and
10123 initialization (is now declared in process.c).
10124
101252002-03-21 Richard M. Stallman <rms@gnu.org>
10126
10127 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
10128 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
10129 when jumping to `fail' to avoid undoing reg changes in the
10130 last iteration of the loop.
10131 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
10132
10133 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
10134 Depend on process.h.
10135
101362002-03-20 Jason Rumney <jasonr@gnu.org>
10137
10138 Most of the following changes are still conditional on HAVE_IMAGES
10139 which is not set by default on Windows.
10140
10141 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
10142
10143 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
10144 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
10145 (four_corners_best, x_clear_image_1, x_clear_image)
10146 (x_alloc_image_color, postprocess_image)
10147 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
10148 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
10149 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
10150
10151 * w32gui.h (struct XImage): Define.
10152
10153 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
10154 extract mouse co-ordinates.
10155
101562002-03-20 Jason Rumney <jasonr@gnu.org>
10157
10158 * w32.c (init_winsock): Dynamically load new server and UDP
10159 socket functions.
10160 (socket_to_fd): New function.
10161 (sys_socket): Use it.
10162 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
10163 (sys_recvfrom, sys_sendto): New wrapper functions.
10164
10165 * process.c (QCfamily, QCfilter): Remove duplicate declaration
10166 and initialization.
10167
10168 * makefile.w32-in (LIBS): Remove $(WSOCK32).
10169
101702002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
10171
10172 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
10173 Don't use "sun" as a variable, it's a predefined constant on Sun
10174 machines.
10175
101762002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10177
10178 * bytecode.c (Fbyte_code): Revert last change.
10179
101802002-03-19 Kim F. Storm <storm@cua.dk>
10181
10182 * makefile.w32-in (LIBS): Add $(WSOCK32).
10183 From David Ponce <dponce@voila.fr>.
10184
101852002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10186
10187 * process.c (wait_reading_process_input): Move variables `pname'
10188 and `pnamelen' down where they are used.
10189
10190 * bytecode.c (Fbyte_code): Discard unused computed value to
10191 prevent gcc warning.
10192
10193 * lisp.h (Fplist_member): Add prototype.
10194
101952002-03-18 Kim F. Storm <storm@cua.dk>
10196
10197 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
10198 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
10199
10200 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
10201 Remove explicit GNU_LINUX settings for datagram support.
10202
102032002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10204
10205 * process.c (Fmake_network_process): Remove unused variable `sa'.
10206 Doc fix. Add usage:.
10207 (set_socket_options): Remove unused variables `optnum' and `opttype'.
10208
102092002-03-17 Richard M. Stallman <rms@gnu.org>
10210
10211 * xdisp.c (cursor_type_changed): New variable.
10212 (redisplay_internal): Redisplay all windows if cursor_type_changed.
10213 Clear it when clearing windows_or_buffers_changed.
10214 (try_cursor_movement, redisplay_window, try_window_id)
10215 (try_window_reusing_current_matrix): Test cursor_type_changed
10216 along with windows_or_buffers_changed.
10217
10218 * window.h (cursor_type_changed): New variable.
10219
10220 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
10221 not update_mode_lines, and always set it to 1.
10222
10223 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
10224 if no frames needed redrawing.
10225
102262002-03-17 Kim F. Storm <storm@cua.dk>
10227
10228 The following changes add support for network server processes,
10229 datagram connections, and local (unix) sockets.
10230
10231 * process.h (struct Lisp_Process): New member log.
10232 Doc fix: Member command used to indicate stopped network process.
10233 Doc fix: Member childp contains plist for network process.
10234 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
10235
10236 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
10237 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
10238 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
10239 New variables.
10240 (NETCONN1_P): New macro.
10241 (DATAGRAM_SOCKETS): New conditional symbol.
10242 (datagram_address): New array.
10243 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
10244 (status_message): Use concat3.
10245 (Fprocess_status): Add `listen' status to doc string. Return `stop'
10246 for a stopped network process.
10247 (Fset_process_buffer): Update contact plist for network process.
10248 (Fset_process_filter): Ditto. Don't enable input for stopped
10249 network processes. Server must listen, even if filter is t.
10250 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
10251 New functions.
10252 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
10253 (Fprocess_contact): Added KEY argument. Handle datagrams.
10254 (list_processes_1): Optionally show only processes with the query
10255 on exit flag set. Dynamically adjust column widths. Omit tty
10256 column if not needed. Report stopped network processes.
10257 Identify server and datagram network processes.
10258 (Flist_processes): New optional arg `query-only'.
10259 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
10260 (conv_lisp_to_sockaddr, set_socket_options)
10261 (network_process_featurep, unwind_request_sigio): New helper functions.
10262 (Fprocess_datagram_address, Fset_process_datagram_address):
10263 (Fset_network_process_options): New lisp functions.
10264 (Fopen_network_stream): Removed. Now defined in simple.el.
10265 (Fmake_network_process): New lisp function. Code is based on previous
10266 Fopen_network_stream, but heavily reworked with new property list based
10267 argument list, support for datagrams, server processes, and local
10268 sockets in addition to old client-only functionality.
10269 (server_accept_connection): New function.
10270 (wait_reading_process_input): Use it to handle incoming connects.
10271 Do not enable input on a new connection if process is stopped.
10272 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
10273 (send_process): Handle datagram sockets.
10274 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
10275 network process is indicated by setting command field to t .
10276 (Fprocess_send_eof): No-op if datagram connection.
10277 (Fstatus_notify): Don't read input for a stream server socket or a
10278 stopped network process.
10279 (init_process): Initialize datagram_address array.
10280 (syms_of_process): Intern and staticpro new variables, defsubr new
10281 functions.
10282
102832002-03-16 Jason Rumney <jasonr@gnu.org>
10284
10285 * w32fns.c (w32_to_all_x_charsets): Return correct type in
10286 startup case.
10287
102882002-03-16 Richard M. Stallman <rms@gnu.org>
10289
10290 * xdisp.c (redisplay_internal, redisplay_windows):
10291 Use list_of_error to call internal_condition_case_1.
10292 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
10293 so as to catch all errors with no possibility of debugger redisplay.
10294 (list_of_error): New variable.
10295 (syms_of_xdisp): Init and staticpro it.
10296
10297 * print.c (print_object): Delete `\ ' from printed rep of frame.
10298
102992002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
10300
10301 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
10302 until its implementation is fixed.
10303
103042002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10305
10306 * xfns.c (png_load): Remove unused variable `gamma_str'.
10307
103082002-03-14 Richard M. Stallman <rms@gnu.org>
10309
10310 * xfns.c (x_real_positions): Handle failure in XQueryTree.
10311
103122002-03-14 Miles Bader <miles@gnu.org>
10313
10314 * intervals.c (adjust_for_invis_intang): New function.
10315 (set_point_both): Use `adjust_for_invis_intang' to do most of the
10316 work for dealing with invisible+intangible regions. Do so before
10317 and after both forward and backward movements, to handle both
10318 front-sticky and rear-sticky cases.
10319 * textprop.c (text_property_stickiness): Function moved here from
10320 `editfns.c'.
10321 * intervals.h (text_property_stickiness): New declaration.
10322 * editfns.c (char_property_eq): Function removed.
10323 (text_property_stickiness): Function moved to `textprop.c'.
10324
103252002-03-13 Jason Rumney <jasonr@gnu.org>
10326
10327 * config.in: Add STRFTIME_NO_POSIX2.
10328
10329 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
10330 and %OX when underlying strftime does not.
10331
103322002-03-13 Stefan Monnier <monnier@cs.yale.edu>
10333
10334 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
10335 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
10336 line) to avoid annoying flicker.
10337 (xm_scroll_callback): Get rid of the now unnecessary kludge.
10338 (XTread_socket): Mark it static.
10339
10340 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
10341
103422002-03-13 Kim F. Storm <storm@cua.dk>
10343
10344 * puresize.h (BASE_PURESIZE): Increase to 775000.
10345
103462002-03-12 Juanma Barranquero <lektu@terra.es>
10347
10348 * editfns.c (syms_of_editfns): Fix typo.
10349
103502002-03-12 Gerd Moellmann <gerd@gnu.org>
10351
10352 * xsmfns.c: Include stdio.h because termhooks.h needs it.
10353 Include termopt.h for interrupt_input.
10354
103552002-03-11 Andreas Schwab <schwab@suse.de>
10356
10357 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
10358
103592002-03-11 Gerd Moellmann <gerd@gnu.org>
10360
10361 * xterm.c (note_mouse_movement): Put code for
10362 x_autoselect_window_p in #if 0.
10363
10364 * lread.c (Fload): Don't assume that message_with_string uses the
10365 string it is given like a C string.
10366
103672002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10368
10369 * xterm.h (x_session_check_input, x_session_initialize): Declared.
10370
10371 * xterm.c: (XTread_socket): Add call to x_session_check_input and
10372 x_session_have_connection.
10373 (x_initialize): Add call to x_session_initialize.
10374
10375 * termhooks.h (enum event_kind): Add save_session_event.
10376
10377 * keyboard.c: Add Emacs event save_session_event.
10378
10379 * emacs.c (main): Add call to syms_of_xsmfns.
10380
10381 * lisp.h: Declare syms_of_xsmfns as extern.
10382
10383 * config.in: Add HAVE_X_SM.
10384
10385 * Makefile.in (LIBXT): Add -lSM -lICE
10386 if HAVE_X_SM and not USE_X_TOOLKIT.
10387 (XOBJ): New file xsmfns.c added.
10388
10389 * xsmfns.c: New file for X session management.
10390
103912002-03-09 Jason Rumney <jasonr@gnu.org>
10392
10393 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
10394 read-only when setting modified time.
10395
103962002-03-08 Gerd Moellmann <gerd@gnu.org>
10397
10398 * xdisp.c (move_it_vertically_backward): At the end of the function,
10399 when moving forward by lines, treat terminal frames specially.
10400
10401 * keyboard.c (echo_char): Make sure to add a separator between
10402 keys even if echo_dash hasn't been called.
10403
10404 * xdisp.c: Use new string macros.
10405 (update_echo_area): Pass number of bytes to message3 instead of
10406 number of chars.
10407 (set_message_1): Don't access a string's size_byte directly.
10408 (decode_mode_spec_coding): Use number of bytes of eoltype string
10409 instead number of chars.
10410
10411 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
10412
104132002-03-08 Juanma Barranquero <lektu@terra.es>
10414
10415 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
10416 24-bit.
10417
104182002-03-06 Jason Rumney <jasonr@gnu.org>
10419
10420 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
10421
104222002-03-06 Gerd Moellmann <gerd@gnu.org>
10423
10424 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
10425 (cancel_echoing, echo_length, echo_truncate): Changed to
10426 work with new kboard definition.
10427 (echo_now): Use message3_nolog instead of message2_nolog.
10428
10429 * alloc.c (mark_kboards): Mark echo_string.
10430
10431 * keyboard.h (ECHOBUFSIZE): Removed.
10432 (struct kboard): Member echoptr removed, member echobuf renamed
10433 to echo_string.
10434
10435 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
10436 message3 instead of message2 to display the message using STRING's
10437 text properties.
10438
104392002-03-05 Andreas Schwab <schwab@suse.de>
10440
10441 * xdisp.c (hscroll_margin): Change to EMACS_INT.
10442
104432002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
10444
10445 * frame.c (default-frame-alist): Explain that setting it doesn't
10446 affect existing frames.
10447
104482002-03-05 Stefan Monnier <monnier@cs.yale.edu>
10449
10450 * indent.c (skip_invisible): Fix my brain fart.
10451
10452 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
10453
104542002-03-04 Stefan Monnier <monnier@cs.yale.edu>
10455
10456 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
10457 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
10458 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
10459 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
10460 and variables to use EMACS_INT instead of just int.
10461
10462 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
10463
104642002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
10465
10466 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
10467 environment, pass it down with corrected value.
10468
104692002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10470
10471 * lread.c (read_filtered_event): Do not call start_hourglass
10472 before returning.
10473
104742002-03-04 Juanma Barranquero <lektu@terra.es>
10475
10476 * w32term.c (x_display_and_set_cursor): Fix typo.
10477
104782002-03-03 Richard M. Stallman <rms@gnu.org>
10479
10480 * fileio.c (Fmake_temp_name): Doc fix.
10481
104822002-03-03 Gary Wong <gtw@gnu.org>
10483
10484 * termcap.c [!emacs]: Replace ospeed for building standalone
10485 libtermcap, for binary compatibility.
10486
10487 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
10488
104892002-03-03 Richard M. Stallman <rms@gnu.org>
10490
10491 * xrdb.c (file_p): Rename arg `path' to `filename'.
10492
10493 * abbrev.c (Fexpand_abbrev): Increment plist as use count
10494 only if it is an integer.
10495
10496 * xfns.c (png_load): Set screen_gamma based on f->gamma.
10497 If png_get_sRGB gives an answer, call png_set_gamma
10498 using the default image gamma value.
10499
10500 * lread.c (read1): When reading from a file, default string to
10501 multibyte only if it has some multibyte characters.
10502
10503 * print.c (print_object): Output multibyte chars 128...255
10504 using \x even if ! print_escape_multibyte.
10505
10506 * xdisp.c (display_mode_element): Move the places where
10507 bytepos, charpos, this, and lisp_string are set.
10508 Use lisp_string to set bytepos.
10509
10510 * xdisp.c (redisplay_internal):
10511 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
10512
10513 * xdisp.c (display_mode_element): Merge properties specified with
10514 :propertize onto those that come with the string.
10515
105162002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
10517
10518 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
10519 automatic-hscrolling. Users changed.
10520 <hscroll-margin>: Renamed from automatic-hscroll-margin.
10521 Users changed.
10522 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
10523
105242002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
10525
10526 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
10527
105282002-03-02 Kim F. Storm <storm@cua.dk>
10529
10530 * window.c (Fminibuffer_selected_window): New function.
10531 (syms_of_window): Defsubr it.
10532
105332002-03-01 Kim F. Storm <storm@cua.dk>
10534
10535 * window.h (struct window): New member phys_cursor_width.
10536
10537 * window.c (make_window, replace_window): Init phys_cursor_width.
10538
10539 * xterm.c (x_display_and_set_cursor): Blink box cursor using
10540 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
10541
10542 * w32term.c (x_display_and_set_cursor): Blink box cursor using
10543 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
10544
10545 * lisp.h (GCPRO6): New macro.
10546
10547 * process.c (Fopen_network_stream): Use GCPRO6.
10548
105492002-03-01 Kim F. Storm <storm@cua.dk>
10550
10551 * process.c (Qconnect, Qfailed): New variables.
10552 (syms_of_process): Intern and staticpro them.
10553 (Fprocess_status): Document connect and failed return values.
10554 [NON_BLOCKING_CONNECT]: New conditional.
10555 (connect_wait_mask, num_pending_connects): New variables.
10556 (status_message): Convert Qfailed status.
10557 (Fopen_network_stream): Added support for non-blocking connect.
10558 New optional args: filter, sentinel, non_blocking. Doc updated.
10559 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
10560 (deactivate_process): Handle pending non-blocking connect.
10561 (wait_reading_process_input): Poll for status of non-blocking
10562 connects. Exec sentinel directly when connect succeeds.
10563 (status_notify): Don't read process output if not yet connected.
10564
105652002-02-28 Kim F. Storm <storm@cua.dk>
10566
10567 * window.c: (minibuf_selected_window): Renamed from
10568 Vminibuf_selected_window. Users changed.
10569 (syms_of_window): Staticpro it.
10570
105712002-02-26 Kim F. Storm <storm@cua.dk>
10572
10573 The following changes add a new Vminibuf_selected_window variable
10574 which is similar to Vminibuf_scroll_window, but which is only set
10575 on entry to the minibuffer (from a non-minibuffer window):
10576
10577 * window.c: (Vminibuf_selected_window): New variable.
10578 (struct save_window_data): New member minibuf_selected_window.
10579 (Fset_window_configuration): Restore Vminibuf_selected_window.
10580 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
10581 Set minibuf_scroll_window member to nil if minibuf_level is 0.
10582 (compare_window_configurations): Compare minibuf_selected_window.
10583
10584 * window.h: (Vminibuf_selected_window): Declare extern.
10585
10586 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
10587 entry to minibuffer or on entry from a non-minibuffer window.
10588
10589 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
10590 Vminibuf_selected_window instead of Vminibuf_scroll_window.
10591
10592 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
10593 instead of Vminibuf_scroll_window when deciding in which window
10594 the region should be highlighted. Consequently, the region remains
10595 highlighteded even when a completion buffer is also displayed.
10596
105972002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
10598
10599 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
10600
10601 * xselect.c (Qcompound_text_with_extensions): Renamed from
10602 Qcompound_text_no_extensions.
10603 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
10604
106052002-02-26 Juanma Barranquero <lektu@terra.es>
10606
10607 * w32proc.c (syms_of_ntproc): Doc fix.
10608
106092002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10610
10611 * intervals.h: Include "dispextern.h" unconditionally.
10612
106132002-02-24 Jason Rumney <jasonr@gnu.org>
10614
10615 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
10616 and disp-table.elc.
10617 (lisp): Add emacs-lisp/backquote.elc.
10618
106192002-02-24 Kim F. Storm <storm@cua.dk>
10620
10621 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
10622 The validation of the event type was too strict as it didn't
10623 allow string events; buffer names are used in bindings for
10624 menu-bar-select-buffer (see `menu-bar-update-buffers').
10625
106262002-02-23 Kim F. Storm <storm@cua.dk>
10627
10628 The following changes rework my patch of 2002-02-06 which
10629 added command remapping by entering the commands directly into
10630 the keymaps. Now, command remapping uses an explicit `remap'
10631 prefix in the keymaps, i.e. [remap COMMAND].
10632
10633 * keymap.c (Qremap, remap_command_vector): New variables.
10634 (is_command_symbol): Removed function.
10635 (Fdefine_key): No longer accept a symbol for KEY.
10636 Added validation of [remap COMMAND] argument for KEY.
10637 The DEF is no longer required to be a symbol when remapping a command.
10638 (Fremap_command): New function to remap command through keymaps.
10639 (Flookup_key): Perform command remapping initiated by
10640 Fremap_command directly for speed.
10641 (Fkey_binding): Use Fremap_command for command remapping.
10642 (where_is_internal): Handle new command remapping representation.
10643 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
10644 staticpro them. Defsubr Fremap_command.
10645
10646 * keymap.h (Fremap_command): Declare extern.
10647 (is_command_symbol): Remove extern.
10648
10649 * keyboard.c (command_loop_1): Use Fremap_command for command
10650 remapping; now try command remapping for all symbols.
10651
106522002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
10653
10654 * coding.h (run_pre_post_conversion_on_str): Add prototype.
10655
106562002-02-23 Jason Rumney <jasonr@gnu.org>
10657
10658 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
10659 on the string before encoding it.
10660 (Fw32_get_clipboard_data): Run post-read-conversion on the string
10661 after decoding it.
10662
10663 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
10664
106652002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10666
10667 * w32term.c (enter_timestamp): Remove unused static variable to
10668 prevent warning.
10669
10670 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
10671
106722002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
10673
10674 * w16select.c (Fw16_get_clipboard_data): Fix last change.
10675
10676 * xselect.c (selection_data_to_lisp_data): Fix last change.
10677
106782002-02-22 Jason Rumney <jasonr@gnu.org>
10679
10680 * w32term.h (struct w32_output): New member menu_command_in_progress.
10681
10682 * w32menu.c (menubar_selection_callback): Free the menu and
10683 clear the menu_command_in_progress flag.
10684
10685 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
10686 (menu_free_timer): New variable.
10687 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
10688 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
10689 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
10690 menu command is in progress.
10691 <WM_COMMAND>: Set the menu_command_in_progress flag.
10692 Kill any menu_free_timer that is running.
10693
10694 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
10695 Call ExtTextOutA rather than ExtTextOut.
10696
106972002-02-22 Eli Zaretskii <eliz@gnu.org>
10698
10699 * puresize.h (BASE_PURESIZE): Increase to 755000.
10700
107012002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
10702
10703 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
10704 on the string before encoding it.
10705 (Fw16_get_clipboard_data): Run post-read-conversion on the string
10706 after decoding it.
10707
107082002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
10709
10710 Support for ICCCM Extended Segments in X selections:
10711
10712 * xselect.c <Qcompound_text_no_extensions>: New variable.
10713 (syms_of_xselect): Intern and staticpro it.
10714 (selection_data_to_lisp_data): Run post-read-conversion on decoded
10715 selection text.
10716 (lisp_data_to_selection_data): If next-selection-coding-system is
10717 compound-text-no-extensions, set the type of selection to be
10718 compound-text.
10719
10720 * xterm.h (x_encode_text): Update prototype.
10721
10722 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
10723 callers changed. If SELECTIONP is non-zero, run the
10724 pre-write-conversion function before encoding the selection text.
10725
107262002-02-21 Kim F. Storm <storm@cua.dk>
10727
10728 * frame.c (syms_of_frame): Change mouse-highlight default to t.
10729
10730 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
10731 Correct composing of language-change event.
10732
107332002-02-20 Kim F. Storm <storm@cua.dk>
10734
10735 * keyboard.c (menu_bar_items): Don't include keymap or local-map
10736 bindings at PT when building menu (the menu is not updated often
10737 enough for this to work reliable).
10738 (tool_bar_items): Likewise.
10739 (current_active_maps): Removed unused (and buggy) function.
10740
107412002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10742
10743 * xfns.c (gif_load): Use correct width and height for GIF images.
10744
107452002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
10746
10747 * floatfns.c (Fatan): Accept an optional second arg and call
10748 atan2 if passed 2 args.
10749
107502002-02-18 Jason Rumney <jasonr@gnu.org>
10751
10752 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
10753
107542002-02-17 Jason Rumney <jasonr@gnu.org>
10755
10756 * w32term.c (x_autoselect_window_p): New variable.
10757 (syms_of_w32term): DEFVAR_BOOL and initialize it.
10758 (note_mouse_movement): Use it.
10759
10760 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
10761
10762 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
10763
10764 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
10765 New variables.
10766 (syms_of_w32fns): Intern and staticpro them.
10767 (x_frame_parms) <"fullscreen">: New parameter.
10768 (x_fullscreen_move, x_set_fullscreen): New functions.
10769 (x_set_frame_parameters): Support Qfullscreen.
10770 (x_real_positions): Save x/y_pixels_diff frame params.
10771 (x_figure_window_size): Support full-screen frames.
10772 (Fx_create_frame): Default the fullscreen parameter.
10773
10774 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
10775 (x_fullscreen_adjust): New functions.
10776 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
10777 fullscreen. Call x_check_fullscreen_move, and set the
10778 want_fullscreen member of output_data.w32
10779 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
10780
10781 * w32term.h: New enum for FULLSCREEN_* constants.
10782 (struct w32_output): New members want_fullscreen, x_pixels_diff,
10783 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
10784 (x-fullscreen-adjust): New prototype.
10785
107862002-02-17 Kim F. Storm <storm@cua.dk>
10787
10788 * frame.c: (Vmouse_highlight): New variable.
10789 (syms_of_frame): DEFVAR_LISP it.
10790
10791 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 10792
048addec 10793 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 10794
048addec
JD
10795 * xterm.c (disable_mouse_highlight): Removed variable.
10796 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
10797 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
10798 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
10799 and on after keyboard input.
10800 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 10801
048addec 10802 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 10803
048addec
JD
10804 * msdos.c (disable_mouse_highlight): Removed variable.
10805 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
10806 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
10807 (internal_terminal_init): Initialize mouse_face_hidden.
10808 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
10809 and on after keyboard input.
4f1b1854 10810
048addec 10811 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 10812
048addec
JD
10813 * w32term.c (disable_mouse_highlight): Removed variable.
10814 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
10815 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
10816 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
10817 and on after keyboard input.
10818 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 10819
048addec 108202002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 10821
048addec
JD
10822 * msdos.c (last_mouse_window): New variable.
10823 (dos_rawgetc): Fix last change--if the mouse is in the same window
10824 as recorded in last_mouse_window, don't select this window.
5cb6905d 10825
048addec 10826 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 10827
048addec
JD
10828 * msdos.c (x_autoselect_window_p): New variable.
10829 (syms_of_msdos): Defvar it.
10830 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
10831 which the last mouse movement occured, unless it is already selected.
437dfb9f 10832
048addec
JD
10833 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
10834 New variables.
10835 (syms_of_xdisp): DEVFAR them.
10836 (hscroll_window_tree): Use automatic_hscroll_margin and
10837 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 10838
048addec 108392002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 10840
048addec
JD
10841 * xterm.c (x-autoselect-window): New variable.
10842 (note_mouse_movement): Use it.
9f696a00 10843
048addec 10844 * keyboard.c: Do not include "systime.h" twice.
d57966d7 10845
048addec 108462002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 10847
048addec 10848 * puresize.h (BASE_PURESIZE): Increase to 9/5.
d57966d7 10849
048addec 10850 * alloc.c (NSTATICS): Increase to 1280.
74779f52 10851
048addec 108522002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 10853
048addec 10854 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 10855
048addec
JD
10856 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
10857 (Vx_super_keysym): New variables.
10858 (syms_of_xterm): DEFVAR_LISP them.
10859 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
10860 variables to determine which keys to use for the various modifiers.
a474d59c 10861
048addec 108622002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 10863
048addec
JD
10864 * window.c: (Vmode_line_in_non_selected_windows): Removed.
10865 (mode_line_in_non_selected_windows): New variable.
10866 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 10867
048addec
JD
10868 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
10869 Use mode_line_in_non_selected_windows.
10870 (mode_line_in_non_selected_windows): Declare extern.
10871 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 10872
048addec 108732002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 10874
048addec
JD
10875 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
10876 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
10877 (Fclear_this_command_keys): Doc fixes.
2d10309f 10878
048addec
JD
10879 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
10880 (update_face_from_frame_parameter): Increment face_change_count
10881 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 10882
048addec
JD
10883 * xdisp.c (QCpropertize): New variable.
10884 (mode_line_proptrans_alist): New variable.
10885 (display_mode_element): New arg PROPS; all calls changed.
10886 Implement this, for strings.
10887 Handle literal output of strings by sharing the
10888 main-line code for strings, using local var `literal'.
10889 Handle :propertize feature.
10890 (syms_of_xdisp): Initialze and staticpro QCpropertize and
10891 mode_line_proptrans_alist.
0b1e6b54 10892
048addec 108932002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 10894
048addec
JD
10895 * window.c: (Vmode_line_in_non_selected_windows): New variable.
10896 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 10897
048addec
JD
10898 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
10899 (CURRENT_MODE_LINE_FACE_ID): Use it.
10900 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 10901
048addec
JD
10902 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
10903 to get mode line face.
e17144de 10904
048addec 109052002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 10906
048addec
JD
10907 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
10908 variables; cus-start.el doesn't need them anymore.
44368f8f 10909
048addec 109102002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 10911
048addec
JD
10912 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
10913 reduction. This fixes a display problem where stray newlines were
10914 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 10915
048addec 109162002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 10917
048addec 10918 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 10919
048addec 10920 * xdisp.c (display_mode_lines): Fix last change.
453c5510 10921
048addec 109222002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 10923
048addec
JD
10924 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
10925 match each other.
10926 (w32_load_system_font): Prevent Cleartype fonts from loading.
10927 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 10928
048addec 109292002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 10930
048addec
JD
10931 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
10932 (CURRENT_MODE_LINE_HEIGHT): Use it.
10933 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 10934
048addec
JD
10935 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
10936 (pos_visible_p, handle_face_prop): Likewise.
10937 (display_mode_lines): Likewise, but for the real selected window.
10938 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 10939
048addec
JD
10940 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
10941 in non-selected windows.
10942 (realize_basic_faces): Realize it.
10943 (syms_of_term): Intern and staticpro it.
308dd672 10944
048addec 109452002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 10946
048addec
JD
10947 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
10948 Changed mail addresses to emacs-devel@gnu.org.
308dd672 10949
048addec 109502002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 10951
048addec
JD
10952 * fileio.c (Fsubstitute_in_file_name): If the file name includes
10953 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 10954
048addec 10955 * floatfns.c (Fround): Doc fix.
3c1e6b46 10956
048addec 109572002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 10958
048addec 10959 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 10960
048addec 109612002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 10962
048addec 10963 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 10964
048addec 109652002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 10966
048addec
JD
10967 * keymap.c (where_is_internal): Only check whether definition is
10968 remapped if it fulfills is_command_symbol.
0065bb74 10969
048addec 109702002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 10971
048addec 10972 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 10973
048addec 10974 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 10975
048addec 109762002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 10977
048addec
JD
10978 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
10979 defining command remapping. Doc updated.
10980 (Flookup_key): Remap command through keymap if KEY is a symbol.
10981 (is_command_symbol): New function.
10982 (Fkey_binding): Use it. New optional argument NO-REMAP.
10983 Doc updated. Callers changed. Perform command remapping via
10984 recursive call unless that arg is non-nil.
10985 (where_is_internal): New argument no_remap. Callers changed.
10986 Call recursively to find original key bindings for a remapped
10987 comand unless that arg is non-nil.
10988 (Fwhere_is_internal): New optional argument NO-REMAP.
10989 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 10990
048addec
JD
10991 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
10992 (is_command_symbol): Added prototype.
0d8466cc 10993
048addec
JD
10994 * keyboard.c (Vthis_original_command): New variable.
10995 (syms_of_keyboard): DEFVAR_LISP it.
10996 (command_loop_1): Set it, and perform command remapping.
15fff01d 10997
048addec 109982002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 10999
048addec 11000 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 11001
048addec 110022002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 11003
048addec 11004 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 11005
048addec 110062002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 11007
048addec 11008 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 11009
048addec 110102002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 11011
048addec 11012 * filelock.c (S_ISLNK): Define if not defined.
3a232704 11013
048addec 110142002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 11015
048addec 11016 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 11017
048addec
JD
11018 * lread.c (read1): Redesign strategy for force_multibyte and
11019 force_singlebyte. Now is_multibyte records whether read_buffer
11020 is multibyte. Encountering any multibyte character makes it so.
4e02881b 11021
048addec 110222002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 11023
048addec
JD
11024 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
11025 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 11026
048addec 110272002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 11028
048addec
JD
11029 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
11030 latter never being defined on GNU/Linux.
749f499f 11031
048addec 110322002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 11033
048addec
JD
11034 * xfaces.c (realize_default_face): Don't set the weight and slant of
11035 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 11036
048addec 110372002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 11038
048addec
JD
11039 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
11040 Call cancel_hourglass unconditionally.
d0fd26dd 11041
048addec
JD
11042 * eval.c (Fsignal): Remove duplicated declaration of
11043 the variable `display_hourglass_p'.
b4c45162 11044
048addec 110452002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 11046
048addec 11047 * editfns.c (region_limit): Nicer error message.
c95eaa61 11048
048addec
JD
11049 * coding.c (decode_composition_emacs_mule):
11050 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 11051
048addec
JD
11052 * callint.c (check_mark): New arg to specify clearer error message.
11053 Callers changed.
c95eaa61 11054
048addec 110552002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 11056
048addec 11057 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 11058
048addec 110592002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 11060
048addec
JD
11061 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
11062 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
11063 Fix doc-strings.
c95eaa61 11064
048addec 110652002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 11066
048addec 11067 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 11068
048addec
JD
11069 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
11070 and scroll_up_aggressively.
c95eaa61 11071
048addec 110722002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 11073
048addec 11074 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 11075
048addec 110762002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 11077
048addec
JD
11078 * textprop.c (Fnext_property_change, Fnext_single_property_change)
11079 (Fprevious_property_change, Fprevious_single_property_change):
11080 Stay within the narrowed-buffer boundaries.
e2c3786a 11081
048addec 110822002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 11083
048addec
JD
11084 * term.c (Ftty_display_color_cells): New function.
11085 (syms_of_term): Defsubr it.
11086 (Ftty_display_color_cells, Ftty_display_color_p): Change the
11087 argument name to DISPLAY. Doc fix.
bf794306 11088
048addec
JD
11089 * dispextern.h: Add prototype for set_tty_color_mode and
11090 tty_setup_colors.
bf794306 11091
048addec 110922002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 11093
048addec
JD
11094 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
11095 If region left to draw is not what was expected, mark the frame as
11096 garbaged.
62582985 11097
048addec
JD
11098 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
11099 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 11100
048addec 111012002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 11102
048addec
JD
11103 * w32term.c (x_update_window_begin): Only hide caret if
11104 w32_use_visible_system_caret is set.
11105 (x_update_window_end): Only show caret if
11106 w32_use_visible_system_caret is set.
11107 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 11108
048addec 11109 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 11110
048addec 111112002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 11112
048addec
JD
11113 * unexelf.c (unexec): Define n so as to cause compilation error
11114 for the code where people have often written n instead of nn.
1e9a6186 11115
048addec 11116 * .gdbinit (hookpost-run): Defined.
1e9a6186 11117
048addec 111182002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 11119
048addec 11120 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 11121
048addec 111222002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 11123
048addec
JD
11124 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
11125 if fullscreen is being set.
7c75be36 11126
048addec 111272002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 11128
048addec
JD
11129 * minibuf.c (Fminibuffer_contents)
11130 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
11131 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 11132
048addec 111332002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 11134
048addec 11135 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 11136
048addec 111372002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 11138
048addec
JD
11139 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
11140 height before comparison.
11141 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 11142
048addec 111432002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 11144
048addec
JD
11145 * w32term.c (w32_system_caret_width): Remove.
11146 (w32_use_visible_system_caret): New user flag.
11147 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
11148 Windows reports a screen reader running.
11149 (x_update_window_begin): Hide the system caret.
11150 (x_update_window_end): Show the system caret.
11151 (x_display_and_set_cursor): Don't draw a cursor when
11152 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 11153
048addec
JD
11154 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
11155 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
11156 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
11157 the user requests it. Use system default width when creating.
11158 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 11159
048addec
JD
11160 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
11161 New window messages.
905cc05a 11162
048addec 111632002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 11164
048addec 11165 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 11166
048addec 111672002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 11168
048addec 11169 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 11170
048addec 111712002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 11172
048addec 11173 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 11174
048addec 111752002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 11176
048addec
JD
11177 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
11178 that Windows returns. If a double check fails, try to guess how
11179 ExtTextOut is going to act.
4d0fa4f3 11180
048addec
JD
11181 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
11182 in place of stricmp.
11183 (w32_list_synthesized_fonts): Removed.
11184 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
11185 (struct enumfont_t): New element; list.
11186 (enum_font_cb2): List all style and charset variations of a font.
11187 (Fw32_select_font): New optional argument; include_proportional.
11188 Exclude vertical fonts. Exclude proportional fonts unless
11189 include_proportional is non-nil.
11190 (w32_enable_synthesized_fonts): Change to a boolean.
11191 (Fw32_send_sys_command): Doc fix.
493faf20 11192
048addec 111932002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 11194
048addec
JD
11195 * dispnew.c (update_frame): Move the variable `tem' to the block
11196 where it is used.
4971e491 11197
048addec 111982002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 11199
048addec
JD
11200 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
11201 call to face-set-after-frame-default.
4971e491 11202
048addec 112032002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 11204
048addec
JD
11205 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
11206 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 11207
048addec 112082002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 11209
048addec
JD
11210 * window.c (enlarge_window): When exceeding size of parent,
11211 directly delete all the siblings instead of trying to resize it.
201c831a 11212
048addec 112132002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 11214
048addec 11215 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 11216
048addec 112172002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 11218
048addec 11219 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 11220
048addec 112212002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 11222
048addec
JD
11223 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
11224 is invisible. This can happen if cursor is on top line of a
11225 window, and we switch to a buffer with a header line.
d77fbc16 11226
048addec 11227 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 11228
048addec 112292002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 11230
048addec
JD
11231 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
11232 `dont_resize' only when used.
61e3b944 11233
048addec 11234 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 11235
048addec 112362002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 11237
048addec
JD
11238 * xdisp.c (display_mode_element): When computing charpos, depend
11239 on multibyteness of elt, not the text in field.
8af01033 11240
048addec 112412002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 11242
048addec
JD
11243 * buffer.c (Fkill_all_local_variables):
11244 Increment `update_mode_lines' only once.
7363986a 11245
048addec 112462002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 11247
048addec
JD
11248 * lisp.h (adjust_after_replace_noundo)
11249 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 11250
048addec 11251 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 11252
048addec 112532002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 11254
048addec
JD
11255 Support for the --color command-line argument and tty-color-mode
11256 frame parameter:
f1a85b89 11257
048addec
JD
11258 * term.c (tty_default_color_capabilities, tty_setup_colors)
11259 (set_tty_color_mode): New functions.
11260 (term_init): Call tty_default_color_capabilities.
11261 (Qtty_color_mode_alist): New variable.
11262 (syms_of_term): Intern and staticpro it.
f1a85b89 11263
048addec
JD
11264 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
11265 frames.
11266 (do_switch_frame): For termcap frames, switch the tty
11267 color mode as specified by the frame's parameters.
11268 (Qtty_color_mode): New variable.
11269 (syms_of_frame): Intern and staticpro it.
3a62677f 11270
048addec
JD
11271 * emacs.c (USAGE2): Add the --color option.
11272 (standard_args): Ditto.
72244db2 11273
048addec
JD
112742002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11275
11276 * xterm.h (struct x_output): New members want_fullscreen,
11277 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
11278 y_pixels_outer_diff.
11279 New enum for FULLSCREEN_* constants.
11280 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
11281 is NULL.
11282 (x_fullscreen_adjust): Add prototype.
3a62677f 11283
048addec
JD
11284 * emacs.c (USAGE2): Add the new full-screen arguments.
11285 (standard_args): Ditto.
3a62677f 11286
048addec
JD
11287 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
11288 New variables.
11289 (syms_of_xfns): Intern and staticpro them.
11290 (x_frame_parms) <"fullscreen">: New parameter.
11291 (x_fullscreen_move, x_set_fullscreen): New functions.
11292 (x_set_frame_parameters): Support for Qfullscreen.
11293 (x_real_positions): More accurate computation of the frame position.
11294 (x_figure_window_size): Support full-screen frames.
11295 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 11296
048addec
JD
11297 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
11298 (XTread_socket) <Expose>: Call x_check_fullscreen.
11299 <ConfigureNotify>: Don't resize to fullscreen.
11300 Call x_check_fullscreen_move, and set the want_fullscreen member of
11301 output_data.x.
3a62677f 11302
048addec 113032002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 11304
048addec
JD
11305 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
11306 for mice with more than 3 buttons.
b8523839 11307
048addec
JD
11308 * w32term.c (parse_button): New parameter xbutton. Callers changed.
11309 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 11310
048addec
JD
11311 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
11312 (syms_of_w32fns): DEFVAR_BOOL it.
11313 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 11314
048addec 113152002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 11316
048addec 11317 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 11318
048addec 113192002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 11320
048addec 11321 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 11322
048addec 113232002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 11324
048addec
JD
11325 * .gdbinit (xbuffer): Remove address operator since data is now a
11326 pointer.
c93674bb 11327
048addec 113282002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 11329
048addec 11330 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 11331
048addec 11332 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 11333
048addec 113342002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 11335
048addec
JD
11336 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
11337 when checking for multiple frames.
91175673 11338
048addec 113392002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 11340
048addec
JD
11341 * window.c (delete_window): Rewrite the code for changing the
11342 selected window to handle the case where WINDOW is not a leaf.
91175673 11343
048addec 113442002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 11345
048addec
JD
11346 * process.c (send_process): Set src_multibyte to 1 after the call
11347 top setup_coding_system, not before the call.
e0fead5d 11348
048addec 113492002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 11350
048addec
JD
11351 * xmenu.c (set_frame_menubar, xmenu_show):
11352 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 11353
048addec
JD
11354 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
11355 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 11356
048addec 113572002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 11358
048addec 11359 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 11360
048addec 11361 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 11362
048addec 11363 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 11364
048addec 113652002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 11366
048addec
JD
11367 * insdel.c (make_gap_larger): Make sure buffer size does not
11368 overflow range of int.
62854fe2 11369
048addec 113702002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 11371
048addec
JD
11372 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
11373 OVERLAPS_P.
656f46bb 11374
048addec 11375 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 11376
048addec
JD
11377 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
11378 to the left or to the right of the pointer, put it against
11379 the left screen edge.
11380 (x_frame_parms): Add missing braces around initializer.
036e218d 11381
048addec
JD
11382 * w32term.c (x_setup_relief_colors): Don't compute an image's
11383 background color if it doesn't have a Pixmap.
11384 (notice_overwritten_cursor): Don't depend on
11385 output_cursor and updated_area. Compare pixel coordinates with
11386 window's cursor pixel coordinates.
11387 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
11388 Call notice_overwritten_cursor with new arg list.
11389 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
11390 unconditionally.
11391 (x_draw_image_relief): Use predefined macro instead of
11392 constant when the value of `tool_bar_button_relief' is negative.
036e218d 11393
048addec 11394 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 11395
048addec 113962002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 11397
048addec 11398 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 11399
048addec 114002002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 11401
048addec
JD
11402 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
11403 (Fkey_binding): Try the `keymap' property map first.
11404 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
11405 minor mode bindings.
90647b07 11406
048addec 114072002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 11408
048addec 11409 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 11410
048addec 114112002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 11412
048addec
JD
11413 * keyboard.c (read_key_sequence): Handle the keymap property
11414 before minor mode maps.
9fbc32aa 11415
048addec
JD
11416 * editfns.c (Fformat): Update thissize from field_width
11417 based on the actual width, in the string case.
036e218d 11418
048addec 114192002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 11420
048addec
JD
11421 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
11422 when used as truth value to prevent gcc warnings.
9fbc32aa 11423
048addec
JD
11424 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
11425 * w32proc.c: Include <config.h>.
9fbc32aa 11426
048addec 114272002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 11428
048addec
JD
11429 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
11430 not EMACS_INT, to make them compatible with DEFVAR_INT.
11431 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 11432
048addec 114332002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 11434
048addec
JD
11435 * print.c (print_object): Test print_escape_nonascii only for
11436 unibyte strings.
11437 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
11438 when outputting to a multibyte buffer.
9fbc32aa 11439
048addec 114402001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 11441
048addec
JD
11442 * print.c (print_object): In multibyte string, use hex escapes.
11443 Use octal only for unibyte strings.
11444 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 11445
048addec
JD
11446 * lread.c (read_escape): New arg BYTEREP for reporting whether
11447 escape forces unibyte or multibyte.
11448 (read1): When reading a string, take note of that info.
0142178a 11449
048addec 114502001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 11451
048addec
JD
11452 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
11453 comparison to test lisp value returned by Fget.
d4824a5d 11454
048addec 114552001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 11456
048addec 11457 * lisp.h (max_specpdl_size): Add declaration.
b1356234 11458
048addec 11459 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 11460
048addec
JD
11461 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
11462 Handle modifier bits. Correct typo in error message.
99e380ee 11463
048addec 114642001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 11465
048addec
JD
11466 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
11467 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
11468 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
11469 Update calls to Fdefine_abbrev.
11470 (write_abbrev): Update for changed data format.
11471 Don't list "system" abbrevs.
11472 (Fexpand_abbrev): Update use count with new data format.
11473 (describe_abbrev): Update for changed data format.
11474 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 11475
048addec 11476 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 11477
048addec 11478 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 11479
048addec
JD
11480 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
11481 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 11482
048addec
JD
11483 * keymap.c (Flookup_key): Error message if key has wrong data type.
11484 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
11485 (exclude_key): New variable.
59a86c99 11486
048addec 114872001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 11488
048addec
JD
11489 * xterm.c (x_setup_relief_colors): Don't compute an image's
11490 background color if it doesn't have a Pixmap.
eb77a5f4 11491
048addec
JD
11492 * xterm.c (notice_overwritten_cursor): Don't depend on
11493 output_cursor and updated_area. Compare pixel coordinates with
11494 window's cursor pixel coordinates.
11495 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
11496 Call notice_overwritten_cursor with new arg list.
11497 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
11498 unconditionally.
eb77a5f4 11499
048addec
JD
11500 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
11501 height of the cursor line to the amount to scroll.
eb77a5f4 11502
048addec 115032001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 11504
048addec
JD
11505 * intervals.c (set_point_both): The position after an invisible,
11506 intangible character is not an acceptable stopping point.
bb313871 11507
048addec 115082001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 11509
048addec
JD
11510 * window.c (enlarge_window): In new preserve_before code, convert
11511 CURBEG from lisp object to integer before doing arithmetic.
6052529b 11512
048addec 115132001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 11514
048addec 11515 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 11516
048addec 115172001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 11518
048addec
JD
11519 * keyboard.c (record_char): Ignore duplicate help-echo events only
11520 separated by mouse-movement. When tracking mouse, only record
11521 first and last mouse-movement event in same window.
11522 Don't record mouse-movement events in keyboard macros.
3ce081f5 11523
048addec 115242001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 11525
048addec
JD
11526 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
11527 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 11528
048addec
JD
11529 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
11530 instead of Fstring_as_unibyte.
9fabb2f5 11531
048addec 115322001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 11533
048addec 11534 The following changes remove mocklisp support:
9fabb2f5 11535
048addec 11536 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 11537
048addec
JD
11538 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
11539 `Qmocklisp' and `Qmocklisp_arguments'.
11540 Remove prototype of syms_of_mocklisp.
2fa0eedf 11541
048addec 11542 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 11543
048addec
JD
11544 * callint.c: Do not include mocklisp.h.
11545 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 11546
048addec
JD
11547 * eval.c: Remove variables `Qmocklisp_arguments',
11548 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
11549 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
11550 Do not test for mocklisp case.
11551 (Fwhile): Remove unused variable `tem'.
11552 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 11553
048addec 11554 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 11555
048addec 11556 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 11557
048addec 11558 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 11559
048addec 115602001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 11561
048addec
JD
11562 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
11563 to the left or to the right of the pointer, put it against
11564 the left screen edge.
6108b49c 11565
048addec 115662001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 11567
048addec
JD
11568 * Makefile.in (distclean): Remove .gdbinit if we are building
11569 outside the source tree.
5eea19a4 11570
048addec 115712001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 11572
048addec 11573 * w32.c (emacs_root_dir): New function.
5eea19a4 11574
048addec 11575 * msdos.c (emacs_root_dir): New function.
5eea19a4 11576
048addec
JD
11577 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
11578 of the current drive as the fallback for default_directory.
438e57dd 11579
048addec
JD
11580 * dired.c (file_name_completion): Run the elements of
11581 completion-ignored-extensions through ENCODE_FILE.
438e57dd 11582
048addec
JD
11583 * lisp.h (scmp): Remove prototype, since it's now a static
11584 function private to dired.c.
c88e5347 11585
048addec 115862001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 11587
048addec
JD
11588 * dired.c (scmp): Function moved from minibuf.c.
11589 Delete multibyte handling--used only on encoded strings.
59ce1461 11590
048addec 11591 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 11592
048addec 11593 * fns.c (merge): Add QUIT call.
59ce1461 11594
048addec 115952001-12-18 Dave Love <fx@gnu.org>
8727d588 11596
048addec
JD
11597 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
11598 language/georgian.el.
8727d588 11599
048addec 116002001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 11601
048addec
JD
11602 * Makefile.in (lisp, shortlisp): Synchronize with changes to
11603 lisp/Makefile.in:DONTCOMPILE.
cc63037e 11604
048addec 116052001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 11606
048addec
JD
11607 * xdisp.c (window_box_height): Do not return negative values.
11608 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 11609
048addec 11610 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 11611
048addec 11612 * term.c (keys): Likewise.
deece6f5 11613
048addec 11614 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 11615
048addec 116162001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 11617
048addec
JD
11618 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
11619 patch (COMPOSING_P, not COMPOSING).
28ff4293 11620
048addec 116212001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 11622
048addec 11623 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 11624
048addec
JD
11625 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
11626 before calling decode_coding.
9b46de40 11627
048addec 11628 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 11629
048addec
JD
11630 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
11631 instead of only for COMPOSITION_DISABLED.
9b46de40 11632
048addec 116332001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 11634
048addec 11635 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 11636
048addec 11637 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 11638
048addec
JD
11639 * buffer.h (struct buffer): New field `display_error_modiff'.
11640 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 11641
048addec 11642 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 11643
048addec
JD
11644 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
11645 Call redisplay_window, but not if display_error_modiff field says no.
11646 (redisplay_window_error): New function.
11647 (displayed_buffer): New variable.
11648 (redisplay_internal, redisplay_windows): Call the new functions
11649 instead of redisplay_window directly.
2cd23960 11650
048addec 116512001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 11652
048addec 11653 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 11654
048addec 116552001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 11656
048addec
JD
11657 * makefile.w32-in (EMACSLOADPATH): Define.
11658 ($(EMACS)): Run `list-load-path-shadows' after dumping emacs.
11659 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 11660
048addec 116612001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 11662
048addec
JD
11663 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
11664 parameter have a numeric value all the time.
f6fa0866 11665
048addec 11666 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 11667
048addec 116682001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 11669
048addec 11670 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 11671
048addec
JD
11672 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
11673 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 11674
048addec 116752001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 11676
048addec
JD
11677 * xdisp.c (move_it_vertically_backward): Change heuristic
11678 for the case that we didn't move far enough initially.
91c153e2 11679
048addec
JD
11680 * window.c (Frecenter): Simplify computation in the case of window
11681 system frames and ARG < 0; use window_box_height.
65b7d3e7 11682
048addec 116832001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 11684
048addec
JD
11685 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
11686 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 11687
048addec 116882001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 11689
048addec
JD
11690 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
11691 arg is negative.
be676094 11692
048addec 116932001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 11694
048addec
JD
11695 * m/hp800.h: Split the __hpux conditional into the parts
11696 that are right for GNU/Linux too and the parts that are not.
11697 Use the former if GNU_LINUX.
11698 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 11699
048addec 11700 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 11701
048addec 117022001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 11703
048addec
JD
11704 * macros.c, msdos.c, w16select.c: Change doc-string comments to
11705 `new style' [w/`doc:' keyword].
032a857d 11706
048addec 117072001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 11708
048addec
JD
11709 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
11710 before using.
b6270150 11711
048addec 117122001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 11713
048addec
JD
11714 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
11715 keyword].
98cbb9fa 11716
048addec 117172001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 11718
048addec 11719 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 11720
048addec 11721 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 11722
048addec 117232001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 11724
048addec
JD
11725 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
11726 Add comment to explain where the struct came from.
11727 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
11728 (add_menu_item): Process pop-up menus first to avoid memory leak.
11729 (add_menu_item, w32_menu_display_help): Use `help' field as
11730 Lisp_Object.
11731 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 11732
048addec 117332001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 11734
048addec 11735 * COPYING: Moved back.
fa336b91 11736
048addec
JD
11737 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
11738 Add parentheses around && within ||.
077907d4 11739
048addec 11740 * indent.c (compute_motion): Likewise.
aa2af83a 11741
048addec 11742 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 11743
048addec
JD
11744 * coding.c (setup_coding_system, shrink_encoding_region)
11745 (Fdecode_sjis_char): Likewise.
60a653f1 11746
048addec 117472001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 11748
048addec
JD
11749 * xdisp.c (display_mode_element): Don't read past end of string if
11750 it ends with '%'.
60a653f1 11751
048addec
JD
11752 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
11753 can hold.
60a653f1 11754
048addec
JD
11755 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
11756 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
11757 type changed to Lisp_Object.
11758 (syms_of_data): DEFVAR_LISP them.
60a653f1 11759
048addec 117602001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 11761
048addec
JD
11762 * callproc.c (init_callproc): Set Vdata_directory based on the source
11763 location whenever Emacs was run uninstalled.
60a653f1 11764
048addec 117652001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 11766
048addec
JD
11767 * config.in (HAVE_WORKING_VFORK): New #undefs.
11768 * process.c (create_process):
11769 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
11770 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
11771 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
11772 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
11773 * m/intel386.h (HAVE_VFORK): Likewise.
11774 * m/mips-siemens.h (HAVE_VFORK): Likewise.
11775 * m/mips.h (HAVE_VFORK): Likewise.
11776 * s/freebsd.h (vfork): Remove #define.
11777 * s/lynxos.h (HAVE_VFORK): Remove #undef.
11778 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 11779
048addec 117802001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 11781
048addec
JD
11782 * s/hpux10.h (random): Add undef.
11783 (HAVE_RANDOM): Define it just once.
60a653f1 11784
048addec 117852001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11786
048addec 11787 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 11788
048addec 117892001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 11790
048addec
JD
11791 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
11792 scroll bars of the frame before deleting the frame itself. If the
11793 frame has a widget, delete the frame with XtDestroyWidget, and do
11794 not call XDestroyWindow before that.
60a653f1 11795
048addec 117962001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 11797
048addec 11798 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 11799
048addec 11800 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 11801
048addec 118022001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 11803
048addec
JD
11804 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
11805 excessively large.
60a653f1 11806
048addec
JD
11807 * insdel.c (make_gap_larger): New function.
11808 (make_gap_smaller): New function.
11809 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
11810 Call make_gap_smaller if arg is negative.
60a653f1 11811
048addec 118122001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11813
048addec
JD
11814 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
11815 Pass a dummy argument when calling interrupt_signal.
11816 (parse_menu_item): Mark disabled items before checking for empty def.
11817 (read_char_minibuf_menu_prompt): Make safety more visible.
11818 (read_key_sequence): Add a `first_unbound' variable.
11819 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
11820 unbound prefix as soon as we can detect it.
60a653f1 11821
048addec
JD
11822 * doc.c (Fsnarf_documentation): Add prototype.
11823 (get_doc_string): Handle negative arguments.
11824 (Fdocumentation): Use AREF and ASIZE.
11825 Move the calls to get_doc_string to a single place.
11826 Don't confuse an interactive-spec for a docstring reference.
11827 (Fdocumentation_property): Take advantage of the fact that
11828 get_doc_string now ignores the sign of the docstring position.
60a653f1 11829
048addec 11830 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 11831
048addec 118322001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11833
a64387ee 11834 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
60a653f1 11835
048addec 118362001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11837
048addec
JD
11838 * xterm.c (x_draw_image_relief): Use predefined macro instead of
11839 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 11840
048addec 118412001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 11842
048addec
JD
11843 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
11844 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 11845
048addec 11846 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 11847
048addec 118482001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11849
048addec 11850 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 11851
048addec 118522001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 11853
048addec 11854 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 11855
048addec 118562001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 11857
048addec 11858 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 11859
048addec
JD
11860 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
11861 [!WM_MOUSELEAVE]: Define.
60a653f1 11862
048addec
JD
11863 * w32menu.c (current_popup_menu, get_menu_item_info):
11864 (set_menu_item_info): New vars.
11865 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
11866 (w32_menu_show): Set current_popup_menu.
11867 (add_menu_item): Allocate new strings for owner-drawn menu items
11868 and help strings.
11869 Use owner-draw for disabled menu items again.
11870 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
11871 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 11872
048addec
JD
11873 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
11874 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
11875 <WM_EXITMENULOOP>: Free menu strings.
11876 <WM_MOUSELEAVE>: Stop tracking mouse.
11877 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 11878
048addec
JD
11879 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
11880 and mouse face.
60a653f1 11881
048addec 118822001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 11883
048addec
JD
11884 The following changes add left-fringe and right-fringe
11885 frame parameters to adjust fringe widths, or remove one or
11886 both fringes.
60a653f1 11887
048addec
JD
11888 * frame.h (struct frame): Remove trunc_area_pixel_width and
11889 trunc_area_cols fields.
11890 (Qleft_fringe, Qright_fringe): Declare.
11891 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 11892
048addec
JD
11893 * frame.c (Qleft_fringe, Qright_fringe): New vars.
11894 (syms_of_frame): Initialize them.
60a653f1 11895
048addec
JD
11896 * window.c (coordinates_in_window): Handle separate left and right
11897 fringe widths.
60a653f1 11898
048addec
JD
11899 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
11900 and fringe_cols fields.
11901 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
11902 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
11903 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
11904 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
11905 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
11906 (x_compute_fringe_widths): Add prototype.
60a653f1 11907
048addec
JD
11908 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
11909 fill fringe evenly with small dashes.
11910 (x_draw_fringe_bitmap): Clear background if necessary. Align and
11911 clip the new ZV bitmap to avoid jitter between rows.
11912 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
11913 background. Don't draw fringe bitmaps if fringe width is zero.
11914 (x_compute_fringe_widths): New function.
11915 (x_new_font, x_set_window_size_1): Use it.
60a653f1 11916
048addec
JD
11917 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
11918 (x_set_frame_parameters): Process `font' parameter before other
11919 parameters as fringe widths depend on it.
11920 (x_set_fringe_width): New function.
11921 (x_figure_window_size): Use x_compute_fringe_widths.
11922 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
11923 parameters.
60a653f1 11924
048addec
JD
11925 * widget.c (set_frame_size): Use x_compute_fringe_widths.
11926 (EmacsFrameSetCharSize): Ditto.
60a653f1 11927
048addec
JD
11928 * w32term.h: Merged changes from xterm.h.
11929 * w32term.c: Merged changes from xterm.c.
11930 * w32fns.c: Merged changes from xfns.c.
60a653f1 11931
048addec 119322001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11933
048addec 11934 * COPYING: Removed.
60a653f1 11935
048addec 119362001-11-29 Dave Love <fx@gnu.org>
60a653f1 11937
048addec
JD
11938 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
11939 extra extra slot.
11940 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 11941
048addec 119422001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11943
048addec
JD
11944 * fileio.c (file-name-coding-system)
11945 (default-file-name-coding-system): Doc fix (links to referenced
11946 variables added).
60a653f1 11947
048addec 119482001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11949
048addec
JD
11950 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
11951 Add dummy uses of gcproN variables.
60a653f1 11952
048addec
JD
11953 * category.c (describe_category, describe_category_1)
11954 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
11955 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 11956
048addec 119572001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 11958
048addec 11959 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 11960
048addec
JD
11961 * Makefile.in (lispdir): New variable, referring to build dir.
11962 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 11963
048addec 119642001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 11965
048addec
JD
11966 * w32menu.c (w32_menu_display_help): Actually add the new argument
11967 OWNER.
60a653f1 11968
048addec 119692001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 11970
048addec
JD
11971 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
11972 menu items. From David Ponce <dponce@wanadoo.fr>.
11973 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
11974 conditionally.
11975 (w32_menu_display_help): New argument OWNER. Rewritten to store a
11976 help event in the owner frame's keyboard buffer.
60a653f1 11977
048addec
JD
11978 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
11979 (Fx_show_tip): Don't subtract last width from row width.
11980
11981 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
11982 (w32_read_socket): Use EQ to compare frames.
60a653f1 11983
048addec 119842001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 11985
048addec
JD
11986 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
11987 OVERLAPS_P.
60a653f1 11988
048addec 119892001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11990
048addec
JD
11991 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
11992 `gcpro3' and `gcpro4'.
60a653f1 11993
048addec 11994 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 11995
048addec 119962001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11997
048addec 11998 * ccl.c: Use AREF and ASIZE.
60a653f1 11999
048addec 120002001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12001
048addec
JD
12002 * lisp.h (run_hook_list_with_args): Remove.
12003 (LIST_END_P): Fix call to wrong_type_argument.
12004 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 12005
048addec 120062001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12007
048addec
JD
12008 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
12009 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 12010
048addec
JD
12011 * eval.c: Use AREF and ASIZE.
12012 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 12013
048addec
JD
12014 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
12015 which match the end of the file-name.
12016 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
12017 is not a valid env var, but leave it as is instead.
60a653f1 12018
048addec
JD
12019 * keymap.c (access_keymap): Handle t bindings like nil bindings.
12020 Make nil bindings in char-tables transparent.
12021 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 12022
048addec 120232001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 12024
048addec
JD
12025 * textprop.c (set_text_properties_1): Allow START, END in either order.
12026 Do nothing if range is empty.
60a653f1 12027
048addec 12028 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 12029
048addec
JD
12030 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
12031 (clean): Not here.
60a653f1 12032
048addec 120332001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12034
048addec
JD
12035 * textprop.c (set_text_properties_1): Clearly mark that the
12036 interval should not be empty.
60a653f1 12037
048addec
JD
12038 * intervals.c (graft_intervals_into_buffer):
12039 Don't call set_text_properties_1 on an empty interval.
60a653f1 12040
048addec 120412001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 12042
048addec 12043 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 12044
048addec
JD
12045 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
12046 don't lose the data in it.
60a653f1 12047
048addec 120482001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 12049
048addec 12050 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 12051
c62aec78 12052 * buffer.c (Fkill_buffer): Likewise.
60a653f1 12053
c62aec78 12054 * print.c (temp_output_buffer_setup): Likewise.
60a653f1 12055
048addec 120562001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12057
048addec 12058 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 12059
048addec 120602001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 12061
048addec
JD
12062 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
12063 Niemitalo <kon@iki.fi>.
60a653f1 12064
048addec 120652001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 12066
048addec 12067 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 12068
048addec
JD
12069 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
12070 (Fx_show_tip): Block input during frame creation.
12071 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 12072
048addec 120732001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 12074
048addec
JD
12075 * lread.c (Fload): Detect recursive load error for more than 3
12076 nestings of the same file.
12077 (Vrecursive_load_depth_limit): Variable deleted.
12078 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 12079
048addec 120802001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 12081
048addec
JD
12082 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
12083 mouse position if either left or top is not specified.
60a653f1 12084
048addec
JD
12085 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
12086 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
12087 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
12088 (my_create_tip_window): Assign tip_window.
12089 (x_create_tip_frame): Use same defaults as X.
12090 (compute_tip_xy): Remove unused variable. Use full screen width.
12091 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 12092
048addec
JD
12093 * w32term.c (x_after_update_window_line): Doc fix.
12094 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
12095 frames.
12096 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 12097
048addec
JD
12098 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
12099 for all Windowed systems.
60a653f1 12100
048addec 121012001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 12102
048addec
JD
12103 * msdos.c (IT_clear_screen): If the frame's faces are not yet
12104 realized, use the initial screen colors to clear the screen.
60a653f1 12105
048addec 121062001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 12107
048addec
JD
12108 * textprop.c (Fset_text_properties): Remove unused variables
12109 `unchanged', `prev_changed', `s' and `len'.
60a653f1 12110
048addec
JD
12111 * search.c (Freplace_match): Remove unused variable `inslen'.
12112
12113 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
12114
121152001-11-22 Jason Rumney <jasonr@gnu.org>
12116
12117 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
12118 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
12119 (my_create_tip_window): New function.
12120 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
12121 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
12122
121232001-11-20 Jason Rumney <jasonr@gnu.org>
12124
12125 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
12126 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
12127
12128 * w32fns.c (Vw32_system_coding_system): Remove.
12129 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
12130
121312001-11-19 Stefan Monnier <monnier@cs.yale.edu>
12132
12133 * fileio.c (Fwrite_region): Move choose_write_coding_system to
12134 after build_annotations.
12135
12136 * syntax.c (describe_syntax): Add dummy arg.
12137 (describe_syntax_1): Update call to describe_vector.
12138
12139 * category.c (describe_category): Add dummy arg.
12140 (describe_category_1): Update call to describe_vector.
12141
12142 * keymap.c (Fdescribe_vector): Add `describer' parameter.
12143 (describe_command, describe_translation): Add dummy second param.
12144 (describe_map): Call elt_describer with two arguments.
12145 (describe_vector_princ): Add `fun' parameter.
12146 Call it instead of the hardcoded `princ'.
12147 (describe_vector): Add arg `args'.
12148 Pass it as a new second argument to elt_describer.
60a653f1 12149
048addec 12150 * keymap.h (describe_vector): Update prototype.
60a653f1 12151
048addec
JD
12152 * frame.c: Don't include keymap.h any more.
12153 (keys_of_frame): Remove.
60a653f1 12154
048addec 12155 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 12156
048addec 12157 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 12158
048addec 121592001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 12160
048addec
JD
12161 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
12162 if defined, 0 otherwise.
12163 (MAP_FAILED): Define if not defined and use it to test mmap failure.
12164 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 12165
048addec 121662001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 12167
048addec 12168 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 12169
048addec 121702001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 12171
048addec
JD
12172 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
12173 (x_draw_bar_cursor): If the background color of the glyph under
12174 the cursor equals the frame's cursor color, use the glyph's
12175 foreground color for drawing the bar cursor.
12176 (x_after_update_window_line): Clear internal border in different
12177 circumstances.
12178 (w32_set_vertical_scroll_bar): Check for width and height > 0.
12179 (w32_draw_relief_rect): Correct relief by 1 pixel.
12180 (x_set_glyph_string_background_width):
12181 Set extends_to_end_of_line_p if the row's fill_line_p is set and
12182 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
12183 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
12184 if cursor_in_non_selected_windows is false.
12185 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
12186 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
12187 Notice if cursor gets overwritten.
12188 (notice_overwritten_cursor): Renamed from
12189 note_overwritten_text_cursor. Rewritten to take glyph widths
12190 into account, and to take X positions as parameters.
12191 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
12192 around call to x_draw_glyphs.
12193 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
12194 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
12195 color to use for image glyph reliefs.
12196 (x_draw_image_relief): Accept zero tool_bar_button_relief.
12197 (glyph_rect): Remove unused variable `area'.
60a653f1 12198
048addec
JD
12199 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
12200 some items.
12201 (x_set_internal_border_width): Set frame garbaged when window
12202 doesn't exist yet.
12203 (Fx_create_frame): Accept zero tool_bar_button_relief.
12204 (x_clear_image_1, four_corners_best, image_background)
12205 (image_background_transparent): New functions.
12206 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
12207 (gs_format): Add `:background' entry.
12208 (lookup_image): Set IMG's background color if specified.
12209 (pbm_load, xbm_load_image, png_load): Set IMG's background field
12210 when appropriate.
12211 (x_clear_image_1): Reset `background_valid' and
12212 `background_transparent_valid' fields.
12213 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
12214 calculating it here. Set IMG's background_transparent field.
12215 (enum xpm_keyword_index): Add XPM_BACKGROUND.
12216 (enum png_keyword_index): Add PNG_BACKGROUND.
12217 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
12218 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
12219 (enum gif_keyword_index): Add GIF_BACKGROUND.
12220 (enum gs_keyword_index): Add GS_BACKGROUND.
12221 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
12222 Pre-calculate image background color where necessary.
12223 (x_create_x_image_and_pixmap, xbm_load, gs_load):
12224 Use display info's n_cbits entry for screen depth.
12225 (Fx_show_tip): Remove unused variables `buffer', `top',
12226 `left', `max_width' and `max_height'.
60a653f1 12227
048addec 12228 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 12229
048addec 122302001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 12231
048addec 12232 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 12233
048addec 122342001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 12235
048addec 12236 * frame.c (Fframe_live_p): Doc fix.
60a653f1 12237
048addec 122382001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 12239
048addec
JD
12240 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
12241 (message_dolog_marker3): New static variables hold three markers.
12242 (syms_of_xdisp): Initialize and staticpro them.
12243 (message_dolog): Use message_dolog_marker1..3 instead of
12244 allocating markers each time. Unchain them when done.
60a653f1 12245
048addec 122462001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 12247
048addec 12248 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 12249
048addec 122502001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 12251
048addec 12252 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 12253
048addec 122542001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 12255
048addec 12256 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 12257
048addec 122582001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 12259
048addec 12260 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 12261
048addec 122622001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 12263
048addec
JD
12264 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
12265 with invalid position.
60a653f1 12266
048addec 122672001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 12268
048addec 12269 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 12270
048addec
JD
12271 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
12272 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
12273 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 12274
048addec 12275 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 12276
048addec 122772001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12278
048addec
JD
12279 * fileio.c (build_annotations): Split off the tail.
12280 (build_annotations_2): New fun. Extracted from build_annotations.
12281 (Fwrite_region): Split the call to build_annotations into two
12282 calls to build_annotations and build_annotations_2.
077907d4 12283
048addec 122842001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 12285
048addec
JD
12286 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
12287 clear_waiting_for_input with argument.
1756e2fb 12288
048addec 12289 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 12290
048addec 12291 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 12292
048addec 12293 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 12294
048addec 12295 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 12296
048addec 122972001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 12298
048addec
JD
12299 * fileio.c (choose_write_coding_system): New fun, extracted
12300 from Fwrite_region.
12301 (Fwrite_region): Use it.
fa336b91 12302
048addec
JD
12303 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
12304 (funcall_lambda, run_hook_with_args): Make static and add prototype.
12305 (ml_apply, find_handler_clause): Add prototype.
fa336b91 12306
048addec 123072001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 12308
048addec 12309 * config.in: Add #undef HAVE_COFF_H.
fa336b91 12310
048addec
JD
12311 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
12312 Required for ISC 4.1.
fa336b91 12313
048addec 123142001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 12315
048addec
JD
12316 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
12317 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 12318
048addec 123192001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 12320
048addec
JD
12321 The following changes are made to clean up the various internal
12322 references to the fringes to actually use the term `fringe' for
12323 them. Previously, they were called `flags areas', `bitmap areas',
12324 `left/right side of windows', or implicitly as `flags' or
12325 `bitmaps':
fa336b91 12326
048addec
JD
12327 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
12328 Comments fixed. Use renamed symbols.
06e8f738 12329
048addec 12330 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 12331
048addec
JD
12332 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
12333 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
12334 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 12335
048addec 12336 * msdos.c: Comment fix.
9ce647f4 12337
048addec 12338 * w32fns.c: Use renamed symbols.
9b784ab8 12339
048addec
JD
12340 * w32term.c: Comment fixes. Use renamed symbols.
12341 (fringe_bitmap_type): Renamed from bitmap_type.
12342 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
12343 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
12344 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 12345
048addec
JD
12346 * w32term.h: Comment fixes. Use renamed symbols.
12347 (fringes_extra): Renamed from flags_areas_extra.
12348 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
12349 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
12350 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
12351 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
12352 (FRAME_X_LEFT_FRINGE_WIDTH):
12353 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
12354 (FRAME_X_RIGHT_FRINGE_WIDTH):
12355 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 12356
048addec 12357 * widget.c: Use renamed symbols.
9f7e52b4 12358
048addec
JD
12359 * window.c: Comment fixes. Use renamed symbols.
12360 (coordinates-in-window-p): Doc fix.
fa336b91 12361
048addec 12362 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 12363
048addec 12364 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 12365
048addec 12366 * xfns.c: Use renamed symbols.
89512fcd 12367
048addec
JD
12368 * xterm.c: Comment fixes. Use renamed symbols.
12369 (fringe_bitmap_type): Renamed from bitmap_type.
12370 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
12371 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
12372 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 12373
048addec
JD
12374 * xterm.h: Comment fixes. Use renamed symbols.
12375 (fringes_extra): Renamed from flags_areas_extra.
12376 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
12377 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
12378 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
12379 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
12380 (FRAME_X_LEFT_FRINGE_WIDTH):
12381 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
12382 (FRAME_X_RIGHT_FRINGE_WIDTH):
12383 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
12384
123852001-11-15 Jason Rumney <jasonr@gnu.org>
12386
12387 * w32menu.c (add-menu-item): Make help_echo and radio buttons
12388 work for most menu items. From David Ponce
12389 <david.ponce@wanadoo.fr>.
12390
123912001-11-15 Gerd Moellmann <gerd@gnu.org>
12392
12393 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
12394 Some x_set_* function expect to be called even if old and new
12395 value are equal.
12396
12397 * xdisp.c (build_desired_tool_bar_string): Accept zero
12398 tool_bar_button_relief.
12399
12400 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
12401
12402 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
12403
12404 * xterm.c (x_draw_bar_cursor): If the background color of the
12405 glyph under the cursor equals the frame's cursor color, use
12406 the glyph's foreground color for drawing the bar cursor.
12407
12408 * dispnew.c (direct_output_forward_char): Fix character/byte
12409 position comparison.
7d18891d 12410
048addec 124112001-11-15 Miles Bader <miles@gnu.org>
d2936d21 12412
048addec
JD
12413 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
12414 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
12415 Update arguments to find_field.
12416 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
12417 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
12418 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
12419 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 12420
048addec 124212001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 12422
048addec 12423 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 12424
048addec
JD
12425 * dispextern.h (image_background, image_background_transparent):
12426 Conditionalize on HAVE_X_WINDOWS.
7d18891d 12427
048addec 124282001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 12429
048addec 12430 * print.c (Fprin1_to_string): Doc fix.
7d18891d 12431
048addec 12432 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 12433
048addec 12434 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 12435
048addec 12436 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 12437
048addec 12438 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 12439
048addec 12440 * eval.c (syms_of_eval): Doc fix.
7d18891d 12441
048addec 12442 * coding.c (syms_of_coding): Doc fix.
7d18891d 12443
048addec 12444 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 12445
048addec 12446 * dispnew.c (syms_of_display): Doc fix.
9474c847 12447
048addec 12448 * category.c (Fget_unused_category): Doc fix.
9474c847 12449
048addec 12450 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 12451
048addec 124522001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 12453
048addec 12454 * print.c (prin1, print): Doc fix.
e3059a5d 12455
048addec 124562001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 12457
048addec
JD
12458 * fontset.h: Remove declarations of variables
12459 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 12460
048addec
JD
12461 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
12462 `Vclip_large_size_font'.
eae936e2 12463
048addec 124642001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 12465
048addec 12466 * w32fns.c: Doc fix.
ddb67bdc 12467
048addec 124682001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 12469
048addec 12470 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 12471
048addec 12472 * fns.c: Doc fix.
6e1b91d7 12473
048addec 12474 * emacs.c: Doc fix.
1c1d3d69 12475
048addec 12476 * coding.c: Doc fix.
1c1d3d69 12477
048addec
JD
12478 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
12479 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
12480 `new style' [w/`doc:' keyword].
b6f4c7ba 12481
048addec 124822001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 12483
048addec
JD
12484 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
12485 LeaveNotify events. Only FocusIn and FocusOut do that now.
12486 (x_display_and_set_cursor): Do display hollow cursors in active
12487 minibuffer windows when they are not selected.
b6f4c7ba 12488
048addec 124892001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 12490
048addec
JD
12491 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
12492 * w32term.c: Change doc-string comments to `new style'.
12493 [w/`doc:' keyword]. Doc fixes.
a89f435d 12494
048addec
JD
12495 * w32fns.c: Don't define max.
12496 (Fx_open_connection): Only execute once.
a4cd0cd7 12497
048addec 124982001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 12499
048addec
JD
12500 * ccl.c: Change macros to use do-while block instead of if-else.
12501 Use braces to follow GNU Coding Standards.
eafb659a 12502
048addec 125032001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 12504
048addec 12505 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 12506
048addec 12507 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 12508
048addec
JD
12509 * insdel.c (replace_range): Use adjust_markers_for_replace
12510 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 12511
048addec 12512 * intervals.h: Declare set_text_properties and set_text_properties_1.
a4cd0cd7 12513
048addec
JD
12514 * textprop.c (set_text_properties_1): New subroutine
12515 broken out of set_text_properties.
12516 (set_text_properties): Use set_text_properties_1.
91823618 12517
048addec
JD
12518 * intervals.c (graft_intervals_into_buffer):
12519 Use set_text_properties_1 to clear out properties.
91823618 12520
048addec
JD
12521 * search.c (Freplace_match): Use replace_range to insert
12522 and delete. Don't request property inheritance from
12523 surrounding text.
86928dfb 12524
048addec 125252001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 12526
048addec
JD
12527 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
12528 vertical fonts. Allow them if face name is explicitly specified.
12529 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 12530
048addec 125312001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 12532
048addec
JD
12533 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
12534 instead of malloc/free.
a78e0303 12535
048addec 125362001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 12537
048addec
JD
12538 * xfaces.c (merge_face_vectors): Use braces to follow GNU
12539 Coding Standards.
12540 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 12541
048addec 12542 * buffer.c (Fbury_buffer): Likewise.
0c99b139 12543
048addec 12544 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 12545
048addec
JD
12546 * coding.c (encode_coding): Use precomputed value of `src'.
12547 (encode_coding): Remove unused variable `src_end'.
12548 (code_convert_region): Remove unused variables `count'.
830ddd77 12549
048addec 125502001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 12551
048addec
JD
12552 * w32term.c (x_display_and_set_cursor): Do not move system caret
12553 if cursor_glyph is NULL.
55c6d645 12554
048addec 125552001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 12556
048addec 12557 * keymap.c (access_keymap): Fix compilation error.
5de38842 12558
048addec 125592001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 12560
048addec 12561 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 12562
048addec 125632001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 12564
048addec
JD
12565 * intervals.c (graft_intervals_into_buffer):
12566 Remove #ifdef'd-out code.
12567 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 12568
048addec
JD
12569 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
12570 code (eval-current-buffer).
12571 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 12572
048addec 125732001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 12574
048addec 12575 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 12576
048addec 125772001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 12578
048addec 12579 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 12580
048addec
JD
12581 * keyboard.c (make_lispy_event): Check integerness and fix
12582 Lisp_Object/int mixup.
17893c65 12583
048addec 125842001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 12585
048addec 12586 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 12587
048addec
JD
12588 * fontset.c (fontset_font_pattern): Remove unused variable
12589 `family_registry'.
d5360cc7 12590
048addec 12591 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 12592
048addec 125932001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 12594
048addec 12595 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 12596
048addec
JD
12597 * buffer.c (Fkill_buffer): Don't delete auto save file
12598 if buffer is modified.
d9d54213 12599
048addec 126002001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 12601
048addec
JD
12602 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
12603 CHECK_NUMBER_CDR.
b116830b 12604
048addec 126052001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 12606
048addec 12607 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 12608
048addec 126092001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 12610
048addec 12611 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 12612
048addec 126132001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 12614
048addec 12615 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 12616
048addec 126172001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 12618
048addec
JD
12619 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
12620 the program image directly.
982f6c7e 12621
048addec 126222001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 12623
048addec 12624 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 12625
048addec 126262001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 12627
048addec
JD
12628 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
12629 and CHECK_BUFFER.
d31053f9 12630
048addec
JD
12631 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
12632 (record_char): Likewise.
d31053f9 12633
048addec
JD
12634 * keyboard.c (make_lispy_event): Don't insist a drag event must
12635 move to a different buffer position. Instead, check for moving at
12636 least double_click_fuzz.
982f6c7e 12637
048addec 12638 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 12639
048addec 12640 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 12641
048addec
JD
12642 * indent.c (current_column_1, Fmove_to_column): Separate the code
12643 for display-table glyphs from the code for buffer text, to fix
12644 bugs in the former.
830047fd 12645
048addec 126462001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 12647
048addec
JD
12648 * buffer.c (Fbuffer_local_value): New function.
12649 (syms_of_buffer): Defsubr it.
2df5238c 12650
048addec
JD
12651 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
12652 value of `cursor-in-non-selected-windows'.
4e397688 12653
048addec
JD
12654 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
12655 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
12656 (syms_of_xdisp): Initialize it.
48b0f3ae 12657
048addec 126582001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 12659
048addec 12660 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 12661
048addec
JD
12662 * coding.c: Change doc-string comments to `new style' [w/`doc:'
12663 keyword].
3ecaf7e5 12664
048addec
JD
12665 * eval.c (top_level_value, top_level_set): Remove commented and
12666 #ifdef'd-out code.
12667 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 12668
048addec 126692001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 12670
048addec 12671 * xfns.c: Include unistd.h, if it exists.
8db2e33b 12672
048addec 12673 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 12674
048addec 12675 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 12676
048addec 126772001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 12678
048addec
JD
12679 * lisp.h (CHECK_STRING_CAR): New macro.
12680 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
12681 treating XCAR and XCDR as lvalues.
12682 (openp): Use CHECK_STRING_CAR.
12683 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 12684
048addec 126852001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 12686
048addec
JD
12687 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
12688 (SIGMASKTYPE): Define.
1b1acc13 12689
048addec 12690 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 12691
048addec 126922001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 12693
048addec
JD
12694 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
12695 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
12696 Fix typos in comments.
6cb16f95 12697
048addec
JD
12698 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
12699 and #ifdef'd-out code.
12700 Fix and reindent comments.
6cb16f95 12701
048addec 12702 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 12703
048addec
JD
12704 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
12705 argument `i' in macros.
6cb16f95 12706
048addec
JD
12707 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
12708 `i' in macros.
7e9d3c2f 12709
048addec
JD
12710 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
12711 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
12712 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
12713 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
12714 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
12715 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
12716 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
12717 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
12718 in macros.
7e9d3c2f 12719
048addec
JD
12720 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
12721 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
12722 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
12723 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
12724 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
12725 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
12726 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
12727 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
12728 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
12729 (remove unused second argument).
7e9d3c2f 12730
048addec 127312001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 12732
048addec
JD
12733 * syntax.c (describe_syntax): New wrapper.
12734 (Finternal_describe_syntax_value): Rename from describe_syntax.
12735 Don't insert space at front and \n at the end.
12736 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 12737
048addec
JD
12738 * regex.c (re_wctype): Try to fix some warnings.
12739 (regcomp, regexec): Don't forget the __restrict.
9ba48103 12740
048addec 127412001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 12742
048addec 12743 * textprop.c (Fget_char_property): Doc fix.
9ba48103 12744
048addec 127452001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 12746
048addec 12747 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 12748
048addec 12749 * data.c (Fsetq_default): Ditto.
c22e59e1 12750
048addec 12751 * callint.c (Finteractive): Ditto.
9271ed2c 12752
048addec 127532001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 12754
048addec
JD
12755 * macros.c: Don't include keymap.h any more.
12756
127572001-11-01 Richard M. Stallman <rms@gnu.org>
12758
12759 * data.c (Fmake_local_variable): Doc fix.
12760
12761 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
12762 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 12763
048addec 12764 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
12765 bindings along with or instead of the buffer local map.
12766 Make the overriding maps override what they should.
12767
f00691a3 127682001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
12769
12770 * window.c (grow_mini_window): Fix typo in comment.
12771
27188d11
GM
127722001-11-01 Gerd Moellmann <gerd@gnu.org>
12773
7b49b9d2
GM
12774 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
12775 (XTset_vertical_scroll_bar): Likewise.
12776
43f7c3ea
GM
12777 * xfns.c (x_build_heuristic_mask): Use four_corners_best
12778 instead of IMAGE_BACKGROUND.
c22e59e1 12779
b350c2e5
GM
12780 * xfns.c (four_corners_best): Reindent.
12781
c22e59e1 12782 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
12783 Handle :box so that it is possible to specify sexprs.
12784
bf00d461
EZ
127852001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
12786
12787 * s/hpux11.h: New file.
12788
f00691a3 127892001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 12790
2b209b97
PJ
12791 * emacs.c (USAGE1): Show command line option --no-window-system
12792 instead of --no-windows in usage.
12793 (standard_args): Rename --no-windows to --no-window-system.
12794 (bug_reporting_address): Follow Emacs coding conventions.
12795
9dbc9081
PJ
12796 * eval.c (Fcommandp): Doc fix.
12797 Change doc-string comments to `new style' [w/`doc:' keyword].
12798
4e10df59
PJ
12799 * frame.c (Fframe_live_p): Doc fix.
12800
12801 * buffer.c (selective-display-ellipses): Doc fix.
12802
dd387b25
GM
128032001-10-31 Gerd Moellmann <gerd@gnu.org>
12804
fe957e65
GM
12805 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
12806
dd387b25
GM
12807 * xfaces.c (realize_x_face): If C is not a single-byte character,
12808 set the face's colors_copied_bitwise_p instead of the defaulted_p
12809 members which have a different meaning.
12810 (free_face_colors): Do nothing for a face whose colors have been
12811 copied bitwise.
12812
c22e59e1 12813 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 12814
f00691a3 128152001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 12816
687784e8
PJ
12817 * marker.c, mocklisp.c: Change doc-string comments to `new style'
12818 [w/`doc:' keyword].
2e1280f8 12819
b9d9a9b9
GM
128202001-10-31 Gerd Moellmann <gerd@gnu.org>
12821
12822 * fns.c (require_unwind): Return Lisp_Object.
12823
f00691a3 128242001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 12825
fa1361cb
PJ
12826 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
12827 (last-input-char): Revert doc-string to be the same as the
12828 doc-string of `last-input-event'.
12829
6c465a15 12830 * xdisp.c: Fix typos in comments.
48400103 12831
eafa3196
GM
128322001-10-31 Gerd Moellmann <gerd@gnu.org>
12833
12834 * window.c (grow_mini_window): Handle case that the root
12835 window is already smaller than the nominal mininum height.
12836
747d3f2a
SM
128372001-10-30 Stefan Monnier <monnier@cs.yale.edu>
12838
bf9bb76f
SM
12839 * emacs.c (main): Don't call keys_of_macros any more.
12840
12841 * lisp.h (keys_of_macros): Remove.
12842
12843 * macros.c (keys_of_macros): Remove.
12844
747d3f2a
SM
12845 * xfaces.c (Fface_attribute_relative_p): Declare args.
12846
5e905a57
JR
128472001-10-30 Jason Rumney <jasonr@gnu.org>
12848
12849 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
12850 (enum_font_cb2): Ignore fonts with vertical orientation.
12851
3a426197
RS
128522001-10-30 Richard M. Stallman <rms@gnu.org>
12853
12854 * keyboard.c (Finput_pending_p): Doc fix.
12855
a742d646
GM
128562001-10-30 Gerd Moellmann <gerd@gnu.org>
12857
259cf6bc
GM
12858 * xterm.c (x_after_update_window_line): Don't run the code
12859 clearing in borders for rows whose visible height is 0.
12860
3f99f948
GM
12861 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
12862 resized_p flag is set. If not set, use the much less flickering
12863 method previously used.
12864
12865 * dispnew.c (change_frame_size_1): Set frame's resized_p.
12866
12867 * frame.h (struct frame) <resized_p>: New member.
12868
b4a3be43
GM
12869 * lread.c (to_multibyte): Ensure read_buffer is at least twice
12870 as large as the number of bytes to convert.
747d3f2a 12871
a742d646
GM
12872 * lread.c (to_multibyte): New function.
12873 (read1): Use it.
12874
cacbb9e9
EZ
128752001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
12876
12877 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
12878
99cb6b2f
GM
128792001-10-30 Gerd Moellmann <gerd@gnu.org>
12880
327f42ee 12881 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
12882 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
12883 if the row's fill_line_p is set and drawing the last glyph with
12884 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 12885
99cb6b2f
GM
12886 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
12887
8e8223e2
SM
128882001-10-29 Stefan Monnier <monnier@cs.yale.edu>
12889
12890 * xmenu.c: Include coding.h and charset.h.
12891 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
12892 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
12893 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
12894 Explicitly set wv->help. Use `TRUE' rather than `True'.
12895 (menu_help_callback): Use empty_string.
12896
12897 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
12898 (Fx_popup_dialog): Explicitly init f.
12899 (w32_menu_display_help): Use empty_string.
12900
4d083a8f
RS
129012001-10-29 Richard M. Stallman <rms@gnu.org>
12902
b2304472
RS
12903 * fns.c (Frequire): Detect recursive try to require the same
12904 feature 3 or more levels deep, and get error.
12905 (require_unwind): New subroutine.
12906 (require_nesting_list): New variable.
12907 (syms_of_fns): Init and staticpro it.
12908
4d083a8f
RS
12909 * print.c (print_object): Clarify indication of insertion type.
12910
2fe41216
EZ
129112001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
12912
90480000
EZ
12913 * coding.c (syms_of_coding): Document that locale-coding-system is
12914 used for decoding input on X.
12915
2fe41216
EZ
12916 * window.c (Fscroll_left, Fscroll_right): Doc fix.
12917
f00691a3 129182001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
12919
12920 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
12921 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
12922
60ebcfe8
GM
129232001-10-29 Gerd Moellmann <gerd@gnu.org>
12924
9a7bdceb
GM
12925 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
12926 use NO_CURSOR if cursor_in_non_selected_windows is false.
12927
3f08fcd2
GM
12928 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
12929 the slant attribute if FRAME is t.
12930
0ccfdad2
GM
12931 * xfns.c (x_set_internal_border_width): Set frame garbaged
12932 when X window doesn't exist yet.
12933
ef253080
GM
12934 * xterm.c (x_after_update_window_line): Clear internal border
12935 in different circumstances.
b116830b 12936
60ebcfe8
GM
12937 * xterm.c (XTread_socket) <KeyPress>: Don't use
12938 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
12939 <handa@etl.go.jp>.
12940
73d25f9c
EZ
129412001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
12942
12943 * m/ibms390.h: New file. From Adam Thornton
12944 <athornton@sinenomine.net>.
12945
cac1daf0
GM
129462001-10-28 Gerd Moellmann <gerd@gnu.org>
12947
053b3256 12948 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 12949
cac1daf0
GM
12950 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
12951 a loop counter.
12952
f00691a3 129532001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 12954
186486eb
PJ
12955 * emacs.c: Use argv[0] instead of emacs when -t was specified.
12956
4707d2d0
PJ
12957 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
12958 keyword].
12959 Fix typos in comments.
b116830b 12960
d883731c
PJ
12961 * emacs.c (bug_reporting_address): New function.
12962 Use it when displaying usage message.
12963
04012254
PJ
12964 * minibuf.c (read_minibuf): Remove unused external declaration of
12965 variable `Qread_only'.
12966
13b1a09c
PJ
12967 * keymap.c (access_keymap): Remove unused variable `charset'.
12968
5bbf4378
MB
129692001-10-28 Miles Bader <miles@gnu.org>
12970
12971 * xfaces.c (merge_face_heights): Handle TO being relative as well.
12972 Remove #ifdef'd-out code.
12973 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
12974 (syms_of_xfaces): Initialize them.
12975
1ce1e4ee
JR
129762001-10-27 Jason Rumney <jasonr@gnu.org>
12977
12978 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
12979 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
12980 position using the system caret.
12981
12982 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
12983 (w32_system_caret_height, w32_system_caret_x)
12984 (w32_system_caret_y): New variables for tracking system caret.
12985 (w32_initialize): Initialize them.
c2d53558 12986 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 12987
c2d53558
SM
12988 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
12989 New messages types.
1ce1e4ee
JR
12990
12991 * w32term.c (note_mouse_highlight): Clear old help_echo.
12992
f00691a3 129932001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 12994
bb4600a4
PJ
12995 * xterm.c: Fix typo in a comment.
12996
7db35a48
PJ
12997 * emacs.c: Fix typos in comments.
12998 Remove unnecessary spaces.
12999 Change doc-string comments to `new style' [w/`doc:' keyword].
13000 (USAGE2): Fix typos in usage string.
13001
a7248e4f
PJ
13002 * xterm.c: Fix typo in a comment.
13003
4e30ce42
PJ
13004 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
13005 emacs.c.
13006
62725a92
GM
130072001-10-27 Gerd Moellmann <gerd@gnu.org>
13008
798dbe1f 13009 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 13010 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
13011 farther backward when target_y was not reached.
13012
62725a92
GM
13013 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
13014 Display errno only if non-zero.
13015 (sound_warning): New function.
13016 (vox_configure): Don't treat failing to set sample rate as error.
13017 (various places): Improve error messages.
13018
d4e34d24
EZ
130192001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
13020
944e6f60
EZ
13021 * fileio.c (Faccess_file): Run the argument filename through
13022 Fexpand_file_name, before using it.
13023
d4e34d24
EZ
13024 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
13025 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
13026
38d2af0c
GM
130272001-10-26 Gerd Moellmann <gerd@gnu.org>
13028
da80a8d5
GM
13029 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
13030
38d2af0c
GM
13031 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
13032 Fix clearing in the case of scroll bars on the right.
c2d53558 13033
45de4a6f 130342001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
13035
13036 * w32gui.h (XImage): Add a dummy typedef.
13037
fbd5ceb2
GM
130382001-10-26 Gerd Moellmann <gerd@gnu.org>
13039
c2d53558 13040 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 13041
b23236fb
EZ
130422001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
13043
13044 * frame.c (Fframe_parameter): Fix last change.
13045
5d991fc4
EZ
13046 * fileio.c: Revert last change (which removed old commented-out
13047 version of expand-file-name). Add a comment that explains why
13048 this old version should not be removed.
13049
879eadc3
GM
130502001-10-25 Gerd Moellmann <gerd@gnu.org>
13051
75700ff2
GM
13052 * frame.c (Fframe_parameter): Fix a bug whereby some
13053 ``artificial'' frame parameters, like `minibuffer' were not
13054 obtained by calling Fframe_parameters.
13055
dfe92a6a
GM
13056 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
13057 cursor differently.
13058
879eadc3
GM
13059 * xdisp.c (move_it_vertically_backward): Compute line height
13060 differently. Add heuristic to try to be more compatible to 20.x.
13061
e1010ebe
SM
130622001-10-25 Stefan Monnier <monnier@cs.yale.edu>
13063
d73a471b
SM
13064 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
13065
d6da5a06
GM
13066 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
13067 boolean.
e1010ebe 13068
f66bd220
MB
130692001-10-25 Miles Bader <miles@gnu.org>
13070
13071 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
13072 BG is a pointer to a structure, not a structure.
13073 (gif_format, png_format): Add missing commas.
13074
d436d538
RS
130752001-10-24 Richard M. Stallman <rms@gnu.org>
13076
13077 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 13078 (syms_of_xfaces): Defsubr it.
d436d538 13079
f00691a3 130802001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
13081
13082 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
13083 variable `area'.
13084
f00691a3 130852001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 13086
c2d53558 13087 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 13088
e2a57b34
MB
130892001-10-25 Miles Bader <miles@gnu.org>
13090
13091 * dispextern.h (struct image): Add `background',
13092 `background_valid', and `background_transparent' fields.
13093 (image_background, image_background_transparent): New declarations.
13094 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
13095 * xfns.c (image_background, image_background_transparent)
13096 (four_corners_best): New functions.
c2d53558 13097 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
13098 (gs_format): Add `:background' entry.
13099 (lookup_image): Set IMG's background color if specified.
13100 (pbm_load, xbm_load_image, png_load): Set IMG's background field
13101 when appropriate.
13102 (x_clear_image_1): Reset `background_valid' and
13103 `background_transparent_valid' fields.
13104 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
13105 calculating it here. Set IMG's background_transparent field.
13106 (enum xpm_keyword_index): Add XPM_BACKGROUND.
13107 (enum png_keyword_index): Add PNG_BACKGROUND.
13108 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
13109 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
13110 (enum gif_keyword_index): Add GIF_BACKGROUND.
13111 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 13112 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
13113 Pre-calculate image background color where necessary.
13114 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
13115 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
13116 color to use for image glyph reliefs.
13117
b547b6e8
GM
131182001-10-24 Gerd Moellmann <gerd@gnu.org>
13119
d9e3b8c6
GM
13120 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
13121 in full-width rows.
c2d53558 13122
b547b6e8
GM
13123 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
13124 Fix clearing of area not covered by scroll bar.
13125
f00691a3 131262001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
13127
13128 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
13129 and `real_start'.
c2d53558 13130 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
13131 (glyph_rect): Remove unused variable `area'.
13132
76cb5e06
GM
131332001-10-24 Gerd Moellmann <gerd@gnu.org>
13134
bdbdebff 13135 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
13136
13137 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
13138 (row_containing_pos): Take additional argument DY.
13139 Treat rows ending in middle of char differently.
62e33982
GM
13140 (display_line): Handle tabs on window systems differently.
13141
13142 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
13143 with additional argument.
13144
13145 * dispextern.h (row_containing_pos): Adjust prototype.
13146
76cb5e06
GM
13147 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
13148 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
13149 (try_window_id, try_window_reusing_current_matrix)
13150 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 13151 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 13152
f00691a3 131532001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 13154
c9e60620
PJ
13155 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
13156 gnuemacs).
13157 (HAVE_BOXES): Fix typo in comment.
13158 (push_menu_pane): Fix typo in comment.
13159
3b552d56
PJ
13160 * xdisp.c: (display_prop_string_p): Remove unused local declaration
13161 of `Qwhen'.
13162 (single_display_prop_string_p): Remove unused local declarations
13163 of `Qwhen' and `Qmargin'.
13164 (string_buffer_position): Remove unused variable `around'.
13165 (store_frame_title): Remove unused variable `width'.
13166
15c565ac
PJ
13167 * window.c: Don't define max.
13168 (coordinates_in_window): Remove unused variable `uy'.
13169
a8818eb9
PJ
13170 * widget.c: Don't define max.
13171
996fee11
PJ
13172 * process.c: Don't define max.
13173 (create_process): Remove unused variable `buffer'.
13174
496e1a5b
GM
131752001-10-23 Gerd Moellmann <gerd@gnu.org>
13176
c2d53558 13177 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 13178
5905ae8b
EZ
131792001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
13180
13181 * xfaces.c (Finternal_set_lisp_face_attribute)
13182 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
13183 frame is on a windowed display.
13184
24db49fb
GM
131852001-10-23 Gerd Moellmann <gerd@gnu.org>
13186
c2d53558
SM
13187 * dispnew.c (sync_window_with_frame_matrix_rows):
13188 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
13189 of marginal areas.
13190
c2d53558 13191 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 13192
f0487f05
EZ
131932001-10-23 Andreas Schwab <schwab@suse.de>
13194
13195 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
13196 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
13197
f0a48a01
GM
131982001-10-23 Gerd Moellmann <gerd@gnu.org>
13199
c2d53558 13200 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
13201 REAL_END. Notice if cursor gets overwritten.
13202 (notice_overwritten_cursor): Take X positions as parameters.
13203 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
13204 around call to x_draw_glyphs.
13205
f00691a3 132062001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 13207
fc11dff0
PJ
13208 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
13209 instead of C) and usage.
a50a10a0 13210
fc11dff0
PJ
13211 * editfns.c (char-to-string): Fix argument names (use CHAR instead
13212 of C) and usage.
a50a10a0
PJ
13213
13214 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
13215 `left', `max_width' and `max_height'.
13216
8738febd
GM
132172001-10-23 Gerd Moellmann <gerd@gnu.org>
13218
13219 * xdisp.c (display_line): For a tab continued to the next line,
13220 set row's ends_in_middle_of_char_p.
13221
653c329b
GM
132222001-10-22 Gerd Moellmann <gerd@gnu.org>
13223
13224 * xdisp.c (display_line): Fix computation of continuation lines
13225 width for TABs.
13226
f00691a3 132272001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 13228
7ba51063
PJ
13229 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
13230 `Qlaplace'.
13231
f958c5ac
PJ
13232 * fileio.c: Remove unused code.
13233
eb360291
MB
132342001-10-22 Miles Bader <miles@gnu.org>
13235
13236 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
13237 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
13238 Remove `DOC_STRINGS_IN_COMMENTS' cases.
13239
98515cf0
JR
132402001-10-21 Jason Rumney <jasonr@gnu.org>
13241
13242 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
13243
93026d88
EZ
132442001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
13245
13246 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
13247 (Finsert_string): Avoid the multi-line string literals warning.
13248
c9a95b79
MB
132492001-10-22 Miles Bader <miles@gnu.org>
13250
13251 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
13252 (Fdocumentation): Don't use it.
13253 (syms_of_doc): Don't initialize it.
13254
13255 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
13256 * print.c (Fwith_output_to_temp_buffer): Likewise.
13257 * window.c (Fsave_window_excursion): Likewise.
c2d53558 13258 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 13259 (Fsave_restriction): Likewise.
c2d53558
SM
13260 * eval.c (Frun_hooks, Frun_hook_with_args)
13261 (Frun_hook_with_args_until_failure)
13262 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
13263 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
13264 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
13265 (Funwind_protect, Fcondition_case): Likewise.
13266 * coding.c (Ffind_operation_coding_system): Likewise.
13267 * keyboard.c (Ftrack_mouse): Likewise.
13268
a3b10252
MB
132692001-10-21 Miles Bader <miles@gnu.org>
13270
c2d53558 13271 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
13272 (Fmake_hash_table): Add usage: string to doc string.
13273 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 13274 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
13275 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
13276 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
13277 (Fml_prefix_argument_loop): Likewise.
13278
f00691a3 132792001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 13280
c2d53558 13281 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 13282
c6f73eec
PJ
13283 * sysdep.c (init_sys_modes): Change doc-string comments to `new
13284 style' [w/`doc:' keyword].
13285
13286 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
13287 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
13288 comments to `new style' [w/`doc:' keyword].
13289
3cf3436e
JR
132902001-10-21 Jason Rumney <jasonr@gnu.org>
13291
13292 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
13293
c169b8f1
JR
13294 * w32term.c (remember_mouse_glyph): New function.
13295 (w32_mouse_position): Use it.
13296 (note_mouse_movement): If the mouse moved off the glyph, remember
13297 its new position.
c2d53558 13298
4fdd691b
JR
13299 * w32term.h (struct w32_output): Correct spelling of x_compatible.
13300 (w32_display_info): Add mouse_face_overlay.
13301
c169b8f1
JR
13302 * w32term.c (notice_overwritten_cursor): Renamed from
13303 note_overwritten_text_cursor. Rewritten to take glyph widths into
13304 account.
13305 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
13306 (fast_find_string_pos): New function.
13307 (fast_find_position): Return the correct vpos. Add parameter
13308 STOP. In the final row, stop before glyphs having STOP as object.
13309 Don't consider glyphs that are not from a buffer.
13310 (fast_find_position) [0]: Add a presumably more correct version
13311 for after 21.1.
13312 (expose_window_tree, expose_frame): Don't compute intersections here.
13313 (expose_window): Do it here instead.
13314 (expose_window_tree, expose_window, expose_line): Return 1 when
13315 overwriting mouse-face.
13316 (expose_window): If W is the window currently being updated, mark
13317 the frame garbaged.
13318 (expose_frame): If mouse-face was overwritten, redo it.
13319 (x_use_underline_position_properties): New variable.
13320 (syms_of_xterm): DEFVAR_BOOL it.
13321 (x_draw_glyph_string): Add comment to use it in future.
13322 (x_draw_glyph_string): Restore clipping after drawing box.
13323 Fix a computation of the underline position.
13324 (w32_get_glyph_string_clip_rect): Minor cleanup.
13325 (x_fill_stretch_glyph_string): Remove an assertion.
13326 (x_produce_glyphs): Don't convert multibyte characters
13327 to unibyte characters in unibyte buffers.
13328 (cursor_in_mouse_face_p): New function.
13329 (x_draw_stretch_glyph_string): Use it to choose a different GC
13330 when drawing a cursor within highlighted text. Don't draw
13331 background again if it has already been drawn.
13332 (x_draw_glyph_string_box): Don't draw a full-width
13333 box just because the glyph row's full_width_p flag is set.
13334 (x_draw_glyphs): Fix computation of rightmost x for
13335 full-width rows.
13336 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
13337 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
13338 change bottom shadow accordingly. Some cleanup.
13339 (x_update_window_end): Handle overwritten mouse face
13340 also for tool bar windows.
13341 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
13342 DRAW is DRAW_IMAGE_RAISED.
13343 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
13344 actually redrawn. Make the function static.
13345 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
13346 optimize away highlighting if we pass over that same overlay again.
13347 (note_mouse_highlight): Call mouse_face_overlay_overlaps
13348 to detect a case where we have to highlight a different region
13349 despite not having left the currently highlighted region.
13350 Set mouse_face_overlay in the x_display_info. Avoid changing the
13351 mouse pointer shape when show_mouse_face has already done it, or
13352 there is no need. Handle mouse-face and help-echo in strings.
13353 (glyph_rect): New function.
13354 (w32_mouse_position): Use it to raise the threshold for mouse
13355 movement event generation.
13356 (w32_initialize_display_info): Initialize the x_display_info's
13357 mouse_face_overlay.
13358 (w32_set_vertical_scroll_bar): Don't clear a zero height
13359 or width area.
13360 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
13361 a widget to zero height.
13362
3cf3436e 13363 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 13364 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
13365 equivalents in menu_items.
13366 (w32_menu_show): Don't overwrite an item's name with its key
13367 description in case the description is a multibyte string.
13368 (single_submenu): Some cleanup.
13369
13370 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
13371 (postprocess_image): New function.
13372 (lookup_image): Call it for all image types except PostScript.
13373 (x_kill_gs_process): Call postprocess_image.
13374 (tiff_error_handler, tiff_warning_handler): New functions.
13375 (tiff_load): Install them as handlers.
13376 (x_kill_gs_process): Recognize if someone has cleared the image
13377 cache under us.
13378 (valid_image_p): Protect better against invalid image
13379 specifications. Previous code could signal an error.
13380 (Fx_hide_tip, Fshow_tip): Doc fix.
13381 (Fv_max_tooltip_size): New variable.
13382 (syns_of_xfns): DEFVAR_LISP it.
13383 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
13384 window buffer to *tip* right after creating the frame. Set frame's
13385 window_width. Use a maximum tooltip size specified by
13386 Vx_max_tooltip_size, if that has valid contents.
13387 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
13388 Make sure the tooltip is completely visible.
13389 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
13390 (Fx_create_frame): Adjust the frame's height for presence
13391 of the tool bar before calling x_figure_window_size.
13392 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
13393 when the window gets smaller.
13394 (x_set_foreground_color): Set frame's cursor_pixel.
13395 (x_set_foreground_color, x_set_background_color): Cleaned up.
13396 (x_set_font): Handle case of x_new_fontset returning the same name
13397 as before, although there was a change in fontsets.
13398
386ca361
MB
133992001-10-21 Miles Bader <miles@gnu.org>
13400
c2d53558 13401 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
13402 (Flogxor): Add usage: string to doc string.
13403 * charset.c (Fstring): Likewise.
13404 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
13405 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
13406
f00691a3 134072001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 13408
03be2694
PJ
13409 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
13410
13411 * alloc.c: Reindent DEFUNs with doc: keywords.
13412
13413 * abbrev.c (Finsert_abbrev_table_description): Reindent.
13414
14ff1ee0
PJ
13415 * frame.c: Change doc-string comments to `new style' [w/`doc:'
13416 keyword].
13417
2f147815 13418See ChangeLog.9 for earlier changes.
6922b018
KH
13419
13420;; Local Variables:
49b3bd82 13421;; coding: iso-2022-7bit
6922b018 13422;; End:
2a34a036 13423
2f147815 13424 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
13425 Copying and distribution of this file, with or without modification,
13426 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
13427
13428;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4