(iswitchb-global-map): Fix typo. Removed unwanted ###autoloads from
[bpt/emacs.git] / src / ChangeLog
CommitLineData
f72b5416
JD
12004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2
3 * fileio.c (barf_or_query_if_file_exists): Use lstat.
4 (Frename_file): Handle renaming of symlinks across file systems.
440c7d00 5 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
f72b5416 6
6ab66799
KS
72004-05-04 Kim F. Storm <storm@cua.dk>
8
9 * xdisp.c (Qtotal): New var.
10 (syms_of_xdisp): Intern and staticpro it.
11 (calc_line_height_property): New arg total. Set it if
12 line-spacing property has format (total . VALUE).
13 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
14 Handle total line-spacing property.
15
ab2d724b
JD
162004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17
18 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
19 "under" scroll bar when size/position changes.
20
238add5e
JR
212004-05-03 Jason Rumney <jasonr@gnu.org>
22
23 * makefile.nt: Remove.
24
1644f4e4
EZ
252004-05-02 Eli Zaretskii <eliz@gnu.org>
26
05fdbeb8
EZ
27 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT): Avoid
28 compiler warnings.
29
1644f4e4
EZ
30 * Makefile.in (region-cache.o): Depend on config.h.
31
6cbc951e
SM
322004-05-02 Romain Francoise <romain@orebokech.com> (tiny change)
33
34 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
35 with continuation lines, too.
36
2b98b088
TTN
372004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
38
39 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
40
d9bf7950
SM
412004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
42
43 * xdisp.c (calc_line_height_property): YAILOM (yet another
44 int/Lisp_Object mixup).
45
affa509c
EZ
462004-05-01 Eli Zaretskii <eliz@gnu.org>
47
48 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
49 undo bad effect of pack(4) in some versions of system headers.
50
07c07cfe
JR
512004-05-01 Jason Rumney <jasonr@gnu.org>
52
53 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
54
e71caa4e
KS
552004-04-30 Kim F. Storm <storm@cua.dk>
56
57 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
b2b55d03 58 (syms_of_buffer) <cursor-type>: Doc fix.
e71caa4e
KS
59
60 * dispextern.h (struct it): Remove member use_default_face.
61 Add members override_ascent, override_descent, override_boff.
62
63 * xdisp.c (init_iterator): Handle line-spacing float value.
64 Initialize override_ascent member.
65 (append_space_for_newline): Reset override_ascent.
66 Remove use_default_face.
67 (calc_line_height_property): New function to calculate value of
68 line-height and line-spacing properties. Look at overlays, too.
69 Set override_ascent, override_descent, override_boff members when
70 using another face than the current face. Float values are now
71 relative to the frame default font, by default; accept a cons
72 of ratio and face name to specify value relative to a specific face.
73 (x_produce_glyphs): Use calc_line_height_property.
74 Use override_ascent etc. when set to handle different face heights.
75 A negative line-spacing property value is interpreted as a total
76 line height, rather than inter-line spacing.
77 (note_mouse_highlight): Allocate room for 40 overlays initially.
78
0fddae66
SM
792004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
80
81 * data.c (Fsubr_name): New fun.
82 (syms_of_data): Defsubr it.
83
712d23dc
KS
842004-04-29 Kim F. Storm <storm@cua.dk>
85
86 * xdisp.c (null_glyph_slice): New var.
87 (append_glyph, append_composite_glyph, append_stretch_glyph):
88 Use it to initialize glyph slice.
89
033ad8c6
SM
902004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
91
92 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
93 (on_hot_spot_p): Make sure we always return a value.
94 (Flookup_image_map): Remove unused var ix and iy.
95 (note_mode_line_or_margin_highlight): Remove unused var `image'.
96
93397360
EZ
972004-04-27 Eli Zaretskii <eliz@gnu.org>
98
99 * msdos.c (init_environment): If one of the TMP... environment
100 variables is set to a drive letter without a trailing slash,
101 append a slash.
102
0c54865e
EZ
1032004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
104
105 * editfns.c (lisp_time_argument): Provide externally.
106
107 * fileio.c (Fset_file_times): New function.
108 (syms_of_fileio): Intern and staticpro it.
109
d3b111bd
KS
1102004-04-27 Kim F. Storm <storm@cua.dk>
111
07dc1231
KS
112 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
113 header line strings.
114
360fe9d2
KS
115 * dispextern.h (struct it): New member use_default_face.
116
d3b111bd
KS
117 * xdisp.c (Qline_height): New variable.
118 (syms_of_xdisp): Intern and staticpro it.
119 (append_space_for_newline): Partially undo 2004-04-25 change;
120 add default_face_p arg, and restore callers.
121 Clear it->use_default_face after use.
122 (x_produce_glyphs): Set default font for ascii char if
123 it->use_default_font is set. Change line-spacing property to set
124 just extra line spacing. Handle new line-height property.
125
0448588b
AS
1262004-04-26 Andreas Schwab <schwab@suse.de>
127
128 * print.c (print_object): Print non-ascii characters in bool
129 vector representation as octal escapes.
130
131 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
132 * print.c (print_object): Use it instead of BITS_PER_CHAR for
133 bool vectors.
134 * lread.c (read1): Likewise.
135 * alloc.c (Fmake_bool_vector): Likewise.
136 * data.c (Faref, Faset): Likewise.
137 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
138 (mapcar1): Likewise.
d3b111bd 139
536d6baa
ST
1402004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
141
142 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
143
ae11577a
MB
1442004-04-26 Miles Bader <miles@gnu.org>
145
146 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
147
e198ba87
JB
1482004-04-26 Juanma Barranquero <lektu@terra.es>
149
150 * buffer.c (Fpop_to_buffer): Fix docstring.
151
f3d5f92d 1522004-04-26 Steven Tamm <steventamm@mac.com>
e198ba87 153
f3d5f92d
ST
154 * lread.c (init_lread): Don't display missing lisp directory
155 warnings with Carbon Emacs because self-contained bundled Emacs
e198ba87 156 may be built without correct installation path.
f3d5f92d 157
03e35edc
KS
1582004-04-25 Kim F. Storm <storm@cua.dk>
159
9ff3aa31
KS
160 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
161
162 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
163
03e35edc
KS
164 * xdisp.c (append_space_for_newline): Rename from append_space.
165 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
166 (x_produce_glyphs): Handle line-spacing property on newline char.
167 If value is t, adjust ascent and descent to fit current row height.
168 If value is an integer or float, set extra_line_spacing to integer
169 value, or to float value x current line height.
170
f24814e0
KH
1712004-04-23 Kenichi Handa <handa@m17n.org>
172
173 * fontset.c (Finternal_char_font): If POSITION is nil, return
174 font for displaying CH with the default face.
175
d814862a
JB
1762004-04-23 Juanma Barranquero <lektu@terra.es>
177
178 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
179
063a45c5
SM
1802004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
181
182 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
183 Don't make assumptions about the relative place of i and val.
184 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
185
ae7ab2d3
KS
1862004-04-21 Kim F. Storm <storm@cua.dk>
187
188 * dispextern.h (struct glyph_slice): New struct.
189 (struct glyph): New member slice.
190 (GLYPH_SLICE_EQUAL_P): New macro.
191 (GLYPH_EQUAL_P): Use it.
192 (struct glyph_string): New member slice.
193 (struct it_slice): New struct.
194 (struct it): New member slice, add member to stack too.
195 New member constrain_row_ascent_descent_p.
196 (image_ascent): Add prototype.
197
198 * dispnew.c (buffer_posn_from_coords): Return full image width
199 and height even for image slices (posn is relative to full image).
200 (marginal_area_string): Adjust x0,y0 for image slice.
201
202 * image.c (image_ascent): Add slice arg; calculate ascent for
203 image slice (or full image).
204
205 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
206 (syms_of_keyboard): Defsubr them.
207
208 * lisp.h (pos_visible_p): Fix prototype.
209
c62aec78 210 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
ae7ab2d3
KS
211 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
212 (x_draw_image_foreground, x_draw_image_relief)
213 (x_draw_image_foreground_1, x_draw_image_glyph_string):
214 Draw sliced images.
215
216 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
217 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
218 (x_draw_image_foreground, x_draw_image_relief)
219 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
220 Draw sliced images.
221
222 * w32term.h (image_ascent): Remove prototype.
223
224 * window.c (Fpos_visible_in_window_p): Return pixel position if
225 PARTIALLY arg is non-nil. Simplify. Doc fix.
226 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
227 to return/set vscroll in pixels.
228
229 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
230
231 * xdisp.c (Qslice): New variable.
232 (syms_of_xdisp): Intern and staticpro it.
233 (pos_visible_p): Return pixel position in new x and y args.
234 (init_iterator): Reset it->slice info.
235 (handle_display_prop): Parse (slice ...) property.
236 (push_it, pop_it): Save/restore slice info.
237 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
238 force repositioning of tall row if window is vscrolled, as that
239 would reset vscroll.
240 (append_space): Set it->constrain_row_ascent_descent_p to avoid
241 increasing row height if row is non-empty.
242 (fill_image_glyph_string): Copy slice info.
243 (take_vertical_position_into_account): Simplify.
244 (produce_image_glyph): Handle iterator slice info, setup glyph
245 slice info. Do not force minimum line height.
246 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
247 do not increase height (ascent/descent) of non-empty row when
248 adding normal character glyph; instead reduce glyph ascent/descent
249 appropriately; if row is higher than current glyph, adjust glyph
250 descent/ascent to reposition glyph within the existing row.
251 Likewise, when char is newline, only set ascent/descent if row is
252 currently empty.
253 (note_mouse_highlight): Handle hotspots with sliced image.
254
255 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
256 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
257 (x_draw_image_foreground, x_draw_image_relief)
258 (x_draw_image_foreground_1, x_draw_image_glyph_string):
259 Draw sliced images.
260
261 * xterm.h (image_ascent): Remove prototype.
262
d58f8753
SM
2632004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
264
265 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
266
4ce2719d
JPW
2672004-04-20 John Paul Wallington <jpw@gnu.org>
268
269 * fns.c (Fassoc, Feql): Fix indentation.
270
d58f8753 271 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
4ce2719d 272
95f8c3b9
JPW
2732004-04-19 John Paul Wallington <jpw@gnu.org>
274
275 * fns.c (Feql): New function.
d58f8753 276 (syms_of_fns): Defsubr it.
95f8c3b9 277
b7e85537
JR
2782004-04-18 Jason Rumney <jasonr@gnu.org>
279
280 * w32select.c (Fw32_set_clipboard_data): Get sequence number
281 after closing the clipboard.
282
5a72efd4
LT
2832004-04-16 Luc Teirlinck <teirllm@auburn.edu>
284
285 * buffer.c (Fbuffer_base_buffer): Doc fix.
286
20dc8583
KS
2872004-04-17 Kim F. Storm <storm@cua.dk>
288
60962ec4
KS
289 * keymap.c (Fkey_description): Add optional PREFIX arg.
290 Combine prefix with KEYS to make up the full key sequence to describe.
291 Correlate meta_prefix_char and following (simple) key to describe
292 as meta modifier. All callers changed.
293 (describe_map): Rename arg `keys' to `prefix'. Remove local
294 `elt_prefix' var. Use Fkey_description with prefix instead of
295 elt_prefix combined with Fsingle_key_description.
296 (describe_vector): Declare static. Replace arg `elt_prefix' with
297 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
298 if !KEYMAP_P. Use Fkey_description with prefix instead of
299 Fsingle_key_description.
300
301 * keymap.h (Fkey_description): Fix prototype.
302 (describe_vector): Remove prototype.
303
409368b9
KS
304 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
305
20dc8583
KS
306 * image.c (PNG_BG_COLOR_SHIFT): Remove.
307 (png_load): Fix calculation of transparent background color on X
308 and W32 platforms.
309
75c5501b
JB
3102004-04-16 Juanma Barranquero <lektu@terra.es>
311
312 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
313 not too large before computing how much to scroll.
314
da879ae8
SM
3152004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
316
317 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
318
d01ca4a8
LT
3192004-04-14 Luc Teirlinck <teirllm@auburn.edu>
320
321 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
322 Add hyperlink to Elisp manual to the docstring.
323
572943b3
SM
3242004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
325
326 * callint.c (fix_command): Use XDCR.
327
5e30a0fb
NR
3282004-04-14 Nick Roberts <nick@nick.uklinux.net>
329
330 * window.c (Fget_lru_window): Doc fix.
331
a27ddfaf
KS
3322004-04-14 Kim F. Storm <storm@cua.dk>
333
334 * editfns.c (Fformat): Fix allocation size of precision array.
335
336 * dispnew.c (update_window): Only set changed_p if
337 scrolling_window actually did scroll.
338 (scrolling_window): Only return 1 if we actually did scroll.
339
340 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
341 height to glyph height when cursor row is not fully visible.
342 (make_cursor_line_fully_visible): Add FORCE_P arg to return
343 failure in case row is higher than window. Callers changed.
344 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
345 Try to scroll partially visible, higher-than-window cursor row.
346 (redisplay_window): Always try to scroll partially visible,
347 higher-than-window cursor row - both initially and again with
348 centering_position = 0.
349 Clear desired matrix before retrying with centering_position = 0.
350
da879ae8
SM
3512004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
352
353 * syntax.c (scan_lists): Simplify backward string scan.
354 Fix off-by-one boundary check for string and comment fences.
355
5fc16e8e
SM
3562004-04-13 Joe Buehler <jbuehler@hekimian.com>
357
358 * sheap.c, unexcw.c: New files.
359
c9aac8e6
LT
3602004-04-12 Luc Teirlinck <teirllm@auburn.edu>
361
362 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
363 base buffer has been killed. Correct the error message if the
364 base buffer does not exist.
365
1e88a355
SM
3662004-04-12 Joe Buehler <jbuehler@hekimian.com>
367
368 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
369 Cygwin itself. Add support for Xaw3d scrollbars.
370
371 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
372
373 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
374
375 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
376 before Cygwin unexec.
377
378 * Makefile.in: Link changes for Cygwin unexec() support.
379
8dbff9a0
AS
3802004-04-12 Andreas Schwab <schwab@suse.de>
381
382 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
383
54dffe35
LT
3842004-04-11 Luc Teirlinck <teirllm@auburn.edu>
385
386 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
387 IGNORE argument equals NAME. Doc fix.
388
99a72bdf
MY
3892004-04-11 Masatake YAMATO <jet@gyve.org>
390
1e88a355 391 * buffer.c (fix_start_end_in_overlays): Make overlays
99a72bdf
MY
392 empty if they are backwards.
393
40899d7b
SM
3942004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
395
396 * xfaces.c (face_color_supported_p): Fix compilation without X11.
397
f8f853de
SM
3982004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
399
400 * doc.c (Fsnarf_documentation): Ignore new file name entries.
401
c953fe1b
KS
4022004-04-06 Kim F. Storm <storm@cua.dk>
403
661e85c1
KS
404 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
405 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
406
407 * w32term.c (w32_read_socket): Set mouse_face_hidden after
408 clearing highlight.
409
410 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
411
412 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
413 clearing highlight.
414
c953fe1b
KS
415 * indent.c (vmotion): Do not reserve one column for continuation
416 marks on window frames.
417
c1994268
EZ
4182004-04-04 Eli Zaretskii <eliz@gnu.org>
419
420 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
421 from GCC.
422
9f691b0d
SM
4232004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
424
425 * .gdbinit-union: Remove.
426
427 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
428 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
429 ($nonvalbits): Remove.
430 ($valmask): Set it by calling xreload to avoid redundancy.
431
432 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
433 (gdb_emacs_intbits): Remove.
434
7a8560d7
JD
4352004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
436
9f691b0d 437 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
7a8560d7 438
3c8111fc
KH
4392004-03-30 Kenichi Handa <handa@m17n.org>
440
441 * editfns.c (Fformat): Fix initialization of the array info.
442
48a0bce4
KS
4432004-03-30 Kim F. Storm <storm@cua.dk>
444
445 * xterm.c (x_mouse_click_focus_ignore_position): New var.
446 (syms_of_xterm): DEFVAR_BOOL it.
447 (ignore_next_mouse_click_timeout): New var.
448 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
449 Use it to filter mouse clicks following focus event.
450
1cd0066c
KS
4512004-03-29 David Ponce <david@dponce.com>
452
453 * callint.c (Fcall_interactively): Fix last change.
454
adb3b353
SM
4552004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
456
457 * eval.c (Fcommandp): Simplify.
458
459 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
460 Extend to handle all kinds of functions.
461
462 * lisp.h (Finteractive_form): Declare.
463
464 * callint.c (Fcall_interactively): Use it.
465
6fc4c9c9
KS
4662004-03-26 Kim F. Storm <storm@cua.dk>
467
468 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
469 to catch errors in calc_pixel_width_or_height during redisplay.
470
abdb9b83
MY
4712004-03-26 Masatake YAMATO <jet@gyve.org>
472
b17856dd 473 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
abdb9b83 474
b17856dd 475 * lisp.h (fix_start_end_in_overlays): Likewise.
abdb9b83 476
b17856dd 477 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
abdb9b83 478
b17856dd 479 * editfns.c (Ftranspose_regions): Likewise.
abdb9b83 480
e8a84b6c
JD
4812004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
482
b17856dd 483 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
e8a84b6c 484
36a3fd05
RS
4852004-03-19 Richard M. Stallman <rms@gnu.org>
486
487 * s/sol2-6.h: Delete previous change.
488
ab24c127
KS
4892004-03-19 Kim F. Storm <storm@cua.dk>
490
491 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
492 to_charpos corresponds to newline in right fringe. Use local
493 BUFFER_POS_REACHED_P macro.
494
992126de
JD
4952004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
496
497 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
498 to compile on non-window system.
499
45dbfc84
KS
5002004-03-19 Kim F. Storm <storm@cua.dk>
501
502 * dispextern.h (calc_pixel_width_or_height): Add prototype.
503
504 * image.c (Qcenter): Move to xdisp.c.
505
506 * xdisp.c (Qcenter): Declare here.
adb3b353 507 (syms_of_xdisp): Intern and staticpro it.
45dbfc84
KS
508 (handle_single_display_prop): Allow space display property on all
509 platforms.
510 (display_mode_line): Set mode_line_p before displaying line.
511 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
512 handling. Remove complex cases for fringes and scroll-bars.
513 Add left, right, and center alignment positions. Add text (area)
514 width/height. Return width or height for image specs.
515 (produce_stretch_glyph): Improve handling of :align-to. Is now
516 relative to left of text area by default, but other base offsets
517 can be specified -- also for text lines.
518
519 * term.c (produce_glyphs): Handle IT_STRETCH.
520 (produce_stretch_glyph): New function to handle space width and
521 align-to display properties on non-window systems.
522
37264101
SM
5232004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
524
525 * fileio.c (Fread_file_name): Set completion-ignore-case for
526 case-insensitive systems.
527
73bc43da
MY
5282004-03-14 Masatake YAMATO <jet@gyve.org>
529
530 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
531 when keymap and cursor are setup.
532
9062aa89
ST
5332004-03-14 Steven Tamm <steventamm@mac.com>
534
b17856dd 535 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
9062aa89 536
e4b1b5ab
KS
5372004-03-14 Kim F. Storm <storm@cua.dk>
538
539 * dispextern.h (x_find_image_file): Add prototype.
540
541 * image.c (x_find_image_file): Make extern.
542
543 * xfns.c (x_find_image_file): Remove prototype.
544
a6eeaa81 5452004-03-13 Eli Zaretskii <eliz@gnu.org>
5109b06a 546
37264101 547 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
5109b06a 548
37264101 549 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
5109b06a 550
e69cfac2
RS
5512004-03-12 Richard M. Stallman <rms@gnu.org>
552
553 * fns.c (internal_equal): New arg PROPS controls comparing
554 text properties. All callers changed.
555 (Fequal_including_properties): New function.
556 (syms_of_fns): defsubr it.
557
45034953
KS
5582004-03-12 Kim F. Storm <storm@cua.dk>
559
560 Fix image support on MAC. From YAMAMOTO Mitsuharu.
37264101 561
45034953
KS
562 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
563 (image_background, image_background_transparent): Fix prototypes.
564
37264101 565 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
45034953
KS
566
567 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
568 (x_query_font, x_find_ccl_program, x_set_window_size)
569 (x_make_frame_visible, mac_initialize, XCreatePixmap)
570 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
571 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
572
573 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
574 (x_query_font, x_find_ccl_program, x_set_window_size)
575 (x_make_frame_visible, mac_initialize, XCreatePixmap)
576 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
577 (mac_draw_line_to_pixmap): Add prototypes.
578
5792004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
580
581 * macterm.c (XTread_socket): Fix mouse click on tool bar.
582
a12d3d87
KS
5832004-03-11 Kim F. Storm <storm@cua.dk>
584
d3ab1cf1
KS
585 * dispextern.h: Move image related prototypes from xfns.c section
586 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
587 HAVE_X_WINDOWS.
37264101 588
37de9f51 589 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
37264101 590 Move gtkutil.o to new GTK_OBJ list.
a12d3d87
KS
591 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
592 (GTK_OBJ) [USE_GTK]: New declaration.
593 (obj): Add $(GTK_OBJ) to list.
594
5243c06a 5952004-03-11 Steven Tamm <steventamm@mac.com>
5109b06a 596
5243c06a
ST
597 * image.c [MAC_OSX]: Include sys/stat.h
598
599 * macfns.c (syms_of_macfns): Remove definitions of things now
600 defined in image.c
601
c0f97789
KS
6022004-03-11 Kim F. Storm <storm@cua.dk>
603
604 The following changes consolidates the identical/similar image
605 support code previously found in xfns.c, w32fns.c, and macfns.c
606 into a new file image.c.
607
608 * makefile.w32-in (OBJ1): Add image.o.
609 ($(BLD)/image.$(O)): Add dependencies.
610
611 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
612 (image.o): Add dependencies.
37264101 613
c0f97789
KS
614 * image.c: New file with consolidated image support code.
615 (COLOR_TABLE_SUPPORT): New define to control whether
616 color table support is available (X only).
617 (Bitmap_Record): Common name for x_bitmap_record,
618 w32_bitmap_record, and mac_bitmap_record.
619 (XImagePtr): Common name for pointer to XImage or equivalent.
620 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
621 to XImagePtr on X+MAC, and to HDC on W32.
622 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
623 (NO_PIXMAP): Common name for "None" or equivalent.
624 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
625 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
626 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
37264101
SM
627 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
628 Define with suitable equivalents on W32 and MAC for code sharing.
c0f97789
KS
629 (XDrawLine): Define on MAC for code sharing.
630 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
631 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
632 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
633 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
634 (x_reference_bitmap, x_create_bitmap_from_data)
635 (x_create_bitmap_from_file, x_destroy_bitmap)
636 (x_destroy_all_bitmaps, x_create_bitmap_mask)
637 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
638 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
639 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
640 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
641 (define_image_type, lookup_image_type, valid_image_p)
642 (image_error, enum image_value_type, struct image_keyword)
643 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
644 (make_image, free_image, prepare_image_for_display, image_ascent)
645 (four_corners_best, image_background, image_background_transparent)
646 (x_clear_image_1, x_clear_image, x_alloc_image_color)
647 (make_image_cache, free_image_cache, clear_image_cache)
648 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
649 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
650 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
651 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
652 (init_image_func_pointer, image_load_quartz2d)
653 (struct ct_color, init_color_table, free_color_table)
654 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
655 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
656 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
657 (x_disable_image, x_build_heuristic_mask)
658 (XBM support, XPM support, PBM support, PNG support, JPEG support)
659 (TIFF support, GIF support, Ghostscript support): Consolidate image
660 code from xfns.c, w32fns.c, and macfns.c.
661 (syms_of_image): Consolidate image related symbol setup here.
662 (init_image): Consolidate image related initializations here.
37264101 663
c0f97789
KS
664 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
665 and init_image. Remove call to init_xfns.
666
37264101
SM
667 * macterm.h (struct mac_bitmap_record): Add file member.
668 Not currently used, but simplifies code sharing.
c0f97789
KS
669
670 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
671 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
672 (x_reference_bitmap, x_create_bitmap_from_data)
673 (x_create_bitmap_from_file, x_destroy_bitmap)
674 (x_destroy_all_bitmaps, x_create_bitmap_mask)
675 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
676 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
677 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
678 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
679 (define_image_type, lookup_image_type, valid_image_p)
680 (image_error, enum image_value_type, struct image_keyword)
681 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
682 (make_image, free_image, prepare_image_for_display, image_ascent)
683 (four_corners_best, image_background, image_background_transparent)
684 (x_clear_image_1, x_clear_image, x_alloc_image_color)
685 (make_image_cache, free_image_cache, clear_image_cache)
686 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
687 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
688 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
689 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
690 (init_image_func_pointer, image_load_quartz2d)
691 (struct ct_color, init_color_table, free_color_table)
692 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
693 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
694 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
695 (x_disable_image, x_build_heuristic_mask)
696 (XBM support, XPM support, PBM support, PNG support, JPEG support)
697 (TIFF support, GIF support, Ghostscript support): Merge with image
698 code from xfns.c and macfns.c into image.c.
699 (syms_of_xfns): Move image related symbols to image.c.
700 (init_external_image_libraries, init_xfns): Remove; initialization
701 moved to init_image in image.c.
702
703 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
704 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
705 (x_reference_bitmap, x_create_bitmap_from_data)
706 (x_create_bitmap_from_file, x_destroy_bitmap)
707 (x_destroy_all_bitmaps, x_create_bitmap_mask)
708 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
709 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
710 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
711 (define_image_type, lookup_image_type, valid_image_p)
712 (image_error, enum image_value_type, struct image_keyword)
713 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
714 (make_image, free_image, prepare_image_for_display, image_ascent)
715 (four_corners_best, image_background, image_background_transparent)
716 (x_clear_image_1, x_clear_image, x_alloc_image_color)
717 (make_image_cache, free_image_cache, clear_image_cache)
718 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
719 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
720 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
721 (struct ct_color, init_color_table, free_color_table)
722 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
723 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
724 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
725 (x_disable_image, x_build_heuristic_mask)
726 (XBM support, XPM support, PBM support, PNG support, JPEG support)
727 (TIFF support, GIF support, Ghostscript support): Merge with image
728 code from xfns.c and macfns.c into image.c.
729 (syms_of_xfns): Move image related symbols to image.c.
730 (init_external_image_libraries, init_xfns): Remove; initialization
731 moved to init_image in image.c.
732
733 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
734 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
735 (x_reference_bitmap, x_create_bitmap_from_data)
736 (x_create_bitmap_from_file, x_destroy_bitmap)
737 (x_destroy_all_bitmaps, x_create_bitmap_mask)
738 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
739 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
740 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
741 (define_image_type, lookup_image_type, valid_image_p)
742 (image_error, enum image_value_type, struct image_keyword)
743 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
744 (make_image, free_image, prepare_image_for_display, image_ascent)
745 (four_corners_best, image_background, image_background_transparent)
746 (x_clear_image_1, x_clear_image, x_alloc_image_color)
747 (make_image_cache, free_image_cache, clear_image_cache)
748 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
749 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
750 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
751 (struct ct_color, init_color_table, free_color_table)
752 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
753 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
754 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
755 (x_disable_image, x_build_heuristic_mask)
756 (XBM support, XPM support, PBM support, PNG support, JPEG support)
757 (TIFF support, GIF support, Ghostscript support): Merge with
758 w32fns.c and macfns.c image code into image.c.
759 (syms_of_xfns): Move image related symbols to image.c.
760 (init_xfns): Remove; initialization moved to init_image in image.c.
761
762 * lisp.h (syms_of_image, init_image): Add protoypes.
763 (init_xfns): Remove prototype.
764
765 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
766 (x_reference_bitmap, x_create_bitmap_from_data)
767 (x_create_bitmap_from_file, x_destroy_bitmap)
768 (x_create_bitmap_mask): Move prototypes from dispextern.h.
769 (gamma_correct) [MAC_OS]: Add prototype.
770
771 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
772 (x_reference_bitmap, x_create_bitmap_from_data)
773 (x_create_bitmap_from_file, x_destroy_bitmap)
774 (x_create_bitmap_mask): Move prototypes to dispextern.h.
775
6eced09c
KH
7762004-03-09 Kenichi Handa <handa@etlken2>
777
778 * coding.c (decode_coding_emacs_mule): Handle insufficent source
779 correctly.
780
9a7e95f3
RS
7812004-03-04 Richard M. Stallman <rms@gnu.org>
782
04a6e76b
RS
783 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
784
9a7e95f3
RS
785 * window.c (Fdisplay_buffer): Doc fix.
786
787 * buffer.c (Fpop_to_buffer): Doc fix.
788
6c2488df
KS
7892004-03-03 Kim F. Storm <storm@cua.dk>
790
791 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
792
d8d95bc7
SM
7932004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
794
795 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
796
357589bf
RS
7972004-03-02 Richard M. Stallman <rms@gnu.org>
798
799 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
800
409949b5
KH
8012004-03-02 Kenichi Handa <handa@m17n.org>
802
803 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
804
d24bc50f
KS
8052004-03-02 Kim F. Storm <storm@cua.dk>
806
807 * window.h (struct window): New member overlay_arrow_bitmap.
808
809 * window.c (make_window): Initialize overlay_arrow_bitmap.
810
811 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
812 implement and integrate multiple overlay arrows with redisplay.
813 (syms_of_xdisp): DEFVAR_LISP and initialize it.
814 (last_arrow_position, last_arrow_string): Replace by properties.
815 (Qlast_arrow_position, Qlast_arrow_string)
816 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
817 (syms_of_xdisp): Intern and staticpro them.
818 (overlay_arrow_string_or_property, update_overlay_arrows)
819 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
820 (overlay_arrow_at_row): New functions for multiple overlay arrows.
821 (redisplay_internal): Use them instead of directly accessing
822 Voverlay_arrow_position etc. for multiple overlay arrows.
823 (mark_window_display_accurate): Use update_overlay_arrows.
824 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
825 (try_window_id): Use overlay_arrows_changed_p.
826 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
827 (display_line): Use overlay_arrow_at_row to check multiple
828 overlay arrows, and get relevant overlay-arrow-string and
d8d95bc7 829 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
d24bc50f
KS
830 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
831 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
832
833 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
834 (update_window_fringes): Remove unused code.
835
c1464661
JR
8362004-03-01 Jason Rumney <jasonr@gnu.org>
837
838 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
839
a64387ee
JB
8402004-03-01 Juanma Barranquero <lektu@terra.es>
841
842 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
843
844 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
845
334faa08
JD
8462004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
847
848 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
849 how many colors can be displayed.
850
bb62616f
KH
8512004-03-01 Kenichi Handa <handa@m17n.org>
852
853 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
854 correctly.
855
0fd16104
KS
8562004-02-28 Kim F. Storm <storm@cua.dk>
857
858 * dispnew.c (update_window): Update header line also if there are
859 no other changes in window (move code after set_cursor label).
860
861 * lisp.h (mark_window_display_accurate): Remove prototype.
862
863 * window.c (window_loop, Fforce_window_update): Force mode line
864 updates by setting prevent_redisplay_optimizations_p and
865 update_mode_lines.
866
b59dd9c8
JD
8672004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
868
d8d95bc7 869 * xfns.c (x_window): Fix indentation.
b59dd9c8
JD
870
871 * xterm.c (x_calc_absolute_position): Call x_real_positions
872 to get WM window sizes and use those to calculate position.
d8d95bc7 873 (x_set_offset): Remove code commented out.
b59dd9c8 874
a874691c
MB
8752004-02-28 Miles Bader <miles@gnu.org>
876
877 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
878
3e0c6482
KS
8792004-02-28 Kim F. Storm <storm@cua.dk>
880
881 * keyboard.c (kbd_buffer_store_event_hold): New function to store
882 an event into kbd fifo, but with special handling of quit event;
883 a quit event is saved for later, and further events are discarded
884 until the saved quit event has been processed.
885 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
886 (gen_help_event): Store help event in kbd fifo.
887 (NREAD_INPUT_EVENTS): Remove.
888 (read_avail_input): Adapt to new read_socket_hook interface.
889 Remove allocation and initialization of local input_event buffer,
890 as read_socket_hook stores events directly in fifo. Allocate and
891 initialize local hold_quit event to handle postponed quit event
892 (and store it if set by kbd_buffer_store_event_hold).
893
894 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
895 (gen_help_event): Fix prototype.
896
a64387ee 897 * macterm.c (XTread_socket): Remove bufp_r and
3e0c6482
KS
898 numcharsp args. Add hold_quit arg.
899 Rework to use just one, local, inev input_event. Store inev
900 directly in fifo using kbd_buffer_store_event_hold.
901
902 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
903 (read_input_waiting): Adapt to new read_socket_hook interface.
904 Remove allocation and initialization of local input_event buffer,
905 as read_socket_hook stores events directly in fifo. Allocate and
906 initialize local hold_quit event to handle postponed quit event
907 (and store it if set by kbd_buffer_store_event_hold).
908
a64387ee 909 * term.c (read_socket_hook): Fix arg list.
3e0c6482
KS
910
911 * termhooks.h (read_socket_hook): Fix prototype.
912
913 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
914 numcharsp args. Add hold_quit arg.
915 Rework to use just one, local, inev input_event. Store inev
916 directly in fifo using kbd_buffer_store_event_hold.
917
918 * w32inevt.h (w32_console_mouse_position): Fix prototype.
919
920 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
921 Add hold_quit arg. Rework to use just one, local, inev
922 input_event. Store inev directly in fifo using
923 kbd_buffer_store_event_hold. Update count in one place.
924 Postpone call to gen_help_event until inev is stored; use new
925 local do_help for this.
926 Remove local emacs_event in handing of ButtonPress event; just use
927 inev instead (so no reason to copy it later).
928
929 * xsmfns.c (x_session_check_input): Remove numchars arg.
930
d8d95bc7
SM
931 * xterm.c (x_focus_changed, x_detect_focus_change):
932 Remove numchars arg. Always store event into bufp arg.
933 Return nothing. Callers changed accordingly.
3e0c6482
KS
934 (glyph_rect): Simplify.
935 (STORE_KEYSYM_FOR_DEBUG): New macro.
936 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
937 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
938 (current_hold_quit) [USE_GTK]: Add.
939 (event_handler_gdk): Adapt to new handle_one_xevent.
940 (handle_one_xevent): Remove bufp_r and numcharsp args.
941 Add hold_quit arg. Rework to use just one, local, inev
942 input_event. Store inev directly in fifo using
943 kbd_buffer_store_event_hold. Update count in one place.
944 Postpone call to gen_help_event until inev is stored; use new
945 local do_help for this.
946 Simplify handling of keysyms (consolidate common code). Fix bug
947 where count was updated with nchars instead of nbytes.
948 Remove local emacs_event in handing of ButtonPress event; just use
949 inev instead (so no reason to copy it later).
950 Remove `out' label. Rename label `ret' to `done'; add various
951 `goto done' to clarify code flow in deeply nested blocks.
952 (x_dispatch_event): Simplify as handle_one_xevent now calls
953 kbd_buffer_store_event itself.
954 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
955 arg. Call handle_one_xevent with new arglist. Store event from
956 x_session_check_input in fifo.
957 [USE_GTK]: Setup current_hold_quit.
958 Decrement handling_signal before unblocking input.
959 (x_initialize) [USE_GTK]: Initialize current_count.
960
961 * xterm.h (x_session_check_input): Fix prototype.
962
e3564461 9632004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
a64387ee 964
d8d95bc7 965 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
a64387ee 966
e3564461
ST
967 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
968 macgui.h).
a64387ee 969
e3564461 970 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
a64387ee 971
e3564461
ST
972 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
973 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
974 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
975 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
976 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
977 (Bitmap): Remove typedef.
978 (Pixmap): Change int to GWorldPtr.
979
d8d95bc7 980 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
a64387ee 981
d8d95bc7
SM
982 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
983 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
984 New #define to extract 16-bit depth color components from unsigned
e3564461
ST
985 long representation.
986 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
987 colors used for masks.
988 (struct mac_display_info): Add color_p. Remove n_cbits.
a64387ee 989
e3564461
ST
990 * macfns.c: Include sys/types.h and sys/stat.h.
991 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
992 Include QuickTime/QuickTime.h.
993 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
994 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
995 functions defined in macterm.c.
996 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
997 (ZPixmap): New #define for compatibility with xfns.c.
998 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
999 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
d8d95bc7
SM
1000 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
1001 New functions.
e3564461 1002 (four_corners_best, x_create_x_image_and_pixmap)
d8d95bc7
SM
1003 (x_destroy_x_image, unwind_create_frame, x_disable_image)
1004 (x_edge_detection, init_color_table, colors_in_color_table)
e3564461
ST
1005 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
1006 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
1007 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
1008 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
1009 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
1010 long mixup.
1011 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
1012 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
1013 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
1014 (x_set_cursor_type, Fxw_color_values, valid_image_p)
1015 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
1016 (x_alloc_image_color, clear_image_cache, lookup_image)
1017 (x_find_image_file, xbm_read_bitmap_file_data)
1018 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
1019 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
1020 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
1021 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
1022 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
d8d95bc7 1023 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
e3564461
ST
1024 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
1025 #if 0.
1026 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
1027 #if 0. Free white_relief.gc and black_relief.gc.
d8d95bc7
SM
1028 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
1029 New functions (from xfns.c).
e3564461
ST
1030 (Fx_create_frame): Record unwind_create_frame.
1031 (Fxw_display_color_p): Use dpyinfo->color_p.
1032 (Fx_display_grayscale_p, Fx_display_planes): Don't use
1033 dpyinfo->n_cbits.
1034 (Fx_display_color_cells): Use dpyinfo->n_planes;
1035 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
1036 (Qheuristic, cross_disabled_images, emboss_matrix)
1037 (laplace_matrix): New variables (from xfns.c).
1038 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
1039 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
1040 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
d8d95bc7
SM
1041 (image_background_transparent): New function (from xfns.c).
1042 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
1043 (image_load_quicktime): Add declaration.
1044 [MAC_OSX] (image_load_quartz2d): Likewise.
1045 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
1046 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
d8d95bc7 1047 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
e3564461
ST
1048 (xbm_load_image_from_file, x_laplace_read_row)
1049 (x_laplace_write_row, pbm_read_file): Remove functions.
1050 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
1051 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
1052 (colors_in_color_table): Sync with xfns.c (although not used).
1053 (lookup_rgb_color): Don't lookup color table. Just do gamma
1054 correction.
1055 (COLOR_INTENSITY): New #define (from xfns.c).
d8d95bc7
SM
1056 (x_disable_image): New function (from xfns.c).
1057 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
1058 (x_build_heuristic_mask): Sync with xfns.c.
1059 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
1060 (HAVE_PBM): Remove #ifdef.
1061 (pbm_load): Sync with xfns.c. Set img->width and img->height
1062 before IMAGE_BACKGROUND.
d8d95bc7 1063 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
e3564461
ST
1064 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
1065 Don't enclose with #if HAVE_PNG.
1066 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
d8d95bc7
SM
1067 symbol _CGImageCreateWithPNGDataProvider is defined.
1068 Otherwise use image_load_quicktime.
e3564461 1069 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
d8d95bc7
SM
1070 [HAVE_PNG] (png_load): Sync with xfns.c.
1071 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
1072 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
1073 HAVE_JPEG.
1074 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
1075 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
1076 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
1077 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
1078 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
1079 (tiff_image_p, tiff_load): Don't enclose declarations with #if
1080 HAVE_TIFF.
1081 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
1082 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
1083 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
d8d95bc7
SM
1084 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
1085 New functions (from xfns.c).
e3564461 1086 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
d8d95bc7 1087 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
e3564461
ST
1088 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
1089 Don't enclose with #if HAVE_GIF.
1090 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
1091 animated gif. Otherwise use image_load_quicktime.
1092 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
1093 gif_DrawText to avoid conflict with QuickdrawText.h.
1094 [HAVE_GIF] (gif_load): Sync with xfns.c.
1095 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
1096 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
1097 Ghostscript is not supported yet).
1098 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
1099 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
1100 cross_disabled_images (from xfns.c). Remove #if 0 for supported
1101 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
1102 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
1103 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
d8d95bc7
SM
1104 HAVE_PNG. Call EnterMovies to support animated gifs.
1105 Call init_image_func_pointer to bind a symbol
e3564461 1106 _CGImageCreateWithPNGDataProvider if it is defined.
a64387ee 1107
d8d95bc7 1108 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
e3564461
ST
1109 (x_draw_bar_cursor): Sync declaration with xterm.c.
1110 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
1111 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
1112 graphics).
1113 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
1114 (mac_draw_line_to_pixmap, XCreatePixmap)
1115 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
d8d95bc7
SM
1116 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
1117 New functions.
1118 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
1119 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
1120 Cast bits to char *.
e3564461
ST
1121 (reflect_byte): New function (from w32fns.c).
1122 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
1123 due to byte alignment.
d8d95bc7
SM
1124 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
1125 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
e3564461
ST
1126 (XSetForeground): Remove static (now used in macfns.c).
1127 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
1128 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
1129 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
1130 (x_draw_glyph_string_box, x_draw_image_foreground)
1131 (x_draw_image_foreground_1, x_draw_image_glyph_string)
1132 (x_draw_stretch_glyph_string, x_draw_glyph_string)
1133 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
1134 Sync with xterm.c.
1135 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
1136 than the xterm.c version when a strictly horizontal or vertical
1137 line is drawn.
1138 (XTset_terminal_window): Add static.
1139 (x_make_frame_visible): Add UNBLOCK_INPUT.
1140 (x_free_frame_resources): New funcion (from xterm.c).
1141 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
1142 occurs in tool bar area.
d8d95bc7
SM
1143 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
1144 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
e3564461
ST
1145 Initialize image cache.
1146 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
1147 Enclose unused functions with #if 0.
1148 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
1149 (decode_mac_font_name): New function to apply code conversions
d8d95bc7 1150 from a mac font name to an XLFD font name according to its script code.
e3564461 1151 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
d8d95bc7 1152 font name to a mac font name according to REGISTRY and ENCODING fields.
e3564461
ST
1153 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
1154 whose name starts with `.'.
1155 (init_font_name_table): Use decode_mac_font_name. Add both
1156 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
1157 of a font is smJapanese.
1158 (mac_do_list_fonts): New function to list fonts that match a given
1159 pattern.
1160 (x_list_fonts, XLoadQueryFont): Use it.
1161 (XLoadQueryFont): Set rbearing field for each variable width
1162 character to avoid needless redraw.
1163 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
1164
446f5f3d
KS
11652004-02-26 Kim F. Storm <storm@cua.dk>
1166
af617d0f
KS
1167 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
1168 as read_socket_hook handler on X aborts if buffer is too small
1169 and W32 handler doesn't always check buffer limit.
1170
446f5f3d
KS
1171 * xdisp.c (handle_single_display_prop): Handle left-fringe and
1172 right-fringe similar to a display margin image. Specifically,
1173 the characters having the fringe prop are no longer shown, and
1174 we use IT_IMAGE/next_element_from_image with image_id = -1 to
1175 do this. Set fringe bitmap face_id in it->face_id.
1176 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
1177 still realize it->face (i.e. the fringe bitmap face).
1178
7d8a0b55
MB
11792004-02-25 Miles Bader <miles@gnu.org>
1180
1181 * xdisp.c (check_it): Check string/string_pos consistency.
1182 (init_iterator): Initialize string-related fields properly.
1183
11842004-02-11 Miles Bader <miles@gnu.org>
1185
1186 * xdisp.c (produce_image_glyph): Force negative descents to zero.
1187
11882004-02-10 Miles Bader <miles@gnu.org>
1189
1190 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
1191 BLOCK_INPUT can be nested, so it doesn't make much sense.
1192
a64387ee 11932004-02-24 Michael Mauger <mmaug@yahoo.com>
ce35edd1
JR
1194
1195 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
1196 (xbm_read_bitmap_data): Use unsigned char for image data.
1197
92f5fba2
LT
11982004-02-23 Luc Teirlinck <teirllm@auburn.edu>
1199
1200 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
1201
8565fb3d
JR
12022004-02-22 Jason Rumney <jasonr@gnu.org>
1203
1204 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
1205 correctly over other bitmaps.
1206
a6eeaa81 12072004-02-21 Eli Zaretskii <eliz@gnu.org>
f8125c39
EZ
1208
1209 * emacs.c (USAGE1): Split into two halves.
1210 (USAGE2): Second half of the old USAGE1.
d8d95bc7
SM
1211 (USAGE3): Rename from USAGE2.
1212 (USAGE4): Rename from USAGE3.
f8125c39 1213
4effffca
EZ
12142004-02-21 Juri Linkov <juri@jurta.org>
1215
1216 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
1217 Fix --multibyte. Move --help, --version to USAGE2. Add alias
1218 --file. Fix -f, -l. Sort options. Untabify.
1219 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
1220
923c1e6f
LT
12212004-02-19 Luc Teirlinck <teirllm@auburn.edu>
1222
1223 * category.c (Fdefine_category, Fcategory_docstring)
1224 (Fget_unused_category, Fset_category_table)
1225 (Fcategory_set_mnemonics): Doc fixes.
1226
b0e225fd
KS
12272004-02-20 Kim F. Storm <storm@cua.dk>
1228
1229 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
1230 The following changes are relative to the 2004-01-21 revision.
1231 (NREAD_INPUT_EVENTS): Define as max number of input events to read
1232 in one call to read_socket_hook. Value is 8.
1233 (read_avail_input): Separate and rework handling of read_socket_hook
1234 and non-read_socket_hook cases. Use smaller input_event buffer
d8d95bc7
SM
1235 in read_socket_hook case, and repeat if full buffer is read.
1236 Use new local variable 'discard' to skip input after C-g.
b0e225fd
KS
1237 In non-read_socket_hook case, just use a single input_event, and
1238 call kbd_buffer_store_event on the fly for each character.
1239
b15aa9f9
SM
12402004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
1241
1242 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
1243 Remove unused `gu' alternative.
1244
83c9aa95
AS
12452004-02-19 Andreas Schwab <schwab@suse.de>
1246
1247 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
1248 warning.
1249
cc808173
KS
12502004-02-18 Kim F. Storm <storm@cua.dk>
1251
1252 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
1253 Fix last change.
1254
ab90a54d
KS
12552004-02-17 Kim F. Storm <storm@cua.dk>
1256
b26f249f
KS
1257 * xdisp.c (fast_find_position): Fix return value of new version;
1258 it was inverted compared to the 21.1 version.
1259 (get_window_cursor_type): Don't look at glyph if NULL.
1260 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 1261
ab90a54d
KS
1262 * keyboard.c: Rework previous change; it didn't consider that the
1263 buf array was allocated on the stack.
1264 (prev_read): Remove variable.
1265 (read_avail_input_buf): New static event buffer array.
b9568dfc 1266 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 1267 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
1268 Use in_read_avail_input to handle re-entrance; when re-entered,
1269 fully initialize and use tmp_buf array instead of read_avail_input_buf.
1270 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
1271 is always cleared on entry. To ensure that, we clear (just) the
1272 entries that were used before we return.
1273 (init_keyboard): Initialize read_avail_input_buf here.
1274
4e039f3f
EZ
12752004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change)
1276
1277 * cmds.c (Fend_of_line): Doc fix.
1278
7b5368c1
EZ
12792004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
1280
1281 * keyboard.c (prev_read): New static variable.
1282 (read_avail_input): Use it to zero out only those slots in buf[]
1283 that were used last time we were called.
1284
a6eeaa81 12852004-02-16 Eli Zaretskii <eliz@gnu.org>
ca4bc494
EZ
1286
1287 * Makefile.in (obj): Move fringe.o from here...
1288 (XOBJ, MAC_OBJ): ...to here.
1289
159c348e
SE
12902004-02-16 Stephen Eglen <stephen@gnu.org>
1291
1292 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
1293
d2f14999
SM
12942004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
1295
b15aa9f9
SM
1296 * data.c (Fbyteorder):
1297 * fringe.c (Fdefine_fringe_bitmap):
1298 * xdisp.c (handle_single_display_prop):
d2f14999
SM
1299 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
1300
8d50508a
JR
13012004-02-16 Jason Rumney <jasonr@gnu.org>
1302
1303 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
1304
dd4497dc
ST
13052004-02-15 Steven Tamm <steventamm@mac.com>
1306
1307 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
1308 controlling emulation of a three button mouse with option and
1309 command keys.
1310 (Qreverse, mac_get_enumlated_btn): Handle the emulation
b15aa9f9 1311 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
dd4497dc 1312
c9159cb3
KS
13132004-02-15 Kim F. Storm <storm@cua.dk>
1314
2cc52658
KS
1315 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
1316
c9159cb3
KS
1317 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
1318 Perform byte-swapping.
1319
12fde2dc
KS
13202004-02-14 Kim F. Storm <storm@cua.dk>
1321
1322 * dispextern.h (struct draw_fringe_bitmap_params): Change member
1323 bits from char to short to facilitate wider bitmaps.
1324 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
1325 member.
1326
1327 * fringe.c (struct fringe_bitmap): Change member bits from char to
1328 short to facilitate 16 bits wide bitmaps. Modify all standard
1329 bitmaps accordingly.
1330 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
1331 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
1332 (draw_fringe_bitmap): Ditto.
1333 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
1334 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
1335 handle up to 16 bits wide bitmaps.
1336 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 1337 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
1338
1339 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
1340 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
1341 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
1342
1343 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
1344 so it is no longer necessary to expand them here.
1345
1346 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
1347
9d7271e8
KS
13482004-02-12 Kim F. Storm <storm@cua.dk>
1349
1350 * window.c (Fwindow_fringes): Doc fix.
1351
706c1e4f
JD
13522004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1353
1354 * xselect.c (x_get_foreign_selection): Add new optional parameter
1355 time_stamp.
1356 (Fx_get_selection_internal): Ditto, pass time_stamp to
1357 x_get_foreign_selection.
1358
1359 * data.c (Fbyteorder): New function.
1360
c2d12b5d
JD
13612004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1362
1363 * atimer.c: Move include stdio.h to same place as in other files.
1364
1365 * region-cache.c: Ditto.
1366
1367 * sysdep.c: Ditto.
1368
1369 * xfaces.c: Ditto.
1370
4c1947b9
SS
13712004-02-09 Sam Steingold <sds@gnu.org>
1372
1373 * w32term.c (w32_draw_fringe_bitmap): Fixed a typo in the last patch.
1374
82722af3
KS
13752004-02-09 Kim F. Storm <storm@cua.dk>
1376
1377 * fringe.c: New file. Move original fringe related declarations
1378 and code from dispextern.h and xdisp.c here.
1379 Rework code to support user defined fringe bitmaps, redefining
1380 standard bitmaps, ability to overlay user defined bitmap with
1381 overlay arrow bitmap, and add faces to bitmaps.
1382 (Voverflow_newline_into_fringe): Declare here.
1383 (enum fringe_bitmap_align): New enum.
1384 (..._bits): All bitmaps are now defined without bitswapping; that
1385 is now done in init_fringe_once (if necessary).
1386 (standard_bitmaps): New array with specifications for the
1387 standard fringe bitmaps.
1388 (fringe_faces): New array.
1389 (valid_fringe_bitmap_id_p): New function.
1390 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
1391 (draw_fringe_bitmap): New function which draws fringe bitmap,
1392 possibly overlaying bitmap with cursor in right fringe or the
1393 overlay arrow in the left fringe.
1394 (update_window_fringes): Do not handle overlay arrow here.
1395 Compare and copy fringe bitmap faces.
1396 (init_fringe_bitmap): New function.
1397 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
1398 define and destroy user defined fringe bitmaps.
1399 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
1400 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
1401 (syms_of_fringe): New function. Defsubr new DEFUNs.
1402 DEFVAR_LISP Voverflow_newline_into_fringe.
1403 (init_fringe_once, init_fringe): New functions.
1404 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 1405
82722af3
KS
1406 * Makefile.in (obj): Add fringe.o.
1407 (fringe.o): New dependencies.
1408
1409 * dispextern.h (FRINGE_ID_BITS): New definition for number of
1410 bits allocated to hold a fringe number. Increase number of bits
1411 from 4 to 8 to allow user defined fringe bitmaps.
1412 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
1413 left_user_fringe_face_id, right_user_fringe_bitmap,
1414 right_user_fringe_face_id.
1415 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
1416 Move to new file fringe.c.
1417 (MAX_FRINGE_BITMAPS): Define here.
1418 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
1419 and overlay_p. Change member which to int.
1420 (struct redisplay_interface): New members define_fringe_bitmap
1421 and destroy_fringe_bitmap.
1422 (valid_fringe_bitmap_id_p): Add prototype.
1423 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
1424
1425 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
1426 arrows.
1427 (update_frame): Do flush_display if force_flush_display_p to
1428 ensure display (specifically fringes) are updated in a timely
1429 manner when resizing the frame by dragging the mouse.
1430 (update_window_line): Update row if overlay arrow changed.
1431 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
1432 or overlay arrow changed.
1433
1434 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
1435 syms_of_fringe, and init_fringe.
1436
1437 * frame.h (struct frame): New member force_flush_display_p.
1438
1439 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
1440 Add prototypes.
1441
a3993cc8 1442 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
a64387ee 1443 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
a3993cc8
KS
1444 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
1445 Use cursor color for displaying cursor in fringe.
82722af3
KS
1446 (x_redisplay_interface): Add null handlers for
1447 define_fringe_bitmap and destroy_fringe_bitmap functions.
1448
1449 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
1450 xterm.c to handle overlayed fringe bitmaps and to use cursor color
1451 for displaying cursor in fringe.
1452 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
1453 specific functions to define and destroy fringe bitmaps in fringe_bmp.
1454 (w32_redisplay_interface): Add them to redisplay_interface.
1455 (w32_term_init): Call w32_init_fringe instead of explicitly
1456 defining fringe bitmaps in fringe_bmp array.
1457 (x_delete_display): Call w32_reset_fringes instead of explicitly
1458 destroying fringe bitmaps in fringe_bmp array.
1459
1460 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
1461 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
1462 (continued_bits, continuation_bits, ov_bits, first_line_bits)
1463 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
1464 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
1465 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
1466 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
1467 Move fringe handling vars and code to new file fringe.c.
1468 (handle_display_prop): Handle left-fringe and right-fringe
1469 display properties; store user fringe bitmaps in iterator.
1470 (move_it_in_display_line_to): Handle cursor in fringe at eob.
1471 (clear_garbaged_frames): Set force_flush_display_p if resized.
1472 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
1473 (display_line): Handle cursor in fringe at eob.
1474 (display_line): Set row user fringe bitmaps from iterator.
1475
1476 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
1477 Use cursor color for displaying cursor in fringe.
1478 (x_redisplay_interface): Add null handlers for
1479 define_fringe_bitmap and destroy_fringe_bitmap functions.
1480
030400eb
JD
14812004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1482
1483 * macfns.c (Fx_change_window_property): Make doc string and
1484 parameters same as for X version.
1485
1486 * w32fns.c (Fx_change_window_property): Ditto.
1487
3af55251
KS
14882004-02-07 Kim F. Storm <storm@cua.dk>
1489
ec110e9e
KS
1490 * xdisp.c (hscroll_window_tree): Position cursor near to right
1491 margin in hscrolled window when jumping to end of line (rather
1492 than centering cursor).
1493
3af55251
KS
1494 * process.c (wait_reading_process_input): Don't do adaptive read
1495 buffering if waiting for a specific process.
1496
b0c138ce
LT
14972004-02-05 Luc Teirlinck <teirllm@auburn.edu>
1498
1499 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
1500 (Fread_minibuffer, Feval_minibuffer)
1501 (Fread_string, Fread_no_blanks_input)
1502 (Fcompleting_read): Doc fixes.
1503 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
1504 completion-regexp-list. Define Qcase_fold_search and staticpro it.
1505 (read_minibuf): Fix initial comment.
1506 (Ftry_completion, Fall_completions, Ftest_completion): Bind
1507 case-fold-serach to the value of completion-ignore-case when
1508 checking completion-regexp-list.
1509 (Fdisplay_completion_list): Make it handle arguments that are
1510 symbols. Doc fix.
1511
9676f5ad 15122004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 1513
9676f5ad 1514 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 1515
9676f5ad
JD
1516 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
1517 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 1518 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 1519 format. Remove unused variable cons.
5b698285
JD
1520
1521 * xselect.c: Include stdio,h.
1522
fc1d15f6
KH
15232004-02-05 Kenichi Handa <handa@m17n.org>
1524
ebaff4af
KH
1525 * fns.c (Fset_char_table_range): Fix previous change.
1526
fc1d15f6
KH
1527 * buffer.c (Fset_buffer_multibyte): Fix docstring.
1528
9676f5ad
JD
15292004-02-04 Luc Teirlinck <teirllm@auburn.edu>
1530
1531 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
1532
da75761f
SM
15332004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
1534
1535 * keymap.c (Vmouse_events): Rename from Vmenu_events.
1536 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
1537
13c5d120
KH
15382004-02-04 Kenichi Handa <handa@m17n.org>
1539
1540 * fns.c (Fset_char_table_range): Handle charsets ascii,
1541 eight-bit-control, and eight-bit-graphic correctly.
1542
2883d842
JR
15432004-02-03 Jason Rumney <jasonr@gnu.org>
1544
1545 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
1546
1547 * w32fns.c (x_to_w32_font): Likewise.
1548
69eff41f
JD
15492004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1550
1551 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
1552 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
1553
1554 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
1555 ClientMessages.
1556
1557 * xselect.c: Include termhooks.h and X11/Xproto.h
1558 (x_check_property_data, x_fill_property_data)
1559 (x_property_data_to_lisp, mouse_position_for_drop)
1560 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 1561 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
1562 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
1563
da75761f 1564 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
1565 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
1566 OUTER_P.
1567 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
1568 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
1569 if vector_ret_p is true.
1570 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 1571
a6eeaa81 15722004-02-02 Eli Zaretskii <eliz@gnu.org>
dcdbbb5d
EZ
1573
1574 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
1575 basename of FILE relative to it, not FILE itself.
1576
09721b31
KH
15772004-02-02 Kenichi Handa <handa@m17n.org>
1578
1579 * coding.c (coding_restore_composition): Check invalid
1580 composition data more rigidly.
1581
eb996101
LT
15822004-01-30 Luc Teirlinck <teirllm@auburn.edu>
1583
1584 * fileio.c (Fread_file_name_internal): Correctly handle the case
1585 where insert-default-directory is nil.
1586 (Fread_file_name): Always return an empty string if the user exits
1587 with an empty minibuffer. Adapt the docstring accordingly.
1588 (syms_of_fileio): Adapt the docstring of insert-default-directory
1589 to the change in Fread_file_name.
1590
a6eeaa81 15912004-01-29 Eli Zaretskii <eliz@gnu.org>
a0367d42
EZ
1592
1593 * alloca.c [!alloca]: Fix the prototype for xfree.
1594
13f52ed8
KH
15952004-01-29 Kenichi Handa <handa@m17n.org>
1596
1597 * fns.c (string_char_to_byte): Optimize for ASCII only string.
1598 (string_byte_to_char): Likewise.
1599
d57625a0
JR
16002004-01-28 Peter Runestig <peter@runestig.com>
1601
1602 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
1603
a64387ee 16042004-01-27 Steven Tamm <steventamm@mac.com>
911c78b4
ST
1605
1606 * unexmacosx.c (unexec_copy): Do not copy more than was
1607 requested to prevent overwriting during unexec.
1608
eb37b8fd
JD
16092004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1610
ce38070a
JD
1611 * process.c (sigchld_handler): Add comment about not calling malloc.
1612
eb37b8fd
JD
1613 * process.h: Add extern to synch_process_termsig.
1614
a64387ee 16152004-01-27 Steven Tamm <steventamm@mac.com>
21a3e657 1616
da75761f
SM
1617 * macterm.c (make_mac_frame, make_mac_terminal_frame):
1618 Move setting of scroll bars from make_mac_frame to
1619 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 1620
d62a265d
RS
16212004-01-26 Richard M. Stallman <rms@gnu.org>
1622
1623 * search.c (Freplace_match): Handle nonexistent
1624 back-references properly.
1625
16262004-01-03 Richard M. Stallman <rms@gnu.org>
1627
1628 * window.c (decode_any_window): New function.
1629 (Fwindow_height, Fwindow_width, Fwindow_edges)
1630 (Fwindow_pixel_edges, Fwindow_inside_edges)
1631 (Fwindow_inside_pixel_edges): Use decode_any_window.
1632
ff236419
JD
16332004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1634
1635 * process.h: synch_process_termsig new variable.
1636
1637 * callproc.c: Define synch_process_termsig.
1638 (Fcall_process): Initiate synch_process_termsig to zero and
1639 check if non-zero and get signal name after subprocess has ended.
1640
1641 * process.c (sigchld_handler): Set synch_process_termsig
1642 if terminated by a signal. synch_process_death setting removed.
1643
1644 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
1645
41b867ea
AS
16462004-01-26 Andreas Schwab <schwab@suse.de>
1647
1648 * print.c (print_preprocess): Declare size as EMACS_INT to not
1649 lose bits.
1650 (print_object): Likewise.
1651 * alloc.c (Fpurecopy): Likewise.
1652
a08084ff
LT
16532004-01-25 Luc Teirlinck <teirllm@auburn.edu>
1654
1655 * window.c (Fwindow_minibuffer_p): Doc fix.
1656
b19ac475
JY
16572004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
1658
1659 * editfns.c (Fformat): Make both passes accept the same set of flags.
1660
fe905025
KH
16612004-01-23 Kenichi Handa <handa@m17n.org>
1662
1663 * fns.c (Fmd5): If OBJECT is a buffer different from the current
1664 one, set buffer to OBJECT temporarily.
1665
438fc6c0
SM
16662004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
1667
455316e2
SM
1668 * keyboard.c (kbd_buffer_gcpro): Remove.
1669 (kbd_buffer_store_event, clear_event, Fdiscard_input)
1670 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
1671 Don't initialize and/or maintain the variable any more. It was made
1672 redundant by my commit of 2003-06-15.
1673
438fc6c0
SM
1674 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
1675
5335a4ee
JD
16762004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1677
1678 * lisp.h: Add undef DECL_ALIGN.
1679
dcdaeebc
SM
16802004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
1681
1682 * process.c (wait_reading_process_input) [SYNC_INPUT]:
1683 Check interrupt_input_pending explicitly.
1684
1685 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
1686
1687 * keyboard.c (handle_async_input): New fun,
1688 extracted from input_available_signal.
1689 (input_available_signal, reinvoke_input_signal): Use it.
1690
9076a823
SM
16912004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
1692
d7107586
SM
1693 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
1694
1695 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
1696 manipulation macros for when tags are in the lower bits.
1697 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
1698 (DECL_ALIGN): New macro.
1699 (DEFUN): Use it.
1700
1701 * lisp.h [ENABLE_CHECKING]: Don't force union type.
1702
1703 * s/darwin.h (__attribute__): Remove outdated workaround.
1704
1705 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
1706
1707 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
1708 Don't check range of malloc address.
1709 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
1710
9076a823
SM
1711 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
1712
1713 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
1714
ba029065
KH
17152004-01-19 Kenichi Handa <handa@m17n.org>
1716
1717 * fontset.c (fontset_font_pattern): Fix previous change.
1718
7af0e8d7
MB
17192004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
1720
1721 * xdisp.c (Voverflow_newline_into_fringe)
1722 (move_it_in_display_line_to, redisplay_internal)
1723 (update_window_fringes, redisplay_window, display_line, window):
1724 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
1725 that it compiles without a window-system.
1726 * dispnew.c (direct_output_for_insert, update_window): Likewise.
1727
77a9cf69
KS
17282004-01-16 Kim F. Storm <storm@cua.dk>
1729
1730 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
1731
a64387ee 1732 * buffer.c (init_buffer_once): Set buffer_defaults and
77a9cf69
KS
1733 buffer_local_flags for indicate_buffer_boundaries.
1734 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
1735 default- variable for it.
1736
1737 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
1738 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 1739 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
1740 overflowing newlines into right fringe.
1741 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
1742 and indicate_bottom_line_p for buffer boundaries and scrolling.
1743 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
1744 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
1745 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
1746 and HOLLOW_SQUARE_BITMAP.
1747 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
1748 Add prototypes.
1749
1750 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
1751 instead of related indicator fields.
1752 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
1753 (direct_output_for_insert): Handle exact width lines like
1754 contined lines. Call update_window_fringes.
1755 (update_window): Call update_window_fringes.
1756 (scrolling_window): Don't skip desired rows with changed bitmaps.
1757 Check if fringe bitmaps changes when assigning scrolled rows.
1758
1759 * xdisp.c (Voverflow_newline_into_fringe): New variable.
1760 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
1761 (move_it_in_display_line_to): Overflow newline into fringe for
1762 rows that are exactly as wide as the window.
1763 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
1764 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
1765 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
1766 (fringe_bitmaps): Add new bitmaps.
1767 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
1768 Select proper bitmap for cursor in fringe when appropriate.
1769 Handle alignment of bitmap to top or bottom of row.
1770 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
1771 done by update_window_fringes.
1772 (update_window_fringes, draw_window_fringes): New functions.
1773 (redisplay_internal): Call update_window_fringes in case only
1774 cursor row is updated.
1775 (redisplay_window): Call update_window_fringes.
1776 Explicitly call draw_window_fringes if redisplay was done using
1777 the current matrix or the overlay arrow is in the window.
1778 (try_window_reusing_current_matrix): Mark scrolled rows for
1779 fringe update (to update buffer-boundaries / scrolling icons).
1780 (find_last_unchanged_at_beg_row): Handle exact width lines line
1781 continued lines.
1782 (display_line): Overflow newline into fringe for rows that are
1783 exactly as wide as the window. Don't append space for newline
d7107586 1784 in this case.
77a9cf69
KS
1785 (notice_overwritten_cursor): Explicitly clear cursor bitmap
1786 in fringe as if it had been overwritten.
1787 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 1788 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
1789 void-text-area-pointer as user options.
1790 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 1791
77a9cf69
KS
1792 * xterm.c (x_update_window_end): Call draw_window_fringes.
1793 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
1794 in row instead of actually drawing fringe bitmaps.
1795 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
1796 (x_draw_window_cursor): Draw cursor in fringe.
1797
1798 * w32term.c (x_update_window_end): Call draw_window_fringes.
1799 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
1800 in row instead of actually drawing fringe bitmaps.
1801 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
1802 (w32_draw_window_cursor): Draw cursor in fringe.
1803
1804 * macterm.c (x_update_window_end): Call draw_window_fringes.
1805 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
1806 in row instead of actually drawing fringe bitmaps.
1807 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
1808 (mac_draw_window_cursor): Draw cursor in fringe.
1809
a633a954
JD
18102004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1811
1812 * xterm.c (handle_one_xevent): Don't handle characters that are part
1813 of an old style (XLookupString) compose sequence.
1814
80460525
KH
18152004-01-15 Kenichi Handa <handa@m17n.org>
1816
1817 * search.c (Freplace_match): Use make_multibyte_string or
1818 make_unibyte_string according to the buffer multibyteness.
1819
7fc34f85
SM
18202004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
1821
1822 * alloc.c (struct interval_block, struct string_block)
1823 (struct symbol_block, struct marker_block, live_string_p)
1824 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
1825 Better preserve alignment for objects in blocks.
1826 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
1827
1828 * lread.c (defvar_per_buffer): Remove dead declaration.
1829
1830 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
1831 space size.
1832
66070bd1
JD
18332004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1834
1835 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
1836 if a key press should pop down. Only pop down if a key is pressed
1837 outside the menu/dialog.
1838 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
1839 popup_get_selection.
1840 (create_and_show_dialog): Pass 1 for down_on_keypress to
1841 popup_get_selection.
1842
de7515d6
JD
18432004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1844
1845 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
1846 BLOCK/UNBLOCK_INPUT.
1847
160b1b50
JD
18482004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1849
1850 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
1851 specified.
1852
3a9f36e6
KH
18532004-01-08 Kenichi Handa <handa@m17n.org>
1854
1855 * editfns.c (Fformat): Fix '&' to '&&'.
1856
3803eb32
AS
18572004-01-08 Andreas Schwab <schwab@suse.de>
1858
1859 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
1860 size if PSEUDOVECTOR_FLAG is set.
1861
9da88f37
KH
18622004-01-07 Kenichi Handa <handa@m17n.org>
1863
74ac5074
KH
1864 * charset.c (Fdeclare_equiv_charset): Fix docstring.
1865
9da88f37
KH
1866 * fontset.c (fontset_ref_via_base): Fix previous change.
1867
05faee07
KS
18682004-01-07 Kim F. Storm <storm@cua.dk>
1869
1870 * process.c (read_process_output): Only activate adaptive
1871 buffering if we read less than 256 bytes at a time.
1872
634910c8
KS
18732004-01-06 Kim F. Storm <storm@cua.dk>
1874
1875 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
1876 object and image object. Return glyph width and height.
1877 (mode_line_string, marginal_area_string): Ditto.
1878
1879 * dispextern.h (buffer_posn_from_coords, mode_line_string)
1880 (marginal_area_string): Fix prototypes.
1881
1882 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
1883 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
1884 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
1885
1886 * keyboard.c (make_lispy_position): Use modified mode_line_string,
1887 buffer_posn_from_coords, and marginal_area_string functions to
1888 include both string object and image object in the lispy position.
1889 Also add actual glyph width and height to position.
1890 (read_key_sequence): Use real buffer position from mouse
1891 event to find keymap property even when click is in marginal area.
1892
1893 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
1894 mode_line_string and marginal_area_string functions to handle
1895 both string object and image object properties.
d7107586 1896
57951c2e
AS
18972004-01-06 Andreas Schwab <schwab@suse.de>
1898
1899 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
1900 character.
1901
181e6a61
AS
19022004-01-02 Andreas Schwab <schwab@suse.de>
1903
d7107586
SM
1904 * macterm.c (emacs_options, x_initialized, same_x_server):
1905 Remove unused (and duplicated) definitions.
181e6a61 1906
31e0fbdd
KS
19072004-01-02 Kim F. Storm <storm@cua.dk>
1908
1909 * process.h (struct Lisp_Process): New members for adaptive read
1910 buffering: adaptive_read_buffering, read_output_delay, and
1911 read_output_skip.
1912
1913 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
1914 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
1915 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
1916 (process_output_delay_count, process_output_skip): New vars.
1917 (Vprocess_adaptive_read_buffering): New variable.
1918 (make_process): Initialize adaptive read buffering members.
1919 (Fstart_process): Set adaptive_read_buffering member.
1920 (deactivate_process): Cleanup adaptive read buffering.
1921 (wait_reading_process_input): Temporarily omit delayed
1922 subprocesses from the set of file descriptors to read from;
1923 adjust the select timeout if we skipped any subprocesses.
1924 (read_process_output): Increase adaptive read buffering delay if
1925 we read less than a full buffer; reduce delay when we read a
1926 full buffer.
1927 (send_process): Simplify using local Lisp_Process var.
1928 Reset adaptive read buffering delay after write.
1929 (init_process): Initialize process_output_delay_count and
1930 process_output_skip.
1931 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
1932
68c6a789
JR
19332004-01-01 Jason Rumney <jasonr@gnu.org>
1934
d7107586 1935 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 1936
3f70fe82
LT
19372003-12-30 Luc Teirlinck <teirllm@auburn.edu>
1938
1939 * print.c (Ferror_message_string): Add hyperlink in the docstring
1940 to the definition of `signal' in the Elisp manual.
1941 * eval.c (Fsignal): Ditto.
1942
a64387ee 19432003-12-29 James Clark <jjc@jclark.com> (tiny change)
c2be49ed
EZ
1944
1945 * fns.c (internal_equal): Return t for two NaN arguments.
1946
7abd90ea
RS
19472003-12-29 Richard M. Stallman <rms@gnu.org>
1948
1949 * data.c (store_symval_forwarding): Handle setting
1950 default-fill-column, etc., by changing the value in
1951 buffers that use the default.
1952
1953 * minibuf.c (Fset_minibuffer_window): Doc fix.
1954
1955 * fileio.c (choose_write_coding_system): Ignore auto_saving
1956 if using the visited file for auto saves.
1957 (Fwrite_region): Don't update SAVE_MODIFF
1958 if auto-saving in visited file.
1959
3e7cfcdc
KH
19602003-12-29 Kenichi Handa <handa@m17n.org>
1961
1962 * dispextern.h (face_font_available_p): Extern it.
1963
1964 * fontset.c (Voverriding_fontspec_alist): New variable.
1965 (lookup_overriding_fontspec): New function.
d7107586 1966 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
1967 (fontset_font_pattern): Likewise.
1968 (regulalize_fontname): New function.
1969 (Fset_fontset_font): Call regulalize_fontname.
1970 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
1971 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
1972 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
1973
1974 * xfaces.c (face_font_available_p): New function.
1975
7abd90ea
RS
19762003-12-28 Richard M. Stallman <rms@gnu.org>
1977
1978 * buffer.c (Fother_buffer): Don't crash if BUF is nil
1979 or if its name is nil.
1980
1981 * buffer.c (Fkill_buffer): Don't delete auto-save file
1982 if it's the same as the visited file.
1983
de1d1a40
LT
19842003-12-28 Luc Teirlinck <teirllm@auburn.edu>
1985
1986 * coding.c (Fcheck_coding_system): Doc fix.
1987
204fb75e
KS
19882003-12-28 Kim F. Storm <storm@cua.dk>
1989
1990 * Makefile.in (eval.o): Depend on dispextern.h.
1991
1992 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
1993 image glyph using image's ascent.
1994 (mode_line_string): Return image glyph as object clicked on.
1995 Adjust y0 for image glyph using image's ascent.
1996
1997 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
1998 (struct glyph): New members, ascent and descent. Used to save
1999 this glyph's ascent and descent, instead of having.
2000 (struct glyph): Declare member face_id using FACE_ID_BITS.
2001 (find_hot_spot): Add prototype.
2002
2003 * keyboard.c (Qimage): Remove extern (now in lisp.h).
2004 (QCmap): Declare extern.
2005 (make_lispy_position): When position is inside image hot-spot,
2006 use hot-spot element's id as posn element.
2007
2008 * lisp.h (IMAGEP): New macro to test for image object type.
2009 (Qimage): Declare extern.
2010
2011 * macfns.c (Qimage): Remove extern (now in lisp.h).
2012 (valid_image_p, parse_image_spec): Use IMAGEP macro.
2013
2014 * macterm.c (Qface, Qmouse_face): Remove unused externs.
2015
2016 * w32fns.c (Qimage): Remove extern (now in lisp.h).
2017 (valid_image_p, parse_image_spec): Use IMAGEP macro.
2018
2019 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
2020
2021 * w32term.c (Qface, Qmouse_face): Remove unused externs.
2022
2023 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
2024 pointer types.
2025 (Qrelative_width, Qalign_to): Remove unused variables.
2026 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
2027 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
2028 image maps.
d7107586 2029 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
2030 new dx and dy args.
2031 Remove buffer_only_p arg (always 0). Simplify code accordingly.
2032 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
2033 than row's ascent and height, to get sensible height on tall rows.
2034 (build_desired_tool_bar_string): Remove Qimage extern.
2035 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
2036 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
2037 image glyph is alone on the last line.
2038 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 2039 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 2040 (on_hot_spot_p): New function to check if position is inside an
d7107586 2041 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
2042 (find_hot_spot): New function to search for image hot-spot.
2043 (Flookup_image_map): New defun to search for image hot-spot.
2044 (define_frame_cursor1): New aux function to determine frame pointer.
2045 (note_mode_line_or_margin_highlight, note_mouse_highlight):
2046 Handle `pointer' text property and :pointer image property to
2047 control frame pointer shape. Detect image hot-spots for pointer
2048 and help_echo properties. Use define_frame_cursor1.
2049 (note_mouse_highlight): Use Vvoid_text_area_pointer.
2050 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
2051 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
2052
2053 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
2054
2055 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
2056 (Qimage): Remove extern (now in lisp.h).
2057 (valid_image_p, parse_image_spec): Use IMAGEP macro.
2058
2059 * xmenu.c (show_help_event): Remove unused code.
2060
2061 * xterm.c (Qface, Qmouse_face): Remove unused externs.
2062 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
2063 row's ascent and descent, to get a sensible height on tall rows.
2064
fc052137
LT
20652003-12-25 Luc Teirlinck <teirllm@auburn.edu>
2066
2067 * minibuf.c (Fcompleting_read): Undo previous change.
2068
a64387ee 20692003-12-25 Lars Hansen <larsh@math.ku.dk>
b9148500
LH
2070
2071 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
2072 Arguments GCPRO'ed in call to file name handler.
2073
56ffd194
TTN
20742003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
2075
2076 * termcap.c (tgetst1): Scan for "%pN"; if all
2077 N are continuous in [1,9], remove all "%pN".
2078
5202d23d
JD
20792003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2080
f26fab36
JD
2081 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
2082
5202d23d
JD
2083 * xfaces.c (lface_fully_specified_p): Take into account that
2084 MAC OS always have unspecified stipple.
2085
8babaa59
TTN
20862003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
2087
2088 * tparam.c (tparam1): Add handling for `%pN', which
2089 means use param N for the next substitution.
2090
2d176448
TTN
20912003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
2092
2093 * xfaces.c (Fcolor_gray_p): Fix omission bug:
2094 In case `frame' is nil, consult the selected frame.
2095 (Fcolor_supported_p): Likewise.
2096
adb0708c
LT
20972003-12-23 Luc Teirlinck <teirllm@auburn.edu>
2098
000eeb15
LT
2099 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
2100 Doc fixes.
0dc72b11
LT
2101
2102 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
2103 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
2104 (Fread_from_minibuffer): Delete code moved into read_minibuf.
2105 Doc fix.
2106 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
2107 read_minibuf.
2108 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 2109 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 2110
2e4d132b
KH
21112003-12-03 Kenichi Handa <handa@m17n.org>
2112
2113 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
2114 encoding sequence.
2115
3999c705
KH
21162003-12-01 Kenichi Handa <handa@m17n.org>
2117
2118 * composite.c (syms_of_composite): Don't make the compostion hash
2119 table week.
2120
d344ecbb
LT
21212003-11-30 Luc Teirlinck <teirllm@auburn.edu>
2122
2123 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
2124 * textprop.c (Fget_char_property_and_overlay): New function.
2125 (syms_of_textprop): Defsubr it.
2126
03d6484e
JD
21272003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2128
019b1f0e
JD
2129 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
2130 to compile on terminal configuration.
2131
03d6484e
JD
2132 * fileio.c (Fread_file_name): Check use_file_dialog also before
2133 calling Fx_file_dialog.
2134
2135 * fns.c: use_file_dialog: New variable.
2136 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
2137
442d3fd0
KS
21382003-11-29 Kim F. Storm <storm@cua.dk>
2139
2140 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
2141 (syms_of_msdos): Don't intern and staticpro them.
2142
0f6a07a8
KS
21432003-11-27 Kim F. Storm <storm@cua.dk>
2144
2145 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
2146 coordinates relative to glyph at posn. If glyph is an image,
2147 return that as object at posn. Callers changed.
2148 (mode_line_string, marginal_area_string): Calculate and return
2149 pixel coordinates relative to glyph. Callers changed.
2150
2151 * dispextern.h (buffer_posn_from_coords, mode_line_string)
2152 (marginal_area_string): Fix prototypes.
2153 (window_box_left_offset, window_box_right_offset): Add prototypes.
2154
2155 * frame.h (get_specified_cursor_type, get_window_cursor_type):
2156 Remove prototypes.
2157
2158 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
2159
2160 * keyboard.c (make_lispy_position): Add x and y coordinates
2161 relative to the current glyph as 7th element of position.
2162 If glyph is an image, return it in the object element.
2163 (read_key_sequence): Skip checks for keymap property in cases
2164 where POSN_STRING is not a string (e.g. an image).
2165
2166 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
2167 (Vshow_text_cursor_in_void): New variable.
2168 (glyph_to_pixel_coords): Don't use negative hpos.
2169 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
2170 (append_stretch_glyph): Change ascent arg to be actual value
2171 in pixels rather than ratio to height. Callers changed.
2172 (calc_pixel_width_or_height): New aux function, implementing
2173 pixel based artihmetic for glyph widths and heights.
2174 (produce_stretch_glyph): Use calc_pixel_width_or_height for
2175 :width, :height, :align-to, and :ascent, thus allowing these to
2176 be specified in pixels as well as multiples of characters.
2177 Don't produce stretch glyphs with zero width or height.
2178 (get_specified_cursor_type): Declare static.
2179 (get_window_cursor_type): Declare static. Add glyph arg to be
2180 able to know when cursor is on an image; always substitute
2181 hollow-box cursor for filled-box cursor on images, to avoid
2182 negative images and flicker when blinking the cursor.
2183 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
2184 (note_mode_line_or_margin_highlight): Use non-text cursor rather
2185 than vertical scroll-bar cursor in display margins.
2186 (note_mouse_highlight): Use non-text cursor rather than text
2187 cursor in fringes and over images in the text area.
2188 Use non-text cursor when mouse pointer is outside editable text,
2189 i.e. in the void after end-of-line or end-of-buffer; this was
2190 already done for W32, but is now standard for all systems --
2191 user can toggle show-text-cursor-in-void to get old behaviour.
2192 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
2193 Vdisplay_pixels_per_inch.
2194
00498bfc
AS
21952003-11-25 Andreas Schwab <schwab@suse.de>
2196
2197 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
2198 EMACS_INT to not lose bits.
2199 (Ffillarray): Don't set bits beyond the size of a bool vector.
2200
edaa824d
KS
22012003-11-25 Kim F. Storm <storm@cua.dk>
2202
2203 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
2204 define this defun on systems that cannot use stderr as lvalue.
2205
74d6f539
GM
22062003-11-24 Gerd Moellmann <gerd@gnu.org>
2207
2208 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
2209 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
2210 ld's default is incompatible with unexec.
2211
6a1ff3ba
KS
22122003-11-23 Kim F. Storm <storm@cua.dk>
2213
63dc7c6b
KS
2214 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
2215 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
2216 (Fforce_window_update): New defun.
2217 (syms_of_window): Defsubr it.
2218 (Fset_window_margins, Fset_window_fringes): Doc fix.
2219
6a1ff3ba
KS
2220 * print.c (Fredirect_debugging_output): New defun.
2221 (syms_of_print): Defsubr it.
2222
aef109b7
LT
22232003-11-22 Luc Teirlinck <teirllm@auburn.edu>
2224
2225 * fns.c (Fset_char_table_parent): Doc fix.
2226
6a1ff3ba 22272003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
2228
2229 * dispnew.c (buffer_posn_from_coords): Return actual row/column
2230 for glyph clicked on, rather than (unused) pixel positions.
2231 (mode_line_string, marginal_area_string): Change X and Y args to
2232 pointers for returning actual row/column for glyph clicked on.
2233 Simplify and optimize loops.
2234
aef109b7
LT
2235 * dispextern.h (mode_line_string, marginal_area_string):
2236 Update prototypes.
63ccbe21
KS
2237
2238 * keyboard.c (make_lispy_position): New function for generating
2239 mouse click positions from frame and pixel coordinates.
2240 Enhanced to return buffer position and actual row/column for
2241 events outside the text area using updated mode_line_string and
2242 marginal_area_string functions.
2243 Return left-fringe and right-fringe clicks as such, rather than
2244 clicks in text area.
2245 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
2246 pixel_to_glyph_coords, as we never use the results.
2247 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
2248 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
2249 Eliminate unused code in WHEEL_EVENT handling.
2250 (make_lispy_movement): Use make_lispy_position.
2251
2252 * window.c (coordinates_in_window): Remove redundant tests.
2253 Fix returned X pixel value for left-margin.
2254
2255 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
2256 mode_line_string and marginal_area_string parameters.
2257
a64387ee 22582003-11-22 Lars Hansen <larsh@math.ku.dk>
930a9995 2259
d7107586
SM
2260 * w32.c (struct the_group, getgrgid): Add.
2261 * mac.c (struct my_group, getgrgid): Add.
aef109b7 2262
3dbf3426
LT
22632003-11-21 Luc Teirlinck <teirllm@auburn.edu>
2264
2265 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
2266
cae8ddbb 22672003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 2268
d7107586
SM
2269 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
2270 include in call to file name handler. Optionally translate numeric
2271 UID and GID to strings. Update docstring.
2272 (directory_files_internal): Add parameter ID-FORMAT.
2273 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
2274 include in call to file name handler and call to
2275 directory_files_internal. Update Docstring.
2276 (Fdirectory_files): Add dummy parameter in call to
2277 directory_files_internal.
2278 * lisp.h (Qinteger): Add.
2279 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
2280 (Ffile_attributes): Add parameter.
2281 * data.c (Qinteger): Export.
cae8ddbb 2282
2550b848
LT
22832003-11-21 Luc Teirlinck <teirllm@auburn.edu>
2284
3dbf3426 2285 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 2286
88380018
KS
22872003-11-19 Kim F. Storm <storm@cua.dk>
2288
2289 * xdisp.c (init_iterator): Initialize it->start to position
2290 before reseating (in case start position is invisible).
2291 (init_to_row_start): Set it->start to row-start.
2292 (redisplay_window): Accept optional_new_start if start position
2293 is invisible (in which case IT_CHARPOS overshoots PT).
2294 (display_line): Setup row->start from it->start (rather than
2295 it->current which is wrong if first char on line is invisible).
2296 When done, reseat it->start to it->current (= start of next row).
2297 (expose_area): Fix exposure of text area when first char (e.g. TAB)
2298 is only partially visible.
2299
2300 * dispextern.h (struct it): New member start.
2301
854c1a59
SM
23022003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
2303
455316e2
SM
2304 * alloc.c (make_float, Fcons): Clear the markbit at init time.
2305 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
2306 of block_index outside of the macro call.
2307 (Fgarbage_collect): Remove null code.
2308
2309 * m/amdx86-64.h: Don't redefine XPNTR.
2310
854c1a59
SM
2311 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
2312 of VALMASK.
2313
2314 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
2315 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
2316 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
2317
2318 * lisp.h (VALMASK): Only define for non-union type.
2319 (MARKBIT): Remove.
2320 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
2321 (XTYPE): Define unconditionally.
2322 (XSETTYPE): Remove one more remnant.
2323 (EQ): Define differently for the union and non-union cases.
2324 (INTMASK): New bit mask.
2325 (struct Lisp_Marker): Move down to prepare for upcoming patch.
2326 (GC_EQ): Delegate to EQ.
2327
2328 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
2329
a0c6ef2d
JD
23302003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2331
2332 * xterm.c (x_window_to_scroll_bar): Move check of display to
2333 where window_id is compared.
2334
859492c4
KS
23352003-11-17 Kim F. Storm <storm@cua.dk>
2336
2337 * dispextern.h (struct it): New member first_vpos.
2338
2339 * xdisp.c (start_display): Set it->first_vpos.
2340 (try_window_id): Use first_vpos to start display in first _text_
2341 line if no reusable lines at start of window with header line.
2342
810f2256
JD
23432003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2344
7c402969 2345 * w32fns.c (XPutPixel):
854c1a59
SM
2346 * w32bdf.c (w32_init_bdf_font):
2347 * sunfns.c (sel_read):
2348 * process.c (Fmake_network_process):
2349 * frame.c (store_frame_param):
2350 * fontset.c (Fset_fontset_font):
2351 * emacs.c (shut_down_emacs):
a64387ee 2352 * ccl.c (ccl_driver): Remove period at end of error message.
7c402969 2353
a32e9bfd
JD
2354 * config.in: Regenerate.
2355
810f2256
JD
2356 * xfns.c (x_window_to_frame, x_any_window_to_frame)
2357 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
2358 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
2359 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
2360 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
2361
2362 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
2363
2364 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
2365 (XTmouse_position, handle_one_xevent): Pass Display* to
2366 x_window_to_scroll_bar.
2367 (x_window_to_scroll_bar): Take a Display* argument.
2368 Check that display for frame is equal to Display* argument.
854c1a59 2369 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
2370 x_display_info_for_display instead. Use Display in xev instead
2371 of GDK_DISPLAY.
2372 (x_dispatch_event): Call x_display_info_for_display.
2373 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
2374 (x_connection_closed): Call xg_display_close for GTK.
2375 (x_term_init): Call xg_display_open for additional displays.
2376 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
2377 for GTK.
2378
2379 * xmenu.c (single_menu_item, mouse_position_for_popup)
2380 (x_activate_menubar): Formatting adjustments.
2381
2382 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
2383 adjustments.
2384
2385 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
2386 (xg_display_close, xg_create_default_cursor)
2387 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
2388 handling.
854c1a59
SM
2389 (xg_left_ptr_cursor): Remove.
2390 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
2391 cursor here.
2392 (xg_win_to_widget): Take Display* argument, call
2393 gdk_xid_table_lookup_for_display.
2394 (xg_create_frame_widgets, xg_get_file_name, create_menus)
2395 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
2396 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
2397 in FRAME_X_DISPLAY_INFO.
2398 (xg_get_scroll_id_for_window): Take Display* argument.
2399 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 2400 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256
JD
2401
2402 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
2403 Display* argument also. Declare xg_display_open,
2404 xg_display_close, xg_create_default_cursor.
2405
0b03cc78
JD
24062003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2407
2408 * xterm.c (x_detect_focus_change): Do not change focus frame for
2409 Enter/LeaveNotify if the current focus frame has explicit focus.
2410
77e688fa
KS
24112003-11-14 Kim F. Storm <storm@cua.dk>
2412
2413 * dispnew.c (update_text_area): Fix redisplay error when hscroll
2414 is active and first glyph is only partially visible.
854c1a59 2415
dd429b03
KH
24162003-11-13 Kenichi Handa <handa@m17n.org>
2417
2418 * xdisp.c (select_frame_for_redisplay): New function.
2419 (redisplay_internal): Record also selected_frame for
2420 unwind_redisplay. Call select_frame_for_redisplay before
2421 redrawing each frame.
2422 (unwind_redisplay): Argument changed to a cons.
2423
6d9266f4
LT
24242003-11-12 Luc Teirlinck <teirllm@auburn.edu>
2425
2426 * fns.c (Fstring_to_multibyte): Doc fix.
2427
80060eb3
KH
24282003-11-11 Kenichi Handa <handa@m17n.org>
2429
2430 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
2431
74305183
JD
24322003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2433
2434 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
2435 program specified positions.
2436
cfda993e
JD
24372003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2438
2439 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
2440
df211069
KH
24412003-11-08 Kenichi Handa <handa@m17n.org>
2442
2443 * Makefile.in (lisp): Add kannada.el.
2444 (shortlisp): Likewise.
2445
4307d534
KH
24462003-11-07 Kenichi Handa <handa@m17n.org>
2447
854c1a59
SM
2448 * coding.c (coding_allocate_composition_data):
2449 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
2450 (coding_restore_composition): Detect invalid composition data.
2451 Give Fstring and Fvector a Lispy integer, not C int.
2452
854c1a59
SM
24532003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
2454
2455 * floatfns.c (Flogb): Don't use VALMASK.
2456
2457 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
2458 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
2459
2460 * lisp.h (XINT): Move the cast to clarify what is going on.
2461 (GCTYPEMASK, XSETTYPE): Remove.
2462 (XGCTYPE): Make it an alias of XTYPE.
2463
d04103a1
JD
24642003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2465
2466 * xterm.c (x_term_init): Fix formatting.
2467
da18b5ac
JD
24682003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2469
2470 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
2471 and xg_did_tearoff.
2472
2473 * gtkutil.c: Remove variable xg_did_tearoff.
2474 (xg_have_tear_offs): New function.
2475 (tearoff_remove): Just decrease xg_detached_menus.
2476 (tearoff_activate): Increase xg_detached_menus and call
2477 tearoff_remove when tearoff is removed.
854c1a59 2478 (xg_keep_popup): Remove function.
da18b5ac
JD
2479 (create_menus): Give add_tearoff_p as argument to recursive
2480 call to create_menus.
2481 (xg_create_widget): Use variables instead of multiple
2482 strcmp. Tell create_menus to create tear off only for
2483 menu bar menus.
2484 (xg_update_menubar): Change title for a detached menu also.
2485 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
2486 of deep_p.
2487 (xg_initialize): Initialize xg_detached_menus, remove
2488 initialization of xg_did_tearoff.
2489
2490 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
2491 xg_have_tear_offs returns non-zero.
2492 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
2493 call to xg_keep_popup.
2494
64d4923e
AC
24952003-11-01 Andrew Choi <akochoi@shaw.ca>
2496
2497 * macterm.c (XTread_socket): Handle menubar selection and grow
2498 window only for mouseDown events.
854c1a59 2499
6cc8bc07
JD
25002003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2501
2502 * xterm.c (x_term_init): For GTK part, increase x_initialized
2503 to check for more than one display. Use error instead of return 0.
2504
043131c4
AC
25052003-10-31 Andrew Choi <akochoi@shaw.ca>
2506
854c1a59 2507 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
2508 (copy_dysymtab): Call it.
2509
bdda99a1
LT
25102003-10-31 Luc Teirlinck <teirllm@auburn.edu>
2511
2512 * eval.c (Fdefvaralias): Doc fix.
2513
800f42ff 25142003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
2515
2516 * data.c (Fsetplist): Doc fix.
2517
ef35b389
LK
25182003-10-14 Lute Kamstra <lute@gnu.org>
2519
2520 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 2521
ef35b389 25222003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 2523
07107abc
KS
2524 * window.c (Fset_window_margins): Simplify arg checking.
2525
f7005886
RS
25262003-10-13 Richard M. Stallman <rms@gnu.org>
2527
2528 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
2529 (print_partial_compiled_pattern): Replace assert with a printout.
2530 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
2531
2532 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
2533
2534 * window.c (Fset_window_margins): Allow only integers as args.
2535 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
2536 Doc fixes.
2537
9c0c2af5
LK
25382003-10-13 Lute Kamstra <lute@gnu.org>
2539
2540 * window.c (Fset_window_fringes): Elaborate docstring.
2541
3f080e4e
AC
25422003-10-12 Andrew Choi <akochoi@shaw.ca>
2543
854c1a59 2544 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 2545
3f080e4e
AC
2546 * s/darwin.h (GC_MARK_STACK): Define.
2547
0aa513ed
JD
25482003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2549
2550 * window.c (shrink_windows): New function.
2551 (size_window): Call shrink_windows to calculate window sizes when
2552 shrinking frame with more than one window.
2553
6aa8858a
KS
25542003-10-12 Kim F. Storm <storm@cua.dk>
2555
2556 * xdisp.c (compute_fringe_widths): Doc fix.
2557
c2164d91
KH
25582003-10-08 Kenichi Handa <handa@m17n.org>
2559
854c1a59 2560 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 2561
f82ac129
KH
25622003-10-07 Kenichi Handa <handa@m17n.org>
2563
2564 * coding.c (Qcoding_system_define_form): New variable.
2565 (syms_of_coding): Intern and staticpro it.
2566 (Fcheck_coding_system): Try to autoload the definition of
2567 CODING-SYSTEM.
2568
9296c947
LT
25692003-10-05 Luc Teirlinck <teirllm@auburn.edu>
2570
2571 * fns.c (Frequire): Doc fix.
2572
c1f0671a
JD
25732003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2574
3d8c3826
JD
2575 * xfns.c (Fx_send_client_event): New function as a base for
2576 manipulating extended window manager hints.
6dc15d98 2577 (Fx_send_client_event): Remove unused variable s.
3d8c3826 2578
068ae0fd
JD
2579 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
2580 that function is removed.
2581
2582 * xterm.c (x_set_offset): Use move_offset_left/top instead of
2583 x/y_pixels_outer_diff.
2584 (x_check_expected_move): Calculate move_offset_left/top.
2585
2586 * xterm.h (struct x_output): New members: move_offset_top/left.
2587
854c1a59 2588 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
2589 call x_set_offset directly.
2590
2591 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
2592
96f09305
JD
2593 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
2594
2595 * xterm.c (x_delete_display): Free font names and font_encoder
2596 in dpyinfo->font_table.
2597
854c1a59
SM
2598 * xfns.c (Fx_close_connection): Only call XFreeFont here.
2599 Move xfree of font names to x_delete_display.
96f09305 2600
c1f0671a
JD
2601 * xterm.h (struct x_display_info): New member, wm_type.
2602 (struct x_output): New members, expected_top/left and
2603 check_expected_move.
2604
2605 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
2606 is received.
854c1a59
SM
2607 (handle_one_xevent): Rename x_check_expected_move from
2608 x_check_fullscreen_move.
c1f0671a
JD
2609 (x_set_offset): Only add WM decoration sizes to modified_top/left
2610 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 2611 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
2612 Removed fullscreen specific code. Use check_expected_move,
2613 expected_left/top instead. Also, set wm_type.
2614 (x_term_init): Initialize wm_type to unknown.
2615
2616 * frame.c (x_fullscreen_move): Remove addition of WM decoration
2617 sizes to move_x/y.
2618
be2fdba9
KH
26192003-10-03 Kenichi Handa <handa@m17n.org>
2620
2621 * macterm.c (x_load_font): Clear all members of FONTP before start
2622 filling them.
2623
26242003-10-02 Kenichi Handa <handa@m17n.org>
2625
2626 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
2627 before calling find_ccl_program_func. Call find_ccl_program_func
2628 only when fontp->font_encoder is not NULL.
2629
2630 * xterm.c (x_load_font): Clear all members of FONTP before start
2631 filling them.
2632
26a6e439
JPW
26332003-10-03 John Paul Wallington <jpw@gnu.org>
2634
2635 * keymap.c (map_keymap): Don't abort when binding is a vector.
2636
0d4c2dc2
JR
26372003-10-02 Jason Rumney <jasonr@gnu.org>
2638
854c1a59
SM
2639 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
2640 Sync dependencies with Makefile.in.
a63cf46f
JR
2641 (alloca.o): Remove.
2642
0d4c2dc2
JR
2643 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
2644 filling them.
2645
2646 * w32bdf.c (w32_load_bdf_font): Likewise.
2647
ab8f7d5c
RS
26482003-09-30 Richard M. Stallman <rms@gnu.org>
2649
2650 * term.c (set_tty_color_mode): Calculate current_mode_spec
2651 regardless of value of VAL.
2652
854c1a59 2653 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
2654 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
2655 Handle over_used when splitting UNDER.
2656
a64387ee 26572003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ab8f7d5c
RS
2658
2659 * regex.c (regex_compile): Free the stack when returning from function.
2660
3413f972
KH
26612003-09-28 Kenichi Handa <handa@m17n.org>
2662
2663 * fontset.c (Finternal_char_font): Change return value to
2664 cons (FONT-NAME . GLYPH-CODE).
2665
a6eeaa81 26662003-09-28 Eli Zaretskii <eliz@gnu.org>
40409f05
EZ
2667
2668 * term.c (tty_setup_colors): Treat any negative argument as -1.
2669
f98ddc99
KH
26702003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
2671
2672 * process.c (send_process): Delete unused temp_buf.
2673
66c8f1a8
DL
26742003-09-26 Dave Love <fx@gnu.org>
2675
2676 * xterm.c (x_bitmap_mask): Declare.
2677
ca716c26
DL
26782003-09-25 Dave Love <fx@gnu.org>
2679
2680 * Makefile.in (fns.o): Depend on md5.h.
2681
fbe57420
KS
26822003-09-25 Kim F. Storm <storm@cua.dk>
2683
2684 * window.c (set_window_buffer): Fix redisplay problems when
2685 switching between buffers with different display margin widths.
2686
ef6ae4ff
KS
26872003-09-23 Kim F. Storm <storm@cua.dk>
2688
2689 * process.c (set_socket_option): Fix :bindtodevice option.
2690 (Fset_network_process_option): Update process contact list when
2691 setting option succeeds.
2692 (Fmake_network_process): Doc fix.
2693
68e03c1c
DL
26942003-09-23 Dave Love <fx@gnu.org>
2695
7146d1c1 2696 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 2697
a6eeaa81 26982003-09-22 Eli Zaretskii <eliz@gnu.org>
2f809aae
EZ
2699
2700 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
2701 color mode is an integer number (it could be -1).
2702
8fe7d8c8
RS
27032003-09-22 Richard M. Stallman <rms@gnu.org>
2704
2705 * intervals.c (graft_intervals_into_buffer): Correct the main loop
2706 in the case where OVER is longer than UNDER.
2707
2f71b5ea
MY
27082003-09-22 Masatake YAMATO <jet@gyve.org>
2709
7146d1c1 2710 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 2711 `vertical_type'.
7146d1c1 2712
0c4da023
KS
27132003-09-21 Kim F. Storm <storm@cua.dk>
2714
2715 * frame.c (Vdefault_frame_scroll_bars): New variable.
2716 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
2717 (syms_of_frame): DEFVAR_LISP it, and initialize according to
2718 window-system default scroll bar position.
2719
b648413b
KS
2720 * window.c (Fwindow_scroll_bars): Doc fix.
2721
8f5b9e34
JD
27222003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2723
854c1a59 2724 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 2725
b0f23edf
RS
27262003-09-19 Richard M. Stallman <rms@gnu.org>
2727
2728 * atimer.h: Don't include lisp.h.
2729 (P_): Define it here (as well as elsewhere).
2730
2731 * print.c (Fprin1_to_string): Move the PRINTPREPARE
2732 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
2733
2734 * data.c (Fvariable_binding_locus): New function.
2735 (syms_of_data): defsubr it.
2736 (Flocal_variable_p): Delete duplicate call to indirect_variable.
2737
e1283999
DL
27382003-09-18 Dave Love <fx@gnu.org>
2739
ad5f3636
DL
2740 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
2741
e1283999
DL
2742 * process.c (Fnetwork_interface_info): Fix type error.
2743 (Fnetwork_interface_list): Doc fix.
2744 (read_process_output, read_process_output): Delete unused var.
2745
b8c7fd71
KS
27462003-09-17 Kim F. Storm <storm@cua.dk>
2747
2748 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
2749 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
2750 (Fnetwork_interface_info): Check that ifreq struct has required
2751 fields before accessing them; this requires that those fields are
2752 defined as macros, which may be too restrictive on some platforms,
2753 but it is better than failing on other platforms.
2754 (syms_of_process): Only defsubr above fns when included.
2755
11e0a411
DL
27562003-09-17 Dave Love <fx@gnu.org>
2757
2758 * unexalpha.c: Don't include varargs.h.
2759
e9c50801
KS
27602003-09-17 Kim F. Storm <storm@cua.dk>
2761
2762 * process.c (Fset_process_sentinel): Add sentinel to childp plist
2763 for network process.
2764 (socket_options): Add `:' prefix to option names. Add optbit field.
2765 (set_socket_option): Remove no_error arg and special handling of s < 0.
2766 Return 1<<optbit for known option, 0 for unknown.
2767 Do not interpret 0 as false for boolean option (only nil).
2768 Pass failed option and value to report_file_error.
7146d1c1 2769 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
2770 (Fset_network_process_option): New function to set just one option.
2771 (Fmake_network_process): Allow :coding arg to be a cons.
2772 Allow :server arg to be an integer specifying backlog size.
2773 Remove :options arg, and allow options to be specified directly
2774 as :KEY, VALUE pairs. Parse these options before binding socket.
2775 As before, :reuseaddr t is default for a server process, but this
2776 can now be disabled by specifying :reuseaddr nil.
2777 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
2778 (init_process): Availability of network options is now checked with
2779 simpler syntax (featurep 'make-network-process :OPTION); use loop to
2780 setup features.
2781 (syms_of_process): Fix defsubr's for the replaced functions.
2782
a0fc3644
DL
27832003-09-16 Dave Love <fx@gnu.org>
2784
2785 * Makefile.in: Depend on coding.h.
2786
6df2a645
KS
27872003-09-14 Kim F. Storm <storm@cua.dk>
2788
2789 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
2790 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
2791 (syms_of_process): Defsubr them.
2792
2793 * config.in: Regenerate.
7146d1c1
SM
2794
27952003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
2796
2797 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
2798 * m/news-r6.h (XUNMARK): Remove.
2799 * m/mips.h (XUNMARK): Remove.
2800 * m/mips-siemens.h (XUNMARK): Remove.
2801 * m/iris4d.h (XUNMARK): Remove.
2802 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
2803
0930c1a1
SM
28042003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
2805
31003b9e
SM
2806 * lisp.h (VALBITS): Don't remove 1 for the markbit.
2807 (union Lisp_Object): Use unsigned int for types. Remove markbit.
2808 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
2809 (XTYPE): Use unsigned right-shift.
2810 (XMARKBIT, XMARK, XUNMARK): Remove.
2811
0930c1a1
SM
2812 * alloc.c (init_intervals, init_symbol, init_marker):
2813 Don't preallocate anything.
2814 (Fgarbage_collect, mark_object): Ignore the markbit.
2815
2816 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
2817
19bb0fcd 28182003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
2819
2820 * xdisp.c (pint2hrstr): New function.
2821 (decode_mode_spec): Add `%i' and `%I' specs.
2822 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
2823 for `mode-line-format'.
2824
03bb6a06
AS
28252003-09-07 Andreas Schwab <schwab@suse.de>
2826
2827 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
2828 avoid warning.
2829
a6eeaa81 28302003-09-07 Eli Zaretskii <eliz@gnu.org>
2063d89c 2831
0930c1a1 2832 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 2833
ed159bbf
KS
28342003-09-03 Kim F. Storm <storm@cua.dk>
2835
2836 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
2837 change (superseded by 2002-08-30 change); the default blink-off
2838 cursor is now again "no cursor".
2839
fe64a394
JR
28402003-09-01 Jason Rumney <jasonr@gnu.org>
2841
2842 * makefile.w32-in (alloca.o): Remove.
2843 (coding.o): Depend on intervals.h
2844 (emacs.o, bytecode.o): Depend on window.h
2845
c0175e24
DL
28462003-09-01 Dave Love <fx@gnu.org>
2847
2848 * Makefile.in (alloca.o): Remove commands.
2849 (coding.o): Depend on intervals.h composite.h window.h.
2850 (emacs.o): Depend on window.h keyboard.h keymap.h.
2851 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
2852 (bytecode.o): Depend on window.h.
2853
a24d4cb2
JR
28542003-08-31 Jason Rumney <jasonr@gnu.org>
2855
4bc2315e
JR
2856 * w32term.c (w32_per_char_metric): Allow cached metrics to be
2857 returned even when font_type is unknown.
2858
a24d4cb2
JR
2859 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
2860
9d35adc7
JD
28612003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2862
2863 * xterm.c (x_term_init): Initialize new fields in x_display_info.
2864
2865 * xterm.h (struct x_display_info): Add red/green/blue_bits and
2866 *_offset.
2867
2868 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
2869 calculate pixel value.
2870
6f68b035
GM
28712003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
2872
0930c1a1
SM
2873 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
2874 Don't tell redisplay display is accurate when it's actually been
2875 paused for pending input.
6f68b035 2876
4828b4d7
RS
28772003-08-29 Richard M. Stallman <rms@gnu.org>
2878
2879 * dispnew.c (adjust_glyph_matrix): Call window_box
2880 whenever W is nonzero.
2881
2882 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
2883 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 2884 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
2885 Use indirect_variable to trace thru variable aliases.
2886
2887 * config.in: Updated.
2888
2889 * callint.c (Fcall_interactively): Save and restore
2890 Vthis_command, Vthis_original_command, real_this_command,
2891 and current_kboard->Vlast_command.
2892
2893 * abbrev.c (Fexpand_abbrev): Insert before deleting.
2894
e019878d
GM
28952003-08-29 Gerd Moellmann <gerd@gnu.org>
2896
2897 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
2898
85478bc6
KH
28992003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
2900
0930c1a1 2901 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
2902 (decode_coding_sjis_big5): Likewise.
2903
07ce82d3
JR
29042003-08-27 Jason Rumney <jasonr@gnu.org>
2905
d3703de3
JR
2906 * w32.c (sys_pipe): Protect against file descriptor overflow.
2907
ee4a01d1
JR
2908 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
2909
07ce82d3
JR
2910 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
2911
a64387ee 29122003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
72d19c66
LK
2913
2914 * xfns.c (Vgtk_version_string): New variable.
2915 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
2916
a6eeaa81 29172003-08-24 Eli Zaretskii <eliz@gnu.org>
5459e42a 2918
0930c1a1 2919 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 2920
5459e42a
EZ
2921 * Makefile.in (msdos.o): Depend on intervals.h.
2922
0930c1a1 2923 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 2924
231d6cfb
JD
29252003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2926
2927 * xterm.h (struct x_display_info): New fields: client_leader_window
2928 and Xatom_wm_client_leader.
2929
2930 * xterm.c (x_initialize): Move call to x_session_initialize to ...
2931 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
2932
2933 * xsmfns.c (create_client_leader_window): New function.
2934 (x_session_initialize): Call create_client_leader_window, take
2935 dpyinfo as argument.
2936
2937 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
2938
2939 * Makefile.in (xsmfns.o): Add more depenedencies.
2940
afa88464
DL
29412003-08-21 Dave Love <fx@gnu.org>
2942
2943 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
2944
f730033e
KH
29452003-08-21 Kenichi Handa <handa@m17n.org>
2946
2947 * term.c (term_init): Fix previous change; don't rely on the
2948 length of `buffer' if TERMINFO is defined.
2949
6dca786c
DL
29502003-08-20 Dave Love <fx@gnu.org>
2951
2952 * atimer.h: Include lisp.h.
2953
2954 * lisp.h (EMACS_LISP_H): New.
2955 (popup_activated_flag): Don't declare.
2956
2957 * alloca.c: Some merging with gnulib. Change logic and doc
2958 concerning (x)malloc/(x)free -- no longer Emacs-specific.
2959 [DO_BLOCK_INPUT]: Don't include lisp.h.
2960 (xmalloc, xfree): Declare.
2961 (malloc): Don't declare.
2962
0930c1a1 2963 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
2964 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
2965 atimer.h, blockinput.h.
2966
2967 * alloc.c (lisp_align_malloc): Change type of `aligned'.
2968
2969 * alloca.s: Removed.
2970
3a06a6d9
RS
29712003-08-19 Gerd Moellmann <gerd@gnu.org>
2972
2973 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
2974 use -lncurses.
2975
2976 * term.c (term_init): Use a buffer of size 4096 for tgetent since
2977 FreeBSD returns something longer than 2044. Abort if the end of
2978 the buffer is overwritten.
2979
27eeee55
MB
29802003-08-19 Miles Bader <miles@gnu.org>
2981
2982 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
2983
2f297815
GM
29842003-08-19 Gerd Moellmann <gerd@gnu.org>
2985
f4446bbf
GM
2986 * alloc.c (lisp_align_malloc): Check for memory full when
2987 allocating ablocks, which also avoids freeing a pointer into an
2988 ablocks structure.
2989
2990 * puresize.h (BASE_PURESIZE): Increase to 1100000.
2991
0930c1a1 2992 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 2993
0e7d7aae
RS
29942003-08-16 Richard M. Stallman <rms@gnu.org>
2995
2996 * editfns.c (Fencode_time): Doc fix.
2997
29982003-08-16 David Ponce <david@dponce.com>
2999
3000 * fileio.c (Fwrite_region): Fix conditional expression to issue
3001 the right message.
3002
30032003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
3004
3005 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 3006 Set default value to 1.
0e7d7aae 3007
5d551295
KH
30082003-08-15 Kenichi Handa <handa@m17n.org>
3009
3010 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
3011 what autoscaled.
3012 (best_matching_font): Once we find a better scalable font, set
3013 non_scalable_has_exact_height_p to 1.
3014 (try_font_list): Call try_alternative_families to try any family
3015 with the given registry.
3016
1661e56b
AS
30172003-08-09 Andreas Schwab <schwab@suse.de>
3018
f29181dc
AS
3019 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
3020
1661e56b
AS
3021 * print.c (print_string): Fix printing of multibyte string with
3022 nontrivial printcharfun.
3023
465aa50a
JD
30242003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3025
3026 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
3027
3028 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
3029
e430e5ba
KH
30302003-07-31 Kenichi Handa <handa@m17n.org>
3031
3032 * process.c (read_process_output): Return the actually read bytes
3033 instead of the result of decoding.
3034
97e7188e
KH
30352003-07-31 Kenichi Handa <handa@m17n.org>
3036
3037 * xterm.h (struct x_bitmap_record): New member have_mask.
3038
3039 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
3040 to 0.
3041 (x_create_bitmap_from_file): Likewise.
3042 (x_destroy_bitmap): Check have_mask member before freeing a mask.
3043 (x_destroy_all_bitmaps): Likewise.
3044 (x_create_bitmap_mask): Set have_mask member to 1.
3045
b53094d6
RS
30462003-07-30 Richard M. Stallman <rms@gnu.org>
3047
3048 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
3049
631f2082
JD
30502003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3051
3052 * gtkutil.c (xg_mark_data): Update calls to mark_object.
3053
c855f2ca
RS
30542003-07-29 Richard M. Stallman <rms@gnu.org>
3055
3056 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
3057 Conditionalize XIM code on HAVE_XIM.
3058
3059 * fns.c (Fclear_string): New function.
3060 (syms_of_fns): defsubr it.
3061
17e6d491
KH
30622003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
3063
0930c1a1 3064 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 3065
29ea8ae9
SM
30662003-07-22 Stefan Monnier <monnier@cs.yale.edu>
3067
3068 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
3069
3070 * buffer.c (delete_all_overlays): New function.
3071 * buffer.h (delete_all_overlays): Declare.
3072 * coding.c (run_pre_post_conversion_on_str):
3073 * print.c (temp_output_buffer_setup):
3074 * fileio.c (Finsert_file_contents):
3075 * minibuf.c (get_minibuffer): Use it.
3076
1dd7ccf2
AC
30772003-07-22 Andrew Choi <akochoi@shaw.ca>
3078
3079 * unexmacosx.c (unexec_regions_sort_compare):
3080 (unexec_regions_merge): New functions. Sort and merge unexec
3081 regions before dumping them.
3082
f57bd967
DL
30832003-07-22 Dave Love <fx@gnu.org>
3084
3085 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
3086
7cdee936
SM
30872003-07-21 Stefan Monnier <monnier@cs.yale.edu>
3088
3089 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
3090 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
3091 MARKBIT as the gcmarkbit for strings.
3092
e50886d3
RS
30932003-07-21 Richard M. Stallman <rms@gnu.org>
3094
3095 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
3096
29ea8ae9 3097 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
3098 (syms_of_fns): Corresponding change.
3099
3100 * alloc.c (syms_of_alloc): Doc fixes.
3101
31022003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
3103
3104 * s/netbsd.h: Use -Wl syntax.
3105
fdc39b59
RS
31062003-07-17 Richard M. Stallman <rms@gnu.org>
3107
3108 * xterm.c (xim_initialize): Redo 6/24 change.
3109
9c53385f
SM
31102003-07-15 Stefan Monnier <monnier@cs.yale.edu>
3111
3112 * buffer.c (copy_overlays): Use EMACS_INT for positions.
3113 (Fswitch_to_buffer): Don't signal an error when switching to the same
3114 buffer in a dedicated window.
3115
3116 * alloc.c: Use bitmaps for cons, as was done for floats.
3117 (init_float, init_cons): Let the normal code allocate the first block.
3118 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
3119 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
3120 New macros.
3121 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
3122 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
3123 (live_cons_p): Check the pointer is not past the `conses' array.
3124 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
3125 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
3126 (survives_gc_p): Use CONS_MARKED_P and simplify.
3127 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
3128
dde13196
PE
31292003-07-13 Paul Eggert <eggert@twinsun.com>
3130
3131 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
3132 puts it into BSS instead, at least on Solaris 8 and 9.
3133 This is a valid optimization, and it may occur on other platforms,
3134 so Emacs should not assume that initializing a static variable to
3135 zero puts it into data.
3136 * alloc.c (pure, staticvec):
3137 Initialize these arrays to nonzero, so that they're not
3138 put into BSS by that optimization.
3139
a801bc34
SM
31402003-07-13 Stefan Monnier <monnier@cs.yale.edu>
3141
3142 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
3143 (lisp_align_malloc): Use posix_memalign is available.
3144 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
3145 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
3146 for consistency. Update users.
3147
0c8b2afa
RS
31482003-07-13 Richard M. Stallman <rms@gnu.org>
3149
3150 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
3151
668c2ab0
JB
31522003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
3153
3154 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
3155 and use the Gtk+ function gtk_window_icon_from_file if available.
3156
3157 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
3158 handle mask of bitmaps.
3159 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
3160 mask property.
3161 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
3162
3163 * xterm.h (xg_set_icon): New function.
3164
800bebe3
RS
31652003-07-12 Paul Eggert <eggert@twinsun.com>
3166
3167 * unexelf.c (unexec): Consider a section to precede the .bss
3168 section if its addresses overlap that of .bss.
3169
69e38995
RS
31702003-07-12 Richard M. Stallman <rms@gnu.org>
3171
3172 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
3173
3174 * config.in (HAVE_CRTIN): Add #undef.
3175 (INLINE): Really inline only if OPTIMIZE is defined.
3176
3177 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
3178 END_FILES_1.
3179 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 3180 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
3181
3182 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
3183 (TERMINFO): Define.
3184 (LIBS_TERMCAP): Define.
3185 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
3186
3187 * xfns.c: Include libpng/png.h instead of png.h.
3188
f1d0c238
AS
31892003-07-11 Andreas Schwab <schwab@suse.de>
3190
3191 * buffer.c (modify_overlay): Update prototype.
3192 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
3193 Likewise.
3194
5f6bf5fe
SM
31952003-07-09 Stefan Monnier <monnier@cs.yale.edu>
3196
3197 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
3198 (struct interval): Move to intervals.h.
3199 (struct Lisp_Marker): Use EMACS_INT for position info.
3200 (forward_point): Remove prototype of defunct function.
3201 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
3202 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
3203 (syms_of_textprop, set_text_properties): Remove prototypes that are
3204 already in intervals.h.
3205
3206 * intervals.h (struct interval): Move from lisp.h.
3207 Use EMACS_INT for position and size info.
3208
3209 * coding.c: Include intervals.h for Fset_text_properties.
3210
3211 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
3212 position and length information.
3213
2765b457
SM
32142003-07-09 Stefan Monnier <monnier@cs.yale.edu>
3215
3216 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
3217 position and length information.
3218
2410d73a
SM
32192003-07-09 Stefan Monnier <monnier@cs.yale.edu>
3220
3221 Change overlays_after and overlays_before so the overlays themselves
3222 are linked into lists, rather than using cons cells. After all each
3223 Lisp_Misc already occupies 5 words, so we can add a `next' field to
3224 Lisp_Overlay for free and save up one cons cell per overlay (not
3225 to mention one indirection when traversing the list of overlay).
3226
3227 * lisp.h (struct Lisp_Overlay): New field `next'.
3228
3229 * buffer.h (struct buffer): Change overlays_before and overlays_after
3230 from Lisp lists of overlays to pointers to overlays.
3231
3232 * buffer.c (overlay_strings, recenter_overlay_lists):
3233 Fix typo in eassert in last commit.
3234 (unchain_overlay): New function.
3235 (add_overlay_mod_hooklist): Use AREF.
3236 (copy_overlays, reset_buffer, overlays_at, overlays_in)
3237 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
3238 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
3239 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
3240 (report_overlay_modification, evaporate_overlays, init_buffer_once):
3241 Adjust to new type of overlays_(before|after).
3242
3243 * alloc.c (mark_object): Mark the new `next' field of overlays.
3244 (mark_buffer): Manually mark the overlays_(after|before) fields.
3245
3246 * coding.c (run_pre_post_conversion_on_str):
3247 * editfns.c (overlays_around):
3248 * xdisp.c (load_overlay_strings):
3249 * fileio.c (Finsert_file_contents):
3250 * indent.c (current_column):
3251 * insdel.c (signal_before_change, signal_after_change):
3252 * intervals.c (set_point_both):
3253 * print.c (temp_output_buffer_setup): Use new type for
3254 overlays_(before|after).
3255
04812929
SM
32562003-07-08 Stefan Monnier <monnier@cs.yale.edu>
3257
3258 * buffer.c (report_overlay_modification): Don't run hooks while
3259 traversing the list of overlays.
3260
3261 * buffer.h (struct buffer): Use an int for overlay_center.
3262 (overlays_at, evaporate_overlays, recenter_overlay_lists)
3263 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
3264
3265 * buffer.c (reset_buffer, recenter_overlay_lists)
3266 (adjust_overlays_for_insert, adjust_overlays_for_delete)
3267 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
3268 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
3269 (overlays_at, evaporate_overlays, recenter_overlay_lists)
3270 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
3271
3272 * xdisp.c (fast_find_position): Remove unused var.
3273
3274 * cmds.c (Qexpand_abbrev): New sym.
3275 (syms_of_cmds): Initialize it.
3276 (internal_self_insert): Use it to call expand-abbrev.
3277
2e7ecf15
KS
32782003-07-09 Kim F. Storm <storm@cua.dk>
3279
3280 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if emacs
3281 was configured with --without-xim.
42f81f64 3282 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 3283
c6de56a0
RS
32842003-07-07 Richard M. Stallman <rms@gnu.org>
3285
3286 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
3287
3288 * alloc.c (Fgarbage_collect): Doc fix.
3289
b93fb365
KH
32902003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
3291
3292 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
3293
bfe1a3f7
SM
32942003-07-06 Stefan Monnier <monnier@cs.yale.edu>
3295
04812929
SM
3296 * minibuf.c (read_minibuf): UNGCPRO before returning.
3297 (Ftry_completion, Fall_completions): Doc fix.
3298
bfe1a3f7
SM
3299 * alloc.c (live_float_p): Check that p is not past the `floats' array,
3300 now that `floats' is not the last element of the struct any more.
3301
ee79d1aa
JR
33022003-07-06 Jason Rumney <jasonr@gnu.org>
3303
3304 * w32term.h (ClipboardSequence_Proc): New type.
3305
3306 * w32fns.c (clipboard_sequence_fn): New variable.
3307 (globals_of_w32fns): Initialize it.
3308
3309 * w32select.c (last_clipboard_sequence_number): New variable.
3310 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
3311 number if possible.
3312
49723c04
SM
33132003-07-06 Stefan Monnier <monnier@cs.yale.edu>
3314
4698665f
SM
3315 * m/amdx86-64.h (MARKBIT):
3316 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
3317 MARKBIT and ARRAY_MARK_FLAG any more.
3318
3319 * m/hp800.h (XSETMARKBIT):
3320 * m/sr2k.h (XSETMARKBIT):
3321 * lisp.h (XSETMARKBIT): Remove unused macro.
3322
49723c04
SM
3323 * lisp.h (mark_object): Change prototype.
3324
3325 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
3326 (last_marked): Change accordingly.
3327 (mark_interval, mark_maybe_object, mark_maybe_pointer)
3328 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
3329 (mark_buffer): Update calls to mark_object.
3330
3331 * bytecode.c (mark_byte_stack):
3332 * fns.c (sweep_weak_table):
3333 * keyboard.c (mark_kboards): Update calls to mark_object.
3334
1d660eca
JR
33352003-07-06 Jason Rumney <jasonr@gnu.org>
3336
3337 * alloc.c (struct ablock): Only include padding when there is some.
3338
618b5ae4
SM
33392003-07-04 Stefan Monnier <monnier@cs.yale.edu>
3340
3341 * alloc.c (ALIGN): Add casts to simplify usage.
3342 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
3343 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
3344 (struct ablock, struct ablocks): New types.
3345 (free_ablock): New global var.
3346 (lisp_align_malloc, lisp_align_free): New functions.
3347 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
3348 (struct float_block): Reorder and add gcmarkbits.
3349 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
3350 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
3351 (init_float, make_float): Use lisp_align_malloc.
3352 (free_float, live_float_p): Don't use `type' any more.
3353 (make_float): Use FLOAT_UNMARK to access to mark bit.
3354 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
3355 Use FLOAT_MARKED_P to access the mark bit.
3356 (pure_alloc): Simplify use of ALIGN.
3357 (mark_object): Use FLOAT_MARK to access the mark bit.
3358 (gc_sweep): Use new macros to access the float's mark bit.
3359 (init_alloc_once): Init free_ablock.
3360
3361 * lisp.h (struct Lisp_Float): Remove unused field `type'.
3362
3ef06d12
SM
33632003-06-27 Stefan Monnier <monnier@cs.yale.edu>
3364
3365 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
3366 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
3367 (allocate_buffer): Move.
3368 (string_bytes): Don't mask markbit of `size_byte'.
3369 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
3370 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
3371 Use the `size' field of buffers (rather than the `name' field) for
3372 the mark bit, as is done for all other vectorlike objects.
3373 Use the new macros to access the mark bit of vectorlike objects.
3374
e81043aa
RS
33752003-06-26 Richard M. Stallman <rms@gnu.org>
3376
3377 * puresize.h (BASE_PURESIZE): Increment base size.
3378
3379 * xdisp.c (fast_find_position): Enable Gerd's new definition.
3380
3381 * xterm.c (xim_initialize): Undo previous change.
3382
2d0834cc
SM
33832003-06-26 Stefan Monnier <monnier@cs.yale.edu>
3384
3385 * alloc.c (survives_gc_p): Simplify.
3386
3387 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
3388
3389 * window.c (Fset_window_dedicated_p): Simplify.
3390 (display_buffer_1): Don't raise the win from which minibuf was entered.
3391 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
3392 (Fminibuffer_selected_window): Simplify.
3393
3394 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
3395
3396 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
3397 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
3398
3399 * insdel.c (check_markers, adjust_markers_for_delete)
3400 (adjust_markers_for_insert, adjust_markers_for_replace)
3401 (prepare_to_modify_buffer, RESTORE_VALUE):
3402 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
3403 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
3404 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
3405 * alloc.c (Fmake_marker, free_marker, gc_sweep):
3406 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
3407 * editfns.c (save_excursion_restore, transpose_markers):
3408 * window.c (delete_window):
3409 * xdisp.c (message_dolog): Update for new types.
3410
d54ae3d8
JD
34112003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3412
a5f696ac
JD
3413 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
3414 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 3415 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
3416
3417 * frame.c (make_frame): Initialize default_face_done_p.
3418
3419 * frame.h (struct frame): Add default_face_done_p.
3420
d54ae3d8
JD
3421 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
3422 will be defined.
3423
2336fe58
SM
34242003-06-25 Stefan Monnier <monnier@cs.yale.edu>
3425
3426 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
3427 Initialize the new field `gcmarkbit'.
3428 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
3429 (mark_interval_tree): Don't mark the tree separately from the nodes.
3430 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
3431 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
3432 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
3433
3434 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
3435 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
3436 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
3437 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
3438 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
3439
bcea31c2
DL
34402003-06-24 Dave Love <fx@gnu.org>
3441
3442 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
3443
3444 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
3445 from gnulib.
3446
2601f59e
RS
34472003-06-21 Richard M. Stallman <rms@gnu.org>
3448
3449 * fileio.c (Fwrite_region): Alternate messages
3450 for append and partial write.
3451
3452 * keyboard.c (read_key_sequence): When converting upcase fn key to
3453 downcase, update fkey and keytran so `backspace' gets translated.
3454
3455 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
3456
3457 * process.c (wait_reading_process_input): Don't signal SIGIO
3458 in batch mode.
3459
b5d2c621
KH
34602003-06-17 Kenichi Handa <handa@m17n.org>
3461
3462 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
3463 composite.h.
3464
3465 * xselect.c: Don't include charset.h, coding.h, composite.h.
3466 (Qforeign_selection): New variable.
3467 (syms_of_xselect): Intern and static it.
3468 (selection_data_to_lisp_data): Return a unibyte string made from
3469 data with `foreign-selection' text property.
3470
6793bc63
SM
34712003-06-15 Stefan Monnier <monnier@cs.yale.edu>
3472
3473 * termhooks.h (EVENT_INIT): New macro.
3474
3475 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
3476
3477 * alloc.c (mark_kboards): Move to keyboard.c.
3478
3479 * keyboard.c (record_asynch_buffer_change, read_avail_input):
3480 * xterm.c (x_dispatch_event):
3481 * xmenu.c (find_and_call_menu_selection):
3482 * xdisp.c (handle_tool_bar_click):
3483 * w32menu.c (menubar_selection_callback):
3484 * sysdep.c (kbd_input_ast, read_input_waiting):
3485 * msdos.c (dos_rawgetc):
3486 * macterm.c (mac_check_for_quit_char):
3487 * macmenu.c (menubar_selection_callback):
3488 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
3489 data to kbd_buffer_store_event.
3490
b3ea810c
KS
34912003-06-15 Kim F. Storm <storm@cua.dk>
3492
3493 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 3494 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 3495
b8f75eda
KG
34962003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
3497
3498 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
3499
ba92ce48
KH
35002003-06-12 Kenichi Handa <handa@m17n.org>
3501
3502 * fileio.c (Fwrite_region): Save and restore restriction.
3503
b80263be
DL
35042003-06-12 Dave Love <fx@gnu.org>
3505
3506 * alloca.c (alloca): Declare arg as size_t.
3507
6793bc63
SM
3508 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
3509 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 3510
b23c0a83
DL
35112003-06-11 Dave Love <fx@gnu.org>
3512
3513 * search.c (shrink_regexp_cache): Use xrealloc.
3514 (syms_of_search): Use xmalloc.
3515
700e47c2
KS
35162003-06-10 Kim F. Storm <storm@cua.dk>
3517
3518 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
3519 Adjust phys_cursor.x to be relative to window box, rather than
3520 text area before checking -- to ensure cursor is redrawn when
3521 exposing window.
3522 Note: This also fixes a similar (older) bug if display margins
3523 are present.
3524
f11aa0b2
KH
35252003-06-06 Kenichi Handa <handa@m17n.org>
3526
3527 * coding.c (encoding_buffer_size): If coding->type is
3528 coding_type_ccl, double magnification on CRLF encoding.
3529
3d143690
JR
35302003-06-06 Jason Rumney <jasonr@gnu.org>
3531
3532 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
3533 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
3534
3535 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
3536 Mac too.
3537
f16205ca
DL
35382003-06-05 Dave Love <fx@gnu.org>
3539
b23c0a83
DL
3540 * strftime.c: Merge changes from gnulib.
3541
f16205ca
DL
3542 * mktime.c (__mktime_internal): Merge changes from gnulib
3543 involving year 69 and dst2.
3544
3545 Changes to merge with gnulib version and be consistent with the
3546 autoconf test:
3547
6793bc63
SM
3548 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
3549 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
3550 [HAVE_LOCALE_H]: Include locale.h.
3551 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
3552
9b87a0bc
KS
35532003-06-05 Kim F. Storm <storm@cua.dk>
3554
3555 * window.c (coordinates_in_window): Convert X and Y to window
3556 relative coordinates inside mode-line and header-line parts.
3557 Convert X and Y to margin area relative coordinates inside left
3558 and right display margin parts.
3559
5a8a15ec
JR
35602003-06-05 Jason Rumney <jasonr@gnu.org>
3561
3562 * w32fns.c (add_system_logical_colors_to_map): New function.
3563 (Fx_open_connection): Use it.
3564
01ed8ff1
SM
35652003-06-04 Stefan Monnier <monnier@cs.yale.edu>
3566
3567 * process.c (allocate_pty): Revert part of the previous patch.
3568 (Faccept_process_output): Simplify.
3569
b427b65d
JR
35702003-06-04 Jason Rumney <jasonr@gnu.org>
3571
3572 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
3573
3574 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
3575 (lispy_mouse_wheel_names): Remove.
3576 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
3577 Always define drag_and_drop_syms.
3578
3579 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
3580 WHEEL_EVENT events.
3581
914a8c47
SM
35822003-06-03 Stefan Monnier <monnier@cs.yale.edu>
3583
01ed8ff1
SM
3584 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
3585
914a8c47
SM
3586 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
3587
adcb132c
JD
35882003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3589
3590 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
3591 menu item label.
3592
be781fa7
RS
35932003-06-03 Richard M. Stallman <rms@gnu.org>
3594
3595 * window.c (Fwindow_edges): Doc fix.
3596 (Fwindow_pixel_edges, Fwindow_inside_edges)
3597 (Fwindow_inside_pixel_edges): New functions.
3598 (syms_of_window): defsubr them.
3599
3600 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
3601 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
3602
914a8c47
SM
36032003-06-02 Stefan Monnier <monnier@cs.yale.edu>
3604
3605 * dispnew.c (Fsit_for): Don't lie about the number of args.
3606
5b07197a
DL
36072003-06-02 Dave Love <fx@gnu.org>
3608
3609 * callproc.c: Use HAVE_FCNTL_H, not USG5.
3610 (syms_of_callproc) <process-environment>: Doc fix.
3611
3612 * doc.c: Use HAVE_FCNTL_H, not USG5.
3613
3614 * xfaces.c (font_rescale_ratio): Fix for K&R.
3615
3616 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
3617
3618 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
3619
3620 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
3621
3622 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
3623 (xg_create_frame_widgets): Use ENCODE_UTF_8.
3624
d7107586 3625 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
3626
3627 * xmenu.c (ENCODE_MENU_STRING): New.
3628 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
3629 Use it.
3630
3631 * coding.h (ENCODE_UTF_8): New.
3632 (Qutf_8): Declare.
3633
3634 * coding.c (Qutf_8): New.
3635 (syms_of_coding): Intern it.
3636
3637 * fns.c: Doc fixes.
3638
7335b336
KH
36392003-06-02 Kenichi Handa <handa@m17n.org>
3640
3641 * buffer.c (Fset_buffer_multibyte): Fix previous change.
3642
914a8c47
SM
36432003-06-01 Stefan Monnier <monnier@cs.yale.edu>
3644
3645 * lread.c (openp): Make sure STR is a string.
3646
9862c135
JR
36472003-06-01 David Ponce <david@dponce.com>
3648
3649 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
3650 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
3651
3652 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
3653 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
3654 (discard_mouse_events): Discard WHEEL_EVENT events too.
3655 (lispy_wheel_names, wheel_syms): New.
3656 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
3657 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
3658 defined.
914a8c47 3659 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
3660
3661 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
3662 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
3663 WHEEL_EVENT events.
3664
f984e73e
JPW
36652003-05-31 John Paul Wallington <jpw@gnu.org>
3666
3667 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
3668 timer are in lisp/emacs-lisp.
3669
1efcd78f
KH
36702003-05-31 Kenichi Handa <handa@m17n.org>
3671
458c8af4
KH
3672 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
3673 region when a buffer is changed to unibyte.
3674
1efcd78f
KH
3675 * charset.h (VALID_LEADING_CODE_P): New macro.
3676 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
3677
778e2804
KH
3678 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
3679 is nonzero, accept multibyte form of eight-bit-control chars.
3680 (decode_composition_emacs_mule): Likewise.
3681 (decode_coding_emacs_mule): Likewise.
3682 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
3683 multibyte form of eight-bit-control chars.
3684
3685 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
3686 (Finsert_file_contents): If coding-system-for-read is bound to
3687 Qauto_save_coding, use the coding system emacs-mule with special
3688 setting for recovering a file.
3689 (choose_write_coding_system): On auto saving, use the coding
3690 system emacs-mule with special setting for auto saving.
3691 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
3692
034060e4
KH
36932003-05-30 Kenichi Handa <handa@m17n.org>
3694
3695 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
3696 properly before calling ccl_driver.
3697
778e2804 3698 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4
KH
3699
3700 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
3701 nonzero.
3702 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
3703 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
3704
595f5aa5
GM
37052003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
3706
3707 * xfaces.c (realize_default_face): Do not abort if lface is
3708 non-existent - reverts change from 2003-05-19.
3709
103e0180
KH
37102003-05-29 Kenichi Handa <handa@m17n.org>
3711
3712 * coding.c (decode_coding_iso2022): Pay attention to the byte
3713 sequence of CTEXT extended segment, and retain those bytes as is.
3714
37152003-05-28 Kenichi Handa <handa@m17n.org>
3716
3717 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
3718 of CODING_REPLACEMENT_CHARACTER.
3719 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
3720 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
3721 check this flag on encoding.
3722 (encode_coding_sjis_big5): Check
3723 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
3724 (Fset_terminal_coding_system_internal): Set
3725 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
3726 instead of setting CODING_FLAG_ISO_SAFE flag in
3727 terminal_coding.flags.
3728
3729 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
3730 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
3731 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
3732
ff6a3bfb 37332003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 3734
ff6a3bfb
RS
3735 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
3736
3737 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 3738
1963c428
KS
37392003-05-28 Kim F. Storm <storm@cua.dk>
3740
3741 * xdisp.c (expose_window): Fix error in calculation of
3742 window relative coordinates of area to redisplay.
3743
2b5d4601
JR
37442003-05-27 Jason Rumney <jasonr@gnu.org>
3745
3746 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
3747
1c64a4a2
JB
37482003-05-27 David Ponce <david@dponce.com>
3749
3750 Handle W32 mouse wheel events as mouse click events, like in X.
3751
3752 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
3753 MOUSE_WHEEL_EVENT anymore.
3754
3755 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
3756 Scrolling down/up the mouse wheel is respectively mapped to mouse
3757 button 4 and 5.
3758 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
3759 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
3760 WM_MOUSEWHEEL events.
3761
2d031b89
AS
37622003-05-27 Andreas Schwab <schwab@suse.de>
3763
20464fdf
AS
3764 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
3765
2d031b89
AS
3766 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
3767 partially visible line.
3768
3769 * alloc.c (Fgarbage_collect): Fix last change.
3770
97bc76d4
JPW
37712003-05-26 John Paul Wallington <jpw@gnu.org>
3772
3773 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
3774
56613f06
SM
37752003-05-25 Stefan Monnier <monnier@cs.yale.edu>
3776
3777 * window.c (Fset_window_buffer): Add type of `keep_margins'.
3778 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
3779
3780 * window.h (window_box_text_cols): Declare.
3781
3782 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
3783 (x_draw_vertical_border): Remove unused var `f'.
3784
3785 * xfaces.c (build_scalable_font_name): Remove `unused var
3786 pixel_size' warning.
3787
3788 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
3789
3790 * unexelf.c (unexec): Remove `unused var n' warning.
3791
3792 * strftime.c (my_strftime_localtime_r): Remove `defined but
3793 unused' warning.
3794
3795 * process.c (allocate_pty): Remove `unused var stb' and
3796 `cp might be used uninitialized' warnings.
3797
3798 * dispnew.c (mode_line_string): Remove unused var `f'.
3799
3800 * coding.c (find_safe_codings): Remove unused var `i'.
3801
3802 * bytecode.c (Fbyte_code): Remove `unused val' warning.
3803
3804 * buffer.c (Fkill_buffer): Remove unused var `list'.
3805
3806 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
3807
93421a1f
JD
38082003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3809
3810 * frame.c (make_frame): Condition want_fullscreen with
3811 HAVE_WINDOW_SYSTEM.
3812
c4b8aebc
JB
38132003-05-25 Juanma Barranquero <lektu@terra.es>
3814
3815 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
3816 (Fwindow_scroll_bars): Fix typo in docstring.
3817
0416870b
KS
38182003-05-24 Kim F. Storm <storm@cua.dk>
3819
3820 The following changes serve several purposes:
3821
3822 1) Swap the position of fringes and display margins in windows, i.e.
3823 the fringes are now displayed between the margins and the text area
3824 (by default).
3825
3826 2) Allow fringe and scroll bar parameters to be set per-buffer and
3827 per-window (like display margins). Such settings are now stored
3828 in window configurations, preserved when frames are resized, and
9018a88e 3829 copied when windows are split vertically or horizontally.
0416870b
KS
3830 Several bugs related to display margins have been fixed.
3831
3832 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 3833
0416870b
KS
3834 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
3835 rather than FRAME_WIDTH (FRAME_FONT (f)).
3836
3837 5) Introduce a consistent naming of variables, members and macros
3838 depending on whether their value is measured in pixels or in
3839 canonical columns/lines. Pixel dimensions are named *_width and
3840 *_height, while canonical columns/lines are named *_cols and
3841 *_lines. Pixel positions are named *_x and *_y, while column/line
3842 positions are named *_col and *_line.
3843
3844 6) Consolidate more of the X, W32, and MAC gui code by moving
3845 common data into struct frame, and generalize it for the non-gui
3846 case by using suitable defaults.
3847
3848 7) Cleanup and consolidate the macros controlling frame and window
3849 layout into frame.h and window.h, and generalize the use of the
3850 various window_box_* functions (enhanced to handle the new fringe
3851 position and the per-window fringe and scroll bar settings).
3852
3853 * frame.h (struct frame): Rename members height to text_lines,
3854 width to text_cols, window_height to total_lines, window_width to
3855 total_cols, new_height to new_text_lines, new_width to
3856 new_text_cols. All uses changed.
3857 (struct frame): New members which consolidate common members of
3858 x_output, w32_output, and mac_output structures: left_pos,
3859 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
3860 win_gravity, size_hint_flags, border_width, internal_border_width,
3861 line_height, fringe_cols, left_fringe_width, right_fringe_width,
3862 want_fullscreen. All uses changed.
3863 (struct frame): New member column_width contaning the canonical
3864 column width, analogue to line_height. All uses changed.
3865 (struct frame): Rename members scroll_bar_pixel_width to
3866 config_scroll_bar_width, and scroll_bar_cols to
3867 config_scroll_bar_cols. All uses changed.
3868 (struct frame): New member scroll_bar_actual_width which
3869 consolidates and renames the vertical_scroll_bar_extra member of
3870 x_output, w32_output, and mac_output structures. All uses changed.
3871 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
3872 from x/w32/macterm.h files. All uses changed. Also change code
3873 which referred to f->output_data...->pixel_height.
3874 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
3875 from x/w32/macterm.h files. All uses changed. Also change code
3876 which referred to f->output_data...->pixel_width.
3877 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
3878 Also change code which referred to f->height.
3879 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
3880 Also change code which referred to f->width.
3881 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
3882 to update new_text_lines and new_text_cols members directly.
3883 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
3884 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
3885 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
3886 FRAME_SCROLL_BAR_COLS. All uses changed.
3887 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
3888 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
3889 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
3890 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
3891 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
3892 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
3893 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
3894 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
3895 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
3896 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
3897 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
3898 return line_height member (it now has proper value also for
3899 non-window frames).
3900 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
3901 return new column_width member (rather than the default font width).
3902 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
3903 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
3904 from x/w32/macterm.h files. Unconditionally return corresponding
3905 member of frame structure (they now have proper values also for
3906 non-window frames).
3907 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
3908 Calculate return value from left and right widths.
3909 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
3910 internal_border_width member (has proper value for non-window frame).
3911 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
3912 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
3913 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
3914 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
3915 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
3916 consolidated from xterm.h, macterm.h, and w32term.h.
3917 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
3918 consolidated from xterm.h, macterm.h, and w32term.h.
3919 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
3920 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
3921 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
3922 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
3923 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
3924 consolidated from x/mac/w32term.h.
3925 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
3926 consolidated from x/mac/w32term.h.
3927 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
3928 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
3929 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
3930 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
3931
3932 * window.h (struct window): Rename members left to left_col,
3933 top to top_line, height to total_lines, width to total_cols,
3934 left_margin_width to left_margin_cols, right_margin_width to
3935 right_margin_cols, orig_height to orig_total_lines, orig_top to
3936 orig_top_line. All uses changed.
3937 (struct window): New members left_fringe_width, right_fringe_width,
3938 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
3939 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
3940 New macros primarily used to simplify other macros.
3941 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
3942 referred to XINT (w->width).
3943 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
3944 referred to XINT (w->height).
3945 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
3946 referred to XINT (w->width) * canon_x_unit.
3947 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
3948 referred to XINT (w->height) * canon_y_unit.
3949 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
3950 referred to XINT (w->left).
3951 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
3952 all uses and code that referred to XINT (w->left) + XINT (w->width).
3953 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
3954 referred to XINT (w->top).
3955 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
3956 referred to XINT (w->top) + XINT (w->height).
3957 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
3958 referred to XINT (w->left) * canon_x_unit.
3959 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
3960 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
3961 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
3962 referred to XINT (w->top) * canon_y_unit.
3963 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
3964 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
3965 (WINDOW_LEFTMOST_P): New macro.
3966 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
3967 All uses changed.
3968 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
3969 All uses changed.
3970 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
3971 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
3972 Do not exclude left fringe width.
3973 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
3974 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
3975 Do not exclude fringe widths.
3976 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
3977 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
3978 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
3979 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
3980 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
3981 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
3982 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
3983 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
3984 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
3985 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
3986 New macros. Change code which referenced corresponding
3987 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
3988 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
3989 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
3990 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
3991 allow per-window scroll-bar settings.
3992 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
3993 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
3994 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
3995 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
3996 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
3997 FRAME_SCROLL_BAR_WIDTH.
3998 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 3999 (WINDOW_SCROLL_BAR_AREA_X): New macros.
0416870b
KS
4000 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
4001 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
4002 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
4003 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
4004 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
4005 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
4006 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
4007 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
4008 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
4009 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
4010 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
4011 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
4012 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
4013 (window_from_coordinates): Update prototype.
4014 (Fset_window_buffer): Update EXFUN.
4015 (set_window_buffer): Update prototype.
9018a88e 4016
0416870b 4017 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 4018 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
4019 changed.
4020 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
4021 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
4022 internal_border_width is now set to 0 for non-window frames.
4023 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
4024 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
4025 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
4026 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
4027 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
4028 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
4029 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
4030 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
4031 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 4032 Move to window.h and renamed [see window.h changes].
0416870b
KS
4033 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
4034 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
4035 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
4036 Use WINDOW_TOTAL_LINES.
0416870b
KS
4037 (frame_update_line_height): Remove prototype.
4038
4039 * buffer.h (struct buffer): Rename members measured in columns:
4040 left_margin_width to left_margin_cols, right_margin_width to
4041 right_margin_cols. All uses changed.
4042 New members left_fringe_width, right_fringe_width,
4043 fringes_outside_margins for per-buffer fringe settings.
4044 New members scroll_bar_width and vertical_scroll_bar_type for
4045 per-buffer scroll bar settings.
4046
4047 * buffer.c (init_buffer_once): Set buffer_defaults and
4048 buffer_local_flags for new buffer-local variables
4049 left_fringe_width, right_fringe_width, fringes_outside_margins,
4050 scroll_bar_width, and vertical_scroll_bar_type.
4051 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
4052 default-* variables for them.
4053
4054 * dispnew.c: Make (many) trivial substitutions for renamed and
4055 new macros in dispextern.h, frame.h and window.h.
4056 (mode_line_string): No need to adjust width for mode lines, as it
4057 is already adjusted by the caller.
4058 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 4059
0416870b
KS
4060 * frame.c: Make (many) trivial substitutions for renamed and
4061 new macros in dispextern.h, frame.h and window.h.
4062 (make_frame): Initialize left_fringe_width, right_fringe_width,
4063 fringe_cols, scroll_bar_actual_width, border_width,
4064 internal_border_width, column_width, line_height, x_pixels_diff,
4065 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
4066 members with values suitable for a non-window frames.
4067
4068 * gtkutil.c: Make (many) trivial substitutions for renamed and
4069 new macros in dispextern.h, frame.h and window.h.
9018a88e 4070
0416870b
KS
4071 * indent.c: Make (few) trivial substitutions for renamed and
4072 new macros in dispextern.h, frame.h and window.h.
4073
4074 * keyboard.c: Make (many) trivial substitutions for renamed and
4075 new macros in dispextern.h, frame.h and window.h.
4076 (make_lispy_event): Use window positions returned from
4077 window_from_coordinates when constructing the lisp event for
4078 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
4079 (incorrect) values locally.
4080 (make_lispy_movement): Use window positions returned from
4081 window_from_coordinates when constructing the lisp event, rather
4082 than calculating (incorrect) values locally.
4083
4084 * scroll.c: Make (some) trivial substitutions for renamed and
4085 new macros in dispextern.h, frame.h and window.h.
4086
4087 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
4088 scroll-bars.
4089
4090 * sysdep.c: Make (few) trivial substitutions for renamed and
4091 new macros in dispextern.h, frame.h and window.h.
4092
4093 * term.c: Make (some) trivial substitutions for renamed and
4094 new macros in dispextern.h, frame.h and window.h.
4095
4096 * widget.c: Make (few) trivial substitutions for renamed and
4097 new macros in dispextern.h, frame.h and window.h.
4098
4099 * window.c: Make (many) trivial substitutions for renamed and
4100 new macros in dispextern.h, frame.h and window.h.
4101 (make_window): Initialize new members
4102 left_margin_cols, right_margin_cols, left_fringe_width,
4103 right_fringe_width, fringes_outside_margins, scroll_bar_width,
4104 and vertical_scroll_bar_type.
4105 (coordinates_in_window): Adapted to new fringe/margin positions
9018a88e 4106 and per-window fringes and scroll-bars.
0416870b 4107 Fix bug related to incorrectly adjusting coordinates by
9018a88e 4108 frame's internal_border_width (the effect normally negible since
0416870b
KS
4109 the internal_border_width is typically 0 or 1 pixel, but very
4110 noticeable for an internal_border_width of e.g. 25 pixels).
4111 Upon successful return (other than ON_NOTHING), the coordinates
4112 are now always properly converted to window relative for the
4113 given display element.
4114 (window_from_coordinates): Add new parameters wx and wy to
4115 return the window relative x and y position in the returned
4116 window and part. A null arg means, don't return the position.
4117 All callers changed.
4118 (adjust_window_margins): New function which may reduce the width
4119 of the display margins if a window's text area is too small after
4120 resizing or splitting windows.
4121 (size_window): Fix bug that did not account for display margin
4122 widths when checking the minimum width of a window; use
4123 adjust_window_margins.
4124 (set_window_buffer): Call Fset_window_fringes and
4125 Fset_window_scroll_bars to setup per-window elements.
4126 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
4127 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
4128 (e.g. after splitting a window or resizing the frame).
4129 All callers changed.
0416870b
KS
4130 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
4131 (Fsplit_window): Duplicate original window's display margin,
4132 fringe, and scroll-bar settings; then call Fset_window_buffer with
4133 KEEP_MARGINS non-nil. This fixes a bug which caused a split
4134 window to only preserve the display margins in one of the windows.
c4b8aebc 4135 When splitting horizontally, call adjust_window_margins on both
0416870b
KS
4136 windows to ensure that the text area of the new windows is non too
4137 narrow. This fixes a bug which could cause emacs to trap if the
4138 width of the split window was less than the width of the display
4139 margins.
9018a88e
SM
4140 (window_box_text_cols): Renamed from window_internal_width.
4141 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
4142 Fix bug that caused vertical separator to be subtracted also on
4143 window frames. Fix another bug that did not reduce the returned
4144 value by the columns used for display margins.
4145 (window_scroll_line_based): Fix bug related to scrolling too much
4146 when display margins are present (implicitly fixed by the fix to
4147 window_box_text_cols).
4148 (scroll_left, scroll_right): Fix bug related to scrolling too far
4149 by default when display margins are present (implicitly fixed by
4150 the fix to window_box_text_cols).
4151 (struct saved_window): Rename members left to left_col, top to
4152 top_line, width to total_cols, height to total_lines, orig_top to
4153 orig_top_line, orig_height to orig_total_lines. All uses changed.
4154 New members left_margin_cols, right_margin_cols,
4155 left_fringe_width, right_fringe_width, fringes_outside_margins,
4156 scroll_bar_width, and vertical_scroll_bar_type for saving
4157 per-window display elements.
4158 (Fset_window_configuration): Restore display margins, fringes,
4159 and scroll bar settings. This fixes a bug which caused display
4160 margins to be discarded when saving and restoring a window
4161 configuration.
4162 (save_window_save): Save display margins, fringes, and scroll bar
4163 settings. This fixes a bug which caused display margins to be
4164 discarded when saving and restoring a window configuration.
4165 (Fset_window_margins): Do nothing if display margins are not
4166 really changed. Otherwise, call adjust_window_margins to ensure
4167 the text area doesn't get too narrow. This fixes a bug which
4168 could cause emacs to trap if setting display margins wider than
4169 the width of the window.
4170 (Fset_window_fringes): New defun to allow user to specifically set
4171 this window's fringe widths and position vs. display margins.
4172 (Fwindow_fringes): New defun to return window's actual fringe
4173 settings.
4174 (Fset_window_scroll_bars): New defun to allow user to specifically
4175 set this window's scroll bar width and position.
4176 (Fwindow_scroll_bars): New defun to return window's actual scroll
4177 bar settings.
4178 (compare_window_configurations): Also compare display margins,
4179 fringes, and scroll bar settings.
4180 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
4181
4182 * xdisp.c: Make (many) trivial substitutions for renamed and
4183 new macros in dispextern.h, frame.h and window.h.
4184 (window_box_width): Adapt to per-window fringes and scroll bars,
4185 and new fringe vs. display margin position. Note that returned
4186 value is no longer guaranteed to be a whole multiple of the frame
4187 column width, since per-window fringes may now be any width.
4188 (window_box_left_offset): New function like window_box_left, but
4189 value is relative to left border of window (rather than frame).
4190 (window_box_right_offset): New function like window_box_right,
4191 but value is relative to left border of window.
4192 (window_box_left): Adapt to per-window fringes and scroll bars,
4193 and new fringe vs. display margin position. Simplify by using
4194 WINDOW_LEFT_EDGE_X and window_box_left_offset.
4195 (window_box): Allow null args for unnecessary return values;
4196 change/simplify relevant callers.
4197 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
4198 and new fringe vs. display margin position.
4199 Use window_box_left_offset and window_box_right_offset
0416870b 4200 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
4201 scroll bars, and new fringe vs. display margin position.
4202 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
4203 (draw_fringe_bitmap): Rework to handle per-window fringes and new
4204 fringe vs. display margin position.
4205 (hscroll_window_tree): Use window_box_width instead of window_box.
a64387ee
JB
4206 (redisplay_window): Adapt to per-window scroll bars.
4207 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
4208 bars, and new fringe vs. display margin position.
4209 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
a64387ee 4210 (x_clear_end_of_line): Adapt to per-window fringes and scroll
0416870b
KS
4211 bars, and new fringe vs. display margin position. Fix bug which
4212 increased total width of full_width rows by width of scroll bars
4213 although window's total width already includes that.
4214 (x_fix_overlapping_area): Simplify using window_box_left_offset.
4215 (expose_area): Simplify using window_box_left_offset.
4216 (x_draw_vertical_border): Handle per-window scroll bar settings,
4217 mixing windows with left, right and no scroll bars.
4218
4219 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
4220 where it's used in x_list_fonts (for clarity).
4221 (frame_update_line_height): Remove unused function; functionality
4222 is now done directly when setting the default font in x_set_font.
4223
4224 * xfns.c: Make (many) trivial substitutions for renamed and
4225 new macros in dispextern.h, frame.h and window.h.
4226
4227 * xmenu.c: Make (some) trivial substitutions for renamed and
4228 new macros in dispextern.h, frame.h and window.h.
4229
4230 * xterm.h (struct x_output): Move members left_pos, top_pos,
4231 border_width, pixel_height, pixel_width, line_height,
4232 internal_border_width, vertical_scroll_bar_extra,
4233 left_fringe_width, right_fringe_width, fringe_cols,
4234 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
4235 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
4236 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
4237 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
4238 (PIXEL_WIDTH, PIXEL_HEIGHT)
4239 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
4240 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
4241 frame.h and renamed [see frame.h changes].
4242 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
4243 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
4244 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
4245 and renamed [see frame.h changes].
9018a88e 4246
0416870b
KS
4247 * xterm.c: Make (several) trivial substitutions for renamed and
4248 new macros in dispextern.h, frame.h and window.h.
4249 (x_draw_glyph_string_box): Adapt to per-window fringes and
4250 scroll-bars.
4251 (scroll_run): Adapt to new fringe position.
4252 (glyph_rect): Use window coordinates returned from
4253 window_from_coordinates rather than frame_to_window_pixel_xy.
4254 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
4255 scroll-bars.
4256 (handle_one_xevent): Simplify a USE_GTK conditional.
4257 (x_clip_to_row): Remove superfluous whole_line_p arg and code
4258 (fringes are now inside margins, i.e. always in the clipping area).
4259 All callers changed.
4260 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
4261 directly, then call compute_fringe_widths. Don't call
4262 frame_update_line_height.
4263
4264 * w32term.h (struct w32_output): Move members left_pos, top_pos,
4265 border_width, pixel_height, pixel_width, line_height,
4266 internal_border_width, vertical_scroll_bar_extra,
4267 left_fringe_width, right_fringe_width, fringe_cols,
4268 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
4269 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
4270 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
4271 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
4272 (PIXEL_WIDTH, PIXEL_HEIGHT)
4273 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
4274 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
4275 frame.h and renamed [see frame.h changes].
4276 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
4277 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
4278 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
4279 and renamed [see frame.h changes].
9018a88e 4280
0416870b
KS
4281 * w32term.c: Make (several) trivial substitutions for renamed and
4282 new macros in dispextern.h, frame.h and window.h.
4283 (x_draw_glyph_string_box): Adapt to per-window fringes and
4284 scroll-bars.
4285 (glyph_rect): Use window coordinates returned from
4286 window_from_coordinates rather than frame_to_window_pixel_xy.
4287 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
4288 scroll-bars.
4289 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
4290 (fringes are now inside margins, i.e. always in the clipping area).
4291 All callers changed.
4292 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
4293 directly, then call compute_fringe_widths. Don't call
4294 frame_update_line_height.
4295
4296 * w32console.c: Make (few) trivial substitutions for renamed and
4297 new macros in dispextern.h, frame.h and window.h.
4298
4299 * w32fns.c: Make (many) trivial substitutions for renamed and
4300 new macros in dispextern.h, frame.h and window.h.
4301
4302 * w32menu.c: Make (few) trivial substitutions for renamed and
4303 new macros in dispextern.h, frame.h and window.h.
4304
4305 * macterm.h (struct mac_output): Move members left_pos, top_pos,
4306 border_width, pixel_height, pixel_width, line_height,
4307 internal_border_width, vertical_scroll_bar_extra,
4308 left_fringe_width, right_fringe_width, fringe_cols,
4309 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
4310 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
4311 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
4312 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
4313 (PIXEL_WIDTH, PIXEL_HEIGHT)
4314 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
4315 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
4316 frame.h and renamed [see frame.h changes].
4317 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
4318 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
4319 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
4320 and renamed [see frame.h changes].
9018a88e 4321
0416870b
KS
4322 * macterm.c: Make (several) trivial substitutions for renamed and
4323 new macros in dispextern.h, frame.h and window.h.
4324 (x_draw_glyph_string_box): Adapt to per-window fringes and
4325 scroll-bars.
4326 (glyph_rect): Use window coordinates returned from
4327 window_from_coordinates rather than frame_to_window_pixel_xy.
4328 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
4329 scroll-bars.
4330 (x_clip_to_row): Remove superfluous whole_line_p arg and code
4331 (fringes are now inside margins, i.e. always in the clipping area).
4332 All callers changed.
4333 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
4334 directly, then call compute_fringe_widths. Don't call
4335 frame_update_line_height.
4336
4337 * macfns.c: Make (several) trivial substitutions for renamed and
4338 new macros in dispextern.h, frame.h and window.h.
9018a88e 4339 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
4340
4341 * macmenu.c: Make (few) trivial substitutions for renamed and
4342 new macros in dispextern.h, frame.h and window.h.
4343
4344 * msdos.h (struct x_output): Remove members left_pos, top_pos,
4345 and line_height, and use corresponding new members in struct
4346 frame. All uses changed.
4347 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
4348 superseeded by corresponding macros in frame.h.
4349
4350 * msdos.c: Make (several) trivial substitutions for renamed and
4351 new macros in dispextern.h, frame.h and window.h.
4352 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 4353 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
4354 (internal_terminal_init): No need to initialize line_height here;
4355 it now defaults to 1.
4356
9018a88e
SM
43572003-05-24 Stefan Monnier <monnier@cs.yale.edu>
4358
4359 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
4360 dropping `down' events.
4361
016bd3c0
AS
43622003-05-24 Andreas Schwab <schwab@suse.de>
4363
4364 * coding.c (find_safe_codings): Fix last change.
4365
4dacadcc
TTN
43662003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
4367
4368 * xfns.c (x_window): Fix typo from 2003-05-21 change.
4369
319830ce
SM
43702003-05-23 Stefan Monnier <monnier@cs.yale.edu>
4371
9018a88e
SM
4372 * xdisp.c (display_mode_element): Increase max depth.
4373 Simplify the error handling code. Use a different error string
4374 for the case where we hit the depth limit.
4375
319830ce
SM
4376 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
4377
4378 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
4379
43802003-05-21 Stefan Monnier <monnier@cs.yale.edu>
4381
4382 * intervals.c (get_local_map): Don't get char-property of previous
4383 point any more: get_pos_property already does it and better.
4384
c67de8ba
DL
43852003-05-21 Dave Love <fx@gnu.org>
4386
4387 [Merged from unicode branch.]
4388
4389 * xfns.c (x_window, x_window): Use use_xim.
4390
4391 * xterm.c (use_xim): Initialize.
4392 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
4393 (x_term_init): Maybe set use_xim.
4394
4395 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
4396
edd3ff1d
JR
43972003-05-21 Jason Rumney <jasonr@gnu.org>
4398
4399 * unexw32.c (_start): Remove _fmode initialization.
4400
4401 * emacs.c (main) [WINDOWSNT]: Move it here.
4402
463f55ee
DL
44032003-05-20 Dave Love <fx@gnu.org>
4404
4405 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
4406
af253914
RS
44072003-05-19 Richard M. Stallman <rms@gnu.org>
4408
4409 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
4410 as value for QCfont attribute.
4411 (realize_default_face): lface should already exist; crash if not.
4412 Specify 0 for FORCE_P when calling set_lface_from_font_name.
4413
4414 * frame.c (Fignore_event): Doc fix.
4415
1d211019
KH
44162003-05-19 Kenichi Handa <handa@m17n.org>
4417
4418 * coding.c (decode_coding_string): Handle post-read-conversion
4419 even if the coding doesn't require decoding.
4420
4dd68254
RS
44212003-05-18 Richard M. Stallman <rms@gnu.org>
4422
4423 * callproc.c (Fcall_process_region): Doc fix.
4424
14d87dc9
SM
44252003-05-17 Stefan Monnier <monnier@cs.yale.edu>
4426
deca5d96
SM
4427 * lread.c (Fload): Print a message if package is obsolete.
4428
14d87dc9
SM
4429 * window.c (Fselect_window): Add optional `norecord' arg.
4430 (select_window_1): Fold into Fselect_window.
4431 (select_window_norecord): New function.
4432 (temp_output_buffer_show): Use it. Preserve current buffer.
4433
4434 * window.h (Fselect_window): Update declaration.
4435
4436 * window.c (delete_window, Fother_window, Fset_window_configuration):
4437 * minibuf.c (read_minibuf):
4438 * macterm.c (x_new_focus_frame):
4439 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
4440 * callint.c (Fcall_interactively):
4441 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
4442
4443 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
4444
78f52183
DK
44452003-05-17 David Kastrup <dak@gnu.org>
4446
4447 * process.c (read_process_output): Back out change from 2003-03-09.
4448
14d87dc9
SM
44492003-05-17 Stefan Monnier <monnier@cs.yale.edu>
4450
4451 * editfns.c (get_pos_property): Don't assume that `object' = nil.
4452
4453 * textprop.c (text_property_stickiness): New arg `buffer'.
4454
4455 * intervals.h (text_property_stickiness): New arg `buffer'.
4456 (get_pos_property): Declare.
4457
4458 * intervals.c (get_local_map): Use get_pos_property, to obey
4459 stickiness and empty overlays.
4460 (create_root_interval, graft_intervals_into_buffer): Use BEG.
4461 (merge_properties, intervals_equal, merge_properties_sticky):
4462 Use XCAR, XCDR.
4463 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
4464
1fd1cc2f
RS
44652003-05-17 Richard M. Stallman <rms@gnu.org>
4466
4f9f637a
RS
4467 * minibuf.c (read_minibuf): If buffer is empty, record the default
4468 in the history.
4469 (Fminibuffer_complete_word): When deleting the overlap, take account
4470 of its real position.
4471
4472 * fns.c (map_char_table): Fix previous change.
4473
1fd1cc2f
RS
4474 * syntax.c (find_defun_start):
4475 When open_paren_in_column_0_is_defun_start,
4476 return beginning of buffer.
4477
4478 * lisp.h (map_char_table): Declare added arg.
4479
4480 * fns.c (map_char_table): New arg TABLE gets the master table.
4481 All calls changed.
4482 Process default and inheritance, resorting to Faref if necessary.
4483
4484 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
4485 (Faccessible_keymaps): Pass new arg to map_char_table.
4486
4487 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
4488
4489 * casetab.c (set_case_table): Pass new arg to map_char_table.
4490
4491 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
4492
4493 * lisp.h (specbinding_func): New typedef.
4494 (struct specbinding): Use specbinding_func, to put the `volatile'
4495 in the right place.
4496
4497 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
4498 to avoid GCC warning.
14d87dc9 4499
b4bd27c5
RS
45002003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
4501
14d87dc9 4502 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 4503
35fb885d
SM
45042003-05-15 Stefan Monnier <monnier@cs.yale.edu>
4505
4506 * keyboard.c (apply_modifiers): Don't fill the other cache.
4507
9a274fbd
SM
45082003-05-14 Stefan Monnier <monnier@cs.yale.edu>
4509
c55b5fad
SM
4510 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
4511
9a274fbd
SM
4512 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
4513 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
4514 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
4515 (Fset_window_configuration, Fcurrent_window_configuration)
4516 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
4517 (Fpos_visible_in_window_p, mark_window_cursors_off)
4518 (window_internal_height, window_internal_width, Frecenter)
4519 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
4520 (replace_buffer_in_all_windows, init_window_once, init_window)
4521 (syms_of_window, keys_of_window): Move from lisp.h.
4522 * lisp.h: Move window.c declarations to window.h.
4523
4524 * bytecode.c: Include window.h.
4525 * emacs.c: Include window.h.
4526
14d87dc9 4527 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
4528 (keyremap): Add `parent' field.
4529 (keyremap_step): Use it. Remove `parent' argument.
4530 (read_key_sequence): Setup and use the new `parent' field.
4531
fd93e331
SM
45322003-05-11 Stefan Monnier <monnier@cs.yale.edu>
4533
4534 * keyboard.c (adjust_point_for_property): Ensure termination.
4535
1c4001a1
SM
45362003-05-10 Stefan Monnier <monnier@cs.yale.edu>
4537
4538 * keyboard.c (follow_key): Remove dead variable `did_meta'.
4539 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
4540 duplicated handling of function-key-map and key-translation-map
4541 in read_key_sequence.
4542 (read_key_sequence): Use them.
4543
4544 * keyboard.c (adjust_point_for_property): Try harder to move point
4545 to the non-sticky end of an invisible property.
4546
4547 * xdisp.c (single_display_prop_intangible_p): Make `space' display
4548 property intangible as well.
4549
780379b1
AS
45502003-05-10 Andreas Schwab <schwab@suse.de>
4551
4552 * xmenu.c (single_menu_item): Change last parameter to void* to
4553 avoid warning.
4554
ca2de342
RS
45552003-05-09 Richard M. Stallman <rms@gnu.org>
4556
4557 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
4558 Bind Qinhibit_modification_hooks to t so there will be no GC.
4559 Rename local `tem' to `save_deactivate_mark'.
4560
4561 * eval.c (specpdl_ptr): Declare volatile.
4562 (unbind_to): Copy the whole binding and decrement specpdl_ptr
4563 before doing the work of unbinding it.
4564
4565 * lisp.h (struct specbinding): Declare elements volatile.
4566 (specpdl_ptr): Declare volatile.
4567
4568 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
4569
4570 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
4571 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
4572
347003be
DL
45732003-05-08 Dave Love <fx@gnu.org>
4574
4575 * coding.c (Vlast_coding_system_used): Doc fix.
4576
5adcec23
JR
45772003-05-07 Jason Rumney <jasonr@gnu.org>
4578
4579 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
4580 when system does not support them.
4581
5fe3b8a4
SM
45822003-05-05 Stefan Monnier <monnier@cs.yale.edu>
4583
4584 * fileio.c (Qwrite_region_annotate_functions): New var.
4585 (build_annotations): Use it to process the global part of the hook.
4586 (syms_of_fileio): Init and staticpro it.
4587
4588 * keyboard.c (safe_run_hooks_error): Display a message instead of
4589 silently ignoring the error.
4590
45912003-05-03 Stefan Monnier <monnier@cs.yale.edu>
4592
4593 * keyboard.c (input_available_signal): Mark static.
4594 (menu_bar_items): Use map_keymap.
4595 (menu_bar_one_keymap): Remove.
4596 (menu_bar_item): Adjust arglist (for use in map_keymap).
4597 Properly hide a second binding when not both are keymaps.
4598
4599 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
4600 (single_keymap_panes): Use it and map_keymap.
4601 (single_menu_item): Use skp as well.
4602
4603 * keymap.h (map_keymap_function_t): New type.
4604 (map_keymap): Declare.
4605
4606 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
4607 (map_keymap_call, Fmap_keymap): New functions.
4608 (syms_of_keymap): Defsubr map-keymap.
4609
4b1b4443
JD
46102003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4611
4612 * gtkutil.c (create_dialog, make_widget_for_menu_item)
4613 (make_menu_item, create_menus, xg_update_menu_item): Don't call
4614 ..._with_mnemonic functions for menu items.
4615
1f816871
KH
46162003-05-01 Kenichi Handa <handa@m17n.org>
4617
4618 * coding.c (coding_system_accept_latin_extra_p): Delete this
4619 function.
4620 (find_safe_codings): Pay attention to
4621 the property tranlsation-table-for-encode of each codings.
4622 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
4623
5ed6ba5b
SM
46242003-05-01 Stefan Monnier <monnier@cs.yale.edu>
4625
4626 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
4627
32c06229
SM
46282003-04-30 Stefan Monnier <monnier@cs.yale.edu>
4629
4630 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
4631
4632 * lisp.h (CHECK): Wrap args in parenthesis.
4633 (specbind): Fix doc: symbol = Qnil is not supported any more.
4634
4635 * bytecode.c (Fbyte_code) <unwind-protect>:
4636 Use Fprogn rather than 0 and Qnil.
4637
4638 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
4639 `double', and `triple' modifiers as well.
4640
ed3c3314
RS
46412003-04-30 Richard M. Stallman <rms@gnu.org>
4642
4643 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
4644
4645 * alloc.c (abort_on_gc): New variable.
4646 (Fgarbage_collect): Abort if abort_on_gc is set.
4647
4648 * lisp.h (abort_on_gc): Add decl.
4649
4650 * eval.c (Fsignal): Clear abort_on_gc.
4651
4652 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 4653 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
4654
4655 * xdisp.c (move_it_vertically_backward): Do the final big else
4656 even if nlines is 0.
4657
4658 * xdisp.c (redisplay_internal): Finish the per-frame loop
4659 even if redisplay is suspended by input.
4660
0b325c12
AC
46612003-04-24 Andrew Choi <akochoi@shaw.ca>
4662
4663 * macterm.c (x_list_fonts): Return all fonts that match if
4664 maxnames = -1.
4665
4e837cd0
KH
46662003-04-25 Kenichi Handa <handa@m17n.org>
4667
4668 * syntax.c (skip_chars): Fix previous change.
4669
9af7511a
KH
46702003-04-24 Kenichi Handa <handa@m17n.org>
4671
4672 * syntax.c (skip_chars): Make the code faster by using the common
4673 technique of *p, *stop, and *endp.
4674
e3b2c21f
JD
46752003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4676
4677 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 4678 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
4679 being updated.
4680
32c06229
SM
46812003-04-19 Stefan Monnier <monnier@cs.yale.edu>
4682
4683 * eval.c (Fapply): Undo last change and add a comment about why.
4684
c6464167
MB
46852003-04-18 Miles Bader <miles@gnu.org>
4686
4687 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
4688 pickier PARSE_MULTIBYTE_SEQ.
4689
e509f168
SM
46902003-04-17 Stefan Monnier <monnier@cs.yale.edu>
4691
4692 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
4693 Use XCDR, XCAR, CONSP.
4694 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
4695 (Fapply): Remove unnecessary GCPRO.
4696
4697 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
4698
4699 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
4700
4701 * buffer.h: Don't hardcode BEG==1.
4702
4703 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
4704
5ceea398
RS
47052003-04-16 Richard M. Stallman <rms@gnu.org>
4706
4707 * xdisp.c (try_window, try_window_reusing_current_matrix):
4708 When at end of window, set window_end_pos to Z-ZV.
4709
4710 * buffer.c (Foverlay_recenter): Doc fix.
4711
e509f168
SM
47122003-04-14 Stefan Monnier <monnier@cs.yale.edu>
4713
4714 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
4715
d243e605
AC
47162003-04-14 Andrew Choi <akochoi@shaw.ca>
4717
4718 * macterm.c (mac_check_for_quit_char): Don't check more often than
4719 once a second.
4720
6901b111
SM
47212003-04-11 Stefan Monnier <monnier@cs.yale.edu>
4722
4723 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
4724 specially, so that they can't hide an implicit switch-frame event.
4725 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
4726 (head_table): Use switch-frame as event_kind for select-window.
4727 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
4728
4729 * editfns.c (Fformat): Lisp_Object/int mixup.
4730 (format2): Remove unused var numargs.
4731
e301806f 47322003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 4733
6901b111 4734 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
4735 (Qafter_insert_file_set_coding): New variable.
4736 (syms_of_fileio): Initialize and staticpro it. Delete declaration
4737 for after-insert-file-adjust-coding-function.
4738 (Finsert_file_contents): Call Qafter_insert_file_set_coding
4739 instead of Vafter_insert_file_adjust_coding_function.
4740
38914424
KH
47412003-04-11 Kenichi Handa <handa@m17n.org>
4742
4743 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
4744
4745 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
4746 string. Callers changed.
4747
47482003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 4749
6901b111 4750 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 4751 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
4752 (Finsert_file_contents):
4753 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
4754 decode-format.
4755
f979dc05
JD
47562003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4757
4758 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
4759 get GtkAdjustment as widget now is a GtkRange.
4760
4761 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
4762 GtkRange to avoid memory leak.
4763
f8c6b4c2 47642003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 4765
50ebc53d
KH
4766 * xfaces.c (Vface_font_rescale_alist): New variable.
4767 (struct font_name): New member rescale_ratio.
4768 (font_rescale_ratio): New function.
6901b111 4769 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
4770 (better_font_p): On comparing point sized, pay attention to
4771 recale_ratio member of fonts.
4772 (build_scalable_font_name): Reflect font->rescale_ratio in the
4773 font name.
6901b111 4774 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 4775
cb98871c
KH
4776 * lread.c (read1): Before calling index, check if the 2nd
4777 arguemnt is in ASCII range.
4778
4773b8ca
RS
47792003-04-08 Richard M. Stallman <rms@gnu.org>
4780
b0ada147
RS
4781 * fileio.c (Ffile_symlink_p): Doc fix.
4782
4783 * editfns.c (Fformat): Translate positions of text properties
4784 in the format string to apply them to the result.
4785
4773b8ca
RS
4786 * fileio.c (Finsert_file_contents): Doc fix.
4787 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
4788
47892003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 4790
4773b8ca
RS
4791 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
4792
e8f25745 47932003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 4794
e8f25745
ST
4795 * mac.c (init_mac_osx_environment): Switch libexec and bin so
4796 that self-contained application finds libexec files.
4797
f8c6b4c2 47982003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 4799
6901b111
SM
4800 * coding.c (code_convert_region_unwind):
4801 Set Vlast_coding_system_used to the argument.
2310d84c
KH
4802 (code_convert_region): If post-read-conversion function changed
4803 the value of last-coding-sytem, keep the new value in
4804 coding->symbol so that it won't be overridden.
4805 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
4806 (coding_system_accept_latin_extra_p): New function.
4807 (find_safe_codings): Pay attention to characters registered in
4808 latin-extra-code-table.
2310d84c 4809
39c9a034
TTN
48102003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
4811
4812 * Makefile.in (md5.o): Add missing dependency info.
4813
eb67c5d6
RS
48142003-04-06 Richard M. Stallman <rms@gnu.org>
4815
4816 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
4817
4818 * marker.c (verify_bytepos): New function.
4819
4820 * intervals.c (set_intervals_multibyte_1): When becoming
4821 multibyte, adjust right and left child sizes to a whole set of
4822 characters. If an interval gets zero total-length, delete it.
4823 If an interval consists of just its children, delete one of them.
4824
4825 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
4826 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 4827
eb67c5d6
RS
4828 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
4829 All calls deleted.
4830 (lisp_malloc): Do the work here directly.
4831
b1f81fc5
JB
48322003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
4833
4834 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
4835 char tables.
4836
48372003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
4838
4839 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
4840 destructively change "%S" to "%s".
4841
774666fb
MB
48422003-04-03 Miles Bader <miles@gnu.org>
4843
4844 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
4845 always set.
4846
19c37f01
DL
48472003-04-01 Dave Love <fx@gnu.org>
4848
4849 * xfns.c (xpm_lookup_color): Grok "opaque".
4850
2f4b24c3
AC
48512003-03-31 Andrew Choi <akochoi@shaw.ca>
4852
4853 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
4854 parent window ID.
4855
4856 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
4857
4858 * macterm.h (struct mac_output): Define x_pixels_diff and
4859 y_pixels_diff.
b1f81fc5 4860
9443fcf6
JB
48612003-03-31 Juanma Barranquero <lektu@terra.es>
4862
4863 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
4864 blockinput.h and files included from it.
4865
e072891b
KS
48662003-03-31 Kim F. Storm <storm@cua.dk>
4867
4868 The following changes consolidates the common code related to
4869 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
4870 files into frame.c.
9443fcf6 4871
e072891b
KS
4872 * frame.c: Include blockinput.h.
4873 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
4874 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
4875 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
4876 related vars here.
4877 (struct frame_parm_table, frame_parms): New table for describing
4878 frame parameters and their associated Q-variable.
4879 The order of the parameters corresponds to the sequence of the
4880 frame_parm_handlers table in redisplay_interface.
4881 (x_fullscreen_move, x_set_frame_parameters)
4882 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
4883 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
4884 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4885 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
4886 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
4887 Generic functions for processing of frame parameters.
4888 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
4889 (display_x_get_resource, x_get_resource_string): Functions for
4890 generic access to X resources.
4891 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
4892 (x_default_parameter, Fx_parse_geometry): Functions for generic
4893 access to frame parameters.
6901b111
SM
4894 (x_figure_window_size): Generic calculation of frame size.
4895 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
4896 (syms_of_frame): Intern and staticpro frame parameter variables.
4897 Defvar_lisp Vx_resource_class and Vx_resource_name here.
4898 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 4899
e072891b
KS
4900 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
4901 parameter related vars defined in frame.c.
4902 (EMACS_CLASS): Define here.
4903 (enum FULLSCREEN_*): Define here.
4904 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
4905 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
4906 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
4907 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
4908 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
4909 (x_set_visibility, x_set_autoraise, x_set_autolower)
4910 (x_set_unsplittable, x_set_vertical_scroll_bars)
4911 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
4912 (x_figure_window_size): Add prototypes.
4913
4914 * dispextern.h (frame_parm_handler): New typedef.
4915 (struct redisplay_interface): New member frame_parm_handlers.
4916 (enum resource_types): Move declaration here.
4917 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
4918 (x_default_parameter): Add prototypes.
4919
4920 * window.c: Remove extern decl for frame parameter vars.
4921 (change_window_heights): New generic function;
4922 replaces x_change_window_heights. All users changed.
4923
4924 * window.h (change_window_heights): Add prototype.
4925
4926 * xfaces.c: Remove extern decl for frame parameter vars.
4927
4928 * xterm.h (EMACS_CLASS): Remove. Use generic define.
4929 (struct w32_display_info): Fix type of xrdb member.
4930 (enum FULLSCREEN_*): Remove.
4931 Remove prototypes for generic functions (in frame.h).
4932
4933 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
4934 parameters now defined in frame.h and frame.c.
4935 (Vx_resource_name): Remove. Use generic var.
4936 (enum x_frame_parms): Remove (bogus, unused enum).
4937 (check_x_display_info): Make non-static (for frame.c).
4938 (struct x_frame_parm_table, x_frame_parms): Remove.
4939 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
4940 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
4941 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4942 (x_change_window_heights, x_set_autoraise, x_set_autolower)
4943 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
4944 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
4945 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
4946 Remove. Use generic functions instead.
4947 (enum resource_types): Remove.
4948 (x_set_scroll_bar_default_width): New global function (for frame.c).
4949 (Fx_create_frame): Depend on x_figure_window_size to add space for
4950 toolbar and setup size_hint_flags.
4951 (x_frame_parm_handlers): New table for redisplay_interface.
4952 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 4953
e072891b
KS
4954 * xterm.c: Remove unnecessary extern declarations.
4955 (x_fullscreen_adjust): Remove. Use generic instead.
4956 (x_redisplay_interface): Add x_frame_parm_handlers member.
4957
4958 * w32gui.h (XrmDatabase): New (dummy) typedef.
4959
4960 * w32term.h (EMACS_CLASS): Remove. Use generic define.
4961 (struct w32_display_info): Fix type of xrdb member.
4962 (enum FULLSCREEN_*): Remove.
4963 (x_fullscreen_adjust): Remove prototype.
4964
4965 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
4966 parameters now defined in frame.h and frame.c.
4967 (Vx_resource_name): Remove. Use generic var.
4968 (enum x_frame_parms): Remove (bogus, unused enum).
4969 (check_x_display_info): Make non-static (for frame.c).
4970 (struct x_frame_parm_table, x_frame_parms): Remove.
4971 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
4972 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
4973 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
4974 (x_change_window_heights, x_set_autoraise, x_set_autolower)
4975 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
4976 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
4977 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
4978 Remove. Use generic functions instead.
4979 (enum resource_types): Remove.
4980 (x_set_scroll_bar_default_width): New global function (for frame.c).
4981 (Fx_create_frame): Depend on x_figure_window_size to add space for
4982 toolbar and setup size_hint_flags.
4983 (w32_frame_parm_handlers): New table for redisplay_interface.
4984 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 4985
e072891b
KS
4986 * w32term.c: Remove unnecessary extern declarations.
4987 (x_fullscreen_adjust): Remove. Use generic instead.
4988 (x_redisplay_interface): Add w32_frame_parm_handlers member.
4989
4990 * w32reg.c (x_get_string_resource): Use XrmDatabase.
4991
4992 * macgui.h (XrmDatabase): New (dummy) typedef.
4993
4994 * macterm.h (EMACS_CLASS): Remove.
4995 (struct mac_display_info): Add xrdb member.
4996 (struct mac_output): Add want_fullscreen member.
4997
4998 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
4999 parameters now defined in frame.h and frame.c.
5000 (Vx_resource_name): Remove. Use generic var.
5001 (check_x_display_info): Make non-static (for frame.c).
5002 (struct x_frame_parm_table, x_frame_parms): Remove.
5003 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
5004 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
5005 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5006 (x_change_window_heights, x_set_autoraise, x_set_autolower)
5007 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
5008 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
5009 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
5010 Remove. Use generic functions instead.
5011 (enum resource_types): Remove.
5012 (x_set_scroll_bar_default_width): New global function (for frame.c).
5013 (mac_frame_parm_handlers): New table for redisplay_interface.
5014 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 5015
e072891b
KS
5016 * macterm.c: Remove unnecessary extern declarations.
5017 (x_redisplay_interface): Add mac_frame_parm_handlers member.
5018
3e6a560b
KS
5019 * Makefile.in (frame.o): Add dependency on blockinput.h and files
5020 included from it (atimer.h and systime.h).
5021
7b7b454e
AS
50222003-03-30 Andreas Schwab <schwab@suse.de>
5023
5024 * xdisp.c (x_insert_glyphs): Fix swapped width and height
5025 parameters for shift_glyphs_for_insert.
5026
5027 * macterm.c (x_redisplay_interface): Add missing entry for
5028 draw_vertical_window_border.
5029
beb402de
KG
50302003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
5031
5032 * fileio.c (Fexpand_file_name): In the no-handler case, after
5033 expanding, look again for a handler and invoke it. This is needed
5034 for filenames like "/foo/../user@host:/bar/../baz" -- the first
5035 expansion produces "/user@host:/bar/../baz" which needs to be
5036 expanded again for the finame result "/user@host:/baz".
5037
b676f356
JD
50382003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5039
5040 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
5041 of area to be redrawn for better performance.
5042
3c671a56
SM
50432003-03-28 Stefan Monnier <monnier@cs.yale.edu>
5044
5045 * xterm.c (take_vertical_position_into_account): Remove.
5046 (xt_action_hook): Call set_vertical_scroll_bar if needed.
5047 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
5048 (xm_scroll_callback, x_create_toolkit_scroll_bar)
5049 (x_set_toolkit_scroll_bar_thumb): Simplify.
5050 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
5051 (XTread_socket): Remove unused var.
5052 (x_make_frame_invisible): Replace goto with else.
5053
5054 * xdisp.c (set_vertical_scroll_bar): New fun.
5055 (redisplay_window): Use it.
5056
84f2e615
RS
50572003-03-26 Richard M. Stallman <rms@gnu.org>
5058
5059 * xdisp.c (update_tool_bar): Recompute tool bar if
5060 update_mode_lines is set. Set w->update_mode_line
5061 only if the tool bar contents actually change.
5062 (update_menu_bar): Undo previous change.
5063
70b6104c
JD
50642003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5065
5fd6f727
JD
5066 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
5067 (xg_frame_set_char_size): Calculate scroll bar width before frame
5068 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
5069 (xg_separator_p): Check for all documented separator types.
5070 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
5071 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
5072
70b6104c
JD
5073 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
5074 so tool bar gets updated.
5075
d9b36d19
SM
50762003-03-26 Stefan Monnier <monnier@cs.yale.edu>
5077
5078 * data.c (store_symval_forwarding): Re-instate part of the code
5079 that was deleted with too much enthusiasm.
5080
50812003-03-25 Stefan Monnier <monnier@cs.yale.edu>
5082
5083 * data.c (store_symval_forwarding): Delete special read-only
5084 hack for type == -1, since we now use ->constant instead.
5085 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
5086
5087 * buffer.c (overlays_in): Declare static.
5088 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
5089 `constant' field rather than the variable's `type' field.
5090
365fa1b3
AC
50912003-03-24 Andrew Choi <akochoi@shaw.ca>
5092
5093 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
5094
5095 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
5096
5097 * fns.c [MAC_OSX]: Do not redefine vector.
5098
5099 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
5100
5101 * macgui.h: Remove definition of No_Cursor.
5102
d9b36d19 5103 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
5104
5105 * xdisp.c: Define No_Cursor.
5106 (x_write_glyphs, notice_overwritten_cursor)
5107 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
5108 (note_mouse_highlight): Remove Mac-specific code.
5109 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 5110
c0bcce6f
JPW
51112003-03-24 John Paul Wallington <jpw@gnu.org>
5112
5113 * xdisp.c (redisplay_window): If mini window's buffer is not
5114 empty, then redisplay it like other windows.
5115
a526b96c
KS
51162003-03-23 Kim F. Storm <storm@cua.dk>
5117
5118 * w32term.c (w32_draw_window_cursor): Fix last change.
5119
37ab321e
KH
51202003-03-23 Kenichi Handa <handa@m17n.org>
5121
a526b96c
KS
5122 * alloc.c (make_string_from_bytes, make_specified_string):
5123 Add `const' for the arg CONTENTS.
37ab321e
KH
5124
5125 * lisp.h (make_string_from_bytes, make_specified_string):
5126 Prototypes adjusted.
5127
7863d625
JD
51282003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5129
a526b96c 5130 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 5131
7863d625
JD
5132 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
5133 (XG_SB_RANGE): New define.
5134
5135 * gtkutil.c (xg_fixed_handle_expose): New function.
5136 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
5137 expose events.
5138 (xg_update_scrollbar_pos): Take two more arguments, left and width
5139 of scroll bar including borders.
5140 Clear left and right part outside scroll bar separately as some
5141 themes have bars that are not an even number of pixels.
d9b36d19 5142 Don't set reallocate_redraws, don't call
7863d625
JD
5143 gdk_window_process_all_updates.
5144 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
5145 so no need to change it. Calculate size and value with XG_SB_RANGE.
5146
d9b36d19
SM
5147 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
5148 Pass left and width of scroll bar including borders to
7863d625
JD
5149 xg_update_scrollbar_pos.
5150
af0ad939
TTN
51512003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
5152
5153 * Makefile.in: Make sure space precedes end-of-line backslashes.
5154
b22139fd
KS
51552003-03-22 Kim F. Storm <storm@cua.dk>
5156
5157 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
5158 Add generic versions here. Remove system specific versions
5159 defined elsewhere.
5160
5161 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
5162 Add prototypes.
5163
6e6410cf
KS
5164 * xterm.h (STORE_NATIVE_RECT): New macro.
5165
5c9cc435
KS
51662003-03-21 Kim F. Storm <storm@cua.dk>
5167
00c64fab
SM
5168 * xdisp.c (get_glyph_string_clip_rect):
5169 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
5170
5171 * dispextern.h (struct redisplay_interface): Add active_p
5172 argument to draw_window_cursor member. All uses changed.
5173
acd37560
KS
51742003-03-21 Kim F. Storm <storm@cua.dk>
5175
5176 The following changes consolidate code related to writing and
5177 inserting glyphs, exposing frame, the tool bar, the mouse face,
5178 the output cursor, and help echo from xterm.c, w32term.c and
5179 macterm.c into xdisp.c. It also generalizes the use of the
5180 window_part enum instead of using numeric values throughout.
af0ad939 5181
acd37560
KS
5182 * xdisp.c: Consolidate gui-independent code here.
5183 Include keymap.h.
5184 (Qhelp_echo): Import.
5185 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
5186 (help_echo_string, help_echo_window, help_echo_object)
5187 (previous_help_echo_string, help_echo_pos): Declare here.
5188 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
5189 (estimate_mode_line_height): Define here. Handle windowing
5190 systems directly (without using estimate_mode_line_height_hook).
5191 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
5192 (update_window_cursor, update_cursor_in_window_tree)
5193 (fast_find_position, fast_find_string_pos)
5194 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
5195 (expose_area, expose_line, expose_overlaps, expose_window)
5196 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
5197 declared static as they are only used locally in xdisp.c.
5198 (draw_glyphs): Rename from x_draw_glyphs and make static.
5199 (tool_bar_item_info, notice_overwritten_cursor): Make static.
5200 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
5201 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 5202 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
5203 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
5204 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
5205 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
5206 (note_mouse_highlight, x_clear_window_mouse_face)
5207 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
5208 (x_intersect_rectangles): New generic functions for use by xdisp.c
5209 and GUI front-ends.
5210 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
5211 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
5212
5213 * dispextern.h (Display_Info): Generic typedef for *_display_info.
5214 (NativeRectangle): Generic typedef for rectangle type.
5215 (enum window_part): Move here from window.c.
5216 (struct redisplay_interface): New members flush_display_optional,
5217 define_frame_cursor, clear_frame_area, draw_window_cursor,
5218 draw_vertical_window_border, shift_glyphs_for_insert.
5219 Rename member clear_mouse_face to clear_window_mouse_face.
5220 (estimate_mode_line_height_hook): Remove hook.
5221 (auto_raise_tool_bar_buttons_p): Don't declare extern.
5222 (tool_bar_item_info): Remove prototype.
5223 (help_echo_string, help_echo_window, help_echo_object)
5224 (previous_help_echo_string, help_echo_pos)
5225 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
5226 (x_stretch_cursor_p, output_cursor): Declare extern.
5227 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
5228 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
5229 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
5230 (display_and_set_cursor, set_output_cursor, x_cursor_to)
5231 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
5232 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
5233 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
5234 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
5235 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
5236 Add prototypes.
5237 (mode_line_string, marginal_area_string): Fix prototypes.
5238
5239 * window.c (enum window_part): Move to dispextern.h.
5240 (coordinates_in_window): Use enum window_part member names
5241 instead of numbers to describe return value.
5242 (struct check_window_data): Change part member to window_part.
5243 (check_window_containing): Return window_part unaltered.
5244 (window_from_coordinates): Change part arg from int to enum
5245 window_part. Allow part arg to be null. All users changed.
5246
5247 * window.h (window_from_coordinates): Fix prototype.
5248
5249 * term.c (estimate_mode_line_height): Move to xdisp.c.
5250
5251 * keyboard.c (make_lispy_event): Use enum window_part.
5252
5253 * dispnew.c (mode_line_string, marginal_area_string): Use enum
5254 window_part instead of int in arg list. Users changed.
5255
5256 * xterm.h (No_Cursor): Declare as None for X.
5257 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 5258
acd37560
KS
5259 * xterm.c: Remove consolidated defines and code.
5260 (BETWEEN): Remove unused macro.
5261 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
5262 (x_define_frame_cursor, x_clear_frame_area)
5263 (x_draw_window_cursor): New X-specific functions for RIF.
5264 (x_redisplay_interface): Add new members.
5265
5266 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
5267
5268 * w32term.h (struct w32_output): Remove cross_cursor member.
5269
5270 * w32term.c: Remove consolidated defines and code.
5271 (BETWEEN): Remove unused macro.
5272 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
5273 (w32_define_frame_cursor, w32_clear_frame_area)
5274 (w32_draw_window_cursor): New W32-specific functions for RIF.
5275 (w32_redisplay_interface): Add new members.
5276
a64387ee 5277 * w32gui.h (No_Cursor): Define as 0 for W32.
acd37560
KS
5278 (XRectangle): Add X compatible rectangle type.
5279 (NativeRectangle): Declare as RECT for W32.
5280 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
5281
5282 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
5283
5284 * w32console.c: Remove consolidated defines and code.
af0ad939 5285
acd37560
KS
5286 * msdos.h (Display_Info): Add generic typedef.
5287
5288 * msdos.c: Remove consolidated defines and code.
5289 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
5290
5291 * macterm.h (struct mac_output): Replace member cross_cursor by
5292 hand_cursor.
5293 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
5294
5295 * macterm.c: Remove consolidated defines and code.
5296 (BETWEEN): Remove unused macro.
5297 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
5298 (mac_define_frame_cursor, mac_clear_frame_area)
5299 (mac_draw_window_cursor): New Mac-specific functions for RIF.
5300 (x_redisplay_interface): Add new members.
5301
5302 * macgui.h (No_Cursor): Define as 0 for Mac.
5303 (XRectangle): Add X compatible rectangle type.
5304 (NativeRectangle): Declare as Rect for Mac.
5305 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
5306
204ccab1
KS
5307 * macfns.c (x_set_mouse_color): Setup hand_cursor.
5308 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 5309
9443fcf6 5310 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
5311 included from it. Add dependency on keymap.h.
5312
5313 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
5314
8ba01a70 53152003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
5316
5317 * fileio.c (Fexpand_file_name): Fix previous change.
5318
8ba01a70 53192003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
5320
5321 * fileio.c (Ffile_name_directory): Reconstruct file name by
5322 make_specified_string.
5323 (Ffile_name_nondirectory, Ffile_name_as_directory)
5324 (Fdirectory_file_name, Fexpand_file_name)
5325 (Fsubstitute_in_file_name): Likewise.
5326 (Fread_file_name): Compare decoded homedir with DIR and
5327 DEFAULT_FILENAME.
5328
5329 * alloc.c (make_specified_string): If NCHARS is negative, count
5330 the number of characters.
5331
19536747
JD
53322003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5333
de38ae5a
JD
5334 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
5335 all widgets.
5336
19536747
JD
5337 * gtkutil.h: Removed xg_ignore_next_thumb.
5338
37ab321e 53392003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
5340
5341 * coding.c (Vchar_coding_system_table): Remove this variable.
5342 (Vcoding_system_safe_chars): New variable.
5343 (intersection): Remove this function.
5344 (find_safe_codings): Don't use Vchar_coding_system_table, but try
5345 all codings in SAFE_CODINGS.
00c64fab 5346 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
5347 find_safe_codings. Get generic coding systems from
5348 Vcoding_system_safe_chars.
5349 (Fdefine_coding_system_internal): New function.
5350 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
5351 Initialize and staticpro Vcoding_system_safe_chars.
5352
17097258
JD
53532003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5354
2a2071c3
JD
5355 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
5356 equal old values before updating.
5357
17097258
JD
5358 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
5359
5360 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
5361
53622003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5363
5364 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
5365 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
5366 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
5367 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
5368 (xg_create_scroll_bar): Pass bar to button event callback.
5369 (xg_find_top_left_in_fixed): New function.
5370 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
5371 whole scroll bar area. Get old position with
5372 xg_find_top_left_in_fixed, calculate and only clear needed areas.
5373 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
5374 dragging is in progress. Calculate whole as for Motif.
5375 Remove code that saved last values. Call gtk_range functions to
5376 set scroll bar sizes.
5377
5378 * gtkutil.h: Removed xg_ignore_next_thumb.
5379
8cb9dfbf
JB
53802003-03-17 Juanma Barranquero <lektu@terra.es>
5381
5382 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
5383 and files included from it.
5384
00c64fab
SM
53852003-03-18 Stefan Monnier <monnier@cs.yale.edu>
5386
5387 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
5388 multiple occurrences of the same keymap under different prefixes.
5389 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
5390
c45bb3b2
JR
53912003-03-16 Jason Rumney <jasonr@gnu.org>
5392
5393 * w32gui.h: Use HDC for Display.
5394
5395 * w32term.c (w32_encode_char): Prevent double-byte chars from
5396 crashing Emacs.
5397
5398 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
5399 as binary.
5400
2a6d0874
JB
54012003-03-16 Juanma Barranquero <lektu@terra.es>
5402
5403 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
5404
03eb5fab
KS
54052003-03-16 Kim F. Storm <storm@cua.dk>
5406
5407 The following changes consolidate some of the gui-independent
5408 parts of the processing and drawing of "glyph strings" from
5409 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 5410
03eb5fab
KS
5411 * dispextern.h (struct glyph): Reduce face_id member from 22 to
5412 21 bits (this reduces number of faces from 4M to 2M).
5413 Replace W32 specific w32_font_type member (2 bits) by generic
5414 font_type member (3 bits) for portability.
5415 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
5416 (enum draw_glyphs_face): Define here.
5417 (struct glyph_string): Define here. Merge W32 and X versions.
5418 (struct redisplay_interface): New members per_char_metric,
5419 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
5420 (VCENTER_BASELINE_OFFSET): Define here.
5421 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
5422 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
5423
5424 * xdisp.c: Consolidate gui-independent "glyph string" code here.
5425 (dump_glyph_string): Moved here.
5426 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
5427 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
5428 (fill_composite_glyph_string, fill_glyph_string)
5429 (fill_image_glyph_string, fill_stretch_glyph_string)
5430 (left_overwritten, left_overwriting, right_overwritten)
5431 (right_overwriting, get_char_face_and_encoding)
5432 (set_glyph_string_background_width, compute_overhangs_and_x)
5433 (append_glyph, append_composite_glyph, produce_image_glyph)
5434 (take_vertical_position_into_account, append_stretch_glyph)
5435 (produce_stretch_glyph): New generic functions (based on X version).
5436 Call platform specific functions through rif.
5437 (INIT_GLYPH_STRING): New macro, hides W32 details.
5438 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
5439 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
5440 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
5441 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
5442 (notice_overwritten_cursor):
5443 Generic functions exported to platform modules. Users changed.
5444
5445 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
5446 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
5447 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 5448 New macros for consolidated code.
2a6d0874 5449
03eb5fab
KS
5450 * xterm.c: Remove consolidated defines and code.
5451 (x_per_char_metric, x_encode_char)
5452 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
5453 (x_redisplay_interface): Add new members.
5454
5455 * w32gui.h (Display): Add dummy typedef for consolidation.
5456 (XChar2b): Define alias for wchar_t for consolidation.
5457 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
5458
5459 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 5460 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
5461 New macros for consolidation.
5462
fad49844 5463 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
5464 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
5465 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
5466 (w32_per_char_metric): Change font_type arg to int for RIF.
5467 (w32_encode_char): Return int according to RIF requirements.
5468 (w32_compute_glyph_string_overhangs): Adapt to RIF.
5469 (w32_get_glyph_overhangs): New function for RIF. Uses generic
5470 x_get_glyph_overhangs.
5471 (w32_redisplay_interface): Add new members.
5472
5473 * macgui.h (XChar2b): Move typedef here for consolidation.
5474 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
5475
5476 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
5477 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
5478 consolidation.
5479
5480 * macterm.c: Remove consolidated defines and code.
5481 (mac_per_char_metric): New function for RIF.
00c64fab 5482 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
5483 (mac_compute_glyph_string_overhangs): Adapt for RIF.
5484 (x_redisplay_interface): Add new members.
5485
00c64fab
SM
54862003-03-15 Stefan Monnier <monnier@cs.yale.edu>
5487
5488 * keymap.c (Vmenu_events): New var.
5489 (syms_of_keymap): Initialize it.
5490 (where_is_internal): Check more carefully what is a menu event.
5491
225c7a07
RS
54922003-03-14 Richard M. Stallman <rms@gnu.org>
5493
5494 * lread.c (read1): After #!, exit loop on eof.
5495
cea9be54
JD
54962003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5497
9ea0e54d
JD
5498 * gtkutil.h: Add declaration for xg_frame_cleared.
5499
0cb35f4e
JD
5500 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
5501
cea9be54
JD
5502 * gtkutil.c (struct xg_last_sb_pos): New structure.
5503 (handle_fixed_child): New function.
5504 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
5505 and force a redraw on them.
5506 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
5507 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
5508 so we can avoid unneeded redraws.
5509 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
5510 and force a redraw on the scroll bar.
5511 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
5512 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 5513 (xg_frame_cleared): New function.
cea9be54 5514
20b853f3
KH
55152003-03-13 Kenichi Handa <handa@m17n.org>
5516
5517 * coding.c (Fdetect_coding_region): Fix docstring.
5518 (Fdetect_coding_string): Fix docstring.
5519
7a555aff
AS
55202003-03-13 Andreas Schwab <schwab@suse.de>
5521
25cc0080
AS
5522 * gtkutil.c: Add prototype for create_menus.
5523
30225431
AS
5524 * data.c (long_to_cons): Fix type of top.
5525
5526 * xselect.c (selection_data_to_lisp_data): Use int instead of
5527 long for an integer of size 4.
5528
7a555aff 5529 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 5530 (xg_tool_bar_help_callback): Likewise.
7a555aff 5531
a3e4741f
AS
55322003-03-12 Andreas Schwab <schwab@suse.de>
5533
5534 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
5535
9668be7c
KS
55362003-03-12 Kim F. Storm <storm@cua.dk>
5537
03eb5fab 5538 The following changes consolidate the fringe handling from
9668be7c 5539 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 5540
9668be7c
KS
5541 * xdisp.c: Consolidate fringe handling code here.
5542 (left_bits, right_bits, continued_bits, continuation_bits)
5543 (ov_bits, zv_bits): Define fringe bitmaps.
5544 (fringe_bitmaps): New array holding fringe bitmaps.
5545 (draw_fringe_bitmap): Draw a specific bitmap; call display
5546 specific drawing routine via rif->draw_fringe_bitmap.
5547 (draw_row_fringe_bitmaps): Generic replacement for
5548 x_draw_row_fringe_bitmaps; all callers changed.
5549 (compute_fringe_widths): Generic replacement for
5550 x_compute_fringe_widths; all callers changed.
5551
5552 * dispextern.h (enum fringe_bitmap_type): Define here.
5553 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
5554 (fringe_bitmaps): Declare extern.
5555 (struct redisplay_interface): New member draw_fringe_bitmap.
5556 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
5557
5558 * xterm.c: Remove generic fringe code.
5559 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
5560 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
5561
5562 * w32term.c: Remove generic fringe code.
5563 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
5564 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 5565
9668be7c
KS
5566 * macterm.c: Remove generic fringe code.
5567 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
5568 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
5569
00a88f32
SM
55702003-03-11 Stefan Monnier <monnier@cs.yale.edu>
5571
5572 * print.c (Fprin1_to_string): Return unibyte string if possible.
5573
1d1de695
DK
55742003-03-09 David Kastrup <dak@gnu.org>
5575
5576 * process.c (read_process_output): We have allocated enough space
5577 for readmax and carryover, so actually use the alloted space.
5578
257f40f2
JD
55792003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5580
5581 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
5582 toolkit scrollbar click.
5583
5584 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
5585 for USE_GTK.
5586 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
5587 also.
5588 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
5589 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 5590
257f40f2
JD
5591 * gtkutil.h: Declare xg_get_scroll_id_for_window.
5592
5593 * gtkutil.c (xg_get_scroll_id_for_window): New function.
5594 (xg_tool_bar_item_expose_callback): New function.
5595 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
5596 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
5597 on the tool bar widget.
5598 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
5599 to expose on the tool bar item widgets.
5600
15213141
JD
56012003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5602
26b74a0b 5603 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 5604 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
5605 deleted from the image cache).
5606
15213141
JD
5607 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
5608 the event isn't for a frame (i.e. for dialogs).
5609
20b853f3 56102003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
5611
5612 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
5613 composition components reaches the limit, terminate composing.
5614 (COMPOSITION_OK): New macro.
00a88f32 5615 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
5616 composition is found.
5617 (coding_restore_composition): Adjust the number of composition
5618 components if it is not sane.
5619
c9029fe5
JB
56202003-03-06 Juanma Barranquero <lektu@terra.es>
5621
5622 * w32term.h (struct w32_display_info): Add xrdb member to support
5623 passing resources via -xrm on Windows.
5624
5625 * w32term.c (w32_make_rdb): New function.
5626 (w32_term_init): Use it to initialize xrdb member of w32_display_info
5627 struct. Delete leftover code.
5628
5629 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
5630 for resources passed on the command line.
5631
5632 * w32reg.c (w32_get_rdb_resource): New function.
5633 (x_get_string_resource): Use it, so resources passed with -xrm
5634 supercede the ones in the registry.
5635
9d00001f
JD
56362003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5637
5638 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
5639 instead of x_top_window_to_frame.
5640
ca2417b9
JD
56412003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5642
5643 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
5644 when restarting Emacs.
5645
5b20caf0
RS
56462003-03-03 Richard M. Stallman <rms@gnu.org>
5647
5648 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
5649 to run kill-buffer-query-functions.
5650 (Qkill_buffer_query_functions): New var.
5651 (syms_of_buffer): Init and staticpro it.
5652
58e91b77
JD
56532003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5654
5655 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
5656
932357b4
KS
56572003-02-25 Kim F. Storm <storm@cua.dk>
5658
5659 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
5660 If centering point failed to make whole line visible and vscroll
5661 is non-zero, disable vscroll and try centering point again.
5662
5663 * lread.c (read1): Accept `single space' syntax like (? x).
5664
bb8db7e1
JD
56652003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5666
5667 * keyboard.c (cancel_hourglass_unwind): Surround with
5668 #ifdef HAVE_X_WINDOWS
5669
47d77aab
KH
56702003-02-25 Kenichi Handa <handa@m17n.org>
5671
5672 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
5673 process only when "subprocesses" is defined.
5674
6a097c0c
SM
56752003-02-24 Stefan Monnier <monnier@cs.yale.edu>
5676
5677 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
5678
0b063c27
JB
56792003-02-24 Juanma Barranquero <lektu@terra.es>
5680
d1135afc
JB
5681 * callint.c (fix_command): Declare as static void and move before
5682 Fcall_interactively.
5683
0b063c27
JB
5684 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
5685 (syms_of_xdisp): Don't initialize Qwhen.
5686
0af912f0
JD
56872003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5688
5689 * keyboard.c (cancel_hourglass_unwind): New function.
5690 (command_loop_1): Cancel hourglass with unwind-protect.
5691
120d0a23
RS
56922003-02-23 Richard M. Stallman <rms@gnu.org>
5693
5694 * callint.c (fix_command): New subroutine, from Fcall_interactively.
5695 Detect (when ... (region-beginning)) etc.
5696 (Fcall_interactively): Call fix_command.
5697 (Qif, Qwhen): New variables.
5698 (syms_of_callint): Init and staticpro them.
0b063c27 5699
120d0a23
RS
5700 * regex.c (print_partial_compiled_pattern): Output to stderr.
5701
4ece81a6
KG
57022003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
5703
5704 * dired.c (directory_files_internal): Don't expand directory.
5705 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
5706 instead. From Lars Hansen <larsh@math.ku.dk>.
5707
e52bd6b7
SM
57082003-02-22 Stefan Monnier <monnier@cs.yale.edu>
5709
5710 * fns.c (string_to_multibyte): Remove unused var i.
5711 (Flanginfo): Fix int/Lisp_Object mixup.
5712 (void_call2): New fun.
5713 (Fmap_char_table): Use it in place of call2.
5714
5715 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
5716
5717 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
5718
5719 * keymap.c (copy_keymap_1): Make it static.
5720
5721 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
5722
c33ef7c4
JB
57232003-02-22 David Ponce <david@dponce.com>
5724
5725 * lread.c (Fload): Don't check STRING_MULTIBYTE.
5726
16782258
JD
57272003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5728
5729 * process.h: Removed subtty field from struct Lisp_Process.
5730
5731 * process.c (create_process): Remove setting of subtty.
5732 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
5733 (Fprocess_running_child_p, process_send_signal):
5734 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
5735 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
5736
3abeca61
KG
57372003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
5738
5739 * keymap.c (Fdefine_key): Doc fix.
5740
92a8ce63
JB
57412003-02-21 Juanma Barranquero <lektu@terra.es>
5742
5743 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
5744
5745 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
5746 POLLING_PROBLEM_IN_SELECT.
5747
5748 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
5749 Delete #undef of POLLING_PROBLEM_IN_SELECT.
5750
5751 * s/hpux10-20.h: New file.
5752
e52bd6b7
SM
5753 * process.c (wait_reading_process_input):
5754 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 5755
20f1ef2e
KH
57562003-02-20 Kenichi Handa <handa@m17n.org>
5757
32d0a9dc
KH
5758 * fontset.c (check_fontset_name): If NAME is nil, return the
5759 default fontset.
5760 (override_font_info): New function.
e52bd6b7 5761 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
5762 (Ffontset_info): If FONTSET is not the default fontset, merge
5763 FONTSET onto the copy of the default fontset, and work on that
5764 copy. Document that NAME nil means the default fontset.
5765 (Ffontset_font): Document that NAME nil means the default fontset.
5766
20f1ef2e
KH
5767 * process.c (setup_process_coding_systems): If the process's
5768 in/out descriptor is -1, do nothing.
5769
77d1daf2
AS
57702003-02-19 Andreas Schwab <schwab@suse.de>
5771
e52bd6b7
SM
5772 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
5773 Add prototypes.
77d1daf2 5774
f9a45bb3
KH
57752003-02-19 Kenichi Handa <handa@m17n.org>
5776
5777 * xfaces.c (try_alternative_families): Try all scalable fonts if
5778 Vscalable_fonts_allowed is not Qt.
5779
72ecb43c
JD
57802003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5781
5782 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
5783
ee5be7c3
JD
57842003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5785
5786 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
5787 names.
5788
5789 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 5790 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
5791 x_face_list_fonts.
5792 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
5793 (Fx_list_fonts): Set maxnames to -1 to get all font names.
5794
4cd519a7
KS
57952003-02-18 Kim F. Storm <storm@cua.dk>
5796
068f9882
KS
5797 * lread.c (read1): Fix last change.
5798 "`" is not always special. Allow "?" after a character constant.
4cd519a7 5799
7290a344
AC
58002003-02-18 Andrew Choi <akochoi@shaw.ca>
5801
5802 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
5803
1f7fa69b
AS
58042003-02-18 Andreas Schwab <schwab@suse.de>
5805
5806 * window.c (window_scroll_pixel_based): Move outside a
5807 multi-glyph character before setting new window start.
5808
5809 * xdisp.c (in_display_vector_p): New function.
5810 * dispextern.h (in_display_vector_p): Declare.
5811
23e21195
KS
58122003-02-18 Kim F. Storm <storm@cua.dk>
5813
5814 * lread.c (read1): Fix and relax read syntax.
5815 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
5816 Only recognize "," after dotted-pair dot if inside backquote.
5817 Never include "`" or "," (inside backquote) in a symbol.
5818 Allow dotted-pair dot after a character constant.
5819 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 5820
f098b121
JD
58212003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5822
5823 * gtkutil.c (xg_tool_bar_expose_callback): New function.
5824 (xg_create_tool_bar): Force style of tool bar to be horizontal with
5825 icons. Set name of tool bar to emacs-toolbar.
5826 (update_frame_tool_bar): Connect expose event to
5827 xg_tool_bar_expose_callback.
5828
63020c46
RS
58292003-02-17 Richard M. Stallman <rms@gnu.org>
5830
5831 * keyboard.c (this_command_key_count_reset): New variable.
5832 Initiatize to 0 where this_command_key_count is set.
5833 (read_char): Save and restore this_command_key_count_reset
5834 around input method code.
5835 (read_char): If this_command_key_count_reset, echo reread commands.
5836 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
5837
fb4452cc
KH
58382003-02-17 Kenichi Handa <handa@m17n.org>
5839
5840 * fns.c (string_to_multibyte): Always return a multibyte string.
5841
bd11cc09
JR
58422003-02-16 Jason Rumney <jasonr@gnu.org>
5843
e52bd6b7
SM
5844 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
5845 Negative max_fonts parameter means list all.
bd11cc09 5846
4cdf4bde
DL
58472003-02-14 Dave Love <fx@gnu.org>
5848
5849 * fns.c (Flanginfo): Doc fix.
5850
023b93f6
KS
58512003-02-13 Kim F. Storm <storm@cua.dk>
5852
37cd4238
KS
5853 * lread.c (read_escape): Interpret \s as a SPACE character, except
5854 for \s-X in a character constant which still is the super modifier.
5855 (read1): Signal an `invalid read syntax' error if a character
5856 constant is immediately followed by a digit or symbol character.
5857
140a6b7e
KS
5858 * search.c (Fmatch_data): Doc fix. Explicitly state that
5859 match-data is undefined if last search failed.
5860
023b93f6
KS
5861 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
5862 All uses changed.
5863
7d5c86e5
JB
58642003-02-12 Juanma Barranquero <lektu@terra.es>
5865
5866 * eval.c (Fdefmacro): Fix typo.
5867
295fff2c
KS
58682003-02-12 Kim F. Storm <storm@cua.dk>
5869
5870 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
5871 macro is a string, convert meta modifiers in string when copying
5872 the string into a vector.
5873
60f3202d
KS
58742003-02-11 Kim F. Storm <storm@cua.dk>
5875
5876 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
5877
61cb0b53
KH
58782003-02-11 Kenichi Handa <handa@m17n.org>
5879
5880 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
5881
7392e23c
KS
58822003-02-10 Kim F. Storm <storm@cua.dk>
5883
5884 * process.c: Doc fixes.
5885 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
5886
ce4254bd
KH
58872003-02-10 Kenichi Handa <handa@m17n.org>
5888
9c7a329a
KH
5889 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
5890
ce4254bd
KH
5891 * process.c (QCfilter_multibyte): New variable.
5892 (setup_process_coding_systems): New function.
e52bd6b7
SM
5893 (Fset_process_buffer, Fset_process_filter):
5894 Call setup_process_coding_systems.
ce4254bd
KH
5895 (Fstart_process): Initialize the member `filter_multibyte' of
5896 struct Lisp_Process.
5897 (create_process): Call setup_process_coding_systems.
5898 (Fmake_network_process): New keyward `:filter-multibyte'.
5899 Initialize the member `filter_multibyte' of struct Lisp_Process.
5900 Call setup_process_coding_systems.
5901 (server_accept_connection): Call setup_process_coding_systems.
5902 (read_process_output): If the process has a filter, decide the
5903 multibyteness of a string to given to the filter by
5904 `filter_multibyte' member of the process. If the process doesn't
5905 have a filter and the result of conversion is unibyte, use
5906 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
5907 multibyte form.
5908 (Fset_process_coding_system): Call setup_process_coding_systems.
5909 (Fset_process_filter_multibyte): New function.
5910 (Fprocess_filter_multibyte_p): New function.
5911 (syms_of_process): Intern and staticpro QCfilter_multibyte.
5912 Defsubr Sset_process_filter_multibyte and
5913 Sprocess_filter_multibyte_p.
5914
5915 * process.h (struct Lisp_Process): New member filter_multibyte.
5916
5917 * lisp.h (setup_process_coding_systems): Add prototype.
5918
5919 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
5920 process, update coding systems for the process.
5921
b08d5f59
KH
59222003-02-09 Kenichi Handa <handa@m17n.org>
5923
5924 * fns.c (string_to_multibyte): New function.
5925 (Fstring_to_multibyte): New function.
5926 (syms_of_fns): Defsubr it.
5927
0dfd93c0
AS
59282003-02-08 Andreas Schwab <schwab@suse.de>
5929
5930 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
5931 instead of the substitution.
5932
7b76ca1c
JD
59332003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5934
5935 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
5936
5937 * xmenu.c (menu_position_func): Adjust menu popup position so that
5938 the menu is fully visible.
7b76ca1c 5939
2436a4e4
JD
59402003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5941
5942 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
5943 (x_make_frame_invisible, x_wm_set_icon_position):
5944 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
5945
5946 * xfns.c (x_set_name, x_set_title): Ditto.
5947
37d1e680
RS
59482003-02-04 Richard M. Stallman <rms@gnu.org>
5949
5950 * keyboard.c (echo_now): Update before_command_echo_length.
5951 (Freset_this_command_lengths): Reset this_command_key_count etc.
5952 immediately rather than arranging to do it later.
5953 (before_command_key_count_1, before_command_echo_length_1)
5954 (before_command_restore_flag): Vars deleted.
5955 (add_command_key): Don't handle before_command_restore_flag.
5956 (read_char, record_menu_key): Don't update before_command_key_count or
5957 before_command_echo_length.
5958 (read_char): Don't handle before_command_restore_flag.
5959
5960 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
5961 in direct-output clauses if it wouldn't be called in the ordinary case.
5962
578846a3
KS
59632003-02-04 Kim F. Storm <storm@cua.dk>
5964
5965 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
5966
49853a4d
JD
59672003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5968
5969 * gtkutil.c (remove_from_container): Copying list is not needed.
5970 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
5971 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
5972 on list returned from gtk_container_get_children to avoid memory leak.
5973
8b53dc06
JR
59742003-02-01 Jason Rumney <jasonr@gnu.org>
5975
5d54d177
JR
5976 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
5977 local malloc.
5978 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
5979 definitions in xpm.h.
5980 (init_xpm_functions): New function.
5981 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5982 (init_external_image_libraries): Try to load libXpm.dll.
5983
8b53dc06
JR
5984 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
5985 timestamp.
5986
b222e415
DL
59872003-01-31 Dave Love <fx@gnu.org>
5988
5989 * syntax.c (Fskip_chars_forward)
5990 (open-paren-in-column-0-is-defun-start): Doc fix.
5991
c60ee5e7
JB
59922003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
5993
5994 * fileio.c: Support // at start of name for Cygwin (just added proper
5995 preprocessor tests).
5996
5997 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
5998
5999 * Makefile.in: Use @EXEEXT@ for Cygwin.
6000
6001 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
6002
6003 * s/cygwin.h: Added for Cygwin port.
6004
53b37591
JB
60052003-01-31 Juanma Barranquero <lektu@terra.es>
6006
6007 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
6008 when including gif_lib.h.
fe929957
JB
6009 (init_gif_functions, init_tiff_functions): New functions.
6010 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
6011 Windows. Disable color table lookups. Call library functions
53b37591 6012 through pointers determined at runtime.
fe929957
JB
6013 (init_external_image_libraries): Try to load libungif.dll and
6014 libtiff.dll.
53b37591 6015
45415a8f
KH
60162003-01-31 Kenichi Handa <handa@m17n.org>
6017
6018 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 6019 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 6020
a97e4138
JD
60212003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6022
e52bd6b7 6023 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 6024
6eed9bed
DL
60252003-01-30 Dave Love <fx@gnu.org>
6026
6027 * alloc.c (Vgc_elapsed, gcs_done): New variables.
6028 (Fgarbage_collect): Use them.
6029 (init_alloc, syms_of_alloc): Set them up.
6030
100dcd40
JB
60312003-01-30 Juanma Barranquero <lektu@terra.es>
6032
6033 * w32fns.c (init_external_image_libraries): Add missing operator.
6034
fbd852af
JR
60352003-01-29 Jason Rumney <jasonr@gnu.org>
6036
6037 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
6038 an alternative name for jpeg.dll.
6039
8a2d8020
KH
60402003-01-29 Kenichi Handa <handa@m17n.org>
6041
6042 * xdisp.c (set_cursor_from_row): Pay attention to string display
6043 properties.
6044
058c18c7
AC
60452003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
6046
6047 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
6048 <escape>.
6049 (keycode_to_xkeysym_table): Reformat and add more comments.
6050 (XTread_socket): Drop special case for backspace.
6051
385f11cf
AC
60522003-01-28 Andrew Choi <akochoi@shaw.ca>
6053
6054 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
6055 values in old-style RGB specs.
6056
c922a224
JB
60572003-01-27 Juanma Barranquero <lektu@terra.es>
6058
6059 * w32fns.c (init_external_image_libraries): Try alternate names for the
6060 jpeg dll.
6061
0a1d6de0
JD
60622003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6063
6064 * gtkutil.c (create_dialog, xg_separator_p)
6065 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
6066 before calling strcmp or strlen.
6067
a97e4138 60682003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
6069
6070 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
6071 and handle image load failure.
6072
28908312
JR
60732003-01-26 Jason Rumney <jasonr@gnu.org>
6074
6075 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
6076 New functions.
6077 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
6078 Disable color table lookups. Call jpeg library functions
6079 through pointers determined at runtime.
6080 (init_external_image_libraries): Try to load jpeg.dll.
6081
84e47416
RS
60822003-01-25 Richard M. Stallman <rms@gnu.org>
6083
6084 * lisp.h: Declare format2 instead of format1.
6085
6086 * fileio.c (barf_or_query_if_file_exists):
6087 Call format2 instead of format1.
6088
6089 * editfns.c (format2): New function, replaces format1
6090 but takes exactly two Lisp Objects as format args.
6091
6092 * buffer.c (Fkill_buffer): Call format2 instead of format1.
6093
a97e4138 60942003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
6095
6096 * xterm.h: Change to return value of x_dispatch_event to int.
6097
6098 * xterm.c (x_filter_event): New function.
6099 (event_handler_gdk, XTread_socket): Call x_filter_event.
6100 (x_dispatch_event): Change to return value of finish.
6101 (event_handler_gdk): Use return value from x_dispatch_event.
6102
6103 * xfns.c (x_window): Call create_frame_xic for GTK version to
6104 initialize input methods.
6105
6106 * gtkutil.h: Add (void) prototypes.
6107
6108 * gtkutil.c (create_menus): Remove code that puts the help menu to
6109 the right.
6110
54eefef1
JR
61112003-01-25 Jason Rumney <jasonr@gnu.org>
6112
6113 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
6114 [HAVE_PNG]: Sync with xfns.c version.
6115 (png_load): Adjust colors for Windows. Use Windows
6116 bitmaps. Disable color table lookups.
c262430d
JR
6117 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
6118 (init_png_functions): New function.
6119 (png_read_from_memory, png_load): Call png library functions
6120 through pointers determined at runtime.
6121 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
6122 (init_external_image_libraries): New function.
6123 (init_xfns): Call it.
54eefef1 6124
1a9e275b
AS
61252003-01-24 Andreas Schwab <schwab@suse.de>
6126
6127 * minibuf.c (Fminibuffer_message): Verify type of parameter.
6128
a97e4138 61292003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
6130
6131 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
6132 of static initializer.
6133
422eec7e
DL
61342003-01-24 Dave Love <fx@gnu.org>
6135
6136 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
6137 architectures.
6138
6139 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
6140 Use __alignof__.
6141
2a026b04
KH
61422003-01-24 Kenichi Handa <handa@m17n.org>
6143
6144 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 6145 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
6146 (command_loop_1): Call adjust_point_for_property with proper
6147 second arg.
6148
a18bb28d
JR
61492003-01-22 Jason Rumney <jasonr@gnu.org>
6150
6151 Sync changes with xterm.c and xfns.c.
6152
6153 * w32term.c (x_draw_glyph_string_foreground)
6154 (x_draw_composite_glyph_string_foreground): Implement overstriking.
6155
6156 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
6157 phys_cursor's hpos is overwritten. This is still not completely
6158 correct, as it doesn't really make sense to use hpos at all to
6159 get the cursor glyph (as that is relative to the width of the
6160 characters on the line, which may have changed during the update).
6161
6162 * w32term.c (notice_overwritten_cursor): Handle the special case
6163 of the cursor being in the first blank non-text line at the
6164 end of a window.
6165
6166 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
6167 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
6168 Compute from the x position returned by x_draw_glyphs.
6169
6170 (x_display_and_set_cursor): Don't set phys_cursor_width here,
6171 except for NO_CURSOR and system caret, to make phys_cursor_width
6172 contain what its name suggests.
6173 (notice_overwritten_cursor): Consider the cursor image erased if
6174 the output area intersects the cursor image in y-direction.
6175
6a097c0c
SM
6176 * w32term.c (note_mode_line_or_margin_highlight): Rename from
6177 note_mode_line_highlight and extend.
a18bb28d
JR
6178
6179 * w32term.c (last_window): New variable.
6180 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
6181 (note_mouse_movement): Remove reimplemented code in #if 0.
6182
6183 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
6184 not update_mode_lines, and always set it to 1.
6185
ac6e47ef
JR
61862003-01-21 Jason Rumney <jasonr@gnu.org>
6187
6188 * w32fns.c (IDC_HAND): Define it if system headers don't.
6189
61902003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
6191
6192 * w32term.h (struct w32_output): New member hand_cursor.
6193 (WM_EMACS_SETCURSOR): New message definition.
6194
6195 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
6196 function w32_define_cursor.
6197 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
6198 position, change member name output_data.x to output_data.w32 and
6199 add function w32_define_cursor.
6200 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
6201 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
6202 (w32_initialize_display_info):
6203 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
6204
6205 * w32fns.c (Vx_hand_shape): New variable.
6206 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
6207 WM_EMACS_SETCURSOR.
6208 (x-create-frame): Setup Cursor types.
6209
ceb39a17
JB
62102003-01-21 David Ponce <david@dponce.com>
6211
ac6e47ef
JR
6212 * w32term.c (w32_encode_char): For DIM=1 charset, set
6213 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
6214 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 6215 2002-09-30.)
ac6e47ef
JR
6216 (w32_draw_relief_rect): Declare all args.
6217 (w32_define_cursor): New.
6218
6219 * w32fns.c (w32_load_cursor): New function.
6220 (w32_init_class): Use it.
6221 (x_put_x_image): Declare all args.
6222
46cf0bed
JB
62232003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
6224
6225 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
6226
a97e4138 62272003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
6228
6229 * gtkutil.c: Must include stdio.h before termhooks.h
6230
83fc9c63
DL
62312003-01-21 Dave Love <fx@gnu.org>
6232
6233 * alloc.c (Fgc_status): Print zombie list.
6234 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
6235 Fix assignment of zombies.
6236 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
6237 Don't take car of non-cons.
6238
6239 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6240
6241 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6242
fe04b8c8
JR
62432003-01-20 David Ponce <david@dponce.com>
6244
6245 * w32menu.c (digest_single_submenu): Declare all args.
6246
6247 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
6248 changes in xmenu.c:
6249
6250 (parse_single_submenu): Use individual keymap's prompt
6251 string as pane name, if there is one.
6252 (set_frame_menubar): Save menu_items_n_panes from each call to
6253 parse_single_submenu and use it when calling digest_single_submenu.
6254
539e69a9
ST
62552003-01-20 Steven Tamm <steventamm@mac.com>
6256
6257 * macterm.c (XTread_socket): Checks for valid, visible window
6258 before sending a scroll-wheel event.
6259
675d000f
RS
62602003-01-20 Richard M. Stallman <rms@gnu.org>
6261
6262 * xdisp.c (redisplay_window): If mini window's buffer is not
6263 a minibuffer, then redisplay it like other windows.
6264
a97e4138 62652003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
6266
6267 * gtkutil.c (xg_create_frame_widgets): Check if there is an
6268 external tool bar before setting tool bar height.
6269
048addec
JD
62702003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6271
6272 * xterm.c (handle_one_xevent): Surround popup_activated
6273 with #ifdef:s for non-toolkit version.
6274
6275 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
6276 (gtkutil.o): New file.
6277 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
6278 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
6279
6280 * gtkutil.c: New file for GTK version.
6281
6282 * gtkutil.h: New file for GTK version.
6283
6284 * xterm.h: Add xt_or_gtk_widget.
6285 Include gtk files for USE_GTK.
6286 (struct x_output): Add toolbar_height.
6287 (struct x_output): Add GTK widgets and Gdk size_hints.
6288 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
6289 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
6290 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
6291
6292 * xterm.c: Include gtkutil.h for USE_GTK.
6293 Declare extern void free_frame_menubar for USE_GTK.
6294 (note_mouse_highlight): Check popup_activated for USE_GTK.
6295 (xt_action_hook): Don't compile if USE_GTK.
6296 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
6297 (xg_scroll_callback): New function.
6298 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
6299 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
6300 for USE_GTK.
6301 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
6302 xg_show_scroll_bar for USE_GTK.
6303 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
6304 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
6305 (event_handler_gdk): New function for USE_GTK.
6306 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
6307 (handle_one_xevent): Make sure widget is mapped before
6308 calling x_real_positions for USE_GTK.
6309 (XTread_socket): Add GTK event loop for USE_GTK.
6310 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
6311 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
6312 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
6313 (x_iconify_frame): Add code for USE_GTK.
6314 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
6315 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
6316 is in gtkutil.c.
6317 (x_term_init): Add initialization for GTK.
6318 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
6319
6320 * xmenu.c: Include gtkutil.h for USE_GTK.
6321 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
6322 (single_menu_item, single_menu_item, Fx_popup_dialog):
6323 Check for USE_GTK.
048addec
JD
6324 (popup_widget_loop): New function for USE_GTK.
6325 (x_activate_menubar): Add code for USE_GTK.
6326 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
6327 (menu_highlight_callback, menubar_selection_callback):
6328 Add USE_GTK versions.
048addec
JD
6329 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
6330 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
6331 (free_frame_menubar): Only compile if not USE_GTK. GTK version
6332 is in gtkutil.c.
6333 (popup_selection_callback): New version for USE_GTK.
6334 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 6335 one USE_X_TOOLKIT version.
048addec
JD
6336 (xmenu_show): Call create_and_show_popup_menu.
6337 (dialog_selection_callback): New version for USE_GTK.
6338 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 6339 one USE_X_TOOLKIT version.
048addec
JD
6340 (xdialog_show): Call create_and_show_dialog.
6341
6342 * xfns.c: Include gtkutil for USE_GTK.
6343 (x_window_to_frame, x_any_window_to_frame)
6344 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
6345 (x_top_window_to_frame): Add code for USE_GTK.
6346 (x_set_background_color): Call xg_set_background_color for GTK.
6347 (x_set_menu_bar_lines): Check for USE_GTK.
6348 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
6349 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
6350 (x_window): Call xg_create_frame_widgets for USE_GTK.
6351 (Fx_create_frame): Check for USE_GTK
6352 (Fx_file_dialog): New implementation for USE_GTK.
6353
6354 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
6355 (update_menu_bar): Add check for USE_GTK.
6356 (update_tool_bar): Add check for USE_GTK and external tool bar.
6357 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
6358 (redisplay_internal): Add check for USE_GTK and popup_activated.
6359 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
6360 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
6361 (display_menu_bar): Add check for USE_GTK
6362
6363 * lisp.h: Declare Vx_resource_name extern.
6364
a64387ee 6365 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
048addec
JD
6366 for USE_GTK.
6367 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
6368
6369 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
6370 (FRAME_EXTERNAL_TOOL_BAR): New macro.
6371 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
6372
6373 * fileio.c (Fread_file_name): Add check for USE_GTK.
6374
6bdb309a
SM
6375 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
6376 Add check for USE_GTK.
048addec
JD
6377
6378 * config.in: Added HAVE_GTK
6379
6380 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
6381
63822003-01-18 Stefan Monnier <monnier@cs.yale.edu>
6383
6384 * charset.h (Funibyte_char_to_multibyte): Export.
6385
63862003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6387
6388 * xmenu.c (mouse_position_for_popup): New function.
6389 (Fx_popup_menu): Call mouse_position_for_popup for X and
6390 mouse_position_hook for others.
6391
63922003-01-17 Kim F. Storm <storm@cua.dk>
6393
6394 * editfns.c (Finsert): Mention `string-make-multibyte' and
6395 `string-as-multibyte' in doc string.
6396
63972003-01-17 Kenichi Handa <handa@m17n.org>
6398
6399 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 6400
048addec
JD
6401 * editfns.c (Fformat): Convert an unibyte char argument that is
6402 formatted by "%c" to multibyte if the total result must be a
6403 multibyte string.
cd7df9c0 6404
048addec 64052003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 6406
048addec
JD
6407 * process.c (set-process-filter): Document unibyte/multibyte-ness
6408 of string argument.
56210ecd 6409
048addec 64102003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 6411
048addec 6412 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 6413
048addec
JD
6414 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
6415 (re_search_2): Likewise.
6df8b9fe 6416
048addec 64172003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 6418
048addec
JD
6419 * xdisp.c (message_dolog): Fix bug of the case that *Message*
6420 buffer is unibyte.
292ddc31 6421
048addec 64222003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 6423
048addec 6424 * fns.c (Fsubstring): Clarify doc string.
292ddc31 6425
048addec
JD
6426 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
6427 (Fprevious_char_property_change)
6428 (Fnext_single_char_property_change)
6429 (Fprevious_single_char_property_change, Fnext_property_change)
6430 (Fnext_single_property_change, Fprevious_property_change)
6431 (Fprevious_single_property_change, Fadd_text_properties)
6432 (Fput_text_property, Fset_text_properties)
6433 (Fremove_text_properties, Fremove_list_of_text_properties)
6434 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 6435
048addec 64362003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 6437
048addec
JD
6438 * process.h (struct Lisp_Process): New member plist replaces old
6439 member private_vars. All uses changed.
63e4e4c6 6440
048addec 6441 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 6442 (QCplist): Rename from QCvars. Change all uses.
048addec 6443 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 6444 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 6445 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 6446 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 6447
048addec 64482003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 6449
6bdb309a 6450 * m/delta.h: Remove (obsolete).
e833850f 6451
048addec 64522003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 6453
048addec
JD
6454 * fileio.c (Fdelete_directory, Fdelete_file): Document the
6455 behaviour in front of symlinks.
6456 (Fdelete_file): Raise an error on directories.
817cb127 6457
048addec 64582003-01-13 Dave Love <fx@gnu.org>
817cb127 6459
048addec 6460 * fns.c (Freverse): Use QUIT.
3e8cf2ea 6461
048addec 64622003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 6463
048addec
JD
6464 * minibuf.c (minibuffer_completion_contents):
6465 Error if point is inside prompt.
3e8cf2ea 6466
048addec
JD
6467 * keyboard.c (command_loop_1): Don't redisplay directly
6468 if there's a post-command-hook.
3e8cf2ea 6469
048addec
JD
6470 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
6471 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 6472
048addec 64732003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 6474
048addec 6475 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 6476
048addec
JD
6477 * process.c (QCvars): New variable.
6478 (syms_of_process): Intern and staticpro it.
6479 (Fset_process_contact): Removed function.
6480 (Fprocess_variable, Fset_process_variable): New functions.
6481 (syms_of_process): Defsubr them.
6482 (Fstart_process): Initialize private_vars plist to nil.
6483 (Fmake_network_process): New arg :vars to setup the private
6484 variables for new network process.
6485 (server_accept_connection): Copy server's private variables to
6486 client process.
2c10f029 6487
048addec
JD
6488 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
6489 crashes). Code rewritten and simplified. Now directly aligns the
6490 pointer and recalculates pure_bytes_used, rather than aligning the
6491 size and adjusting the pointer.
b8a76c6c 6492
048addec 64932003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 6494
048addec
JD
6495 * process.c (Fset_process_contact): New function.
6496 (syms_of_process): defsubr it.
6497 (make-network-process): Update doc.
3a8d0899 6498
048addec 64992003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 6500
048addec
JD
6501 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
6502 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 6503
048addec 65042003-01-10 Dave Love <fx@gnu.org>
4abc7470 6505
048addec 6506 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 6507
048addec 65082003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 6509
048addec
JD
6510 * process.c (Fmake_network_process): Convert new port number
6511 to host byte order for `:service t' case. From Mario Lang.
bf338245 6512
048addec 65132003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 6514
048addec
JD
6515 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
6516 instead of XtAppProcessEvent.
bf338245 6517
048addec
JD
6518 * xterm.c (handle_one_xevent): New function.
6519 (x_dispatch_event): New function.
6520 (XTread_socket): Call handle_one_xevent.
bf338245 6521
048addec 6522 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 6523
048addec
JD
6524 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
6525 call XQueryPointer to get coordinates.
6526 (popup_get_selection): Do not set popup_activated_flag to zero,
6527 let popup_deactivate_callback do that. Needed for Motif.
6528 Call x_dispatch_event instead of XtDispatchEvent.
6529 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 6530
048addec 65312003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 6532
6bdb309a 6533 * process.c (server_accept_connection): Fix recording of new
048addec
JD
6534 connection's local address in :local property of contact info.
6535 (Fmake_network_process): Record local network address for new
6536 client processes in :local property of contact info.
6bdb309a 6537 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 6538
048addec 65392003-01-07 Dave Love <fx@gnu.org>
00e3ab56 6540
048addec 6541 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 6542
048addec 65432003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 6544
048addec 6545 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 6546
048addec
JD
6547 * eval.c (Fuser_variable_p): Doc change. For custom variables,
6548 use the same test as for custom-variable-p.
8c6d74c6 6549
048addec 65502003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 6551
048addec
JD
6552 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
6553 Count LAST_LINE_MISFIT in scroll margin for end of window.
6554 Move label too_near_end before setting SCROLL_MARGIN_POS.
6555 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 6556
048addec
JD
6557 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
6558 scroll_conservatively case. If scrolling that much doesn't change
6559 STARTP, move it down one line.
e833850f 6560
048addec
JD
6561 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
6562 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 6563
048addec
JD
6564 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
6565 selected frame.
8c6d74c6 6566
048addec
JD
6567 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
6568 (syms_of_keymap): staticpro them.
6569 (Fapropos_internal): Initialize them and clear them out.
6570 Don't GCPRO them.
8c6d74c6 6571
048addec
JD
6572 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
6573 Doc fixes.
8c6d74c6 6574
048addec
JD
6575 * lisp.h: New misc type Lisp_Save_Value.
6576 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
6577 (XSAVE_VALUE): New macro.
6578 (struct Lisp_Save_Value): New data type.
6579 (union Lisp_Misc): Add u_save_value alternative.
6580 (make_save_value): Declared.
8c6d74c6 6581
048addec 6582 * alloc.c (make_save_value): New function.
8c6d74c6 6583
048addec
JD
6584 * xterm.c (x_catch_errors): Save dpy using make_save_value.
6585 (x_catch_errors_unwind): Call XSync.
8c6d74c6 6586
048addec 65872003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 6588
048addec 6589 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 6590
048addec
JD
6591 * keyboard.c (command_loop_1): Call adjust_point_for_property
6592 in direct action cases for Qforward_char and Qbackward_char.
6593 Set already_adjusted so it won't be done twice.
8c6d74c6 6594
048addec 65952002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
8c6d74c6 6596
048addec
JD
6597 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
6598 type definition of size_t.
8c609cff 6599
048addec 66002003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 6601
048addec
JD
6602 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
6603 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 6604
048addec 66052002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 6606
048addec
JD
6607 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
6608 to default to t.
fa634a5e 6609
048addec 66102002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 6611
048addec 6612 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 6613
048addec 66142002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 6615
048addec
JD
6616 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
6617 allow building in a different directory than source. Uses some
6618 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 6619
048addec 66202002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 6621
048addec
JD
6622 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
6623 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
6624 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
6625 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 6626
048addec 66272002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 6628
048addec
JD
6629 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
6630 <scroll-down-aggressively>: Doc fix.
2155ecf3 6631
048addec
JD
6632 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
6633 string as pane name, if there is one.
6634 (set_frame_menubar): Save menu_items_n_panes from each call to
6635 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 6636
048addec
JD
6637 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
6638 Don't try to make last line fully visible if it is past end of window.
61f1d295 6639
048addec 66402002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 6641
048addec
JD
6642 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
6643 (mac_menu_show): Add support for hierarchical popup menus.
6644 (add_menu_item): Remove indentation support.
6645 (fill_submenu, fill_menu): Create hierarchical menus
6646 instead of using indentation.
0b17a217 6647
048addec 66482002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 6649
048addec
JD
6650 * xdisp.c (try_cursor_movement): Don't call try_window here.
6651 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 6652
048addec 6653 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 6654
048addec 66552002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 6656
048addec
JD
6657 * macterm.c (XTread_socket): Call KeyTranslate for control and
6658 meta to deal correctly shifted non-alpha characters, like C-S-5
6659 being treated like C-%. Does not look for shift key to deal
6660 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 6661
048addec 66622002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 6663
048addec
JD
6664 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
6665 If it is non-nil, run timers. Use an unwind-protect to requeue
6666 the events that were read ahead.
6667 (popup_get_selection_unwind): New subroutine.
6668 (popup_get_selection_queue): File-scope variable now holds that queue.
6669 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
6670 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
6671 Use an unwind-protect to pop down the dialog box.
6672 (xdialog_show_unwind): New subroutine implements that.
f02cac82 6673
048addec
JD
6674 * xdisp.c (row_containing_pos): Change exit test using last_y.
6675 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 6676
048addec
JD
6677 * lread.c (load_error_handler): New function.
6678 (Fload): Handle errors in Fsubstitute_in_file_name.
6679 Don't expect Fsignal to return.
f02cac82 6680
048addec
JD
6681 * eval.c: Errors and throws work right with interrupt blocking.
6682 (struct catchtag): New elt interrupt_input_blocked.
6683 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
6684 (internal_catch, Fcondition_case, internal_condition_case)
6685 (internal_condition_case_1, internal_condition_case_2): Save it.
6686 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 6687
048addec 6688 * editfns.c (Fformat): Add parens.
f02cac82 6689
048addec
JD
6690 * dired.c (file_name_completion): Fix that change.
6691 Delete special quit-handling code; just use QUIT.
f02cac82 6692
048addec 66932002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
f02cac82 6694
048addec
JD
6695 * dired.c (file_name_completion): Close directory on error
6696 just as in directory_files_internal.
1a590729 6697
048addec 66982002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 6699
048addec
JD
6700 * window.c (Fset_window_configuration): Set old_point to correct
6701 value when new_current_buffer == current_buffer.
f02cac82 6702
048addec 67032002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 6704
048addec
JD
6705 Revisited my earlier fix for the following entry in etc/PROBLEMS:
6706 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
6707 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 6708
048addec
JD
6709 These changes were in part based upon suggestions made by Peter
6710 'Luna' Runestig [peter@runestig.com].
9785d95b 6711
048addec
JD
6712 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
6713 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 6714 g_b_init_get_sid_identifier_authority ): Add several static
048addec 6715 global variables.
9785d95b 6716
048addec
JD
6717 * w32.c (globals_of_w32): New function. Used to initialize those
6718 global variables that must always be initialized on startup even
6719 when the global variable initialized is non zero. Its primary
6720 purpose at this time is to set the global variables
6721 g_b_init_is_windows_9x, g_b_init_open_process_token,
6722 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
6723 g_b_init_get_sid_identifier_authority to 0 on startup.
6724 Called from main.
9785d95b 6725
048addec
JD
6726 * w32.c (is_windows_9x): Perform initialization only if
6727 g_b_init_is_windows_9x is equal to 0. On initialization set
6728 g_b_init_is_windows_9x equal to 1.
2308af15 6729
048addec
JD
6730 * w32.c (open_process_token): Perform initialization only if
6731 g_b_init_open_process_token is equal to 0. On initialization set
6732 g_b_init_open_process_token equal to 1.
2308af15 6733
048addec
JD
6734 * w32.c (get_token_information): Perform initialization only if
6735 g_b_init_get_token_information is equal to 0. On initialization
6736 set g_b_init_get_token_information equal to 1.
9785d95b 6737
048addec
JD
6738 * w32.c (lookup_account_sid): Perform initialization only if
6739 g_b_init_lookup_account_sid is equal to 0. On initialization
6740 set g_b_init_lookup_account_sid equal to 1.
9785d95b 6741
048addec
JD
6742 * w32.c (get_sid_identifier_authority): Perform initialization
6743 only if g_b_init_get_sid_identifier_authority is equal to 0.
6744 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 6745
048addec
JD
6746 * w32fns.c (globals_of_w32fns): New function. Used to initialize
6747 those global variables that must always be initialized on startup
6748 even when the global variable initialized is non zero.
6749 Its primary purpose at this time is to initialize the global variable
6750 track_mouse_event_fn.
9785d95b 6751
a64387ee 6752 * w32fns.c (w32_wnd_proc): Remove initialization of
048addec 6753 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 6754
048addec 6755 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 6756
a64387ee 6757 * w32menu.c (globals_of_w32menu): New function. Used to
048addec
JD
6758 initialize those global variables that must always be initialized
6759 on startup even when the global variable initialized is non zero.
6760 Its primary purpose at this time is to initialize the global
6761 variables get_menu_item_info and set_menu_item_info.
9785d95b 6762
048addec
JD
6763 * w32menu.c (initialize_frame_menubar): Remove initialization of
6764 get_menu_item_info and set_menu_item_info.
9785d95b 6765
048addec 6766 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 6767
048addec
JD
6768 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
6769 Declare them.
9785d95b 6770
048addec
JD
6771 * emacs.c (main): Call globals_of_w32 prior to calling
6772 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
6773 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
6774 is defined.
9785d95b 6775
048addec
JD
6776 * w32term.c (x_update_window_begin): Fix Windows API error
6777 detected by BoundsChecker. Test to determine if
6778 w32_system_caret_hwnd is NULL prior to attempting to use
6779 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 6780
048addec
JD
6781 * w32term.c (x_update_window_end): Fix Windows API error
6782 detected by BoundsChecker. Test to determine if
6783 w32_system_caret_hwnd is NULL prior to attempting to use
6784 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 6785
048addec 67862002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 6787
048addec
JD
6788 * coding.c (coding_system_require_warning): New variable.
6789 (syms_of_coding): DEFVAR it.
b6da19ef 6790
048addec 6791 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 6792
048addec
JD
6793 * fileio.c (choose_write_coding_system): Even if
6794 Vcoding_system_for_write is non-nil, if
6795 coding_system_require_warning is nonzero, call
6796 Vselect_safe_coding_system_function.
bfcf6dbe 6797
048addec 67982002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 6799
048addec
JD
6800 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
6801 (lisp): Add font-core.
2c568af5 6802
048addec 68032002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 6804
048addec
JD
6805 * textprop.c (text_read_only): New arg `propval'.
6806 (get_char_property_and_overlay): Remove unused var `next_overlay'.
6807 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 6808
048addec 68092002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 6810
048addec 6811 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 6812
048addec 68132002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 6814
048addec
JD
6815 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
6816 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
6817 Be more careful about when help_events are generated.
96720f09 6818
048addec 68192002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 6820
048addec
JD
6821 * macterm.c (mac_check_for_quit_char): Correctly set the
6822 modifiers of the event to 0.
6823 * mac.c (sys_select): Duplicate rfds before calling select to
6824 ensure that rfds survive the while loop.
e5ae1c49 6825
048addec 68262002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 6827
048addec
JD
6828 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
6829 row_containing_pos returned NULL.
2eb46b2d 6830
048addec 68312002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 6832
6bdb309a 6833 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 6834 non-blocking.
6bdb309a 6835 (sys_select): Fix sys_select to not use a timeout larger than
048addec 6836 the one given.
b11f1d8a 6837
048addec 68382002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 6839
048addec 6840 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 6841
048addec 68422002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 6843
048addec
JD
6844 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
6845 as the last thing.
a4ac5b17 6846
048addec 68472002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 6848
048addec 6849 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 6850
048addec 68512002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 6852
048addec
JD
6853 * editfns.c (Fformat): Handle precision in string conversion
6854 specifiers like libc functions do (ie, print at most that many
6855 characters).
85cce843 6856
048addec 68572002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 6858
048addec
JD
6859 * xdisp.c (row_containing_pos): Check more carefully
6860 whether charpos is really in the row before returning it.
0d4d26a7 6861
048addec 68622002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 6863
048addec 6864 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 6865
048addec
JD
6866 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
6867 each stack frame. This may change as it could be time consuming.
0d4d26a7 6868
048addec
JD
6869 * macterm.c (mac_check_for_quit_char, quit_char_comp)
6870 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 6871 (mac_initialize): Add code to check for pressing of quit_char
048addec 6872 in the OS event queue.
b11f1d8a 6873
048addec
JD
6874 * mac.c (sys_select): Call mac_check_for_quit_char every second
6875 while blocking on select.
0d4d26a7 6876
048addec
JD
6877 * mac.c (sys_read): Use sys_select to test for input first
6878 before calling read, to allow C-g to break.
9252f7bc 6879
048addec 68802002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 6881
048addec 6882 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 6883
048addec 6884 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 6885
048addec 6886 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 6887
048addec
JD
6888 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
6889 autoload.
9252f7bc 6890
048addec 6891 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 6892
048addec 6893 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 6894
048addec 68952002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 6896
048addec 6897 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 6898
048addec 68992002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 6900
048addec 6901 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 6902
048addec 6903 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 6904
048addec 6905 * alloca.c: Don't use #error.
02d588e2 6906
048addec 69072002-12-03 Dave Love <fx@gnu.org>
02d588e2 6908
048addec
JD
6909 * buffer.c (Qucs_set_table_for_input): New.
6910 (Fget_buffer_create): Use it.
6911 (Qset_buffer_major_mode_hook): Deleted.
6912 (Fset_buffer_major_mode): Revert previous change.
6913 (init_buffer_once): Intern ucs-set-table-for-input.
6914 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
6915 Add &Qucs_set_table_for_input.
451e2697 6916
048addec 69172002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 6918
048addec
JD
6919 * callint.c (Fcall_interactively): Use next_event only if less
6920 than key_count.
72742a99 6921
048addec 69222002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 6923
048addec
JD
6924 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
6925 names to 255 characters.
72742a99 6926
048addec
JD
6927 * macterm.c (XTread_socket): If all frames have been collapsed,
6928 expand the first one before handling drag-and-drop events.
72742a99 6929
048addec
JD
6930 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
6931 which is detected by autoconf.
40e6ff95 6932
048addec 69332002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 6934
048addec
JD
6935 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
6936 offset in two hints table to allow prebinding to be redone and
6937 allow the executable to be stripped.
c02138c6 6938
048addec 69392002-11-29 Dave Love <fx@gnu.org>
c02138c6 6940
048addec
JD
6941 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
6942 already provided.
0e47bbf7 6943
048addec 69442002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 6945
048addec
JD
6946 * xdisp.c (start_display): Check more intelligently for
6947 whether the line is continued.
6948 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 6949
048addec 69502002-11-28 Dave Love <fx@gnu.org>
44129dcb 6951
048addec
JD
6952 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
6953 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 6954
048addec 69552002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 6956
048addec
JD
6957 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
6958 more descriptive error output from lread.c:Fload upon most require
6959 cycles during boostrapping.
1637fd2c 6960
048addec 69612002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 6962
048addec
JD
6963 * fileio.c (Finsert_file_contents): Give a more appropriate error
6964 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 6965
048addec
JD
6966 * dired.c (Ffile_attributes): Don't return negative file sizes for
6967 files bigger than 2Gb when off_t is 32 bit.
540c2788 6968
048addec 69692002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 6970
048addec 6971 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 6972
048addec
JD
6973 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
6974 Test GETPGRP_VOID instead.
6975 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 6976
048addec
JD
6977 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
6978 Don't define.
6979 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 6980
048addec 6981 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 6982
048addec 69832002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 6984
048addec
JD
6985 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
6986 supported.
4042a81a 6987
048addec 69882002-11-25 Dave Love <fx@gnu.org>
4042a81a 6989
048addec 6990 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 6991
048addec 6992 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 6993
048addec 69942002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 6995
048addec 6996 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 6997
048addec 69982002-11-24 Steven Tamm <steventamm@mac.com>
82122254 6999
048addec
JD
7000 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
7001 determine the size of pointers alloced in unexed space instead
7002 of using possibly invalid emacs_zone pointers. This fixes the
7003 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 7004
048addec 70052002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 7006
048addec 7007 * search.c (Fstring_match): Doc fix.
c1ee53bc 7008
048addec
JD
7009 * callint.c (Fcall_interactively): If a command fails because
7010 `*' detects a read-only buffer, but RECORD_FLAG is set,
7011 record it anyway if the args don't actually do tty input.
5598c32e 7012
048addec 70132002-11-22 Dave Love <fx@gnu.org>
5598c32e 7014
048addec 7015 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 7016
048addec
JD
7017 * keyboard.c (interrupt_signal): Provide forward declaration.
7018 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 7019
048addec 7020 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 7021
048addec 70222002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 7023
048addec
JD
7024 * eval.c (interactive_p): Skip any number of bytecode
7025 and special form frames, in any order.
516eea8e 7026
048addec 70272002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 7028
048addec
JD
7029 * w32fns.c (convert_mono_to_color_image): New function.
7030 (xbm_load, xbm_load_image): Use it when foreground or background
7031 is explicitly set.
04dbfa08 7032
048addec 70332002-11-19 Dave Love <fx@gnu.org>
04dbfa08 7034
048addec 7035 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 7036
048addec 70372002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 7038
048addec
JD
7039 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
7040 (XPutPixel): Swap blue and red.
7041 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
7042 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
7043 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
7044 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 7045
048addec 70462002-11-18 Dave Love <fx@gnu.org>
d824beee 7047
048addec 7048 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 7049
048addec 7050 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 7051
048addec 7052 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 7053
048addec
JD
7054 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
7055 malloc, realloc, calloc.
d824beee 7056
048addec
JD
7057 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
7058 (bcmp): Don't define.
d824beee 7059
048addec 7060 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 7061
048addec 7062 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 7063
048addec 7064 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 7065
048addec 7066 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 7067
048addec
JD
7068 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
7069 Don't include alloca.h.
d824beee 7070
048addec 7071 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 7072
048addec 7073 * regex.c (_GNU_SOURCE): Don't define.
1998560a 7074
048addec 7075 * process.c (_GNU_SOURCE): Don't define.
1998560a 7076
048addec 7077 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 7078
048addec 70792002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 7080
048addec 7081 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 7082
048addec 70832002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 7084
048addec
JD
7085 * dispextern.h (struct face): Add `overstrike' field.
7086 * xterm.c (x_draw_glyph_string_foreground)
7087 (x_draw_composite_glyph_string_foreground): Implement overstriking.
7088 * xfaces.c (load_face_font): Set `face->overstrike' based on
7089 result from choose_face_font.
7090 (best_matching_font, choose_face_font): Add `needs_overstrike'
7091 argument, and use it to return whether overstriking is desirable
7092 for this face/font combo.
7093 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 7094
048addec 70952002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 7096
048addec
JD
7097 This change is my fix for the following entry in etc/PROBLEMS:
7098 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
7099 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 7100
048addec
JD
7101 * w32.c: Added wrapper functions around the win32 API functions
7102 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
7103 GetSidIdentifierAuthority. These wrapper functions serve two
7104 purposes:
7105 1. They ensure that the wrapped function can never be called
7106 when Emacs is running on an operating system on which they are
7107 not supported (Microsoft Windows 95 / 98 / ME).
7108 2. They call the wrapped functions via function pointers rather
7109 than calling them directly. This avoids taking advantage of the
7110 undocumented fact that although these functions are not supported
7111 in the 9x branch of Microsoft Windows, the functions do exist in
7112 the version of advapi32.dll that is found in the 9x branch of
7113 Microsoft Windows.
f60ae425 7114
6bdb309a 7115 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
7116 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
7117 and GetSidIdentifierAuthority with calls to the newly added
7118 wrapper functions.
f60ae425 7119
048addec
JD
7120 * w32.h: Added extern declarations for the following functions:
7121 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
7122 syms_of_w32menu, and void syms_of_fontset.
f60ae425 7123
6bdb309a 7124 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
7125 function pointer track_mouse_event_fn in the handler for the
7126 WM_SETFOCUS message.
3582b6a3 7127
6bdb309a 7128 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
7129 reinitialize the function pointers set_menu_item_info and
7130 get_menu_item_info.
f60ae425 7131
048addec 71322002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 7133
048addec
JD
7134 * sound.c: Added a partial implementation of play-sound-internal
7135 for Microsoft Windows. Added various #ifdef / #else / #endif
7136 code blocks to separate the code that will compile under
7137 Microsoft Windows from the code that is specific to Gnu/Linux.
7138 Moved several blocks of code around to make this separation of code
7139 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 7140
048addec 7141 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 7142
048addec
JD
7143 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
7144 added support for play-sound-internal under Windows would be
7145 included in the build of Emacs.
517f42a0 7146
048addec 71472002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 7148
048addec 7149 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 7150
048addec 7151 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 7152
048addec 71532002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 7154
048addec
JD
7155 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
7156 (adjust_point_for_property): Move out of display and invisible even if
7157 we were already inside before (in case a property was added while
7158 we weren't looking). Be more careful when handling invisible props.
7159 Skip invisible text as if it really wasn't there at all.
aab83f91 7160
048addec 71612002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 7162
048addec
JD
7163 * w32term.c (x_draw_image_foreground)
7164 (w32_draw_image_foreground_1): Use standard copy and invert
7165 operations to draw images.
aab83f91 7166
048addec
JD
7167 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
7168 depth of 1.
7169 (xbm_read_bitmap_data): Invert bits as xbm is read in.
7170 (XPutPixel): Don't invert bits here.
a4478a76 7171
048addec 71722002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 7173
048addec
JD
7174 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
7175 (w32_draw_image_foreground_1): Handle image masks.
7176 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 7177
048addec
JD
7178 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
7179 (x_from_xcolors): Adjust RGB values for W32.
7180 (image_background, image_background_transparent)
7181 (postprocess_image, x_to_xcolors, x_disable_image)
7182 (x_build_heuristic_mask): Adapt for W32 and enable.
7183 (x_create_x_image_and_pixmap): Mark images with palettes as such.
7184 (xbm_load): Remove unused variable.
03670a65 7185
048addec 71862002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 7187
048addec 7188 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 7189
048addec 71902002-11-14 Dave Love <fx@gnu.org>
59daa29a 7191
048addec 7192 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 7193
048addec
JD
7194 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
7195 * xmenu.c (unuse_menu_items, digest_single_submenu):
7196 * xfns.c (x_put_x_image):
7197 * xdisp.c (message2_nolog, set_message):
7198 * undo.c (record_point):
7199 * terminfo.c (tparam):
7200 * syntax.c (scan_sexps_forward):
7201 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
7202 * composite.c (update_compositions):
7203 * cm.c (calccost, cmgoto):
7204 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 7205
048addec 7206 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 7207
048addec
JD
7208 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
7209 Don't declare.
59daa29a 7210
048addec 7211 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 7212
048addec
JD
7213 * fns.c (Fcopy_sequence): Doc fix.
7214 (Fmap_char_table): Cast `call2'.
3947677c 7215
048addec
JD
72162002-11-14 Francesco Potorti` <pot@gnu.org>
7217
7218 * s/sol2-8.h: New file.
7219
72202002-11-14 Kim F. Storm <storm@cua.dk>
7221
7222 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
7223 dependency on `risky-local-variable' and the :propertize form.
7224
72252002-11-12 Stefan Monnier <monnier@cs.yale.edu>
7226
7227 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
7228
7229 * syntax.c (scan_sexps_forward): Undo last patch.
7230 Use a more obvious fix: check eob before updating the syntax table.
7231
72322002-11-09 Stefan Monnier <monnier@cs.yale.edu>
7233
7234 * syntax.c (scan_sexps_forward): Update syntax table before reading
7235 a char rather than after so we don't update the table past eob.
7236
72372002-11-09 Dave Love <fx@gnu.org>
7238
7239 * buffer.c (Fset_buffer_major_mode): Fix last change.
7240
7241 * regex.c (regexec): Fix pmatch declaration.
7242
7243 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
7244
7245 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
7246 to self-inserting characters.
7247 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
7248
7249 * coding.c (Vtranslation_table_for_input): New.
7250 (syms_of_coding): DEFVAR it.
7251
72522002-11-08 Juanma Barranquero <lektu@terra.es>
7253
7254 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
7255 window.
7256
72572002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7258
6bdb309a 7259 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
7260 cp, and i.
7261
72622002-11-06 Dave Love <fx@gnu.org>
7263
7264 * buffer.c (Qset_buffer_major_mode_hook): New.
7265 (Fset_buffer_major_mode): Use it.
7266
72672002-11-06 Richard M. Stallman <rms@gnu.org>
7268
7269 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
7270 and stop_polling.
7271
7272 * process.c (wait_reading_process_input):
7273 Test POLLING_PROBLEM_IN_SELECT, not hpux.
7274 Avoid initialization for auto Lisp_Object var.
7275
7276 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
7277
7278 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
7279
72802002-11-05 Richard M. Stallman <rms@gnu.org>
7281
7282 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
7283
7284 * callint.c (Fcall_interactively): New local filter_specs.
7285 (Fcall_interactively): Check for progn as well as let.
7286 Add a gcpro.
7287 (Qprogn): New variable.
7288 (syms_of_callint): Staticpro and init Qprogn.
7289
72902002-11-04 John Paul Wallington <jpw@shootybangbang.com>
7291
7292 * lread.c (Feval_buffer): Doc fix.
7293
72942002-11-04 Dave Love <fx@gnu.org>
7295
7296 * keyboard.c (read_char): Always translate iff
7297 Vkeyboard_translate_table is a char table and c is valid.
7298
7299 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
7300 and fix C types.
7301
73022002-11-03 Stefan Monnier <monnier@cs.yale.edu>
7303
7304 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
7305
7306 * editfns.c (get_pos_property): Don't hardcode Qfield.
7307
7308 * keyboard.c (adjust_point_for_property): Handle `display' prop on
7309 overlays. Also handle `invisible' prop.
7310
73112002-11-02 Stefan Monnier <monnier@cs.yale.edu>
7312
7313 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
7314 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
7315
73162002-11-01 Andreas Schwab <schwab@suse.de>
7317
7318 * editfns.c (Fmessage): Revert last change to properly handle %%.
7319
73202002-11-01 Stefan Monnier <monnier@cs.yale.edu>
7321
7322 * xmenu.c (unuse_menu_items): New fun.
7323 (menu_items_inuse): New var.
7324 (syms_of_xmenu): Initialize it.
7325 (init_menu_items): Use it to detect re-entrance.
7326 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
7327 (Fx_popup_menu): Remove spurious XSETFRAME.
7328
7329 * editfns.c (find_field): Make an exception for nil fields.
7330
73312002-11-01 Dave Love <fx@gnu.org>
7332
7333 * m/gec63.h: Deleted.
7334
73352002-10-31 Dave Love <fx@gnu.org>
7336
7337 * xterm.c (XTread_socket): Fix last change.
7338 (xaw_scroll_callback): Cast call_data to long to avoid warning.
7339
73402002-10-31 Stefan Monnier <monnier@cs.yale.edu>
7341
7342 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
7343
73442002-10-30 Stefan Monnier <monnier@cs.yale.edu>
7345
7346 * editfns.c (overlays_around, get_pos_property): New funs.
7347 (find_field): Use them.
7348 Also be careful not to modify POS before its last use.
7349 (Fmessage): Don't Fformat if there's nothing to format.
7350
73512002-10-30 Dave Love <fx@gnu.org>
7352
7353 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
7354 [HAVE_PTY_H]; Include pty.h.
7355
7356 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
7357
7358 * xterm.c (Qeql): Declare.
7359 (Vx_keysym_table): New.
7360 (syms_of_xterm): Initialize it.
7361 (XTread_socket): Use it. Deal with ASCII keysyms.
7362 (XSetIMValues) [HAVE_X11R6]: Prototype.
7363
7364 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
7365 (lispy_kana_keys): Comment out.
7366 (make_lispy_event) [XK_kana_A]: Comment out.
7367 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
7368 Fix sprintf call.
7369
7370 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
7371 regexp.h change).
7372 (TERMINFO, LIBS_TERMCAP): Define.
7373
7374 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
7375 (bcmp): Define conditional on HAVE_BCMP.
7376 (NO_SIOCTL_H): Don't define.
7377 (TIOCSIGSEND): Don't make conditional on IRIX6.
7378
7379 * s/sol2-5.h: Don't include strings.h.
7380 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
7381
7382 * s/irix6-0.h (IRIX6): Don't define.
7383 (bcopy, bcmp, bzero): Don't undef.
7384
7385 * s/irix6-5.h: Don't include strings.h.
7386 (IRIX6): Don't define.
7387 (bcopy, bcmp, bzero): Don't undef.
7388
7389 * syntax.c (Fforward_comment): Doc fix.
7390
73912002-10-29 Kim F. Storm <storm@cua.dk>
7392
7393 * process.c (Fsignal_process): Allow PROCESS to be specified by
7394 name in addition to pid (as integer or string).
7395
73962002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
7397
7398 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
7399 environments.
7400
74012002-10-27 Kim F. Storm <storm@cua.dk>
7402
7403 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
7404
7405 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
7406
7407 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
7408
7409 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
7410
74112002-10-26 Richard M. Stallman <rms@gnu.org>
7412
7413 * editfns.c (Fformat): Detect invalid format letters for floats.
7414
74152002-10-25 Kenichi Handa <handa@m17n.org>
7416
7417 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
7418 (x_set_title): Likewise.
7419
74202002-10-25 Juanma Barranquero <lektu@terra.es>
7421
7422 * macgui.h:
7423 * w32gui.h: Remove definition of XColor.
7424
7425 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
7426
74272002-10-24 Kim F. Storm <storm@cua.dk>
7428
7429 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
7430 Callers changed (supply dummy arg).
7431
7432 * lisp.h (get_window_cursor_type): Update prototype.
7433
7434 * w32term.c (x_display_and_set_cursor): Get active_cursor from
7435 get_window_cursor_type to track system caret.
7436
74372002-10-24 Kim F. Storm <storm@cua.dk>
7438
7439 * process.c (Fformat_network_address): New function.
7440 (syms_of_process): Defsubr it.
7441 (list_processes_1): Use it to format :local/:remote address if
7442 service/host is not set; before emacs would crash in that case.
7443 (Fmake_network_process): Don't use Ffind_operation_coding_system
7444 to setup coding system if host or service is not set.
7445
74462002-10-23 Juanma Barranquero <lektu@terra.es>
7447
7448 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
7449
7450 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
7451 COLORREF.
7452
7453 * macgui.h:
7454 * w32gui.h: Add definition of XColor.
7455
7456 * macfns.c:
7457 * w32fns.c:
7458 * xfaces.c: Remove definition of XColor.
7459
74602002-10-22 Stefan Monnier <monnier@cs.yale.edu>
7461
7462 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
7463
7464 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
7465 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
7466 window if it is dedicated.
7467 (Fshrink_window): Add preserve_before as was done for enlarge_window.
7468 (Vspecial_display_function): Update docstring.
7469
7470 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
7471 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
7472 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
7473
74742002-10-21 Stefan Monnier <monnier@cs.yale.edu>
7475
7476 * casefiddle.c (casify_region): Don't treat a prefix char as part
7477 of a word when at the beginning.
7478
74792002-10-17 Juanma Barranquero <lektu@terra.es>
7480
7481 * lread.c (syms_of_lread): Fix typos.
7482
74832002-10-17 Dave Love <fx@gnu.org>
7484
7485 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
7486
74872002-10-16 Richard M. Stallman <rms@gnu.org>
7488
7489 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
7490
74912002-10-14 Juanma Barranquero <lektu@terra.es>
7492
7493 * w16select.c (syms_of_win16select): Fix docstring for
7494 `selection-coding-system'.
7495
7496 * w32select.c (syms_of_w32select): Likewise.
7497
74982002-10-14 Stefan Monnier <monnier@cs.yale.edu>
7499
7500 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
7501 a backslash-quoted char.
7502 (scan_lists, scan_sexps_forward): Pacify the compiler.
7503
75042002-10-13 Richard M. Stallman <rms@gnu.org>
7505
7506 * window.c (window_scroll): Set immediate_quit.
7507
7508 * print.c (print): When backquote form is the car of a list,
7509 output in old style. Use old_backquote_output to output all
7510 comma forms inside it in old style too.
7511
7512 * buffer.h (struct buffer): Move `undo_list' down below `name'.
7513
75142002-10-11 Markus Rost <rost@math.ohio-state.edu>
7515
7516 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
7517 batch mode).
7518
7519 * lread.c (Fload): Doc fix (load-suffixes).
7520
75212002-10-10 Steven Tamm <steventamm@mac.com>
7522
7523 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
7524 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
7525 Also switch the default to Qnil from Qt.
7526
75272002-10-08 Kenichi Handa <handa@m17n.org>
7528
7529 * coding.c (code_convert_region): When we need more GAP for
7530 conversion, pay attention to the case that coding->produced is not
7531 greater than coding->consumed.
7532
75332002-10-07 Richard M. Stallman <rms@gnu.org>
7534
7535 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
7536
75372002-10-06 Andrew Choi <akochoi@shaw.ca>
7538
7539 * macmenu.c (mac_menu_show): Add j to count menu items; match
7540 menu_item_selection to it to find selected item.
7541
75422002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7543
7544 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
7545 cases. The correct fix is to pass ReparentNotify to Xt.
7546 The shell widget interprets ConfigureNotify differently depending
7547 on if it has been reparented or not.
7548
75492002-10-05 Markus Rost <rost@math.ohio-state.edu>
7550
7551 * editfns.c (Fformat_time_string): Doc fix.
7552
75532002-10-05 John Paul Wallington <jpw@shootybangbang.com>
7554
7555 * fns.c (Flength): Doc fix.
7556
75572002-10-04 Stefan Monnier <monnier@cs.yale.edu>
7558
7559 * keyboard.c (keyremap): New struct.
7560 (read_key_sequence): Use it: globally replace keytran_foo with
7561 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
7562 keytran_next and fkey_next to just `next'.
7563
75642002-10-04 Steven Tamm <steventamm@mac.com>
7565
7566 * macterm.c (keycode_to_xkeysym_table): Change return to be
7567 treated like an X keysym.
7568
75692002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7570
7571 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
7572 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
7573 This is to also handle x/y changes that occur because of a resize.
7574
75752002-10-02 John Paul Wallington <jpw@shootybangbang.com>
7576
7577 * frame.c (Vdelete_frame_functions): New variable.
7578 (syms_of_frame): Initialize and defvar it.
7579 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
7580 it when frame's `tooltip' parameter is non-nil.
7581
7582 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
7583
7584 * w32fns.c (x_create_tip_frame): Likewise.
7585
7586 * macfns.c (x_create_tip_frame): Likewise.
7587
75882002-09-30 Kenichi Handa <handa@m17n.org>
7589
7590 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
7591 -1 before calling ccl_driver.
7592
7593 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
7594 Only when it is non-nil, handle composition sequence.
7595 (setup_coding_system) <0>: Don't force composition handling.
7596
7597 * Makefile.in (lisp, shortlisp): Add utf-16.elc
7598
75992002-09-29 Richard M. Stallman <rms@gnu.org>
7600
7601 * search.c (Freplace_match): Adjust match data for the substitution
7602 just made in the buffer.
7603
7604 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
7605 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
7606
76072002-09-27 Richard M. Stallman <rms@gnu.org>
7608
7609 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
7610 (read_char): Use them. Do all exits thru the end of the function.
7611
76122002-09-27 Kenichi Handa <handa@etl.go.jp>
7613
7614 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
7615 is nil.
7616
76172002-09-26 Richard M. Stallman <rms@gnu.org>
7618
7619 * regex.h (__restrict_arr): Don't define if already defined.
7620
7621 * coding.c (run_pre_post_conversion_on_str):
7622 Save and restore Vdeactivate_mark.
7623
76242002-09-26 John Paul Wallington <jpw@shootybangbang.com>
7625
7626 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
7627
76282002-09-26 Kenichi Handa <handa@etl.go.jp>
7629
7630 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
7631 nonzero, try face's family at first. Otherwise try FAMILY at first.
7632 (choose_face_font): If C is a single byte char or latin-1, call
7633 try_font_list with PREFER_FACE_FAMILY 1.
7634
76352002-09-21 Richard M. Stallman <rms@gnu.org>
7636
7637 * window.c (select_window_1): Don't select frame.
7638 Set frame's selected window only when frame itself is selected.
7639 (Fselect_window): Doc fix.
7640
76412002-09-18 Kim F. Storm <storm@cua.dk>
7642
7643 * process.c (make-network-process): Doc fix (there is no
7644 network-server-log-function hook).
7645
76462002-09-18 Richard M. Stallman <rms@gnu.org>
7647
7648 * print.c (print): Clear out the unused parts of Vprint_number_table.
7649 (syms_of_print): Doc fix for `print-number-table'.
7650
7651 * unexelf.c (unexec): Undo previous change.
7652
76532002-09-17 Andreas Schwab <schwab@suse.de>
7654
7655 * m/alpha.h [LINUX]: Don't define DATA_START.
7656
76572002-09-16 Dave Love <fx@gnu.org>
7658
7659 * unexelf.c (unexec): Deal with .got, reinstating change from
7660 25-08-1999.
7661
76622002-09-13 Richard M. Stallman <rms@gnu.org>
7663
7664 * s/sol2-6.h (UNEXEC): Comment out definition.
7665
7666 * unexsol.c (unexec): Don't downcase first letter of error msg.
7667
7668 * xfaces.c (Fcolor_supported_p): Just one arg is required.
7669
76702002-09-12 Markus Rost <rost@math.ohio-state.edu>
7671
7672 * unexsol.c: Include buffer.h, charset.h, coding.h.
7673
76742002-09-11 Richard M. Stallman <rms@gnu.org>
7675
7676 * unexsol.c: Don't use report_file_error; do it by hand
7677 using dlerror.
7678
7679 * process.c (wait_reading_process_input, both versions):
7680 Before calling turn_on_atimers, call stop_polling.
7681
7682 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
7683
7684 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
7685 we go to too_near_end, call clear_glyph_matrix.
7686 (redisplay_window): After make_cursor_line_fully_visible,
7687 call clear_glyph_matrix and bypass `goto done'.
7688
7689 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
7690 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
7691
76922002-09-10 Richard M. Stallman <rms@gnu.org>
7693
7694 * fileio.c (Fdo_auto_save): Catch error making directory.
7695 Only call push_message if we need to.
7696 At the same time, make an unwind-protect to pop it.
7697 Rename local message_p to old_message_p.
7698 (do_auto_save_make_dir, do_auto_save_eh): New functions.
7699 (do_auto_save_unwind): Don't call pop_message.
7700
7701 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
7702
7703 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
7704
7705 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
7706
7707 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
7708
77092002-09-10 Stefan Monnier <monnier@cs.yale.edu>
7710
7711 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
7712 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
7713 (re_match_2_internal): Be more careful with infinite loops.
7714
77152002-09-10 Kim F. Storm <storm@cua.dk>
7716
7717 * macros.c (end_kbd_macro): New function.
7718 (Fend_kbd_macro): Use it.
7719
7720 * macros.h (end_kbd_macro): Declare extern.
7721
7722 * keyboard.c (Fdiscard_input): If defining keyboard macro,
7723 end and save it instead of discarding it.
7724
77252002-09-09 Markus Rost <rost@math.ohio-state.edu>
7726
7727 * s/sol2-6.h: Fix typo. Add comment.
7728
77292002-09-09 Richard M. Stallman <rms@gnu.org>
7730
7731 * regex.c (regnum_t): Use signed int, not unsigned int.
7732
7733 * s/sol2-6.h: New file.
7734
7735 * s/sol2-5.h (UNEXEC): Definition deleted.
7736
77372002-09-08 Kim F. Storm <storm@cua.dk>
7738
7739 * macros.c (executing_macro_index): Change type to EMACS_INT.
7740 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
7741
7742 * macros.h (executing_macro_index): Change type to EMACS_INT.
7743
77442002-09-06 Richard M. Stallman <rms@gnu.org>
7745
7746 * casetab.c (set_case_table): Make canon table point to eqv table.
7747
77482002-09-06 Juanma Barranquero <lektu@terra.es>
7749
7750 * coding.c (syms_of_coding): Fix spacing.
7751
7752 * composite.c (Fcompose_region_internal)
7753 (Fcompose_string_internal): Likewise.
7754
7755 * data.c (Flsh): Likewise.
7756
7757 * fontset.c (Fset_fontset_font): Likewise.
7758
7759 * macfns.c (Fx_server_max_request_size): Likewise.
7760
7761 * w16select.c (syms_of_win16select): Likewise.
7762
7763 * w32select.c (syms_of_w32select): Likewise.
7764
7765 * xselect.c (syms_of_xselect): Likewise.
7766
77672002-09-05 Richard M. Stallman <rms@gnu.org>
7768
7769 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
7770 call EXTEND_RANGE_TABLE and return a proper value.
7771 (set_image_of_range): Don't call set_image_of_range_1
7772 if no TRANSLATE or if range includes all of Latin-1.
7773 Only call it for the Latin-1 part of the range.
7774 For other cases, make two separate ranges,
7775 one for the original specified characters and one for
7776 their case-conversions.
7777
77782002-09-04 Richard M. Stallman <rms@gnu.org>
7779
7780 * s/sol2-5.h (UNEXEC): Use unexsol.o.
7781
7782 * window.c (displayed_window_lines): Correct for one-off bug
7783 in HEIGHT on non-window displays.
7784
7785 * regex.c (set_image_of_range_1): New function.
7786 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
7787 Return a value to indicate running out of memory.
7788 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
7789 (extend_range_table_work_area): New subroutine.
7790 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
7791 Different calling conventions, and used from set_image_of_range{,_1}.
7792 (IMMEDIATE_QUIT_CHECK): Definitions moved.
7793
77942002-09-04 Juanma Barranquero <lektu@terra.es>
7795
7796 * makefile.w32-in: All dependencies updated.
7797
77982002-09-01 Richard M. Stallman <rms@gnu.org>
7799
7800 * unexsol.c: New file.
7801
7802 * xfns.c (Qbox): Declare external, don't define.
7803
7804 * xdisp.c (redisplay_window) <force-start case>:
7805 If point is on semi-visible last line, reposition
7806 it at previous line.
7807
7808 * alloc.c (display_malloc_warning): Use display-warning.
7809 (malloc_warning_1): Function deleted.
7810
7811 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
7812
7813 * lread.c (read1): Handle #! by skipping the line.
7814
78152002-08-31 Richard M. Stallman <rms@gnu.org>
7816
7817 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
7818 Don't include LDFLAGS.
7819 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
7820
78212002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
7822
7823 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
7824 member of x_display_info unless we compile for some window system.
7825
78262002-08-31 Kim F. Storm <storm@cua.dk>
7827
7828 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
7829 (get_window_cursor_type): Don't use them.
7830 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
7831
78322002-08-30 Kenichi Handa <handa@etl.go.jp>
7833
7834 * xdisp.c (get_next_display_element): Fix previous change.
7835
78362002-08-30 Andrew Choi <akochoi@shaw.ca>
7837
7838 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
7839 (expose_window): Use it to fix the display of overlapping
7840 rows (merge code from xterm.c).
7841
7842 * macfns.c (Qbox): Add extern declaration.
7843
78442002-08-30 Juanma Barranquero <lektu@terra.es>
7845
7846 * w32fns.c (Qbox): Make extern.
7847 (syms_of_w32fns): Remove initialization of Qbox.
7848
78492002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
7850
7851 * xfns.c (Fx_open_connection): Fix error message.
7852
78532002-08-30 Kim F. Storm <storm@cua.dk>
7854
7855 The following changes consolidates the handling of the cursor
7856 type in xdisp.c, moving duplicate code and functionality from
7857 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
7858
7859 * frame.h (enum text_cursor_kinds): Consolidated here.
7860 Added DEFAULT_CURSOR value.
7861 (struct frame) <desired_cursor, cursor_width>
7862 <blink_off_cursor, blink_off_cursor_width>: New fields.
7863 Consolidated from output_x, output_w32 and output_mac structs.
7864 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
7865 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
7866
7867 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
7868 Variables consolidated here.
7869 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
7870 (Vcursor_in_non_selected_windows): Renamed from
7871 cursor_in_non_selected_windows and changed to Lisp_Object.
7872 (syms_of_xdisp): Define and staticpro new and moved variables.
7873 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
7874 consolidated here. Recognize Qhollow setting.
7875 (set_frame_cursor_types): New function to set frame cursor types
7876 based on the frame parameters.
7877 (get_window_cursor_type): New function to calculate new cursor
7878 type and width for the specified window. Based on duplicated
7879 code consolidated here.
7880 Enhancements: cursor-in-non-selected-windows may be a cursor type,
7881 check buffer-local alternate-cursor-type and blink-cursor-alist
7882 before using built-in blink off methods.
7883
7884 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
7885
7886 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
7887 (get_specified_cursor_type, get_window_cursor_type)
7888 (set_frame_cursor_types): Added prototypes.
7889
7890 * macfns.c (x_specified_cursor_type): Removed.
7891 (x_set_cursor_type): Use set_frame_cursor_types.
7892 (Qbar, Qbox): Removed.
7893 (syms_of_macfns): Don't intern or staticpro them.
7894
7895 * macterm.c (x_specified_cursor_type): Remove prototype.
7896 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
7897 (x_display_and_set_cursor): Use get_window_cursor_type.
7898 Remove unused local variables cursor_non_selected, active_cursor.
7899 Redraw cursor if hbar cursor width changes.
7900 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
7901
7902 * macterm.h (enum text_cursor_kinds): Removed.
7903 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
7904 <blink_off_cursor, blink_off_cursor_width>: Members removed.
7905 (FRAME_DESIRED_CURSOR): Macro removed.
7906
7907 * w32fns.c (Vblink_cursor_alist): Removed.
7908 (Qbar, Qhbar, Qbox, Qhollow): Removed.
7909 (syms_of_w32fns): Don't intern, staticpro, or define them.
7910 (x_specified_cursor_type): Removed.
7911 (x_set_cursor_type): Use set_frame_cursor_types.
7912
7913 * w32term.c (x_specified_cursor_type): Remove prototype.
7914 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
7915 (x_display_and_set_cursor): Use get_window_cursor_type.
7916 Remove unused local variables cursor_off_state.
7917 Redraw cursor if hbar cursor width changes.
7918 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
7919
7920 * w32term.h (enum text_cursor_kinds): Removed.
7921 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
7922 <blink_off_cursor, blink_off_cursor_width>: Members removed.
7923 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
7924 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
7925 (struct w32_display_info) <x_highlight_frame>: Renamed member from
7926 w32_highlight_frame.
7927
7928 * xfns.c (Vblink_cursor_alist): Removed.
7929 (Qbar, Qhbar, Qbox, Qhollow): Removed.
7930 (syms_of_xfns): Don't intern, staticpro, or define them.
7931 (x_specified_cursor_type): Removed.
7932 (x_set_cursor_type): Use set_frame_cursor_types.
7933
7934 * xterm.c (x_specified_cursor_type): Remove prototype.
7935 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
7936 (x_display_and_set_cursor): Use get_window_cursor_type.
7937 Remove unused local variables cursor_off_state.
7938 Redraw cursor if hbar cursor width changes.
7939
7940 * xterm.h (enum text_cursor_kinds): Removed.
7941 (struct output_x) <current_cursor, desired_cursor, cursor_width>
7942 <blink_off_cursor, blink_off_cursor_width>: Members removed.
7943 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
7944 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
7945 (x_specified_cursor_type): Remove prototype.
7946
79472002-08-28 Richard M. Stallman <rms@gnu.org>
7948
7949 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
7950 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
7951 (Vblink_cursor_alist): New variable.
7952 (syms_of_w32fns): Initialize and defvar it.
7953 (x_specified_cursor_type): Recognize Qbox for filled box.
7954 Exceptions are hollow boxes.
7955 (Qbox, Qhollow): New variables.
7956 (syms_of_w32fns): Initialize and staticpro them.
7957
7958 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
7959 New macros.
7960 (struct w32_output): New fields blink_off_cursor,
7961 blink_off_cursor_width.
7962 (FRAME_CURSOR_WIDTH): New macro.
7963
7964 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
7965 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
7966
7967 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
7968 for bar cursor.
7969
7970 * w32term.c (expose_overlaps): New function.
7971 (expose_window): Use it to fix the display of overlapping rows.
7972
79732002-08-28 Simon Josefsson <jas@extundo.com>
7974
7975 * xfns.c (Fx_open_connection): Improve help when X connection
7976 fails, xhost is insecure and xauth is better.
7977
79782002-08-28 Juanma Barranquero <lektu@terra.es>
7979
7980 * makefile.w32-in: Add missing dependencies on w32term.h and
7981 composite.h.
7982
7983 * emacs.c (USAGE1): Add missing newline.
7984
79852002-08-27 Andrew Choi <akochoi@shaw.ca>
7986
7987 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
7988
79892002-08-27 Richard M. Stallman <rms@gnu.org>
7990
7991 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
7992 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
7993 (Vblink_cursor_alist): New variable.
7994 (syms_of_xfns): Initialize and defvar it.
7995 (x_specified_cursor_type): Recognize Qbox for filled box.
7996 Exceptions are hollow boxes.
7997 (Qbox, Qhollow): New variables.
7998 (syms_of_xfns): Initialize and staticpro them.
7999
8000 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
8001 New macros.
8002 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
8003
8004 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
8005 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
8006
8007 * emacs.c (main): Handle --script.
8008 (USAGE1): Mention --script.
8009 (standard_args): Define sort order for --script.
8010
80112002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
8012
8013 * xdisp.c (redisplay_updating_p): Variable removed.
8014 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
8015 New variables.
8016 (init_iterator): Don't free realized faces if
8017 inhibit_free_realized_faces is set.
8018 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
8019 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
8020 initialize Qinhibit_free_realized_faces.
8021
8022 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
8023 when iterator is adding glyphs to a glyph matrix.
8024
80252002-08-27 Kenichi Handa <handa@etl.go.jp>
8026
8027 * xdisp.c (get_next_display_element): In unibyte case, don't use
8028 octal form for such eight-bit characters that can be converted to
8029 multibyte char.
8030
80312002-08-26 Kim F. Storm <storm@cua.dk>
8032
8033 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
8034 and background colors. From Joe Buehler (tiny change).
8035
80362002-08-26 Miles Bader <miles@gnu.org>
8037
8038 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
8039
80402002-08-25 Andrew Choi <akochoi@shaw.ca>
8041
8042 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
8043 defined instead of MAC_OSX.
8044
8045 * s/darwin.h (select): Define select to sys_select only if
8046 HAVE_CARBON is defined.
8047 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
8048 (DONT_REOPEN_PTY): #def it.
8049
8050 * macterm.c (XTread_socket): Remove code to call
8051 SendEventToEventTarget for keys with command modifiers when
8052 mac_command_key_is_meta is nil.
8053
80542002-08-24 Andreas Schwab <schwab@suse.de>
8055
8056 * eval.c (Fdefvar): Fix last change.
8057
80582002-08-23 Richard M. Stallman <rms@gnu.org>
8059
8060 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
8061 Record variables in load history as (defvar . VAR).
8062 (Fdefvar): Don't record in load history if no initial value.
8063 (Qdefvar): New variable.
8064 (syms_of_eval): Init and staticpro it.
8065
8066 * lread.c (syms_of_lread): Doc fix.
8067 (build_load_history): Use Fmember to see if a definition
8068 is already in the Vload_history element.
8069
8070 * process.c (Fstart_process): Remove /: from program name.
8071
8072 * emacs.c (decode_env_path): Don't add /: if file name handler
8073 has a `safe-magic' property.
8074
8075 * callproc.c (Fcall_process): Remove /: from program name.
8076
80772002-08-23 Stefan Monnier <monnier@cs.yale.edu>
8078
8079 * regex.c (PATFETCH): Remove the translating fetch.
8080 (PATFETCH_RAW): Rename to PATFETCH.
8081 (set_image_of_range): New fun.
8082 (SET_RANGE_TABLE_WORK_AREA): Use it.
8083 (regex_compile): Don't translate the pattern chars so eagerly.
8084 Only do it when inserting an `exactn' bytecode or when handling
8085 a char-range.
8086 (mutually_exclusive_p): Avoid empty statement.
8087
80882002-08-22 Kim F. Storm <storm@cua.dk>
8089
8090 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
8091 end up on a partially visible line; this reverts a specific part
8092 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
8093 display error which has been reported several times now.
8094 However it introduces the problem that changes was supposed to fix.
8095 See my comments in the source if you want to debug this further.
8096
80972002-08-20 Kenichi Handa <handa@etl.go.jp>
8098
8099 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
8100
81012002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
8102
8103 * msdos.c (croak): Add `void' to definition.
8104
8105 * sysdep.c [MSDOS] (request_sigio, unrequest_sigio):
8106 Don't define them, they are defined in msdos.c.
8107
8108 * mem-limits.h [MSDOS]: Declare etext.
8109
8110 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
8111 `const' since CORRECT_DIR_SEPS modifies its target.
8112
81132002-08-19 Kim F. Storm <storm@cua.dk>
8114
8115 * keyboard.c (Fclear_this_command_keys): Added optional arg
8116 KEEP-RECORD to avoid clearing lossage when we just want to clear
8117 the current key sequence (kmacro needs this).
8118
81192002-08-19 Kenichi Handa <handa@localhost>
8120
8121 * composite.c (run_composition_function): Call FUNC if it is fboundp.
8122
8123 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
8124 cons, return Qnil.
8125
81262002-08-17 Richard M. Stallman <rms@gnu.org>
8127
8128 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
8129
8130 * sysdep.c [!VMS]: Include sys/files.h.
8131
8132 * editfns.c (save_restriction_restore): Defend from unchained marker.
8133
8134 * buffer.c (overlays_at): Handle extending vec uniformly.
8135 (overlays_in): Handle extending vec from length 0 as in overlays_at.
8136
81372002-08-15 Andrew Choi <akochoi@shaw.ca>
8138
8139 * mac.c (init_mac_osx_environment): New function.
8140
8141 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
8142
81432002-08-14 Kim F. Storm <storm@cua.dk>
8144
8145 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
8146 executing macro before appending to it (when used from Lisp).
8147 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
8148 which is called prior to each iteration of macro (for kmacro.el).
8149 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
8150
8151 * lisp.h (Fexecute_kbd_macro): Update prototype.
8152
8153 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
8154
81552002-08-14 Kenichi Handa <handa@etl.go.jp>
8156
8157 * xselect.c (QUTF8_STRING): New variable.
8158 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
8159 (x_atom_to_symbol): Likewise.
8160 (x_get_local_selection): New argument local_request. If it is
8161 nonzero, call handler_fn with the second arg nil.
8162 (x_handle_selection_request): Call x_get_local_selection with
8163 local_request 0.
8164 (lisp_data_to_selection_data): Don't encode the string here.
8165 (Fx_get_selection_internal): Call x_get_local_selection with
8166 local_request 1.
8167 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
8168
8169 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
8170
8171 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
8172
81732002-08-13 Richard M. Stallman <rms@gnu.org>
8174
8175 * minibuf.c (Fminibufferp): New function.
8176 (syms_of_minibuf): Defsubr it.
8177 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
8178
81792002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
8180
8181 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
8182
81832002-08-12 Richard M. Stallman <rms@gnu.org>
8184
8185 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
8186 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
8187 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
8188 already.
8189
8190 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
8191
81922002-08-11 Andrew Choi <akochoi@shaw.ca>
8193
8194 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
8195 (Vmac_pass_command_to_system): New variable.
8196 (Vmac_pass_control_to_system): New variable.
8197 (do_mouse_moved): Check wp with is_emacs_window.
8198 (XTread_socket): Check window_ptr with is_emacs_window.
8199 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
8200 events back to Mac Toolbox for processing, depending on values of
8201 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
8202 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
8203 Vmac_pass_control_to_system.
8204
82052002-08-10 Kenichi Handa <handa@etl.go.jp>
8206
8207 * coding.c (unencodable_char_position): New function.
8208 (Funencodable_char_position): New function.
8209 (syms_of_coding): Defsubr Funencodable_char_position.
8210
82112002-08-10 Andrew Choi <akochoi@shaw.ca>
8212
8213 * mac.c (sys_select) [MAC_OSX]: New function.
8214
8215 * macterm.c (MakeMeTheFrontProcess): New function.
8216 (mac_initialize): Call MakeMeTheFrontProcess.
8217
8218 * s/darwin.h: Define select to sys_select.
8219
82202002-08-09 Richard M. Stallman <rms@gnu.org>
8221
8222 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
8223
82242002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
8225
8226 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
8227 end of the buffer.
8228
82292002-08-08 Ken Raeburn <raeburn@mit.edu>
8230
8231 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
8232
8233 * puresize.h (BASE_PURESIZE): Increase to 910000.
8234
82352002-08-08 Kenichi Handa <handa@etl.go.jp>
8236
8237 * coding.c (Ffind_operation_coding_system): For write-region, if
8238 VISIT is a filename, make it the target.
8239
82402002-08-07 Richard M. Stallman <rms@gnu.org>
8241
8242 * alloc.c (mark_object): Detect long lists for debugging.
8243 (mark_object_loop_halt): New variable.
8244
8245 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
8246
8247 * data.c (Fmake_variable_frame_local): Doc fix.
8248
82492002-08-01 David Ponce <david@dponce.com>
8250
8251 * w32menu.c (local_heap, local_alloc, local_free): New macros.
8252 (malloc_widget_value, free_widget_value)
8253 (w32_free_submenu_strings): Use them.
8254
8255 (push_submenu_start, push_submenu_end, push_left_right_boundary)
8256 (push_menu_pane, push_menu_item, single_keymap_panes)
8257 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
8258 (single_submenu, set_frame_menubar)
8259 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
8260
8261 (Fx_popup_menu): Don't show pop up menu until preceding one is
8262 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
8263
8264 * w32menu.c: Changes adapted from xmenu.c
8265 (set_frame_menubar): First parse all submenus,
8266 then make widget_value trees from them.
8267 Don't allocate any widget_value objects
8268 until we are done with the parsing.
8269 (parse_single_submenu): New function.
8270 (digest_single_submenu): New function.
8271 (single_submenu): Function deleted, replaced by those two.
8272
82732002-08-04 Andrew Choi <akochoi@shaw.ca>
8274
8275 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
8276 returns a valid window pointer before proceeding for keyDown and
8277 autoKey events.
8278
82792002-08-03 Andrew Choi <akochoi@shaw.ca>
8280
8281 * macterm.c (USE_CARBON_EVENTS): New macro.
8282 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
8283 (x_iconify_frame): Call CollapseWindow.
8284 (Vmac_reverse_ctrl_meta): New variable.
8285 (Vmac_wheel_button_is_mouse_2): New variable.
8286 (init_mac_drag_n_drop): New function.
8287 (mac_do_receive_drag): New function.
8288 (mac_handle_service_event): New function.
8289 (init_service_handler): New function.
8290 (mac_to_emacs_modifiers): New function.
8291 (mac_event_to_emacs_modifiers): New function.
8292 (mac_get_mouse_btn): New function.
8293 (mac_convert_event_ref): New function.
8294 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
8295 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
8296 mac_get_mouse_btn.
8297 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
8298
8299 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
8300 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
8301 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
8302 TOOL_BAR_EVENT for MAC_OS as well.
8303 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
8304 as for WINDOWS_NT.
8305 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
8306
8307 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
8308
83092002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
8310
8311 * xdisp.c (forward_to_next_line_start): Fix a condition that
8312 lead to a newline being skipped.
8313
83142002-08-02 Andrew Choi <akochoi@shaw.ca>
8315
8316 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
8317
83182002-08-01 Richard M. Stallman <rms@gnu.org>
8319
8320 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
8321
83222002-07-31 Andrew Choi <akochoi@shaw.ca>
8323
8324 * macfns.c: #undef init_process before #define-ing it.
8325
8326 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
8327 HAVE_CARBON is defined.
8328
83292002-07-31 Richard M. Stallman <rms@gnu.org>
8330
8331 * xmenu.c (set_frame_menubar): First parse all submenus,
8332 then make widget_value trees from them.
8333 Don't allocate any widget_value objects
8334 until we are done with the parsing.
8335 (parse_single_submenu): New function.
8336 (digest_single_submenu): New function.
8337 (single_submenu): Function deleted, replaced by those two.
8338
83392002-07-30 Juanma Barranquero <lektu@terra.es>
8340
8341 * w32proc.c (syms_of_ntproc): Fix docstring of
8342 `w32-get-true-file-attributes'.
8343
83442002-07-28 Richard M. Stallman <rms@gnu.org>
8345
8346 * s/hpux8.h (HPUX8): Define this before including hpux.h.
8347 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
8348
8349 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
8350
8351 * keyboard.c (make_lispy_event):
8352 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
8353 Explicitly clear up_modifier in event->modifiers.
8354
83552002-07-27 Richard M. Stallman <rms@gnu.org>
8356
8357 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
8358
8359 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
8360 for bar cursor.
8361
83622002-07-26 Kenichi Handa <handa@etl.go.jp>
8363
8364 * coding.c (detect_coding_iso2022): While checking a byte sequence
8365 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
8366 it in the normal loop.
8367
83682002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
8369
8370 * xterm.c (expose_overlaps): New function.
8371 (expose_window): Use it to fix the display of overlapping rows.
8372
8373 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
8374
83752002-07-23 Ken Raeburn <raeburn@gnu.org>
8376
8377 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
8378 since it only depends on XUINT.
8379
8380 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
8381 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
8382 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
8383 Macros deleted.
3947677c 8384
77d1daf2
AS
8385 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
8386 its value over other approaches.
8387 * sysdep.c (start_of_data): Don't define the function if a macro
8388 form has been defined.
8a8e19a3 8389
048addec
JD
83902002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
8391
8392 * xdisp.c (redisplay_updating_p): New variable.
8393 (init_iterator): Don't free realized faces when
8394 redisplay_updating_p is set.
8395 (redisplay_internal): Set redisplay_updating_p while updating
8396 the display.
8397
83982002-07-23 Richard M. Stallman <rms@gnu.org>
8399
8400 * editfns.c (Fmessage): Treat "" like nil.
8401
84022002-07-23 Kenichi Handa <handa@etl.go.jp>
8403
8404 * xdisp.c (face_before_or_after_it_pos):
8405 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
8406
84072002-07-22 Juanma Barranquero <lektu@terra.es>
8408
8409 * callproc.c (init_callproc) [DOS_NT]:
8410 Initialize Vshared_game_score_directory to nil.
8411 (syms_of_callproc) [DOS_NT]: Likewise.
8412
84132002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
8414
8415 * xdisp.c (display_line): Replace an abort with xassert.
8416
84172002-07-21 Richard M. Stallman <rms@gnu.org>
8418
8419 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
8420 and END_UNCHANGED when setting buffer_unchanged_p.
8421 Use current_matrix_up_to_date_p to decide whether to use
8422 try_cursor_movement.
8423
8424 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
8425
8426 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
8427
8428 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
8429 Set to nil if dir does not exist.
8430 (syms_of_callproc): Init unconditionally and simply.
8431
8432 * buffer.c (Fbuffer_list): Doc fix.
8433
84342002-07-21 Ken Raeburn <raeburn@gnu.org>
8435
8436 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
8437
8438 * buffer.c (mmap_realloc): When shrinking, make sure number of
8439 pages to unmap is rounded towards zero.
8440
8441 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
8442 (XSETINT): Deleted.
8443
8444 * m/att3b.h (XINT): Don't define.
8445 (VALBITS, VALMASK, XTYPE): Deleted.
8446 (DATA_SEG_BITS): Define.
8447 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
8448 ARRAY_MARK_FLAG): Deleted.
8449 (DATA_SEG_BITS): Define.
8450 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
8451 (DATA_SEG_BITS): Define.
8452
84532002-07-20 Richard M. Stallman <rms@gnu.org>
8454
8455 * print.c (print_error_message): New args CONTEXT and CALLER.
8456 Calls changed.
8457
8458 * lisp.h (print_error_message): Declare new args.
8459
8460 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
8461 and CONTEXT to print_error_message, don't print them here.
8462 For a Quit, don't use Vsignaling_function.
8463 Call message_log_maybe_newline.
8464
8465 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
8466
84672002-07-20 Kim F. Storm <storm@cua.dk>
8468
8469 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
8470
84712002-07-19 Ken Raeburn <raeburn@gnu.org>
8472
8473 * bytecode.c (struct byte_stack): Pointers into byte string now
8474 point to const.
8475 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
8476 const.
8477 * charset.h (BCOPY_SHORT): Source pointer now points to const.
8478 * coding.c (encode_eol, detect_coding, detect_eol):
8479 (decode_coding, encode_coding, detect_coding_system):
8480 Source strings now treated as const.
8481 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
8482 modify Lisp string contents.
8483 * coding.h (decode_coding, encode_coding, detect_coding,
8484 detect_eol): Declarations updated.
8485 * composite.c (compose_chars_in_text): Treat Lisp string contents
8486 as const.
8487 * dispnew.c (safe_bcopy): Source pointer now points to const.
8488 * lisp.h (STRING_COPYIN): New macro.
8489 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
8490 (internal_with_output_to_temp_buffer): Declarations updated.
8491 * print.c (temp_output_buffer_setup):
8492 (internal_with_output_to_temp_buffer): Buffer name argument is now
8493 pointer to const.
8494 * sound.c (struct sound_device): Function pointer field "write"
8495 buffer argument now points to const.
8496 (vox_write): Buffer argument points to const.
8497 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
8498 contents as const.
8499 * sysdep.c (emacs_write): Buffer pointer now const.
8500 * term.c (encode_terminal_code): Buffer pointer now const.
8501 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
8502 (x_face_list_fonts, x_update_menu_appearance):
8503 (hash_string_case_insensitive): Treat Lisp string contents as const.
8504
85052002-07-19 Juanma Barranquero <lektu@terra.es>
8506
048addec
JD
8507 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
8508
8509 * fileio.c (syms_of_fileio): Likewise.
c62aec78
JB
8510 (Ffile_name_as_directory): Fix argument name in docstring.
8511 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
048addec
JD
8512
85132002-07-18 Richard M. Stallman <rms@gnu.org>
8514
8515 * data.c (Fdefalias): Doc fix.
8516
85172002-07-17 Dave Love <fx@gnu.org>
8518
8519 * intervals.h (text_property_stickiness): Use P_.
8520
8521 * ccl.c: Remove `emacs' conditionals.
8522 (ccl_backtrace_table): Fix size spec.
8523 (ccl_driver): Fix type errors.
8524
85252002-07-16 Ken Raeburn <raeburn@gnu.org>
8526
8527 * alloc.c (xstrdup, make_string, make_unibyte_string)
8528 (make_multibyte_string, build_string): String pointer args now
8529 point to const.
8530 * charset.c (find_charset_in_text, c_string_width):
8531 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
8532 * fileio.c (report_file_error):
8533 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
8534 (count_combining_before, count_combining_after, insert_1_both):
8535 (insert, insert_and_inherit, insert_string):
8536 (insert_before_markers, insert_before_markers_and_inherit):
8537 * lread.c (intern, oblookup, hash_string):
8538 * minibuf.c (temp_echo_area_glyphs):
8539 * search.c (fast_c_string_match_ignore_case):
8540 * sysdep.c (emacs_open, set_file_times):
8541 * xfaces.c (xstricmp):
8542 * xdisp.c (store_frame_title, string_char_and_length):
8543 (message_dolog, message2, message2_nolog, set_message): Likewise.
8544 (set_message_1): Cast message string argument to const pointer.
8545 * editfns.c (general_insert_function): Insertion function now
8546 takes pointer to const for input data.
8547 * charset.h (find_charset_in_text, c_string_width):
8548 (parse_str_as_multibyte): Declarations updated.
8549 * dispextern.h (xstricmp): Declaration updated.
8550 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
8551 (count_size_as_multibyte, count_combining_before):
8552 (count_combining_after, insert_1, insert_1_both, message_dolog):
8553 (insert, insert_and_inherit, insert_before_markers)
8554 (insert_before_markers_and_inherit, set_message, message2):
8555 (message2_dolog, build_string, make_string, make_unibyte_string):
8556 (make_multibyte_string, intern, oblookup, report_file_error):
8557 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
8558 (emacs_open, xstrdup): Declarations updated.
8559 * systime.h (set_file_times): Declaration updated.
8560
8561 * charset.c (find_charset_in_text, lisp_string_width): Use const
8562 for pointer to lisp string data.
8563 * charset.h (FETCH_STRING_CHAR_ADVANCE):
8564 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
8565 * coding.c (Ffind_coding_systems_region_interval):
8566 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
8567 (Fmake_directory_internal, Fdelete_directory):
8568 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
8569 * fontset.c (font_family_registry, fs_query_fontset):
8570 (list_fontsets):
8571 * frame.c (Fframe_parameter):
8572 * keyboard.c (cmd_error_internal):
8573 * keymap.c (Fdescribe_buffer_bindings):
8574 * lread.c (complete_filename_p, openp):
8575 * minibuf.c (Fminibuffer_complete_word):
8576 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
8577 (face_before_or_after_it_pos, next_element_from_string):
8578 (get_overlay_arrow_glyph_row, display_mode_element):
8579 (decode_mode_spec_coding):
8580 * xterm.c (same_x_server): Likewise.
8581
8582 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
8583 settings of non-existent fields.
8584
8585 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
8586 copy a lisp value.
8587
8588 * lread.c (Fintern_soft): Use string macros instead of
8589 Lisp_String fields.
8590 * keyboard.c (echo_char, parse_modifiers_uncached):
8591 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
8592 * textprop.c (validate_interval_range, interval_of): Likewise.
8593
8594 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
8595
8596 * charset.h (FETCH_STRING_CHAR_ADVANCE)
8597 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
8598 XSTRING()->size_byte.
8599
8600 * lisp.h (SDATA, SREF): Produce rvalue.
8601 (SSET): New macro.
8602 * alloc.c (make_event_array): Use SSET for storing into a string.
8603 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
8604 a string.
8605 * casefiddle.c (casify_object): Use SSET.
8606 * charset.h (FETCH_STRING_CHAR_ADVANCE)
8607 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
8608 address of string contents.
8609 * data.c (Faref): Use SDATA.
8610 (Faset): Use SDATA, SSET.
8611 * dired.c (directory_files_internal): Use SSET.
8612 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
8613 (Fread_file_name): Use SREF, SSET.
8614 * fns.c (concat): Use SSET.
8615 (concat, Fdelete): Use SDATA.
8616 * insdel.c (insert_from_string_1): Use SDATA.
8617 * keyboard.c (Fevent_convert_list): Use SREF.
8618 * lread.c (Fload): Use SDATA, SSET.
8619 * macfns.c (validate_x_resource_name): Use SSET.
8620 * process.c (status_message): Use SSET.
8621 * search.c (wordify): Use SDATA.
8622 (Freplace_match): Use SREF.
8623 * w32fns.c (validate_x_resource_name): Use SSET.
8624 * xfns.c (validate_x_resource_name): Use SSET.
8625 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
8626
86272002-07-16 Richard M. Stallman <rms@gnu.org>
8628
8629 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
8630
8631 * xdisp.c (reconsider_clip_changes):
8632 Don't test prevent_redisplay_optimizations_p.
8633 (redisplay_internal): Test prevent_redisplay_optimizations_p
8634 along with clip_changed in some cases.
8635 (try_window_id): Likewise.
8636 (redisplay_window): New local var buffer_unchanged_p.
8637
8638 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
8639
8640 * process.c (create_process): Test USG_SUBTTY_WORKS.
8641 (process_send_signal): Clean up handling of GID.
8642 Detect errors in ioctls meant to set GID.
8643
8644 * window.c (temp_output_buffer_show):
8645 Don't set prevent_redisplay_optimizations_p.
8646
86472002-07-15 Juanma Barranquero <lektu@terra.es>
8648
8649 * eval.c (Fdefvaralias): Add docstring argument.
8650
86512002-07-15 Ken Raeburn <raeburn@gnu.org>
8652
8653 * lisp.h (STRING_INTERVALS): Produce rvalue.
8654 (STRING_SET_INTERVALS): New macro.
8655 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
8656 * fns.c (Fstring_as_multibyte): Likewise.
8657 * intervals.c (balance_possible_root_interval, delete_interval)
8658 (create_root_interval, copy_intervals_to_string): Likewise.
8659 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
8660 instead of 0.
8661
86622002-07-14 Ken Raeburn <raeburn@gnu.org>
8663
8664 * lisp.h (STRING_SET_CHARS): New macro.
8665 (SCHARS, SBYTES): Produce rvalues.
8666 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
8667 * fns.c (concat): Likewise.
8668 * lread.c (read_vector): Likewise.
8669
8670 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
8671 (STRING_SET_UNIBYTE): New macro.
8672 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
8673 length of -1) changed to use STRING_SET_UNIBYTE.
8674 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
8675 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
8676 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
8677 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
8678 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
8679 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
8680 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
8681 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
8682 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
8683 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
8684 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
8685 STRING_BYTES or indirection changed to SCHARS, SBYTES,
8686 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
8687 unchanged for now.
8688
86892002-07-13 Kim F. Storm <storm@cua.dk>
8690
8691 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
8692
86932002-07-12 Richard M. Stallman <rms@gnu.org>
8694
8695 * fileio.c (Fwrite_region): Doc fix.
8696
8697 * print.c (print_error_message): Don't handle Vsignaling_function here.
8698
8699 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
8700 (command_loop_1): Avoid certain actions after memory-full error.
8701
8702 * eval.c (Fsignal): Don't call cancel_hourglass.
8703 For a memory-full error, don't call Vsignal_hook_function
8704 and don't set Vsignaling_function.
8705
8706 * process.c (process_send_signal): Add abort call.
8707
87082002-07-11 Markus Rost <rost@math.ohio-state.edu>
8709
8710 * keymap.c (Fkey_binding): Fix typo.
8711
87122002-07-11 Richard M. Stallman <rms@gnu.org>
8713
8714 * alloc.c (Vmemory_full): New variable.
8715 (Vmemory_signal_data): Renamed from memory_signal_data.
8716 Uses changed.
8717 (syms_of_alloc): Defvar them.
8718 (memory_full, buffer_memory_full): Set Vmemory_full.
8719
8720 * lisp.h (Vmemory_full): Add declaration.
8721 (current_column, indented_beyond_p): Change declaration.
8722
8723 * indent.c (last_known_column): Declare as double, not float.
8724 (current_column, current_column_1, string_display_width)
8725 (position_indentation): Return `double'.
8726 (indented_beyond_p): Arg `column' is `double'. Callers changed.
8727
8728 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
8729 (back_to_previous_visible_line_start)
8730 (reseat_at_next_visible_line_start, next_element_from_buffer):
8731 Use `double', not `float', when calling indented_beyond_p.
8732
8733 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
8734
8735 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
8736
87372002-07-11 Juanma Barranquero <lektu@terra.es>
8738
8739 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
d814862a
JB
8740 composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
8741 fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
8742 macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
8743 textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
8744 xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
048addec
JD
8745
87462002-07-10 Juanma Barranquero <lektu@terra.es>
8747
d814862a
JB
8748 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
8749 All callers changed.
048addec
JD
8750
87512002-07-09 Stefan Monnier <monnier@cs.yale.edu>
8752
8753 * data.c (Fdefalias): Add an optional `docstring' argument.
8754 (set_internal, Fsetq_default): Use XCAR/XCDR.
8755
8756 * composite.c (HASH_VALUE, HASH_KEY):
8757 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
8758
87592002-07-09 Kenichi Handa <handa@etl.go.jp>
8760
8761 * callproc.c (Fcall_process): Fix previous change.
8762
87632002-07-07 Stefan Monnier <monnier@cs.yale.edu>
8764
8765 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
8766 Add support for hash-tables.
8767 (Ftry_completion): Return t even if the string appears multiple times.
8768
8769 * fns.c (Fnconc): Use XCDR.
8770 (Fprovide): Use CONSP and XCDR.
8771 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
8772 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
8773 (Fmake_hash_table): Accept `:size nil'.
8774 (Fmakehash): Delete: moved to subr.el.
8775 (syms_of_fns): Don't defsubr makehash.
8776
8777 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
8778 (HASH_TABLE_SIZE): Move from fns.c.
8779
87802002-07-07 Richard M. Stallman <rms@gnu.org>
8781
8782 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
8783 Instead just return 0 when there is something to be done.
8784 (try_scrolling): If make_cursor_line_fully_visible returns 0,
8785 retry scrolling as if cursor were off the bottom.
8786 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
8787 return CURSOR_MOVEMENT_MUST_SCROLL.
8788 (redisplay_window): If make_cursor_line_fully_visible returns 0,
8789 go to try_to_scroll.
8790
8791 * buffer.c (Fbuffer_local_value): Store current value into its binding
8792 so we get the up-to-date value for the binding that is loaded.
8793
8794 * eval.c (Fdefmacro): Doc fix.
8795
87962002-07-05 Dave Love <fx@gnu.org>
8797
8798 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
8799 correctly.
8800
8801 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
8802 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
8803 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
8804 CCL_LookupCharConstTbl.
8805 (syms_of_ccl): Defvar translation-hash-table-vector.
8806
88072002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8808
8809 * xdisp.c: Remove unused variable `face'.
8810
88112002-07-04 Juanma Barranquero <lektu@terra.es>
8812
8813 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
8814 obsolescence information.
8815
88162002-07-03 Andrew Choi <akochoi@shaw.ca>
8817
8818 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
8819 pattern. Search cache first.
8820 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
8821 for Japanese font.
8822 (XLoadQueryFont): Use it.
8823
88242002-07-02 Richard M. Stallman <rms@gnu.org>
8825
8826 * keymap.c (Fdefine_key): Doc fix.
8827
8828 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
8829
88302002-07-02 Juanma Barranquero <lektu@terra.es>
8831
8832 * keymap.c (syms_of_keymap): Fix typo.
8833
88342002-07-01 Andrew Choi <akochoi@shaw.ca>
8835
8836 * s/darwin.h: Define POSIX_SIGNALS.
8837
8838 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
8839 and FSRefMakePath to convert FSSpec returned with Apple Event to
8840 Posix pathname.
8841 (mac_initialize) [TARGET_API_MAC_CARBON]:
8842 Call init_required_apple_events and disable the `Quit' menu item
8843 provided automatically by the Carbon Toolbox.
8844
88452002-07-01 Dave Love <fx@gnu.org>
8846
8847 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
8848 for K&R.
8849
8850 * xterm.c: Fix prototype for K&R.
8851
8852 * term.c (costs_set): Declare static, non-initialized for pcc.
8853
88542002-07-01 Richard M. Stallman <rms@gnu.org>
8855
8856 * keyboard.c (timer_last_idleness_start_time): New variable.
8857 (timer_start_idle): Set that.
8858 (read_key_sequence): Use that to reset timer_idleness_start_time
8859 to previous value.
8860
8861 * window.c (Frecenter): With arg, set optional_new_start.
8862
8863 * xdisp.c (redisplay_internal): Make optional_new_start really work.
8864
8865 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
8866 buffer for completion.
8867
88682002-06-29 Ken Raeburn <raeburn@gnu.org>
8869
8870 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
8871
88722002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8873
8874 * keyboard.c (readable_filtered_events): New function that filters
8875 FOCUS_IN_EVENT depending on parameter.
8876 (readable_events): Calls readable_filtered_events, not filtering
8877 FOCUS_IN_EVENT.
8878 (get_filtered_input_pending): New function, filtering parameter passed
8879 to readable_filtered_events.
8880 (get_input_pending): Calls get_filtered_input_pending, not filtering
8881 FOCUS_IN_EVENT.
8882 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
8883 FOCUS_IN_EVENT.
8884
8885 * xterm.h (struct x_output): Add focus_state.
8886
8887 * xterm.c (x_focus_changed): New function.
8888 (x_detect_focus_change): New function.
8889 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
8890 EnterNotify and LeaveNotify to track X focus changes.
8891
88922002-06-28 Andreas Schwab <schwab@suse.de>
8893
8894 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
8895
88962002-06-27 Kim F. Storm <storm@cua.dk>
8897
8898 * xdisp.c: (mode_line_string_list, mode_line_string_face)
8899 (mode_line_string_face_prop): New variables.
8900 (store_mode_line_string): New function.
8901 (display_mode_element): Use store_mode_line_string to
8902 add mode-line string elements to mode_line_string_list
8903 when mode_line_string_list is non-nil.
8904 (Fformat_mode_line): Now returns propertized string by
8905 default. New arg NO-PROPS to ignore properties.
8906 (decode_mode_spec): Only add two dashes for %- in propertized
8907 mode-line string.
8908 (syms_of_xdisp): Init and staticpro mode_line_string_list.
8909
89102002-06-27 Stefan Monnier <monnier@cs.yale.edu>
8911
8912 * minibuf.c (minibuffer_completion_contents): Add return type.
8913
89142002-06-27 Juanma Barranquero <lektu@terra.es>
8915
8916 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
8917
89182002-06-26 Juanma Barranquero <lektu@terra.es>
8919
8920 * fileio.c (read_file_name_cleanup): Add missing return.
8921
89222002-06-26 Richard M. Stallman <rms@gnu.org>
8923
8924 * window.c (Frecenter): Don't set force_start flag.
8925
8926 * minibuf.c (do_completion, Fminibuffer_complete_word)
8927 (Fminibuffer_completion_help): Complete just the text before point.
8928 (minibuffer_completion_contents): New function.
8929
8930 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
8931
8932 * frame.c (frames_bury_buffer): Function deleted.
8933
89342002-06-25 Miles Bader <miles@gnu.org>
8935
8936 * callint.c (Fcall_interactively): When checking to see if doprnt hit
8937 the end of callint_message, allow for a terminating '\0'.
8938
89392002-06-24 Juanma Barranquero <lektu@terra.es>
8940
8941 * w32select.c: Include composite.h
8942
8943 * w16select.c: Likewise.
8944
89452002-06-24 Kenichi Handa <handa@etl.go.jp>
8946
8947 * callproc.c (Fcall_process): If code detection is necessary,
8948 call detect_coding directly here.
8949
8950 * coding.c (detect_eol): Preserve coding->cmp_data.
8951
8952 * w16select.c (Fw16_get_clipboard_data):
8953 * w32fns.c (w32_to_x_font):
8954 * w32select.c (Fw32_get_clipboard_data):
8955 * xselect.c (selection_data_to_lisp_data):
8956 * xterm.c (XTread_socket): Disable composition handling.
8957
89582002-06-24 Stefan Monnier <monnier@cs.yale.edu>
8959
8960 * print.c (temp_output_buffer_setup): Kill all local variables.
8961
89622002-06-22 Stefan Monnier <monnier@cs.yale.edu>
8963
8964 * lread.c (Fread): Remove redundant and imprecise declaration.
8965
8966 * xfns.c (check_x_display_info): Use check_x_frame.
8967
8968 * .gdbinit (xprintsym): Use the new `xname' field.
8969 (xsymbol): Use it.
8970
89712002-06-22 Jason Rumney <jasonr@gnu.org>
8972
8973 * w32fns.c (file_dialog_callback): New function.
8974 (Fx_file_dialog): Allow selecting directories as well as files.
8975
89762002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8977
8978 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
8979 OpenBSD. Add support for mipseb-*-netbsd* machines.
8980
89812002-06-17 Andrew Choi <akochoi@shaw.ca>
8982
8983 * macterm.c (mac_scroll_area): Set foreground and backcolor to
8984 black and white before scrolling. Restore frame background and
8985 foreground color after scrolling.
8986 (do_window_update): Call XClearWindow before calling expose_frame.
8987 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
8988 FRAME_FOREGROUND_PIXEL of frame.
8989
8990 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
8991 test Mac command key as <ALT> key.
8992
89932002-06-17 Stefan Monnier <monnier@cs.yale.edu>
8994
8995 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
8996
8997 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
8998 Lookup keys in function-key-map immediately so that key-translation-map
8999 can be applied earlier.
9000 Remove function_key_possible and key_translation_possible, replaced
9001 by checking `keytran_start < t'.
9002
9003 * .gdbinit (xsymbol): Use the new `xname' field.
9004
90052002-06-17 Andrew Choi <akochoi@shaw.ca>
9006
9007 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
9008 test Mac command key as <ALT> key.
9009
9010 * mac.c (do_applescript): Call initialize_applescript if necessary
9011 when first called. Dispose of result_desc only when there is no error.
9012 (Fdo_applescript): Use %d format specifier instead of %ld.
9013
90142002-06-16 Andrew Choi <akochoi@shaw.ca>
9015
9016 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
9017 of FrontWindow for cases keyDown and autoKey.
9018
9019 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
9020 Vdefault_fontset to Monaco with mac-roman coding.
9021
9022 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
9023 init_process before and after inclusion of Carbon/Carbon.h, resp.
9024
9025 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
9026 cursor_gc.
9027 (add_font_name_table_entry): New function.
9028 (init_font_name_table): Use add_font_name_table_entry; add italic,
9029 bold, and bold-italic entries for truetype fonts.
9030
9031 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
9032 for Mac too.
9033 (try_font_list) [MAC_OS]: If no font matches given registry, try
9034 fonts with any registry matching face_family.
9035 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
9036
9037 * s/darwin.h: If autoconf detects the Ncurses library, define
9038 LIBS_TERMCAP to -lncurses to use it.
9039
90402002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
9041
9042 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
9043
90442002-06-15 Richard M. Stallman <rms@gnu.org>
9045
9046 * window.c (Fset_window_configuration): Explicitly preserve
9047 the point value that new_current_buffer had at the start.
9048
90492002-06-14 Juanma Barranquero <lektu@terra.es>
9050
9051 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
9052 Fix typos.
9053
90542002-06-14 Kim F. Storm <storm@cua.dk>
9055
9056 * insdel.c (insert_1_both, insert_from_string_1)
9057 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
9058 insert happened in the end_unchanged region. Otherwise, the
9059 redisplay may be confused and duplicate the last line in the
9060 buffer [seen after save-buffer when require-final-newline==t].
9061
90622002-06-13 Jason Rumney <jasonr@gnu.org>
9063
9064 * w32.c (init_environment): Remove EMACSLOCKDIR.
9065 (stat): Swap _S_IFDIR and _S_IFREG.
9066
90672002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9068
9069 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
9070 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
9071 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
9072 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
9073 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
9074 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
9075 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
9076 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
9077 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
9078 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
9079 SELECTION_REQUEST_EVENT, selection_clear_event to
9080 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
9081 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
9082 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
9083 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
9084 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
9085 no_event to NO_EVENT.
9086
90872002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9088
9089 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
9090
90912002-06-12 Stefan Monnier <monnier@cs.yale.edu>
9092
9093 * intervals.c (textget): Don't forget to `return'.
9094 (lookup_char_property): Use XCAR/XCDR.
9095
90962002-06-12 Juanma Barranquero <lektu@terra.es>
9097
9098 * xdisp.c (Fformat_mode_line): Fix typo.
9099
91002002-06-12 Kim F. Storm <storm@cua.dk>
9101
9102 * xdisp.c (Fformat_mode_line): New function.
9103 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
9104 (store_frame_title_char, store_frame_title): Use unconditionally.
9105 (init_xdisp): Defsubr Fformat_mode_line.
9106 Initialize frame_title_buf etc. unconditionally.
9107
91082002-06-11 Stefan Monnier <monnier@cs.yale.edu>
9109
9110 * keyboard.c (read_key_sequence):
9111 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
9112 things through those maps after downcasing events.
9113 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
9114 applies after function-key-map.
9115 Make sure that keytran can be done in the middle in the sequence.
9116 Be careful not to throw away events past the one we downcase.
9117
9118 * lread.c (read_integer): Remove unused var `tem'.
9119 (read1): Fix int/Lisp_Object mixup.
9120
9121 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
9122
91232002-06-11 Richard M. Stallman <rms@gnu.org>
9124
9125 * keyboard.c (readable_events): Ignore any number of
9126 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
9127
91282002-06-09 Miles Bader <miles@gnu.org>
9129
9130 * xfaces.c (Ftty_supports_face_attributes_p): New function.
9131 (parse_rgb_list, tty_lookup_color): New functions.
9132 (tty_defined_color): Use `tty_lookup_color' to do all the work.
9133 (color_distance, Fcolor_distance): New functions.
9134 (TTY_SAME_COLOR_THRESHOLD): New macro.
9135 (Qtty_color_standard_values): New variable.
9136 (syms_of_xfaces): Initialize new vars & functions.
9137
91382002-06-08 Colin Walters <walters@verbum.org>
9139
9140 * textprop.c (Vchar_property_alias_alist): New variable.
9141 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
9142
9143 * intervals.c (lookup_char_property): New function for looking up
9144 overlay and text properties, created from textget.
9145 (textget): Use it.
9146
9147 * intervals.h (lookup_char_property): Declare.
9148 (Vchar_property_alias_alist): Declare.
9149
9150 * buffer.c (Foverlay_get): Use lookup_char_property.
9151
91522002-06-07 Sam Steingold <sds@gnu.org>
9153
9154 * xselect.c (lisp_data_to_selection_data): Fix last change:
9155 *data_ret is not a Lisp string, while unibyte_string is.
9156
91572002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
9158
9159 * xselect.c (lisp_data_to_selection_data): Fix last change:
9160 set size_ret.
9161
91622002-06-07 Andreas Schwab <schwab@suse.de>
9163
9164 * m/amdx86-64.h: New file.
9165
91662002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
9167
9168 * fns.c (Fstring_make_unibyte): Doc fix.
9169
9170 * xselect.c (lisp_data_to_selection_data): If the requested type
9171 is STRING, call string_make_unibyte to encode the selected text
9172 as a string.
9173
9174 * window.c (Fset_window_hscroll): Doc fix.
9175
91762002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9177
9178 * fileio.c (choose_write_coding_system):
9179 Call select-safe-coding-system properly.
9180
91812002-06-03 Richard M. Stallman <rms@gnu.org>
9182
9183 * xdisp.c (message_with_string): Error if STRING is not a string.
9184
9185 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
9186
9187 * fileio.c (choose_write_coding_system): Pass FILE arg to
9188 Vselect_safe_coding_system_function.
9189
91902002-06-03 Ken Raeburn <raeburn@gnu.org>
9191
9192 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
9193
91942002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
9195
9196 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
9197 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
9198 * keymap.c (describe_command): Likewise.
9199 * minibuf.c (read_minibuf): Likewise.
9200
9201 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
9202 Cast `current_column' return value to int.
9203 (back_to_previous_visible_line_start)
9204 (reseat_at_next_visible_line_start, next_element_from_buffer):
9205 Cast `indented_beyond_p' 3rd arg to float.
9206
9207 * indent.c (last_known_column): Now a float.
9208 (current_column_1, position_indentation, current_column)
9209 (string_display_width): Return float.
9210 (Fcurrent_column): Cast `current_column' return value to int.
9211 (Fcurrent_indentation): Cast `position_indentation' retval to int.
9212 (indented_beyond_p): Third arg now a float.
9213 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
9214
9215 * lisp.h (current_column): Now returns float.
9216 (indented_beyond_p): 3rd arg now a float.
9217
92182002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
9219
9220 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
9221 is Qcompound_text_with_extensions.
9222
9223 * xselect.c (lisp_data_to_selection_data): Always set selection
9224 type as string if x_encode_text returns streingp non-NULL.
9225
9226 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
9227
92282002-05-30 Richard M. Stallman <rms@gnu.org>
9229
9230 * window.c (Fset_window_configuration): Correct the handling
9231 of point in current buffer, to work with multiple windows.
9232
92332002-05-29 Colin Walters <walters@verbum.org>
9234
9235 * lread.c (Fread_from_string): Don't depend on order of evaluation
9236 for C function parameters.
9237
92382002-05-28 Richard M. Stallman <rms@gnu.org>
9239
9240 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
9241 way for blinked-off state and for a nonselected window.
9242
9243 * window.c (window_scroll_pixel_based): Don't call Fbolp;
9244 instead, see if the new start pos is at beginning of line.
9245
9246 * fileio.c (Fwrite_region): If START is a string, don't
9247 make any annotations.
9248
9249 * eval.c (syms_of_eval): Doc fix.
9250
92512002-05-28 Colin Walters <walters@debian.org>
9252
9253 * emacs.c (USAGE1): Add --no-splash.
9254 (standard_args): Ditto.
9255
92562002-05-28 Colin Walters <walters@gnu.org>
9257
9258 * lread.c (readchar_count): New variable.
9259 (readchar): Increment it.
9260 (unreadchar): Decrement it.
9261 (read_multibyte): Decrement it.
9262 (Vread_with_symbol_positions): New variable.
9263 (Vread_symbol_positions_list): New variable.
9264 (read_internal_start): New function, created from Fread and
9265 Fread_from_string. Handle Vread_symbol_positions_list and
9266 Vread_with_symbol_positions.
9267 (readevalloop, Fread, Fread_from_string): Use it.
9268 (read1): Use readchar_count to add symbol positions to
9269 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
9270 (syms_of_lread): DEFVAR_LISP and initialize them.
9271
9272 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
9273 (substitute_object_recurse, substitute_object_in_subtree)
9274 (substitute_in_interval): Prototype.
9275 (read_multibyte): Return c if it's less than zero.
9276
92772002-05-28 Kim F. Storm <storm@cua.dk>
9278
9279 * fileio.c (Fread_file_name_internal): Added brute-force
9280 speed up for using predicate file-directory-p.
9281
92822002-05-28 Kim F. Storm <storm@cua.dk>
9283
9284 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
9285 New variables.
9286 (syms_of_fileio): DEFVAR_LISP them.
9287 (read_file_name_cleanup): New unwind function.
9288 (Fread_file_name_internal): Only return completions satifying
9289 Vread_file_name_predicate. Temporarily unwind protect and rebind
9290 default-directory while checking completions against the predicate.
9291 (Fread_file_name): Added PREDICATE argument. Specbind it to
9292 Vread_file_name_predicate during completion.
9293 Call Vread_file_name_function to read the file name if non-nil.
9294
9295 * lisp.h (Fread_file_name): Now has 6 args.
9296
9297 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
9298 predicate for Fread_file_name when reading directory name.
9299 Supply Qnil for predicate in other calls to Fread_file_name.
9300
93012002-05-26 Miles Bader <miles@gnu.org>
9302
9303 * term.c (tty_capable_p): New function.
9304 * dispextern.h (tty_capable_p): New function declaration.
9305 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
9306 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
9307
93082002-05-23 Stefan Monnier <monnier@cs.yale.edu>
9309
9310 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
9311 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
9312 (Vwrite_region_annotate_functions): Docstring fix.
9313
93142002-05-23 Kim F. Storm <storm@cua.dk>
9315
9316 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
9317 phys_cursor's hpos is overwritten. This is still not completely
9318 correct, as it doesn't really make sense to use hpos at all to
9319 get the cursor glyph (as that is relative to the width of the
9320 characters on the line, which may have changed during the update).
9321
93222002-05-22 Jason Rumney <jasonr@gnu.org>
9323
9324 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
9325 Lisp_Object.
9326 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
9327 Use modified enumfont_t struct.
9328
9329 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
9330
9331 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
9332 Handle the `hbar' cursor type.
9333 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
9334
9335 * w32fns.c (Qhbar): New variable.
9336 (x_specified_cursor_type): Use it.
9337
93382002-05-21 Ken Raeburn <raeburn@gnu.org>
9339
9340 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
9341 now, when the address is needed.
9342
93432002-05-21 Colin Walters <walters@gnu.org>
9344
9345 * Makefile.in (shortlisp): Add font-core.el.
9346
93472002-05-20 Richard M. Stallman <rms@gnu.org>
9348
9349 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
9350
9351 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
9352 equivalent key bindings here.
9353
93542002-05-20 Ken Raeburn <raeburn@gnu.org>
9355
9356 Change symbol structure to contain a lisp object for the symbol
9357 name:
9358 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
9359 object field named "xname".
9360 (SYMBOL_NAME): New macro.
9361 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
9362 name field.
9363 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
9364 (mark_object, gc_sweep): Use symbol xname field and XSTRING
9365 instead of name field.
9366 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
9367 SYMBOL_NAME instead of XSYMBOL and name field.
9368 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
9369 instead of XSYMBOL and name field.
9370 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
9371 and SYMBOL_NAME instead of XSYMBOL and name field.
9372 * coding.c (Fread_coding_system, code_convert_region1)
9373 (code_convert_string1, code_convert_string_norecord)
9374 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
9375 XSYMBOL and name field.
9376 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
9377 (Fmake_variable_buffer_local, Fmake_local_variable)
9378 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
9379 of XSYMBOL and name field.
9380 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
9381 XSYMBOL and name field.
9382 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
9383 instead of XSYMBOL and name field.
9384 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
9385 XSYMBOL and name field.
9386 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
9387 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
9388 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
9389 instead of XSYMBOL and name field.
9390 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
9391 (parse_modifiers, apply_modifiers, Fevent_convert_list)
9392 (parse_solitary_modifier, Fexecute_extended_command):
9393 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
9394 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
9395 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
9396 of XSYMBOL and name field.
9397 (describe_command, describe_translation): Use SYMBOL_NAME and
9398 assignment instead of XSYMBOL and name field and XSETSTRING.
9399 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
9400 instead of XSYMBOL and name field.
9401 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
9402 name field and XSETSTRING.
9403 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
9404 of XSYMBOL and name field.
9405 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
9406 assignment instead of XSYMBOL and name field and XSETSTRING.
9407 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
9408 XSTRING instead of XSYMBOL and name field.
9409 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
9410 and XSTRING instead of XSYMBOL and name field.
9411 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
9412 and XSTRING instead of XSYMBOL and name field.
9413 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
9414 XSTRING instead of XSYMBOL and name field.
9415 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
9416 of XSYMBOL and name field.
9417 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
9418 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
9419
94202002-05-19 Ken Raeburn <raeburn@gnu.org>
9421
9422 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
9423 and XCDR real rvalues in most configurations.
9424
9425 * buffer.c (fix_overlays_in_range, fix_overlays_before):
9426 Don't take the address of the cdr part of a cons cell; instead, track
9427 the parent cell and call XSETCDR, or set the variable for the head
9428 of the list if we haven't started down the list yet.
9429
94302002-05-19 Richard M. Stallman <rms@gnu.org>
9431
9432 * doc.c (reread_doc_file): Don't ask for confirmation.
9433
94342002-05-18 Jason Rumney <jasonr@gnu.org>
9435
9436 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
9437 (xbm_load_image): Use it.
9438 (xbm_load): Ditto.
9439 (xbm_read_bitmap_data): Reverted to xfns.c version.
9440 From David Ponce <david@dponce.com>.
9441
94422002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
9443
9444 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
9445 2.02 and later.
9446
94472002-05-16 Juanma Barranquero <lektu@terra.es>
9448
9449 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
9450
94512002-05-15 Stefan Monnier <monnier@cs.yale.edu>
9452
9453 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
9454 meaningful test.
9455 (read_char_minibuf_menu_prompt): Fix typo.
9456
94572002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
9458
9459 * eval.c (Fcommandp): Doc fix.
9460
94612002-05-13 Stefan Monnier <monnier@cs.yale.edu>
9462
9463 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
9464 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
9465 (Fset_keymap_parent): Gcpro a bit more.
9466 (access_keymap): Gcpro around meta_map call and around the main loop.
9467 (get_keyelt): Gcpro when following indirect references.
9468 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
9469 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
9470 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
9471 Remove useless ad-hoc remap code.
9472
94732002-05-13 Richard M. Stallman <rms@gnu.org>
9474
9475 * search.c (search_buffer): Give up boyer moore search if inverse
9476 translation change charset_base.
9477
94782002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
9479
9480 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
9481 characters is carried over from the previous block of text, adjust
9482 coding->produced to account for the extra character.
9483
94842002-05-11 Andreas Schwab <schwab@suse.de>
9485
9486 * coding.c (intersection): Keep the elements of the returned list
9487 in the same order as in the first list.
9488
94892002-05-11 Kim F. Storm <storm@cua.dk>
9490
9491 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
9492 only update cmm_size if realloc actually succeeds.
9493 Testing with initial size of 2 elements revealed that using
9494 realloc on GNU/Linux would cause a random trap in xmalloc
9495 later on, so I rewrote the code to use malloc/bcopy/free instead
9496 of realloc.
9497
94982002-05-10 Jason Rumney <jasonr@gnu.org>
9499
9500 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
9501
95022002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
9503
9504 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
9505 parens, to ensure correct evaluation order.
9506
95072002-05-10 Kim F. Storm <storm@cua.dk>
9508
9509 * keymap.c (Vemulation_mode_map_alists): New variable.
9510 (syms_of_keymap): DEFVAR_LISP it.
9511 (current_minor_maps): Process keymap alists in that list before
9512 minor-mode-overriding-map-alist and minor-mode-map-alist.
9513
95142002-05-09 Richard M. Stallman <rms@gnu.org>
9515
9516 * search.c (Freplace_match): Doc fix.
9517
95182002-05-09 Kim F. Storm <storm@cua.dk>
9519
9520 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
9521 Enlarge cursor rectangle drawn around image with non-zero relief.
9522
9523 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
9524 Enlarge cursor rectangle drawn around image with non-zero relief.
9525
9526 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
9527 Enlarge cursor rectangle drawn around image with non-zero relief.
9528
95292002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
9530
9531 * xselect.c (lisp_data_to_selection_data): Don't set selection
9532 type if comes from the Lisp object's car. If the selection
9533 contains a pure ASCII text, always return QSTRING as its type.
9534
95352002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9536
9537 * mac.c (mac-cut-function): Doc fix.
9538
95392002-05-05 Richard M. Stallman <rms@gnu.org>
9540
9541 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
9542
95432002-05-04 Jason Rumney <jasonr@gnu.org>
9544
9545 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
9546 for event-click-count.
9547
9548 * process.c (init_process): Only add server subfeature if we can
9549 use non-blocking I/O.
9550
95512002-05-04 Andrew Choi <akochoi@shaw.ca>
9552
9553 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
9554 repeatedly.
9555
95562002-05-03 Jason Rumney <jasonr@gnu.org>
9557
9558 * process.c (Fmake_network_process): Only support server sockets
9559 when we can make them non-blocking.
9560
9561 * s/ms-w32.h (HAVE_SELECT): Define.
9562
9563 * w32.h (FILE_NDELAY): New flag.
9564
9565 * w32.c (sys_getpeername, fcntl): New functions.
9566 (_sys_read_ahead): Temporarily block on non-blocking sockets.
9567
9568 * w32proc.c: include sys/file.h.
9569
95702002-05-03 Colin Walters <walters@verbum.org>
9571
9572 * callproc.c (Vgame_score_directory): Renamed to
9573 Vshared_game_score_directory.
9574
95752002-04-30 Richard M. Stallman <rms@gnu.org>
9576
9577 * s/gnu.h [emacs]: Include stdio.h.
9578 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
9579
9580 * eval.c (do_autoload): Error if called while preparing to dump.
9581
9582 * fns.c (Frequire): Error if need to load while preparing to dump.
9583
95842002-04-28 Colin Walters <walters@verbum.org>
9585
9586 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
9587 Default to "~/.emacs.d/games".
9588
95892002-04-29 Stefan Monnier <monnier@cs.yale.edu>
9590
9591 * lread.c (openp): Change arg exec_only to predicate.
9592 (build_load_history): Use XCAR/XCDR.
9593 (Flocate_file_internal): New fun.
9594 (syms_of_lread): Defsubr it.
9595 (Fload): Update call to openp.
9596
9597 * lisp.h (openp): Update prototype.
9598
9599 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
9600 * w32proc.c (sys_spawnve):
9601 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
9602 * w32.c (check_windows_init_file):
9603 * sound.c (Fplay_sound_internal):
9604 * process.c (Fstart_process):
9605 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
9606 * mac.c (run_mac_command):
9607 * emacs.c (init_cmdargs):
9608 * callproc.c (Fcall_process): Update call to openp.
9609
9610 * textprop.c (remove_properties): Don't use XCAR without CONSP.
9611
9612 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
9613
96142002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9615
9616 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
9617 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
9618
96192002-04-28 Richard M. Stallman <rms@gnu.org>
9620
9621 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
9622
9623 * eval.c (Fcommandp): New arg for_call_interactively.
9624 * lisp.h (Fcommandp): Declare new arg.
9625
96262002-04-28 Jason Rumney <jasonr@gnu.org>
9627
9628 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
9629
9630 * w32.c (stat, fstat): Use file index information to generate
9631 inodes for directories where available.
9632
96332002-04-26 Andrew Choi <akochoi@shaw.ca>
9634
9635 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
9636 [HAVE_CARBON]: Include Mac object files.
9637
9638 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
9639 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
9640 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
9641 MAC_OSX, and MAC_OS instead of macintosh.
9642
9643 * editfns.c [MAC_OS8]: Include stdio.h.
9644
9645 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
9646
9647 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
9648 Apple Monaco.
9649
9650 * process.c: Declare QCfamily and QCfilter as extern.
9651 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
9652 calling select.
9653
9654 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
9655
9656 * tparam.c [MAC_OSX]: Don't define BC and UP.
9657
9658 * config.in [HAVE_CARBON]: Add.
9659
9660 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
9661 Move here from mac/src and mac/inc.
9662
9663 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
9664
96652002-04-26 Gerd Moellmann <gerd@gnu.org>
9666
9667 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
9668 Compute phys_cursor_width from the x position returned
9669 by x_draw_glyhs, which is cheaper.
9670 (x_display_and_set_cursor): Compute the buffer-local value
9671 of `cursor-in-non-selected-windows' only when needed.
9672
96732002-04-25 Gerd Moellmann <gerd@gnu.org>
9674
9675 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
9676 cursor on a stretch glyph has a width that depends on
9677 x_stretch_cursor_p.
9678
96792002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9680
9681 * abbrev.c (abbrev-start-location): Doc fix.
9682
9683 * indent.c (Fvertical_motion): Fix last change.
9684
96852002-04-25 Gerd Moellmann <gerd@gnu.org>
9686
9687 * indent.c (Fvertical_motion): Move to the start of the line
9688 containing PT before moving up or down.
9689
96902002-04-24 Gerd Moellmann <gerd@gnu.org>
9691
9692 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
9693 case of writing a whole row, more or less analogous to the case of
9694 writing only parts of a row.
9695
9696 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
9697 0 for NO_CURSOR.
9698
9699 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
9700
97012002-04-23 Colin Walters <walters@verbum.org>
9702
9703 * buffer.c (syms_of_buffer): Doc fix.
9704
97052002-04-23 Gerd Moellmann <gerd@gnu.org>
9706
9707 * xterm.c (notice_overwritten_cursor): Handle the special case
9708 of the cursor being in the first blank non-text line at the
9709 end of a window.
9710
9711 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
9712 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
9713 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
9714 bar cursors only, to make phys_cursor_width contain what its name
9715 suggests.
9716 (notice_overwritten_cursor): Consider the cursor image erased if
9717 the output area intersects the cursor image in y-direction.
9718
97192002-04-23 Simon Marshall <simon@gnu.org>
9720
9721 * xfns.c (x_set_mouse_color): Change default for cross_cursor
9722 to XC_hand2.
9723
97242002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9725
9726 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
9727
97282002-04-22 Kim F. Storm <storm@cua.dk>
9729
9730 * textprop.c (remove_properties): Fixed trap for malformed plist.
9731
97322002-04-22 Richard M. Stallman <rms@gnu.org>
9733
9734 * cmds.c (Fend_of_line): Handle intangible text in mid line.
9735
9736 * window.c (make_window): Initialize height_fixed_p,
9737 last_cursor_off_p, and p->cursor_off_p slots.
9738
97392002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9740
9741 * fns.c (use-dialog-box): Doc fix.
9742
97432002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9744
9745 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
9746 variables `row', `i' and `area'.
9747 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
9748 toolkit library.
9749
97502002-04-19 Stefan Monnier <monnier@cs.yale.edu>
9751
9752 * xfaces.c (clear_font_table): Don't free the default font of
9753 a frame even if it's on another display.
9754 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
9755 that could be Qt.
9756
97572002-04-19 Juanma Barranquero <lektu@terra.es>
9758
9759 * indent.c (Fmove_to_column): Remove unused local variable
9760 `next_boundary_byte'.
9761 (current_column_1): Likewise.
9762
97632002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
9764
9765 * msdos.c (Qhbar): New variable.
9766 (syms_of_msdos): Intern and staticpro it.
9767 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
9768 cursor type.
9769
97702002-04-19 Dave Lambert <dlambert@acm.org>
9771
9772 Theses change implement an underscore-like (`hbar') cursor.
9773
9774 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
9775
9776 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
9777 Handle the `hbar' cursor type.
9778 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
9779
9780 * xfns.c (Qhbar): New variable.
9781 (syms_of_xfns): Intern and staticpro it.
9782 (x_specified_cursor_type): Handle `hbar' cursor.
9783
9784 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
9785 not defined.
9786
97872002-04-18 Richard M. Stallman <rms@gnu.org>
9788
9789 * textprop.c (remove_properties): New arg LIST allows scanning
9790 either a list or a plist.
9791 (interval_has_some_properties_list): New function, like
9792 interval_has_some_properties using list instead of plist.
9793 All callers changed.
9794 (Fremove_list_of_text_properties): New function.
9795 (syms_of_textprop): Defsubr it.
9796
97972002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
9798
9799 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
9800
98012002-04-17 Juanma Barranquero <lektu@terra.es>
9802
9803 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
9804
98052002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
9806
9807 * window.c (coordinates_in_window): Don't report on margin area
9808 if its width is zero.
9809
98102002-04-16 Jason Rumney <jasonr@gnu.org>
9811
9812 * w32fns.c (Fx_file_dialog): Decode file name before using.
9813
9814 * w32term.c (construct_drag_n_drop): Likewise.
9815
98162002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
9817
9818 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
9819 store load-history in pure space.
9820
9821 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
9822
98232002-04-16 Stefan Monnier <monnier@cs.yale.edu>
9824
9825 * xterm.c (Qlatin_1, Qutf_8): New vars.
9826 (syms_of_xterm): Initialize them.
9827 (XTread_socket): Eliminate incorrect optimization that tried to avoid
9828 decoding the output of X*LookupString.
9829 Always use latin-1 to decode the output of XLookupString.
9830 Try Xutf8LookupString if XmbLookupString failed.
9831
9832 * region-cache.c (new_region_cache): Use BEG.
9833
98342002-04-16 Gerd Moellmann <gerd@gnu.org>
9835
9836 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
9837 configuration files.
9838 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
9839 returns 0.
9840
98412002-04-15 Andreas Schwab <schwab@suse.de>
9842
9843 * config.in: Regenerated using autoheader.
9844
9845 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
9846 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
9847 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
9848 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
9849 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
9850 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
9851 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
9852 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
9853 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
9854 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
9855 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
9856 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
9857 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
9858 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
9859 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
9860 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
9861 STACK_DIRECTION, now set by autoconf.
9862
98632002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9864
9865 * dispnew.c (marginal_area_string): Sort arguments.
9866
9867 * dispextern.h (marginal_area_string): Add prototype.
9868
98692002-04-13 Richard M. Stallman <rms@gnu.org>
9870
9871 * fileio.c (Finsert_file_contents):
9872 Don't call temp_output_buffer_setup--do just part, by hand.
9873
9874 * coding.c (run_pre_post_conversion_on_str):
9875 Don't call temp_output_buffer_setup--do just part, by hand.
9876
9877 * keyboard.c (command_loop_1): Don't call start_hourglass
9878 or cancel_hourglass when executing a macro.
9879
9880 * marker.c (count_markers): New function.
9881
9882 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
9883 grow without limit. Move recently used elements to the front.
9884
98852002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
9886
9887 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
9888
98892002-04-12 Gerd Moellmann <gerd@gnu.org>
9890
9891 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
9892 rows marginal areas.
9893 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
9894 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
9895
9896 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
9897
98982002-04-12 Dave Love <fx@gnu.org>
9899
9900 * dispnew.c (marginal_area_string): New.
9901
9902 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
9903 (Qleft_margin, Qright_margin): Declare.
9904 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
9905
9906 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
9907 note_mode_line_highlight and extended.
9908
9909 * keyboard.c (Qleft_margin, Qright_margin): Declare.
9910 (make_lispy_event): Deal with mouse events in margins.
9911
99122002-04-12 Stefan Monnier <monnier@cs.yale.edu>
9913
9914 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
9915
9916 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
9917 than deactivating the mark if tmm is set to `lambda'.
9918 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
9919 Use a single event for HELP_EVENT.
9920 (Fexecute_extended_command): Save last_point_position.
9921
99222002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9923
9924 * lisp.h (Fpropertize): Add prototype.
9925
9926 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
9927
99282002-04-10 Colin Walters <walters@verbum.org>
9929
9930 * config.in: Add HAVE_SHARED_GAME_DIR.
9931
9932 * callproc.c: (Vgame_score_directory): New variable.
9933 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
9934
99352002-04-10 Richard M. Stallman <rms@gnu.org>
9936
9937 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
9938
99392002-04-09 Stefan Monnier <monnier@cs.yale.edu>
9940
9941 * minibuf.c (read_minibuf): Use empty_string.
9942 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
9943 Short-circuit the search as soon as it "failed".
9944 (Fall_completions): Allow lambda forms and lists of strings for alist.
9945 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
9946 when require_match is nil.
9947 (Ftest_completion): Rename from `test_completion' and export to elisp.
9948 Call the predicate also when alist is a list.
9949 Obey Vcompletion_regexp_list.
9950 (do_completion, Fminibuffer_complete_and_exit): Use it.
9951 (Fassoc_string): Rename from `assoc_for_completion'.
9952 Allow list of strings as well and export to elisp.
9953
99542002-04-08 Stefan Monnier <monnier@cs.yale.edu>
9955
9956 * puresize.h (BASE_PURESIZE): Increase to 900KB.
9957
99582002-04-08 Juanma Barranquero <lektu@terra.es>
9959
9960 * w32.c (sys_accept): Don't hide variable `s'.
9961
99622002-04-05 Gerd Moellmann <gerd@gnu.org>
9963
9964 * callint.c (Fcall_interactively): Use INTEGERP instead of
9965 NUMBERP for checking Vhistory_length.
9966
99672002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9968
9969 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
9970 Doc fix to reflect it.
9971
99722002-04-04 Richard M. Stallman <rms@gnu.org>
9973
9974 * xdisp.c (display_mode_element): New arg RISKY.
9975 Disregard text props found or specified within a variable
9976 that isn't marked risky-local-variable.
9977 (Qrisky_local_variable): New variable.
9978 (syms_of_xdisp): Init and staticpro it.
9979
99802002-04-04 Stefan Monnier <monnier@cs.yale.edu>
9981
9982 * undo.c (record_point): New fun.
9983 (record_delete, record_insert): Use it.
9984
99852002-04-03 Juanma Barranquero <lektu@terra.es>
9986
9987 * doc.c (Fdocumentation): Add missing parentheses.
9988 (Fdocumentation_property): Likewise.
9989
99902002-04-03 Stefan Monnier <monnier@cs.yale.edu>
9991
9992 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
9993 data is 0, just return nil.
9994
99952002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
9996
9997 * msdos.c (syms_of_msdos): Fix last change with
9998 mouse_autoselect_window.
9999
100002002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10001
10002 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
10003 mouse_autoselect_window.
10004
100052002-04-02 Stefan Monnier <monnier@cs.yale.edu>
10006
10007 * keyboard.c (make_lispy_event): Handle unknown keysyms together
10008 with system-specific keysyms. Use it also for unknown function keys.
10009
10010 * doc.c (reread_doc_file): Return whether reload was attempted.
10011 (Fdocumentation, Fdocumentation_property): Don't try to reload
10012 if the doc is 0 and only ask once.
10013
10014 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
10015
100162002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
10017
10018 * keyboard.c (read_char): If the event was Qselect_window,
10019 restore timer_idleness_start_time to its previous value.
10020
10021 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
10022
100232002-04-01 Stefan Monnier <monnier@cs.yale.edu>
10024
10025 * region-cache.c (new_region_cache): Use BEG.
10026
10027 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
10028 Use BEG and BEG_BYTE.
10029
10030 * doc.c (get_doc_string): Return nil if the location is wrong.
10031 (reread_doc_file): New fun.
10032 (Fdocumentation, Fdocumentation_property):
10033 Call it if get_doc_string fails.
10034 (Fsnarf_documentation): Make it work for a dumped Emacs.
10035
10036 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
10037 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
10038
10039 * charset.c (Fstring): Allow 0 arguments.
10040
10041 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
10042
10043 * process.c (DATAGRAM_CONN_P, list_processes_1)
10044 (Fprocess_datagram_address, Fset_process_datagram_address)
10045 (Fset_network_process_options, server_accept_connection):
10046 Fix some int/Lisp_Object confusions (thank you union types).
10047
100482002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10049
10050 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
10051
10052 * w32term.c: Likewise.
10053 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
10054
10055 * keyboard.c (Qselect_window): New symbol.
10056 (head_table): Use it.
10057 (keys_of_keyboard): Bound select-window event to handle-select-window.
10058 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
10059
10060 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
10061 (last_window): New variable.
10062 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
10063 (note_mouse_movement): Remove reimplemented code in #if 0.
10064 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
10065 Emacs windows.
10066
10067 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
10068
100692002-03-31 Gerd Moellmann <gerd@gnu.org>
10070
10071 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
10072 Callers changed.
10073
100742002-03-30 Richard M. Stallman <rms@gnu.org>
10075
10076 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
10077 loop whenever it stops making progress.
10078
10079 * widget.c (set_frame_size): Don't call change_frame_size.
10080
100812002-03-30 Gerd Moellmann <gerd@gnu.org>
10082
10083 * dispnew.c (direct_output_for_insert):
10084 Call mark_window_display_accurate.
10085
100862002-03-29 Jason Rumney <jasonr@gnu.org>
10087
10088 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
10089
100902002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
10091
10092 * Makefile.in (lread.o): Depend on coding.h.
10093
10094 * lread.c (openp, Fload): Encode the file name before passing it
10095 to `stat', `access', and `emacs_open'.
10096 (openp): GCPRO the encoded file name. Don't recompute Lisp
10097 strings unnecessarily.
10098
100992002-03-29 Kim F. Storm <storm@cua.dk>
10100
10101 * fns.c (Flax_plist_put): Doc fix.
10102
101032002-03-28 Miles Bader <miles@gnu.org>
10104
10105 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
10106
101072002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10108
10109 * process.c (set-network-process-options): Add usage.
10110 (make-network-process): Doc fix.
10111
101122002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
10113
10114 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
10115
101162002-03-26 Richard M. Stallman <rms@gnu.org>
10117
10118 * fns.c (Fsubstring_no_properties): New function.
10119 (Flax_plist_get, Flax_plist_put): New functions.
10120 (syms_of_fns): defsubr them.
10121
10122 * xdisp.c (update_menu_bar): Test only update_mode_lines;
10123 don't test or alter w->update_mode_line.
10124
10125 * window.c (Fdisplay_buffer): Doc fix.
10126
101272002-03-24 Richard M. Stallman <rms@gnu.org>
10128
10129 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
10130
101312002-03-24 Gerd Moellmann <gerd@gnu.org>
10132
10133 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
10134 (Fdefmacro): Handle `(declare ...)'.
10135 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
10136 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
10137
101382002-03-24 Jason Rumney <jasonr@gnu.org>
10139
10140 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
10141 (xbm_file_p): Add prototypes.
10142 (xbm_format, xbm_image_p): Sync with xfns.c.
10143 (reflect_byte): New function.
10144 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
10145 (xbm_load_image): Create bitmaps with a depth of 1.
10146 (init_xfns): Enable XBM images.
10147
101482002-03-23 Jason Rumney <jasonr@gnu.org>
10149
10150 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
10151 correctly. Do not pass up_modifier to keyboard buffer.
10152
10153 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
10154
101552002-03-22 Stefan Monnier <monnier@cs.yale.edu>
10156
10157 * Makefile.in (bootstrapclean): New target.
10158 (bootstrap-temacs, bootstrap-doc): Remove.
10159 (bootstrap-emacs): Use a bog-standard `temacs'.
10160 Don't bother to build a DOC file.
10161
10162 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
10163
10164 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
10165 in temacs even if !CANNOT_DUMP.
10166 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
10167
10168 * alloc.c (check_pure_size): Only output a warning.
10169
101702002-03-22 Jason Rumney <jasonr@gnu.org>
10171
10172 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
10173 supported.
10174
10175 * w32term.c (zv_bits): Declare as short, for word alignment.
10176 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
10177 (syms_of_w32term): Define x-use-underline-position-properties.
10178
10179 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
10180 (clear_image_cache): Block input, fix logic, clear matrices in
10181 all frames that share this cache.
10182
101832002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
10184
10185 * emacs.c (main): Update the Copyright year in the blurb printed
10186 by "emacs --version".
10187
10188 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
10189
10190 * xterm.c (XTread_socket): If XK_ISO_Lock and
10191 XK_ISO_Last_Group_Lock are defined, handle keysyms between
10192 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
10193
101942002-03-21 Kim F. Storm <storm@cua.dk>
10195
10196 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
10197 menu-bar bindings in keymap and local-map properties _are_ used.
10198 But try keymap property first in accordance with 2002-01-03 patch.
10199 Added comment describing why this is not always reliable.
10200 (tool_bar_items): Ditto for tool-bar.
10201
102022002-03-21 Jason Rumney <jasonr@gnu.org>
10203
10204 * w32fns.c (x_clear_image_1): Disable color table code.
10205
102062002-03-21 Kim F. Storm <storm@cua.dk>
10207
10208 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
10209 removed the wrong version of the DEFUN macro; fixed it.
10210
10211 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
10212 Fmember rather than Fmemq).
10213 (Fprovide): Check that subfeatures is a list.
10214
10215 * process.c (QCfeature, QCdatagram): Removed variables.
10216 (QCtype, Qdatagram): New variables.
10217 (network_process_featurep): Removed function.
10218 (Fmake_network_process): Removed :feature check.
10219 Use :type 'datagram instead of :datagram t to create a datagram
10220 socket. This allows us to add other connection types (e.g. raw
10221 sockets) later in a consistent manner.
10222 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
10223 supported subfeatures for feature make-network-process.
10224 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
10225 Intern and staticpro QCtype and Qdatagram.
10226 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
10227
10228 * xfns.c: (QCtype): Remove duplicate declaration and
10229 initialization (is now declared in process.c).
10230
10231 * w32fns.c: (QCtype): Remove duplicate declaration and
10232 initialization (is now declared in process.c).
10233
102342002-03-21 Richard M. Stallman <rms@gnu.org>
10235
10236 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
10237 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
10238 when jumping to `fail' to avoid undoing reg changes in the
10239 last iteration of the loop.
10240 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
10241
10242 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
10243 Depend on process.h.
10244
102452002-03-20 Jason Rumney <jasonr@gnu.org>
10246
10247 Most of the following changes are still conditional on HAVE_IMAGES
10248 which is not set by default on Windows.
10249
10250 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
10251
10252 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
10253 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
10254 (four_corners_best, x_clear_image_1, x_clear_image)
10255 (x_alloc_image_color, postprocess_image)
10256 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
10257 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
10258 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
10259
10260 * w32gui.h (struct XImage): Define.
10261
10262 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
10263 extract mouse co-ordinates.
10264
102652002-03-20 Jason Rumney <jasonr@gnu.org>
10266
10267 * w32.c (init_winsock): Dynamically load new server and UDP
10268 socket functions.
10269 (socket_to_fd): New function.
10270 (sys_socket): Use it.
10271 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
10272 (sys_recvfrom, sys_sendto): New wrapper functions.
10273
10274 * process.c (QCfamily, QCfilter): Remove duplicate declaration
10275 and initialization.
10276
10277 * makefile.w32-in (LIBS): Remove $(WSOCK32).
10278
102792002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
10280
10281 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
10282 Don't use "sun" as a variable, it's a predefined constant on Sun
10283 machines.
10284
102852002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10286
10287 * bytecode.c (Fbyte_code): Revert last change.
10288
102892002-03-19 Kim F. Storm <storm@cua.dk>
10290
10291 * makefile.w32-in (LIBS): Add $(WSOCK32).
10292 From David Ponce <dponce@voila.fr>.
10293
102942002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10295
10296 * process.c (wait_reading_process_input): Move variables `pname'
10297 and `pnamelen' down where they are used.
10298
10299 * bytecode.c (Fbyte_code): Discard unused computed value to
10300 prevent gcc warning.
10301
10302 * lisp.h (Fplist_member): Add prototype.
10303
103042002-03-18 Kim F. Storm <storm@cua.dk>
10305
10306 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
10307 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
10308
10309 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
10310 Remove explicit GNU_LINUX settings for datagram support.
10311
103122002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10313
10314 * process.c (Fmake_network_process): Remove unused variable `sa'.
10315 Doc fix. Add usage:.
10316 (set_socket_options): Remove unused variables `optnum' and `opttype'.
10317
103182002-03-17 Richard M. Stallman <rms@gnu.org>
10319
10320 * xdisp.c (cursor_type_changed): New variable.
10321 (redisplay_internal): Redisplay all windows if cursor_type_changed.
10322 Clear it when clearing windows_or_buffers_changed.
10323 (try_cursor_movement, redisplay_window, try_window_id)
10324 (try_window_reusing_current_matrix): Test cursor_type_changed
10325 along with windows_or_buffers_changed.
10326
10327 * window.h (cursor_type_changed): New variable.
10328
10329 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
10330 not update_mode_lines, and always set it to 1.
10331
10332 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
10333 if no frames needed redrawing.
10334
103352002-03-17 Kim F. Storm <storm@cua.dk>
10336
10337 The following changes add support for network server processes,
10338 datagram connections, and local (unix) sockets.
10339
10340 * process.h (struct Lisp_Process): New member log.
10341 Doc fix: Member command used to indicate stopped network process.
10342 Doc fix: Member childp contains plist for network process.
10343 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
10344
10345 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
10346 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
10347 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
10348 New variables.
10349 (NETCONN1_P): New macro.
10350 (DATAGRAM_SOCKETS): New conditional symbol.
10351 (datagram_address): New array.
10352 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
10353 (status_message): Use concat3.
10354 (Fprocess_status): Add `listen' status to doc string. Return `stop'
10355 for a stopped network process.
10356 (Fset_process_buffer): Update contact plist for network process.
10357 (Fset_process_filter): Ditto. Don't enable input for stopped
10358 network processes. Server must listen, even if filter is t.
10359 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
10360 New functions.
10361 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
10362 (Fprocess_contact): Added KEY argument. Handle datagrams.
10363 (list_processes_1): Optionally show only processes with the query
10364 on exit flag set. Dynamically adjust column widths. Omit tty
10365 column if not needed. Report stopped network processes.
10366 Identify server and datagram network processes.
10367 (Flist_processes): New optional arg `query-only'.
10368 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
10369 (conv_lisp_to_sockaddr, set_socket_options)
10370 (network_process_featurep, unwind_request_sigio): New helper functions.
10371 (Fprocess_datagram_address, Fset_process_datagram_address):
10372 (Fset_network_process_options): New lisp functions.
10373 (Fopen_network_stream): Removed. Now defined in simple.el.
10374 (Fmake_network_process): New lisp function. Code is based on previous
10375 Fopen_network_stream, but heavily reworked with new property list based
10376 argument list, support for datagrams, server processes, and local
10377 sockets in addition to old client-only functionality.
10378 (server_accept_connection): New function.
10379 (wait_reading_process_input): Use it to handle incoming connects.
10380 Do not enable input on a new connection if process is stopped.
10381 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
10382 (send_process): Handle datagram sockets.
10383 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
10384 network process is indicated by setting command field to t .
10385 (Fprocess_send_eof): No-op if datagram connection.
10386 (Fstatus_notify): Don't read input for a stream server socket or a
10387 stopped network process.
10388 (init_process): Initialize datagram_address array.
10389 (syms_of_process): Intern and staticpro new variables, defsubr new
10390 functions.
10391
103922002-03-16 Jason Rumney <jasonr@gnu.org>
10393
10394 * w32fns.c (w32_to_all_x_charsets): Return correct type in
10395 startup case.
10396
103972002-03-16 Richard M. Stallman <rms@gnu.org>
10398
10399 * xdisp.c (redisplay_internal, redisplay_windows):
10400 Use list_of_error to call internal_condition_case_1.
10401 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
10402 so as to catch all errors with no possibility of debugger redisplay.
10403 (list_of_error): New variable.
10404 (syms_of_xdisp): Init and staticpro it.
10405
10406 * print.c (print_object): Delete `\ ' from printed rep of frame.
10407
104082002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
10409
10410 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
10411 until its implementation is fixed.
10412
104132002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10414
10415 * xfns.c (png_load): Remove unused variable `gamma_str'.
10416
104172002-03-14 Richard M. Stallman <rms@gnu.org>
10418
10419 * xfns.c (x_real_positions): Handle failure in XQueryTree.
10420
104212002-03-14 Miles Bader <miles@gnu.org>
10422
10423 * intervals.c (adjust_for_invis_intang): New function.
10424 (set_point_both): Use `adjust_for_invis_intang' to do most of the
10425 work for dealing with invisible+intangible regions. Do so before
10426 and after both forward and backward movements, to handle both
10427 front-sticky and rear-sticky cases.
10428 * textprop.c (text_property_stickiness): Function moved here from
10429 `editfns.c'.
10430 * intervals.h (text_property_stickiness): New declaration.
10431 * editfns.c (char_property_eq): Function removed.
10432 (text_property_stickiness): Function moved to `textprop.c'.
10433
104342002-03-13 Jason Rumney <jasonr@gnu.org>
10435
10436 * config.in: Add STRFTIME_NO_POSIX2.
10437
10438 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
10439 and %OX when underlying strftime does not.
10440
104412002-03-13 Stefan Monnier <monnier@cs.yale.edu>
10442
10443 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
10444 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
10445 line) to avoid annoying flicker.
10446 (xm_scroll_callback): Get rid of the now unnecessary kludge.
10447 (XTread_socket): Mark it static.
10448
10449 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
10450
104512002-03-13 Kim F. Storm <storm@cua.dk>
10452
10453 * puresize.h (BASE_PURESIZE): Increase to 775000.
10454
104552002-03-12 Juanma Barranquero <lektu@terra.es>
10456
10457 * editfns.c (syms_of_editfns): Fix typo.
10458
104592002-03-12 Gerd Moellmann <gerd@gnu.org>
10460
10461 * xsmfns.c: Include stdio.h because termhooks.h needs it.
10462 Include termopt.h for interrupt_input.
10463
104642002-03-11 Andreas Schwab <schwab@suse.de>
10465
10466 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
10467
104682002-03-11 Gerd Moellmann <gerd@gnu.org>
10469
10470 * xterm.c (note_mouse_movement): Put code for
10471 x_autoselect_window_p in #if 0.
10472
10473 * lread.c (Fload): Don't assume that message_with_string uses the
10474 string it is given like a C string.
10475
104762002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10477
10478 * xterm.h (x_session_check_input, x_session_initialize): Declared.
10479
10480 * xterm.c: (XTread_socket): Add call to x_session_check_input and
10481 x_session_have_connection.
10482 (x_initialize): Add call to x_session_initialize.
10483
10484 * termhooks.h (enum event_kind): Add save_session_event.
10485
10486 * keyboard.c: Add Emacs event save_session_event.
10487
10488 * emacs.c (main): Add call to syms_of_xsmfns.
10489
10490 * lisp.h: Declare syms_of_xsmfns as extern.
10491
10492 * config.in: Add HAVE_X_SM.
10493
10494 * Makefile.in (LIBXT): Add -lSM -lICE
10495 if HAVE_X_SM and not USE_X_TOOLKIT.
10496 (XOBJ): New file xsmfns.c added.
10497
10498 * xsmfns.c: New file for X session management.
10499
105002002-03-09 Jason Rumney <jasonr@gnu.org>
10501
10502 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
10503 read-only when setting modified time.
10504
105052002-03-08 Gerd Moellmann <gerd@gnu.org>
10506
10507 * xdisp.c (move_it_vertically_backward): At the end of the function,
10508 when moving forward by lines, treat terminal frames specially.
10509
10510 * keyboard.c (echo_char): Make sure to add a separator between
10511 keys even if echo_dash hasn't been called.
10512
10513 * xdisp.c: Use new string macros.
10514 (update_echo_area): Pass number of bytes to message3 instead of
10515 number of chars.
10516 (set_message_1): Don't access a string's size_byte directly.
10517 (decode_mode_spec_coding): Use number of bytes of eoltype string
10518 instead number of chars.
10519
10520 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
10521
105222002-03-08 Juanma Barranquero <lektu@terra.es>
10523
10524 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
10525 24-bit.
10526
105272002-03-06 Jason Rumney <jasonr@gnu.org>
10528
10529 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
10530
105312002-03-06 Gerd Moellmann <gerd@gnu.org>
10532
10533 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
10534 (cancel_echoing, echo_length, echo_truncate): Changed to
10535 work with new kboard definition.
10536 (echo_now): Use message3_nolog instead of message2_nolog.
10537
10538 * alloc.c (mark_kboards): Mark echo_string.
10539
10540 * keyboard.h (ECHOBUFSIZE): Removed.
10541 (struct kboard): Member echoptr removed, member echobuf renamed
10542 to echo_string.
10543
10544 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
10545 message3 instead of message2 to display the message using STRING's
10546 text properties.
10547
105482002-03-05 Andreas Schwab <schwab@suse.de>
10549
10550 * xdisp.c (hscroll_margin): Change to EMACS_INT.
10551
105522002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
10553
10554 * frame.c (default-frame-alist): Explain that setting it doesn't
10555 affect existing frames.
10556
105572002-03-05 Stefan Monnier <monnier@cs.yale.edu>
10558
10559 * indent.c (skip_invisible): Fix my brain fart.
10560
10561 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
10562
105632002-03-04 Stefan Monnier <monnier@cs.yale.edu>
10564
10565 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
10566 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
10567 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
10568 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
10569 and variables to use EMACS_INT instead of just int.
10570
10571 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
10572
105732002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
10574
10575 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
10576 environment, pass it down with corrected value.
10577
105782002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10579
10580 * lread.c (read_filtered_event): Do not call start_hourglass
10581 before returning.
10582
105832002-03-04 Juanma Barranquero <lektu@terra.es>
10584
10585 * w32term.c (x_display_and_set_cursor): Fix typo.
10586
105872002-03-03 Richard M. Stallman <rms@gnu.org>
10588
10589 * fileio.c (Fmake_temp_name): Doc fix.
10590
105912002-03-03 Gary Wong <gtw@gnu.org>
10592
10593 * termcap.c [!emacs]: Replace ospeed for building standalone
10594 libtermcap, for binary compatibility.
10595
10596 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
10597
105982002-03-03 Richard M. Stallman <rms@gnu.org>
10599
10600 * xrdb.c (file_p): Rename arg `path' to `filename'.
10601
10602 * abbrev.c (Fexpand_abbrev): Increment plist as use count
10603 only if it is an integer.
10604
10605 * xfns.c (png_load): Set screen_gamma based on f->gamma.
10606 If png_get_sRGB gives an answer, call png_set_gamma
10607 using the default image gamma value.
10608
10609 * lread.c (read1): When reading from a file, default string to
10610 multibyte only if it has some multibyte characters.
10611
10612 * print.c (print_object): Output multibyte chars 128...255
10613 using \x even if ! print_escape_multibyte.
10614
10615 * xdisp.c (display_mode_element): Move the places where
10616 bytepos, charpos, this, and lisp_string are set.
10617 Use lisp_string to set bytepos.
10618
10619 * xdisp.c (redisplay_internal):
10620 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
10621
10622 * xdisp.c (display_mode_element): Merge properties specified with
10623 :propertize onto those that come with the string.
10624
106252002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
10626
10627 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
10628 automatic-hscrolling. Users changed.
10629 <hscroll-margin>: Renamed from automatic-hscroll-margin.
10630 Users changed.
10631 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
10632
106332002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
10634
10635 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
10636
106372002-03-02 Kim F. Storm <storm@cua.dk>
10638
10639 * window.c (Fminibuffer_selected_window): New function.
10640 (syms_of_window): Defsubr it.
10641
106422002-03-01 Kim F. Storm <storm@cua.dk>
10643
10644 * window.h (struct window): New member phys_cursor_width.
10645
10646 * window.c (make_window, replace_window): Init phys_cursor_width.
10647
10648 * xterm.c (x_display_and_set_cursor): Blink box cursor using
10649 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
10650
10651 * w32term.c (x_display_and_set_cursor): Blink box cursor using
10652 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
10653
10654 * lisp.h (GCPRO6): New macro.
10655
10656 * process.c (Fopen_network_stream): Use GCPRO6.
10657
106582002-03-01 Kim F. Storm <storm@cua.dk>
10659
10660 * process.c (Qconnect, Qfailed): New variables.
10661 (syms_of_process): Intern and staticpro them.
10662 (Fprocess_status): Document connect and failed return values.
10663 [NON_BLOCKING_CONNECT]: New conditional.
10664 (connect_wait_mask, num_pending_connects): New variables.
10665 (status_message): Convert Qfailed status.
10666 (Fopen_network_stream): Added support for non-blocking connect.
10667 New optional args: filter, sentinel, non_blocking. Doc updated.
10668 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
10669 (deactivate_process): Handle pending non-blocking connect.
10670 (wait_reading_process_input): Poll for status of non-blocking
10671 connects. Exec sentinel directly when connect succeeds.
10672 (status_notify): Don't read process output if not yet connected.
10673
106742002-02-28 Kim F. Storm <storm@cua.dk>
10675
10676 * window.c: (minibuf_selected_window): Renamed from
10677 Vminibuf_selected_window. Users changed.
10678 (syms_of_window): Staticpro it.
10679
106802002-02-26 Kim F. Storm <storm@cua.dk>
10681
10682 The following changes add a new Vminibuf_selected_window variable
10683 which is similar to Vminibuf_scroll_window, but which is only set
10684 on entry to the minibuffer (from a non-minibuffer window):
10685
10686 * window.c: (Vminibuf_selected_window): New variable.
10687 (struct save_window_data): New member minibuf_selected_window.
10688 (Fset_window_configuration): Restore Vminibuf_selected_window.
10689 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
10690 Set minibuf_scroll_window member to nil if minibuf_level is 0.
10691 (compare_window_configurations): Compare minibuf_selected_window.
10692
10693 * window.h: (Vminibuf_selected_window): Declare extern.
10694
10695 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
10696 entry to minibuffer or on entry from a non-minibuffer window.
10697
10698 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
10699 Vminibuf_selected_window instead of Vminibuf_scroll_window.
10700
10701 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
10702 instead of Vminibuf_scroll_window when deciding in which window
10703 the region should be highlighted. Consequently, the region remains
10704 highlighteded even when a completion buffer is also displayed.
10705
107062002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
10707
10708 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
10709
10710 * xselect.c (Qcompound_text_with_extensions): Renamed from
10711 Qcompound_text_no_extensions.
10712 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
10713
107142002-02-26 Juanma Barranquero <lektu@terra.es>
10715
10716 * w32proc.c (syms_of_ntproc): Doc fix.
10717
107182002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10719
10720 * intervals.h: Include "dispextern.h" unconditionally.
10721
107222002-02-24 Jason Rumney <jasonr@gnu.org>
10723
10724 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
10725 and disp-table.elc.
10726 (lisp): Add emacs-lisp/backquote.elc.
10727
107282002-02-24 Kim F. Storm <storm@cua.dk>
10729
10730 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
10731 The validation of the event type was too strict as it didn't
10732 allow string events; buffer names are used in bindings for
10733 menu-bar-select-buffer (see `menu-bar-update-buffers').
10734
107352002-02-23 Kim F. Storm <storm@cua.dk>
10736
10737 The following changes rework my patch of 2002-02-06 which
10738 added command remapping by entering the commands directly into
10739 the keymaps. Now, command remapping uses an explicit `remap'
10740 prefix in the keymaps, i.e. [remap COMMAND].
10741
10742 * keymap.c (Qremap, remap_command_vector): New variables.
10743 (is_command_symbol): Removed function.
10744 (Fdefine_key): No longer accept a symbol for KEY.
10745 Added validation of [remap COMMAND] argument for KEY.
10746 The DEF is no longer required to be a symbol when remapping a command.
10747 (Fremap_command): New function to remap command through keymaps.
10748 (Flookup_key): Perform command remapping initiated by
10749 Fremap_command directly for speed.
10750 (Fkey_binding): Use Fremap_command for command remapping.
10751 (where_is_internal): Handle new command remapping representation.
10752 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
10753 staticpro them. Defsubr Fremap_command.
10754
10755 * keymap.h (Fremap_command): Declare extern.
10756 (is_command_symbol): Remove extern.
10757
10758 * keyboard.c (command_loop_1): Use Fremap_command for command
10759 remapping; now try command remapping for all symbols.
10760
107612002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
10762
10763 * coding.h (run_pre_post_conversion_on_str): Add prototype.
10764
107652002-02-23 Jason Rumney <jasonr@gnu.org>
10766
10767 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
10768 on the string before encoding it.
10769 (Fw32_get_clipboard_data): Run post-read-conversion on the string
10770 after decoding it.
10771
10772 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
10773
107742002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10775
10776 * w32term.c (enter_timestamp): Remove unused static variable to
10777 prevent warning.
10778
10779 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
10780
107812002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
10782
10783 * w16select.c (Fw16_get_clipboard_data): Fix last change.
10784
10785 * xselect.c (selection_data_to_lisp_data): Fix last change.
10786
107872002-02-22 Jason Rumney <jasonr@gnu.org>
10788
10789 * w32term.h (struct w32_output): New member menu_command_in_progress.
10790
10791 * w32menu.c (menubar_selection_callback): Free the menu and
10792 clear the menu_command_in_progress flag.
10793
10794 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
10795 (menu_free_timer): New variable.
10796 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
10797 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
10798 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
10799 menu command is in progress.
10800 <WM_COMMAND>: Set the menu_command_in_progress flag.
10801 Kill any menu_free_timer that is running.
10802
10803 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
10804 Call ExtTextOutA rather than ExtTextOut.
10805
108062002-02-22 Eli Zaretskii <eliz@gnu.org>
10807
10808 * puresize.h (BASE_PURESIZE): Increase to 755000.
10809
108102002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
10811
10812 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
10813 on the string before encoding it.
10814 (Fw16_get_clipboard_data): Run post-read-conversion on the string
10815 after decoding it.
10816
108172002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
10818
10819 Support for ICCCM Extended Segments in X selections:
10820
10821 * xselect.c <Qcompound_text_no_extensions>: New variable.
10822 (syms_of_xselect): Intern and staticpro it.
10823 (selection_data_to_lisp_data): Run post-read-conversion on decoded
10824 selection text.
10825 (lisp_data_to_selection_data): If next-selection-coding-system is
10826 compound-text-no-extensions, set the type of selection to be
10827 compound-text.
10828
10829 * xterm.h (x_encode_text): Update prototype.
10830
10831 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
10832 callers changed. If SELECTIONP is non-zero, run the
10833 pre-write-conversion function before encoding the selection text.
10834
108352002-02-21 Kim F. Storm <storm@cua.dk>
10836
10837 * frame.c (syms_of_frame): Change mouse-highlight default to t.
10838
10839 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
10840 Correct composing of language-change event.
10841
108422002-02-20 Kim F. Storm <storm@cua.dk>
10843
10844 * keyboard.c (menu_bar_items): Don't include keymap or local-map
10845 bindings at PT when building menu (the menu is not updated often
10846 enough for this to work reliable).
10847 (tool_bar_items): Likewise.
10848 (current_active_maps): Removed unused (and buggy) function.
10849
108502002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10851
10852 * xfns.c (gif_load): Use correct width and height for GIF images.
10853
108542002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
10855
10856 * floatfns.c (Fatan): Accept an optional second arg and call
10857 atan2 if passed 2 args.
10858
108592002-02-18 Jason Rumney <jasonr@gnu.org>
10860
10861 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
10862
108632002-02-17 Jason Rumney <jasonr@gnu.org>
10864
10865 * w32term.c (x_autoselect_window_p): New variable.
10866 (syms_of_w32term): DEFVAR_BOOL and initialize it.
10867 (note_mouse_movement): Use it.
10868
10869 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
10870
10871 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
10872
10873 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
10874 New variables.
10875 (syms_of_w32fns): Intern and staticpro them.
10876 (x_frame_parms) <"fullscreen">: New parameter.
10877 (x_fullscreen_move, x_set_fullscreen): New functions.
10878 (x_set_frame_parameters): Support Qfullscreen.
10879 (x_real_positions): Save x/y_pixels_diff frame params.
10880 (x_figure_window_size): Support full-screen frames.
10881 (Fx_create_frame): Default the fullscreen parameter.
10882
10883 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
10884 (x_fullscreen_adjust): New functions.
10885 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
10886 fullscreen. Call x_check_fullscreen_move, and set the
10887 want_fullscreen member of output_data.w32
10888 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
10889
10890 * w32term.h: New enum for FULLSCREEN_* constants.
10891 (struct w32_output): New members want_fullscreen, x_pixels_diff,
10892 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
10893 (x-fullscreen-adjust): New prototype.
10894
108952002-02-17 Kim F. Storm <storm@cua.dk>
10896
10897 * frame.c: (Vmouse_highlight): New variable.
10898 (syms_of_frame): DEFVAR_LISP it.
10899
10900 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 10901
048addec 10902 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 10903
048addec
JD
10904 * xterm.c (disable_mouse_highlight): Removed variable.
10905 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
10906 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
10907 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
10908 and on after keyboard input.
10909 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 10910
048addec 10911 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 10912
048addec
JD
10913 * msdos.c (disable_mouse_highlight): Removed variable.
10914 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
10915 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
10916 (internal_terminal_init): Initialize mouse_face_hidden.
10917 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
10918 and on after keyboard input.
4f1b1854 10919
048addec 10920 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 10921
048addec
JD
10922 * w32term.c (disable_mouse_highlight): Removed variable.
10923 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
10924 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
10925 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
10926 and on after keyboard input.
10927 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 10928
048addec 109292002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 10930
048addec
JD
10931 * msdos.c (last_mouse_window): New variable.
10932 (dos_rawgetc): Fix last change--if the mouse is in the same window
10933 as recorded in last_mouse_window, don't select this window.
5cb6905d 10934
048addec 10935 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 10936
048addec
JD
10937 * msdos.c (x_autoselect_window_p): New variable.
10938 (syms_of_msdos): Defvar it.
10939 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
10940 which the last mouse movement occured, unless it is already selected.
437dfb9f 10941
048addec
JD
10942 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
10943 New variables.
10944 (syms_of_xdisp): DEVFAR them.
10945 (hscroll_window_tree): Use automatic_hscroll_margin and
10946 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 10947
048addec 109482002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 10949
048addec
JD
10950 * xterm.c (x-autoselect-window): New variable.
10951 (note_mouse_movement): Use it.
9f696a00 10952
048addec 10953 * keyboard.c: Do not include "systime.h" twice.
d57966d7 10954
048addec 109552002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 10956
048addec 10957 * puresize.h (BASE_PURESIZE): Increase to 9/5.
d57966d7 10958
048addec 10959 * alloc.c (NSTATICS): Increase to 1280.
74779f52 10960
048addec 109612002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 10962
048addec 10963 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 10964
048addec
JD
10965 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
10966 (Vx_super_keysym): New variables.
10967 (syms_of_xterm): DEFVAR_LISP them.
10968 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
10969 variables to determine which keys to use for the various modifiers.
a474d59c 10970
048addec 109712002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 10972
048addec
JD
10973 * window.c: (Vmode_line_in_non_selected_windows): Removed.
10974 (mode_line_in_non_selected_windows): New variable.
10975 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 10976
048addec
JD
10977 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
10978 Use mode_line_in_non_selected_windows.
10979 (mode_line_in_non_selected_windows): Declare extern.
10980 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 10981
048addec 109822002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 10983
048addec
JD
10984 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
10985 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
10986 (Fclear_this_command_keys): Doc fixes.
2d10309f 10987
048addec
JD
10988 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
10989 (update_face_from_frame_parameter): Increment face_change_count
10990 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 10991
048addec
JD
10992 * xdisp.c (QCpropertize): New variable.
10993 (mode_line_proptrans_alist): New variable.
10994 (display_mode_element): New arg PROPS; all calls changed.
10995 Implement this, for strings.
10996 Handle literal output of strings by sharing the
10997 main-line code for strings, using local var `literal'.
10998 Handle :propertize feature.
10999 (syms_of_xdisp): Initialze and staticpro QCpropertize and
11000 mode_line_proptrans_alist.
0b1e6b54 11001
048addec 110022002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 11003
048addec
JD
11004 * window.c: (Vmode_line_in_non_selected_windows): New variable.
11005 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 11006
048addec
JD
11007 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
11008 (CURRENT_MODE_LINE_FACE_ID): Use it.
11009 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 11010
048addec
JD
11011 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
11012 to get mode line face.
e17144de 11013
048addec 110142002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 11015
048addec
JD
11016 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
11017 variables; cus-start.el doesn't need them anymore.
44368f8f 11018
048addec 110192002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 11020
048addec
JD
11021 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
11022 reduction. This fixes a display problem where stray newlines were
11023 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 11024
048addec 110252002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 11026
048addec 11027 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 11028
048addec 11029 * xdisp.c (display_mode_lines): Fix last change.
453c5510 11030
048addec 110312002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 11032
048addec
JD
11033 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
11034 match each other.
11035 (w32_load_system_font): Prevent Cleartype fonts from loading.
11036 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 11037
048addec 110382002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 11039
048addec
JD
11040 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
11041 (CURRENT_MODE_LINE_HEIGHT): Use it.
11042 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 11043
048addec
JD
11044 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
11045 (pos_visible_p, handle_face_prop): Likewise.
11046 (display_mode_lines): Likewise, but for the real selected window.
11047 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 11048
048addec
JD
11049 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
11050 in non-selected windows.
11051 (realize_basic_faces): Realize it.
11052 (syms_of_term): Intern and staticpro it.
308dd672 11053
048addec 110542002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 11055
048addec
JD
11056 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
11057 Changed mail addresses to emacs-devel@gnu.org.
308dd672 11058
048addec 110592002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 11060
048addec
JD
11061 * fileio.c (Fsubstitute_in_file_name): If the file name includes
11062 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 11063
048addec 11064 * floatfns.c (Fround): Doc fix.
3c1e6b46 11065
048addec 110662002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 11067
048addec 11068 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 11069
048addec 110702002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 11071
048addec 11072 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 11073
048addec 110742002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 11075
048addec
JD
11076 * keymap.c (where_is_internal): Only check whether definition is
11077 remapped if it fulfills is_command_symbol.
0065bb74 11078
048addec 110792002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 11080
048addec 11081 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 11082
048addec 11083 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 11084
048addec 110852002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 11086
048addec
JD
11087 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
11088 defining command remapping. Doc updated.
11089 (Flookup_key): Remap command through keymap if KEY is a symbol.
11090 (is_command_symbol): New function.
11091 (Fkey_binding): Use it. New optional argument NO-REMAP.
11092 Doc updated. Callers changed. Perform command remapping via
11093 recursive call unless that arg is non-nil.
11094 (where_is_internal): New argument no_remap. Callers changed.
11095 Call recursively to find original key bindings for a remapped
11096 comand unless that arg is non-nil.
11097 (Fwhere_is_internal): New optional argument NO-REMAP.
11098 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 11099
048addec
JD
11100 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
11101 (is_command_symbol): Added prototype.
0d8466cc 11102
048addec
JD
11103 * keyboard.c (Vthis_original_command): New variable.
11104 (syms_of_keyboard): DEFVAR_LISP it.
11105 (command_loop_1): Set it, and perform command remapping.
15fff01d 11106
048addec 111072002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 11108
048addec 11109 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 11110
048addec 111112002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 11112
048addec 11113 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 11114
048addec 111152002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 11116
048addec 11117 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 11118
048addec 111192002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 11120
048addec 11121 * filelock.c (S_ISLNK): Define if not defined.
3a232704 11122
048addec 111232002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 11124
048addec 11125 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 11126
048addec
JD
11127 * lread.c (read1): Redesign strategy for force_multibyte and
11128 force_singlebyte. Now is_multibyte records whether read_buffer
11129 is multibyte. Encountering any multibyte character makes it so.
4e02881b 11130
048addec 111312002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 11132
048addec
JD
11133 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
11134 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 11135
048addec 111362002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 11137
048addec
JD
11138 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
11139 latter never being defined on GNU/Linux.
749f499f 11140
048addec 111412002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 11142
048addec
JD
11143 * xfaces.c (realize_default_face): Don't set the weight and slant of
11144 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 11145
048addec 111462002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 11147
048addec
JD
11148 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
11149 Call cancel_hourglass unconditionally.
d0fd26dd 11150
048addec
JD
11151 * eval.c (Fsignal): Remove duplicated declaration of
11152 the variable `display_hourglass_p'.
b4c45162 11153
048addec 111542002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 11155
048addec 11156 * editfns.c (region_limit): Nicer error message.
c95eaa61 11157
048addec
JD
11158 * coding.c (decode_composition_emacs_mule):
11159 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 11160
048addec
JD
11161 * callint.c (check_mark): New arg to specify clearer error message.
11162 Callers changed.
c95eaa61 11163
048addec 111642002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 11165
048addec 11166 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 11167
048addec 111682002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 11169
048addec
JD
11170 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
11171 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
11172 Fix doc-strings.
c95eaa61 11173
048addec 111742002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 11175
048addec 11176 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 11177
048addec
JD
11178 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
11179 and scroll_up_aggressively.
c95eaa61 11180
048addec 111812002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 11182
048addec 11183 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 11184
048addec 111852002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 11186
048addec
JD
11187 * textprop.c (Fnext_property_change, Fnext_single_property_change)
11188 (Fprevious_property_change, Fprevious_single_property_change):
11189 Stay within the narrowed-buffer boundaries.
e2c3786a 11190
048addec 111912002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 11192
048addec
JD
11193 * term.c (Ftty_display_color_cells): New function.
11194 (syms_of_term): Defsubr it.
11195 (Ftty_display_color_cells, Ftty_display_color_p): Change the
11196 argument name to DISPLAY. Doc fix.
bf794306 11197
048addec
JD
11198 * dispextern.h: Add prototype for set_tty_color_mode and
11199 tty_setup_colors.
bf794306 11200
048addec 112012002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 11202
048addec
JD
11203 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
11204 If region left to draw is not what was expected, mark the frame as
11205 garbaged.
62582985 11206
048addec
JD
11207 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
11208 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 11209
048addec 112102002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 11211
048addec
JD
11212 * w32term.c (x_update_window_begin): Only hide caret if
11213 w32_use_visible_system_caret is set.
11214 (x_update_window_end): Only show caret if
11215 w32_use_visible_system_caret is set.
11216 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 11217
048addec 11218 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 11219
048addec 112202002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 11221
048addec
JD
11222 * unexelf.c (unexec): Define n so as to cause compilation error
11223 for the code where people have often written n instead of nn.
1e9a6186 11224
048addec 11225 * .gdbinit (hookpost-run): Defined.
1e9a6186 11226
048addec 112272002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 11228
048addec 11229 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 11230
048addec 112312002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 11232
048addec
JD
11233 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
11234 if fullscreen is being set.
7c75be36 11235
048addec 112362002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 11237
048addec
JD
11238 * minibuf.c (Fminibuffer_contents)
11239 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
11240 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 11241
048addec 112422002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 11243
048addec 11244 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 11245
048addec 112462002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 11247
048addec
JD
11248 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
11249 height before comparison.
11250 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 11251
048addec 112522002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 11253
048addec
JD
11254 * w32term.c (w32_system_caret_width): Remove.
11255 (w32_use_visible_system_caret): New user flag.
11256 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
11257 Windows reports a screen reader running.
11258 (x_update_window_begin): Hide the system caret.
11259 (x_update_window_end): Show the system caret.
11260 (x_display_and_set_cursor): Don't draw a cursor when
11261 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 11262
048addec
JD
11263 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
11264 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
11265 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
11266 the user requests it. Use system default width when creating.
11267 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 11268
048addec
JD
11269 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
11270 New window messages.
905cc05a 11271
048addec 112722002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 11273
048addec 11274 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 11275
048addec 112762002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 11277
048addec 11278 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 11279
048addec 112802002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 11281
048addec 11282 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 11283
048addec 112842002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 11285
048addec
JD
11286 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
11287 that Windows returns. If a double check fails, try to guess how
11288 ExtTextOut is going to act.
4d0fa4f3 11289
048addec
JD
11290 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
11291 in place of stricmp.
11292 (w32_list_synthesized_fonts): Removed.
11293 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
11294 (struct enumfont_t): New element; list.
11295 (enum_font_cb2): List all style and charset variations of a font.
11296 (Fw32_select_font): New optional argument; include_proportional.
11297 Exclude vertical fonts. Exclude proportional fonts unless
11298 include_proportional is non-nil.
11299 (w32_enable_synthesized_fonts): Change to a boolean.
11300 (Fw32_send_sys_command): Doc fix.
493faf20 11301
048addec 113022002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 11303
048addec
JD
11304 * dispnew.c (update_frame): Move the variable `tem' to the block
11305 where it is used.
4971e491 11306
048addec 113072002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 11308
048addec
JD
11309 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
11310 call to face-set-after-frame-default.
4971e491 11311
048addec 113122002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 11313
048addec
JD
11314 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
11315 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 11316
048addec 113172002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 11318
048addec
JD
11319 * window.c (enlarge_window): When exceeding size of parent,
11320 directly delete all the siblings instead of trying to resize it.
201c831a 11321
048addec 113222002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 11323
048addec 11324 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 11325
048addec 113262002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 11327
048addec 11328 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 11329
048addec 113302002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 11331
048addec
JD
11332 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
11333 is invisible. This can happen if cursor is on top line of a
11334 window, and we switch to a buffer with a header line.
d77fbc16 11335
048addec 11336 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 11337
048addec 113382002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 11339
048addec
JD
11340 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
11341 `dont_resize' only when used.
61e3b944 11342
048addec 11343 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 11344
048addec 113452002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 11346
048addec
JD
11347 * xdisp.c (display_mode_element): When computing charpos, depend
11348 on multibyteness of elt, not the text in field.
8af01033 11349
048addec 113502002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 11351
048addec
JD
11352 * buffer.c (Fkill_all_local_variables):
11353 Increment `update_mode_lines' only once.
7363986a 11354
048addec 113552002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 11356
048addec
JD
11357 * lisp.h (adjust_after_replace_noundo)
11358 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 11359
048addec 11360 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 11361
048addec 113622002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 11363
048addec
JD
11364 Support for the --color command-line argument and tty-color-mode
11365 frame parameter:
f1a85b89 11366
048addec
JD
11367 * term.c (tty_default_color_capabilities, tty_setup_colors)
11368 (set_tty_color_mode): New functions.
11369 (term_init): Call tty_default_color_capabilities.
11370 (Qtty_color_mode_alist): New variable.
11371 (syms_of_term): Intern and staticpro it.
f1a85b89 11372
048addec
JD
11373 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
11374 frames.
11375 (do_switch_frame): For termcap frames, switch the tty
11376 color mode as specified by the frame's parameters.
11377 (Qtty_color_mode): New variable.
11378 (syms_of_frame): Intern and staticpro it.
3a62677f 11379
048addec
JD
11380 * emacs.c (USAGE2): Add the --color option.
11381 (standard_args): Ditto.
72244db2 11382
048addec
JD
113832002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11384
11385 * xterm.h (struct x_output): New members want_fullscreen,
11386 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
11387 y_pixels_outer_diff.
11388 New enum for FULLSCREEN_* constants.
11389 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
11390 is NULL.
11391 (x_fullscreen_adjust): Add prototype.
3a62677f 11392
048addec
JD
11393 * emacs.c (USAGE2): Add the new full-screen arguments.
11394 (standard_args): Ditto.
3a62677f 11395
048addec
JD
11396 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
11397 New variables.
11398 (syms_of_xfns): Intern and staticpro them.
11399 (x_frame_parms) <"fullscreen">: New parameter.
11400 (x_fullscreen_move, x_set_fullscreen): New functions.
11401 (x_set_frame_parameters): Support for Qfullscreen.
11402 (x_real_positions): More accurate computation of the frame position.
11403 (x_figure_window_size): Support full-screen frames.
11404 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 11405
048addec
JD
11406 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
11407 (XTread_socket) <Expose>: Call x_check_fullscreen.
11408 <ConfigureNotify>: Don't resize to fullscreen.
11409 Call x_check_fullscreen_move, and set the want_fullscreen member of
11410 output_data.x.
3a62677f 11411
048addec 114122002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 11413
048addec
JD
11414 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
11415 for mice with more than 3 buttons.
b8523839 11416
048addec
JD
11417 * w32term.c (parse_button): New parameter xbutton. Callers changed.
11418 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 11419
048addec
JD
11420 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
11421 (syms_of_w32fns): DEFVAR_BOOL it.
11422 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 11423
048addec 114242002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 11425
048addec 11426 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 11427
048addec 114282002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 11429
048addec 11430 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 11431
048addec 114322002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 11433
048addec
JD
11434 * .gdbinit (xbuffer): Remove address operator since data is now a
11435 pointer.
c93674bb 11436
048addec 114372002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 11438
048addec 11439 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 11440
048addec 11441 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 11442
048addec 114432002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 11444
048addec
JD
11445 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
11446 when checking for multiple frames.
91175673 11447
048addec 114482002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 11449
048addec
JD
11450 * window.c (delete_window): Rewrite the code for changing the
11451 selected window to handle the case where WINDOW is not a leaf.
91175673 11452
048addec 114532002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 11454
048addec
JD
11455 * process.c (send_process): Set src_multibyte to 1 after the call
11456 top setup_coding_system, not before the call.
e0fead5d 11457
048addec 114582002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 11459
048addec
JD
11460 * xmenu.c (set_frame_menubar, xmenu_show):
11461 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 11462
048addec
JD
11463 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
11464 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 11465
048addec 114662002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 11467
048addec 11468 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 11469
048addec 11470 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 11471
048addec 11472 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 11473
048addec 114742002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 11475
048addec
JD
11476 * insdel.c (make_gap_larger): Make sure buffer size does not
11477 overflow range of int.
62854fe2 11478
048addec 114792002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 11480
048addec
JD
11481 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
11482 OVERLAPS_P.
656f46bb 11483
048addec 11484 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 11485
048addec
JD
11486 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
11487 to the left or to the right of the pointer, put it against
11488 the left screen edge.
11489 (x_frame_parms): Add missing braces around initializer.
036e218d 11490
048addec
JD
11491 * w32term.c (x_setup_relief_colors): Don't compute an image's
11492 background color if it doesn't have a Pixmap.
11493 (notice_overwritten_cursor): Don't depend on
11494 output_cursor and updated_area. Compare pixel coordinates with
11495 window's cursor pixel coordinates.
11496 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
11497 Call notice_overwritten_cursor with new arg list.
11498 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
11499 unconditionally.
11500 (x_draw_image_relief): Use predefined macro instead of
11501 constant when the value of `tool_bar_button_relief' is negative.
036e218d 11502
048addec 11503 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 11504
048addec 115052002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 11506
048addec 11507 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 11508
048addec 115092002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 11510
048addec
JD
11511 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
11512 (Fkey_binding): Try the `keymap' property map first.
11513 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
11514 minor mode bindings.
90647b07 11515
048addec 115162002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 11517
048addec 11518 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 11519
048addec 115202002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 11521
048addec
JD
11522 * keyboard.c (read_key_sequence): Handle the keymap property
11523 before minor mode maps.
9fbc32aa 11524
048addec
JD
11525 * editfns.c (Fformat): Update thissize from field_width
11526 based on the actual width, in the string case.
036e218d 11527
048addec 115282002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 11529
048addec
JD
11530 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
11531 when used as truth value to prevent gcc warnings.
9fbc32aa 11532
048addec
JD
11533 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
11534 * w32proc.c: Include <config.h>.
9fbc32aa 11535
048addec 115362002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 11537
048addec
JD
11538 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
11539 not EMACS_INT, to make them compatible with DEFVAR_INT.
11540 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 11541
048addec 115422002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 11543
048addec
JD
11544 * print.c (print_object): Test print_escape_nonascii only for
11545 unibyte strings.
11546 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
11547 when outputting to a multibyte buffer.
9fbc32aa 11548
048addec 115492001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 11550
048addec
JD
11551 * print.c (print_object): In multibyte string, use hex escapes.
11552 Use octal only for unibyte strings.
11553 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 11554
048addec
JD
11555 * lread.c (read_escape): New arg BYTEREP for reporting whether
11556 escape forces unibyte or multibyte.
11557 (read1): When reading a string, take note of that info.
0142178a 11558
048addec 115592001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 11560
048addec
JD
11561 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
11562 comparison to test lisp value returned by Fget.
d4824a5d 11563
048addec 115642001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 11565
048addec 11566 * lisp.h (max_specpdl_size): Add declaration.
b1356234 11567
048addec 11568 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 11569
048addec
JD
11570 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
11571 Handle modifier bits. Correct typo in error message.
99e380ee 11572
048addec 115732001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 11574
048addec
JD
11575 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
11576 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
11577 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
11578 Update calls to Fdefine_abbrev.
11579 (write_abbrev): Update for changed data format.
11580 Don't list "system" abbrevs.
11581 (Fexpand_abbrev): Update use count with new data format.
11582 (describe_abbrev): Update for changed data format.
11583 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 11584
048addec 11585 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 11586
048addec 11587 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 11588
048addec
JD
11589 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
11590 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 11591
048addec
JD
11592 * keymap.c (Flookup_key): Error message if key has wrong data type.
11593 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
11594 (exclude_key): New variable.
59a86c99 11595
048addec 115962001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 11597
048addec
JD
11598 * xterm.c (x_setup_relief_colors): Don't compute an image's
11599 background color if it doesn't have a Pixmap.
eb77a5f4 11600
048addec
JD
11601 * xterm.c (notice_overwritten_cursor): Don't depend on
11602 output_cursor and updated_area. Compare pixel coordinates with
11603 window's cursor pixel coordinates.
11604 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
11605 Call notice_overwritten_cursor with new arg list.
11606 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
11607 unconditionally.
eb77a5f4 11608
048addec
JD
11609 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
11610 height of the cursor line to the amount to scroll.
eb77a5f4 11611
048addec 116122001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 11613
048addec
JD
11614 * intervals.c (set_point_both): The position after an invisible,
11615 intangible character is not an acceptable stopping point.
bb313871 11616
048addec 116172001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 11618
048addec
JD
11619 * window.c (enlarge_window): In new preserve_before code, convert
11620 CURBEG from lisp object to integer before doing arithmetic.
6052529b 11621
048addec 116222001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 11623
048addec 11624 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 11625
048addec 116262001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 11627
048addec
JD
11628 * keyboard.c (record_char): Ignore duplicate help-echo events only
11629 separated by mouse-movement. When tracking mouse, only record
11630 first and last mouse-movement event in same window.
11631 Don't record mouse-movement events in keyboard macros.
3ce081f5 11632
048addec 116332001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 11634
048addec
JD
11635 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
11636 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 11637
048addec
JD
11638 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
11639 instead of Fstring_as_unibyte.
9fabb2f5 11640
048addec 116412001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 11642
048addec 11643 The following changes remove mocklisp support:
9fabb2f5 11644
048addec 11645 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 11646
048addec
JD
11647 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
11648 `Qmocklisp' and `Qmocklisp_arguments'.
11649 Remove prototype of syms_of_mocklisp.
2fa0eedf 11650
048addec 11651 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 11652
048addec
JD
11653 * callint.c: Do not include mocklisp.h.
11654 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 11655
048addec
JD
11656 * eval.c: Remove variables `Qmocklisp_arguments',
11657 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
11658 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
11659 Do not test for mocklisp case.
11660 (Fwhile): Remove unused variable `tem'.
11661 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 11662
048addec 11663 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 11664
048addec 11665 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 11666
048addec 11667 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 11668
048addec 116692001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 11670
048addec
JD
11671 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
11672 to the left or to the right of the pointer, put it against
11673 the left screen edge.
6108b49c 11674
048addec 116752001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 11676
048addec
JD
11677 * Makefile.in (distclean): Remove .gdbinit if we are building
11678 outside the source tree.
5eea19a4 11679
048addec 116802001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 11681
048addec 11682 * w32.c (emacs_root_dir): New function.
5eea19a4 11683
048addec 11684 * msdos.c (emacs_root_dir): New function.
5eea19a4 11685
048addec
JD
11686 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
11687 of the current drive as the fallback for default_directory.
438e57dd 11688
048addec
JD
11689 * dired.c (file_name_completion): Run the elements of
11690 completion-ignored-extensions through ENCODE_FILE.
438e57dd 11691
048addec
JD
11692 * lisp.h (scmp): Remove prototype, since it's now a static
11693 function private to dired.c.
c88e5347 11694
048addec 116952001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 11696
048addec
JD
11697 * dired.c (scmp): Function moved from minibuf.c.
11698 Delete multibyte handling--used only on encoded strings.
59ce1461 11699
048addec 11700 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 11701
048addec 11702 * fns.c (merge): Add QUIT call.
59ce1461 11703
048addec 117042001-12-18 Dave Love <fx@gnu.org>
8727d588 11705
048addec
JD
11706 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
11707 language/georgian.el.
8727d588 11708
048addec 117092001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 11710
048addec
JD
11711 * Makefile.in (lisp, shortlisp): Synchronize with changes to
11712 lisp/Makefile.in:DONTCOMPILE.
cc63037e 11713
048addec 117142001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 11715
048addec
JD
11716 * xdisp.c (window_box_height): Do not return negative values.
11717 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 11718
048addec 11719 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 11720
048addec 11721 * term.c (keys): Likewise.
deece6f5 11722
048addec 11723 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 11724
048addec 117252001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 11726
048addec
JD
11727 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
11728 patch (COMPOSING_P, not COMPOSING).
28ff4293 11729
048addec 117302001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 11731
048addec 11732 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 11733
048addec
JD
11734 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
11735 before calling decode_coding.
9b46de40 11736
048addec 11737 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 11738
048addec
JD
11739 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
11740 instead of only for COMPOSITION_DISABLED.
9b46de40 11741
048addec 117422001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 11743
048addec 11744 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 11745
048addec 11746 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 11747
048addec
JD
11748 * buffer.h (struct buffer): New field `display_error_modiff'.
11749 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 11750
048addec 11751 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 11752
048addec
JD
11753 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
11754 Call redisplay_window, but not if display_error_modiff field says no.
11755 (redisplay_window_error): New function.
11756 (displayed_buffer): New variable.
11757 (redisplay_internal, redisplay_windows): Call the new functions
11758 instead of redisplay_window directly.
2cd23960 11759
048addec 117602001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 11761
048addec 11762 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 11763
048addec 117642001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 11765
048addec
JD
11766 * makefile.w32-in (EMACSLOADPATH): Define.
11767 ($(EMACS)): Run `list-load-path-shadows' after dumping emacs.
11768 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 11769
048addec 117702001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 11771
048addec
JD
11772 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
11773 parameter have a numeric value all the time.
f6fa0866 11774
048addec 11775 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 11776
048addec 117772001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 11778
048addec 11779 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 11780
048addec
JD
11781 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
11782 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 11783
048addec 117842001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 11785
048addec
JD
11786 * xdisp.c (move_it_vertically_backward): Change heuristic
11787 for the case that we didn't move far enough initially.
91c153e2 11788
048addec
JD
11789 * window.c (Frecenter): Simplify computation in the case of window
11790 system frames and ARG < 0; use window_box_height.
65b7d3e7 11791
048addec 117922001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 11793
048addec
JD
11794 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
11795 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 11796
048addec 117972001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 11798
048addec
JD
11799 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
11800 arg is negative.
be676094 11801
048addec 118022001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 11803
048addec
JD
11804 * m/hp800.h: Split the __hpux conditional into the parts
11805 that are right for GNU/Linux too and the parts that are not.
11806 Use the former if GNU_LINUX.
11807 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 11808
048addec 11809 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 11810
048addec 118112001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 11812
048addec
JD
11813 * macros.c, msdos.c, w16select.c: Change doc-string comments to
11814 `new style' [w/`doc:' keyword].
032a857d 11815
048addec 118162001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 11817
048addec
JD
11818 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
11819 before using.
b6270150 11820
048addec 118212001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 11822
048addec
JD
11823 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
11824 keyword].
98cbb9fa 11825
048addec 118262001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 11827
048addec 11828 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 11829
048addec 11830 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 11831
048addec 118322001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 11833
048addec
JD
11834 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
11835 Add comment to explain where the struct came from.
11836 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
11837 (add_menu_item): Process pop-up menus first to avoid memory leak.
11838 (add_menu_item, w32_menu_display_help): Use `help' field as
11839 Lisp_Object.
11840 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 11841
048addec 118422001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 11843
048addec 11844 * COPYING: Moved back.
fa336b91 11845
048addec
JD
11846 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
11847 Add parentheses around && within ||.
077907d4 11848
048addec 11849 * indent.c (compute_motion): Likewise.
aa2af83a 11850
048addec 11851 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 11852
048addec
JD
11853 * coding.c (setup_coding_system, shrink_encoding_region)
11854 (Fdecode_sjis_char): Likewise.
60a653f1 11855
048addec 118562001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 11857
048addec
JD
11858 * xdisp.c (display_mode_element): Don't read past end of string if
11859 it ends with '%'.
60a653f1 11860
048addec
JD
11861 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
11862 can hold.
60a653f1 11863
048addec
JD
11864 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
11865 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
11866 type changed to Lisp_Object.
11867 (syms_of_data): DEFVAR_LISP them.
60a653f1 11868
048addec 118692001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 11870
048addec
JD
11871 * callproc.c (init_callproc): Set Vdata_directory based on the source
11872 location whenever Emacs was run uninstalled.
60a653f1 11873
048addec 118742001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 11875
048addec
JD
11876 * config.in (HAVE_WORKING_VFORK): New #undefs.
11877 * process.c (create_process):
11878 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
11879 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
11880 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
11881 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
11882 * m/intel386.h (HAVE_VFORK): Likewise.
11883 * m/mips-siemens.h (HAVE_VFORK): Likewise.
11884 * m/mips.h (HAVE_VFORK): Likewise.
11885 * s/freebsd.h (vfork): Remove #define.
11886 * s/lynxos.h (HAVE_VFORK): Remove #undef.
11887 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 11888
048addec 118892001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 11890
048addec
JD
11891 * s/hpux10.h (random): Add undef.
11892 (HAVE_RANDOM): Define it just once.
60a653f1 11893
048addec 118942001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11895
048addec 11896 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 11897
048addec 118982001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 11899
048addec
JD
11900 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
11901 scroll bars of the frame before deleting the frame itself. If the
11902 frame has a widget, delete the frame with XtDestroyWidget, and do
11903 not call XDestroyWindow before that.
60a653f1 11904
048addec 119052001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 11906
048addec 11907 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 11908
048addec 11909 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 11910
048addec 119112001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 11912
048addec
JD
11913 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
11914 excessively large.
60a653f1 11915
048addec
JD
11916 * insdel.c (make_gap_larger): New function.
11917 (make_gap_smaller): New function.
11918 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
11919 Call make_gap_smaller if arg is negative.
60a653f1 11920
048addec 119212001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11922
048addec
JD
11923 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
11924 Pass a dummy argument when calling interrupt_signal.
11925 (parse_menu_item): Mark disabled items before checking for empty def.
11926 (read_char_minibuf_menu_prompt): Make safety more visible.
11927 (read_key_sequence): Add a `first_unbound' variable.
11928 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
11929 unbound prefix as soon as we can detect it.
60a653f1 11930
048addec
JD
11931 * doc.c (Fsnarf_documentation): Add prototype.
11932 (get_doc_string): Handle negative arguments.
11933 (Fdocumentation): Use AREF and ASIZE.
11934 Move the calls to get_doc_string to a single place.
11935 Don't confuse an interactive-spec for a docstring reference.
11936 (Fdocumentation_property): Take advantage of the fact that
11937 get_doc_string now ignores the sign of the docstring position.
60a653f1 11938
048addec 11939 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 11940
048addec 119412001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11942
a64387ee 11943 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
60a653f1 11944
048addec 119452001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11946
048addec
JD
11947 * xterm.c (x_draw_image_relief): Use predefined macro instead of
11948 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 11949
048addec 119502001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 11951
048addec
JD
11952 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
11953 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 11954
048addec 11955 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 11956
048addec 119572001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11958
048addec 11959 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 11960
048addec 119612001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 11962
048addec 11963 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 11964
048addec 119652001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 11966
048addec 11967 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 11968
048addec
JD
11969 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
11970 [!WM_MOUSELEAVE]: Define.
60a653f1 11971
048addec
JD
11972 * w32menu.c (current_popup_menu, get_menu_item_info):
11973 (set_menu_item_info): New vars.
11974 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
11975 (w32_menu_show): Set current_popup_menu.
11976 (add_menu_item): Allocate new strings for owner-drawn menu items
11977 and help strings.
11978 Use owner-draw for disabled menu items again.
11979 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
11980 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 11981
048addec
JD
11982 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
11983 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
11984 <WM_EXITMENULOOP>: Free menu strings.
11985 <WM_MOUSELEAVE>: Stop tracking mouse.
11986 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 11987
048addec
JD
11988 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
11989 and mouse face.
60a653f1 11990
048addec 119912001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 11992
048addec
JD
11993 The following changes add left-fringe and right-fringe
11994 frame parameters to adjust fringe widths, or remove one or
11995 both fringes.
60a653f1 11996
048addec
JD
11997 * frame.h (struct frame): Remove trunc_area_pixel_width and
11998 trunc_area_cols fields.
11999 (Qleft_fringe, Qright_fringe): Declare.
12000 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 12001
048addec
JD
12002 * frame.c (Qleft_fringe, Qright_fringe): New vars.
12003 (syms_of_frame): Initialize them.
60a653f1 12004
048addec
JD
12005 * window.c (coordinates_in_window): Handle separate left and right
12006 fringe widths.
60a653f1 12007
048addec
JD
12008 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
12009 and fringe_cols fields.
12010 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
12011 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
12012 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
12013 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
12014 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
12015 (x_compute_fringe_widths): Add prototype.
60a653f1 12016
048addec
JD
12017 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
12018 fill fringe evenly with small dashes.
12019 (x_draw_fringe_bitmap): Clear background if necessary. Align and
12020 clip the new ZV bitmap to avoid jitter between rows.
12021 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
12022 background. Don't draw fringe bitmaps if fringe width is zero.
12023 (x_compute_fringe_widths): New function.
12024 (x_new_font, x_set_window_size_1): Use it.
60a653f1 12025
048addec
JD
12026 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
12027 (x_set_frame_parameters): Process `font' parameter before other
12028 parameters as fringe widths depend on it.
12029 (x_set_fringe_width): New function.
12030 (x_figure_window_size): Use x_compute_fringe_widths.
12031 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
12032 parameters.
60a653f1 12033
048addec
JD
12034 * widget.c (set_frame_size): Use x_compute_fringe_widths.
12035 (EmacsFrameSetCharSize): Ditto.
60a653f1 12036
048addec
JD
12037 * w32term.h: Merged changes from xterm.h.
12038 * w32term.c: Merged changes from xterm.c.
12039 * w32fns.c: Merged changes from xfns.c.
60a653f1 12040
048addec 120412001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 12042
048addec 12043 * COPYING: Removed.
60a653f1 12044
048addec 120452001-11-29 Dave Love <fx@gnu.org>
60a653f1 12046
048addec
JD
12047 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
12048 extra extra slot.
12049 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 12050
048addec 120512001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 12052
048addec
JD
12053 * fileio.c (file-name-coding-system)
12054 (default-file-name-coding-system): Doc fix (links to referenced
12055 variables added).
60a653f1 12056
048addec 120572001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12058
048addec
JD
12059 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
12060 Add dummy uses of gcproN variables.
60a653f1 12061
048addec
JD
12062 * category.c (describe_category, describe_category_1)
12063 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
12064 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 12065
048addec 120662001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 12067
048addec 12068 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 12069
048addec
JD
12070 * Makefile.in (lispdir): New variable, referring to build dir.
12071 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 12072
048addec 120732001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 12074
048addec
JD
12075 * w32menu.c (w32_menu_display_help): Actually add the new argument
12076 OWNER.
60a653f1 12077
048addec 120782001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 12079
048addec
JD
12080 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
12081 menu items. From David Ponce <dponce@wanadoo.fr>.
12082 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
12083 conditionally.
12084 (w32_menu_display_help): New argument OWNER. Rewritten to store a
12085 help event in the owner frame's keyboard buffer.
60a653f1 12086
048addec
JD
12087 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
12088 (Fx_show_tip): Don't subtract last width from row width.
12089
12090 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
12091 (w32_read_socket): Use EQ to compare frames.
60a653f1 12092
048addec 120932001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 12094
048addec
JD
12095 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
12096 OVERLAPS_P.
60a653f1 12097
048addec 120982001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 12099
048addec
JD
12100 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
12101 `gcpro3' and `gcpro4'.
60a653f1 12102
048addec 12103 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 12104
048addec 121052001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12106
048addec 12107 * ccl.c: Use AREF and ASIZE.
60a653f1 12108
048addec 121092001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12110
048addec
JD
12111 * lisp.h (run_hook_list_with_args): Remove.
12112 (LIST_END_P): Fix call to wrong_type_argument.
12113 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 12114
048addec 121152001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12116
048addec
JD
12117 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
12118 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 12119
048addec
JD
12120 * eval.c: Use AREF and ASIZE.
12121 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 12122
048addec
JD
12123 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
12124 which match the end of the file-name.
12125 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
12126 is not a valid env var, but leave it as is instead.
60a653f1 12127
048addec
JD
12128 * keymap.c (access_keymap): Handle t bindings like nil bindings.
12129 Make nil bindings in char-tables transparent.
12130 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 12131
048addec 121322001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 12133
048addec
JD
12134 * textprop.c (set_text_properties_1): Allow START, END in either order.
12135 Do nothing if range is empty.
60a653f1 12136
048addec 12137 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 12138
048addec
JD
12139 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
12140 (clean): Not here.
60a653f1 12141
048addec 121422001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12143
048addec
JD
12144 * textprop.c (set_text_properties_1): Clearly mark that the
12145 interval should not be empty.
60a653f1 12146
048addec
JD
12147 * intervals.c (graft_intervals_into_buffer):
12148 Don't call set_text_properties_1 on an empty interval.
60a653f1 12149
048addec 121502001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 12151
048addec 12152 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 12153
048addec
JD
12154 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
12155 don't lose the data in it.
60a653f1 12156
048addec 121572001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 12158
048addec 12159 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 12160
c62aec78 12161 * buffer.c (Fkill_buffer): Likewise.
60a653f1 12162
c62aec78 12163 * print.c (temp_output_buffer_setup): Likewise.
60a653f1 12164
048addec 121652001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12166
048addec 12167 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 12168
048addec 121692001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 12170
048addec
JD
12171 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
12172 Niemitalo <kon@iki.fi>.
60a653f1 12173
048addec 121742001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 12175
048addec 12176 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 12177
048addec
JD
12178 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
12179 (Fx_show_tip): Block input during frame creation.
12180 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 12181
048addec 121822001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 12183
048addec
JD
12184 * lread.c (Fload): Detect recursive load error for more than 3
12185 nestings of the same file.
12186 (Vrecursive_load_depth_limit): Variable deleted.
12187 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 12188
048addec 121892001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 12190
048addec
JD
12191 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
12192 mouse position if either left or top is not specified.
60a653f1 12193
048addec
JD
12194 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
12195 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
12196 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
12197 (my_create_tip_window): Assign tip_window.
12198 (x_create_tip_frame): Use same defaults as X.
12199 (compute_tip_xy): Remove unused variable. Use full screen width.
12200 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 12201
048addec
JD
12202 * w32term.c (x_after_update_window_line): Doc fix.
12203 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
12204 frames.
12205 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 12206
048addec
JD
12207 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
12208 for all Windowed systems.
60a653f1 12209
048addec 122102001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 12211
048addec
JD
12212 * msdos.c (IT_clear_screen): If the frame's faces are not yet
12213 realized, use the initial screen colors to clear the screen.
60a653f1 12214
048addec 122152001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 12216
048addec
JD
12217 * textprop.c (Fset_text_properties): Remove unused variables
12218 `unchanged', `prev_changed', `s' and `len'.
60a653f1 12219
048addec
JD
12220 * search.c (Freplace_match): Remove unused variable `inslen'.
12221
12222 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
12223
122242001-11-22 Jason Rumney <jasonr@gnu.org>
12225
12226 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
12227 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
12228 (my_create_tip_window): New function.
12229 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
12230 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
12231
122322001-11-20 Jason Rumney <jasonr@gnu.org>
12233
12234 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
12235 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
12236
12237 * w32fns.c (Vw32_system_coding_system): Remove.
12238 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
12239
122402001-11-19 Stefan Monnier <monnier@cs.yale.edu>
12241
12242 * fileio.c (Fwrite_region): Move choose_write_coding_system to
12243 after build_annotations.
12244
12245 * syntax.c (describe_syntax): Add dummy arg.
12246 (describe_syntax_1): Update call to describe_vector.
12247
12248 * category.c (describe_category): Add dummy arg.
12249 (describe_category_1): Update call to describe_vector.
12250
12251 * keymap.c (Fdescribe_vector): Add `describer' parameter.
12252 (describe_command, describe_translation): Add dummy second param.
12253 (describe_map): Call elt_describer with two arguments.
12254 (describe_vector_princ): Add `fun' parameter.
12255 Call it instead of the hardcoded `princ'.
12256 (describe_vector): Add arg `args'.
12257 Pass it as a new second argument to elt_describer.
60a653f1 12258
048addec 12259 * keymap.h (describe_vector): Update prototype.
60a653f1 12260
048addec
JD
12261 * frame.c: Don't include keymap.h any more.
12262 (keys_of_frame): Remove.
60a653f1 12263
048addec 12264 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 12265
048addec 12266 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 12267
048addec 122682001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 12269
048addec
JD
12270 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
12271 if defined, 0 otherwise.
12272 (MAP_FAILED): Define if not defined and use it to test mmap failure.
12273 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 12274
048addec 122752001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 12276
048addec 12277 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 12278
048addec 122792001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 12280
048addec
JD
12281 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
12282 (x_draw_bar_cursor): If the background color of the glyph under
12283 the cursor equals the frame's cursor color, use the glyph's
12284 foreground color for drawing the bar cursor.
12285 (x_after_update_window_line): Clear internal border in different
12286 circumstances.
12287 (w32_set_vertical_scroll_bar): Check for width and height > 0.
12288 (w32_draw_relief_rect): Correct relief by 1 pixel.
12289 (x_set_glyph_string_background_width):
12290 Set extends_to_end_of_line_p if the row's fill_line_p is set and
12291 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
12292 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
12293 if cursor_in_non_selected_windows is false.
12294 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
12295 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
12296 Notice if cursor gets overwritten.
12297 (notice_overwritten_cursor): Renamed from
12298 note_overwritten_text_cursor. Rewritten to take glyph widths
12299 into account, and to take X positions as parameters.
12300 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
12301 around call to x_draw_glyphs.
12302 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
12303 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
12304 color to use for image glyph reliefs.
12305 (x_draw_image_relief): Accept zero tool_bar_button_relief.
12306 (glyph_rect): Remove unused variable `area'.
60a653f1 12307
048addec
JD
12308 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
12309 some items.
12310 (x_set_internal_border_width): Set frame garbaged when window
12311 doesn't exist yet.
12312 (Fx_create_frame): Accept zero tool_bar_button_relief.
12313 (x_clear_image_1, four_corners_best, image_background)
12314 (image_background_transparent): New functions.
12315 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
12316 (gs_format): Add `:background' entry.
12317 (lookup_image): Set IMG's background color if specified.
12318 (pbm_load, xbm_load_image, png_load): Set IMG's background field
12319 when appropriate.
12320 (x_clear_image_1): Reset `background_valid' and
12321 `background_transparent_valid' fields.
12322 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
12323 calculating it here. Set IMG's background_transparent field.
12324 (enum xpm_keyword_index): Add XPM_BACKGROUND.
12325 (enum png_keyword_index): Add PNG_BACKGROUND.
12326 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
12327 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
12328 (enum gif_keyword_index): Add GIF_BACKGROUND.
12329 (enum gs_keyword_index): Add GS_BACKGROUND.
12330 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
12331 Pre-calculate image background color where necessary.
12332 (x_create_x_image_and_pixmap, xbm_load, gs_load):
12333 Use display info's n_cbits entry for screen depth.
12334 (Fx_show_tip): Remove unused variables `buffer', `top',
12335 `left', `max_width' and `max_height'.
60a653f1 12336
048addec 12337 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 12338
048addec 123392001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 12340
048addec 12341 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 12342
048addec 123432001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 12344
048addec 12345 * frame.c (Fframe_live_p): Doc fix.
60a653f1 12346
048addec 123472001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 12348
048addec
JD
12349 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
12350 (message_dolog_marker3): New static variables hold three markers.
12351 (syms_of_xdisp): Initialize and staticpro them.
12352 (message_dolog): Use message_dolog_marker1..3 instead of
12353 allocating markers each time. Unchain them when done.
60a653f1 12354
048addec 123552001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 12356
048addec 12357 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 12358
048addec 123592001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 12360
048addec 12361 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 12362
048addec 123632001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 12364
048addec 12365 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 12366
048addec 123672001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 12368
048addec 12369 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 12370
048addec 123712001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 12372
048addec
JD
12373 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
12374 with invalid position.
60a653f1 12375
048addec 123762001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 12377
048addec 12378 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 12379
048addec
JD
12380 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
12381 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
12382 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 12383
048addec 12384 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 12385
048addec 123862001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12387
048addec
JD
12388 * fileio.c (build_annotations): Split off the tail.
12389 (build_annotations_2): New fun. Extracted from build_annotations.
12390 (Fwrite_region): Split the call to build_annotations into two
12391 calls to build_annotations and build_annotations_2.
077907d4 12392
048addec 123932001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 12394
048addec
JD
12395 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
12396 clear_waiting_for_input with argument.
1756e2fb 12397
048addec 12398 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 12399
048addec 12400 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 12401
048addec 12402 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 12403
048addec 12404 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 12405
048addec 124062001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 12407
048addec
JD
12408 * fileio.c (choose_write_coding_system): New fun, extracted
12409 from Fwrite_region.
12410 (Fwrite_region): Use it.
fa336b91 12411
048addec
JD
12412 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
12413 (funcall_lambda, run_hook_with_args): Make static and add prototype.
12414 (ml_apply, find_handler_clause): Add prototype.
fa336b91 12415
048addec 124162001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 12417
048addec 12418 * config.in: Add #undef HAVE_COFF_H.
fa336b91 12419
048addec
JD
12420 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
12421 Required for ISC 4.1.
fa336b91 12422
048addec 124232001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 12424
048addec
JD
12425 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
12426 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 12427
048addec 124282001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 12429
048addec
JD
12430 The following changes are made to clean up the various internal
12431 references to the fringes to actually use the term `fringe' for
12432 them. Previously, they were called `flags areas', `bitmap areas',
12433 `left/right side of windows', or implicitly as `flags' or
12434 `bitmaps':
fa336b91 12435
048addec
JD
12436 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
12437 Comments fixed. Use renamed symbols.
06e8f738 12438
048addec 12439 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 12440
048addec
JD
12441 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
12442 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
12443 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 12444
048addec 12445 * msdos.c: Comment fix.
9ce647f4 12446
048addec 12447 * w32fns.c: Use renamed symbols.
9b784ab8 12448
048addec
JD
12449 * w32term.c: Comment fixes. Use renamed symbols.
12450 (fringe_bitmap_type): Renamed from bitmap_type.
12451 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
12452 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
12453 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 12454
048addec
JD
12455 * w32term.h: Comment fixes. Use renamed symbols.
12456 (fringes_extra): Renamed from flags_areas_extra.
12457 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
12458 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
12459 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
12460 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
12461 (FRAME_X_LEFT_FRINGE_WIDTH):
12462 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
12463 (FRAME_X_RIGHT_FRINGE_WIDTH):
12464 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 12465
048addec 12466 * widget.c: Use renamed symbols.
9f7e52b4 12467
048addec
JD
12468 * window.c: Comment fixes. Use renamed symbols.
12469 (coordinates-in-window-p): Doc fix.
fa336b91 12470
048addec 12471 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 12472
048addec 12473 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 12474
048addec 12475 * xfns.c: Use renamed symbols.
89512fcd 12476
048addec
JD
12477 * xterm.c: Comment fixes. Use renamed symbols.
12478 (fringe_bitmap_type): Renamed from bitmap_type.
12479 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
12480 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
12481 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 12482
048addec
JD
12483 * xterm.h: Comment fixes. Use renamed symbols.
12484 (fringes_extra): Renamed from flags_areas_extra.
12485 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
12486 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
12487 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
12488 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
12489 (FRAME_X_LEFT_FRINGE_WIDTH):
12490 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
12491 (FRAME_X_RIGHT_FRINGE_WIDTH):
12492 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
12493
124942001-11-15 Jason Rumney <jasonr@gnu.org>
12495
12496 * w32menu.c (add-menu-item): Make help_echo and radio buttons
12497 work for most menu items. From David Ponce
12498 <david.ponce@wanadoo.fr>.
12499
125002001-11-15 Gerd Moellmann <gerd@gnu.org>
12501
12502 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
12503 Some x_set_* function expect to be called even if old and new
12504 value are equal.
12505
12506 * xdisp.c (build_desired_tool_bar_string): Accept zero
12507 tool_bar_button_relief.
12508
12509 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
12510
12511 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
12512
12513 * xterm.c (x_draw_bar_cursor): If the background color of the
12514 glyph under the cursor equals the frame's cursor color, use
12515 the glyph's foreground color for drawing the bar cursor.
12516
12517 * dispnew.c (direct_output_forward_char): Fix character/byte
12518 position comparison.
7d18891d 12519
048addec 125202001-11-15 Miles Bader <miles@gnu.org>
d2936d21 12521
048addec
JD
12522 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
12523 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
12524 Update arguments to find_field.
12525 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
12526 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
12527 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
12528 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 12529
048addec 125302001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 12531
048addec 12532 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 12533
048addec
JD
12534 * dispextern.h (image_background, image_background_transparent):
12535 Conditionalize on HAVE_X_WINDOWS.
7d18891d 12536
048addec 125372001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 12538
048addec 12539 * print.c (Fprin1_to_string): Doc fix.
7d18891d 12540
048addec 12541 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 12542
048addec 12543 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 12544
048addec 12545 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 12546
048addec 12547 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 12548
048addec 12549 * eval.c (syms_of_eval): Doc fix.
7d18891d 12550
048addec 12551 * coding.c (syms_of_coding): Doc fix.
7d18891d 12552
048addec 12553 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 12554
048addec 12555 * dispnew.c (syms_of_display): Doc fix.
9474c847 12556
048addec 12557 * category.c (Fget_unused_category): Doc fix.
9474c847 12558
048addec 12559 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 12560
048addec 125612001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 12562
048addec 12563 * print.c (prin1, print): Doc fix.
e3059a5d 12564
048addec 125652001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 12566
048addec
JD
12567 * fontset.h: Remove declarations of variables
12568 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 12569
048addec
JD
12570 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
12571 `Vclip_large_size_font'.
eae936e2 12572
048addec 125732001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 12574
048addec 12575 * w32fns.c: Doc fix.
ddb67bdc 12576
048addec 125772001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 12578
048addec 12579 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 12580
048addec 12581 * fns.c: Doc fix.
6e1b91d7 12582
048addec 12583 * emacs.c: Doc fix.
1c1d3d69 12584
048addec 12585 * coding.c: Doc fix.
1c1d3d69 12586
048addec
JD
12587 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
12588 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
12589 `new style' [w/`doc:' keyword].
b6f4c7ba 12590
048addec 125912001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 12592
048addec
JD
12593 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
12594 LeaveNotify events. Only FocusIn and FocusOut do that now.
12595 (x_display_and_set_cursor): Do display hollow cursors in active
12596 minibuffer windows when they are not selected.
b6f4c7ba 12597
048addec 125982001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 12599
048addec
JD
12600 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
12601 * w32term.c: Change doc-string comments to `new style'.
12602 [w/`doc:' keyword]. Doc fixes.
a89f435d 12603
048addec
JD
12604 * w32fns.c: Don't define max.
12605 (Fx_open_connection): Only execute once.
a4cd0cd7 12606
048addec 126072001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 12608
048addec
JD
12609 * ccl.c: Change macros to use do-while block instead of if-else.
12610 Use braces to follow GNU Coding Standards.
eafb659a 12611
048addec 126122001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 12613
048addec 12614 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 12615
048addec 12616 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 12617
048addec
JD
12618 * insdel.c (replace_range): Use adjust_markers_for_replace
12619 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 12620
048addec 12621 * intervals.h: Declare set_text_properties and set_text_properties_1.
a4cd0cd7 12622
048addec
JD
12623 * textprop.c (set_text_properties_1): New subroutine
12624 broken out of set_text_properties.
12625 (set_text_properties): Use set_text_properties_1.
91823618 12626
048addec
JD
12627 * intervals.c (graft_intervals_into_buffer):
12628 Use set_text_properties_1 to clear out properties.
91823618 12629
048addec
JD
12630 * search.c (Freplace_match): Use replace_range to insert
12631 and delete. Don't request property inheritance from
12632 surrounding text.
86928dfb 12633
048addec 126342001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 12635
048addec
JD
12636 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
12637 vertical fonts. Allow them if face name is explicitly specified.
12638 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 12639
048addec 126402001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 12641
048addec
JD
12642 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
12643 instead of malloc/free.
a78e0303 12644
048addec 126452001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 12646
048addec
JD
12647 * xfaces.c (merge_face_vectors): Use braces to follow GNU
12648 Coding Standards.
12649 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 12650
048addec 12651 * buffer.c (Fbury_buffer): Likewise.
0c99b139 12652
048addec 12653 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 12654
048addec
JD
12655 * coding.c (encode_coding): Use precomputed value of `src'.
12656 (encode_coding): Remove unused variable `src_end'.
12657 (code_convert_region): Remove unused variables `count'.
830ddd77 12658
048addec 126592001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 12660
048addec
JD
12661 * w32term.c (x_display_and_set_cursor): Do not move system caret
12662 if cursor_glyph is NULL.
55c6d645 12663
048addec 126642001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 12665
048addec 12666 * keymap.c (access_keymap): Fix compilation error.
5de38842 12667
048addec 126682001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 12669
048addec 12670 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 12671
048addec 126722001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 12673
048addec
JD
12674 * intervals.c (graft_intervals_into_buffer):
12675 Remove #ifdef'd-out code.
12676 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 12677
048addec
JD
12678 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
12679 code (eval-current-buffer).
12680 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 12681
048addec 126822001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 12683
048addec 12684 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 12685
048addec 126862001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 12687
048addec 12688 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 12689
048addec
JD
12690 * keyboard.c (make_lispy_event): Check integerness and fix
12691 Lisp_Object/int mixup.
17893c65 12692
048addec 126932001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 12694
048addec 12695 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 12696
048addec
JD
12697 * fontset.c (fontset_font_pattern): Remove unused variable
12698 `family_registry'.
d5360cc7 12699
048addec 12700 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 12701
048addec 127022001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 12703
048addec 12704 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 12705
048addec
JD
12706 * buffer.c (Fkill_buffer): Don't delete auto save file
12707 if buffer is modified.
d9d54213 12708
048addec 127092001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 12710
048addec
JD
12711 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
12712 CHECK_NUMBER_CDR.
b116830b 12713
048addec 127142001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 12715
048addec 12716 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 12717
048addec 127182001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 12719
048addec 12720 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 12721
048addec 127222001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 12723
048addec 12724 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 12725
048addec 127262001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 12727
048addec
JD
12728 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
12729 the program image directly.
982f6c7e 12730
048addec 127312001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 12732
048addec 12733 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 12734
048addec 127352001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 12736
048addec
JD
12737 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
12738 and CHECK_BUFFER.
d31053f9 12739
048addec
JD
12740 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
12741 (record_char): Likewise.
d31053f9 12742
048addec
JD
12743 * keyboard.c (make_lispy_event): Don't insist a drag event must
12744 move to a different buffer position. Instead, check for moving at
12745 least double_click_fuzz.
982f6c7e 12746
048addec 12747 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 12748
048addec 12749 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 12750
048addec
JD
12751 * indent.c (current_column_1, Fmove_to_column): Separate the code
12752 for display-table glyphs from the code for buffer text, to fix
12753 bugs in the former.
830047fd 12754
048addec 127552001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 12756
048addec
JD
12757 * buffer.c (Fbuffer_local_value): New function.
12758 (syms_of_buffer): Defsubr it.
2df5238c 12759
048addec
JD
12760 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
12761 value of `cursor-in-non-selected-windows'.
4e397688 12762
048addec
JD
12763 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
12764 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
12765 (syms_of_xdisp): Initialize it.
48b0f3ae 12766
048addec 127672001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 12768
048addec 12769 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 12770
048addec
JD
12771 * coding.c: Change doc-string comments to `new style' [w/`doc:'
12772 keyword].
3ecaf7e5 12773
048addec
JD
12774 * eval.c (top_level_value, top_level_set): Remove commented and
12775 #ifdef'd-out code.
12776 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 12777
048addec 127782001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 12779
048addec 12780 * xfns.c: Include unistd.h, if it exists.
8db2e33b 12781
048addec 12782 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 12783
048addec 12784 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 12785
048addec 127862001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 12787
048addec
JD
12788 * lisp.h (CHECK_STRING_CAR): New macro.
12789 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
12790 treating XCAR and XCDR as lvalues.
12791 (openp): Use CHECK_STRING_CAR.
12792 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 12793
048addec 127942001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 12795
048addec
JD
12796 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
12797 (SIGMASKTYPE): Define.
1b1acc13 12798
048addec 12799 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 12800
048addec 128012001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 12802
048addec
JD
12803 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
12804 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
12805 Fix typos in comments.
6cb16f95 12806
048addec
JD
12807 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
12808 and #ifdef'd-out code.
12809 Fix and reindent comments.
6cb16f95 12810
048addec 12811 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 12812
048addec
JD
12813 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
12814 argument `i' in macros.
6cb16f95 12815
048addec
JD
12816 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
12817 `i' in macros.
7e9d3c2f 12818
048addec
JD
12819 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
12820 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
12821 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
12822 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
12823 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
12824 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
12825 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
12826 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
12827 in macros.
7e9d3c2f 12828
048addec
JD
12829 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
12830 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
12831 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
12832 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
12833 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
12834 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
12835 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
12836 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
12837 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
12838 (remove unused second argument).
7e9d3c2f 12839
048addec 128402001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 12841
048addec
JD
12842 * syntax.c (describe_syntax): New wrapper.
12843 (Finternal_describe_syntax_value): Rename from describe_syntax.
12844 Don't insert space at front and \n at the end.
12845 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 12846
048addec
JD
12847 * regex.c (re_wctype): Try to fix some warnings.
12848 (regcomp, regexec): Don't forget the __restrict.
9ba48103 12849
048addec 128502001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 12851
048addec 12852 * textprop.c (Fget_char_property): Doc fix.
9ba48103 12853
048addec 128542001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 12855
048addec 12856 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 12857
048addec 12858 * data.c (Fsetq_default): Ditto.
c22e59e1 12859
048addec 12860 * callint.c (Finteractive): Ditto.
9271ed2c 12861
048addec 128622001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 12863
048addec
JD
12864 * macros.c: Don't include keymap.h any more.
12865
128662001-11-01 Richard M. Stallman <rms@gnu.org>
12867
12868 * data.c (Fmake_local_variable): Doc fix.
12869
12870 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
12871 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 12872
048addec 12873 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
12874 bindings along with or instead of the buffer local map.
12875 Make the overriding maps override what they should.
12876
f00691a3 128772001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
12878
12879 * window.c (grow_mini_window): Fix typo in comment.
12880
27188d11
GM
128812001-11-01 Gerd Moellmann <gerd@gnu.org>
12882
7b49b9d2
GM
12883 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
12884 (XTset_vertical_scroll_bar): Likewise.
12885
43f7c3ea
GM
12886 * xfns.c (x_build_heuristic_mask): Use four_corners_best
12887 instead of IMAGE_BACKGROUND.
c22e59e1 12888
b350c2e5
GM
12889 * xfns.c (four_corners_best): Reindent.
12890
c22e59e1 12891 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
12892 Handle :box so that it is possible to specify sexprs.
12893
bf00d461
EZ
128942001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
12895
12896 * s/hpux11.h: New file.
12897
f00691a3 128982001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 12899
2b209b97
PJ
12900 * emacs.c (USAGE1): Show command line option --no-window-system
12901 instead of --no-windows in usage.
12902 (standard_args): Rename --no-windows to --no-window-system.
12903 (bug_reporting_address): Follow Emacs coding conventions.
12904
9dbc9081
PJ
12905 * eval.c (Fcommandp): Doc fix.
12906 Change doc-string comments to `new style' [w/`doc:' keyword].
12907
4e10df59
PJ
12908 * frame.c (Fframe_live_p): Doc fix.
12909
12910 * buffer.c (selective-display-ellipses): Doc fix.
12911
dd387b25
GM
129122001-10-31 Gerd Moellmann <gerd@gnu.org>
12913
fe957e65
GM
12914 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
12915
dd387b25
GM
12916 * xfaces.c (realize_x_face): If C is not a single-byte character,
12917 set the face's colors_copied_bitwise_p instead of the defaulted_p
12918 members which have a different meaning.
12919 (free_face_colors): Do nothing for a face whose colors have been
12920 copied bitwise.
12921
c22e59e1 12922 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 12923
f00691a3 129242001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 12925
687784e8
PJ
12926 * marker.c, mocklisp.c: Change doc-string comments to `new style'
12927 [w/`doc:' keyword].
2e1280f8 12928
b9d9a9b9
GM
129292001-10-31 Gerd Moellmann <gerd@gnu.org>
12930
12931 * fns.c (require_unwind): Return Lisp_Object.
12932
f00691a3 129332001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 12934
fa1361cb
PJ
12935 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
12936 (last-input-char): Revert doc-string to be the same as the
12937 doc-string of `last-input-event'.
12938
6c465a15 12939 * xdisp.c: Fix typos in comments.
48400103 12940
eafa3196
GM
129412001-10-31 Gerd Moellmann <gerd@gnu.org>
12942
12943 * window.c (grow_mini_window): Handle case that the root
12944 window is already smaller than the nominal mininum height.
12945
747d3f2a
SM
129462001-10-30 Stefan Monnier <monnier@cs.yale.edu>
12947
bf9bb76f
SM
12948 * emacs.c (main): Don't call keys_of_macros any more.
12949
12950 * lisp.h (keys_of_macros): Remove.
12951
12952 * macros.c (keys_of_macros): Remove.
12953
747d3f2a
SM
12954 * xfaces.c (Fface_attribute_relative_p): Declare args.
12955
5e905a57
JR
129562001-10-30 Jason Rumney <jasonr@gnu.org>
12957
12958 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
12959 (enum_font_cb2): Ignore fonts with vertical orientation.
12960
3a426197
RS
129612001-10-30 Richard M. Stallman <rms@gnu.org>
12962
12963 * keyboard.c (Finput_pending_p): Doc fix.
12964
a742d646
GM
129652001-10-30 Gerd Moellmann <gerd@gnu.org>
12966
259cf6bc
GM
12967 * xterm.c (x_after_update_window_line): Don't run the code
12968 clearing in borders for rows whose visible height is 0.
12969
3f99f948
GM
12970 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
12971 resized_p flag is set. If not set, use the much less flickering
12972 method previously used.
12973
12974 * dispnew.c (change_frame_size_1): Set frame's resized_p.
12975
12976 * frame.h (struct frame) <resized_p>: New member.
12977
b4a3be43
GM
12978 * lread.c (to_multibyte): Ensure read_buffer is at least twice
12979 as large as the number of bytes to convert.
747d3f2a 12980
a742d646
GM
12981 * lread.c (to_multibyte): New function.
12982 (read1): Use it.
12983
cacbb9e9
EZ
129842001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
12985
12986 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
12987
99cb6b2f
GM
129882001-10-30 Gerd Moellmann <gerd@gnu.org>
12989
327f42ee 12990 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
12991 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
12992 if the row's fill_line_p is set and drawing the last glyph with
12993 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 12994
99cb6b2f
GM
12995 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
12996
8e8223e2
SM
129972001-10-29 Stefan Monnier <monnier@cs.yale.edu>
12998
12999 * xmenu.c: Include coding.h and charset.h.
13000 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
13001 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
13002 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
13003 Explicitly set wv->help. Use `TRUE' rather than `True'.
13004 (menu_help_callback): Use empty_string.
13005
13006 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
13007 (Fx_popup_dialog): Explicitly init f.
13008 (w32_menu_display_help): Use empty_string.
13009
4d083a8f
RS
130102001-10-29 Richard M. Stallman <rms@gnu.org>
13011
b2304472
RS
13012 * fns.c (Frequire): Detect recursive try to require the same
13013 feature 3 or more levels deep, and get error.
13014 (require_unwind): New subroutine.
13015 (require_nesting_list): New variable.
13016 (syms_of_fns): Init and staticpro it.
13017
4d083a8f
RS
13018 * print.c (print_object): Clarify indication of insertion type.
13019
2fe41216
EZ
130202001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
13021
90480000
EZ
13022 * coding.c (syms_of_coding): Document that locale-coding-system is
13023 used for decoding input on X.
13024
2fe41216
EZ
13025 * window.c (Fscroll_left, Fscroll_right): Doc fix.
13026
f00691a3 130272001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
13028
13029 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
13030 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
13031
60ebcfe8
GM
130322001-10-29 Gerd Moellmann <gerd@gnu.org>
13033
9a7bdceb
GM
13034 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
13035 use NO_CURSOR if cursor_in_non_selected_windows is false.
13036
3f08fcd2
GM
13037 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
13038 the slant attribute if FRAME is t.
13039
0ccfdad2
GM
13040 * xfns.c (x_set_internal_border_width): Set frame garbaged
13041 when X window doesn't exist yet.
13042
ef253080
GM
13043 * xterm.c (x_after_update_window_line): Clear internal border
13044 in different circumstances.
b116830b 13045
60ebcfe8
GM
13046 * xterm.c (XTread_socket) <KeyPress>: Don't use
13047 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
13048 <handa@etl.go.jp>.
13049
73d25f9c
EZ
130502001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
13051
13052 * m/ibms390.h: New file. From Adam Thornton
13053 <athornton@sinenomine.net>.
13054
cac1daf0
GM
130552001-10-28 Gerd Moellmann <gerd@gnu.org>
13056
053b3256 13057 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 13058
cac1daf0
GM
13059 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
13060 a loop counter.
13061
f00691a3 130622001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 13063
186486eb
PJ
13064 * emacs.c: Use argv[0] instead of emacs when -t was specified.
13065
4707d2d0
PJ
13066 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
13067 keyword].
13068 Fix typos in comments.
b116830b 13069
d883731c
PJ
13070 * emacs.c (bug_reporting_address): New function.
13071 Use it when displaying usage message.
13072
04012254
PJ
13073 * minibuf.c (read_minibuf): Remove unused external declaration of
13074 variable `Qread_only'.
13075
13b1a09c
PJ
13076 * keymap.c (access_keymap): Remove unused variable `charset'.
13077
5bbf4378
MB
130782001-10-28 Miles Bader <miles@gnu.org>
13079
13080 * xfaces.c (merge_face_heights): Handle TO being relative as well.
13081 Remove #ifdef'd-out code.
13082 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
13083 (syms_of_xfaces): Initialize them.
13084
1ce1e4ee
JR
130852001-10-27 Jason Rumney <jasonr@gnu.org>
13086
13087 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
13088 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
13089 position using the system caret.
13090
13091 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
13092 (w32_system_caret_height, w32_system_caret_x)
13093 (w32_system_caret_y): New variables for tracking system caret.
13094 (w32_initialize): Initialize them.
c2d53558 13095 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 13096
c2d53558
SM
13097 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
13098 New messages types.
1ce1e4ee
JR
13099
13100 * w32term.c (note_mouse_highlight): Clear old help_echo.
13101
f00691a3 131022001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 13103
bb4600a4
PJ
13104 * xterm.c: Fix typo in a comment.
13105
7db35a48
PJ
13106 * emacs.c: Fix typos in comments.
13107 Remove unnecessary spaces.
13108 Change doc-string comments to `new style' [w/`doc:' keyword].
13109 (USAGE2): Fix typos in usage string.
13110
a7248e4f
PJ
13111 * xterm.c: Fix typo in a comment.
13112
4e30ce42
PJ
13113 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
13114 emacs.c.
13115
62725a92
GM
131162001-10-27 Gerd Moellmann <gerd@gnu.org>
13117
798dbe1f 13118 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 13119 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
13120 farther backward when target_y was not reached.
13121
62725a92
GM
13122 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
13123 Display errno only if non-zero.
13124 (sound_warning): New function.
13125 (vox_configure): Don't treat failing to set sample rate as error.
13126 (various places): Improve error messages.
13127
d4e34d24
EZ
131282001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
13129
944e6f60
EZ
13130 * fileio.c (Faccess_file): Run the argument filename through
13131 Fexpand_file_name, before using it.
13132
d4e34d24
EZ
13133 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
13134 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
13135
38d2af0c
GM
131362001-10-26 Gerd Moellmann <gerd@gnu.org>
13137
da80a8d5
GM
13138 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
13139
38d2af0c
GM
13140 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
13141 Fix clearing in the case of scroll bars on the right.
c2d53558 13142
45de4a6f 131432001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
13144
13145 * w32gui.h (XImage): Add a dummy typedef.
13146
fbd5ceb2
GM
131472001-10-26 Gerd Moellmann <gerd@gnu.org>
13148
c2d53558 13149 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 13150
b23236fb
EZ
131512001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
13152
13153 * frame.c (Fframe_parameter): Fix last change.
13154
5d991fc4
EZ
13155 * fileio.c: Revert last change (which removed old commented-out
13156 version of expand-file-name). Add a comment that explains why
13157 this old version should not be removed.
13158
879eadc3
GM
131592001-10-25 Gerd Moellmann <gerd@gnu.org>
13160
75700ff2
GM
13161 * frame.c (Fframe_parameter): Fix a bug whereby some
13162 ``artificial'' frame parameters, like `minibuffer' were not
13163 obtained by calling Fframe_parameters.
13164
dfe92a6a
GM
13165 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
13166 cursor differently.
13167
879eadc3
GM
13168 * xdisp.c (move_it_vertically_backward): Compute line height
13169 differently. Add heuristic to try to be more compatible to 20.x.
13170
e1010ebe
SM
131712001-10-25 Stefan Monnier <monnier@cs.yale.edu>
13172
d73a471b
SM
13173 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
13174
d6da5a06
GM
13175 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
13176 boolean.
e1010ebe 13177
f66bd220
MB
131782001-10-25 Miles Bader <miles@gnu.org>
13179
13180 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
13181 BG is a pointer to a structure, not a structure.
13182 (gif_format, png_format): Add missing commas.
13183
d436d538
RS
131842001-10-24 Richard M. Stallman <rms@gnu.org>
13185
13186 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 13187 (syms_of_xfaces): Defsubr it.
d436d538 13188
f00691a3 131892001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
13190
13191 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
13192 variable `area'.
13193
f00691a3 131942001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 13195
c2d53558 13196 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 13197
e2a57b34
MB
131982001-10-25 Miles Bader <miles@gnu.org>
13199
13200 * dispextern.h (struct image): Add `background',
13201 `background_valid', and `background_transparent' fields.
13202 (image_background, image_background_transparent): New declarations.
13203 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
13204 * xfns.c (image_background, image_background_transparent)
13205 (four_corners_best): New functions.
c2d53558 13206 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
13207 (gs_format): Add `:background' entry.
13208 (lookup_image): Set IMG's background color if specified.
13209 (pbm_load, xbm_load_image, png_load): Set IMG's background field
13210 when appropriate.
13211 (x_clear_image_1): Reset `background_valid' and
13212 `background_transparent_valid' fields.
13213 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
13214 calculating it here. Set IMG's background_transparent field.
13215 (enum xpm_keyword_index): Add XPM_BACKGROUND.
13216 (enum png_keyword_index): Add PNG_BACKGROUND.
13217 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
13218 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
13219 (enum gif_keyword_index): Add GIF_BACKGROUND.
13220 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 13221 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
13222 Pre-calculate image background color where necessary.
13223 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
13224 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
13225 color to use for image glyph reliefs.
13226
b547b6e8
GM
132272001-10-24 Gerd Moellmann <gerd@gnu.org>
13228
d9e3b8c6
GM
13229 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
13230 in full-width rows.
c2d53558 13231
b547b6e8
GM
13232 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
13233 Fix clearing of area not covered by scroll bar.
13234
f00691a3 132352001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
13236
13237 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
13238 and `real_start'.
c2d53558 13239 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
13240 (glyph_rect): Remove unused variable `area'.
13241
76cb5e06
GM
132422001-10-24 Gerd Moellmann <gerd@gnu.org>
13243
bdbdebff 13244 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
13245
13246 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
13247 (row_containing_pos): Take additional argument DY.
13248 Treat rows ending in middle of char differently.
62e33982
GM
13249 (display_line): Handle tabs on window systems differently.
13250
13251 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
13252 with additional argument.
13253
13254 * dispextern.h (row_containing_pos): Adjust prototype.
13255
76cb5e06
GM
13256 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
13257 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
13258 (try_window_id, try_window_reusing_current_matrix)
13259 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 13260 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 13261
f00691a3 132622001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 13263
c9e60620
PJ
13264 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
13265 gnuemacs).
13266 (HAVE_BOXES): Fix typo in comment.
13267 (push_menu_pane): Fix typo in comment.
13268
3b552d56
PJ
13269 * xdisp.c: (display_prop_string_p): Remove unused local declaration
13270 of `Qwhen'.
13271 (single_display_prop_string_p): Remove unused local declarations
13272 of `Qwhen' and `Qmargin'.
13273 (string_buffer_position): Remove unused variable `around'.
13274 (store_frame_title): Remove unused variable `width'.
13275
15c565ac
PJ
13276 * window.c: Don't define max.
13277 (coordinates_in_window): Remove unused variable `uy'.
13278
a8818eb9
PJ
13279 * widget.c: Don't define max.
13280
996fee11
PJ
13281 * process.c: Don't define max.
13282 (create_process): Remove unused variable `buffer'.
13283
496e1a5b
GM
132842001-10-23 Gerd Moellmann <gerd@gnu.org>
13285
c2d53558 13286 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 13287
5905ae8b
EZ
132882001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
13289
13290 * xfaces.c (Finternal_set_lisp_face_attribute)
13291 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
13292 frame is on a windowed display.
13293
24db49fb
GM
132942001-10-23 Gerd Moellmann <gerd@gnu.org>
13295
c2d53558
SM
13296 * dispnew.c (sync_window_with_frame_matrix_rows):
13297 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
13298 of marginal areas.
13299
c2d53558 13300 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 13301
f0487f05
EZ
133022001-10-23 Andreas Schwab <schwab@suse.de>
13303
13304 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
13305 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
13306
f0a48a01
GM
133072001-10-23 Gerd Moellmann <gerd@gnu.org>
13308
c2d53558 13309 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
13310 REAL_END. Notice if cursor gets overwritten.
13311 (notice_overwritten_cursor): Take X positions as parameters.
13312 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
13313 around call to x_draw_glyphs.
13314
f00691a3 133152001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 13316
fc11dff0
PJ
13317 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
13318 instead of C) and usage.
a50a10a0 13319
fc11dff0
PJ
13320 * editfns.c (char-to-string): Fix argument names (use CHAR instead
13321 of C) and usage.
a50a10a0
PJ
13322
13323 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
13324 `left', `max_width' and `max_height'.
13325
8738febd
GM
133262001-10-23 Gerd Moellmann <gerd@gnu.org>
13327
13328 * xdisp.c (display_line): For a tab continued to the next line,
13329 set row's ends_in_middle_of_char_p.
13330
653c329b
GM
133312001-10-22 Gerd Moellmann <gerd@gnu.org>
13332
13333 * xdisp.c (display_line): Fix computation of continuation lines
13334 width for TABs.
13335
f00691a3 133362001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 13337
7ba51063
PJ
13338 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
13339 `Qlaplace'.
13340
f958c5ac
PJ
13341 * fileio.c: Remove unused code.
13342
eb360291
MB
133432001-10-22 Miles Bader <miles@gnu.org>
13344
13345 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
13346 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
13347 Remove `DOC_STRINGS_IN_COMMENTS' cases.
13348
98515cf0
JR
133492001-10-21 Jason Rumney <jasonr@gnu.org>
13350
13351 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
13352
93026d88
EZ
133532001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
13354
13355 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
13356 (Finsert_string): Avoid the multi-line string literals warning.
13357
c9a95b79
MB
133582001-10-22 Miles Bader <miles@gnu.org>
13359
13360 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
13361 (Fdocumentation): Don't use it.
13362 (syms_of_doc): Don't initialize it.
13363
13364 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
13365 * print.c (Fwith_output_to_temp_buffer): Likewise.
13366 * window.c (Fsave_window_excursion): Likewise.
c2d53558 13367 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 13368 (Fsave_restriction): Likewise.
c2d53558
SM
13369 * eval.c (Frun_hooks, Frun_hook_with_args)
13370 (Frun_hook_with_args_until_failure)
13371 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
13372 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
13373 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
13374 (Funwind_protect, Fcondition_case): Likewise.
13375 * coding.c (Ffind_operation_coding_system): Likewise.
13376 * keyboard.c (Ftrack_mouse): Likewise.
13377
a3b10252
MB
133782001-10-21 Miles Bader <miles@gnu.org>
13379
c2d53558 13380 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
13381 (Fmake_hash_table): Add usage: string to doc string.
13382 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 13383 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
13384 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
13385 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
13386 (Fml_prefix_argument_loop): Likewise.
13387
f00691a3 133882001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 13389
c2d53558 13390 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 13391
c6f73eec
PJ
13392 * sysdep.c (init_sys_modes): Change doc-string comments to `new
13393 style' [w/`doc:' keyword].
13394
13395 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
13396 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
13397 comments to `new style' [w/`doc:' keyword].
13398
3cf3436e
JR
133992001-10-21 Jason Rumney <jasonr@gnu.org>
13400
13401 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
13402
c169b8f1
JR
13403 * w32term.c (remember_mouse_glyph): New function.
13404 (w32_mouse_position): Use it.
13405 (note_mouse_movement): If the mouse moved off the glyph, remember
13406 its new position.
c2d53558 13407
4fdd691b
JR
13408 * w32term.h (struct w32_output): Correct spelling of x_compatible.
13409 (w32_display_info): Add mouse_face_overlay.
13410
c169b8f1
JR
13411 * w32term.c (notice_overwritten_cursor): Renamed from
13412 note_overwritten_text_cursor. Rewritten to take glyph widths into
13413 account.
13414 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
13415 (fast_find_string_pos): New function.
13416 (fast_find_position): Return the correct vpos. Add parameter
13417 STOP. In the final row, stop before glyphs having STOP as object.
13418 Don't consider glyphs that are not from a buffer.
13419 (fast_find_position) [0]: Add a presumably more correct version
13420 for after 21.1.
13421 (expose_window_tree, expose_frame): Don't compute intersections here.
13422 (expose_window): Do it here instead.
13423 (expose_window_tree, expose_window, expose_line): Return 1 when
13424 overwriting mouse-face.
13425 (expose_window): If W is the window currently being updated, mark
13426 the frame garbaged.
13427 (expose_frame): If mouse-face was overwritten, redo it.
13428 (x_use_underline_position_properties): New variable.
13429 (syms_of_xterm): DEFVAR_BOOL it.
13430 (x_draw_glyph_string): Add comment to use it in future.
13431 (x_draw_glyph_string): Restore clipping after drawing box.
13432 Fix a computation of the underline position.
13433 (w32_get_glyph_string_clip_rect): Minor cleanup.
13434 (x_fill_stretch_glyph_string): Remove an assertion.
13435 (x_produce_glyphs): Don't convert multibyte characters
13436 to unibyte characters in unibyte buffers.
13437 (cursor_in_mouse_face_p): New function.
13438 (x_draw_stretch_glyph_string): Use it to choose a different GC
13439 when drawing a cursor within highlighted text. Don't draw
13440 background again if it has already been drawn.
13441 (x_draw_glyph_string_box): Don't draw a full-width
13442 box just because the glyph row's full_width_p flag is set.
13443 (x_draw_glyphs): Fix computation of rightmost x for
13444 full-width rows.
13445 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
13446 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
13447 change bottom shadow accordingly. Some cleanup.
13448 (x_update_window_end): Handle overwritten mouse face
13449 also for tool bar windows.
13450 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
13451 DRAW is DRAW_IMAGE_RAISED.
13452 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
13453 actually redrawn. Make the function static.
13454 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
13455 optimize away highlighting if we pass over that same overlay again.
13456 (note_mouse_highlight): Call mouse_face_overlay_overlaps
13457 to detect a case where we have to highlight a different region
13458 despite not having left the currently highlighted region.
13459 Set mouse_face_overlay in the x_display_info. Avoid changing the
13460 mouse pointer shape when show_mouse_face has already done it, or
13461 there is no need. Handle mouse-face and help-echo in strings.
13462 (glyph_rect): New function.
13463 (w32_mouse_position): Use it to raise the threshold for mouse
13464 movement event generation.
13465 (w32_initialize_display_info): Initialize the x_display_info's
13466 mouse_face_overlay.
13467 (w32_set_vertical_scroll_bar): Don't clear a zero height
13468 or width area.
13469 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
13470 a widget to zero height.
13471
3cf3436e 13472 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 13473 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
13474 equivalents in menu_items.
13475 (w32_menu_show): Don't overwrite an item's name with its key
13476 description in case the description is a multibyte string.
13477 (single_submenu): Some cleanup.
13478
13479 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
13480 (postprocess_image): New function.
13481 (lookup_image): Call it for all image types except PostScript.
13482 (x_kill_gs_process): Call postprocess_image.
13483 (tiff_error_handler, tiff_warning_handler): New functions.
13484 (tiff_load): Install them as handlers.
13485 (x_kill_gs_process): Recognize if someone has cleared the image
13486 cache under us.
13487 (valid_image_p): Protect better against invalid image
13488 specifications. Previous code could signal an error.
13489 (Fx_hide_tip, Fshow_tip): Doc fix.
13490 (Fv_max_tooltip_size): New variable.
13491 (syns_of_xfns): DEFVAR_LISP it.
13492 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
13493 window buffer to *tip* right after creating the frame. Set frame's
13494 window_width. Use a maximum tooltip size specified by
13495 Vx_max_tooltip_size, if that has valid contents.
13496 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
13497 Make sure the tooltip is completely visible.
13498 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
13499 (Fx_create_frame): Adjust the frame's height for presence
13500 of the tool bar before calling x_figure_window_size.
13501 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
13502 when the window gets smaller.
13503 (x_set_foreground_color): Set frame's cursor_pixel.
13504 (x_set_foreground_color, x_set_background_color): Cleaned up.
13505 (x_set_font): Handle case of x_new_fontset returning the same name
13506 as before, although there was a change in fontsets.
13507
386ca361
MB
135082001-10-21 Miles Bader <miles@gnu.org>
13509
c2d53558 13510 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
13511 (Flogxor): Add usage: string to doc string.
13512 * charset.c (Fstring): Likewise.
13513 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
13514 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
13515
f00691a3 135162001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 13517
03be2694
PJ
13518 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
13519
13520 * alloc.c: Reindent DEFUNs with doc: keywords.
13521
13522 * abbrev.c (Finsert_abbrev_table_description): Reindent.
13523
14ff1ee0
PJ
13524 * frame.c: Change doc-string comments to `new style' [w/`doc:'
13525 keyword].
13526
2f147815 13527See ChangeLog.9 for earlier changes.
6922b018
KH
13528
13529;; Local Variables:
49b3bd82 13530;; coding: iso-2022-7bit
6922b018 13531;; End:
2a34a036 13532
2f147815 13533 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
13534 Copying and distribution of this file, with or without modification,
13535 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
13536
13537;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4