(syms_of_print) <print-escape-nonascii>: Doc fix.
[bpt/emacs.git] / src / ChangeLog
... / ...
CommitLineData
12003-05-28 Dave Love <fx@gnu.org>
2
3 * eval.c (unbind_to): Fix last change for K&R. From rms.
4
52003-05-28 Kim F. Storm <storm@cua.dk>
6
7 * xdisp.c (expose_window): Fix error in calculation of
8 window relative coordinates of area to redisplay.
9
102003-05-27 Jason Rumney <jasonr@gnu.org>
11
12 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
13
142003-05-27 David Ponce <david@dponce.com>
15
16 Handle W32 mouse wheel events as mouse click events, like in X.
17
18 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
19 MOUSE_WHEEL_EVENT anymore.
20
21 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
22 Scrolling down/up the mouse wheel is respectively mapped to mouse
23 button 4 and 5.
24 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
25 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
26 WM_MOUSEWHEEL events.
27
282003-05-27 Andreas Schwab <schwab@suse.de>
29
30 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
31
32 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
33 partially visible line.
34
35 * alloc.c (Fgarbage_collect): Fix last change.
36
372003-05-26 John Paul Wallington <jpw@gnu.org>
38
39 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
40
412003-05-25 Stefan Monnier <monnier@cs.yale.edu>
42
43 * window.c (Fset_window_buffer): Add type of `keep_margins'.
44 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
45
46 * window.h (window_box_text_cols): Declare.
47
48 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
49 (x_draw_vertical_border): Remove unused var `f'.
50
51 * xfaces.c (build_scalable_font_name): Remove `unused var
52 pixel_size' warning.
53
54 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
55
56 * unexelf.c (unexec): Remove `unused var n' warning.
57
58 * strftime.c (my_strftime_localtime_r): Remove `defined but
59 unused' warning.
60
61 * process.c (allocate_pty): Remove `unused var stb' and
62 `cp might be used uninitialized' warnings.
63
64 * dispnew.c (mode_line_string): Remove unused var `f'.
65
66 * coding.c (find_safe_codings): Remove unused var `i'.
67
68 * bytecode.c (Fbyte_code): Remove `unused val' warning.
69
70 * buffer.c (Fkill_buffer): Remove unused var `list'.
71
72 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
73
742003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
75
76 * frame.c (make_frame): Condition want_fullscreen with
77 HAVE_WINDOW_SYSTEM.
78
792003-05-25 Juanma Barranquero <lektu@terra.es>
80
81 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
82 (Fwindow_scroll_bars): Fix typo in docstring.
83
842003-05-24 Kim F. Storm <storm@cua.dk>
85
86 The following changes serve several purposes:
87
88 1) Swap the position of fringes and display margins in windows, i.e.
89 the fringes are now displayed between the margins and the text area
90 (by default).
91
92 2) Allow fringe and scroll bar parameters to be set per-buffer and
93 per-window (like display margins). Such settings are now stored
94 in window configurations, preserved when frames are resized, and
95 copied when windows are split vertically or horizontally.
96 Several bugs related to display margins have been fixed.
97
98 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
99
100 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
101 rather than FRAME_WIDTH (FRAME_FONT (f)).
102
103 5) Introduce a consistent naming of variables, members and macros
104 depending on whether their value is measured in pixels or in
105 canonical columns/lines. Pixel dimensions are named *_width and
106 *_height, while canonical columns/lines are named *_cols and
107 *_lines. Pixel positions are named *_x and *_y, while column/line
108 positions are named *_col and *_line.
109
110 6) Consolidate more of the X, W32, and MAC gui code by moving
111 common data into struct frame, and generalize it for the non-gui
112 case by using suitable defaults.
113
114 7) Cleanup and consolidate the macros controlling frame and window
115 layout into frame.h and window.h, and generalize the use of the
116 various window_box_* functions (enhanced to handle the new fringe
117 position and the per-window fringe and scroll bar settings).
118
119 * frame.h (struct frame): Rename members height to text_lines,
120 width to text_cols, window_height to total_lines, window_width to
121 total_cols, new_height to new_text_lines, new_width to
122 new_text_cols. All uses changed.
123 (struct frame): New members which consolidate common members of
124 x_output, w32_output, and mac_output structures: left_pos,
125 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
126 win_gravity, size_hint_flags, border_width, internal_border_width,
127 line_height, fringe_cols, left_fringe_width, right_fringe_width,
128 want_fullscreen. All uses changed.
129 (struct frame): New member column_width contaning the canonical
130 column width, analogue to line_height. All uses changed.
131 (struct frame): Rename members scroll_bar_pixel_width to
132 config_scroll_bar_width, and scroll_bar_cols to
133 config_scroll_bar_cols. All uses changed.
134 (struct frame): New member scroll_bar_actual_width which
135 consolidates and renames the vertical_scroll_bar_extra member of
136 x_output, w32_output, and mac_output structures. All uses changed.
137 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
138 from x/w32/macterm.h files. All uses changed. Also change code
139 which referred to f->output_data...->pixel_height.
140 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
141 from x/w32/macterm.h files. All uses changed. Also change code
142 which referred to f->output_data...->pixel_width.
143 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
144 Also change code which referred to f->height.
145 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
146 Also change code which referred to f->width.
147 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
148 to update new_text_lines and new_text_cols members directly.
149 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
150 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
151 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
152 FRAME_SCROLL_BAR_COLS. All uses changed.
153 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
154 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
155 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
156 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
157 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
158 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
159 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
160 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
161 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
162 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
163 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
164 return line_height member (it now has proper value also for
165 non-window frames).
166 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
167 return new column_width member (rather than the default font width).
168 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
169 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
170 from x/w32/macterm.h files. Unconditionally return corresponding
171 member of frame structure (they now have proper values also for
172 non-window frames).
173 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
174 Calculate return value from left and right widths.
175 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
176 internal_border_width member (has proper value for non-window frame).
177 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
178 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
179 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
180 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
181 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
182 consolidated from xterm.h, macterm.h, and w32term.h.
183 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
184 consolidated from xterm.h, macterm.h, and w32term.h.
185 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
186 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
187 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
188 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
189 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
190 consolidated from x/mac/w32term.h.
191 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
192 consolidated from x/mac/w32term.h.
193 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
194 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
195 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
196 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
197
198 * window.h (struct window): Rename members left to left_col,
199 top to top_line, height to total_lines, width to total_cols,
200 left_margin_width to left_margin_cols, right_margin_width to
201 right_margin_cols, orig_height to orig_total_lines, orig_top to
202 orig_top_line. All uses changed.
203 (struct window): New members left_fringe_width, right_fringe_width,
204 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
205 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
206 New macros primarily used to simplify other macros.
207 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
208 referred to XINT (w->width).
209 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
210 referred to XINT (w->height).
211 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
212 referred to XINT (w->width) * canon_x_unit.
213 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
214 referred to XINT (w->height) * canon_y_unit.
215 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
216 referred to XINT (w->left).
217 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
218 all uses and code that referred to XINT (w->left) + XINT (w->width).
219 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
220 referred to XINT (w->top).
221 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
222 referred to XINT (w->top) + XINT (w->height).
223 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
224 referred to XINT (w->left) * canon_x_unit.
225 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
226 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
227 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
228 referred to XINT (w->top) * canon_y_unit.
229 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
230 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
231 (WINDOW_LEFTMOST_P): New macro.
232 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
233 All uses changed.
234 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
235 All uses changed.
236 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
237 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
238 Do not exclude left fringe width.
239 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
240 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
241 Do not exclude fringe widths.
242 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
243 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
244 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
245 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
246 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
247 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
248 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
249 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
250 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
251 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
252 New macros. Change code which referenced corresponding
253 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
254 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
255 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
256 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
257 allow per-window scroll-bar settings.
258 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
259 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
260 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
261 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
262 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
263 FRAME_SCROLL_BAR_WIDTH.
264 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
265 (WINDOW_SCROLL_BAR_AREA_X): New macros.
266 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
267 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
268 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
269 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
270 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
271 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
272 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
273 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
274 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
275 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
276 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
277 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
278 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
279 (window_from_coordinates): Update prototype.
280 (Fset_window_buffer): Update EXFUN.
281 (set_window_buffer): Update prototype.
282
283 * dispextern.h (struct glyph_matrix): Rename members window_left_x
284 to window_left_col, window_top_y to window_top_line. All uses
285 changed.
286 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
287 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
288 internal_border_width is now set to 0 for non-window frames.
289 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
290 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
291 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
292 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
293 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
294 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
295 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
296 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
297 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
298 Move to window.h and renamed [see window.h changes].
299 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
300 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
301 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
302 Use WINDOW_TOTAL_LINES.
303 (frame_update_line_height): Remove prototype.
304
305 * buffer.h (struct buffer): Rename members measured in columns:
306 left_margin_width to left_margin_cols, right_margin_width to
307 right_margin_cols. All uses changed.
308 New members left_fringe_width, right_fringe_width,
309 fringes_outside_margins for per-buffer fringe settings.
310 New members scroll_bar_width and vertical_scroll_bar_type for
311 per-buffer scroll bar settings.
312
313 * buffer.c (init_buffer_once): Set buffer_defaults and
314 buffer_local_flags for new buffer-local variables
315 left_fringe_width, right_fringe_width, fringes_outside_margins,
316 scroll_bar_width, and vertical_scroll_bar_type.
317 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
318 default-* variables for them.
319
320 * dispnew.c: Make (many) trivial substitutions for renamed and
321 new macros in dispextern.h, frame.h and window.h.
322 (mode_line_string): No need to adjust width for mode lines, as it
323 is already adjusted by the caller.
324 (marginal_area_string): Handle fringes inside/outside margins.
325
326 * frame.c: Make (many) trivial substitutions for renamed and
327 new macros in dispextern.h, frame.h and window.h.
328 (make_frame): Initialize left_fringe_width, right_fringe_width,
329 fringe_cols, scroll_bar_actual_width, border_width,
330 internal_border_width, column_width, line_height, x_pixels_diff,
331 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
332 members with values suitable for a non-window frames.
333
334 * gtkutil.c: Make (many) trivial substitutions for renamed and
335 new macros in dispextern.h, frame.h and window.h.
336
337 * indent.c: Make (few) trivial substitutions for renamed and
338 new macros in dispextern.h, frame.h and window.h.
339
340 * keyboard.c: Make (many) trivial substitutions for renamed and
341 new macros in dispextern.h, frame.h and window.h.
342 (make_lispy_event): Use window positions returned from
343 window_from_coordinates when constructing the lisp event for
344 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
345 (incorrect) values locally.
346 (make_lispy_movement): Use window positions returned from
347 window_from_coordinates when constructing the lisp event, rather
348 than calculating (incorrect) values locally.
349
350 * scroll.c: Make (some) trivial substitutions for renamed and
351 new macros in dispextern.h, frame.h and window.h.
352
353 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
354 scroll-bars.
355
356 * sysdep.c: Make (few) trivial substitutions for renamed and
357 new macros in dispextern.h, frame.h and window.h.
358
359 * term.c: Make (some) trivial substitutions for renamed and
360 new macros in dispextern.h, frame.h and window.h.
361
362 * widget.c: Make (few) trivial substitutions for renamed and
363 new macros in dispextern.h, frame.h and window.h.
364
365 * window.c: Make (many) trivial substitutions for renamed and
366 new macros in dispextern.h, frame.h and window.h.
367 (make_window): Initialize new members
368 left_margin_cols, right_margin_cols, left_fringe_width,
369 right_fringe_width, fringes_outside_margins, scroll_bar_width,
370 and vertical_scroll_bar_type.
371 (coordinates_in_window): Adapted to new fringe/margin positions
372 and per-window fringes and scroll-bars.
373 Fix bug related to incorrectly adjusting coordinates by
374 frame's internal_border_width (the effect normally negible since
375 the internal_border_width is typically 0 or 1 pixel, but very
376 noticeable for an internal_border_width of e.g. 25 pixels).
377 Upon successful return (other than ON_NOTHING), the coordinates
378 are now always properly converted to window relative for the
379 given display element.
380 (window_from_coordinates): Add new parameters wx and wy to
381 return the window relative x and y position in the returned
382 window and part. A null arg means, don't return the position.
383 All callers changed.
384 (adjust_window_margins): New function which may reduce the width
385 of the display margins if a window's text area is too small after
386 resizing or splitting windows.
387 (size_window): Fix bug that did not account for display margin
388 widths when checking the minimum width of a window; use
389 adjust_window_margins.
390 (set_window_buffer): Call Fset_window_fringes and
391 Fset_window_scroll_bars to setup per-window elements.
392 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
393 existing display margin, fringe widths, and scroll bar settings
394 (e.g. after splitting a window or resizing the frame).
395 All callers changed.
396 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
397 (Fsplit_window): Duplicate original window's display margin,
398 fringe, and scroll-bar settings; then call Fset_window_buffer with
399 KEEP_MARGINS non-nil. This fixes a bug which caused a split
400 window to only preserve the display margins in one of the windows.
401 When splitting horizontally, call adjust_window_margins on both
402 windows to ensure that the text area of the new windows is non too
403 narrow. This fixes a bug which could cause emacs to trap if the
404 width of the split window was less than the width of the display
405 margins.
406 (window_box_text_cols): Renamed from window_internal_width.
407 All uses changed. Adapt to per-window fringes and scroll bars.
408 Fix bug that caused vertical separator to be subtracted also on
409 window frames. Fix another bug that did not reduce the returned
410 value by the columns used for display margins.
411 (window_scroll_line_based): Fix bug related to scrolling too much
412 when display margins are present (implicitly fixed by the fix to
413 window_box_text_cols).
414 (scroll_left, scroll_right): Fix bug related to scrolling too far
415 by default when display margins are present (implicitly fixed by
416 the fix to window_box_text_cols).
417 (struct saved_window): Rename members left to left_col, top to
418 top_line, width to total_cols, height to total_lines, orig_top to
419 orig_top_line, orig_height to orig_total_lines. All uses changed.
420 New members left_margin_cols, right_margin_cols,
421 left_fringe_width, right_fringe_width, fringes_outside_margins,
422 scroll_bar_width, and vertical_scroll_bar_type for saving
423 per-window display elements.
424 (Fset_window_configuration): Restore display margins, fringes,
425 and scroll bar settings. This fixes a bug which caused display
426 margins to be discarded when saving and restoring a window
427 configuration.
428 (save_window_save): Save display margins, fringes, and scroll bar
429 settings. This fixes a bug which caused display margins to be
430 discarded when saving and restoring a window configuration.
431 (Fset_window_margins): Do nothing if display margins are not
432 really changed. Otherwise, call adjust_window_margins to ensure
433 the text area doesn't get too narrow. This fixes a bug which
434 could cause emacs to trap if setting display margins wider than
435 the width of the window.
436 (Fset_window_fringes): New defun to allow user to specifically set
437 this window's fringe widths and position vs. display margins.
438 (Fwindow_fringes): New defun to return window's actual fringe
439 settings.
440 (Fset_window_scroll_bars): New defun to allow user to specifically
441 set this window's scroll bar width and position.
442 (Fwindow_scroll_bars): New defun to return window's actual scroll
443 bar settings.
444 (compare_window_configurations): Also compare display margins,
445 fringes, and scroll bar settings.
446 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
447
448 * xdisp.c: Make (many) trivial substitutions for renamed and
449 new macros in dispextern.h, frame.h and window.h.
450 (window_box_width): Adapt to per-window fringes and scroll bars,
451 and new fringe vs. display margin position. Note that returned
452 value is no longer guaranteed to be a whole multiple of the frame
453 column width, since per-window fringes may now be any width.
454 (window_box_left_offset): New function like window_box_left, but
455 value is relative to left border of window (rather than frame).
456 (window_box_right_offset): New function like window_box_right,
457 but value is relative to left border of window.
458 (window_box_left): Adapt to per-window fringes and scroll bars,
459 and new fringe vs. display margin position. Simplify by using
460 WINDOW_LEFT_EDGE_X and window_box_left_offset.
461 (window_box): Allow null args for unnecessary return values;
462 change/simplify relevant callers.
463 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
464 and new fringe vs. display margin position.
465 Use window_box_left_offset and window_box_right_offset
466 (get_glyph_string_clip_rect): Adapt to per-window fringes and
467 scroll bars, and new fringe vs. display margin position.
468 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
469 (draw_fringe_bitmap): Rework to handle per-window fringes and new
470 fringe vs. display margin position.
471 (hscroll_window_tree): Use window_box_width instead of window_box.
472 (redisplay_window): Adapt to per-window scroll bars.
473 (draw_glyphs): Rework to handle per-window fringes and scroll
474 bars, and new fringe vs. display margin position.
475 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
476 (x_clear_end_of_line): Adapt to per-window fringes and scroll
477 bars, and new fringe vs. display margin position. Fix bug which
478 increased total width of full_width rows by width of scroll bars
479 although window's total width already includes that.
480 (x_fix_overlapping_area): Simplify using window_box_left_offset.
481 (expose_area): Simplify using window_box_left_offset.
482 (x_draw_vertical_border): Handle per-window scroll bar settings,
483 mixing windows with left, right and no scroll bars.
484
485 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
486 where it's used in x_list_fonts (for clarity).
487 (frame_update_line_height): Remove unused function; functionality
488 is now done directly when setting the default font in x_set_font.
489
490 * xfns.c: Make (many) trivial substitutions for renamed and
491 new macros in dispextern.h, frame.h and window.h.
492
493 * xmenu.c: Make (some) trivial substitutions for renamed and
494 new macros in dispextern.h, frame.h and window.h.
495
496 * xterm.h (struct x_output): Move members left_pos, top_pos,
497 border_width, pixel_height, pixel_width, line_height,
498 internal_border_width, vertical_scroll_bar_extra,
499 left_fringe_width, right_fringe_width, fringe_cols,
500 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
501 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
502 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
503 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
504 (PIXEL_WIDTH, PIXEL_HEIGHT)
505 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
506 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
507 frame.h and renamed [see frame.h changes].
508 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
509 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
510 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
511 and renamed [see frame.h changes].
512
513 * xterm.c: Make (several) trivial substitutions for renamed and
514 new macros in dispextern.h, frame.h and window.h.
515 (x_draw_glyph_string_box): Adapt to per-window fringes and
516 scroll-bars.
517 (scroll_run): Adapt to new fringe position.
518 (glyph_rect): Use window coordinates returned from
519 window_from_coordinates rather than frame_to_window_pixel_xy.
520 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
521 scroll-bars.
522 (handle_one_xevent): Simplify a USE_GTK conditional.
523 (x_clip_to_row): Remove superfluous whole_line_p arg and code
524 (fringes are now inside margins, i.e. always in the clipping area).
525 All callers changed.
526 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
527 directly, then call compute_fringe_widths. Don't call
528 frame_update_line_height.
529
530 * w32term.h (struct w32_output): Move members left_pos, top_pos,
531 border_width, pixel_height, pixel_width, line_height,
532 internal_border_width, vertical_scroll_bar_extra,
533 left_fringe_width, right_fringe_width, fringe_cols,
534 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
535 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
536 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
537 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
538 (PIXEL_WIDTH, PIXEL_HEIGHT)
539 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
540 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
541 frame.h and renamed [see frame.h changes].
542 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
543 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
544 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
545 and renamed [see frame.h changes].
546
547 * w32term.c: Make (several) trivial substitutions for renamed and
548 new macros in dispextern.h, frame.h and window.h.
549 (x_draw_glyph_string_box): Adapt to per-window fringes and
550 scroll-bars.
551 (glyph_rect): Use window coordinates returned from
552 window_from_coordinates rather than frame_to_window_pixel_xy.
553 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
554 scroll-bars.
555 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
556 (fringes are now inside margins, i.e. always in the clipping area).
557 All callers changed.
558 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
559 directly, then call compute_fringe_widths. Don't call
560 frame_update_line_height.
561
562 * w32console.c: Make (few) trivial substitutions for renamed and
563 new macros in dispextern.h, frame.h and window.h.
564
565 * w32fns.c: Make (many) trivial substitutions for renamed and
566 new macros in dispextern.h, frame.h and window.h.
567
568 * w32menu.c: Make (few) trivial substitutions for renamed and
569 new macros in dispextern.h, frame.h and window.h.
570
571 * macterm.h (struct mac_output): Move members left_pos, top_pos,
572 border_width, pixel_height, pixel_width, line_height,
573 internal_border_width, vertical_scroll_bar_extra,
574 left_fringe_width, right_fringe_width, fringe_cols,
575 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
576 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
577 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
578 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
579 (PIXEL_WIDTH, PIXEL_HEIGHT)
580 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
581 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
582 frame.h and renamed [see frame.h changes].
583 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
584 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
585 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
586 and renamed [see frame.h changes].
587
588 * macterm.c: Make (several) trivial substitutions for renamed and
589 new macros in dispextern.h, frame.h and window.h.
590 (x_draw_glyph_string_box): Adapt to per-window fringes and
591 scroll-bars.
592 (glyph_rect): Use window coordinates returned from
593 window_from_coordinates rather than frame_to_window_pixel_xy.
594 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
595 scroll-bars.
596 (x_clip_to_row): Remove superfluous whole_line_p arg and code
597 (fringes are now inside margins, i.e. always in the clipping area).
598 All callers changed.
599 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
600 directly, then call compute_fringe_widths. Don't call
601 frame_update_line_height.
602
603 * macfns.c: Make (several) trivial substitutions for renamed and
604 new macros in dispextern.h, frame.h and window.h.
605 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
606
607 * macmenu.c: Make (few) trivial substitutions for renamed and
608 new macros in dispextern.h, frame.h and window.h.
609
610 * msdos.h (struct x_output): Remove members left_pos, top_pos,
611 and line_height, and use corresponding new members in struct
612 frame. All uses changed.
613 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
614 superseeded by corresponding macros in frame.h.
615
616 * msdos.c: Make (several) trivial substitutions for renamed and
617 new macros in dispextern.h, frame.h and window.h.
618 (IT_note_mouse_highlight): Use updated window coordinates returned
619 by window_from_coordinates, rather than adjusting them locally.
620 (internal_terminal_init): No need to initialize line_height here;
621 it now defaults to 1.
622
6232003-05-24 Stefan Monnier <monnier@cs.yale.edu>
624
625 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
626 dropping `down' events.
627
6282003-05-24 Andreas Schwab <schwab@suse.de>
629
630 * coding.c (find_safe_codings): Fix last change.
631
6322003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
633
634 * xfns.c (x_window): Fix typo from 2003-05-21 change.
635
6362003-05-23 Stefan Monnier <monnier@cs.yale.edu>
637
638 * xdisp.c (display_mode_element): Increase max depth.
639 Simplify the error handling code. Use a different error string
640 for the case where we hit the depth limit.
641
642 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
643
644 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
645
6462003-05-21 Stefan Monnier <monnier@cs.yale.edu>
647
648 * intervals.c (get_local_map): Don't get char-property of previous
649 point any more: get_pos_property already does it and better.
650
6512003-05-21 Dave Love <fx@gnu.org>
652
653 [Merged from unicode branch.]
654
655 * xfns.c (x_window, x_window): Use use_xim.
656
657 * xterm.c (use_xim): Initialize.
658 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
659 (x_term_init): Maybe set use_xim.
660
661 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
662
6632003-05-21 Jason Rumney <jasonr@gnu.org>
664
665 * unexw32.c (_start): Remove _fmode initialization.
666
667 * emacs.c (main) [WINDOWSNT]: Move it here.
668
6692003-05-20 Dave Love <fx@gnu.org>
670
671 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
672
6732003-05-19 Richard M. Stallman <rms@gnu.org>
674
675 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
676 as value for QCfont attribute.
677 (realize_default_face): lface should already exist; crash if not.
678 Specify 0 for FORCE_P when calling set_lface_from_font_name.
679
680 * frame.c (Fignore_event): Doc fix.
681
6822003-05-19 Kenichi Handa <handa@m17n.org>
683
684 * coding.c (decode_coding_string): Handle post-read-conversion
685 even if the coding doesn't require decoding.
686
6872003-05-18 Richard M. Stallman <rms@gnu.org>
688
689 * callproc.c (Fcall_process_region): Doc fix.
690
6912003-05-17 Stefan Monnier <monnier@cs.yale.edu>
692
693 * lread.c (Fload): Print a message if package is obsolete.
694
695 * window.c (Fselect_window): Add optional `norecord' arg.
696 (select_window_1): Fold into Fselect_window.
697 (select_window_norecord): New function.
698 (temp_output_buffer_show): Use it. Preserve current buffer.
699
700 * window.h (Fselect_window): Update declaration.
701
702 * window.c (delete_window, Fother_window, Fset_window_configuration):
703 * minibuf.c (read_minibuf):
704 * macterm.c (x_new_focus_frame):
705 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
706 * callint.c (Fcall_interactively):
707 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
708
709 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
710
7112003-05-17 David Kastrup <dak@gnu.org>
712
713 * process.c (read_process_output): Back out change from 2003-03-09.
714
7152003-05-17 Stefan Monnier <monnier@cs.yale.edu>
716
717 * editfns.c (get_pos_property): Don't assume that `object' = nil.
718
719 * textprop.c (text_property_stickiness): New arg `buffer'.
720
721 * intervals.h (text_property_stickiness): New arg `buffer'.
722 (get_pos_property): Declare.
723
724 * intervals.c (get_local_map): Use get_pos_property, to obey
725 stickiness and empty overlays.
726 (create_root_interval, graft_intervals_into_buffer): Use BEG.
727 (merge_properties, intervals_equal, merge_properties_sticky):
728 Use XCAR, XCDR.
729 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
730
7312003-05-17 Richard M. Stallman <rms@gnu.org>
732
733 * minibuf.c (read_minibuf): If buffer is empty, record the default
734 in the history.
735 (Fminibuffer_complete_word): When deleting the overlap, take account
736 of its real position.
737
738 * fns.c (map_char_table): Fix previous change.
739
740 * syntax.c (find_defun_start):
741 When open_paren_in_column_0_is_defun_start,
742 return beginning of buffer.
743
744 * lisp.h (map_char_table): Declare added arg.
745
746 * fns.c (map_char_table): New arg TABLE gets the master table.
747 All calls changed.
748 Process default and inheritance, resorting to Faref if necessary.
749
750 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
751 (Faccessible_keymaps): Pass new arg to map_char_table.
752
753 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
754
755 * casetab.c (set_case_table): Pass new arg to map_char_table.
756
757 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
758
759 * lisp.h (specbinding_func): New typedef.
760 (struct specbinding): Use specbinding_func, to put the `volatile'
761 in the right place.
762
763 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
764 to avoid GCC warning.
765
7662003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
767
768 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
769
7702003-05-15 Stefan Monnier <monnier@cs.yale.edu>
771
772 * keyboard.c (apply_modifiers): Don't fill the other cache.
773
7742003-05-14 Stefan Monnier <monnier@cs.yale.edu>
775
776 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
777
778 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
779 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
780 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
781 (Fset_window_configuration, Fcurrent_window_configuration)
782 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
783 (Fpos_visible_in_window_p, mark_window_cursors_off)
784 (window_internal_height, window_internal_width, Frecenter)
785 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
786 (replace_buffer_in_all_windows, init_window_once, init_window)
787 (syms_of_window, keys_of_window): Move from lisp.h.
788 * lisp.h: Move window.c declarations to window.h.
789
790 * bytecode.c: Include window.h.
791 * emacs.c: Include window.h.
792
793 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
794 (keyremap): Add `parent' field.
795 (keyremap_step): Use it. Remove `parent' argument.
796 (read_key_sequence): Setup and use the new `parent' field.
797
7982003-05-11 Stefan Monnier <monnier@cs.yale.edu>
799
800 * keyboard.c (adjust_point_for_property): Ensure termination.
801
8022003-05-10 Stefan Monnier <monnier@cs.yale.edu>
803
804 * keyboard.c (follow_key): Remove dead variable `did_meta'.
805 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
806 duplicated handling of function-key-map and key-translation-map
807 in read_key_sequence.
808 (read_key_sequence): Use them.
809
810 * keyboard.c (adjust_point_for_property): Try harder to move point
811 to the non-sticky end of an invisible property.
812
813 * xdisp.c (single_display_prop_intangible_p): Make `space' display
814 property intangible as well.
815
8162003-05-10 Andreas Schwab <schwab@suse.de>
817
818 * xmenu.c (single_menu_item): Change last parameter to void* to
819 avoid warning.
820
8212003-05-09 Richard M. Stallman <rms@gnu.org>
822
823 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
824 Bind Qinhibit_modification_hooks to t so there will be no GC.
825 Rename local `tem' to `save_deactivate_mark'.
826
827 * eval.c (specpdl_ptr): Declare volatile.
828 (unbind_to): Copy the whole binding and decrement specpdl_ptr
829 before doing the work of unbinding it.
830
831 * lisp.h (struct specbinding): Declare elements volatile.
832 (specpdl_ptr): Declare volatile.
833
834 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
835
836 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
837 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
838
8392003-05-08 Dave Love <fx@gnu.org>
840
841 * coding.c (Vlast_coding_system_used): Doc fix.
842
8432003-05-07 Jason Rumney <jasonr@gnu.org>
844
845 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
846 when system does not support them.
847
8482003-05-05 Stefan Monnier <monnier@cs.yale.edu>
849
850 * fileio.c (Qwrite_region_annotate_functions): New var.
851 (build_annotations): Use it to process the global part of the hook.
852 (syms_of_fileio): Init and staticpro it.
853
854 * keyboard.c (safe_run_hooks_error): Display a message instead of
855 silently ignoring the error.
856
8572003-05-03 Stefan Monnier <monnier@cs.yale.edu>
858
859 * keyboard.c (input_available_signal): Mark static.
860 (menu_bar_items): Use map_keymap.
861 (menu_bar_one_keymap): Remove.
862 (menu_bar_item): Adjust arglist (for use in map_keymap).
863 Properly hide a second binding when not both are keymaps.
864
865 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
866 (single_keymap_panes): Use it and map_keymap.
867 (single_menu_item): Use skp as well.
868
869 * keymap.h (map_keymap_function_t): New type.
870 (map_keymap): Declare.
871
872 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
873 (map_keymap_call, Fmap_keymap): New functions.
874 (syms_of_keymap): Defsubr map-keymap.
875
8762003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
877
878 * gtkutil.c (create_dialog, make_widget_for_menu_item)
879 (make_menu_item, create_menus, xg_update_menu_item): Don't call
880 ..._with_mnemonic functions for menu items.
881
8822003-05-01 Kenichi Handa <handa@m17n.org>
883
884 * coding.c (coding_system_accept_latin_extra_p): Delete this
885 function.
886 (find_safe_codings): Pay attention to
887 the property tranlsation-table-for-encode of each codings.
888 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
889
8902003-05-01 Stefan Monnier <monnier@cs.yale.edu>
891
892 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
893
8942003-04-30 Stefan Monnier <monnier@cs.yale.edu>
895
896 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
897
898 * lisp.h (CHECK): Wrap args in parenthesis.
899 (specbind): Fix doc: symbol = Qnil is not supported any more.
900
901 * bytecode.c (Fbyte_code) <unwind-protect>:
902 Use Fprogn rather than 0 and Qnil.
903
904 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
905 `double', and `triple' modifiers as well.
906
9072003-04-30 Richard M. Stallman <rms@gnu.org>
908
909 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
910
911 * alloc.c (abort_on_gc): New variable.
912 (Fgarbage_collect): Abort if abort_on_gc is set.
913
914 * lisp.h (abort_on_gc): Add decl.
915
916 * eval.c (Fsignal): Clear abort_on_gc.
917
918 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
919 Reinit FORMAT_START and END before second scan.
920
921 * xdisp.c (move_it_vertically_backward): Do the final big else
922 even if nlines is 0.
923
924 * xdisp.c (redisplay_internal): Finish the per-frame loop
925 even if redisplay is suspended by input.
926
9272003-04-24 Andrew Choi <akochoi@shaw.ca>
928
929 * macterm.c (x_list_fonts): Return all fonts that match if
930 maxnames = -1.
931
9322003-04-25 Kenichi Handa <handa@m17n.org>
933
934 * syntax.c (skip_chars): Fix previous change.
935
9362003-04-24 Kenichi Handa <handa@m17n.org>
937
938 * syntax.c (skip_chars): Make the code faster by using the common
939 technique of *p, *stop, and *endp.
940
9412003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
942
943 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
944 tool_bar_items so GTK tool bar expose callback does not access items
945 being updated.
946
9472003-04-19 Stefan Monnier <monnier@cs.yale.edu>
948
949 * eval.c (Fapply): Undo last change and add a comment about why.
950
9512003-04-18 Miles Bader <miles@gnu.org>
952
953 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
954 pickier PARSE_MULTIBYTE_SEQ.
955
9562003-04-17 Stefan Monnier <monnier@cs.yale.edu>
957
958 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
959 Use XCDR, XCAR, CONSP.
960 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
961 (Fapply): Remove unnecessary GCPRO.
962
963 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
964
965 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
966
967 * buffer.h: Don't hardcode BEG==1.
968
969 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
970
9712003-04-16 Richard M. Stallman <rms@gnu.org>
972
973 * xdisp.c (try_window, try_window_reusing_current_matrix):
974 When at end of window, set window_end_pos to Z-ZV.
975
976 * buffer.c (Foverlay_recenter): Doc fix.
977
9782003-04-14 Stefan Monnier <monnier@cs.yale.edu>
979
980 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
981
9822003-04-14 Andrew Choi <akochoi@shaw.ca>
983
984 * macterm.c (mac_check_for_quit_char): Don't check more often than
985 once a second.
986
9872003-04-11 Stefan Monnier <monnier@cs.yale.edu>
988
989 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
990 specially, so that they can't hide an implicit switch-frame event.
991 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
992 (head_table): Use switch-frame as event_kind for select-window.
993 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
994
995 * editfns.c (Fformat): Lisp_Object/int mixup.
996 (format2): Remove unused var numargs.
997
9982003-04-11 Kenichi Handa <handa@m17n.org>
999
1000 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
1001 (Qafter_insert_file_set_coding): New variable.
1002 (syms_of_fileio): Initialize and staticpro it. Delete declaration
1003 for after-insert-file-adjust-coding-function.
1004 (Finsert_file_contents): Call Qafter_insert_file_set_coding
1005 instead of Vafter_insert_file_adjust_coding_function.
1006
10072003-04-11 Kenichi Handa <handa@m17n.org>
1008
1009 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
1010
1011 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
1012 string. Callers changed.
1013
10142003-04-10 Kenichi Handa <handa@m17n.org>
1015
1016 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
1017 (syms_of_fileio): Declare it as a lisp variable.
1018 (Finsert_file_contents):
1019 Call Vafter_insert_file_adjust_coding_function before calling
1020 decode-format.
1021
10222003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1023
1024 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
1025 get GtkAdjustment as widget now is a GtkRange.
1026
1027 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
1028 GtkRange to avoid memory leak.
1029
10302003-04-09 Kenichi Handa <handa@m17n.org>
1031
1032 * xfaces.c (Vface_font_rescale_alist): New variable.
1033 (struct font_name): New member rescale_ratio.
1034 (font_rescale_ratio): New function.
1035 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
1036 (better_font_p): On comparing point sized, pay attention to
1037 recale_ratio member of fonts.
1038 (build_scalable_font_name): Reflect font->rescale_ratio in the
1039 font name.
1040 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
1041
1042 * lread.c (read1): Before calling index, check if the 2nd
1043 arguemnt is in ASCII range.
1044
10452003-04-08 Richard M. Stallman <rms@gnu.org>
1046
1047 * fileio.c (Ffile_symlink_p): Doc fix.
1048
1049 * editfns.c (Fformat): Translate positions of text properties
1050 in the format string to apply them to the result.
1051
1052 * fileio.c (Finsert_file_contents): Doc fix.
1053 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
1054
10552003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
1056
1057 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
1058
10592003-04-08 Steven Tamm <steventamm@mac.com>
1060
1061 * mac.c (init_mac_osx_environment): Switch libexec and bin so
1062 that self-contained application finds libexec files.
1063
10642003-04-08 Kenichi Handa <handa@m17n.org>
1065
1066 * coding.c (code_convert_region_unwind):
1067 Set Vlast_coding_system_used to the argument.
1068 (code_convert_region): If post-read-conversion function changed
1069 the value of last-coding-sytem, keep the new value in
1070 coding->symbol so that it won't be overridden.
1071 (run_pre_post_conversion_on_str): Likewise.
1072 (coding_system_accept_latin_extra_p): New function.
1073 (find_safe_codings): Pay attention to characters registered in
1074 latin-extra-code-table.
1075
10762003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
1077
1078 * Makefile.in (md5.o): Add missing dependency info.
1079
10802003-04-06 Richard M. Stallman <rms@gnu.org>
1081
1082 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
1083
1084 * marker.c (verify_bytepos): New function.
1085
1086 * intervals.c (set_intervals_multibyte_1): When becoming
1087 multibyte, adjust right and left child sizes to a whole set of
1088 characters. If an interval gets zero total-length, delete it.
1089 If an interval consists of just its children, delete one of them.
1090
1091 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
1092 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
1093
1094 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
1095 All calls deleted.
1096 (lisp_malloc): Do the work here directly.
1097
10982003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
1099
1100 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
1101 char tables.
1102
11032003-04-04 Kenichi Handa <handa@m17n.org>
1104
1105 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
1106 destructively change "%S" to "%s".
1107
11082003-04-03 Miles Bader <miles@gnu.org>
1109
1110 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
1111 always set.
1112
11132003-04-01 Dave Love <fx@gnu.org>
1114
1115 * xfns.c (xpm_lookup_color): Grok "opaque".
1116
11172003-03-31 Andrew Choi <akochoi@shaw.ca>
1118
1119 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
1120 parent window ID.
1121
1122 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
1123
1124 * macterm.h (struct mac_output): Define x_pixels_diff and
1125 y_pixels_diff.
1126
11272003-03-31 Juanma Barranquero <lektu@terra.es>
1128
1129 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
1130 blockinput.h and files included from it.
1131
11322003-03-31 Kim F. Storm <storm@cua.dk>
1133
1134 The following changes consolidates the common code related to
1135 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
1136 files into frame.c.
1137
1138 * frame.c: Include blockinput.h.
1139 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
1140 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
1141 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
1142 related vars here.
1143 (struct frame_parm_table, frame_parms): New table for describing
1144 frame parameters and their associated Q-variable.
1145 The order of the parameters corresponds to the sequence of the
1146 frame_parm_handlers table in redisplay_interface.
1147 (x_fullscreen_move, x_set_frame_parameters)
1148 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
1149 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
1150 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
1151 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
1152 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
1153 Generic functions for processing of frame parameters.
1154 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
1155 (display_x_get_resource, x_get_resource_string): Functions for
1156 generic access to X resources.
1157 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
1158 (x_default_parameter, Fx_parse_geometry): Functions for generic
1159 access to frame parameters.
1160 (x_figure_window_size): Generic calculation of frame size.
1161 Fixed to add space needed for tool bar. Also setup size_hint_flags.
1162 (syms_of_frame): Intern and staticpro frame parameter variables.
1163 Defvar_lisp Vx_resource_class and Vx_resource_name here.
1164 Defsubr Sx_get_resource and Sx_parse_geometry.
1165
1166 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
1167 parameter related vars defined in frame.c.
1168 (EMACS_CLASS): Define here.
1169 (enum FULLSCREEN_*): Define here.
1170 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
1171 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
1172 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
1173 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
1174 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
1175 (x_set_visibility, x_set_autoraise, x_set_autolower)
1176 (x_set_unsplittable, x_set_vertical_scroll_bars)
1177 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
1178 (x_figure_window_size): Add prototypes.
1179
1180 * dispextern.h (frame_parm_handler): New typedef.
1181 (struct redisplay_interface): New member frame_parm_handlers.
1182 (enum resource_types): Move declaration here.
1183 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
1184 (x_default_parameter): Add prototypes.
1185
1186 * window.c: Remove extern decl for frame parameter vars.
1187 (change_window_heights): New generic function;
1188 replaces x_change_window_heights. All users changed.
1189
1190 * window.h (change_window_heights): Add prototype.
1191
1192 * xfaces.c: Remove extern decl for frame parameter vars.
1193
1194 * xterm.h (EMACS_CLASS): Remove. Use generic define.
1195 (struct w32_display_info): Fix type of xrdb member.
1196 (enum FULLSCREEN_*): Remove.
1197 Remove prototypes for generic functions (in frame.h).
1198
1199 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
1200 parameters now defined in frame.h and frame.c.
1201 (Vx_resource_name): Remove. Use generic var.
1202 (enum x_frame_parms): Remove (bogus, unused enum).
1203 (check_x_display_info): Make non-static (for frame.c).
1204 (struct x_frame_parm_table, x_frame_parms): Remove.
1205 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
1206 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
1207 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
1208 (x_change_window_heights, x_set_autoraise, x_set_autolower)
1209 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
1210 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
1211 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
1212 Remove. Use generic functions instead.
1213 (enum resource_types): Remove.
1214 (x_set_scroll_bar_default_width): New global function (for frame.c).
1215 (Fx_create_frame): Depend on x_figure_window_size to add space for
1216 toolbar and setup size_hint_flags.
1217 (x_frame_parm_handlers): New table for redisplay_interface.
1218 (syms_of_xfns): Don't intern/staticpro removed vars.
1219
1220 * xterm.c: Remove unnecessary extern declarations.
1221 (x_fullscreen_adjust): Remove. Use generic instead.
1222 (x_redisplay_interface): Add x_frame_parm_handlers member.
1223
1224 * w32gui.h (XrmDatabase): New (dummy) typedef.
1225
1226 * w32term.h (EMACS_CLASS): Remove. Use generic define.
1227 (struct w32_display_info): Fix type of xrdb member.
1228 (enum FULLSCREEN_*): Remove.
1229 (x_fullscreen_adjust): Remove prototype.
1230
1231 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
1232 parameters now defined in frame.h and frame.c.
1233 (Vx_resource_name): Remove. Use generic var.
1234 (enum x_frame_parms): Remove (bogus, unused enum).
1235 (check_x_display_info): Make non-static (for frame.c).
1236 (struct x_frame_parm_table, x_frame_parms): Remove.
1237 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
1238 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
1239 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
1240 (x_change_window_heights, x_set_autoraise, x_set_autolower)
1241 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
1242 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
1243 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
1244 Remove. Use generic functions instead.
1245 (enum resource_types): Remove.
1246 (x_set_scroll_bar_default_width): New global function (for frame.c).
1247 (Fx_create_frame): Depend on x_figure_window_size to add space for
1248 toolbar and setup size_hint_flags.
1249 (w32_frame_parm_handlers): New table for redisplay_interface.
1250 (syms_of_w32fns): Don't intern/staticpro removed vars.
1251
1252 * w32term.c: Remove unnecessary extern declarations.
1253 (x_fullscreen_adjust): Remove. Use generic instead.
1254 (x_redisplay_interface): Add w32_frame_parm_handlers member.
1255
1256 * w32reg.c (x_get_string_resource): Use XrmDatabase.
1257
1258 * macgui.h (XrmDatabase): New (dummy) typedef.
1259
1260 * macterm.h (EMACS_CLASS): Remove.
1261 (struct mac_display_info): Add xrdb member.
1262 (struct mac_output): Add want_fullscreen member.
1263
1264 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
1265 parameters now defined in frame.h and frame.c.
1266 (Vx_resource_name): Remove. Use generic var.
1267 (check_x_display_info): Make non-static (for frame.c).
1268 (struct x_frame_parm_table, x_frame_parms): Remove.
1269 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
1270 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
1271 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
1272 (x_change_window_heights, x_set_autoraise, x_set_autolower)
1273 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
1274 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
1275 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
1276 Remove. Use generic functions instead.
1277 (enum resource_types): Remove.
1278 (x_set_scroll_bar_default_width): New global function (for frame.c).
1279 (mac_frame_parm_handlers): New table for redisplay_interface.
1280 (syms_of_macfns): Don't intern/staticpro removed vars.
1281
1282 * macterm.c: Remove unnecessary extern declarations.
1283 (x_redisplay_interface): Add mac_frame_parm_handlers member.
1284
1285 * Makefile.in (frame.o): Add dependency on blockinput.h and files
1286 included from it (atimer.h and systime.h).
1287
12882003-03-30 Andreas Schwab <schwab@suse.de>
1289
1290 * xdisp.c (x_insert_glyphs): Fix swapped width and height
1291 parameters for shift_glyphs_for_insert.
1292
1293 * macterm.c (x_redisplay_interface): Add missing entry for
1294 draw_vertical_window_border.
1295
12962003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
1297
1298 * fileio.c (Fexpand_file_name): In the no-handler case, after
1299 expanding, look again for a handler and invoke it. This is needed
1300 for filenames like "/foo/../user@host:/bar/../baz" -- the first
1301 expansion produces "/user@host:/bar/../baz" which needs to be
1302 expanded again for the finame result "/user@host:/baz".
1303
13042003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1305
1306 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
1307 of area to be redrawn for better performance.
1308
13092003-03-28 Stefan Monnier <monnier@cs.yale.edu>
1310
1311 * xterm.c (take_vertical_position_into_account): Remove.
1312 (xt_action_hook): Call set_vertical_scroll_bar if needed.
1313 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
1314 (xm_scroll_callback, x_create_toolkit_scroll_bar)
1315 (x_set_toolkit_scroll_bar_thumb): Simplify.
1316 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
1317 (XTread_socket): Remove unused var.
1318 (x_make_frame_invisible): Replace goto with else.
1319
1320 * xdisp.c (set_vertical_scroll_bar): New fun.
1321 (redisplay_window): Use it.
1322
13232003-03-26 Richard M. Stallman <rms@gnu.org>
1324
1325 * xdisp.c (update_tool_bar): Recompute tool bar if
1326 update_mode_lines is set. Set w->update_mode_line
1327 only if the tool bar contents actually change.
1328 (update_menu_bar): Undo previous change.
1329
13302003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1331
1332 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
1333 (xg_frame_set_char_size): Calculate scroll bar width before frame
1334 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
1335 (xg_separator_p): Check for all documented separator types.
1336 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
1337 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
1338
1339 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
1340 so tool bar gets updated.
1341
13422003-03-26 Stefan Monnier <monnier@cs.yale.edu>
1343
1344 * data.c (store_symval_forwarding): Re-instate part of the code
1345 that was deleted with too much enthusiasm.
1346
13472003-03-25 Stefan Monnier <monnier@cs.yale.edu>
1348
1349 * data.c (store_symval_forwarding): Delete special read-only
1350 hack for type == -1, since we now use ->constant instead.
1351 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
1352
1353 * buffer.c (overlays_in): Declare static.
1354 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
1355 `constant' field rather than the variable's `type' field.
1356
13572003-03-24 Andrew Choi <akochoi@shaw.ca>
1358
1359 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
1360
1361 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
1362
1363 * fns.c [MAC_OSX]: Do not redefine vector.
1364
1365 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
1366
1367 * macgui.h: Remove definition of No_Cursor.
1368
1369 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
1370
1371 * xdisp.c: Define No_Cursor.
1372 (x_write_glyphs, notice_overwritten_cursor)
1373 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
1374 (note_mouse_highlight): Remove Mac-specific code.
1375 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
1376
13772003-03-24 John Paul Wallington <jpw@gnu.org>
1378
1379 * xdisp.c (redisplay_window): If mini window's buffer is not
1380 empty, then redisplay it like other windows.
1381
13822003-03-23 Kim F. Storm <storm@cua.dk>
1383
1384 * w32term.c (w32_draw_window_cursor): Fix last change.
1385
13862003-03-23 Kenichi Handa <handa@m17n.org>
1387
1388 * alloc.c (make_string_from_bytes, make_specified_string):
1389 Add `const' for the arg CONTENTS.
1390
1391 * lisp.h (make_string_from_bytes, make_specified_string):
1392 Prototypes adjusted.
1393
13942003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1395
1396 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
1397
1398 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
1399 (XG_SB_RANGE): New define.
1400
1401 * gtkutil.c (xg_fixed_handle_expose): New function.
1402 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
1403 expose events.
1404 (xg_update_scrollbar_pos): Take two more arguments, left and width
1405 of scroll bar including borders.
1406 Clear left and right part outside scroll bar separately as some
1407 themes have bars that are not an even number of pixels.
1408 Don't set reallocate_redraws, don't call
1409 gdk_window_process_all_updates.
1410 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
1411 so no need to change it. Calculate size and value with XG_SB_RANGE.
1412
1413 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
1414 Pass left and width of scroll bar including borders to
1415 xg_update_scrollbar_pos.
1416
14172003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
1418
1419 * Makefile.in: Make sure space precedes end-of-line backslashes.
1420
14212003-03-22 Kim F. Storm <storm@cua.dk>
1422
1423 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
1424 Add generic versions here. Remove system specific versions
1425 defined elsewhere.
1426
1427 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
1428 Add prototypes.
1429
1430 * xterm.h (STORE_NATIVE_RECT): New macro.
1431
14322003-03-21 Kim F. Storm <storm@cua.dk>
1433
1434 * xdisp.c (get_glyph_string_clip_rect):
1435 Use FRAME_INTERNAL_BORDER_WIDTH.
1436
1437 * dispextern.h (struct redisplay_interface): Add active_p
1438 argument to draw_window_cursor member. All uses changed.
1439
14402003-03-21 Kim F. Storm <storm@cua.dk>
1441
1442 The following changes consolidate code related to writing and
1443 inserting glyphs, exposing frame, the tool bar, the mouse face,
1444 the output cursor, and help echo from xterm.c, w32term.c and
1445 macterm.c into xdisp.c. It also generalizes the use of the
1446 window_part enum instead of using numeric values throughout.
1447
1448 * xdisp.c: Consolidate gui-independent code here.
1449 Include keymap.h.
1450 (Qhelp_echo): Import.
1451 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
1452 (help_echo_string, help_echo_window, help_echo_object)
1453 (previous_help_echo_string, help_echo_pos): Declare here.
1454 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
1455 (estimate_mode_line_height): Define here. Handle windowing
1456 systems directly (without using estimate_mode_line_height_hook).
1457 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
1458 (update_window_cursor, update_cursor_in_window_tree)
1459 (fast_find_position, fast_find_string_pos)
1460 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
1461 (expose_area, expose_line, expose_overlaps, expose_window)
1462 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
1463 declared static as they are only used locally in xdisp.c.
1464 (draw_glyphs): Rename from x_draw_glyphs and make static.
1465 (tool_bar_item_info, notice_overwritten_cursor): Make static.
1466 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
1467 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
1468 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
1469 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
1470 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
1471 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
1472 (note_mouse_highlight, x_clear_window_mouse_face)
1473 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
1474 (x_intersect_rectangles): New generic functions for use by xdisp.c
1475 and GUI front-ends.
1476 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
1477 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
1478
1479 * dispextern.h (Display_Info): Generic typedef for *_display_info.
1480 (NativeRectangle): Generic typedef for rectangle type.
1481 (enum window_part): Move here from window.c.
1482 (struct redisplay_interface): New members flush_display_optional,
1483 define_frame_cursor, clear_frame_area, draw_window_cursor,
1484 draw_vertical_window_border, shift_glyphs_for_insert.
1485 Rename member clear_mouse_face to clear_window_mouse_face.
1486 (estimate_mode_line_height_hook): Remove hook.
1487 (auto_raise_tool_bar_buttons_p): Don't declare extern.
1488 (tool_bar_item_info): Remove prototype.
1489 (help_echo_string, help_echo_window, help_echo_object)
1490 (previous_help_echo_string, help_echo_pos)
1491 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
1492 (x_stretch_cursor_p, output_cursor): Declare extern.
1493 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
1494 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
1495 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
1496 (display_and_set_cursor, set_output_cursor, x_cursor_to)
1497 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
1498 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
1499 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
1500 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
1501 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
1502 Add prototypes.
1503 (mode_line_string, marginal_area_string): Fix prototypes.
1504
1505 * window.c (enum window_part): Move to dispextern.h.
1506 (coordinates_in_window): Use enum window_part member names
1507 instead of numbers to describe return value.
1508 (struct check_window_data): Change part member to window_part.
1509 (check_window_containing): Return window_part unaltered.
1510 (window_from_coordinates): Change part arg from int to enum
1511 window_part. Allow part arg to be null. All users changed.
1512
1513 * window.h (window_from_coordinates): Fix prototype.
1514
1515 * term.c (estimate_mode_line_height): Move to xdisp.c.
1516
1517 * keyboard.c (make_lispy_event): Use enum window_part.
1518
1519 * dispnew.c (mode_line_string, marginal_area_string): Use enum
1520 window_part instead of int in arg list. Users changed.
1521
1522 * xterm.h (No_Cursor): Declare as None for X.
1523 (struct mac_output): Replace member cross_cursor by hand_cursor.
1524
1525 * xterm.c: Remove consolidated defines and code.
1526 (BETWEEN): Remove unused macro.
1527 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
1528 (x_define_frame_cursor, x_clear_frame_area)
1529 (x_draw_window_cursor): New X-specific functions for RIF.
1530 (x_redisplay_interface): Add new members.
1531
1532 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
1533
1534 * w32term.h (struct w32_output): Remove cross_cursor member.
1535
1536 * w32term.c: Remove consolidated defines and code.
1537 (BETWEEN): Remove unused macro.
1538 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
1539 (w32_define_frame_cursor, w32_clear_frame_area)
1540 (w32_draw_window_cursor): New W32-specific functions for RIF.
1541 (w32_redisplay_interface): Add new members.
1542
1543 * w32gui.h (No_Cursor): Define as 0 for W32.
1544 (XRectangle): Add X compatible rectangle type.
1545 (NativeRectangle): Declare as RECT for W32.
1546 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
1547
1548 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
1549
1550 * w32console.c: Remove consolidated defines and code.
1551
1552 * msdos.h (Display_Info): Add generic typedef.
1553
1554 * msdos.c: Remove consolidated defines and code.
1555 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
1556
1557 * macterm.h (struct mac_output): Replace member cross_cursor by
1558 hand_cursor.
1559 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
1560
1561 * macterm.c: Remove consolidated defines and code.
1562 (BETWEEN): Remove unused macro.
1563 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
1564 (mac_define_frame_cursor, mac_clear_frame_area)
1565 (mac_draw_window_cursor): New Mac-specific functions for RIF.
1566 (x_redisplay_interface): Add new members.
1567
1568 * macgui.h (No_Cursor): Define as 0 for Mac.
1569 (XRectangle): Add X compatible rectangle type.
1570 (NativeRectangle): Declare as Rect for Mac.
1571 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
1572
1573 * macfns.c (x_set_mouse_color): Setup hand_cursor.
1574 (x_set_cursor_color): Use x_display_and_set_cursor.
1575
1576 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
1577 included from it. Add dependency on keymap.h.
1578
1579 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
1580
15812003-03-21 Kenichi Handa <handa@m17n.org>
1582
1583 * fileio.c (Fexpand_file_name): Fix previous change.
1584
15852003-03-19 Kenichi Handa <handa@m17n.org>
1586
1587 * fileio.c (Ffile_name_directory): Reconstruct file name by
1588 make_specified_string.
1589 (Ffile_name_nondirectory, Ffile_name_as_directory)
1590 (Fdirectory_file_name, Fexpand_file_name)
1591 (Fsubstitute_in_file_name): Likewise.
1592 (Fread_file_name): Compare decoded homedir with DIR and
1593 DEFAULT_FILENAME.
1594
1595 * alloc.c (make_specified_string): If NCHARS is negative, count
1596 the number of characters.
1597
15982003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1599
1600 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
1601 all widgets.
1602
1603 * gtkutil.h: Removed xg_ignore_next_thumb.
1604
16052003-03-18 Kenichi Handa <handa@m17n.org>
1606
1607 * coding.c (Vchar_coding_system_table): Remove this variable.
1608 (Vcoding_system_safe_chars): New variable.
1609 (intersection): Remove this function.
1610 (find_safe_codings): Don't use Vchar_coding_system_table, but try
1611 all codings in SAFE_CODINGS.
1612 (Ffind_coding_systems_region_internal): Adjust for the change of
1613 find_safe_codings. Get generic coding systems from
1614 Vcoding_system_safe_chars.
1615 (Fdefine_coding_system_internal): New function.
1616 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
1617 Initialize and staticpro Vcoding_system_safe_chars.
1618
16192003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1620
1621 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
1622 equal old values before updating.
1623
1624 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
1625
1626 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
1627
16282003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1629
1630 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
1631 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
1632 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
1633 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
1634 (xg_create_scroll_bar): Pass bar to button event callback.
1635 (xg_find_top_left_in_fixed): New function.
1636 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
1637 whole scroll bar area. Get old position with
1638 xg_find_top_left_in_fixed, calculate and only clear needed areas.
1639 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
1640 dragging is in progress. Calculate whole as for Motif.
1641 Remove code that saved last values. Call gtk_range functions to
1642 set scroll bar sizes.
1643
1644 * gtkutil.h: Removed xg_ignore_next_thumb.
1645
16462003-03-17 Juanma Barranquero <lektu@terra.es>
1647
1648 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
1649 and files included from it.
1650
16512003-03-18 Stefan Monnier <monnier@cs.yale.edu>
1652
1653 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
1654 multiple occurrences of the same keymap under different prefixes.
1655 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
1656
16572003-03-16 Jason Rumney <jasonr@gnu.org>
1658
1659 * w32gui.h: Use HDC for Display.
1660
1661 * w32term.c (w32_encode_char): Prevent double-byte chars from
1662 crashing Emacs.
1663
1664 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
1665 as binary.
1666
16672003-03-16 Juanma Barranquero <lektu@terra.es>
1668
1669 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
1670
16712003-03-16 Kim F. Storm <storm@cua.dk>
1672
1673 The following changes consolidate some of the gui-independent
1674 parts of the processing and drawing of "glyph strings" from
1675 xterm.c, w32term.c, and macterm.c into xdisp.c.
1676
1677 * dispextern.h (struct glyph): Reduce face_id member from 22 to
1678 21 bits (this reduces number of faces from 4M to 2M).
1679 Replace W32 specific w32_font_type member (2 bits) by generic
1680 font_type member (3 bits) for portability.
1681 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
1682 (enum draw_glyphs_face): Define here.
1683 (struct glyph_string): Define here. Merge W32 and X versions.
1684 (struct redisplay_interface): New members per_char_metric,
1685 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
1686 (VCENTER_BASELINE_OFFSET): Define here.
1687 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
1688 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
1689
1690 * xdisp.c: Consolidate gui-independent "glyph string" code here.
1691 (dump_glyph_string): Moved here.
1692 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
1693 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
1694 (fill_composite_glyph_string, fill_glyph_string)
1695 (fill_image_glyph_string, fill_stretch_glyph_string)
1696 (left_overwritten, left_overwriting, right_overwritten)
1697 (right_overwriting, get_char_face_and_encoding)
1698 (set_glyph_string_background_width, compute_overhangs_and_x)
1699 (append_glyph, append_composite_glyph, produce_image_glyph)
1700 (take_vertical_position_into_account, append_stretch_glyph)
1701 (produce_stretch_glyph): New generic functions (based on X version).
1702 Call platform specific functions through rif.
1703 (INIT_GLYPH_STRING): New macro, hides W32 details.
1704 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
1705 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
1706 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
1707 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
1708 (notice_overwritten_cursor):
1709 Generic functions exported to platform modules. Users changed.
1710
1711 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
1712 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
1713 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
1714 New macros for consolidated code.
1715
1716 * xterm.c: Remove consolidated defines and code.
1717 (x_per_char_metric, x_encode_char)
1718 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
1719 (x_redisplay_interface): Add new members.
1720
1721 * w32gui.h (Display): Add dummy typedef for consolidation.
1722 (XChar2b): Define alias for wchar_t for consolidation.
1723 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
1724
1725 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
1726 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
1727 New macros for consolidation.
1728
1729 * w32term.c: Remove consolidated defines and code.
1730 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
1731 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
1732 (w32_per_char_metric): Change font_type arg to int for RIF.
1733 (w32_encode_char): Return int according to RIF requirements.
1734 (w32_compute_glyph_string_overhangs): Adapt to RIF.
1735 (w32_get_glyph_overhangs): New function for RIF. Uses generic
1736 x_get_glyph_overhangs.
1737 (w32_redisplay_interface): Add new members.
1738
1739 * macgui.h (XChar2b): Move typedef here for consolidation.
1740 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
1741
1742 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
1743 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
1744 consolidation.
1745
1746 * macterm.c: Remove consolidated defines and code.
1747 (mac_per_char_metric): New function for RIF.
1748 (mac_encode_char): Adapt to new RIF requirements.
1749 (mac_compute_glyph_string_overhangs): Adapt for RIF.
1750 (x_redisplay_interface): Add new members.
1751
17522003-03-15 Stefan Monnier <monnier@cs.yale.edu>
1753
1754 * keymap.c (Vmenu_events): New var.
1755 (syms_of_keymap): Initialize it.
1756 (where_is_internal): Check more carefully what is a menu event.
1757
17582003-03-14 Richard M. Stallman <rms@gnu.org>
1759
1760 * lread.c (read1): After #!, exit loop on eof.
1761
17622003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1763
1764 * gtkutil.h: Add declaration for xg_frame_cleared.
1765
1766 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
1767
1768 * gtkutil.c (struct xg_last_sb_pos): New structure.
1769 (handle_fixed_child): New function.
1770 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
1771 and force a redraw on them.
1772 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
1773 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
1774 so we can avoid unneeded redraws.
1775 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
1776 and force a redraw on the scroll bar.
1777 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
1778 if xg_last_sb_pos shows the positions are up to date.
1779 (xg_frame_cleared): New function.
1780
17812003-03-13 Kenichi Handa <handa@m17n.org>
1782
1783 * coding.c (Fdetect_coding_region): Fix docstring.
1784 (Fdetect_coding_string): Fix docstring.
1785
17862003-03-13 Andreas Schwab <schwab@suse.de>
1787
1788 * gtkutil.c: Add prototype for create_menus.
1789
1790 * data.c (long_to_cons): Fix type of top.
1791
1792 * xselect.c (selection_data_to_lisp_data): Use int instead of
1793 long for an integer of size 4.
1794
1795 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
1796 (xg_tool_bar_help_callback): Likewise.
1797
17982003-03-12 Andreas Schwab <schwab@suse.de>
1799
1800 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
1801
18022003-03-12 Kim F. Storm <storm@cua.dk>
1803
1804 The following changes consolidate the fringe handling from
1805 xterm.c, w32term.c, and macterm.c into xdisp.c.
1806
1807 * xdisp.c: Consolidate fringe handling code here.
1808 (left_bits, right_bits, continued_bits, continuation_bits)
1809 (ov_bits, zv_bits): Define fringe bitmaps.
1810 (fringe_bitmaps): New array holding fringe bitmaps.
1811 (draw_fringe_bitmap): Draw a specific bitmap; call display
1812 specific drawing routine via rif->draw_fringe_bitmap.
1813 (draw_row_fringe_bitmaps): Generic replacement for
1814 x_draw_row_fringe_bitmaps; all callers changed.
1815 (compute_fringe_widths): Generic replacement for
1816 x_compute_fringe_widths; all callers changed.
1817
1818 * dispextern.h (enum fringe_bitmap_type): Define here.
1819 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
1820 (fringe_bitmaps): Declare extern.
1821 (struct redisplay_interface): New member draw_fringe_bitmap.
1822 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
1823
1824 * xterm.c: Remove generic fringe code.
1825 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
1826 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
1827
1828 * w32term.c: Remove generic fringe code.
1829 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
1830 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
1831
1832 * macterm.c: Remove generic fringe code.
1833 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
1834 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
1835
18362003-03-11 Stefan Monnier <monnier@cs.yale.edu>
1837
1838 * print.c (Fprin1_to_string): Return unibyte string if possible.
1839
18402003-03-09 David Kastrup <dak@gnu.org>
1841
1842 * process.c (read_process_output): We have allocated enough space
1843 for readmax and carryover, so actually use the alloted space.
1844
18452003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1846
1847 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
1848 toolkit scrollbar click.
1849
1850 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
1851 for USE_GTK.
1852 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
1853 also.
1854 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
1855 scrollbar and control is pressed, call x_scroll_bar_handle_click.
1856
1857 * gtkutil.h: Declare xg_get_scroll_id_for_window.
1858
1859 * gtkutil.c (xg_get_scroll_id_for_window): New function.
1860 (xg_tool_bar_item_expose_callback): New function.
1861 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
1862 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
1863 on the tool bar widget.
1864 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
1865 to expose on the tool bar item widgets.
1866
18672003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1868
1869 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
1870 struct image* when deciding to update (struct image* may have been
1871 deleted from the image cache).
1872
1873 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
1874 the event isn't for a frame (i.e. for dialogs).
1875
18762003-03-07 Kenichi Handa <handa@m17n.org>
1877
1878 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
1879 composition components reaches the limit, terminate composing.
1880 (COMPOSITION_OK): New macro.
1881 (detect_coding_iso2022): Use it if an escape sequence for
1882 composition is found.
1883 (coding_restore_composition): Adjust the number of composition
1884 components if it is not sane.
1885
18862003-03-06 Juanma Barranquero <lektu@terra.es>
1887
1888 * w32term.h (struct w32_display_info): Add xrdb member to support
1889 passing resources via -xrm on Windows.
1890
1891 * w32term.c (w32_make_rdb): New function.
1892 (w32_term_init): Use it to initialize xrdb member of w32_display_info
1893 struct. Delete leftover code.
1894
1895 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
1896 for resources passed on the command line.
1897
1898 * w32reg.c (w32_get_rdb_resource): New function.
1899 (x_get_string_resource): Use it, so resources passed with -xrm
1900 supercede the ones in the registry.
1901
19022003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1903
1904 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
1905 instead of x_top_window_to_frame.
1906
19072003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1908
1909 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
1910 when restarting Emacs.
1911
19122003-03-03 Richard M. Stallman <rms@gnu.org>
1913
1914 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
1915 to run kill-buffer-query-functions.
1916 (Qkill_buffer_query_functions): New var.
1917 (syms_of_buffer): Init and staticpro it.
1918
19192003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1920
1921 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
1922
19232003-02-25 Kim F. Storm <storm@cua.dk>
1924
1925 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
1926 If centering point failed to make whole line visible and vscroll
1927 is non-zero, disable vscroll and try centering point again.
1928
1929 * lread.c (read1): Accept `single space' syntax like (? x).
1930
19312003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1932
1933 * keyboard.c (cancel_hourglass_unwind): Surround with
1934 #ifdef HAVE_X_WINDOWS
1935
19362003-02-25 Kenichi Handa <handa@m17n.org>
1937
1938 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
1939 process only when "subprocesses" is defined.
1940
19412003-02-24 Stefan Monnier <monnier@cs.yale.edu>
1942
1943 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
1944
19452003-02-24 Juanma Barranquero <lektu@terra.es>
1946
1947 * callint.c (fix_command): Declare as static void and move before
1948 Fcall_interactively.
1949
1950 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
1951 (syms_of_xdisp): Don't initialize Qwhen.
1952
19532003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1954
1955 * keyboard.c (cancel_hourglass_unwind): New function.
1956 (command_loop_1): Cancel hourglass with unwind-protect.
1957
19582003-02-23 Richard M. Stallman <rms@gnu.org>
1959
1960 * callint.c (fix_command): New subroutine, from Fcall_interactively.
1961 Detect (when ... (region-beginning)) etc.
1962 (Fcall_interactively): Call fix_command.
1963 (Qif, Qwhen): New variables.
1964 (syms_of_callint): Init and staticpro them.
1965
1966 * regex.c (print_partial_compiled_pattern): Output to stderr.
1967
19682003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
1969
1970 * dired.c (directory_files_internal): Don't expand directory.
1971 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
1972 instead. From Lars Hansen <larsh@math.ku.dk>.
1973
19742003-02-22 Stefan Monnier <monnier@cs.yale.edu>
1975
1976 * fns.c (string_to_multibyte): Remove unused var i.
1977 (Flanginfo): Fix int/Lisp_Object mixup.
1978 (void_call2): New fun.
1979 (Fmap_char_table): Use it in place of call2.
1980
1981 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
1982
1983 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
1984
1985 * keymap.c (copy_keymap_1): Make it static.
1986
1987 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
1988
19892003-02-22 David Ponce <david@dponce.com>
1990
1991 * lread.c (Fload): Don't check STRING_MULTIBYTE.
1992
19932003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1994
1995 * process.h: Removed subtty field from struct Lisp_Process.
1996
1997 * process.c (create_process): Remove setting of subtty.
1998 (emacs_get_tty_pgrp): New function.
1999 (Fprocess_running_child_p, process_send_signal):
2000 Call emacs_get_tty_pgrp instead of ioctl.
2001 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
2002
20032003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
2004
2005 * keymap.c (Fdefine_key): Doc fix.
2006
20072003-02-21 Juanma Barranquero <lektu@terra.es>
2008
2009 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
2010
2011 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
2012 POLLING_PROBLEM_IN_SELECT.
2013
2014 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
2015 Delete #undef of POLLING_PROBLEM_IN_SELECT.
2016
2017 * s/hpux10-20.h: New file.
2018
2019 * process.c (wait_reading_process_input):
2020 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
2021
20222003-02-20 Kenichi Handa <handa@m17n.org>
2023
2024 * fontset.c (check_fontset_name): If NAME is nil, return the
2025 default fontset.
2026 (override_font_info): New function.
2027 (Fset_fontset_font): Document that NAME nil means the default fontset.
2028 (Ffontset_info): If FONTSET is not the default fontset, merge
2029 FONTSET onto the copy of the default fontset, and work on that
2030 copy. Document that NAME nil means the default fontset.
2031 (Ffontset_font): Document that NAME nil means the default fontset.
2032
2033 * process.c (setup_process_coding_systems): If the process's
2034 in/out descriptor is -1, do nothing.
2035
20362003-02-19 Andreas Schwab <schwab@suse.de>
2037
2038 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
2039 Add prototypes.
2040
20412003-02-19 Kenichi Handa <handa@m17n.org>
2042
2043 * xfaces.c (try_alternative_families): Try all scalable fonts if
2044 Vscalable_fonts_allowed is not Qt.
2045
20462003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2047
2048 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
2049
20502003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2051
2052 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
2053 names.
2054
2055 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
2056 (sorted_font_list): Move allocation of struct font_name to
2057 x_face_list_fonts.
2058 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
2059 (Fx_list_fonts): Set maxnames to -1 to get all font names.
2060
20612003-02-18 Kim F. Storm <storm@cua.dk>
2062
2063 * lread.c (read1): Fix last change.
2064 "`" is not always special. Allow "?" after a character constant.
2065
20662003-02-18 Andrew Choi <akochoi@shaw.ca>
2067
2068 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
2069
20702003-02-18 Andreas Schwab <schwab@suse.de>
2071
2072 * window.c (window_scroll_pixel_based): Move outside a
2073 multi-glyph character before setting new window start.
2074
2075 * xdisp.c (in_display_vector_p): New function.
2076 * dispextern.h (in_display_vector_p): Declare.
2077
20782003-02-18 Kim F. Storm <storm@cua.dk>
2079
2080 * lread.c (read1): Fix and relax read syntax.
2081 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
2082 Only recognize "," after dotted-pair dot if inside backquote.
2083 Never include "`" or "," (inside backquote) in a symbol.
2084 Allow dotted-pair dot after a character constant.
2085 Allow "`" and "," (inside backquote) after a character constant.
2086
20872003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2088
2089 * gtkutil.c (xg_tool_bar_expose_callback): New function.
2090 (xg_create_tool_bar): Force style of tool bar to be horizontal with
2091 icons. Set name of tool bar to emacs-toolbar.
2092 (update_frame_tool_bar): Connect expose event to
2093 xg_tool_bar_expose_callback.
2094
20952003-02-17 Richard M. Stallman <rms@gnu.org>
2096
2097 * keyboard.c (this_command_key_count_reset): New variable.
2098 Initiatize to 0 where this_command_key_count is set.
2099 (read_char): Save and restore this_command_key_count_reset
2100 around input method code.
2101 (read_char): If this_command_key_count_reset, echo reread commands.
2102 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
2103
21042003-02-17 Kenichi Handa <handa@m17n.org>
2105
2106 * fns.c (string_to_multibyte): Always return a multibyte string.
2107
21082003-02-16 Jason Rumney <jasonr@gnu.org>
2109
2110 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
2111 Negative max_fonts parameter means list all.
2112
21132003-02-14 Dave Love <fx@gnu.org>
2114
2115 * fns.c (Flanginfo): Doc fix.
2116
21172003-02-13 Kim F. Storm <storm@cua.dk>
2118
2119 * lread.c (read_escape): Interpret \s as a SPACE character, except
2120 for \s-X in a character constant which still is the super modifier.
2121 (read1): Signal an `invalid read syntax' error if a character
2122 constant is immediately followed by a digit or symbol character.
2123
2124 * search.c (Fmatch_data): Doc fix. Explicitly state that
2125 match-data is undefined if last search failed.
2126
2127 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
2128 All uses changed.
2129
21302003-02-12 Juanma Barranquero <lektu@terra.es>
2131
2132 * eval.c (Fdefmacro): Fix typo.
2133
21342003-02-12 Kim F. Storm <storm@cua.dk>
2135
2136 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
2137 macro is a string, convert meta modifiers in string when copying
2138 the string into a vector.
2139
21402003-02-11 Kim F. Storm <storm@cua.dk>
2141
2142 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
2143
21442003-02-11 Kenichi Handa <handa@m17n.org>
2145
2146 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
2147
21482003-02-10 Kim F. Storm <storm@cua.dk>
2149
2150 * process.c: Doc fixes.
2151 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
2152
21532003-02-10 Kenichi Handa <handa@m17n.org>
2154
2155 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
2156
2157 * process.c (QCfilter_multibyte): New variable.
2158 (setup_process_coding_systems): New function.
2159 (Fset_process_buffer, Fset_process_filter):
2160 Call setup_process_coding_systems.
2161 (Fstart_process): Initialize the member `filter_multibyte' of
2162 struct Lisp_Process.
2163 (create_process): Call setup_process_coding_systems.
2164 (Fmake_network_process): New keyward `:filter-multibyte'.
2165 Initialize the member `filter_multibyte' of struct Lisp_Process.
2166 Call setup_process_coding_systems.
2167 (server_accept_connection): Call setup_process_coding_systems.
2168 (read_process_output): If the process has a filter, decide the
2169 multibyteness of a string to given to the filter by
2170 `filter_multibyte' member of the process. If the process doesn't
2171 have a filter and the result of conversion is unibyte, use
2172 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
2173 multibyte form.
2174 (Fset_process_coding_system): Call setup_process_coding_systems.
2175 (Fset_process_filter_multibyte): New function.
2176 (Fprocess_filter_multibyte_p): New function.
2177 (syms_of_process): Intern and staticpro QCfilter_multibyte.
2178 Defsubr Sset_process_filter_multibyte and
2179 Sprocess_filter_multibyte_p.
2180
2181 * process.h (struct Lisp_Process): New member filter_multibyte.
2182
2183 * lisp.h (setup_process_coding_systems): Add prototype.
2184
2185 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
2186 process, update coding systems for the process.
2187
21882003-02-09 Kenichi Handa <handa@m17n.org>
2189
2190 * fns.c (string_to_multibyte): New function.
2191 (Fstring_to_multibyte): New function.
2192 (syms_of_fns): Defsubr it.
2193
21942003-02-08 Andreas Schwab <schwab@suse.de>
2195
2196 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
2197 instead of the substitution.
2198
21992003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2200
2201 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
2202
2203 * xmenu.c (menu_position_func): Adjust menu popup position so that
2204 the menu is fully visible.
2205
22062003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2207
2208 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
2209 (x_make_frame_invisible, x_wm_set_icon_position):
2210 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2211
2212 * xfns.c (x_set_name, x_set_title): Ditto.
2213
22142003-02-04 Richard M. Stallman <rms@gnu.org>
2215
2216 * keyboard.c (echo_now): Update before_command_echo_length.
2217 (Freset_this_command_lengths): Reset this_command_key_count etc.
2218 immediately rather than arranging to do it later.
2219 (before_command_key_count_1, before_command_echo_length_1)
2220 (before_command_restore_flag): Vars deleted.
2221 (add_command_key): Don't handle before_command_restore_flag.
2222 (read_char, record_menu_key): Don't update before_command_key_count or
2223 before_command_echo_length.
2224 (read_char): Don't handle before_command_restore_flag.
2225
2226 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
2227 in direct-output clauses if it wouldn't be called in the ordinary case.
2228
22292003-02-04 Kim F. Storm <storm@cua.dk>
2230
2231 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
2232
22332003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2234
2235 * gtkutil.c (remove_from_container): Copying list is not needed.
2236 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
2237 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
2238 on list returned from gtk_container_get_children to avoid memory leak.
2239
22402003-02-01 Jason Rumney <jasonr@gnu.org>
2241
2242 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
2243 local malloc.
2244 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
2245 definitions in xpm.h.
2246 (init_xpm_functions): New function.
2247 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
2248 (init_external_image_libraries): Try to load libXpm.dll.
2249
2250 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
2251 timestamp.
2252
22532003-01-31 Dave Love <fx@gnu.org>
2254
2255 * syntax.c (Fskip_chars_forward)
2256 (open-paren-in-column-0-is-defun-start): Doc fix.
2257
22582003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
2259
2260 * fileio.c: Support // at start of name for Cygwin (just added proper
2261 preprocessor tests).
2262
2263 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
2264
2265 * Makefile.in: Use @EXEEXT@ for Cygwin.
2266
2267 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
2268
2269 * s/cygwin.h: Added for Cygwin port.
2270
22712003-01-31 Juanma Barranquero <lektu@terra.es>
2272
2273 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
2274 when including gif_lib.h.
2275 (init_gif_functions, init_tiff_functions): New functions.
2276 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
2277 Windows. Disable color table lookups. Call library functions
2278 through pointers determined at runtime.
2279 (init_external_image_libraries): Try to load libungif.dll and
2280 libtiff.dll.
2281
22822003-01-31 Kenichi Handa <handa@m17n.org>
2283
2284 * xdisp.c (SKIP_GLYPHS): New macro.
2285 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
2286
22872003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2288
2289 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
2290
22912003-01-30 Dave Love <fx@gnu.org>
2292
2293 * alloc.c (Vgc_elapsed, gcs_done): New variables.
2294 (Fgarbage_collect): Use them.
2295 (init_alloc, syms_of_alloc): Set them up.
2296
22972003-01-30 Juanma Barranquero <lektu@terra.es>
2298
2299 * w32fns.c (init_external_image_libraries): Add missing operator.
2300
23012003-01-29 Jason Rumney <jasonr@gnu.org>
2302
2303 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
2304 an alternative name for jpeg.dll.
2305
23062003-01-29 Kenichi Handa <handa@m17n.org>
2307
2308 * xdisp.c (set_cursor_from_row): Pay attention to string display
2309 properties.
2310
23112003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
2312
2313 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
2314 <escape>.
2315 (keycode_to_xkeysym_table): Reformat and add more comments.
2316 (XTread_socket): Drop special case for backspace.
2317
23182003-01-28 Andrew Choi <akochoi@shaw.ca>
2319
2320 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
2321 values in old-style RGB specs.
2322
23232003-01-27 Juanma Barranquero <lektu@terra.es>
2324
2325 * w32fns.c (init_external_image_libraries): Try alternate names for the
2326 jpeg dll.
2327
23282003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2329
2330 * gtkutil.c (create_dialog, xg_separator_p)
2331 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
2332 before calling strcmp or strlen.
2333
23342003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2335
2336 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
2337 and handle image load failure.
2338
23392003-01-26 Jason Rumney <jasonr@gnu.org>
2340
2341 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
2342 New functions.
2343 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
2344 Disable color table lookups. Call jpeg library functions
2345 through pointers determined at runtime.
2346 (init_external_image_libraries): Try to load jpeg.dll.
2347
23482003-01-25 Richard M. Stallman <rms@gnu.org>
2349
2350 * lisp.h: Declare format2 instead of format1.
2351
2352 * fileio.c (barf_or_query_if_file_exists):
2353 Call format2 instead of format1.
2354
2355 * editfns.c (format2): New function, replaces format1
2356 but takes exactly two Lisp Objects as format args.
2357
2358 * buffer.c (Fkill_buffer): Call format2 instead of format1.
2359
23602003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2361
2362 * xterm.h: Change to return value of x_dispatch_event to int.
2363
2364 * xterm.c (x_filter_event): New function.
2365 (event_handler_gdk, XTread_socket): Call x_filter_event.
2366 (x_dispatch_event): Change to return value of finish.
2367 (event_handler_gdk): Use return value from x_dispatch_event.
2368
2369 * xfns.c (x_window): Call create_frame_xic for GTK version to
2370 initialize input methods.
2371
2372 * gtkutil.h: Add (void) prototypes.
2373
2374 * gtkutil.c (create_menus): Remove code that puts the help menu to
2375 the right.
2376
23772003-01-25 Jason Rumney <jasonr@gnu.org>
2378
2379 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
2380 [HAVE_PNG]: Sync with xfns.c version.
2381 (png_load): Adjust colors for Windows. Use Windows
2382 bitmaps. Disable color table lookups.
2383 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
2384 (init_png_functions): New function.
2385 (png_read_from_memory, png_load): Call png library functions
2386 through pointers determined at runtime.
2387 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
2388 (init_external_image_libraries): New function.
2389 (init_xfns): Call it.
2390
23912003-01-24 Andreas Schwab <schwab@suse.de>
2392
2393 * minibuf.c (Fminibuffer_message): Verify type of parameter.
2394
23952003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2396
2397 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
2398 of static initializer.
2399
24002003-01-24 Dave Love <fx@gnu.org>
2401
2402 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
2403 architectures.
2404
2405 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
2406 Use __alignof__.
2407
24082003-01-24 Kenichi Handa <handa@m17n.org>
2409
2410 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
2411 It it is nonzero, don't pretend that an invisible area doesn't exist.
2412 (command_loop_1): Call adjust_point_for_property with proper
2413 second arg.
2414
24152003-01-22 Jason Rumney <jasonr@gnu.org>
2416
2417 Sync changes with xterm.c and xfns.c.
2418
2419 * w32term.c (x_draw_glyph_string_foreground)
2420 (x_draw_composite_glyph_string_foreground): Implement overstriking.
2421
2422 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
2423 phys_cursor's hpos is overwritten. This is still not completely
2424 correct, as it doesn't really make sense to use hpos at all to
2425 get the cursor glyph (as that is relative to the width of the
2426 characters on the line, which may have changed during the update).
2427
2428 * w32term.c (notice_overwritten_cursor): Handle the special case
2429 of the cursor being in the first blank non-text line at the
2430 end of a window.
2431
2432 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
2433 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
2434 Compute from the x position returned by x_draw_glyphs.
2435
2436 (x_display_and_set_cursor): Don't set phys_cursor_width here,
2437 except for NO_CURSOR and system caret, to make phys_cursor_width
2438 contain what its name suggests.
2439 (notice_overwritten_cursor): Consider the cursor image erased if
2440 the output area intersects the cursor image in y-direction.
2441
2442 * w32term.c (note_mode_line_or_margin_highlight): Rename from
2443 note_mode_line_highlight and extend.
2444
2445 * w32term.c (last_window): New variable.
2446 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
2447 (note_mouse_movement): Remove reimplemented code in #if 0.
2448
2449 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
2450 not update_mode_lines, and always set it to 1.
2451
24522003-01-21 Jason Rumney <jasonr@gnu.org>
2453
2454 * w32fns.c (IDC_HAND): Define it if system headers don't.
2455
24562003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
2457
2458 * w32term.h (struct w32_output): New member hand_cursor.
2459 (WM_EMACS_SETCURSOR): New message definition.
2460
2461 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
2462 function w32_define_cursor.
2463 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
2464 position, change member name output_data.x to output_data.w32 and
2465 add function w32_define_cursor.
2466 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
2467 and change member name output_data.x to output_data.w32.
2468 (w32_initialize_display_info):
2469 Setup dpyinfo->vertical_scroll_bar_cursor.
2470
2471 * w32fns.c (Vx_hand_shape): New variable.
2472 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
2473 WM_EMACS_SETCURSOR.
2474 (x-create-frame): Setup Cursor types.
2475
24762003-01-21 David Ponce <david@dponce.com>
2477
2478 * w32term.c (w32_encode_char): For DIM=1 charset, set
2479 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
2480 x_encode_char change by Kenichi Handa <handa@m17n.org> on
2481 2002-09-30.)
2482 (w32_draw_relief_rect): Declare all args.
2483 (w32_define_cursor): New.
2484
2485 * w32fns.c (w32_load_cursor): New function.
2486 (w32_init_class): Use it.
2487 (x_put_x_image): Declare all args.
2488
24892003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
2490
2491 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
2492
24932003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2494
2495 * gtkutil.c: Must include stdio.h before termhooks.h
2496
24972003-01-21 Dave Love <fx@gnu.org>
2498
2499 * alloc.c (Fgc_status): Print zombie list.
2500 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
2501 Fix assignment of zombies.
2502 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
2503 Don't take car of non-cons.
2504
2505 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
2506
2507 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
2508
25092003-01-20 David Ponce <david@dponce.com>
2510
2511 * w32menu.c (digest_single_submenu): Declare all args.
2512
2513 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
2514 changes in xmenu.c:
2515
2516 (parse_single_submenu): Use individual keymap's prompt
2517 string as pane name, if there is one.
2518 (set_frame_menubar): Save menu_items_n_panes from each call to
2519 parse_single_submenu and use it when calling digest_single_submenu.
2520
25212003-01-20 Steven Tamm <steventamm@mac.com>
2522
2523 * macterm.c (XTread_socket): Checks for valid, visible window
2524 before sending a scroll-wheel event.
2525
25262003-01-20 Richard M. Stallman <rms@gnu.org>
2527
2528 * xdisp.c (redisplay_window): If mini window's buffer is not
2529 a minibuffer, then redisplay it like other windows.
2530
25312003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2532
2533 * gtkutil.c (xg_create_frame_widgets): Check if there is an
2534 external tool bar before setting tool bar height.
2535
25362003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2537
2538 * xterm.c (handle_one_xevent): Surround popup_activated
2539 with #ifdef:s for non-toolkit version.
2540
2541 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
2542 (gtkutil.o): New file.
2543 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
2544 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
2545
2546 * gtkutil.c: New file for GTK version.
2547
2548 * gtkutil.h: New file for GTK version.
2549
2550 * xterm.h: Add xt_or_gtk_widget.
2551 Include gtk files for USE_GTK.
2552 (struct x_output): Add toolbar_height.
2553 (struct x_output): Add GTK widgets and Gdk size_hints.
2554 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
2555 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
2556 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
2557
2558 * xterm.c: Include gtkutil.h for USE_GTK.
2559 Declare extern void free_frame_menubar for USE_GTK.
2560 (note_mouse_highlight): Check popup_activated for USE_GTK.
2561 (xt_action_hook): Don't compile if USE_GTK.
2562 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
2563 (xg_scroll_callback): New function.
2564 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
2565 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
2566 for USE_GTK.
2567 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
2568 xg_show_scroll_bar for USE_GTK.
2569 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
2570 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
2571 (event_handler_gdk): New function for USE_GTK.
2572 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
2573 (handle_one_xevent): Make sure widget is mapped before
2574 calling x_real_positions for USE_GTK.
2575 (XTread_socket): Add GTK event loop for USE_GTK.
2576 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
2577 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
2578 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
2579 (x_iconify_frame): Add code for USE_GTK.
2580 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
2581 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
2582 is in gtkutil.c.
2583 (x_term_init): Add initialization for GTK.
2584 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
2585
2586 * xmenu.c: Include gtkutil.h for USE_GTK.
2587 (Fx_popup_menu): Use current position if x and y is NIL.
2588 (single_menu_item, single_menu_item, Fx_popup_dialog):
2589 Check for USE_GTK.
2590 (popup_widget_loop): New function for USE_GTK.
2591 (x_activate_menubar): Add code for USE_GTK.
2592 (popup_activate_callback, popup_deactivate_callback)
2593 (menu_highlight_callback, menubar_selection_callback):
2594 Add USE_GTK versions.
2595 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
2596 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
2597 (free_frame_menubar): Only compile if not USE_GTK. GTK version
2598 is in gtkutil.c.
2599 (popup_selection_callback): New version for USE_GTK.
2600 (create_and_show_popup_menu): New fuction, one USE_GTK version and
2601 one USE_X_TOOLKIT version.
2602 (xmenu_show): Call create_and_show_popup_menu.
2603 (dialog_selection_callback): New version for USE_GTK.
2604 (create_and_show_dialog): New fuction, one USE_GTK version and
2605 one USE_X_TOOLKIT version.
2606 (xdialog_show): Call create_and_show_dialog.
2607
2608 * xfns.c: Include gtkutil for USE_GTK.
2609 (x_window_to_frame, x_any_window_to_frame)
2610 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
2611 (x_top_window_to_frame): Add code for USE_GTK.
2612 (x_set_background_color): Call xg_set_background_color for GTK.
2613 (x_set_menu_bar_lines): Check for USE_GTK.
2614 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
2615 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
2616 (x_window): Call xg_create_frame_widgets for USE_GTK.
2617 (Fx_create_frame): Check for USE_GTK
2618 (Fx_file_dialog): New implementation for USE_GTK.
2619
2620 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
2621 (update_menu_bar): Add check for USE_GTK.
2622 (update_tool_bar): Add check for USE_GTK and external tool bar.
2623 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
2624 (redisplay_internal): Add check for USE_GTK and popup_activated.
2625 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
2626 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
2627 (display_menu_bar): Add check for USE_GTK
2628
2629 * lisp.h: Declare Vx_resource_name extern.
2630
2631 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
2632 for USE_GTK.
2633 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
2634
2635 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
2636 (FRAME_EXTERNAL_TOOL_BAR): New macro.
2637 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
2638
2639 * fileio.c (Fread_file_name): Add check for USE_GTK.
2640
2641 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
2642 Add check for USE_GTK.
2643
2644 * config.in: Added HAVE_GTK
2645
2646 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
2647
26482003-01-18 Stefan Monnier <monnier@cs.yale.edu>
2649
2650 * charset.h (Funibyte_char_to_multibyte): Export.
2651
26522003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2653
2654 * xmenu.c (mouse_position_for_popup): New function.
2655 (Fx_popup_menu): Call mouse_position_for_popup for X and
2656 mouse_position_hook for others.
2657
26582003-01-17 Kim F. Storm <storm@cua.dk>
2659
2660 * editfns.c (Finsert): Mention `string-make-multibyte' and
2661 `string-as-multibyte' in doc string.
2662
26632003-01-17 Kenichi Handa <handa@m17n.org>
2664
2665 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
2666
2667 * editfns.c (Fformat): Convert an unibyte char argument that is
2668 formatted by "%c" to multibyte if the total result must be a
2669 multibyte string.
2670
26712003-01-16 Kim F. Storm <storm@cua.dk>
2672
2673 * process.c (set-process-filter): Document unibyte/multibyte-ness
2674 of string argument.
2675
26762003-01-16 Kenichi Handa <handa@m17n.org>
2677
2678 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
2679
2680 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
2681 (re_search_2): Likewise.
2682
26832003-01-15 Kenichi Handa <handa@m17n.org>
2684
2685 * xdisp.c (message_dolog): Fix bug of the case that *Message*
2686 buffer is unibyte.
2687
26882003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
2689
2690 * fns.c (Fsubstring): Clarify doc string.
2691
2692 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
2693 (Fprevious_char_property_change)
2694 (Fnext_single_char_property_change)
2695 (Fprevious_single_char_property_change, Fnext_property_change)
2696 (Fnext_single_property_change, Fprevious_property_change)
2697 (Fprevious_single_property_change, Fadd_text_properties)
2698 (Fput_text_property, Fset_text_properties)
2699 (Fremove_text_properties, Fremove_list_of_text_properties)
2700 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
2701
27022003-01-14 Kim F. Storm <storm@cua.dk>
2703
2704 * process.h (struct Lisp_Process): New member plist replaces old
2705 member private_vars. All uses changed.
2706
2707 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
2708 (QCplist): Rename from QCvars. Change all uses.
2709 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
2710 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
2711 (syms_of_process): Intern, staticpro, defsubr these.
2712 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
2713
27142003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
2715
2716 * m/delta.h: Remove (obsolete).
2717
27182003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
2719
2720 * fileio.c (Fdelete_directory, Fdelete_file): Document the
2721 behaviour in front of symlinks.
2722 (Fdelete_file): Raise an error on directories.
2723
27242003-01-13 Dave Love <fx@gnu.org>
2725
2726 * fns.c (Freverse): Use QUIT.
2727
27282003-01-13 Richard M. Stallman <rms@gnu.org>
2729
2730 * minibuf.c (minibuffer_completion_contents):
2731 Error if point is inside prompt.
2732
2733 * keyboard.c (command_loop_1): Don't redisplay directly
2734 if there's a post-command-hook.
2735
2736 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
2737 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2738
27392003-01-12 Kim F. Storm <storm@cua.dk>
2740
2741 * process.h (struct Lisp_Process): New member private_vars.
2742
2743 * process.c (QCvars): New variable.
2744 (syms_of_process): Intern and staticpro it.
2745 (Fset_process_contact): Removed function.
2746 (Fprocess_variable, Fset_process_variable): New functions.
2747 (syms_of_process): Defsubr them.
2748 (Fstart_process): Initialize private_vars plist to nil.
2749 (Fmake_network_process): New arg :vars to setup the private
2750 variables for new network process.
2751 (server_accept_connection): Copy server's private variables to
2752 client process.
2753
2754 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
2755 crashes). Code rewritten and simplified. Now directly aligns the
2756 pointer and recalculates pure_bytes_used, rather than aligning the
2757 size and adjusting the pointer.
2758
27592003-01-11 Kim F. Storm <storm@cua.dk>
2760
2761 * process.c (Fset_process_contact): New function.
2762 (syms_of_process): defsubr it.
2763 (make-network-process): Update doc.
2764
27652003-01-10 Andreas Schwab <schwab@suse.de>
2766
2767 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
2768 Reported by Berthold Gunreben <b.gunreben@web.de>.
2769
27702003-01-10 Dave Love <fx@gnu.org>
2771
2772 * composite.c (syms_of_composite): Make composition_hash_table weak.
2773
27742003-01-09 Kim F. Storm <storm@cua.dk>
2775
2776 * process.c (Fmake_network_process): Convert new port number
2777 to host byte order for `:service t' case. From Mario Lang.
2778
27792003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2780
2781 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
2782 instead of XtAppProcessEvent.
2783
2784 * xterm.c (handle_one_xevent): New function.
2785 (x_dispatch_event): New function.
2786 (XTread_socket): Call handle_one_xevent.
2787
2788 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
2789
2790 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
2791 call XQueryPointer to get coordinates.
2792 (popup_get_selection): Do not set popup_activated_flag to zero,
2793 let popup_deactivate_callback do that. Needed for Motif.
2794 Call x_dispatch_event instead of XtDispatchEvent.
2795 (xmenu_show): Calculate root coordinate from frame top/left position.
2796
27972003-01-08 Kim F. Storm <storm@cua.dk>
2798
2799 * process.c (server_accept_connection): Fix recording of new
2800 connection's local address in :local property of contact info.
2801 (Fmake_network_process): Record local network address for new
2802 client processes in :local property of contact info.
2803 (format-network-address): Add arg OMIT-PORT. Change callers.
2804
28052003-01-07 Dave Love <fx@gnu.org>
2806
2807 * Makefile.in (fns.o): Depend on coding.h.
2808
28092003-01-07 Markus Rost <rost@math.ohio-state.edu>
2810
2811 * minibuf.c (Fread_variable): Doc fix.
2812
2813 * eval.c (Fuser_variable_p): Doc change. For custom variables,
2814 use the same test as for custom-variable-p.
2815
28162003-01-05 Richard M. Stallman <rms@gnu.org>
2817
2818 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
2819 Count LAST_LINE_MISFIT in scroll margin for end of window.
2820 Move label too_near_end before setting SCROLL_MARGIN_POS.
2821 Set LAST_LINE_MISFIT before jumping there.
2822
2823 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
2824 scroll_conservatively case. If scrolling that much doesn't change
2825 STARTP, move it down one line.
2826
2827 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
2828 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
2829
2830 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
2831 selected frame.
2832
2833 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
2834 (syms_of_keymap): staticpro them.
2835 (Fapropos_internal): Initialize them and clear them out.
2836 Don't GCPRO them.
2837
2838 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
2839 Doc fixes.
2840
2841 * lisp.h: New misc type Lisp_Save_Value.
2842 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
2843 (XSAVE_VALUE): New macro.
2844 (struct Lisp_Save_Value): New data type.
2845 (union Lisp_Misc): Add u_save_value alternative.
2846 (make_save_value): Declared.
2847
2848 * alloc.c (make_save_value): New function.
2849
2850 * xterm.c (x_catch_errors): Save dpy using make_save_value.
2851 (x_catch_errors_unwind): Call XSync.
2852
28532003-01-01 Richard M. Stallman <rms@gnu.org>
2854
2855 * window.c (window_scroll_pixel_based): Partially undo last change.
2856
2857 * keyboard.c (command_loop_1): Call adjust_point_for_property
2858 in direct action cases for Qforward_char and Qbackward_char.
2859 Set already_adjusted so it won't be done twice.
2860
28612002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
2862
2863 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
2864 type definition of size_t.
2865
28662003-01-02 Steven Tamm <steventamm@mac.com>
2867
2868 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
2869 distinguish Carbon GUI builds from X11 builds on darwin.
2870
28712002-12-30 Steven Tamm <steventamm@mac.com>
2872
2873 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
2874 to default to t.
2875
28762002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
2877
2878 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
2879
28802002-12-28 Steven Tamm <steventamm@mac.com>
2881
2882 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
2883 allow building in a different directory than source. Uses some
2884 GNU Make extensions, but there is no other make on Mac OS X.
2885
28862002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2887
2888 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
2889 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
2890 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
2891 (Fstring_to_number): Mention the returned value in the doc strings.
2892
28932002-12-23 Richard M. Stallman <rms@gnu.org>
2894
2895 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
2896 <scroll-down-aggressively>: Doc fix.
2897
2898 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
2899 string as pane name, if there is one.
2900 (set_frame_menubar): Save menu_items_n_panes from each call to
2901 parse_single_submenu and use it when calling digest_single_submenu.
2902
2903 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
2904 Don't try to make last line fully visible if it is past end of window.
2905
29062002-12-22 Steven Tamm <steventamm@mac.com>
2907
2908 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
2909 (mac_menu_show): Add support for hierarchical popup menus.
2910 (add_menu_item): Remove indentation support.
2911 (fill_submenu, fill_menu): Create hierarchical menus
2912 instead of using indentation.
2913
29142002-12-22 Richard M. Stallman <rms@gnu.org>
2915
2916 * xdisp.c (try_cursor_movement): Don't call try_window here.
2917 (redisplay_window): Never redisplay minibuffer when inactive.
2918
2919 * window.c (select_window_1): Undo 9/21 change.
2920
29212002-12-22 Steven Tamm <steventamm@mac.com>
2922
2923 * macterm.c (XTread_socket): Call KeyTranslate for control and
2924 meta to deal correctly shifted non-alpha characters, like C-S-5
2925 being treated like C-%. Does not look for shift key to deal
2926 with masking off control-key with mac-reverse-ctrl-meta.
2927
29282002-12-21 Richard M. Stallman <rms@gnu.org>
2929
2930 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
2931 If it is non-nil, run timers. Use an unwind-protect to requeue
2932 the events that were read ahead.
2933 (popup_get_selection_unwind): New subroutine.
2934 (popup_get_selection_queue): File-scope variable now holds that queue.
2935 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
2936 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
2937 Use an unwind-protect to pop down the dialog box.
2938 (xdialog_show_unwind): New subroutine implements that.
2939
2940 * xdisp.c (row_containing_pos): Change exit test using last_y.
2941 (try_window_id): Abort if row_containing_pos returns null.
2942
2943 * lread.c (load_error_handler): New function.
2944 (Fload): Handle errors in Fsubstitute_in_file_name.
2945 Don't expect Fsignal to return.
2946
2947 * eval.c: Errors and throws work right with interrupt blocking.
2948 (struct catchtag): New elt interrupt_input_blocked.
2949 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
2950 (internal_catch, Fcondition_case, internal_condition_case)
2951 (internal_condition_case_1, internal_condition_case_2): Save it.
2952 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
2953
2954 * editfns.c (Fformat): Add parens.
2955
2956 * dired.c (file_name_completion): Fix that change.
2957 Delete special quit-handling code; just use QUIT.
2958
29592002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
2960
2961 * dired.c (file_name_completion): Close directory on error
2962 just as in directory_files_internal.
2963
29642002-12-19 David Kastrup <David.Kastrup@t-online.de>
2965
2966 * window.c (Fset_window_configuration): Set old_point to correct
2967 value when new_current_buffer == current_buffer.
2968
29692002-12-17 Ben Key <bkey1@tampabay.rr.com>
2970
2971 Revisited my earlier fix for the following entry in etc/PROBLEMS:
2972 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
2973 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
2974
2975 These changes were in part based upon suggestions made by Peter
2976 'Luna' Runestig [peter@runestig.com].
2977
2978 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
2979 g_b_init_get_token_information, g_b_init_lookup_account_sid,
2980 g_b_init_get_sid_identifier_authority ): Add several static
2981 global variables.
2982
2983 * w32.c (globals_of_w32): New function. Used to initialize those
2984 global variables that must always be initialized on startup even
2985 when the global variable initialized is non zero. Its primary
2986 purpose at this time is to set the global variables
2987 g_b_init_is_windows_9x, g_b_init_open_process_token,
2988 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
2989 g_b_init_get_sid_identifier_authority to 0 on startup.
2990 Called from main.
2991
2992 * w32.c (is_windows_9x): Perform initialization only if
2993 g_b_init_is_windows_9x is equal to 0. On initialization set
2994 g_b_init_is_windows_9x equal to 1.
2995
2996 * w32.c (open_process_token): Perform initialization only if
2997 g_b_init_open_process_token is equal to 0. On initialization set
2998 g_b_init_open_process_token equal to 1.
2999
3000 * w32.c (get_token_information): Perform initialization only if
3001 g_b_init_get_token_information is equal to 0. On initialization
3002 set g_b_init_get_token_information equal to 1.
3003
3004 * w32.c (lookup_account_sid): Perform initialization only if
3005 g_b_init_lookup_account_sid is equal to 0. On initialization
3006 set g_b_init_lookup_account_sid equal to 1.
3007
3008 * w32.c (get_sid_identifier_authority): Perform initialization
3009 only if g_b_init_get_sid_identifier_authority is equal to 0.
3010 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
3011
3012 * w32fns.c (globals_of_w32fns): New function. Used to initialize
3013 those global variables that must always be initialized on startup
3014 even when the global variable initialized is non zero.
3015 Its primary purpose at this time is to initialize the global variable
3016 track_mouse_event_fn.
3017
3018 * w32fns.c (w32_wnd_proc): Remove initialization of
3019 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
3020
3021 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
3022
3023 * w32menu.c (globals_of_w32menu): New function. Used to
3024 initialize those global variables that must always be initialized
3025 on startup even when the global variable initialized is non zero.
3026 Its primary purpose at this time is to initialize the global
3027 variables get_menu_item_info and set_menu_item_info.
3028
3029 * w32menu.c (initialize_frame_menubar): Remove initialization of
3030 get_menu_item_info and set_menu_item_info.
3031
3032 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
3033
3034 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
3035 Declare them.
3036
3037 * emacs.c (main): Call globals_of_w32 prior to calling
3038 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
3039 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
3040 is defined.
3041
3042 * w32term.c (x_update_window_begin): Fix Windows API error
3043 detected by BoundsChecker. Test to determine if
3044 w32_system_caret_hwnd is NULL prior to attempting to use
3045 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
3046
3047 * w32term.c (x_update_window_end): Fix Windows API error
3048 detected by BoundsChecker. Test to determine if
3049 w32_system_caret_hwnd is NULL prior to attempting to use
3050 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
3051
30522002-12-17 Kenichi Handa <handa@m17n.org>
3053
3054 * coding.c (coding_system_require_warning): New variable.
3055 (syms_of_coding): DEFVAR it.
3056
3057 * coding.h (coding_system_require_warning): Extern it.
3058
3059 * fileio.c (choose_write_coding_system): Even if
3060 Vcoding_system_for_write is non-nil, if
3061 coding_system_require_warning is nonzero, call
3062 Vselect_safe_coding_system_function.
3063
30642002-12-17 Markus Rost <rost@math.ohio-state.edu>
3065
3066 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
3067 (lisp): Add font-core.
3068
30692002-12-13 Stefan Monnier <monnier@cs.yale.edu>
3070
3071 * textprop.c (text_read_only): New arg `propval'.
3072 (get_char_property_and_overlay): Remove unused var `next_overlay'.
3073 (verify_interval_modification): Use text_read_only's new arg.
3074
30752002-12-13 Kenichi Handa <handa@m17n.org>
3076
3077 * coding.c (Funencodable_char_position): Set pend correctly.
3078
30792002-12-12 Jason Rumney <jasonr@gnu.org>
3080
3081 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
3082 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
3083 Be more careful about when help_events are generated.
3084
30852002-12-12 Steven Tamm <steventamm@mac.com>
3086
3087 * macterm.c (mac_check_for_quit_char): Correctly set the
3088 modifiers of the event to 0.
3089 * mac.c (sys_select): Duplicate rfds before calling select to
3090 ensure that rfds survive the while loop.
3091
30922002-12-11 Kim F. Storm <storm@cua.dk>
3093
3094 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
3095 row_containing_pos returned NULL.
3096
30972002-12-10 Steven Tamm <steventamm@mac.com>
3098
3099 * mac.c (sys_read): Fix sys_read to not call select if IO is
3100 non-blocking.
3101 (sys_select): Fix sys_select to not use a timeout larger than
3102 the one given.
3103
31042002-12-10 Juanma Barranquero <lektu@terra.es>
3105
3106 * editfns.c (Fformat): Use alloca, not _alloca.
3107
31082002-12-09 Richard M. Stallman <rms@gnu.org>
3109
3110 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
3111 as the last thing.
3112
31132002-12-09 Dave Love <fx@gnu.org>
3114
3115 * s/sol2-8.h: Removed. (Not necessary.)
3116
31172002-12-09 Matthew Swift <swift@alum.mit.edu>
3118
3119 * editfns.c (Fformat): Handle precision in string conversion
3120 specifiers like libc functions do (ie, print at most that many
3121 characters).
3122
31232002-12-08 Richard M. Stallman <rms@gnu.org>
3124
3125 * xdisp.c (row_containing_pos): Check more carefully
3126 whether charpos is really in the row before returning it.
3127
31282002-12-07 Steven Tamm <steventamm@mac.com>
3129
3130 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
3131
3132 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
3133 each stack frame. This may change as it could be time consuming.
3134
3135 * macterm.c (mac_check_for_quit_char, quit_char_comp)
3136 (init_quit_char_handler, mac_determine_quit_char_modifiers)
3137 (mac_initialize): Add code to check for pressing of quit_char
3138 in the OS event queue.
3139
3140 * mac.c (sys_select): Call mac_check_for_quit_char every second
3141 while blocking on select.
3142
3143 * mac.c (sys_read): Use sys_select to test for input first
3144 before calling read, to allow C-g to break.
3145
31462002-12-07 Richard M. Stallman <rms@gnu.org>
3147
3148 * minibuf.c (Fcompleting_read): Doc fix.
3149
3150 * lread.c (syms_of_lread) <load-history>: Doc fix.
3151
3152 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
3153
3154 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
3155 autoload.
3156
3157 * data.c (Fdefalias): Record in load-history redefining an autoload.
3158
3159 * alloca.c: Undo ifdef change accidentally made on 12-04.
3160
31612002-12-06 Francesco Potorti` <pot@gnu.org>
3162
3163 * xfns.c (png_load): Avoid double gamma correction for PNG images.
3164
31652002-12-04 Richard M. Stallman <rms@gnu.org>
3166
3167 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
3168
3169 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
3170
3171 * alloca.c: Don't use #error.
3172
31732002-12-03 Dave Love <fx@gnu.org>
3174
3175 * buffer.c (Qucs_set_table_for_input): New.
3176 (Fget_buffer_create): Use it.
3177 (Qset_buffer_major_mode_hook): Deleted.
3178 (Fset_buffer_major_mode): Revert previous change.
3179 (init_buffer_once): Intern ucs-set-table-for-input.
3180 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
3181 Add &Qucs_set_table_for_input.
3182
31832002-12-03 Andreas Schwab <schwab@suse.de>
3184
3185 * callint.c (Fcall_interactively): Use next_event only if less
3186 than key_count.
3187
31882002-12-02 Andrew Choi <akochoi@shaw.ca>
3189
3190 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
3191 names to 255 characters.
3192
3193 * macterm.c (XTread_socket): If all frames have been collapsed,
3194 expand the first one before handling drag-and-drop events.
3195
3196 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
3197 which is detected by autoconf.
3198
31992002-12-01 Steven Tamm <steventamm@mac.com>
3200
3201 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
3202 offset in two hints table to allow prebinding to be redone and
3203 allow the executable to be stripped.
3204
32052002-11-29 Dave Love <fx@gnu.org>
3206
3207 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
3208 already provided.
3209
32102002-11-29 Richard M. Stallman <rms@gnu.org>
3211
3212 * xdisp.c (start_display): Check more intelligently for
3213 whether the line is continued.
3214 (move_it_vertically_backward): Clear it->continuation_lines_width.
3215
32162002-11-28 Dave Love <fx@gnu.org>
3217
3218 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
3219 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
3220
32212002-11-27 Steven Tamm <steventamm@mac.com>
3222
3223 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
3224 more descriptive error output from lread.c:Fload upon most require
3225 cycles during boostrapping.
3226
32272002-11-27 Jason Rumney <jasonr@gnu.org>
3228
3229 * fileio.c (Finsert_file_contents): Give a more appropriate error
3230 for files bigger than 2Gb when off_t is 32 bit.
3231
3232 * dired.c (Ffile_attributes): Don't return negative file sizes for
3233 files bigger than 2Gb when off_t is 32 bit.
3234
32352002-11-27 Dave Love <fx@gnu.org>
3236
3237 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
3238
3239 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
3240 Test GETPGRP_VOID instead.
3241 [BSD_TERMIOS]: Remove definitions (never used).
3242
3243 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
3244 Don't define.
3245 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
3246
3247 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
3248
32492002-11-25 Jason Rumney <jasonr@gnu.org>
3250
3251 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
3252 supported.
3253
32542002-11-25 Dave Love <fx@gnu.org>
3255
3256 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
3257
3258 * Makefile.in (TEMACS_LDFLAGS): Update last change.
3259
32602002-11-25 Andreas Schwab <schwab@suse.de>
3261
3262 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
3263
32642002-11-24 Steven Tamm <steventamm@mac.com>
3265
3266 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
3267 determine the size of pointers alloced in unexed space instead
3268 of using possibly invalid emacs_zone pointers. This fixes the
3269 binary incompatibility problems caused by updates to libSystem.B.
3270
32712002-11-24 Richard M. Stallman <rms@gnu.org>
3272
3273 * search.c (Fstring_match): Doc fix.
3274
3275 * callint.c (Fcall_interactively): If a command fails because
3276 `*' detects a read-only buffer, but RECORD_FLAG is set,
3277 record it anyway if the args don't actually do tty input.
3278
32792002-11-22 Dave Love <fx@gnu.org>
3280
3281 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
3282
3283 * keyboard.c (interrupt_signal): Provide forward declaration.
3284 (kbd_buffer_store_event): Don't declare interrupt_signal.
3285
3286 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
3287
32882002-11-21 Richard M. Stallman <rms@gnu.org>
3289
3290 * eval.c (interactive_p): Skip any number of bytecode
3291 and special form frames, in any order.
3292
32932002-11-20 Jason Rumney <jasonr@gnu.org>
3294
3295 * w32fns.c (convert_mono_to_color_image): New function.
3296 (xbm_load, xbm_load_image): Use it when foreground or background
3297 is explicitly set.
3298
32992002-11-19 Dave Love <fx@gnu.org>
3300
3301 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
3302
33032002-11-18 Jason Rumney <jasonr@gnu.org>
3304
3305 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
3306 (XPutPixel): Swap blue and red.
3307 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
3308 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
3309 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
3310 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
3311
33122002-11-18 Dave Love <fx@gnu.org>
3313
3314 * m/orion105.h (HAVE_ALLOCA): Don't define.
3315
3316 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
3317
3318 * m/intel386.h: Don't include alloca.h or define alloca.
3319
3320 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
3321 malloc, realloc, calloc.
3322
3323 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
3324 (bcmp): Don't define.
3325
3326 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
3327
3328 * m/amdahl.h: Don't define LIB_STANDARD.
3329
3330 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
3331
3332 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
3333
3334 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
3335 Don't include alloca.h.
3336
3337 * s/aix3-2.h (HAVE_FSYNC): Don't define.
3338
3339 * regex.c (_GNU_SOURCE): Don't define.
3340
3341 * process.c (_GNU_SOURCE): Don't define.
3342
3343 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
3344
33452002-11-18 Markus Rost <rost@math.ohio-state.edu>
3346
3347 * s/sol2-8.h: Include sol2-6.h.
3348
33492002-11-18 Miles Bader <miles@gnu.org>
3350
3351 * dispextern.h (struct face): Add `overstrike' field.
3352 * xterm.c (x_draw_glyph_string_foreground)
3353 (x_draw_composite_glyph_string_foreground): Implement overstriking.
3354 * xfaces.c (load_face_font): Set `face->overstrike' based on
3355 result from choose_face_font.
3356 (best_matching_font, choose_face_font): Add `needs_overstrike'
3357 argument, and use it to return whether overstriking is desirable
3358 for this face/font combo.
3359 (set_font_frame_param: Pass new argument to choose_face_font.
3360
33612002-11-17 Ben Key <BKey1@tampabay.rr.com>
3362
3363 This change is my fix for the following entry in etc/PROBLEMS:
3364 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
3365 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
3366
3367 * w32.c: Added wrapper functions around the win32 API functions
3368 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
3369 GetSidIdentifierAuthority. These wrapper functions serve two
3370 purposes:
3371 1. They ensure that the wrapped function can never be called
3372 when Emacs is running on an operating system on which they are
3373 not supported (Microsoft Windows 95 / 98 / ME).
3374 2. They call the wrapped functions via function pointers rather
3375 than calling them directly. This avoids taking advantage of the
3376 undocumented fact that although these functions are not supported
3377 in the 9x branch of Microsoft Windows, the functions do exist in
3378 the version of advapi32.dll that is found in the 9x branch of
3379 Microsoft Windows.
3380
3381 * w32.c (init_user_info): Replace the calls to the win32 API
3382 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
3383 and GetSidIdentifierAuthority with calls to the newly added
3384 wrapper functions.
3385
3386 * w32.h: Added extern declarations for the following functions:
3387 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
3388 syms_of_w32menu, and void syms_of_fontset.
3389
3390 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
3391 function pointer track_mouse_event_fn in the handler for the
3392 WM_SETFOCUS message.
3393
3394 * w32menu.c (initialize_frame_menubar): Add code to
3395 reinitialize the function pointers set_menu_item_info and
3396 get_menu_item_info.
3397
33982002-11-17 Ben Key <BKey1@tampabay.rr.com>
3399
3400 * sound.c: Added a partial implementation of play-sound-internal
3401 for Microsoft Windows. Added various #ifdef / #else / #endif
3402 code blocks to separate the code that will compile under
3403 Microsoft Windows from the code that is specific to Gnu/Linux.
3404 Moved several blocks of code around to make this separation of code
3405 into Windows compatible and Gnu/Linux compatible code blocks easier.
3406
3407 * makefile.w32-in: Include sound.c and link with WinMM.lib.
3408
3409 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
3410 added support for play-sound-internal under Windows would be
3411 included in the build of Emacs.
3412
34132002-11-16 Jason Rumney <jasonr@gnu.org>
3414
3415 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
3416
3417 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
3418
34192002-11-15 Stefan Monnier <monnier@cs.yale.edu>
3420
3421 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
3422 (adjust_point_for_property): Move out of display and invisible even if
3423 we were already inside before (in case a property was added while
3424 we weren't looking). Be more careful when handling invisible props.
3425 Skip invisible text as if it really wasn't there at all.
3426
34272002-11-15 Jason Rumney <jasonr@gnu.org>
3428
3429 * w32term.c (x_draw_image_foreground)
3430 (w32_draw_image_foreground_1): Use standard copy and invert
3431 operations to draw images.
3432
3433 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
3434 depth of 1.
3435 (xbm_read_bitmap_data): Invert bits as xbm is read in.
3436 (XPutPixel): Don't invert bits here.
3437
34382002-11-15 Jason Rumney <jasonr@gnu.org>
3439
3440 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
3441 (w32_draw_image_foreground_1): Handle image masks.
3442 (x_draw_image_glyph_string): Don't BitBlt transparently.
3443
3444 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
3445 (x_from_xcolors): Adjust RGB values for W32.
3446 (image_background, image_background_transparent)
3447 (postprocess_image, x_to_xcolors, x_disable_image)
3448 (x_build_heuristic_mask): Adapt for W32 and enable.
3449 (x_create_x_image_and_pixmap): Mark images with palettes as such.
3450 (xbm_load): Remove unused variable.
3451
34522002-11-14 Richard M. Stallman <rms@gnu.org>
3453
3454 * buffer.c (syms_of_buffer): Doc fix.
3455
34562002-11-14 Dave Love <fx@gnu.org>
3457
3458 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
3459
3460 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
3461 * xmenu.c (unuse_menu_items, digest_single_submenu):
3462 * xfns.c (x_put_x_image):
3463 * xdisp.c (message2_nolog, set_message):
3464 * undo.c (record_point):
3465 * terminfo.c (tparam):
3466 * syntax.c (scan_sexps_forward):
3467 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
3468 * composite.c (update_compositions):
3469 * cm.c (calccost, cmgoto):
3470 * charset.c (c_string_width): Declare all args (per C99).
3471
3472 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
3473
3474 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
3475 Don't declare.
3476
3477 * emacs.c (main) [!VMS]: Avoid third arg.
3478
3479 * fns.c (Fcopy_sequence): Doc fix.
3480 (Fmap_char_table): Cast `call2'.
3481
34822002-11-14 Francesco Potorti` <pot@gnu.org>
3483
3484 * s/sol2-8.h: New file.
3485
34862002-11-14 Kim F. Storm <storm@cua.dk>
3487
3488 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
3489 dependency on `risky-local-variable' and the :propertize form.
3490
34912002-11-12 Stefan Monnier <monnier@cs.yale.edu>
3492
3493 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
3494
3495 * syntax.c (scan_sexps_forward): Undo last patch.
3496 Use a more obvious fix: check eob before updating the syntax table.
3497
34982002-11-09 Stefan Monnier <monnier@cs.yale.edu>
3499
3500 * syntax.c (scan_sexps_forward): Update syntax table before reading
3501 a char rather than after so we don't update the table past eob.
3502
35032002-11-09 Dave Love <fx@gnu.org>
3504
3505 * buffer.c (Fset_buffer_major_mode): Fix last change.
3506
3507 * regex.c (regexec): Fix pmatch declaration.
3508
3509 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
3510
3511 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
3512 to self-inserting characters.
3513 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
3514
3515 * coding.c (Vtranslation_table_for_input): New.
3516 (syms_of_coding): DEFVAR it.
3517
35182002-11-08 Juanma Barranquero <lektu@terra.es>
3519
3520 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
3521 window.
3522
35232002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3524
3525 * process.c (Fformat_network_address): Remove unused locals p,
3526 cp, and i.
3527
35282002-11-06 Dave Love <fx@gnu.org>
3529
3530 * buffer.c (Qset_buffer_major_mode_hook): New.
3531 (Fset_buffer_major_mode): Use it.
3532
35332002-11-06 Richard M. Stallman <rms@gnu.org>
3534
3535 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
3536 and stop_polling.
3537
3538 * process.c (wait_reading_process_input):
3539 Test POLLING_PROBLEM_IN_SELECT, not hpux.
3540 Avoid initialization for auto Lisp_Object var.
3541
3542 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
3543
3544 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
3545
35462002-11-05 Richard M. Stallman <rms@gnu.org>
3547
3548 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
3549
3550 * callint.c (Fcall_interactively): New local filter_specs.
3551 (Fcall_interactively): Check for progn as well as let.
3552 Add a gcpro.
3553 (Qprogn): New variable.
3554 (syms_of_callint): Staticpro and init Qprogn.
3555
35562002-11-04 John Paul Wallington <jpw@shootybangbang.com>
3557
3558 * lread.c (Feval_buffer): Doc fix.
3559
35602002-11-04 Dave Love <fx@gnu.org>
3561
3562 * keyboard.c (read_char): Always translate iff
3563 Vkeyboard_translate_table is a char table and c is valid.
3564
3565 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
3566 and fix C types.
3567
35682002-11-03 Stefan Monnier <monnier@cs.yale.edu>
3569
3570 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
3571
3572 * editfns.c (get_pos_property): Don't hardcode Qfield.
3573
3574 * keyboard.c (adjust_point_for_property): Handle `display' prop on
3575 overlays. Also handle `invisible' prop.
3576
35772002-11-02 Stefan Monnier <monnier@cs.yale.edu>
3578
3579 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
3580 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
3581
35822002-11-01 Andreas Schwab <schwab@suse.de>
3583
3584 * editfns.c (Fmessage): Revert last change to properly handle %%.
3585
35862002-11-01 Stefan Monnier <monnier@cs.yale.edu>
3587
3588 * xmenu.c (unuse_menu_items): New fun.
3589 (menu_items_inuse): New var.
3590 (syms_of_xmenu): Initialize it.
3591 (init_menu_items): Use it to detect re-entrance.
3592 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
3593 (Fx_popup_menu): Remove spurious XSETFRAME.
3594
3595 * editfns.c (find_field): Make an exception for nil fields.
3596
35972002-11-01 Dave Love <fx@gnu.org>
3598
3599 * m/gec63.h: Deleted.
3600
36012002-10-31 Dave Love <fx@gnu.org>
3602
3603 * xterm.c (XTread_socket): Fix last change.
3604 (xaw_scroll_callback): Cast call_data to long to avoid warning.
3605
36062002-10-31 Stefan Monnier <monnier@cs.yale.edu>
3607
3608 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
3609
36102002-10-30 Stefan Monnier <monnier@cs.yale.edu>
3611
3612 * editfns.c (overlays_around, get_pos_property): New funs.
3613 (find_field): Use them.
3614 Also be careful not to modify POS before its last use.
3615 (Fmessage): Don't Fformat if there's nothing to format.
3616
36172002-10-30 Dave Love <fx@gnu.org>
3618
3619 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
3620 [HAVE_PTY_H]; Include pty.h.
3621
3622 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
3623
3624 * xterm.c (Qeql): Declare.
3625 (Vx_keysym_table): New.
3626 (syms_of_xterm): Initialize it.
3627 (XTread_socket): Use it. Deal with ASCII keysyms.
3628 (XSetIMValues) [HAVE_X11R6]: Prototype.
3629
3630 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
3631 (lispy_kana_keys): Comment out.
3632 (make_lispy_event) [XK_kana_A]: Comment out.
3633 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
3634 Fix sprintf call.
3635
3636 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
3637 regexp.h change).
3638 (TERMINFO, LIBS_TERMCAP): Define.
3639
3640 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
3641 (bcmp): Define conditional on HAVE_BCMP.
3642 (NO_SIOCTL_H): Don't define.
3643 (TIOCSIGSEND): Don't make conditional on IRIX6.
3644
3645 * s/sol2-5.h: Don't include strings.h.
3646 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
3647
3648 * s/irix6-0.h (IRIX6): Don't define.
3649 (bcopy, bcmp, bzero): Don't undef.
3650
3651 * s/irix6-5.h: Don't include strings.h.
3652 (IRIX6): Don't define.
3653 (bcopy, bcmp, bzero): Don't undef.
3654
3655 * syntax.c (Fforward_comment): Doc fix.
3656
36572002-10-29 Kim F. Storm <storm@cua.dk>
3658
3659 * process.c (Fsignal_process): Allow PROCESS to be specified by
3660 name in addition to pid (as integer or string).
3661
36622002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
3663
3664 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
3665 environments.
3666
36672002-10-27 Kim F. Storm <storm@cua.dk>
3668
3669 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
3670
3671 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
3672
3673 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
3674
3675 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
3676
36772002-10-26 Richard M. Stallman <rms@gnu.org>
3678
3679 * editfns.c (Fformat): Detect invalid format letters for floats.
3680
36812002-10-25 Kenichi Handa <handa@m17n.org>
3682
3683 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
3684 (x_set_title): Likewise.
3685
36862002-10-25 Juanma Barranquero <lektu@terra.es>
3687
3688 * macgui.h:
3689 * w32gui.h: Remove definition of XColor.
3690
3691 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
3692
36932002-10-24 Kim F. Storm <storm@cua.dk>
3694
3695 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
3696 Callers changed (supply dummy arg).
3697
3698 * lisp.h (get_window_cursor_type): Update prototype.
3699
3700 * w32term.c (x_display_and_set_cursor): Get active_cursor from
3701 get_window_cursor_type to track system caret.
3702
37032002-10-24 Kim F. Storm <storm@cua.dk>
3704
3705 * process.c (Fformat_network_address): New function.
3706 (syms_of_process): Defsubr it.
3707 (list_processes_1): Use it to format :local/:remote address if
3708 service/host is not set; before emacs would crash in that case.
3709 (Fmake_network_process): Don't use Ffind_operation_coding_system
3710 to setup coding system if host or service is not set.
3711
37122002-10-23 Juanma Barranquero <lektu@terra.es>
3713
3714 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
3715
3716 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
3717 COLORREF.
3718
3719 * macgui.h:
3720 * w32gui.h: Add definition of XColor.
3721
3722 * macfns.c:
3723 * w32fns.c:
3724 * xfaces.c: Remove definition of XColor.
3725
37262002-10-22 Stefan Monnier <monnier@cs.yale.edu>
3727
3728 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
3729
3730 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
3731 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
3732 window if it is dedicated.
3733 (Fshrink_window): Add preserve_before as was done for enlarge_window.
3734 (Vspecial_display_function): Update docstring.
3735
3736 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
3737 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
3738 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
3739
37402002-10-21 Stefan Monnier <monnier@cs.yale.edu>
3741
3742 * casefiddle.c (casify_region): Don't treat a prefix char as part
3743 of a word when at the beginning.
3744
37452002-10-17 Juanma Barranquero <lektu@terra.es>
3746
3747 * lread.c (syms_of_lread): Fix typos.
3748
37492002-10-17 Dave Love <fx@gnu.org>
3750
3751 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
3752
37532002-10-16 Richard M. Stallman <rms@gnu.org>
3754
3755 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
3756
37572002-10-14 Juanma Barranquero <lektu@terra.es>
3758
3759 * w16select.c (syms_of_win16select): Fix docstring for
3760 `selection-coding-system'.
3761
3762 * w32select.c (syms_of_w32select): Likewise.
3763
37642002-10-14 Stefan Monnier <monnier@cs.yale.edu>
3765
3766 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
3767 a backslash-quoted char.
3768 (scan_lists, scan_sexps_forward): Pacify the compiler.
3769
37702002-10-13 Richard M. Stallman <rms@gnu.org>
3771
3772 * window.c (window_scroll): Set immediate_quit.
3773
3774 * print.c (print): When backquote form is the car of a list,
3775 output in old style. Use old_backquote_output to output all
3776 comma forms inside it in old style too.
3777
3778 * buffer.h (struct buffer): Move `undo_list' down below `name'.
3779
37802002-10-11 Markus Rost <rost@math.ohio-state.edu>
3781
3782 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
3783 batch mode).
3784
3785 * lread.c (Fload): Doc fix (load-suffixes).
3786
37872002-10-10 Steven Tamm <steventamm@mac.com>
3788
3789 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
3790 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
3791 Also switch the default to Qnil from Qt.
3792
37932002-10-08 Kenichi Handa <handa@m17n.org>
3794
3795 * coding.c (code_convert_region): When we need more GAP for
3796 conversion, pay attention to the case that coding->produced is not
3797 greater than coding->consumed.
3798
37992002-10-07 Richard M. Stallman <rms@gnu.org>
3800
3801 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
3802
38032002-10-06 Andrew Choi <akochoi@shaw.ca>
3804
3805 * macmenu.c (mac_menu_show): Add j to count menu items; match
3806 menu_item_selection to it to find selected item.
3807
38082002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3809
3810 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
3811 cases. The correct fix is to pass ReparentNotify to Xt.
3812 The shell widget interprets ConfigureNotify differently depending
3813 on if it has been reparented or not.
3814
38152002-10-05 Markus Rost <rost@math.ohio-state.edu>
3816
3817 * editfns.c (Fformat_time_string): Doc fix.
3818
38192002-10-05 John Paul Wallington <jpw@shootybangbang.com>
3820
3821 * fns.c (Flength): Doc fix.
3822
38232002-10-04 Stefan Monnier <monnier@cs.yale.edu>
3824
3825 * keyboard.c (keyremap): New struct.
3826 (read_key_sequence): Use it: globally replace keytran_foo with
3827 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
3828 keytran_next and fkey_next to just `next'.
3829
38302002-10-04 Steven Tamm <steventamm@mac.com>
3831
3832 * macterm.c (keycode_to_xkeysym_table): Change return to be
3833 treated like an X keysym.
3834
38352002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3836
3837 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
3838 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
3839 This is to also handle x/y changes that occur because of a resize.
3840
38412002-10-02 John Paul Wallington <jpw@shootybangbang.com>
3842
3843 * frame.c (Vdelete_frame_functions): New variable.
3844 (syms_of_frame): Initialize and defvar it.
3845 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
3846 it when frame's `tooltip' parameter is non-nil.
3847
3848 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
3849
3850 * w32fns.c (x_create_tip_frame): Likewise.
3851
3852 * macfns.c (x_create_tip_frame): Likewise.
3853
38542002-09-30 Kenichi Handa <handa@m17n.org>
3855
3856 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
3857 -1 before calling ccl_driver.
3858
3859 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
3860 Only when it is non-nil, handle composition sequence.
3861 (setup_coding_system) <0>: Don't force composition handling.
3862
3863 * Makefile.in (lisp, shortlisp): Add utf-16.elc
3864
38652002-09-29 Richard M. Stallman <rms@gnu.org>
3866
3867 * search.c (Freplace_match): Adjust match data for the substitution
3868 just made in the buffer.
3869
3870 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
3871 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
3872
38732002-09-27 Richard M. Stallman <rms@gnu.org>
3874
3875 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
3876 (read_char): Use them. Do all exits thru the end of the function.
3877
38782002-09-27 Kenichi Handa <handa@etl.go.jp>
3879
3880 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
3881 is nil.
3882
38832002-09-26 Richard M. Stallman <rms@gnu.org>
3884
3885 * regex.h (__restrict_arr): Don't define if already defined.
3886
3887 * coding.c (run_pre_post_conversion_on_str):
3888 Save and restore Vdeactivate_mark.
3889
38902002-09-26 John Paul Wallington <jpw@shootybangbang.com>
3891
3892 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
3893
38942002-09-26 Kenichi Handa <handa@etl.go.jp>
3895
3896 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
3897 nonzero, try face's family at first. Otherwise try FAMILY at first.
3898 (choose_face_font): If C is a single byte char or latin-1, call
3899 try_font_list with PREFER_FACE_FAMILY 1.
3900
39012002-09-21 Richard M. Stallman <rms@gnu.org>
3902
3903 * window.c (select_window_1): Don't select frame.
3904 Set frame's selected window only when frame itself is selected.
3905 (Fselect_window): Doc fix.
3906
39072002-09-18 Kim F. Storm <storm@cua.dk>
3908
3909 * process.c (make-network-process): Doc fix (there is no
3910 network-server-log-function hook).
3911
39122002-09-18 Richard M. Stallman <rms@gnu.org>
3913
3914 * print.c (print): Clear out the unused parts of Vprint_number_table.
3915 (syms_of_print): Doc fix for `print-number-table'.
3916
3917 * unexelf.c (unexec): Undo previous change.
3918
39192002-09-17 Andreas Schwab <schwab@suse.de>
3920
3921 * m/alpha.h [LINUX]: Don't define DATA_START.
3922
39232002-09-16 Dave Love <fx@gnu.org>
3924
3925 * unexelf.c (unexec): Deal with .got, reinstating change from
3926 25-08-1999.
3927
39282002-09-13 Richard M. Stallman <rms@gnu.org>
3929
3930 * s/sol2-6.h (UNEXEC): Comment out definition.
3931
3932 * unexsol.c (unexec): Don't downcase first letter of error msg.
3933
3934 * xfaces.c (Fcolor_supported_p): Just one arg is required.
3935
39362002-09-12 Markus Rost <rost@math.ohio-state.edu>
3937
3938 * unexsol.c: Include buffer.h, charset.h, coding.h.
3939
39402002-09-11 Richard M. Stallman <rms@gnu.org>
3941
3942 * unexsol.c: Don't use report_file_error; do it by hand
3943 using dlerror.
3944
3945 * process.c (wait_reading_process_input, both versions):
3946 Before calling turn_on_atimers, call stop_polling.
3947
3948 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
3949
3950 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
3951 we go to too_near_end, call clear_glyph_matrix.
3952 (redisplay_window): After make_cursor_line_fully_visible,
3953 call clear_glyph_matrix and bypass `goto done'.
3954
3955 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
3956 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
3957
39582002-09-10 Richard M. Stallman <rms@gnu.org>
3959
3960 * fileio.c (Fdo_auto_save): Catch error making directory.
3961 Only call push_message if we need to.
3962 At the same time, make an unwind-protect to pop it.
3963 Rename local message_p to old_message_p.
3964 (do_auto_save_make_dir, do_auto_save_eh): New functions.
3965 (do_auto_save_unwind): Don't call pop_message.
3966
3967 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
3968
3969 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
3970
3971 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
3972
3973 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
3974
39752002-09-10 Stefan Monnier <monnier@cs.yale.edu>
3976
3977 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
3978 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
3979 (re_match_2_internal): Be more careful with infinite loops.
3980
39812002-09-10 Kim F. Storm <storm@cua.dk>
3982
3983 * macros.c (end_kbd_macro): New function.
3984 (Fend_kbd_macro): Use it.
3985
3986 * macros.h (end_kbd_macro): Declare extern.
3987
3988 * keyboard.c (Fdiscard_input): If defining keyboard macro,
3989 end and save it instead of discarding it.
3990
39912002-09-09 Markus Rost <rost@math.ohio-state.edu>
3992
3993 * s/sol2-6.h: Fix typo. Add comment.
3994
39952002-09-09 Richard M. Stallman <rms@gnu.org>
3996
3997 * regex.c (regnum_t): Use signed int, not unsigned int.
3998
3999 * s/sol2-6.h: New file.
4000
4001 * s/sol2-5.h (UNEXEC): Definition deleted.
4002
40032002-09-08 Kim F. Storm <storm@cua.dk>
4004
4005 * macros.c (executing_macro_index): Change type to EMACS_INT.
4006 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
4007
4008 * macros.h (executing_macro_index): Change type to EMACS_INT.
4009
40102002-09-06 Richard M. Stallman <rms@gnu.org>
4011
4012 * casetab.c (set_case_table): Make canon table point to eqv table.
4013
40142002-09-06 Juanma Barranquero <lektu@terra.es>
4015
4016 * coding.c (syms_of_coding): Fix spacing.
4017
4018 * composite.c (Fcompose_region_internal)
4019 (Fcompose_string_internal): Likewise.
4020
4021 * data.c (Flsh): Likewise.
4022
4023 * fontset.c (Fset_fontset_font): Likewise.
4024
4025 * macfns.c (Fx_server_max_request_size): Likewise.
4026
4027 * w16select.c (syms_of_win16select): Likewise.
4028
4029 * w32select.c (syms_of_w32select): Likewise.
4030
4031 * xselect.c (syms_of_xselect): Likewise.
4032
40332002-09-05 Richard M. Stallman <rms@gnu.org>
4034
4035 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
4036 call EXTEND_RANGE_TABLE and return a proper value.
4037 (set_image_of_range): Don't call set_image_of_range_1
4038 if no TRANSLATE or if range includes all of Latin-1.
4039 Only call it for the Latin-1 part of the range.
4040 For other cases, make two separate ranges,
4041 one for the original specified characters and one for
4042 their case-conversions.
4043
40442002-09-04 Richard M. Stallman <rms@gnu.org>
4045
4046 * s/sol2-5.h (UNEXEC): Use unexsol.o.
4047
4048 * window.c (displayed_window_lines): Correct for one-off bug
4049 in HEIGHT on non-window displays.
4050
4051 * regex.c (set_image_of_range_1): New function.
4052 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
4053 Return a value to indicate running out of memory.
4054 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
4055 (extend_range_table_work_area): New subroutine.
4056 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
4057 Different calling conventions, and used from set_image_of_range{,_1}.
4058 (IMMEDIATE_QUIT_CHECK): Definitions moved.
4059
40602002-09-04 Juanma Barranquero <lektu@terra.es>
4061
4062 * makefile.w32-in: All dependencies updated.
4063
40642002-09-01 Richard M. Stallman <rms@gnu.org>
4065
4066 * unexsol.c: New file.
4067
4068 * xfns.c (Qbox): Declare external, don't define.
4069
4070 * xdisp.c (redisplay_window) <force-start case>:
4071 If point is on semi-visible last line, reposition
4072 it at previous line.
4073
4074 * alloc.c (display_malloc_warning): Use display-warning.
4075 (malloc_warning_1): Function deleted.
4076
4077 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
4078
4079 * lread.c (read1): Handle #! by skipping the line.
4080
40812002-08-31 Richard M. Stallman <rms@gnu.org>
4082
4083 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
4084 Don't include LDFLAGS.
4085 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
4086
40872002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
4088
4089 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
4090 member of x_display_info unless we compile for some window system.
4091
40922002-08-31 Kim F. Storm <storm@cua.dk>
4093
4094 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
4095 (get_window_cursor_type): Don't use them.
4096 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
4097
40982002-08-30 Kenichi Handa <handa@etl.go.jp>
4099
4100 * xdisp.c (get_next_display_element): Fix previous change.
4101
41022002-08-30 Andrew Choi <akochoi@shaw.ca>
4103
4104 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
4105 (expose_window): Use it to fix the display of overlapping
4106 rows (merge code from xterm.c).
4107
4108 * macfns.c (Qbox): Add extern declaration.
4109
41102002-08-30 Juanma Barranquero <lektu@terra.es>
4111
4112 * w32fns.c (Qbox): Make extern.
4113 (syms_of_w32fns): Remove initialization of Qbox.
4114
41152002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
4116
4117 * xfns.c (Fx_open_connection): Fix error message.
4118
41192002-08-30 Kim F. Storm <storm@cua.dk>
4120
4121 The following changes consolidates the handling of the cursor
4122 type in xdisp.c, moving duplicate code and functionality from
4123 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
4124
4125 * frame.h (enum text_cursor_kinds): Consolidated here.
4126 Added DEFAULT_CURSOR value.
4127 (struct frame) <desired_cursor, cursor_width>
4128 <blink_off_cursor, blink_off_cursor_width>: New fields.
4129 Consolidated from output_x, output_w32 and output_mac structs.
4130 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
4131 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
4132
4133 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
4134 Variables consolidated here.
4135 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
4136 (Vcursor_in_non_selected_windows): Renamed from
4137 cursor_in_non_selected_windows and changed to Lisp_Object.
4138 (syms_of_xdisp): Define and staticpro new and moved variables.
4139 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
4140 consolidated here. Recognize Qhollow setting.
4141 (set_frame_cursor_types): New function to set frame cursor types
4142 based on the frame parameters.
4143 (get_window_cursor_type): New function to calculate new cursor
4144 type and width for the specified window. Based on duplicated
4145 code consolidated here.
4146 Enhancements: cursor-in-non-selected-windows may be a cursor type,
4147 check buffer-local alternate-cursor-type and blink-cursor-alist
4148 before using built-in blink off methods.
4149
4150 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
4151
4152 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
4153 (get_specified_cursor_type, get_window_cursor_type)
4154 (set_frame_cursor_types): Added prototypes.
4155
4156 * macfns.c (x_specified_cursor_type): Removed.
4157 (x_set_cursor_type): Use set_frame_cursor_types.
4158 (Qbar, Qbox): Removed.
4159 (syms_of_macfns): Don't intern or staticpro them.
4160
4161 * macterm.c (x_specified_cursor_type): Remove prototype.
4162 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
4163 (x_display_and_set_cursor): Use get_window_cursor_type.
4164 Remove unused local variables cursor_non_selected, active_cursor.
4165 Redraw cursor if hbar cursor width changes.
4166 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
4167
4168 * macterm.h (enum text_cursor_kinds): Removed.
4169 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
4170 <blink_off_cursor, blink_off_cursor_width>: Members removed.
4171 (FRAME_DESIRED_CURSOR): Macro removed.
4172
4173 * w32fns.c (Vblink_cursor_alist): Removed.
4174 (Qbar, Qhbar, Qbox, Qhollow): Removed.
4175 (syms_of_w32fns): Don't intern, staticpro, or define them.
4176 (x_specified_cursor_type): Removed.
4177 (x_set_cursor_type): Use set_frame_cursor_types.
4178
4179 * w32term.c (x_specified_cursor_type): Remove prototype.
4180 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
4181 (x_display_and_set_cursor): Use get_window_cursor_type.
4182 Remove unused local variables cursor_off_state.
4183 Redraw cursor if hbar cursor width changes.
4184 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
4185
4186 * w32term.h (enum text_cursor_kinds): Removed.
4187 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
4188 <blink_off_cursor, blink_off_cursor_width>: Members removed.
4189 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
4190 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
4191 (struct w32_display_info) <x_highlight_frame>: Renamed member from
4192 w32_highlight_frame.
4193
4194 * xfns.c (Vblink_cursor_alist): Removed.
4195 (Qbar, Qhbar, Qbox, Qhollow): Removed.
4196 (syms_of_xfns): Don't intern, staticpro, or define them.
4197 (x_specified_cursor_type): Removed.
4198 (x_set_cursor_type): Use set_frame_cursor_types.
4199
4200 * xterm.c (x_specified_cursor_type): Remove prototype.
4201 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
4202 (x_display_and_set_cursor): Use get_window_cursor_type.
4203 Remove unused local variables cursor_off_state.
4204 Redraw cursor if hbar cursor width changes.
4205
4206 * xterm.h (enum text_cursor_kinds): Removed.
4207 (struct output_x) <current_cursor, desired_cursor, cursor_width>
4208 <blink_off_cursor, blink_off_cursor_width>: Members removed.
4209 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
4210 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
4211 (x_specified_cursor_type): Remove prototype.
4212
42132002-08-28 Richard M. Stallman <rms@gnu.org>
4214
4215 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
4216 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
4217 (Vblink_cursor_alist): New variable.
4218 (syms_of_w32fns): Initialize and defvar it.
4219 (x_specified_cursor_type): Recognize Qbox for filled box.
4220 Exceptions are hollow boxes.
4221 (Qbox, Qhollow): New variables.
4222 (syms_of_w32fns): Initialize and staticpro them.
4223
4224 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
4225 New macros.
4226 (struct w32_output): New fields blink_off_cursor,
4227 blink_off_cursor_width.
4228 (FRAME_CURSOR_WIDTH): New macro.
4229
4230 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
4231 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
4232
4233 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
4234 for bar cursor.
4235
4236 * w32term.c (expose_overlaps): New function.
4237 (expose_window): Use it to fix the display of overlapping rows.
4238
42392002-08-28 Simon Josefsson <jas@extundo.com>
4240
4241 * xfns.c (Fx_open_connection): Improve help when X connection
4242 fails, xhost is insecure and xauth is better.
4243
42442002-08-28 Juanma Barranquero <lektu@terra.es>
4245
4246 * makefile.w32-in: Add missing dependencies on w32term.h and
4247 composite.h.
4248
4249 * emacs.c (USAGE1): Add missing newline.
4250
42512002-08-27 Andrew Choi <akochoi@shaw.ca>
4252
4253 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
4254
42552002-08-27 Richard M. Stallman <rms@gnu.org>
4256
4257 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
4258 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
4259 (Vblink_cursor_alist): New variable.
4260 (syms_of_xfns): Initialize and defvar it.
4261 (x_specified_cursor_type): Recognize Qbox for filled box.
4262 Exceptions are hollow boxes.
4263 (Qbox, Qhollow): New variables.
4264 (syms_of_xfns): Initialize and staticpro them.
4265
4266 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
4267 New macros.
4268 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
4269
4270 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
4271 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
4272
4273 * emacs.c (main): Handle --script.
4274 (USAGE1): Mention --script.
4275 (standard_args): Define sort order for --script.
4276
42772002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
4278
4279 * xdisp.c (redisplay_updating_p): Variable removed.
4280 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
4281 New variables.
4282 (init_iterator): Don't free realized faces if
4283 inhibit_free_realized_faces is set.
4284 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
4285 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
4286 initialize Qinhibit_free_realized_faces.
4287
4288 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
4289 when iterator is adding glyphs to a glyph matrix.
4290
42912002-08-27 Kenichi Handa <handa@etl.go.jp>
4292
4293 * xdisp.c (get_next_display_element): In unibyte case, don't use
4294 octal form for such eight-bit characters that can be converted to
4295 multibyte char.
4296
42972002-08-26 Kim F. Storm <storm@cua.dk>
4298
4299 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
4300 and background colors. From Joe Buehler (tiny change).
4301
43022002-08-26 Miles Bader <miles@gnu.org>
4303
4304 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
4305
43062002-08-25 Andrew Choi <akochoi@shaw.ca>
4307
4308 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
4309 defined instead of MAC_OSX.
4310
4311 * s/darwin.h (select): Define select to sys_select only if
4312 HAVE_CARBON is defined.
4313 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
4314 (DONT_REOPEN_PTY): #def it.
4315
4316 * macterm.c (XTread_socket): Remove code to call
4317 SendEventToEventTarget for keys with command modifiers when
4318 mac_command_key_is_meta is nil.
4319
43202002-08-24 Andreas Schwab <schwab@suse.de>
4321
4322 * eval.c (Fdefvar): Fix last change.
4323
43242002-08-23 Richard M. Stallman <rms@gnu.org>
4325
4326 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
4327 Record variables in load history as (defvar . VAR).
4328 (Fdefvar): Don't record in load history if no initial value.
4329 (Qdefvar): New variable.
4330 (syms_of_eval): Init and staticpro it.
4331
4332 * lread.c (syms_of_lread): Doc fix.
4333 (build_load_history): Use Fmember to see if a definition
4334 is already in the Vload_history element.
4335
4336 * process.c (Fstart_process): Remove /: from program name.
4337
4338 * emacs.c (decode_env_path): Don't add /: if file name handler
4339 has a `safe-magic' property.
4340
4341 * callproc.c (Fcall_process): Remove /: from program name.
4342
43432002-08-23 Stefan Monnier <monnier@cs.yale.edu>
4344
4345 * regex.c (PATFETCH): Remove the translating fetch.
4346 (PATFETCH_RAW): Rename to PATFETCH.
4347 (set_image_of_range): New fun.
4348 (SET_RANGE_TABLE_WORK_AREA): Use it.
4349 (regex_compile): Don't translate the pattern chars so eagerly.
4350 Only do it when inserting an `exactn' bytecode or when handling
4351 a char-range.
4352 (mutually_exclusive_p): Avoid empty statement.
4353
43542002-08-22 Kim F. Storm <storm@cua.dk>
4355
4356 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
4357 end up on a partially visible line; this reverts a specific part
4358 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
4359 display error which has been reported several times now.
4360 However it introduces the problem that changes was supposed to fix.
4361 See my comments in the source if you want to debug this further.
4362
43632002-08-20 Kenichi Handa <handa@etl.go.jp>
4364
4365 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
4366
43672002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
4368
4369 * msdos.c (croak): Add `void' to definition.
4370
4371 * sysdep.c [MSDOS] (request_sigio, unrequest_sigio):
4372 Don't define them, they are defined in msdos.c.
4373
4374 * mem-limits.h [MSDOS]: Declare etext.
4375
4376 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
4377 `const' since CORRECT_DIR_SEPS modifies its target.
4378
43792002-08-19 Kim F. Storm <storm@cua.dk>
4380
4381 * keyboard.c (Fclear_this_command_keys): Added optional arg
4382 KEEP-RECORD to avoid clearing lossage when we just want to clear
4383 the current key sequence (kmacro needs this).
4384
43852002-08-19 Kenichi Handa <handa@localhost>
4386
4387 * composite.c (run_composition_function): Call FUNC if it is fboundp.
4388
4389 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
4390 cons, return Qnil.
4391
43922002-08-17 Richard M. Stallman <rms@gnu.org>
4393
4394 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
4395
4396 * sysdep.c [!VMS]: Include sys/files.h.
4397
4398 * editfns.c (save_restriction_restore): Defend from unchained marker.
4399
4400 * buffer.c (overlays_at): Handle extending vec uniformly.
4401 (overlays_in): Handle extending vec from length 0 as in overlays_at.
4402
44032002-08-15 Andrew Choi <akochoi@shaw.ca>
4404
4405 * mac.c (init_mac_osx_environment): New function.
4406
4407 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
4408
44092002-08-14 Kim F. Storm <storm@cua.dk>
4410
4411 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
4412 executing macro before appending to it (when used from Lisp).
4413 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
4414 which is called prior to each iteration of macro (for kmacro.el).
4415 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
4416
4417 * lisp.h (Fexecute_kbd_macro): Update prototype.
4418
4419 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
4420
44212002-08-14 Kenichi Handa <handa@etl.go.jp>
4422
4423 * xselect.c (QUTF8_STRING): New variable.
4424 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
4425 (x_atom_to_symbol): Likewise.
4426 (x_get_local_selection): New argument local_request. If it is
4427 nonzero, call handler_fn with the second arg nil.
4428 (x_handle_selection_request): Call x_get_local_selection with
4429 local_request 0.
4430 (lisp_data_to_selection_data): Don't encode the string here.
4431 (Fx_get_selection_internal): Call x_get_local_selection with
4432 local_request 1.
4433 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
4434
4435 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
4436
4437 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
4438
44392002-08-13 Richard M. Stallman <rms@gnu.org>
4440
4441 * minibuf.c (Fminibufferp): New function.
4442 (syms_of_minibuf): Defsubr it.
4443 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
4444
44452002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
4446
4447 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
4448
44492002-08-12 Richard M. Stallman <rms@gnu.org>
4450
4451 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
4452 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
4453 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
4454 already.
4455
4456 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
4457
44582002-08-11 Andrew Choi <akochoi@shaw.ca>
4459
4460 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
4461 (Vmac_pass_command_to_system): New variable.
4462 (Vmac_pass_control_to_system): New variable.
4463 (do_mouse_moved): Check wp with is_emacs_window.
4464 (XTread_socket): Check window_ptr with is_emacs_window.
4465 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
4466 events back to Mac Toolbox for processing, depending on values of
4467 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
4468 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
4469 Vmac_pass_control_to_system.
4470
44712002-08-10 Kenichi Handa <handa@etl.go.jp>
4472
4473 * coding.c (unencodable_char_position): New function.
4474 (Funencodable_char_position): New function.
4475 (syms_of_coding): Defsubr Funencodable_char_position.
4476
44772002-08-10 Andrew Choi <akochoi@shaw.ca>
4478
4479 * mac.c (sys_select) [MAC_OSX]: New function.
4480
4481 * macterm.c (MakeMeTheFrontProcess): New function.
4482 (mac_initialize): Call MakeMeTheFrontProcess.
4483
4484 * s/darwin.h: Define select to sys_select.
4485
44862002-08-09 Richard M. Stallman <rms@gnu.org>
4487
4488 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
4489
44902002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
4491
4492 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
4493 end of the buffer.
4494
44952002-08-08 Ken Raeburn <raeburn@mit.edu>
4496
4497 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
4498
4499 * puresize.h (BASE_PURESIZE): Increase to 910000.
4500
45012002-08-08 Kenichi Handa <handa@etl.go.jp>
4502
4503 * coding.c (Ffind_operation_coding_system): For write-region, if
4504 VISIT is a filename, make it the target.
4505
45062002-08-07 Richard M. Stallman <rms@gnu.org>
4507
4508 * alloc.c (mark_object): Detect long lists for debugging.
4509 (mark_object_loop_halt): New variable.
4510
4511 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
4512
4513 * data.c (Fmake_variable_frame_local): Doc fix.
4514
45152002-08-01 David Ponce <david@dponce.com>
4516
4517 * w32menu.c (local_heap, local_alloc, local_free): New macros.
4518 (malloc_widget_value, free_widget_value)
4519 (w32_free_submenu_strings): Use them.
4520
4521 (push_submenu_start, push_submenu_end, push_left_right_boundary)
4522 (push_menu_pane, push_menu_item, single_keymap_panes)
4523 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
4524 (single_submenu, set_frame_menubar)
4525 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
4526
4527 (Fx_popup_menu): Don't show pop up menu until preceding one is
4528 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
4529
4530 * w32menu.c: Changes adapted from xmenu.c
4531 (set_frame_menubar): First parse all submenus,
4532 then make widget_value trees from them.
4533 Don't allocate any widget_value objects
4534 until we are done with the parsing.
4535 (parse_single_submenu): New function.
4536 (digest_single_submenu): New function.
4537 (single_submenu): Function deleted, replaced by those two.
4538
45392002-08-04 Andrew Choi <akochoi@shaw.ca>
4540
4541 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
4542 returns a valid window pointer before proceeding for keyDown and
4543 autoKey events.
4544
45452002-08-03 Andrew Choi <akochoi@shaw.ca>
4546
4547 * macterm.c (USE_CARBON_EVENTS): New macro.
4548 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
4549 (x_iconify_frame): Call CollapseWindow.
4550 (Vmac_reverse_ctrl_meta): New variable.
4551 (Vmac_wheel_button_is_mouse_2): New variable.
4552 (init_mac_drag_n_drop): New function.
4553 (mac_do_receive_drag): New function.
4554 (mac_handle_service_event): New function.
4555 (init_service_handler): New function.
4556 (mac_to_emacs_modifiers): New function.
4557 (mac_event_to_emacs_modifiers): New function.
4558 (mac_get_mouse_btn): New function.
4559 (mac_convert_event_ref): New function.
4560 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
4561 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
4562 mac_get_mouse_btn.
4563 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
4564
4565 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
4566 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
4567 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
4568 TOOL_BAR_EVENT for MAC_OS as well.
4569 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
4570 as for WINDOWS_NT.
4571 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
4572
4573 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
4574
45752002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
4576
4577 * xdisp.c (forward_to_next_line_start): Fix a condition that
4578 lead to a newline being skipped.
4579
45802002-08-02 Andrew Choi <akochoi@shaw.ca>
4581
4582 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
4583
45842002-08-01 Richard M. Stallman <rms@gnu.org>
4585
4586 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
4587
45882002-07-31 Andrew Choi <akochoi@shaw.ca>
4589
4590 * macfns.c: #undef init_process before #define-ing it.
4591
4592 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
4593 HAVE_CARBON is defined.
4594
45952002-07-31 Richard M. Stallman <rms@gnu.org>
4596
4597 * xmenu.c (set_frame_menubar): First parse all submenus,
4598 then make widget_value trees from them.
4599 Don't allocate any widget_value objects
4600 until we are done with the parsing.
4601 (parse_single_submenu): New function.
4602 (digest_single_submenu): New function.
4603 (single_submenu): Function deleted, replaced by those two.
4604
46052002-07-30 Juanma Barranquero <lektu@terra.es>
4606
4607 * w32proc.c (syms_of_ntproc): Fix docstring of
4608 `w32-get-true-file-attributes'.
4609
46102002-07-28 Richard M. Stallman <rms@gnu.org>
4611
4612 * s/hpux8.h (HPUX8): Define this before including hpux.h.
4613 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
4614
4615 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
4616
4617 * keyboard.c (make_lispy_event):
4618 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
4619 Explicitly clear up_modifier in event->modifiers.
4620
46212002-07-27 Richard M. Stallman <rms@gnu.org>
4622
4623 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
4624
4625 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
4626 for bar cursor.
4627
46282002-07-26 Kenichi Handa <handa@etl.go.jp>
4629
4630 * coding.c (detect_coding_iso2022): While checking a byte sequence
4631 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
4632 it in the normal loop.
4633
46342002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
4635
4636 * xterm.c (expose_overlaps): New function.
4637 (expose_window): Use it to fix the display of overlapping rows.
4638
4639 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
4640
46412002-07-23 Ken Raeburn <raeburn@gnu.org>
4642
4643 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
4644 since it only depends on XUINT.
4645
4646 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
4647 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
4648 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
4649 Macros deleted.
4650
4651 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
4652 its value over other approaches.
4653 * sysdep.c (start_of_data): Don't define the function if a macro
4654 form has been defined.
4655
46562002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
4657
4658 * xdisp.c (redisplay_updating_p): New variable.
4659 (init_iterator): Don't free realized faces when
4660 redisplay_updating_p is set.
4661 (redisplay_internal): Set redisplay_updating_p while updating
4662 the display.
4663
46642002-07-23 Richard M. Stallman <rms@gnu.org>
4665
4666 * editfns.c (Fmessage): Treat "" like nil.
4667
46682002-07-23 Kenichi Handa <handa@etl.go.jp>
4669
4670 * xdisp.c (face_before_or_after_it_pos):
4671 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
4672
46732002-07-22 Juanma Barranquero <lektu@terra.es>
4674
4675 * callproc.c (init_callproc) [DOS_NT]:
4676 Initialize Vshared_game_score_directory to nil.
4677 (syms_of_callproc) [DOS_NT]: Likewise.
4678
46792002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
4680
4681 * xdisp.c (display_line): Replace an abort with xassert.
4682
46832002-07-21 Richard M. Stallman <rms@gnu.org>
4684
4685 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
4686 and END_UNCHANGED when setting buffer_unchanged_p.
4687 Use current_matrix_up_to_date_p to decide whether to use
4688 try_cursor_movement.
4689
4690 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
4691
4692 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
4693
4694 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
4695 Set to nil if dir does not exist.
4696 (syms_of_callproc): Init unconditionally and simply.
4697
4698 * buffer.c (Fbuffer_list): Doc fix.
4699
47002002-07-21 Ken Raeburn <raeburn@gnu.org>
4701
4702 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
4703
4704 * buffer.c (mmap_realloc): When shrinking, make sure number of
4705 pages to unmap is rounded towards zero.
4706
4707 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
4708 (XSETINT): Deleted.
4709
4710 * m/att3b.h (XINT): Don't define.
4711 (VALBITS, VALMASK, XTYPE): Deleted.
4712 (DATA_SEG_BITS): Define.
4713 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
4714 ARRAY_MARK_FLAG): Deleted.
4715 (DATA_SEG_BITS): Define.
4716 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
4717 (DATA_SEG_BITS): Define.
4718
47192002-07-20 Richard M. Stallman <rms@gnu.org>
4720
4721 * print.c (print_error_message): New args CONTEXT and CALLER.
4722 Calls changed.
4723
4724 * lisp.h (print_error_message): Declare new args.
4725
4726 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
4727 and CONTEXT to print_error_message, don't print them here.
4728 For a Quit, don't use Vsignaling_function.
4729 Call message_log_maybe_newline.
4730
4731 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
4732
47332002-07-20 Kim F. Storm <storm@cua.dk>
4734
4735 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
4736
47372002-07-19 Ken Raeburn <raeburn@gnu.org>
4738
4739 * bytecode.c (struct byte_stack): Pointers into byte string now
4740 point to const.
4741 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
4742 const.
4743 * charset.h (BCOPY_SHORT): Source pointer now points to const.
4744 * coding.c (encode_eol, detect_coding, detect_eol):
4745 (decode_coding, encode_coding, detect_coding_system):
4746 Source strings now treated as const.
4747 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
4748 modify Lisp string contents.
4749 * coding.h (decode_coding, encode_coding, detect_coding,
4750 detect_eol): Declarations updated.
4751 * composite.c (compose_chars_in_text): Treat Lisp string contents
4752 as const.
4753 * dispnew.c (safe_bcopy): Source pointer now points to const.
4754 * lisp.h (STRING_COPYIN): New macro.
4755 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
4756 (internal_with_output_to_temp_buffer): Declarations updated.
4757 * print.c (temp_output_buffer_setup):
4758 (internal_with_output_to_temp_buffer): Buffer name argument is now
4759 pointer to const.
4760 * sound.c (struct sound_device): Function pointer field "write"
4761 buffer argument now points to const.
4762 (vox_write): Buffer argument points to const.
4763 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
4764 contents as const.
4765 * sysdep.c (emacs_write): Buffer pointer now const.
4766 * term.c (encode_terminal_code): Buffer pointer now const.
4767 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
4768 (x_face_list_fonts, x_update_menu_appearance):
4769 (hash_string_case_insensitive): Treat Lisp string contents as const.
4770
47712002-07-19 Juanma Barranquero <lektu@terra.es>
4772
4773 * fileio.c (Ffile_name_as_directory): Fix argument name in docstring.
4774 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
4775
4776 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
4777
4778 * fileio.c (syms_of_fileio): Likewise.
4779
47802002-07-18 Richard M. Stallman <rms@gnu.org>
4781
4782 * data.c (Fdefalias): Doc fix.
4783
47842002-07-17 Dave Love <fx@gnu.org>
4785
4786 * intervals.h (text_property_stickiness): Use P_.
4787
4788 * ccl.c: Remove `emacs' conditionals.
4789 (ccl_backtrace_table): Fix size spec.
4790 (ccl_driver): Fix type errors.
4791
47922002-07-16 Ken Raeburn <raeburn@gnu.org>
4793
4794 * alloc.c (xstrdup, make_string, make_unibyte_string)
4795 (make_multibyte_string, build_string): String pointer args now
4796 point to const.
4797 * charset.c (find_charset_in_text, c_string_width):
4798 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
4799 * fileio.c (report_file_error):
4800 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
4801 (count_combining_before, count_combining_after, insert_1_both):
4802 (insert, insert_and_inherit, insert_string):
4803 (insert_before_markers, insert_before_markers_and_inherit):
4804 * lread.c (intern, oblookup, hash_string):
4805 * minibuf.c (temp_echo_area_glyphs):
4806 * search.c (fast_c_string_match_ignore_case):
4807 * sysdep.c (emacs_open, set_file_times):
4808 * xfaces.c (xstricmp):
4809 * xdisp.c (store_frame_title, string_char_and_length):
4810 (message_dolog, message2, message2_nolog, set_message): Likewise.
4811 (set_message_1): Cast message string argument to const pointer.
4812 * editfns.c (general_insert_function): Insertion function now
4813 takes pointer to const for input data.
4814 * charset.h (find_charset_in_text, c_string_width):
4815 (parse_str_as_multibyte): Declarations updated.
4816 * dispextern.h (xstricmp): Declaration updated.
4817 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
4818 (count_size_as_multibyte, count_combining_before):
4819 (count_combining_after, insert_1, insert_1_both, message_dolog):
4820 (insert, insert_and_inherit, insert_before_markers)
4821 (insert_before_markers_and_inherit, set_message, message2):
4822 (message2_dolog, build_string, make_string, make_unibyte_string):
4823 (make_multibyte_string, intern, oblookup, report_file_error):
4824 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
4825 (emacs_open, xstrdup): Declarations updated.
4826 * systime.h (set_file_times): Declaration updated.
4827
4828 * charset.c (find_charset_in_text, lisp_string_width): Use const
4829 for pointer to lisp string data.
4830 * charset.h (FETCH_STRING_CHAR_ADVANCE):
4831 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
4832 * coding.c (Ffind_coding_systems_region_interval):
4833 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
4834 (Fmake_directory_internal, Fdelete_directory):
4835 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
4836 * fontset.c (font_family_registry, fs_query_fontset):
4837 (list_fontsets):
4838 * frame.c (Fframe_parameter):
4839 * keyboard.c (cmd_error_internal):
4840 * keymap.c (Fdescribe_buffer_bindings):
4841 * lread.c (complete_filename_p, openp):
4842 * minibuf.c (Fminibuffer_complete_word):
4843 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
4844 (face_before_or_after_it_pos, next_element_from_string):
4845 (get_overlay_arrow_glyph_row, display_mode_element):
4846 (decode_mode_spec_coding):
4847 * xterm.c (same_x_server): Likewise.
4848
4849 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
4850 settings of non-existent fields.
4851
4852 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
4853 copy a lisp value.
4854
4855 * lread.c (Fintern_soft): Use string macros instead of
4856 Lisp_String fields.
4857 * keyboard.c (echo_char, parse_modifiers_uncached):
4858 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
4859 * textprop.c (validate_interval_range, interval_of): Likewise.
4860
4861 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
4862
4863 * charset.h (FETCH_STRING_CHAR_ADVANCE)
4864 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
4865 XSTRING()->size_byte.
4866
4867 * lisp.h (SDATA, SREF): Produce rvalue.
4868 (SSET): New macro.
4869 * alloc.c (make_event_array): Use SSET for storing into a string.
4870 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
4871 a string.
4872 * casefiddle.c (casify_object): Use SSET.
4873 * charset.h (FETCH_STRING_CHAR_ADVANCE)
4874 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
4875 address of string contents.
4876 * data.c (Faref): Use SDATA.
4877 (Faset): Use SDATA, SSET.
4878 * dired.c (directory_files_internal): Use SSET.
4879 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
4880 (Fread_file_name): Use SREF, SSET.
4881 * fns.c (concat): Use SSET.
4882 (concat, Fdelete): Use SDATA.
4883 * insdel.c (insert_from_string_1): Use SDATA.
4884 * keyboard.c (Fevent_convert_list): Use SREF.
4885 * lread.c (Fload): Use SDATA, SSET.
4886 * macfns.c (validate_x_resource_name): Use SSET.
4887 * process.c (status_message): Use SSET.
4888 * search.c (wordify): Use SDATA.
4889 (Freplace_match): Use SREF.
4890 * w32fns.c (validate_x_resource_name): Use SSET.
4891 * xfns.c (validate_x_resource_name): Use SSET.
4892 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
4893
48942002-07-16 Richard M. Stallman <rms@gnu.org>
4895
4896 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
4897
4898 * xdisp.c (reconsider_clip_changes):
4899 Don't test prevent_redisplay_optimizations_p.
4900 (redisplay_internal): Test prevent_redisplay_optimizations_p
4901 along with clip_changed in some cases.
4902 (try_window_id): Likewise.
4903 (redisplay_window): New local var buffer_unchanged_p.
4904
4905 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
4906
4907 * process.c (create_process): Test USG_SUBTTY_WORKS.
4908 (process_send_signal): Clean up handling of GID.
4909 Detect errors in ioctls meant to set GID.
4910
4911 * window.c (temp_output_buffer_show):
4912 Don't set prevent_redisplay_optimizations_p.
4913
49142002-07-15 Juanma Barranquero <lektu@terra.es>
4915
4916 * eval.c (Fdefvaralias): Add docstring argument.
4917
49182002-07-15 Ken Raeburn <raeburn@gnu.org>
4919
4920 * lisp.h (STRING_INTERVALS): Produce rvalue.
4921 (STRING_SET_INTERVALS): New macro.
4922 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
4923 * fns.c (Fstring_as_multibyte): Likewise.
4924 * intervals.c (balance_possible_root_interval, delete_interval)
4925 (create_root_interval, copy_intervals_to_string): Likewise.
4926 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
4927 instead of 0.
4928
49292002-07-14 Ken Raeburn <raeburn@gnu.org>
4930
4931 * lisp.h (STRING_SET_CHARS): New macro.
4932 (SCHARS, SBYTES): Produce rvalues.
4933 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
4934 * fns.c (concat): Likewise.
4935 * lread.c (read_vector): Likewise.
4936
4937 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
4938 (STRING_SET_UNIBYTE): New macro.
4939 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
4940 length of -1) changed to use STRING_SET_UNIBYTE.
4941 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
4942 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
4943 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
4944 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
4945 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
4946 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
4947 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
4948 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
4949 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
4950 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
4951 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
4952 STRING_BYTES or indirection changed to SCHARS, SBYTES,
4953 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
4954 unchanged for now.
4955
49562002-07-13 Kim F. Storm <storm@cua.dk>
4957
4958 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
4959
49602002-07-12 Richard M. Stallman <rms@gnu.org>
4961
4962 * fileio.c (Fwrite_region): Doc fix.
4963
4964 * print.c (print_error_message): Don't handle Vsignaling_function here.
4965
4966 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
4967 (command_loop_1): Avoid certain actions after memory-full error.
4968
4969 * eval.c (Fsignal): Don't call cancel_hourglass.
4970 For a memory-full error, don't call Vsignal_hook_function
4971 and don't set Vsignaling_function.
4972
4973 * process.c (process_send_signal): Add abort call.
4974
49752002-07-11 Markus Rost <rost@math.ohio-state.edu>
4976
4977 * keymap.c (Fkey_binding): Fix typo.
4978
49792002-07-11 Richard M. Stallman <rms@gnu.org>
4980
4981 * alloc.c (Vmemory_full): New variable.
4982 (Vmemory_signal_data): Renamed from memory_signal_data.
4983 Uses changed.
4984 (syms_of_alloc): Defvar them.
4985 (memory_full, buffer_memory_full): Set Vmemory_full.
4986
4987 * lisp.h (Vmemory_full): Add declaration.
4988 (current_column, indented_beyond_p): Change declaration.
4989
4990 * indent.c (last_known_column): Declare as double, not float.
4991 (current_column, current_column_1, string_display_width)
4992 (position_indentation): Return `double'.
4993 (indented_beyond_p): Arg `column' is `double'. Callers changed.
4994
4995 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
4996 (back_to_previous_visible_line_start)
4997 (reseat_at_next_visible_line_start, next_element_from_buffer):
4998 Use `double', not `float', when calling indented_beyond_p.
4999
5000 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
5001
5002 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
5003
50042002-07-11 Juanma Barranquero <lektu@terra.es>
5005
5006 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
5007 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
5008 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
5009 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
5010 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
5011 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
5012
50132002-07-10 Juanma Barranquero <lektu@terra.es>
5014
5015 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE. All callers
5016 changed.
5017
50182002-07-09 Stefan Monnier <monnier@cs.yale.edu>
5019
5020 * data.c (Fdefalias): Add an optional `docstring' argument.
5021 (set_internal, Fsetq_default): Use XCAR/XCDR.
5022
5023 * composite.c (HASH_VALUE, HASH_KEY):
5024 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
5025
50262002-07-09 Kenichi Handa <handa@etl.go.jp>
5027
5028 * callproc.c (Fcall_process): Fix previous change.
5029
50302002-07-07 Stefan Monnier <monnier@cs.yale.edu>
5031
5032 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
5033 Add support for hash-tables.
5034 (Ftry_completion): Return t even if the string appears multiple times.
5035
5036 * fns.c (Fnconc): Use XCDR.
5037 (Fprovide): Use CONSP and XCDR.
5038 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
5039 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
5040 (Fmake_hash_table): Accept `:size nil'.
5041 (Fmakehash): Delete: moved to subr.el.
5042 (syms_of_fns): Don't defsubr makehash.
5043
5044 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
5045 (HASH_TABLE_SIZE): Move from fns.c.
5046
50472002-07-07 Richard M. Stallman <rms@gnu.org>
5048
5049 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
5050 Instead just return 0 when there is something to be done.
5051 (try_scrolling): If make_cursor_line_fully_visible returns 0,
5052 retry scrolling as if cursor were off the bottom.
5053 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
5054 return CURSOR_MOVEMENT_MUST_SCROLL.
5055 (redisplay_window): If make_cursor_line_fully_visible returns 0,
5056 go to try_to_scroll.
5057
5058 * buffer.c (Fbuffer_local_value): Store current value into its binding
5059 so we get the up-to-date value for the binding that is loaded.
5060
5061 * eval.c (Fdefmacro): Doc fix.
5062
50632002-07-05 Dave Love <fx@gnu.org>
5064
5065 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
5066 correctly.
5067
5068 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
5069 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
5070 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
5071 CCL_LookupCharConstTbl.
5072 (syms_of_ccl): Defvar translation-hash-table-vector.
5073
50742002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
5075
5076 * xdisp.c: Remove unused variable `face'.
5077
50782002-07-04 Juanma Barranquero <lektu@terra.es>
5079
5080 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
5081 obsolescence information.
5082
50832002-07-03 Andrew Choi <akochoi@shaw.ca>
5084
5085 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
5086 pattern. Search cache first.
5087 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
5088 for Japanese font.
5089 (XLoadQueryFont): Use it.
5090
50912002-07-02 Richard M. Stallman <rms@gnu.org>
5092
5093 * keymap.c (Fdefine_key): Doc fix.
5094
5095 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
5096
50972002-07-02 Juanma Barranquero <lektu@terra.es>
5098
5099 * keymap.c (syms_of_keymap): Fix typo.
5100
51012002-07-01 Andrew Choi <akochoi@shaw.ca>
5102
5103 * s/darwin.h: Define POSIX_SIGNALS.
5104
5105 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
5106 and FSRefMakePath to convert FSSpec returned with Apple Event to
5107 Posix pathname.
5108 (mac_initialize) [TARGET_API_MAC_CARBON]:
5109 Call init_required_apple_events and disable the `Quit' menu item
5110 provided automatically by the Carbon Toolbox.
5111
51122002-07-01 Dave Love <fx@gnu.org>
5113
5114 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
5115 for K&R.
5116
5117 * xterm.c: Fix prototype for K&R.
5118
5119 * term.c (costs_set): Declare static, non-initialized for pcc.
5120
51212002-07-01 Richard M. Stallman <rms@gnu.org>
5122
5123 * keyboard.c (timer_last_idleness_start_time): New variable.
5124 (timer_start_idle): Set that.
5125 (read_key_sequence): Use that to reset timer_idleness_start_time
5126 to previous value.
5127
5128 * window.c (Frecenter): With arg, set optional_new_start.
5129
5130 * xdisp.c (redisplay_internal): Make optional_new_start really work.
5131
5132 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
5133 buffer for completion.
5134
51352002-06-29 Ken Raeburn <raeburn@gnu.org>
5136
5137 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
5138
51392002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5140
5141 * keyboard.c (readable_filtered_events): New function that filters
5142 FOCUS_IN_EVENT depending on parameter.
5143 (readable_events): Calls readable_filtered_events, not filtering
5144 FOCUS_IN_EVENT.
5145 (get_filtered_input_pending): New function, filtering parameter passed
5146 to readable_filtered_events.
5147 (get_input_pending): Calls get_filtered_input_pending, not filtering
5148 FOCUS_IN_EVENT.
5149 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
5150 FOCUS_IN_EVENT.
5151
5152 * xterm.h (struct x_output): Add focus_state.
5153
5154 * xterm.c (x_focus_changed): New function.
5155 (x_detect_focus_change): New function.
5156 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
5157 EnterNotify and LeaveNotify to track X focus changes.
5158
51592002-06-28 Andreas Schwab <schwab@suse.de>
5160
5161 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
5162
51632002-06-27 Kim F. Storm <storm@cua.dk>
5164
5165 * xdisp.c: (mode_line_string_list, mode_line_string_face)
5166 (mode_line_string_face_prop): New variables.
5167 (store_mode_line_string): New function.
5168 (display_mode_element): Use store_mode_line_string to
5169 add mode-line string elements to mode_line_string_list
5170 when mode_line_string_list is non-nil.
5171 (Fformat_mode_line): Now returns propertized string by
5172 default. New arg NO-PROPS to ignore properties.
5173 (decode_mode_spec): Only add two dashes for %- in propertized
5174 mode-line string.
5175 (syms_of_xdisp): Init and staticpro mode_line_string_list.
5176
51772002-06-27 Stefan Monnier <monnier@cs.yale.edu>
5178
5179 * minibuf.c (minibuffer_completion_contents): Add return type.
5180
51812002-06-27 Juanma Barranquero <lektu@terra.es>
5182
5183 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
5184
51852002-06-26 Juanma Barranquero <lektu@terra.es>
5186
5187 * fileio.c (read_file_name_cleanup): Add missing return.
5188
51892002-06-26 Richard M. Stallman <rms@gnu.org>
5190
5191 * window.c (Frecenter): Don't set force_start flag.
5192
5193 * minibuf.c (do_completion, Fminibuffer_complete_word)
5194 (Fminibuffer_completion_help): Complete just the text before point.
5195 (minibuffer_completion_contents): New function.
5196
5197 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
5198
5199 * frame.c (frames_bury_buffer): Function deleted.
5200
52012002-06-25 Miles Bader <miles@gnu.org>
5202
5203 * callint.c (Fcall_interactively): When checking to see if doprnt hit
5204 the end of callint_message, allow for a terminating '\0'.
5205
52062002-06-24 Juanma Barranquero <lektu@terra.es>
5207
5208 * w32select.c: Include composite.h
5209
5210 * w16select.c: Likewise.
5211
52122002-06-24 Kenichi Handa <handa@etl.go.jp>
5213
5214 * callproc.c (Fcall_process): If code detection is necessary,
5215 call detect_coding directly here.
5216
5217 * coding.c (detect_eol): Preserve coding->cmp_data.
5218
5219 * w16select.c (Fw16_get_clipboard_data):
5220 * w32fns.c (w32_to_x_font):
5221 * w32select.c (Fw32_get_clipboard_data):
5222 * xselect.c (selection_data_to_lisp_data):
5223 * xterm.c (XTread_socket): Disable composition handling.
5224
52252002-06-24 Stefan Monnier <monnier@cs.yale.edu>
5226
5227 * print.c (temp_output_buffer_setup): Kill all local variables.
5228
52292002-06-22 Stefan Monnier <monnier@cs.yale.edu>
5230
5231 * lread.c (Fread): Remove redundant and imprecise declaration.
5232
5233 * xfns.c (check_x_display_info): Use check_x_frame.
5234
5235 * .gdbinit (xprintsym): Use the new `xname' field.
5236 (xsymbol): Use it.
5237
52382002-06-22 Jason Rumney <jasonr@gnu.org>
5239
5240 * w32fns.c (file_dialog_callback): New function.
5241 (Fx_file_dialog): Allow selecting directories as well as files.
5242
52432002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
5244
5245 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
5246 OpenBSD. Add support for mipseb-*-netbsd* machines.
5247
52482002-06-17 Andrew Choi <akochoi@shaw.ca>
5249
5250 * macterm.c (mac_scroll_area): Set foreground and backcolor to
5251 black and white before scrolling. Restore frame background and
5252 foreground color after scrolling.
5253 (do_window_update): Call XClearWindow before calling expose_frame.
5254 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
5255 FRAME_FOREGROUND_PIXEL of frame.
5256
5257 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
5258 test Mac command key as <ALT> key.
5259
52602002-06-17 Stefan Monnier <monnier@cs.yale.edu>
5261
5262 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
5263
5264 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
5265 Lookup keys in function-key-map immediately so that key-translation-map
5266 can be applied earlier.
5267 Remove function_key_possible and key_translation_possible, replaced
5268 by checking `keytran_start < t'.
5269
5270 * .gdbinit (xsymbol): Use the new `xname' field.
5271
52722002-06-17 Andrew Choi <akochoi@shaw.ca>
5273
5274 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
5275 test Mac command key as <ALT> key.
5276
5277 * mac.c (do_applescript): Call initialize_applescript if necessary
5278 when first called. Dispose of result_desc only when there is no error.
5279 (Fdo_applescript): Use %d format specifier instead of %ld.
5280
52812002-06-16 Andrew Choi <akochoi@shaw.ca>
5282
5283 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
5284 of FrontWindow for cases keyDown and autoKey.
5285
5286 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
5287 Vdefault_fontset to Monaco with mac-roman coding.
5288
5289 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
5290 init_process before and after inclusion of Carbon/Carbon.h, resp.
5291
5292 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
5293 cursor_gc.
5294 (add_font_name_table_entry): New function.
5295 (init_font_name_table): Use add_font_name_table_entry; add italic,
5296 bold, and bold-italic entries for truetype fonts.
5297
5298 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
5299 for Mac too.
5300 (try_font_list) [MAC_OS]: If no font matches given registry, try
5301 fonts with any registry matching face_family.
5302 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
5303
5304 * s/darwin.h: If autoconf detects the Ncurses library, define
5305 LIBS_TERMCAP to -lncurses to use it.
5306
53072002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
5308
5309 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
5310
53112002-06-15 Richard M. Stallman <rms@gnu.org>
5312
5313 * window.c (Fset_window_configuration): Explicitly preserve
5314 the point value that new_current_buffer had at the start.
5315
53162002-06-14 Juanma Barranquero <lektu@terra.es>
5317
5318 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
5319 Fix typos.
5320
53212002-06-14 Kim F. Storm <storm@cua.dk>
5322
5323 * insdel.c (insert_1_both, insert_from_string_1)
5324 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
5325 insert happened in the end_unchanged region. Otherwise, the
5326 redisplay may be confused and duplicate the last line in the
5327 buffer [seen after save-buffer when require-final-newline==t].
5328
53292002-06-13 Jason Rumney <jasonr@gnu.org>
5330
5331 * w32.c (init_environment): Remove EMACSLOCKDIR.
5332 (stat): Swap _S_IFDIR and _S_IFREG.
5333
53342002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
5335
5336 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
5337 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
5338 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
5339 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
5340 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
5341 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
5342 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
5343 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
5344 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
5345 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
5346 SELECTION_REQUEST_EVENT, selection_clear_event to
5347 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
5348 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
5349 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
5350 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
5351 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
5352 no_event to NO_EVENT.
5353
53542002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
5355
5356 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
5357
53582002-06-12 Stefan Monnier <monnier@cs.yale.edu>
5359
5360 * intervals.c (textget): Don't forget to `return'.
5361 (lookup_char_property): Use XCAR/XCDR.
5362
53632002-06-12 Juanma Barranquero <lektu@terra.es>
5364
5365 * xdisp.c (Fformat_mode_line): Fix typo.
5366
53672002-06-12 Kim F. Storm <storm@cua.dk>
5368
5369 * xdisp.c (Fformat_mode_line): New function.
5370 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
5371 (store_frame_title_char, store_frame_title): Use unconditionally.
5372 (init_xdisp): Defsubr Fformat_mode_line.
5373 Initialize frame_title_buf etc. unconditionally.
5374
53752002-06-11 Stefan Monnier <monnier@cs.yale.edu>
5376
5377 * keyboard.c (read_key_sequence):
5378 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
5379 things through those maps after downcasing events.
5380 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
5381 applies after function-key-map.
5382 Make sure that keytran can be done in the middle in the sequence.
5383 Be careful not to throw away events past the one we downcase.
5384
5385 * lread.c (read_integer): Remove unused var `tem'.
5386 (read1): Fix int/Lisp_Object mixup.
5387
5388 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
5389
53902002-06-11 Richard M. Stallman <rms@gnu.org>
5391
5392 * keyboard.c (readable_events): Ignore any number of
5393 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
5394
53952002-06-09 Miles Bader <miles@gnu.org>
5396
5397 * xfaces.c (Ftty_supports_face_attributes_p): New function.
5398 (parse_rgb_list, tty_lookup_color): New functions.
5399 (tty_defined_color): Use `tty_lookup_color' to do all the work.
5400 (color_distance, Fcolor_distance): New functions.
5401 (TTY_SAME_COLOR_THRESHOLD): New macro.
5402 (Qtty_color_standard_values): New variable.
5403 (syms_of_xfaces): Initialize new vars & functions.
5404
54052002-06-08 Colin Walters <walters@verbum.org>
5406
5407 * textprop.c (Vchar_property_alias_alist): New variable.
5408 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
5409
5410 * intervals.c (lookup_char_property): New function for looking up
5411 overlay and text properties, created from textget.
5412 (textget): Use it.
5413
5414 * intervals.h (lookup_char_property): Declare.
5415 (Vchar_property_alias_alist): Declare.
5416
5417 * buffer.c (Foverlay_get): Use lookup_char_property.
5418
54192002-06-07 Sam Steingold <sds@gnu.org>
5420
5421 * xselect.c (lisp_data_to_selection_data): Fix last change:
5422 *data_ret is not a Lisp string, while unibyte_string is.
5423
54242002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
5425
5426 * xselect.c (lisp_data_to_selection_data): Fix last change:
5427 set size_ret.
5428
54292002-06-07 Andreas Schwab <schwab@suse.de>
5430
5431 * m/amdx86-64.h: New file.
5432
54332002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
5434
5435 * fns.c (Fstring_make_unibyte): Doc fix.
5436
5437 * xselect.c (lisp_data_to_selection_data): If the requested type
5438 is STRING, call string_make_unibyte to encode the selected text
5439 as a string.
5440
5441 * window.c (Fset_window_hscroll): Doc fix.
5442
54432002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
5444
5445 * fileio.c (choose_write_coding_system):
5446 Call select-safe-coding-system properly.
5447
54482002-06-03 Richard M. Stallman <rms@gnu.org>
5449
5450 * xdisp.c (message_with_string): Error if STRING is not a string.
5451
5452 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
5453
5454 * fileio.c (choose_write_coding_system): Pass FILE arg to
5455 Vselect_safe_coding_system_function.
5456
54572002-06-03 Ken Raeburn <raeburn@gnu.org>
5458
5459 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
5460
54612002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
5462
5463 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
5464 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
5465 * keymap.c (describe_command): Likewise.
5466 * minibuf.c (read_minibuf): Likewise.
5467
5468 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
5469 Cast `current_column' return value to int.
5470 (back_to_previous_visible_line_start)
5471 (reseat_at_next_visible_line_start, next_element_from_buffer):
5472 Cast `indented_beyond_p' 3rd arg to float.
5473
5474 * indent.c (last_known_column): Now a float.
5475 (current_column_1, position_indentation, current_column)
5476 (string_display_width): Return float.
5477 (Fcurrent_column): Cast `current_column' return value to int.
5478 (Fcurrent_indentation): Cast `position_indentation' retval to int.
5479 (indented_beyond_p): Third arg now a float.
5480 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
5481
5482 * lisp.h (current_column): Now returns float.
5483 (indented_beyond_p): 3rd arg now a float.
5484
54852002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
5486
5487 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
5488 is Qcompound_text_with_extensions.
5489
5490 * xselect.c (lisp_data_to_selection_data): Always set selection
5491 type as string if x_encode_text returns streingp non-NULL.
5492
5493 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
5494
54952002-05-30 Richard M. Stallman <rms@gnu.org>
5496
5497 * window.c (Fset_window_configuration): Correct the handling
5498 of point in current buffer, to work with multiple windows.
5499
55002002-05-29 Colin Walters <walters@verbum.org>
5501
5502 * lread.c (Fread_from_string): Don't depend on order of evaluation
5503 for C function parameters.
5504
55052002-05-28 Richard M. Stallman <rms@gnu.org>
5506
5507 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
5508 way for blinked-off state and for a nonselected window.
5509
5510 * window.c (window_scroll_pixel_based): Don't call Fbolp;
5511 instead, see if the new start pos is at beginning of line.
5512
5513 * fileio.c (Fwrite_region): If START is a string, don't
5514 make any annotations.
5515
5516 * eval.c (syms_of_eval): Doc fix.
5517
55182002-05-28 Colin Walters <walters@debian.org>
5519
5520 * emacs.c (USAGE1): Add --no-splash.
5521 (standard_args): Ditto.
5522
55232002-05-28 Colin Walters <walters@gnu.org>
5524
5525 * lread.c (readchar_count): New variable.
5526 (readchar): Increment it.
5527 (unreadchar): Decrement it.
5528 (read_multibyte): Decrement it.
5529 (Vread_with_symbol_positions): New variable.
5530 (Vread_symbol_positions_list): New variable.
5531 (read_internal_start): New function, created from Fread and
5532 Fread_from_string. Handle Vread_symbol_positions_list and
5533 Vread_with_symbol_positions.
5534 (readevalloop, Fread, Fread_from_string): Use it.
5535 (read1): Use readchar_count to add symbol positions to
5536 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
5537 (syms_of_lread): DEFVAR_LISP and initialize them.
5538
5539 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
5540 (substitute_object_recurse, substitute_object_in_subtree)
5541 (substitute_in_interval): Prototype.
5542 (read_multibyte): Return c if it's less than zero.
5543
55442002-05-28 Kim F. Storm <storm@cua.dk>
5545
5546 * fileio.c (Fread_file_name_internal): Added brute-force
5547 speed up for using predicate file-directory-p.
5548
55492002-05-28 Kim F. Storm <storm@cua.dk>
5550
5551 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
5552 New variables.
5553 (syms_of_fileio): DEFVAR_LISP them.
5554 (read_file_name_cleanup): New unwind function.
5555 (Fread_file_name_internal): Only return completions satifying
5556 Vread_file_name_predicate. Temporarily unwind protect and rebind
5557 default-directory while checking completions against the predicate.
5558 (Fread_file_name): Added PREDICATE argument. Specbind it to
5559 Vread_file_name_predicate during completion.
5560 Call Vread_file_name_function to read the file name if non-nil.
5561
5562 * lisp.h (Fread_file_name): Now has 6 args.
5563
5564 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
5565 predicate for Fread_file_name when reading directory name.
5566 Supply Qnil for predicate in other calls to Fread_file_name.
5567
55682002-05-26 Miles Bader <miles@gnu.org>
5569
5570 * term.c (tty_capable_p): New function.
5571 * dispextern.h (tty_capable_p): New function declaration.
5572 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
5573 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
5574
55752002-05-23 Stefan Monnier <monnier@cs.yale.edu>
5576
5577 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
5578 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
5579 (Vwrite_region_annotate_functions): Docstring fix.
5580
55812002-05-23 Kim F. Storm <storm@cua.dk>
5582
5583 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
5584 phys_cursor's hpos is overwritten. This is still not completely
5585 correct, as it doesn't really make sense to use hpos at all to
5586 get the cursor glyph (as that is relative to the width of the
5587 characters on the line, which may have changed during the update).
5588
55892002-05-22 Jason Rumney <jasonr@gnu.org>
5590
5591 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
5592 Lisp_Object.
5593 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
5594 Use modified enumfont_t struct.
5595
5596 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
5597
5598 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
5599 Handle the `hbar' cursor type.
5600 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
5601
5602 * w32fns.c (Qhbar): New variable.
5603 (x_specified_cursor_type): Use it.
5604
56052002-05-21 Ken Raeburn <raeburn@gnu.org>
5606
5607 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
5608 now, when the address is needed.
5609
56102002-05-21 Colin Walters <walters@gnu.org>
5611
5612 * Makefile.in (shortlisp): Add font-core.el.
5613
56142002-05-20 Richard M. Stallman <rms@gnu.org>
5615
5616 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
5617
5618 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
5619 equivalent key bindings here.
5620
56212002-05-20 Ken Raeburn <raeburn@gnu.org>
5622
5623 Change symbol structure to contain a lisp object for the symbol
5624 name:
5625 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
5626 object field named "xname".
5627 (SYMBOL_NAME): New macro.
5628 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
5629 name field.
5630 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
5631 (mark_object, gc_sweep): Use symbol xname field and XSTRING
5632 instead of name field.
5633 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
5634 SYMBOL_NAME instead of XSYMBOL and name field.
5635 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
5636 instead of XSYMBOL and name field.
5637 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
5638 and SYMBOL_NAME instead of XSYMBOL and name field.
5639 * coding.c (Fread_coding_system, code_convert_region1)
5640 (code_convert_string1, code_convert_string_norecord)
5641 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
5642 XSYMBOL and name field.
5643 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
5644 (Fmake_variable_buffer_local, Fmake_local_variable)
5645 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
5646 of XSYMBOL and name field.
5647 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
5648 XSYMBOL and name field.
5649 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
5650 instead of XSYMBOL and name field.
5651 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
5652 XSYMBOL and name field.
5653 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
5654 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
5655 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
5656 instead of XSYMBOL and name field.
5657 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
5658 (parse_modifiers, apply_modifiers, Fevent_convert_list)
5659 (parse_solitary_modifier, Fexecute_extended_command):
5660 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
5661 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
5662 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
5663 of XSYMBOL and name field.
5664 (describe_command, describe_translation): Use SYMBOL_NAME and
5665 assignment instead of XSYMBOL and name field and XSETSTRING.
5666 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
5667 instead of XSYMBOL and name field.
5668 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
5669 name field and XSETSTRING.
5670 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
5671 of XSYMBOL and name field.
5672 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
5673 assignment instead of XSYMBOL and name field and XSETSTRING.
5674 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
5675 XSTRING instead of XSYMBOL and name field.
5676 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
5677 and XSTRING instead of XSYMBOL and name field.
5678 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
5679 and XSTRING instead of XSYMBOL and name field.
5680 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
5681 XSTRING instead of XSYMBOL and name field.
5682 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
5683 of XSYMBOL and name field.
5684 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
5685 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
5686
56872002-05-19 Ken Raeburn <raeburn@gnu.org>
5688
5689 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
5690 and XCDR real rvalues in most configurations.
5691
5692 * buffer.c (fix_overlays_in_range, fix_overlays_before):
5693 Don't take the address of the cdr part of a cons cell; instead, track
5694 the parent cell and call XSETCDR, or set the variable for the head
5695 of the list if we haven't started down the list yet.
5696
56972002-05-19 Richard M. Stallman <rms@gnu.org>
5698
5699 * doc.c (reread_doc_file): Don't ask for confirmation.
5700
57012002-05-18 Jason Rumney <jasonr@gnu.org>
5702
5703 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
5704 (xbm_load_image): Use it.
5705 (xbm_load): Ditto.
5706 (xbm_read_bitmap_data): Reverted to xfns.c version.
5707 From David Ponce <david@dponce.com>.
5708
57092002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
5710
5711 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
5712 2.02 and later.
5713
57142002-05-16 Juanma Barranquero <lektu@terra.es>
5715
5716 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
5717
57182002-05-15 Stefan Monnier <monnier@cs.yale.edu>
5719
5720 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
5721 meaningful test.
5722 (read_char_minibuf_menu_prompt): Fix typo.
5723
57242002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
5725
5726 * eval.c (Fcommandp): Doc fix.
5727
57282002-05-13 Stefan Monnier <monnier@cs.yale.edu>
5729
5730 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
5731 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
5732 (Fset_keymap_parent): Gcpro a bit more.
5733 (access_keymap): Gcpro around meta_map call and around the main loop.
5734 (get_keyelt): Gcpro when following indirect references.
5735 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
5736 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
5737 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
5738 Remove useless ad-hoc remap code.
5739
57402002-05-13 Richard M. Stallman <rms@gnu.org>
5741
5742 * search.c (search_buffer): Give up boyer moore search if inverse
5743 translation change charset_base.
5744
57452002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
5746
5747 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
5748 characters is carried over from the previous block of text, adjust
5749 coding->produced to account for the extra character.
5750
57512002-05-11 Andreas Schwab <schwab@suse.de>
5752
5753 * coding.c (intersection): Keep the elements of the returned list
5754 in the same order as in the first list.
5755
57562002-05-11 Kim F. Storm <storm@cua.dk>
5757
5758 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
5759 only update cmm_size if realloc actually succeeds.
5760 Testing with initial size of 2 elements revealed that using
5761 realloc on GNU/Linux would cause a random trap in xmalloc
5762 later on, so I rewrote the code to use malloc/bcopy/free instead
5763 of realloc.
5764
57652002-05-10 Jason Rumney <jasonr@gnu.org>
5766
5767 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
5768
57692002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
5770
5771 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
5772 parens, to ensure correct evaluation order.
5773
57742002-05-10 Kim F. Storm <storm@cua.dk>
5775
5776 * keymap.c (Vemulation_mode_map_alists): New variable.
5777 (syms_of_keymap): DEFVAR_LISP it.
5778 (current_minor_maps): Process keymap alists in that list before
5779 minor-mode-overriding-map-alist and minor-mode-map-alist.
5780
57812002-05-09 Richard M. Stallman <rms@gnu.org>
5782
5783 * search.c (Freplace_match): Doc fix.
5784
57852002-05-09 Kim F. Storm <storm@cua.dk>
5786
5787 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
5788 Enlarge cursor rectangle drawn around image with non-zero relief.
5789
5790 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
5791 Enlarge cursor rectangle drawn around image with non-zero relief.
5792
5793 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
5794 Enlarge cursor rectangle drawn around image with non-zero relief.
5795
57962002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
5797
5798 * xselect.c (lisp_data_to_selection_data): Don't set selection
5799 type if comes from the Lisp object's car. If the selection
5800 contains a pure ASCII text, always return QSTRING as its type.
5801
58022002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
5803
5804 * mac.c (mac-cut-function): Doc fix.
5805
58062002-05-05 Richard M. Stallman <rms@gnu.org>
5807
5808 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
5809
58102002-05-04 Jason Rumney <jasonr@gnu.org>
5811
5812 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
5813 for event-click-count.
5814
5815 * process.c (init_process): Only add server subfeature if we can
5816 use non-blocking I/O.
5817
58182002-05-04 Andrew Choi <akochoi@shaw.ca>
5819
5820 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
5821 repeatedly.
5822
58232002-05-03 Jason Rumney <jasonr@gnu.org>
5824
5825 * process.c (Fmake_network_process): Only support server sockets
5826 when we can make them non-blocking.
5827
5828 * s/ms-w32.h (HAVE_SELECT): Define.
5829
5830 * w32.h (FILE_NDELAY): New flag.
5831
5832 * w32.c (sys_getpeername, fcntl): New functions.
5833 (_sys_read_ahead): Temporarily block on non-blocking sockets.
5834
5835 * w32proc.c: include sys/file.h.
5836
58372002-05-03 Colin Walters <walters@verbum.org>
5838
5839 * callproc.c (Vgame_score_directory): Renamed to
5840 Vshared_game_score_directory.
5841
58422002-04-30 Richard M. Stallman <rms@gnu.org>
5843
5844 * s/gnu.h [emacs]: Include stdio.h.
5845 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
5846
5847 * eval.c (do_autoload): Error if called while preparing to dump.
5848
5849 * fns.c (Frequire): Error if need to load while preparing to dump.
5850
58512002-04-28 Colin Walters <walters@verbum.org>
5852
5853 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
5854 Default to "~/.emacs.d/games".
5855
58562002-04-29 Stefan Monnier <monnier@cs.yale.edu>
5857
5858 * lread.c (openp): Change arg exec_only to predicate.
5859 (build_load_history): Use XCAR/XCDR.
5860 (Flocate_file_internal): New fun.
5861 (syms_of_lread): Defsubr it.
5862 (Fload): Update call to openp.
5863
5864 * lisp.h (openp): Update prototype.
5865
5866 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
5867 * w32proc.c (sys_spawnve):
5868 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
5869 * w32.c (check_windows_init_file):
5870 * sound.c (Fplay_sound_internal):
5871 * process.c (Fstart_process):
5872 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
5873 * mac.c (run_mac_command):
5874 * emacs.c (init_cmdargs):
5875 * callproc.c (Fcall_process): Update call to openp.
5876
5877 * textprop.c (remove_properties): Don't use XCAR without CONSP.
5878
5879 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
5880
58812002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
5882
5883 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
5884 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
5885
58862002-04-28 Richard M. Stallman <rms@gnu.org>
5887
5888 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
5889
5890 * eval.c (Fcommandp): New arg for_call_interactively.
5891 * lisp.h (Fcommandp): Declare new arg.
5892
58932002-04-28 Jason Rumney <jasonr@gnu.org>
5894
5895 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
5896
5897 * w32.c (stat, fstat): Use file index information to generate
5898 inodes for directories where available.
5899
59002002-04-26 Andrew Choi <akochoi@shaw.ca>
5901
5902 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
5903 [HAVE_CARBON]: Include Mac object files.
5904
5905 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
5906 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
5907 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
5908 MAC_OSX, and MAC_OS instead of macintosh.
5909
5910 * editfns.c [MAC_OS8]: Include stdio.h.
5911
5912 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
5913
5914 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
5915 Apple Monaco.
5916
5917 * process.c: Declare QCfamily and QCfilter as extern.
5918 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
5919 calling select.
5920
5921 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
5922
5923 * tparam.c [MAC_OSX]: Don't define BC and UP.
5924
5925 * config.in [HAVE_CARBON]: Add.
5926
5927 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
5928 Move here from mac/src and mac/inc.
5929
5930 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
5931
59322002-04-26 Gerd Moellmann <gerd@gnu.org>
5933
5934 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
5935 Compute phys_cursor_width from the x position returned
5936 by x_draw_glyhs, which is cheaper.
5937 (x_display_and_set_cursor): Compute the buffer-local value
5938 of `cursor-in-non-selected-windows' only when needed.
5939
59402002-04-25 Gerd Moellmann <gerd@gnu.org>
5941
5942 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
5943 cursor on a stretch glyph has a width that depends on
5944 x_stretch_cursor_p.
5945
59462002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
5947
5948 * abbrev.c (abbrev-start-location): Doc fix.
5949
5950 * indent.c (Fvertical_motion): Fix last change.
5951
59522002-04-25 Gerd Moellmann <gerd@gnu.org>
5953
5954 * indent.c (Fvertical_motion): Move to the start of the line
5955 containing PT before moving up or down.
5956
59572002-04-24 Gerd Moellmann <gerd@gnu.org>
5958
5959 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
5960 case of writing a whole row, more or less analogous to the case of
5961 writing only parts of a row.
5962
5963 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
5964 0 for NO_CURSOR.
5965
5966 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
5967
59682002-04-23 Colin Walters <walters@verbum.org>
5969
5970 * buffer.c (syms_of_buffer): Doc fix.
5971
59722002-04-23 Gerd Moellmann <gerd@gnu.org>
5973
5974 * xterm.c (notice_overwritten_cursor): Handle the special case
5975 of the cursor being in the first blank non-text line at the
5976 end of a window.
5977
5978 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
5979 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
5980 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
5981 bar cursors only, to make phys_cursor_width contain what its name
5982 suggests.
5983 (notice_overwritten_cursor): Consider the cursor image erased if
5984 the output area intersects the cursor image in y-direction.
5985
59862002-04-23 Simon Marshall <simon@gnu.org>
5987
5988 * xfns.c (x_set_mouse_color): Change default for cross_cursor
5989 to XC_hand2.
5990
59912002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
5992
5993 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
5994
59952002-04-22 Kim F. Storm <storm@cua.dk>
5996
5997 * textprop.c (remove_properties): Fixed trap for malformed plist.
5998
59992002-04-22 Richard M. Stallman <rms@gnu.org>
6000
6001 * cmds.c (Fend_of_line): Handle intangible text in mid line.
6002
6003 * window.c (make_window): Initialize height_fixed_p,
6004 last_cursor_off_p, and p->cursor_off_p slots.
6005
60062002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6007
6008 * fns.c (use-dialog-box): Doc fix.
6009
60102002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6011
6012 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
6013 variables `row', `i' and `area'.
6014 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
6015 toolkit library.
6016
60172002-04-19 Stefan Monnier <monnier@cs.yale.edu>
6018
6019 * xfaces.c (clear_font_table): Don't free the default font of
6020 a frame even if it's on another display.
6021 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
6022 that could be Qt.
6023
60242002-04-19 Juanma Barranquero <lektu@terra.es>
6025
6026 * indent.c (Fmove_to_column): Remove unused local variable
6027 `next_boundary_byte'.
6028 (current_column_1): Likewise.
6029
60302002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
6031
6032 * msdos.c (Qhbar): New variable.
6033 (syms_of_msdos): Intern and staticpro it.
6034 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
6035 cursor type.
6036
60372002-04-19 Dave Lambert <dlambert@acm.org>
6038
6039 Theses change implement an underscore-like (`hbar') cursor.
6040
6041 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
6042
6043 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
6044 Handle the `hbar' cursor type.
6045 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
6046
6047 * xfns.c (Qhbar): New variable.
6048 (syms_of_xfns): Intern and staticpro it.
6049 (x_specified_cursor_type): Handle `hbar' cursor.
6050
6051 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
6052 not defined.
6053
60542002-04-18 Richard M. Stallman <rms@gnu.org>
6055
6056 * textprop.c (remove_properties): New arg LIST allows scanning
6057 either a list or a plist.
6058 (interval_has_some_properties_list): New function, like
6059 interval_has_some_properties using list instead of plist.
6060 All callers changed.
6061 (Fremove_list_of_text_properties): New function.
6062 (syms_of_textprop): Defsubr it.
6063
60642002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
6065
6066 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
6067
60682002-04-17 Juanma Barranquero <lektu@terra.es>
6069
6070 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
6071
60722002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
6073
6074 * window.c (coordinates_in_window): Don't report on margin area
6075 if its width is zero.
6076
60772002-04-16 Jason Rumney <jasonr@gnu.org>
6078
6079 * w32fns.c (Fx_file_dialog): Decode file name before using.
6080
6081 * w32term.c (construct_drag_n_drop): Likewise.
6082
60832002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
6084
6085 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
6086 store load-history in pure space.
6087
6088 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
6089
60902002-04-16 Stefan Monnier <monnier@cs.yale.edu>
6091
6092 * xterm.c (Qlatin_1, Qutf_8): New vars.
6093 (syms_of_xterm): Initialize them.
6094 (XTread_socket): Eliminate incorrect optimization that tried to avoid
6095 decoding the output of X*LookupString.
6096 Always use latin-1 to decode the output of XLookupString.
6097 Try Xutf8LookupString if XmbLookupString failed.
6098
6099 * region-cache.c (new_region_cache): Use BEG.
6100
61012002-04-16 Gerd Moellmann <gerd@gnu.org>
6102
6103 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
6104 configuration files.
6105 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
6106 returns 0.
6107
61082002-04-15 Andreas Schwab <schwab@suse.de>
6109
6110 * config.in: Regenerated using autoheader.
6111
6112 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
6113 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
6114 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
6115 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
6116 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
6117 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
6118 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
6119 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
6120 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
6121 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
6122 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
6123 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
6124 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
6125 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
6126 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
6127 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
6128 STACK_DIRECTION, now set by autoconf.
6129
61302002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6131
6132 * dispnew.c (marginal_area_string): Sort arguments.
6133
6134 * dispextern.h (marginal_area_string): Add prototype.
6135
61362002-04-13 Richard M. Stallman <rms@gnu.org>
6137
6138 * fileio.c (Finsert_file_contents):
6139 Don't call temp_output_buffer_setup--do just part, by hand.
6140
6141 * coding.c (run_pre_post_conversion_on_str):
6142 Don't call temp_output_buffer_setup--do just part, by hand.
6143
6144 * keyboard.c (command_loop_1): Don't call start_hourglass
6145 or cancel_hourglass when executing a macro.
6146
6147 * marker.c (count_markers): New function.
6148
6149 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
6150 grow without limit. Move recently used elements to the front.
6151
61522002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
6153
6154 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
6155
61562002-04-12 Gerd Moellmann <gerd@gnu.org>
6157
6158 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
6159 rows marginal areas.
6160 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
6161 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
6162
6163 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
6164
61652002-04-12 Dave Love <fx@gnu.org>
6166
6167 * dispnew.c (marginal_area_string): New.
6168
6169 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
6170 (Qleft_margin, Qright_margin): Declare.
6171 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
6172
6173 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
6174 note_mode_line_highlight and extended.
6175
6176 * keyboard.c (Qleft_margin, Qright_margin): Declare.
6177 (make_lispy_event): Deal with mouse events in margins.
6178
61792002-04-12 Stefan Monnier <monnier@cs.yale.edu>
6180
6181 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
6182
6183 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
6184 than deactivating the mark if tmm is set to `lambda'.
6185 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
6186 Use a single event for HELP_EVENT.
6187 (Fexecute_extended_command): Save last_point_position.
6188
61892002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6190
6191 * lisp.h (Fpropertize): Add prototype.
6192
6193 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
6194
61952002-04-10 Colin Walters <walters@verbum.org>
6196
6197 * config.in: Add HAVE_SHARED_GAME_DIR.
6198
6199 * callproc.c: (Vgame_score_directory): New variable.
6200 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
6201
62022002-04-10 Richard M. Stallman <rms@gnu.org>
6203
6204 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
6205
62062002-04-09 Stefan Monnier <monnier@cs.yale.edu>
6207
6208 * minibuf.c (read_minibuf): Use empty_string.
6209 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
6210 Short-circuit the search as soon as it "failed".
6211 (Fall_completions): Allow lambda forms and lists of strings for alist.
6212 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
6213 when require_match is nil.
6214 (Ftest_completion): Rename from `test_completion' and export to elisp.
6215 Call the predicate also when alist is a list.
6216 Obey Vcompletion_regexp_list.
6217 (do_completion, Fminibuffer_complete_and_exit): Use it.
6218 (Fassoc_string): Rename from `assoc_for_completion'.
6219 Allow list of strings as well and export to elisp.
6220
62212002-04-08 Stefan Monnier <monnier@cs.yale.edu>
6222
6223 * puresize.h (BASE_PURESIZE): Increase to 900KB.
6224
62252002-04-08 Juanma Barranquero <lektu@terra.es>
6226
6227 * w32.c (sys_accept): Don't hide variable `s'.
6228
62292002-04-05 Gerd Moellmann <gerd@gnu.org>
6230
6231 * callint.c (Fcall_interactively): Use INTEGERP instead of
6232 NUMBERP for checking Vhistory_length.
6233
62342002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6235
6236 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
6237 Doc fix to reflect it.
6238
62392002-04-04 Richard M. Stallman <rms@gnu.org>
6240
6241 * xdisp.c (display_mode_element): New arg RISKY.
6242 Disregard text props found or specified within a variable
6243 that isn't marked risky-local-variable.
6244 (Qrisky_local_variable): New variable.
6245 (syms_of_xdisp): Init and staticpro it.
6246
62472002-04-04 Stefan Monnier <monnier@cs.yale.edu>
6248
6249 * undo.c (record_point): New fun.
6250 (record_delete, record_insert): Use it.
6251
62522002-04-03 Juanma Barranquero <lektu@terra.es>
6253
6254 * doc.c (Fdocumentation): Add missing parentheses.
6255 (Fdocumentation_property): Likewise.
6256
62572002-04-03 Stefan Monnier <monnier@cs.yale.edu>
6258
6259 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
6260 data is 0, just return nil.
6261
62622002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
6263
6264 * msdos.c (syms_of_msdos): Fix last change with
6265 mouse_autoselect_window.
6266
62672002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6268
6269 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
6270 mouse_autoselect_window.
6271
62722002-04-02 Stefan Monnier <monnier@cs.yale.edu>
6273
6274 * keyboard.c (make_lispy_event): Handle unknown keysyms together
6275 with system-specific keysyms. Use it also for unknown function keys.
6276
6277 * doc.c (reread_doc_file): Return whether reload was attempted.
6278 (Fdocumentation, Fdocumentation_property): Don't try to reload
6279 if the doc is 0 and only ask once.
6280
6281 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
6282
62832002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
6284
6285 * keyboard.c (read_char): If the event was Qselect_window,
6286 restore timer_idleness_start_time to its previous value.
6287
6288 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
6289
62902002-04-01 Stefan Monnier <monnier@cs.yale.edu>
6291
6292 * region-cache.c (new_region_cache): Use BEG.
6293
6294 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
6295 Use BEG and BEG_BYTE.
6296
6297 * doc.c (get_doc_string): Return nil if the location is wrong.
6298 (reread_doc_file): New fun.
6299 (Fdocumentation, Fdocumentation_property):
6300 Call it if get_doc_string fails.
6301 (Fsnarf_documentation): Make it work for a dumped Emacs.
6302
6303 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
6304 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
6305
6306 * charset.c (Fstring): Allow 0 arguments.
6307
6308 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
6309
6310 * process.c (DATAGRAM_CONN_P, list_processes_1)
6311 (Fprocess_datagram_address, Fset_process_datagram_address)
6312 (Fset_network_process_options, server_accept_connection):
6313 Fix some int/Lisp_Object confusions (thank you union types).
6314
63152002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6316
6317 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
6318
6319 * w32term.c: Likewise.
6320 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
6321
6322 * keyboard.c (Qselect_window): New symbol.
6323 (head_table): Use it.
6324 (keys_of_keyboard): Bound select-window event to handle-select-window.
6325 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
6326
6327 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
6328 (last_window): New variable.
6329 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
6330 (note_mouse_movement): Remove reimplemented code in #if 0.
6331 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
6332 Emacs windows.
6333
6334 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
6335
63362002-03-31 Gerd Moellmann <gerd@gnu.org>
6337
6338 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
6339 Callers changed.
6340
63412002-03-30 Richard M. Stallman <rms@gnu.org>
6342
6343 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
6344 loop whenever it stops making progress.
6345
6346 * widget.c (set_frame_size): Don't call change_frame_size.
6347
63482002-03-30 Gerd Moellmann <gerd@gnu.org>
6349
6350 * dispnew.c (direct_output_for_insert):
6351 Call mark_window_display_accurate.
6352
63532002-03-29 Jason Rumney <jasonr@gnu.org>
6354
6355 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
6356
63572002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
6358
6359 * Makefile.in (lread.o): Depend on coding.h.
6360
6361 * lread.c (openp, Fload): Encode the file name before passing it
6362 to `stat', `access', and `emacs_open'.
6363 (openp): GCPRO the encoded file name. Don't recompute Lisp
6364 strings unnecessarily.
6365
63662002-03-29 Kim F. Storm <storm@cua.dk>
6367
6368 * fns.c (Flax_plist_put): Doc fix.
6369
63702002-03-28 Miles Bader <miles@gnu.org>
6371
6372 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
6373
63742002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6375
6376 * process.c (set-network-process-options): Add usage.
6377 (make-network-process): Doc fix.
6378
63792002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
6380
6381 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
6382
63832002-03-26 Richard M. Stallman <rms@gnu.org>
6384
6385 * fns.c (Fsubstring_no_properties): New function.
6386 (Flax_plist_get, Flax_plist_put): New functions.
6387 (syms_of_fns): defsubr them.
6388
6389 * xdisp.c (update_menu_bar): Test only update_mode_lines;
6390 don't test or alter w->update_mode_line.
6391
6392 * window.c (Fdisplay_buffer): Doc fix.
6393
63942002-03-24 Richard M. Stallman <rms@gnu.org>
6395
6396 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
6397
63982002-03-24 Gerd Moellmann <gerd@gnu.org>
6399
6400 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
6401 (Fdefmacro): Handle `(declare ...)'.
6402 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
6403 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
6404
64052002-03-24 Jason Rumney <jasonr@gnu.org>
6406
6407 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
6408 (xbm_file_p): Add prototypes.
6409 (xbm_format, xbm_image_p): Sync with xfns.c.
6410 (reflect_byte): New function.
6411 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
6412 (xbm_load_image): Create bitmaps with a depth of 1.
6413 (init_xfns): Enable XBM images.
6414
64152002-03-23 Jason Rumney <jasonr@gnu.org>
6416
6417 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
6418 correctly. Do not pass up_modifier to keyboard buffer.
6419
6420 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
6421
64222002-03-22 Stefan Monnier <monnier@cs.yale.edu>
6423
6424 * Makefile.in (bootstrapclean): New target.
6425 (bootstrap-temacs, bootstrap-doc): Remove.
6426 (bootstrap-emacs): Use a bog-standard `temacs'.
6427 Don't bother to build a DOC file.
6428
6429 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
6430
6431 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
6432 in temacs even if !CANNOT_DUMP.
6433 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
6434
6435 * alloc.c (check_pure_size): Only output a warning.
6436
64372002-03-22 Jason Rumney <jasonr@gnu.org>
6438
6439 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
6440 supported.
6441
6442 * w32term.c (zv_bits): Declare as short, for word alignment.
6443 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
6444 (syms_of_w32term): Define x-use-underline-position-properties.
6445
6446 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
6447 (clear_image_cache): Block input, fix logic, clear matrices in
6448 all frames that share this cache.
6449
64502002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
6451
6452 * emacs.c (main): Update the Copyright year in the blurb printed
6453 by "emacs --version".
6454
6455 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
6456
6457 * xterm.c (XTread_socket): If XK_ISO_Lock and
6458 XK_ISO_Last_Group_Lock are defined, handle keysyms between
6459 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
6460
64612002-03-21 Kim F. Storm <storm@cua.dk>
6462
6463 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
6464 menu-bar bindings in keymap and local-map properties _are_ used.
6465 But try keymap property first in accordance with 2002-01-03 patch.
6466 Added comment describing why this is not always reliable.
6467 (tool_bar_items): Ditto for tool-bar.
6468
64692002-03-21 Jason Rumney <jasonr@gnu.org>
6470
6471 * w32fns.c (x_clear_image_1): Disable color table code.
6472
64732002-03-21 Kim F. Storm <storm@cua.dk>
6474
6475 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
6476 removed the wrong version of the DEFUN macro; fixed it.
6477
6478 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
6479 Fmember rather than Fmemq).
6480 (Fprovide): Check that subfeatures is a list.
6481
6482 * process.c (QCfeature, QCdatagram): Removed variables.
6483 (QCtype, Qdatagram): New variables.
6484 (network_process_featurep): Removed function.
6485 (Fmake_network_process): Removed :feature check.
6486 Use :type 'datagram instead of :datagram t to create a datagram
6487 socket. This allows us to add other connection types (e.g. raw
6488 sockets) later in a consistent manner.
6489 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
6490 supported subfeatures for feature make-network-process.
6491 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
6492 Intern and staticpro QCtype and Qdatagram.
6493 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
6494
6495 * xfns.c: (QCtype): Remove duplicate declaration and
6496 initialization (is now declared in process.c).
6497
6498 * w32fns.c: (QCtype): Remove duplicate declaration and
6499 initialization (is now declared in process.c).
6500
65012002-03-21 Richard M. Stallman <rms@gnu.org>
6502
6503 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
6504 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
6505 when jumping to `fail' to avoid undoing reg changes in the
6506 last iteration of the loop.
6507 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
6508
6509 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
6510 Depend on process.h.
6511
65122002-03-20 Jason Rumney <jasonr@gnu.org>
6513
6514 Most of the following changes are still conditional on HAVE_IMAGES
6515 which is not set by default on Windows.
6516
6517 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
6518
6519 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
6520 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
6521 (four_corners_best, x_clear_image_1, x_clear_image)
6522 (x_alloc_image_color, postprocess_image)
6523 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
6524 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
6525 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
6526
6527 * w32gui.h (struct XImage): Define.
6528
6529 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
6530 extract mouse co-ordinates.
6531
65322002-03-20 Jason Rumney <jasonr@gnu.org>
6533
6534 * w32.c (init_winsock): Dynamically load new server and UDP
6535 socket functions.
6536 (socket_to_fd): New function.
6537 (sys_socket): Use it.
6538 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
6539 (sys_recvfrom, sys_sendto): New wrapper functions.
6540
6541 * process.c (QCfamily, QCfilter): Remove duplicate declaration
6542 and initialization.
6543
6544 * makefile.w32-in (LIBS): Remove $(WSOCK32).
6545
65462002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
6547
6548 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
6549 Don't use "sun" as a variable, it's a predefined constant on Sun
6550 machines.
6551
65522002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6553
6554 * bytecode.c (Fbyte_code): Revert last change.
6555
65562002-03-19 Kim F. Storm <storm@cua.dk>
6557
6558 * makefile.w32-in (LIBS): Add $(WSOCK32).
6559 From David Ponce <dponce@voila.fr>.
6560
65612002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6562
6563 * process.c (wait_reading_process_input): Move variables `pname'
6564 and `pnamelen' down where they are used.
6565
6566 * bytecode.c (Fbyte_code): Discard unused computed value to
6567 prevent gcc warning.
6568
6569 * lisp.h (Fplist_member): Add prototype.
6570
65712002-03-18 Kim F. Storm <storm@cua.dk>
6572
6573 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
6574 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
6575
6576 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
6577 Remove explicit GNU_LINUX settings for datagram support.
6578
65792002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6580
6581 * process.c (Fmake_network_process): Remove unused variable `sa'.
6582 Doc fix. Add usage:.
6583 (set_socket_options): Remove unused variables `optnum' and `opttype'.
6584
65852002-03-17 Richard M. Stallman <rms@gnu.org>
6586
6587 * xdisp.c (cursor_type_changed): New variable.
6588 (redisplay_internal): Redisplay all windows if cursor_type_changed.
6589 Clear it when clearing windows_or_buffers_changed.
6590 (try_cursor_movement, redisplay_window, try_window_id)
6591 (try_window_reusing_current_matrix): Test cursor_type_changed
6592 along with windows_or_buffers_changed.
6593
6594 * window.h (cursor_type_changed): New variable.
6595
6596 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
6597 not update_mode_lines, and always set it to 1.
6598
6599 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
6600 if no frames needed redrawing.
6601
66022002-03-17 Kim F. Storm <storm@cua.dk>
6603
6604 The following changes add support for network server processes,
6605 datagram connections, and local (unix) sockets.
6606
6607 * process.h (struct Lisp_Process): New member log.
6608 Doc fix: Member command used to indicate stopped network process.
6609 Doc fix: Member childp contains plist for network process.
6610 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
6611
6612 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
6613 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
6614 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
6615 New variables.
6616 (NETCONN1_P): New macro.
6617 (DATAGRAM_SOCKETS): New conditional symbol.
6618 (datagram_address): New array.
6619 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
6620 (status_message): Use concat3.
6621 (Fprocess_status): Add `listen' status to doc string. Return `stop'
6622 for a stopped network process.
6623 (Fset_process_buffer): Update contact plist for network process.
6624 (Fset_process_filter): Ditto. Don't enable input for stopped
6625 network processes. Server must listen, even if filter is t.
6626 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
6627 New functions.
6628 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
6629 (Fprocess_contact): Added KEY argument. Handle datagrams.
6630 (list_processes_1): Optionally show only processes with the query
6631 on exit flag set. Dynamically adjust column widths. Omit tty
6632 column if not needed. Report stopped network processes.
6633 Identify server and datagram network processes.
6634 (Flist_processes): New optional arg `query-only'.
6635 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
6636 (conv_lisp_to_sockaddr, set_socket_options)
6637 (network_process_featurep, unwind_request_sigio): New helper functions.
6638 (Fprocess_datagram_address, Fset_process_datagram_address):
6639 (Fset_network_process_options): New lisp functions.
6640 (Fopen_network_stream): Removed. Now defined in simple.el.
6641 (Fmake_network_process): New lisp function. Code is based on previous
6642 Fopen_network_stream, but heavily reworked with new property list based
6643 argument list, support for datagrams, server processes, and local
6644 sockets in addition to old client-only functionality.
6645 (server_accept_connection): New function.
6646 (wait_reading_process_input): Use it to handle incoming connects.
6647 Do not enable input on a new connection if process is stopped.
6648 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
6649 (send_process): Handle datagram sockets.
6650 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
6651 network process is indicated by setting command field to t .
6652 (Fprocess_send_eof): No-op if datagram connection.
6653 (Fstatus_notify): Don't read input for a stream server socket or a
6654 stopped network process.
6655 (init_process): Initialize datagram_address array.
6656 (syms_of_process): Intern and staticpro new variables, defsubr new
6657 functions.
6658
66592002-03-16 Jason Rumney <jasonr@gnu.org>
6660
6661 * w32fns.c (w32_to_all_x_charsets): Return correct type in
6662 startup case.
6663
66642002-03-16 Richard M. Stallman <rms@gnu.org>
6665
6666 * xdisp.c (redisplay_internal, redisplay_windows):
6667 Use list_of_error to call internal_condition_case_1.
6668 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
6669 so as to catch all errors with no possibility of debugger redisplay.
6670 (list_of_error): New variable.
6671 (syms_of_xdisp): Init and staticpro it.
6672
6673 * print.c (print_object): Delete `\ ' from printed rep of frame.
6674
66752002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
6676
6677 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
6678 until its implementation is fixed.
6679
66802002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6681
6682 * xfns.c (png_load): Remove unused variable `gamma_str'.
6683
66842002-03-14 Richard M. Stallman <rms@gnu.org>
6685
6686 * xfns.c (x_real_positions): Handle failure in XQueryTree.
6687
66882002-03-14 Miles Bader <miles@gnu.org>
6689
6690 * intervals.c (adjust_for_invis_intang): New function.
6691 (set_point_both): Use `adjust_for_invis_intang' to do most of the
6692 work for dealing with invisible+intangible regions. Do so before
6693 and after both forward and backward movements, to handle both
6694 front-sticky and rear-sticky cases.
6695 * textprop.c (text_property_stickiness): Function moved here from
6696 `editfns.c'.
6697 * intervals.h (text_property_stickiness): New declaration.
6698 * editfns.c (char_property_eq): Function removed.
6699 (text_property_stickiness): Function moved to `textprop.c'.
6700
67012002-03-13 Jason Rumney <jasonr@gnu.org>
6702
6703 * config.in: Add STRFTIME_NO_POSIX2.
6704
6705 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
6706 and %OX when underlying strftime does not.
6707
67082002-03-13 Stefan Monnier <monnier@cs.yale.edu>
6709
6710 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
6711 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
6712 line) to avoid annoying flicker.
6713 (xm_scroll_callback): Get rid of the now unnecessary kludge.
6714 (XTread_socket): Mark it static.
6715
6716 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
6717
67182002-03-13 Kim F. Storm <storm@cua.dk>
6719
6720 * puresize.h (BASE_PURESIZE): Increase to 775000.
6721
67222002-03-12 Juanma Barranquero <lektu@terra.es>
6723
6724 * editfns.c (syms_of_editfns): Fix typo.
6725
67262002-03-12 Gerd Moellmann <gerd@gnu.org>
6727
6728 * xsmfns.c: Include stdio.h because termhooks.h needs it.
6729 Include termopt.h for interrupt_input.
6730
67312002-03-11 Andreas Schwab <schwab@suse.de>
6732
6733 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
6734
67352002-03-11 Gerd Moellmann <gerd@gnu.org>
6736
6737 * xterm.c (note_mouse_movement): Put code for
6738 x_autoselect_window_p in #if 0.
6739
6740 * lread.c (Fload): Don't assume that message_with_string uses the
6741 string it is given like a C string.
6742
67432002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6744
6745 * xterm.h (x_session_check_input, x_session_initialize): Declared.
6746
6747 * xterm.c: (XTread_socket): Add call to x_session_check_input and
6748 x_session_have_connection.
6749 (x_initialize): Add call to x_session_initialize.
6750
6751 * termhooks.h (enum event_kind): Add save_session_event.
6752
6753 * keyboard.c: Add Emacs event save_session_event.
6754
6755 * emacs.c (main): Add call to syms_of_xsmfns.
6756
6757 * lisp.h: Declare syms_of_xsmfns as extern.
6758
6759 * config.in: Add HAVE_X_SM.
6760
6761 * Makefile.in (LIBXT): Add -lSM -lICE
6762 if HAVE_X_SM and not USE_X_TOOLKIT.
6763 (XOBJ): New file xsmfns.c added.
6764
6765 * xsmfns.c: New file for X session management.
6766
67672002-03-09 Jason Rumney <jasonr@gnu.org>
6768
6769 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
6770 read-only when setting modified time.
6771
67722002-03-08 Gerd Moellmann <gerd@gnu.org>
6773
6774 * xdisp.c (move_it_vertically_backward): At the end of the function,
6775 when moving forward by lines, treat terminal frames specially.
6776
6777 * keyboard.c (echo_char): Make sure to add a separator between
6778 keys even if echo_dash hasn't been called.
6779
6780 * xdisp.c: Use new string macros.
6781 (update_echo_area): Pass number of bytes to message3 instead of
6782 number of chars.
6783 (set_message_1): Don't access a string's size_byte directly.
6784 (decode_mode_spec_coding): Use number of bytes of eoltype string
6785 instead number of chars.
6786
6787 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
6788
67892002-03-08 Juanma Barranquero <lektu@terra.es>
6790
6791 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
6792 24-bit.
6793
67942002-03-06 Jason Rumney <jasonr@gnu.org>
6795
6796 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
6797
67982002-03-06 Gerd Moellmann <gerd@gnu.org>
6799
6800 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
6801 (cancel_echoing, echo_length, echo_truncate): Changed to
6802 work with new kboard definition.
6803 (echo_now): Use message3_nolog instead of message2_nolog.
6804
6805 * alloc.c (mark_kboards): Mark echo_string.
6806
6807 * keyboard.h (ECHOBUFSIZE): Removed.
6808 (struct kboard): Member echoptr removed, member echobuf renamed
6809 to echo_string.
6810
6811 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
6812 message3 instead of message2 to display the message using STRING's
6813 text properties.
6814
68152002-03-05 Andreas Schwab <schwab@suse.de>
6816
6817 * xdisp.c (hscroll_margin): Change to EMACS_INT.
6818
68192002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
6820
6821 * frame.c (default-frame-alist): Explain that setting it doesn't
6822 affect existing frames.
6823
68242002-03-05 Stefan Monnier <monnier@cs.yale.edu>
6825
6826 * indent.c (skip_invisible): Fix my brain fart.
6827
6828 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
6829
68302002-03-04 Stefan Monnier <monnier@cs.yale.edu>
6831
6832 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
6833 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
6834 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
6835 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
6836 and variables to use EMACS_INT instead of just int.
6837
6838 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
6839
68402002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
6841
6842 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
6843 environment, pass it down with corrected value.
6844
68452002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6846
6847 * lread.c (read_filtered_event): Do not call start_hourglass
6848 before returning.
6849
68502002-03-04 Juanma Barranquero <lektu@terra.es>
6851
6852 * w32term.c (x_display_and_set_cursor): Fix typo.
6853
68542002-03-03 Richard M. Stallman <rms@gnu.org>
6855
6856 * fileio.c (Fmake_temp_name): Doc fix.
6857
68582002-03-03 Gary Wong <gtw@gnu.org>
6859
6860 * termcap.c [!emacs]: Replace ospeed for building standalone
6861 libtermcap, for binary compatibility.
6862
6863 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
6864
68652002-03-03 Richard M. Stallman <rms@gnu.org>
6866
6867 * xrdb.c (file_p): Rename arg `path' to `filename'.
6868
6869 * abbrev.c (Fexpand_abbrev): Increment plist as use count
6870 only if it is an integer.
6871
6872 * xfns.c (png_load): Set screen_gamma based on f->gamma.
6873 If png_get_sRGB gives an answer, call png_set_gamma
6874 using the default image gamma value.
6875
6876 * lread.c (read1): When reading from a file, default string to
6877 multibyte only if it has some multibyte characters.
6878
6879 * print.c (print_object): Output multibyte chars 128...255
6880 using \x even if ! print_escape_multibyte.
6881
6882 * xdisp.c (display_mode_element): Move the places where
6883 bytepos, charpos, this, and lisp_string are set.
6884 Use lisp_string to set bytepos.
6885
6886 * xdisp.c (redisplay_internal):
6887 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
6888
6889 * xdisp.c (display_mode_element): Merge properties specified with
6890 :propertize onto those that come with the string.
6891
68922002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
6893
6894 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
6895 automatic-hscrolling. Users changed.
6896 <hscroll-margin>: Renamed from automatic-hscroll-margin.
6897 Users changed.
6898 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
6899
69002002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
6901
6902 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
6903
69042002-03-02 Kim F. Storm <storm@cua.dk>
6905
6906 * window.c (Fminibuffer_selected_window): New function.
6907 (syms_of_window): Defsubr it.
6908
69092002-03-01 Kim F. Storm <storm@cua.dk>
6910
6911 * window.h (struct window): New member phys_cursor_width.
6912
6913 * window.c (make_window, replace_window): Init phys_cursor_width.
6914
6915 * xterm.c (x_display_and_set_cursor): Blink box cursor using
6916 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
6917
6918 * w32term.c (x_display_and_set_cursor): Blink box cursor using
6919 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
6920
6921 * lisp.h (GCPRO6): New macro.
6922
6923 * process.c (Fopen_network_stream): Use GCPRO6.
6924
69252002-03-01 Kim F. Storm <storm@cua.dk>
6926
6927 * process.c (Qconnect, Qfailed): New variables.
6928 (syms_of_process): Intern and staticpro them.
6929 (Fprocess_status): Document connect and failed return values.
6930 [NON_BLOCKING_CONNECT]: New conditional.
6931 (connect_wait_mask, num_pending_connects): New variables.
6932 (status_message): Convert Qfailed status.
6933 (Fopen_network_stream): Added support for non-blocking connect.
6934 New optional args: filter, sentinel, non_blocking. Doc updated.
6935 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
6936 (deactivate_process): Handle pending non-blocking connect.
6937 (wait_reading_process_input): Poll for status of non-blocking
6938 connects. Exec sentinel directly when connect succeeds.
6939 (status_notify): Don't read process output if not yet connected.
6940
69412002-02-28 Kim F. Storm <storm@cua.dk>
6942
6943 * window.c: (minibuf_selected_window): Renamed from
6944 Vminibuf_selected_window. Users changed.
6945 (syms_of_window): Staticpro it.
6946
69472002-02-26 Kim F. Storm <storm@cua.dk>
6948
6949 The following changes add a new Vminibuf_selected_window variable
6950 which is similar to Vminibuf_scroll_window, but which is only set
6951 on entry to the minibuffer (from a non-minibuffer window):
6952
6953 * window.c: (Vminibuf_selected_window): New variable.
6954 (struct save_window_data): New member minibuf_selected_window.
6955 (Fset_window_configuration): Restore Vminibuf_selected_window.
6956 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
6957 Set minibuf_scroll_window member to nil if minibuf_level is 0.
6958 (compare_window_configurations): Compare minibuf_selected_window.
6959
6960 * window.h: (Vminibuf_selected_window): Declare extern.
6961
6962 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
6963 entry to minibuffer or on entry from a non-minibuffer window.
6964
6965 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
6966 Vminibuf_selected_window instead of Vminibuf_scroll_window.
6967
6968 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
6969 instead of Vminibuf_scroll_window when deciding in which window
6970 the region should be highlighted. Consequently, the region remains
6971 highlighteded even when a completion buffer is also displayed.
6972
69732002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
6974
6975 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
6976
6977 * xselect.c (Qcompound_text_with_extensions): Renamed from
6978 Qcompound_text_no_extensions.
6979 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
6980
69812002-02-26 Juanma Barranquero <lektu@terra.es>
6982
6983 * w32proc.c (syms_of_ntproc): Doc fix.
6984
69852002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6986
6987 * intervals.h: Include "dispextern.h" unconditionally.
6988
69892002-02-24 Jason Rumney <jasonr@gnu.org>
6990
6991 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
6992 and disp-table.elc.
6993 (lisp): Add emacs-lisp/backquote.elc.
6994
69952002-02-24 Kim F. Storm <storm@cua.dk>
6996
6997 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
6998 The validation of the event type was too strict as it didn't
6999 allow string events; buffer names are used in bindings for
7000 menu-bar-select-buffer (see `menu-bar-update-buffers').
7001
70022002-02-23 Kim F. Storm <storm@cua.dk>
7003
7004 The following changes rework my patch of 2002-02-06 which
7005 added command remapping by entering the commands directly into
7006 the keymaps. Now, command remapping uses an explicit `remap'
7007 prefix in the keymaps, i.e. [remap COMMAND].
7008
7009 * keymap.c (Qremap, remap_command_vector): New variables.
7010 (is_command_symbol): Removed function.
7011 (Fdefine_key): No longer accept a symbol for KEY.
7012 Added validation of [remap COMMAND] argument for KEY.
7013 The DEF is no longer required to be a symbol when remapping a command.
7014 (Fremap_command): New function to remap command through keymaps.
7015 (Flookup_key): Perform command remapping initiated by
7016 Fremap_command directly for speed.
7017 (Fkey_binding): Use Fremap_command for command remapping.
7018 (where_is_internal): Handle new command remapping representation.
7019 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
7020 staticpro them. Defsubr Fremap_command.
7021
7022 * keymap.h (Fremap_command): Declare extern.
7023 (is_command_symbol): Remove extern.
7024
7025 * keyboard.c (command_loop_1): Use Fremap_command for command
7026 remapping; now try command remapping for all symbols.
7027
70282002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
7029
7030 * coding.h (run_pre_post_conversion_on_str): Add prototype.
7031
70322002-02-23 Jason Rumney <jasonr@gnu.org>
7033
7034 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
7035 on the string before encoding it.
7036 (Fw32_get_clipboard_data): Run post-read-conversion on the string
7037 after decoding it.
7038
7039 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
7040
70412002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7042
7043 * w32term.c (enter_timestamp): Remove unused static variable to
7044 prevent warning.
7045
7046 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
7047
70482002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
7049
7050 * w16select.c (Fw16_get_clipboard_data): Fix last change.
7051
7052 * xselect.c (selection_data_to_lisp_data): Fix last change.
7053
70542002-02-22 Jason Rumney <jasonr@gnu.org>
7055
7056 * w32term.h (struct w32_output): New member menu_command_in_progress.
7057
7058 * w32menu.c (menubar_selection_callback): Free the menu and
7059 clear the menu_command_in_progress flag.
7060
7061 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
7062 (menu_free_timer): New variable.
7063 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
7064 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
7065 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
7066 menu command is in progress.
7067 <WM_COMMAND>: Set the menu_command_in_progress flag.
7068 Kill any menu_free_timer that is running.
7069
7070 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
7071 Call ExtTextOutA rather than ExtTextOut.
7072
70732002-02-22 Eli Zaretskii <eliz@gnu.org>
7074
7075 * puresize.h (BASE_PURESIZE): Increase to 755000.
7076
70772002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
7078
7079 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
7080 on the string before encoding it.
7081 (Fw16_get_clipboard_data): Run post-read-conversion on the string
7082 after decoding it.
7083
70842002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
7085
7086 Support for ICCCM Extended Segments in X selections:
7087
7088 * xselect.c <Qcompound_text_no_extensions>: New variable.
7089 (syms_of_xselect): Intern and staticpro it.
7090 (selection_data_to_lisp_data): Run post-read-conversion on decoded
7091 selection text.
7092 (lisp_data_to_selection_data): If next-selection-coding-system is
7093 compound-text-no-extensions, set the type of selection to be
7094 compound-text.
7095
7096 * xterm.h (x_encode_text): Update prototype.
7097
7098 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
7099 callers changed. If SELECTIONP is non-zero, run the
7100 pre-write-conversion function before encoding the selection text.
7101
71022002-02-21 Kim F. Storm <storm@cua.dk>
7103
7104 * frame.c (syms_of_frame): Change mouse-highlight default to t.
7105
7106 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
7107 Correct composing of language-change event.
7108
71092002-02-20 Kim F. Storm <storm@cua.dk>
7110
7111 * keyboard.c (menu_bar_items): Don't include keymap or local-map
7112 bindings at PT when building menu (the menu is not updated often
7113 enough for this to work reliable).
7114 (tool_bar_items): Likewise.
7115 (current_active_maps): Removed unused (and buggy) function.
7116
71172002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7118
7119 * xfns.c (gif_load): Use correct width and height for GIF images.
7120
71212002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
7122
7123 * floatfns.c (Fatan): Accept an optional second arg and call
7124 atan2 if passed 2 args.
7125
71262002-02-18 Jason Rumney <jasonr@gnu.org>
7127
7128 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
7129
71302002-02-17 Jason Rumney <jasonr@gnu.org>
7131
7132 * w32term.c (x_autoselect_window_p): New variable.
7133 (syms_of_w32term): DEFVAR_BOOL and initialize it.
7134 (note_mouse_movement): Use it.
7135
7136 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
7137
7138 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
7139
7140 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
7141 New variables.
7142 (syms_of_w32fns): Intern and staticpro them.
7143 (x_frame_parms) <"fullscreen">: New parameter.
7144 (x_fullscreen_move, x_set_fullscreen): New functions.
7145 (x_set_frame_parameters): Support Qfullscreen.
7146 (x_real_positions): Save x/y_pixels_diff frame params.
7147 (x_figure_window_size): Support full-screen frames.
7148 (Fx_create_frame): Default the fullscreen parameter.
7149
7150 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
7151 (x_fullscreen_adjust): New functions.
7152 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
7153 fullscreen. Call x_check_fullscreen_move, and set the
7154 want_fullscreen member of output_data.w32
7155 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
7156
7157 * w32term.h: New enum for FULLSCREEN_* constants.
7158 (struct w32_output): New members want_fullscreen, x_pixels_diff,
7159 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
7160 (x-fullscreen-adjust): New prototype.
7161
71622002-02-17 Kim F. Storm <storm@cua.dk>
7163
7164 * frame.c: (Vmouse_highlight): New variable.
7165 (syms_of_frame): DEFVAR_LISP it.
7166
7167 * frame.h: (Vmouse_highlight): Declare extern.
7168
7169 * xterm.h (struct x_display_info): Add mouse_face_hidden.
7170
7171 * xterm.c (disable_mouse_highlight): Removed variable.
7172 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
7173 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
7174 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
7175 and on after keyboard input.
7176 (x_term_init): Initialize mouse_face_hidden.
7177
7178 * msdos.h (struct display_info): Add mouse_face_hidden.
7179
7180 * msdos.c (disable_mouse_highlight): Removed variable.
7181 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
7182 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
7183 (internal_terminal_init): Initialize mouse_face_hidden.
7184 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
7185 and on after keyboard input.
7186
7187 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
7188
7189 * w32term.c (disable_mouse_highlight): Removed variable.
7190 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
7191 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
7192 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
7193 and on after keyboard input.
7194 (w32_initialize_display_info): Initialize mouse_face_hidden.
7195
71962002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
7197
7198 * msdos.c (last_mouse_window): New variable.
7199 (dos_rawgetc): Fix last change--if the mouse is in the same window
7200 as recorded in last_mouse_window, don't select this window.
7201
7202 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
7203
7204 * msdos.c (x_autoselect_window_p): New variable.
7205 (syms_of_msdos): Defvar it.
7206 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
7207 which the last mouse movement occured, unless it is already selected.
7208
7209 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
7210 New variables.
7211 (syms_of_xdisp): DEVFAR them.
7212 (hscroll_window_tree): Use automatic_hscroll_margin and
7213 Vautomatic_hscroll_step to compute the amount of window scrolling.
7214
72152002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7216
7217 * xterm.c (x-autoselect-window): New variable.
7218 (note_mouse_movement): Use it.
7219
7220 * keyboard.c: Do not include "systime.h" twice.
7221
72222002-02-15 Andreas Schwab <schwab@suse.de>
7223
7224 * puresize.h (BASE_PURESIZE): Increase to 9/5.
7225
7226 * alloc.c (NSTATICS): Increase to 1280.
7227
72282002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
7229
7230 * alloc.c (NSTATICS): Bump to 1026.
7231
7232 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
7233 (Vx_super_keysym): New variables.
7234 (syms_of_xterm): DEFVAR_LISP them.
7235 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
7236 variables to determine which keys to use for the various modifiers.
7237
72382002-02-13 Kim F. Storm <storm@cua.dk>
7239
7240 * window.c: (Vmode_line_in_non_selected_windows): Removed.
7241 (mode_line_in_non_selected_windows): New variable.
7242 (syms_of_window): DEFVAR_BOOL it.
7243
7244 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
7245 Use mode_line_in_non_selected_windows.
7246 (mode_line_in_non_selected_windows): Declare extern.
7247 (Vmode_line_in_non_selected_windows): Removed extern.
7248
72492002-02-13 Richard M. Stallman <rms@gnu.org>
7250
7251 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
7252 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
7253 (Fclear_this_command_keys): Doc fixes.
7254
7255 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
7256 (update_face_from_frame_parameter): Increment face_change_count
7257 and windows_or_buffers_changed to force redisplay using changed faces.
7258
7259 * xdisp.c (QCpropertize): New variable.
7260 (mode_line_proptrans_alist): New variable.
7261 (display_mode_element): New arg PROPS; all calls changed.
7262 Implement this, for strings.
7263 Handle literal output of strings by sharing the
7264 main-line code for strings, using local var `literal'.
7265 Handle :propertize feature.
7266 (syms_of_xdisp): Initialze and staticpro QCpropertize and
7267 mode_line_proptrans_alist.
7268
72692002-02-11 Kim F. Storm <storm@cua.dk>
7270
7271 * window.c: (Vmode_line_in_non_selected_windows): New variable.
7272 (syms_of_window): DEFVAR_LISP it.
7273
7274 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
7275 (CURRENT_MODE_LINE_FACE_ID): Use it.
7276 (Vmode_line_in_non_selected_windows): Declare extern.
7277
7278 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
7279 to get mode line face.
7280
72812002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
7282
7283 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
7284 variables; cus-start.el doesn't need them anymore.
7285
72862002-02-09 Kim F. Storm <storm@cua.dk>
7287
7288 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
7289 reduction. This fixes a display problem where stray newlines were
7290 inserted in the window (corrected by C-l). Clarified code (IMHO).
7291
72922002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
7293
7294 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
7295
7296 * xdisp.c (display_mode_lines): Fix last change.
7297
72982002-02-09 Jason Rumney <jasonr@gnu.org>
7299
7300 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
7301 match each other.
7302 (w32_load_system_font): Prevent Cleartype fonts from loading.
7303 (Fx_show_tip): Ensure tip frames are above other topmost windows.
7304
73052002-02-09 Kim F. Storm <storm@cua.dk>
7306
7307 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
7308 (CURRENT_MODE_LINE_HEIGHT): Use it.
7309 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
7310
7311 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
7312 (pos_visible_p, handle_face_prop): Likewise.
7313 (display_mode_lines): Likewise, but for the real selected window.
7314 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
7315
7316 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
7317 in non-selected windows.
7318 (realize_basic_faces): Realize it.
7319 (syms_of_term): Intern and staticpro it.
7320
73212002-02-08 Kim F. Storm <storm@cua.dk>
7322
7323 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
7324 Changed mail addresses to emacs-devel@gnu.org.
7325
73262002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
7327
7328 * fileio.c (Fsubstitute_in_file_name): If the file name includes
7329 ~user, and there's no such user, don't discard everything before ~user.
7330
7331 * floatfns.c (Fround): Doc fix.
7332
73332002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7334
7335 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
7336
73372002-02-07 Stefan Monnier <monnier@cs.yale.edu>
7338
7339 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
7340
73412002-02-07 Kim F. Storm <storm@cua.dk>
7342
7343 * keymap.c (where_is_internal): Only check whether definition is
7344 remapped if it fulfills is_command_symbol.
7345
73462002-02-07 Andreas Schwab <schwab@suse.de>
7347
7348 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
7349
7350 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
7351
73522002-02-06 Kim F. Storm <storm@cua.dk>
7353
7354 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
7355 defining command remapping. Doc updated.
7356 (Flookup_key): Remap command through keymap if KEY is a symbol.
7357 (is_command_symbol): New function.
7358 (Fkey_binding): Use it. New optional argument NO-REMAP.
7359 Doc updated. Callers changed. Perform command remapping via
7360 recursive call unless that arg is non-nil.
7361 (where_is_internal): New argument no_remap. Callers changed.
7362 Call recursively to find original key bindings for a remapped
7363 comand unless that arg is non-nil.
7364 (Fwhere_is_internal): New optional argument NO-REMAP.
7365 Doc updated. Callers changed. Pass arg to where_is_internal.
7366
7367 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
7368 (is_command_symbol): Added prototype.
7369
7370 * keyboard.c (Vthis_original_command): New variable.
7371 (syms_of_keyboard): DEFVAR_LISP it.
7372 (command_loop_1): Set it, and perform command remapping.
7373
73742002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7375
7376 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
7377
73782002-02-06 Jason Rumney <jasonr@gnu.org>
7379
7380 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
7381
73822002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
7383
7384 * charset.c (get_charset_id): Use if-else instead of ?:.
7385
73862002-02-06 Richard M. Stallman <rms@gnu.org>
7387
7388 * filelock.c (S_ISLNK): Define if not defined.
7389
73902002-02-03 Richard M. Stallman <rms@gnu.org>
7391
7392 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
7393
7394 * lread.c (read1): Redesign strategy for force_multibyte and
7395 force_singlebyte. Now is_multibyte records whether read_buffer
7396 is multibyte. Encountering any multibyte character makes it so.
7397
73982002-02-02 Stefan Monnier <monnier@cs.yale.edu>
7399
7400 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
7401 with the same sequence, map that sequence to f10 rather than f0.
7402
74032002-02-03 Andreas Schwab <schwab@suse.de>
7404
7405 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
7406 latter never being defined on GNU/Linux.
7407
74082002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
7409
7410 * xfaces.c (realize_default_face): Don't set the weight and slant of
7411 the default face to Qnormal, unless these attributes are unspecified.
7412
74132002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7414
7415 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
7416 Call cancel_hourglass unconditionally.
7417
7418 * eval.c (Fsignal): Remove duplicated declaration of
7419 the variable `display_hourglass_p'.
7420
74212002-01-31 Richard M. Stallman <rms@gnu.org>
7422
7423 * editfns.c (region_limit): Nicer error message.
7424
7425 * coding.c (decode_composition_emacs_mule):
7426 Give up if NCOMPONENT gets too large to index `component'.
7427
7428 * callint.c (check_mark): New arg to specify clearer error message.
7429 Callers changed.
7430
74312002-01-27 Richard M. Stallman <rms@gnu.org>
7432
7433 * minibuf.c (Fcompleting_read): Doc fix.
7434
74352002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7436
7437 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
7438 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
7439 Fix doc-strings.
7440
74412002-01-26 Richard M. Stallman <rms@gnu.org>
7442
7443 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
7444
7445 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
7446 and scroll_up_aggressively.
7447
74482002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7449
7450 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
7451
74522002-01-25 Stefan Monnier <monnier@cs.yale.edu>
7453
7454 * textprop.c (Fnext_property_change, Fnext_single_property_change)
7455 (Fprevious_property_change, Fprevious_single_property_change):
7456 Stay within the narrowed-buffer boundaries.
7457
74582002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
7459
7460 * term.c (Ftty_display_color_cells): New function.
7461 (syms_of_term): Defsubr it.
7462 (Ftty_display_color_cells, Ftty_display_color_p): Change the
7463 argument name to DISPLAY. Doc fix.
7464
7465 * dispextern.h: Add prototype for set_tty_color_mode and
7466 tty_setup_colors.
7467
74682002-01-24 Jason Rumney <jasonr@gnu.org>
7469
7470 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
7471 If region left to draw is not what was expected, mark the frame as
7472 garbaged.
7473
7474 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
7475 Combine the regions returned by BeginPaint and GetUpdateRect.
7476
74772002-01-23 Jason Rumney <jasonr@gnu.org>
7478
7479 * w32term.c (x_update_window_begin): Only hide caret if
7480 w32_use_visible_system_caret is set.
7481 (x_update_window_end): Only show caret if
7482 w32_use_visible_system_caret is set.
7483 (syms_of_w32term): Handle SystemParametersInfo call failing.
7484
7485 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
7486
74872002-01-22 Richard M. Stallman <rms@gnu.org>
7488
7489 * unexelf.c (unexec): Define n so as to cause compilation error
7490 for the code where people have often written n instead of nn.
7491
7492 * .gdbinit (hookpost-run): Defined.
7493
74942002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7495
7496 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
7497
74982002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7499
7500 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
7501 if fullscreen is being set.
7502
75032002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7504
7505 * minibuf.c (Fminibuffer_contents)
7506 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
7507 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
7508
75092002-01-21 Richard M. Stallman <rms@gnu.org>
7510
7511 * window.c (check_frame_size): Fix minimum height calculation.
7512
75132002-01-20 Ken Raeburn <raeburn@gnu.org>
7514
7515 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
7516 height before comparison.
7517 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
7518
75192002-01-20 Jason Rumney <jasonr@gnu.org>
7520
7521 * w32term.c (w32_system_caret_width): Remove.
7522 (w32_use_visible_system_caret): New user flag.
7523 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
7524 Windows reports a screen reader running.
7525 (x_update_window_begin): Hide the system caret.
7526 (x_update_window_end): Show the system caret.
7527 (x_display_and_set_cursor): Don't draw a cursor when
7528 w32_use_visible_system_caret is set. Do not adjust width.
7529
7530 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
7531 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
7532 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
7533 the user requests it. Use system default width when creating.
7534 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
7535
7536 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
7537 New window messages.
7538
75392002-01-20 Richard M. Stallman <rms@gnu.org>
7540
7541 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
7542
75432002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7544
7545 * doprnt.c (doprnt1): Fix typos in error call.
7546
75472002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
7548
7549 * unexelf.c (unexec) [__sgi]: Support the .got sections.
7550
75512002-01-20 Jason Rumney <jasonr@gnu.org>
7552
7553 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
7554 that Windows returns. If a double check fails, try to guess how
7555 ExtTextOut is going to act.
7556
7557 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
7558 in place of stricmp.
7559 (w32_list_synthesized_fonts): Removed.
7560 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
7561 (struct enumfont_t): New element; list.
7562 (enum_font_cb2): List all style and charset variations of a font.
7563 (Fw32_select_font): New optional argument; include_proportional.
7564 Exclude vertical fonts. Exclude proportional fonts unless
7565 include_proportional is non-nil.
7566 (w32_enable_synthesized_fonts): Change to a boolean.
7567 (Fw32_send_sys_command): Doc fix.
7568
75692002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7570
7571 * dispnew.c (update_frame): Move the variable `tem' to the block
7572 where it is used.
7573
75742002-01-19 Jason Rumney <jasonr@gnu.org>
7575
7576 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
7577 call to face-set-after-frame-default.
7578
75792002-01-18 Richard M. Stallman <rms@gnu.org>
7580
7581 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
7582 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
7583
75842002-01-17 Richard M. Stallman <rms@gnu.org>
7585
7586 * window.c (enlarge_window): When exceeding size of parent,
7587 directly delete all the siblings instead of trying to resize it.
7588
75892002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7590
7591 * term.c (set_tty_color_mode): Remove unused variable `tem'.
7592
75932002-01-16 Henrik Enberg <henrik@enberg.org>
7594
7595 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
7596
75972002-01-16 Kim F. Storm <storm@cua.dk>
7598
7599 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
7600 is invisible. This can happen if cursor is on top line of a
7601 window, and we switch to a buffer with a header line.
7602
7603 * w32term.c (x_erase_phys_cursor): Ditto.
7604
76052002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7606
7607 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
7608 `dont_resize' only when used.
7609
7610 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
7611
76122002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
7613
7614 * xdisp.c (display_mode_element): When computing charpos, depend
7615 on multibyteness of elt, not the text in field.
7616
76172002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7618
7619 * buffer.c (Fkill_all_local_variables):
7620 Increment `update_mode_lines' only once.
7621
76222002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7623
7624 * lisp.h (adjust_after_replace_noundo)
7625 (Fupdate_coding_systems_internal): Add prototypes.
7626
7627 * sound.c (Fplay_sound): Initialize header_size also for :data case.
7628
76292002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
7630
7631 Support for the --color command-line argument and tty-color-mode
7632 frame parameter:
7633
7634 * term.c (tty_default_color_capabilities, tty_setup_colors)
7635 (set_tty_color_mode): New functions.
7636 (term_init): Call tty_default_color_capabilities.
7637 (Qtty_color_mode_alist): New variable.
7638 (syms_of_term): Intern and staticpro it.
7639
7640 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
7641 frames.
7642 (do_switch_frame): For termcap frames, switch the tty
7643 color mode as specified by the frame's parameters.
7644 (Qtty_color_mode): New variable.
7645 (syms_of_frame): Intern and staticpro it.
7646
7647 * emacs.c (USAGE2): Add the --color option.
7648 (standard_args): Ditto.
7649
76502002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7651
7652 * xterm.h (struct x_output): New members want_fullscreen,
7653 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
7654 y_pixels_outer_diff.
7655 New enum for FULLSCREEN_* constants.
7656 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
7657 is NULL.
7658 (x_fullscreen_adjust): Add prototype.
7659
7660 * emacs.c (USAGE2): Add the new full-screen arguments.
7661 (standard_args): Ditto.
7662
7663 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
7664 New variables.
7665 (syms_of_xfns): Intern and staticpro them.
7666 (x_frame_parms) <"fullscreen">: New parameter.
7667 (x_fullscreen_move, x_set_fullscreen): New functions.
7668 (x_set_frame_parameters): Support for Qfullscreen.
7669 (x_real_positions): More accurate computation of the frame position.
7670 (x_figure_window_size): Support full-screen frames.
7671 (Fx_create_frame): Default the fullscreen parameter.
7672
7673 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
7674 (XTread_socket) <Expose>: Call x_check_fullscreen.
7675 <ConfigureNotify>: Don't resize to fullscreen.
7676 Call x_check_fullscreen_move, and set the want_fullscreen member of
7677 output_data.x.
7678
76792002-01-13 Jason Rumney <jasonr@gnu.org>
7680
7681 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
7682 for mice with more than 3 buttons.
7683
7684 * w32term.c (parse_button): New parameter xbutton. Callers changed.
7685 (w32_read_socket): Handle new "XBUTTON" messages.
7686
7687 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
7688 (syms_of_w32fns): DEFVAR_BOOL it.
7689 (w32_wnd_proc): Handle new "XBUTTON" messages.
7690
76912002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7692
7693 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
7694
76952002-01-13 Andreas Schwab <schwab@suse.de>
7696
7697 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
7698
76992002-01-12 Andreas Schwab <schwab@suse.de>
7700
7701 * .gdbinit (xbuffer): Remove address operator since data is now a
7702 pointer.
7703
77042002-01-11 Richard M. Stallman <rms@gnu.org>
7705
7706 * insdel.c (adjust_after_replace_noundo): New function.
7707
7708 * coding.c (code_convert_region): Don't copy old text if undo disabled.
7709
77102002-01-09 Jason Rumney <jasonr@gnu.org>
7711
7712 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
7713 when checking for multiple frames.
7714
77152002-01-08 Richard M. Stallman <rms@gnu.org>
7716
7717 * window.c (delete_window): Rewrite the code for changing the
7718 selected window to handle the case where WINDOW is not a leaf.
7719
77202002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
7721
7722 * process.c (send_process): Set src_multibyte to 1 after the call
7723 top setup_coding_system, not before the call.
7724
77252002-01-07 Jason Rumney <jasonr@gnu.org>
7726
7727 * xmenu.c (set_frame_menubar, xmenu_show):
7728 (xdialog_show): Initialize wv->help to Qnil.
7729
7730 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
7731 (w32_dialog_show): Initialize wv->help to Qnil.
7732
77332002-01-06 Jason Rumney <jasonr@gnu.org>
7734
7735 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
7736
7737 * w32menu.c (w32_menu_display_help): Revert last change.
7738
7739 * xmenu.c (menu_highlight_callback): Revert last change.
7740
77412002-01-06 Andreas Schwab <schwab@suse.de>
7742
7743 * insdel.c (make_gap_larger): Make sure buffer size does not
7744 overflow range of int.
7745
77462002-01-05 Jason Rumney <jasonr@gnu.org>
7747
7748 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
7749 OVERLAPS_P.
7750
7751 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
7752
7753 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
7754 to the left or to the right of the pointer, put it against
7755 the left screen edge.
7756 (x_frame_parms): Add missing braces around initializer.
7757
7758 * w32term.c (x_setup_relief_colors): Don't compute an image's
7759 background color if it doesn't have a Pixmap.
7760 (notice_overwritten_cursor): Don't depend on
7761 output_cursor and updated_area. Compare pixel coordinates with
7762 window's cursor pixel coordinates.
7763 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
7764 Call notice_overwritten_cursor with new arg list.
7765 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
7766 unconditionally.
7767 (x_draw_image_relief): Use predefined macro instead of
7768 constant when the value of `tool_bar_button_relief' is negative.
7769
7770 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7771
77722002-01-04 Richard M. Stallman <rms@gnu.org>
7773
7774 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
7775
77762002-01-03 Richard M. Stallman <rms@gnu.org>
7777
7778 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
7779 (Fkey_binding): Try the `keymap' property map first.
7780 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
7781 minor mode bindings.
7782
77832002-01-03 Kim F. Storm <storm@cua.dk>
7784
7785 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
7786
77872002-01-02 Richard M. Stallman <rms@gnu.org>
7788
7789 * keyboard.c (read_key_sequence): Handle the keymap property
7790 before minor mode maps.
7791
7792 * editfns.c (Fformat): Update thissize from field_width
7793 based on the actual width, in the string case.
7794
77952002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7796
7797 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
7798 when used as truth value to prevent gcc warnings.
7799
7800 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
7801 * w32proc.c: Include <config.h>.
7802
78032002-01-01 Andreas Schwab <schwab@suse.de>
7804
7805 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
7806 not EMACS_INT, to make them compatible with DEFVAR_INT.
7807 * lisp.h (max_specpdl_size): Adjust declaration.
7808
78092002-01-01 Richard M. Stallman <rms@gnu.org>
7810
7811 * print.c (print_object): Test print_escape_nonascii only for
7812 unibyte strings.
7813 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
7814 when outputting to a multibyte buffer.
7815
78162001-12-29 Richard M. Stallman <rms@gnu.org>
7817
7818 * print.c (print_object): In multibyte string, use hex escapes.
7819 Use octal only for unibyte strings.
7820 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
7821
7822 * lread.c (read_escape): New arg BYTEREP for reporting whether
7823 escape forces unibyte or multibyte.
7824 (read1): When reading a string, take note of that info.
7825
78262001-12-29 Ken Raeburn <raeburn@gnu.org>
7827
7828 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
7829 comparison to test lisp value returned by Fget.
7830
78312001-12-29 Richard M. Stallman <rms@gnu.org>
7832
7833 * lisp.h (max_specpdl_size): Add declaration.
7834
7835 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
7836
7837 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
7838 Handle modifier bits. Correct typo in error message.
7839
78402001-12-28 Richard M. Stallman <rms@gnu.org>
7841
7842 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
7843 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
7844 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
7845 Update calls to Fdefine_abbrev.
7846 (write_abbrev): Update for changed data format.
7847 Don't list "system" abbrevs.
7848 (Fexpand_abbrev): Update use count with new data format.
7849 (describe_abbrev): Update for changed data format.
7850 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
7851
7852 * config.in (HAVE_MBSINIT): Add #undef.
7853
7854 * strftime.c (mbsinit): Define as no-op if not available.
7855
7856 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
7857 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
7858
7859 * keymap.c (Flookup_key): Error message if key has wrong data type.
7860 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
7861 (exclude_key): New variable.
7862
78632001-12-28 Gerd Moellmann <gerd@gnu.org>
7864
7865 * xterm.c (x_setup_relief_colors): Don't compute an image's
7866 background color if it doesn't have a Pixmap.
7867
7868 * xterm.c (notice_overwritten_cursor): Don't depend on
7869 output_cursor and updated_area. Compare pixel coordinates with
7870 window's cursor pixel coordinates.
7871 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
7872 Call notice_overwritten_cursor with new arg list.
7873 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
7874 unconditionally.
7875
7876 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
7877 height of the cursor line to the amount to scroll.
7878
78792001-12-27 Richard M. Stallman <rms@gnu.org>
7880
7881 * intervals.c (set_point_both): The position after an invisible,
7882 intangible character is not an acceptable stopping point.
7883
78842001-12-27 Ken Raeburn <raeburn@gnu.org>
7885
7886 * window.c (enlarge_window): In new preserve_before code, convert
7887 CURBEG from lisp object to integer before doing arithmetic.
7888
78892001-12-27 Richard M. Stallman <rms@gnu.org>
7890
7891 * bytecode.c (Fbyte_code): Undo previous change.
7892
78932001-12-26 Kim F. Storm <storm@cua.dk>
7894
7895 * keyboard.c (record_char): Ignore duplicate help-echo events only
7896 separated by mouse-movement. When tracking mouse, only record
7897 first and last mouse-movement event in same window.
7898 Don't record mouse-movement events in keyboard macros.
7899
79002001-12-25 Richard M. Stallman <rms@gnu.org>
7901
7902 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
7903 (Fenlarge_window): New arg PRESERVE_BEFORE.
7904
7905 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
7906 instead of Fstring_as_unibyte.
7907
79082001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7909
7910 The following changes remove mocklisp support:
7911
7912 * mocklisp.h, mocklisp.c: Files removed.
7913
7914 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
7915 `Qmocklisp' and `Qmocklisp_arguments'.
7916 Remove prototype of syms_of_mocklisp.
7917
7918 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
7919
7920 * callint.c: Do not include mocklisp.h.
7921 (Fcall_interactively): Do not test for mocklisp case.
7922
7923 * eval.c: Remove variables `Qmocklisp_arguments',
7924 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
7925 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
7926 Do not test for mocklisp case.
7927 (Fwhile): Remove unused variable `tem'.
7928 (syms_of_eval): Remove variable `moclisp-arguments'.
7929
7930 * data.c (wrong_type_argument): Remove mocklisp case.
7931
7932 * doc.c (Fdocumentation): Remove mocklisp case.
7933
7934 * emacs.c (main): Do not call syms_of_mocklisp.
7935
79362001-12-21 Richard M. Stallman <rms@gnu.org>
7937
7938 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
7939 to the left or to the right of the pointer, put it against
7940 the left screen edge.
7941
79422001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
7943
7944 * Makefile.in (distclean): Remove .gdbinit if we are building
7945 outside the source tree.
7946
79472001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
7948
7949 * w32.c (emacs_root_dir): New function.
7950
7951 * msdos.c (emacs_root_dir): New function.
7952
7953 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
7954 of the current drive as the fallback for default_directory.
7955
7956 * dired.c (file_name_completion): Run the elements of
7957 completion-ignored-extensions through ENCODE_FILE.
7958
7959 * lisp.h (scmp): Remove prototype, since it's now a static
7960 function private to dired.c.
7961
79622001-12-18 Richard M. Stallman <rms@gnu.org>
7963
7964 * dired.c (scmp): Function moved from minibuf.c.
7965 Delete multibyte handling--used only on encoded strings.
7966
7967 * minibuf.c (scmp): Function moved to dired.c.
7968
7969 * fns.c (merge): Add QUIT call.
7970
79712001-12-18 Dave Love <fx@gnu.org>
7972
7973 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
7974 language/georgian.el.
7975
79762001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
7977
7978 * Makefile.in (lisp, shortlisp): Synchronize with changes to
7979 lisp/Makefile.in:DONTCOMPILE.
7980
79812001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7982
7983 * xdisp.c (window_box_height): Do not return negative values.
7984 From Gerd Moellmann <gerd@gnu.org>.
7985
7986 * keyboard.c (head_table): Add missing braces around initializer.
7987
7988 * term.c (keys): Likewise.
7989
7990 * xfns.c (x_frame_parms, visual_classes): Likewise.
7991
79922001-12-17 Sam Steingold <sds@gnu.org>
7993
7994 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
7995 patch (COMPOSING_P, not COMPOSING).
7996
79972001-12-17 Richard M. Stallman <rms@gnu.org>
7998
7999 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
8000
8001 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
8002 before calling decode_coding.
8003
8004 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
8005
8006 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
8007 instead of only for COMPOSITION_DISABLED.
8008
80092001-12-16 Richard M. Stallman <rms@gnu.org>
8010
8011 * alloc.c (pure_alloc): After overflow, allocate just a small block.
8012
8013 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
8014
8015 * buffer.h (struct buffer): New field `display_error_modiff'.
8016 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
8017
8018 * window.c (Frecenter): Clear display_error_modiff field.
8019
8020 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
8021 Call redisplay_window, but not if display_error_modiff field says no.
8022 (redisplay_window_error): New function.
8023 (displayed_buffer): New variable.
8024 (redisplay_internal, redisplay_windows): Call the new functions
8025 instead of redisplay_window directly.
8026
80272001-12-15 Richard M. Stallman <rms@gnu.org>
8028
8029 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
8030
80312001-12-14 Andrew Innes <andrewi@gnu.org>
8032
8033 * makefile.w32-in (EMACSLOADPATH): Define.
8034 ($(EMACS)): Run `list-load-path-shadows' after dumping emacs.
8035 (bootstrap-temacs): Remove dependency on bootstrap-clean.
8036
80372001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
8038
8039 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
8040 parameter have a numeric value all the time.
8041
8042 * w32fns.c (x_report_frame_params): Likewise.
8043
80442001-12-12 Richard M. Stallman <rms@gnu.org>
8045
8046 * fileio.c (Fwrite_region): Doc fix.
8047
8048 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
8049 (redisplay_internal): Call clear_image_cache only for window terminals.
8050
80512001-12-12 Gerd Moellmann <gerd@gnu.org>
8052
8053 * xdisp.c (move_it_vertically_backward): Change heuristic
8054 for the case that we didn't move far enough initially.
8055
8056 * window.c (Frecenter): Simplify computation in the case of window
8057 system frames and ARG < 0; use window_box_height.
8058
80592001-12-11 Richard M. Stallman <rms@gnu.org>
8060
8061 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
8062 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
8063
80642001-12-11 Andrew Innes <andrewi@gnu.org>
8065
8066 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
8067 arg is negative.
8068
80692001-12-11 Richard M. Stallman <rms@gnu.org>
8070
8071 * m/hp800.h: Split the __hpux conditional into the parts
8072 that are right for GNU/Linux too and the parts that are not.
8073 Use the former if GNU_LINUX.
8074 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
8075
8076 * s/gnu-linux.h (GNU_LINUX): Defined.
8077
80782001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8079
8080 * macros.c, msdos.c, w16select.c: Change doc-string comments to
8081 `new style' [w/`doc:' keyword].
8082
80832001-12-10 Jason Rumney <jasonr@gnu.org>
8084
8085 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
8086 before using.
8087
80882001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8089
8090 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
8091 keyword].
8092
80932001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
8094
8095 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
8096
8097 * s/hpux10.h (srand48): Don't undefine.
8098
80992001-12-09 Jason Rumney <jasonr@gnu.org>
8100
8101 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
8102 Add comment to explain where the struct came from.
8103 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
8104 (add_menu_item): Process pop-up menus first to avoid memory leak.
8105 (add_menu_item, w32_menu_display_help): Use `help' field as
8106 Lisp_Object.
8107 (w32_free_submenu_strings): Only free owner-drawn strings.
8108
81092001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8110
8111 * COPYING: Moved back.
8112
8113 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
8114 Add parentheses around && within ||.
8115
8116 * indent.c (compute_motion): Likewise.
8117
8118 * intervals.c (merge_properties_sticky): Likewise.
8119
8120 * coding.c (setup_coding_system, shrink_encoding_region)
8121 (Fdecode_sjis_char): Likewise.
8122
81232001-12-07 Andreas Schwab <schwab@suse.de>
8124
8125 * xdisp.c (display_mode_element): Don't read past end of string if
8126 it ends with '%'.
8127
8128 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
8129 can hold.
8130
8131 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
8132 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
8133 type changed to Lisp_Object.
8134 (syms_of_data): DEFVAR_LISP them.
8135
81362001-12-07 Richard M. Stallman <rms@gnu.org>
8137
8138 * callproc.c (init_callproc): Set Vdata_directory based on the source
8139 location whenever Emacs was run uninstalled.
8140
81412001-12-06 Paul Eggert <eggert@twinsun.com>
8142
8143 * config.in (HAVE_WORKING_VFORK): New #undefs.
8144 * process.c (create_process):
8145 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
8146 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
8147 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
8148 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
8149 * m/intel386.h (HAVE_VFORK): Likewise.
8150 * m/mips-siemens.h (HAVE_VFORK): Likewise.
8151 * m/mips.h (HAVE_VFORK): Likewise.
8152 * s/freebsd.h (vfork): Remove #define.
8153 * s/lynxos.h (HAVE_VFORK): Remove #undef.
8154 * s/usg5-4-2.h: Fix comment about vfork.
8155
81562001-12-06 Richard M. Stallman <rms@gnu.org>
8157
8158 * s/hpux10.h (random): Add undef.
8159 (HAVE_RANDOM): Define it just once.
8160
81612001-12-06 Stefan Monnier <monnier@cs.yale.edu>
8162
8163 * eval.c: Undo last change: the standard syntax is not wanted.
8164
81652001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
8166
8167 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
8168 scroll bars of the frame before deleting the frame itself. If the
8169 frame has a widget, delete the frame with XtDestroyWidget, and do
8170 not call XDestroyWindow before that.
8171
81722001-12-06 Kim F. Storm <storm@cua.dk>
8173
8174 * xfns.c (x_report_frame_params): Return actual fringe widths.
8175
8176 * w32fns.c (x_report_frame_params): Return actual fringe widths.
8177
81782001-12-05 Andrew Innes <andrewi@gnu.org>
8179
8180 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
8181 excessively large.
8182
8183 * insdel.c (make_gap_larger): New function.
8184 (make_gap_smaller): New function.
8185 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
8186 Call make_gap_smaller if arg is negative.
8187
81882001-12-04 Stefan Monnier <monnier@cs.yale.edu>
8189
8190 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
8191 Pass a dummy argument when calling interrupt_signal.
8192 (parse_menu_item): Mark disabled items before checking for empty def.
8193 (read_char_minibuf_menu_prompt): Make safety more visible.
8194 (read_key_sequence): Add a `first_unbound' variable.
8195 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
8196 unbound prefix as soon as we can detect it.
8197
8198 * doc.c (Fsnarf_documentation): Add prototype.
8199 (get_doc_string): Handle negative arguments.
8200 (Fdocumentation): Use AREF and ASIZE.
8201 Move the calls to get_doc_string to a single place.
8202 Don't confuse an interactive-spec for a docstring reference.
8203 (Fdocumentation_property): Take advantage of the fact that
8204 get_doc_string now ignores the sign of the docstring position.
8205
8206 * eval.c: Use standard syntax for usage in docstrings.
8207
82082001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8209
8210 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief` an option.
8211
82122001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8213
8214 * xterm.c (x_draw_image_relief): Use predefined macro instead of
8215 constant when the value of `tool_bar_button_relief' is negative.
8216
82172001-12-02 Richard M. Stallman <rms@gnu.org>
8218
8219 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
8220 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
8221
8222 * fileio.c (read_non_regular): Delete Fsignal call.
8223
82242001-12-01 Stefan Monnier <monnier@cs.yale.edu>
8225
8226 * lisp.h (run_hook_list_with_args): Undo last change.
8227
82282001-12-01 Gerd Moellmann <gerd@gnu.org>
8229
8230 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
8231
82322001-12-01 Jason Rumney <jasonr@gnu.org>
8233
8234 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
8235
8236 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
8237 [!WM_MOUSELEAVE]: Define.
8238
8239 * w32menu.c (current_popup_menu, get_menu_item_info):
8240 (set_menu_item_info): New vars.
8241 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
8242 (w32_menu_show): Set current_popup_menu.
8243 (add_menu_item): Allocate new strings for owner-drawn menu items
8244 and help strings.
8245 Use owner-draw for disabled menu items again.
8246 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
8247 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
8248
8249 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
8250 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
8251 <WM_EXITMENULOOP>: Free menu strings.
8252 <WM_MOUSELEAVE>: Stop tracking mouse.
8253 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
8254
8255 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
8256 and mouse face.
8257
82582001-12-01 Kim F. Storm <storm@cua.dk>
8259
8260 The following changes add left-fringe and right-fringe
8261 frame parameters to adjust fringe widths, or remove one or
8262 both fringes.
8263
8264 * frame.h (struct frame): Remove trunc_area_pixel_width and
8265 trunc_area_cols fields.
8266 (Qleft_fringe, Qright_fringe): Declare.
8267 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
8268
8269 * frame.c (Qleft_fringe, Qright_fringe): New vars.
8270 (syms_of_frame): Initialize them.
8271
8272 * window.c (coordinates_in_window): Handle separate left and right
8273 fringe widths.
8274
8275 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
8276 and fringe_cols fields.
8277 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
8278 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
8279 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
8280 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
8281 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
8282 (x_compute_fringe_widths): Add prototype.
8283
8284 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
8285 fill fringe evenly with small dashes.
8286 (x_draw_fringe_bitmap): Clear background if necessary. Align and
8287 clip the new ZV bitmap to avoid jitter between rows.
8288 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
8289 background. Don't draw fringe bitmaps if fringe width is zero.
8290 (x_compute_fringe_widths): New function.
8291 (x_new_font, x_set_window_size_1): Use it.
8292
8293 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
8294 (x_set_frame_parameters): Process `font' parameter before other
8295 parameters as fringe widths depend on it.
8296 (x_set_fringe_width): New function.
8297 (x_figure_window_size): Use x_compute_fringe_widths.
8298 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
8299 parameters.
8300
8301 * widget.c (set_frame_size): Use x_compute_fringe_widths.
8302 (EmacsFrameSetCharSize): Ditto.
8303
8304 * w32term.h: Merged changes from xterm.h.
8305 * w32term.c: Merged changes from xterm.c.
8306 * w32fns.c: Merged changes from xfns.c.
8307
83082001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8309
8310 * COPYING: Removed.
8311
83122001-11-29 Dave Love <fx@gnu.org>
8313
8314 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
8315 extra extra slot.
8316 (detect_coding_mask): Fix call of detect_coding_iso2022.
8317
83182001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8319
8320 * fileio.c (file-name-coding-system)
8321 (default-file-name-coding-system): Doc fix (links to referenced
8322 variables added).
8323
83242001-11-28 Stefan Monnier <monnier@cs.yale.edu>
8325
8326 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
8327 Add dummy uses of gcproN variables.
8328
8329 * category.c (describe_category, describe_category_1)
8330 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
8331 (syms_of_category): Don't defsubr Sdescribe_categories.
8332
83332001-11-28 Richard M. Stallman <rms@gnu.org>
8334
8335 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
8336
8337 * Makefile.in (lispdir): New variable, referring to build dir.
8338 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
8339
83402001-11-28 Andrew Innes <andrewi@gnu.org>
8341
8342 * w32menu.c (w32_menu_display_help): Actually add the new argument
8343 OWNER.
8344
83452001-11-28 Jason Rumney <jasonr@gnu.org>
8346
8347 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
8348 menu items. From David Ponce <dponce@wanadoo.fr>.
8349 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
8350 conditionally.
8351 (w32_menu_display_help): New argument OWNER. Rewritten to store a
8352 help event in the owner frame's keyboard buffer.
8353
8354 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
8355 (Fx_show_tip): Don't subtract last width from row width.
8356
8357 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
8358 (w32_read_socket): Use EQ to compare frames.
8359
83602001-11-28 Gerd Moellmann <gerd@gnu.org>
8361
8362 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
8363 OVERLAPS_P.
8364
83652001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8366
8367 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
8368 `gcpro3' and `gcpro4'.
8369
8370 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
8371
83722001-11-28 Stefan Monnier <monnier@cs.yale.edu>
8373
8374 * ccl.c: Use AREF and ASIZE.
8375
83762001-11-27 Stefan Monnier <monnier@cs.yale.edu>
8377
8378 * lisp.h (run_hook_list_with_args): Remove.
8379 (LIST_END_P): Fix call to wrong_type_argument.
8380 (make_fixnum_or_float): Use EMACS_INT rather than int.
8381
83822001-11-26 Stefan Monnier <monnier@cs.yale.edu>
8383
8384 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
8385 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
8386
8387 * eval.c: Use AREF and ASIZE.
8388 (Ffetch_bytecode): Add the file name to the error message.
8389
8390 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
8391 which match the end of the file-name.
8392 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
8393 is not a valid env var, but leave it as is instead.
8394
8395 * keymap.c (access_keymap): Handle t bindings like nil bindings.
8396 Make nil bindings in char-tables transparent.
8397 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
8398
83992001-11-26 Richard M. Stallman <rms@gnu.org>
8400
8401 * textprop.c (set_text_properties_1): Allow START, END in either order.
8402 Do nothing if range is empty.
8403
8404 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
8405
8406 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
8407 (clean): Not here.
8408
84092001-11-25 Stefan Monnier <monnier@cs.yale.edu>
8410
8411 * textprop.c (set_text_properties_1): Clearly mark that the
8412 interval should not be empty.
8413
8414 * intervals.c (graft_intervals_into_buffer):
8415 Don't call set_text_properties_1 on an empty interval.
8416
84172001-11-25 Richard M. Stallman <rms@gnu.org>
8418
8419 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
8420
8421 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
8422 don't lose the data in it.
8423
84242001-11-25 Juanma Barranquero <lektu@terra.es>
8425
8426 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
8427
8428 * buffer.c (Fkill_buffer): Use Frun_hooks, not Vrun_hooks.
8429
8430 * print.c (temp_output_buffer_setup): Use Frun_hooks, not Vrun_hooks.
8431
84322001-11-25 Stefan Monnier <monnier@cs.yale.edu>
8433
8434 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
8435
84362001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
8437
8438 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
8439 Niemitalo <kon@iki.fi>.
8440
84412001-11-25 Jason Rumney <jasonr@gnu.org>
8442
8443 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
8444
8445 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
8446 (Fx_show_tip): Block input during frame creation.
8447 (Fx_show_tip, Fx_hide_tip): Enable.
8448
84492001-11-24 Richard M. Stallman <rms@gnu.org>
8450
8451 * lread.c (Fload): Detect recursive load error for more than 3
8452 nestings of the same file.
8453 (Vrecursive_load_depth_limit): Variable deleted.
8454 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
8455
84562001-11-24 Jason Rumney <jasonr@gnu.org>
8457
8458 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
8459 mouse position if either left or top is not specified.
8460
8461 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
8462 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
8463 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
8464 (my_create_tip_window): Assign tip_window.
8465 (x_create_tip_frame): Use same defaults as X.
8466 (compute_tip_xy): Remove unused variable. Use full screen width.
8467 (Fx_show_tip): Do not double height. Call ShowWindow directly.
8468
8469 * w32term.c (x_after_update_window_line): Doc fix.
8470 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
8471 frames.
8472 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
8473
8474 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
8475 for all Windowed systems.
8476
84772001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
8478
8479 * msdos.c (IT_clear_screen): If the frame's faces are not yet
8480 realized, use the initial screen colors to clear the screen.
8481
84822001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8483
8484 * textprop.c (Fset_text_properties): Remove unused variables
8485 `unchanged', `prev_changed', `s' and `len'.
8486
8487 * search.c (Freplace_match): Remove unused variable `inslen'.
8488
8489 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
8490
84912001-11-22 Jason Rumney <jasonr@gnu.org>
8492
8493 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
8494 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
8495 (my_create_tip_window): New function.
8496 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
8497 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
8498
84992001-11-20 Jason Rumney <jasonr@gnu.org>
8500
8501 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
8502 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
8503
8504 * w32fns.c (Vw32_system_coding_system): Remove.
8505 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
8506
85072001-11-19 Stefan Monnier <monnier@cs.yale.edu>
8508
8509 * fileio.c (Fwrite_region): Move choose_write_coding_system to
8510 after build_annotations.
8511
8512 * syntax.c (describe_syntax): Add dummy arg.
8513 (describe_syntax_1): Update call to describe_vector.
8514
8515 * category.c (describe_category): Add dummy arg.
8516 (describe_category_1): Update call to describe_vector.
8517
8518 * keymap.c (Fdescribe_vector): Add `describer' parameter.
8519 (describe_command, describe_translation): Add dummy second param.
8520 (describe_map): Call elt_describer with two arguments.
8521 (describe_vector_princ): Add `fun' parameter.
8522 Call it instead of the hardcoded `princ'.
8523 (describe_vector): Add arg `args'.
8524 Pass it as a new second argument to elt_describer.
8525
8526 * keymap.h (describe_vector): Update prototype.
8527
8528 * frame.c: Don't include keymap.h any more.
8529 (keys_of_frame): Remove.
8530
8531 * lisp.h (keys_of_frame): Remove declaration.
8532
8533 * emacs.c (main): Don't call `keys_of_frame' any more.
8534
85352001-11-14 Andreas Schwab <schwab@suse.de>
8536
8537 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
8538 if defined, 0 otherwise.
8539 (MAP_FAILED): Define if not defined and use it to test mmap failure.
8540 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
8541
85422001-11-19 Richard M. Stallman <rms@gnu.org>
8543
8544 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
8545
85462001-11-18 Jason Rumney <jasonr@gnu.org>
8547
8548 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
8549 (x_draw_bar_cursor): If the background color of the glyph under
8550 the cursor equals the frame's cursor color, use the glyph's
8551 foreground color for drawing the bar cursor.
8552 (x_after_update_window_line): Clear internal border in different
8553 circumstances.
8554 (w32_set_vertical_scroll_bar): Check for width and height > 0.
8555 (w32_draw_relief_rect): Correct relief by 1 pixel.
8556 (x_set_glyph_string_background_width):
8557 Set extends_to_end_of_line_p if the row's fill_line_p is set and
8558 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
8559 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
8560 if cursor_in_non_selected_windows is false.
8561 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
8562 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
8563 Notice if cursor gets overwritten.
8564 (notice_overwritten_cursor): Renamed from
8565 note_overwritten_text_cursor. Rewritten to take glyph widths
8566 into account, and to take X positions as parameters.
8567 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
8568 around call to x_draw_glyphs.
8569 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
8570 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
8571 color to use for image glyph reliefs.
8572 (x_draw_image_relief): Accept zero tool_bar_button_relief.
8573 (glyph_rect): Remove unused variable `area'.
8574
8575 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
8576 some items.
8577 (x_set_internal_border_width): Set frame garbaged when window
8578 doesn't exist yet.
8579 (Fx_create_frame): Accept zero tool_bar_button_relief.
8580 (x_clear_image_1, four_corners_best, image_background)
8581 (image_background_transparent): New functions.
8582 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
8583 (gs_format): Add `:background' entry.
8584 (lookup_image): Set IMG's background color if specified.
8585 (pbm_load, xbm_load_image, png_load): Set IMG's background field
8586 when appropriate.
8587 (x_clear_image_1): Reset `background_valid' and
8588 `background_transparent_valid' fields.
8589 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
8590 calculating it here. Set IMG's background_transparent field.
8591 (enum xpm_keyword_index): Add XPM_BACKGROUND.
8592 (enum png_keyword_index): Add PNG_BACKGROUND.
8593 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
8594 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
8595 (enum gif_keyword_index): Add GIF_BACKGROUND.
8596 (enum gs_keyword_index): Add GS_BACKGROUND.
8597 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
8598 Pre-calculate image background color where necessary.
8599 (x_create_x_image_and_pixmap, xbm_load, gs_load):
8600 Use display info's n_cbits entry for screen depth.
8601 (Fx_show_tip): Remove unused variables `buffer', `top',
8602 `left', `max_width' and `max_height'.
8603
8604 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
8605
86062001-11-18 Gerd Moellmann <gerd@gnu.org>
8607
8608 * puresize.h (BASE_PURESIZE): Increase to 750000.
8609
86102001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8611
8612 * frame.c (Fframe_live_p): Doc fix.
8613
86142001-11-18 Richard M. Stallman <rms@gnu.org>
8615
8616 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
8617 (message_dolog_marker3): New static variables hold three markers.
8618 (syms_of_xdisp): Initialize and staticpro them.
8619 (message_dolog): Use message_dolog_marker1..3 instead of
8620 allocating markers each time. Unchain them when done.
8621
86222001-11-17 Richard M. Stallman <rms@gnu.org>
8623
8624 * doc.c (Fsnarf_documentation): Doc fix.
8625
86262001-11-17 Andreas Schwab <schwab@suse.de>
8627
8628 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
8629
86302001-11-17 Richard M. Stallman <rms@gnu.org>
8631
8632 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
8633
86342001-11-17 Jason Rumney <jasonr@gnu.org>
8635
8636 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
8637
86382001-11-17 Gerd Moellmann <gerd@gnu.org>
8639
8640 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
8641 with invalid position.
8642
86432001-11-16 Richard M. Stallman <rms@gnu.org>
8644
8645 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
8646
8647 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
8648 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
8649 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
8650
8651 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
8652
86532001-11-16 Stefan Monnier <monnier@cs.yale.edu>
8654
8655 * fileio.c (build_annotations): Split off the tail.
8656 (build_annotations_2): New fun. Extracted from build_annotations.
8657 (Fwrite_region): Split the call to build_annotations into two
8658 calls to build_annotations and build_annotations_2.
8659
86602001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8661
8662 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
8663 clear_waiting_for_input with argument.
8664
8665 * xterm.h (x_update_cursor): Remove duplicated prototype.
8666
8667 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
8668
8669 * xterm.c (waiting_for_input): Remove unnecessary declaration.
8670
8671 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
8672
86732001-11-16 Stefan Monnier <monnier@cs.yale.edu>
8674
8675 * fileio.c (choose_write_coding_system): New fun, extracted
8676 from Fwrite_region.
8677 (Fwrite_region): Use it.
8678
8679 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
8680 (funcall_lambda, run_hook_with_args): Make static and add prototype.
8681 (ml_apply, find_handler_clause): Add prototype.
8682
86832001-11-16 Eli Zaretskii <eliz@gnu.org>
8684
8685 * config.in: Add #undef HAVE_COFF_H.
8686
8687 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
8688 Required for ISC 4.1.
8689
86902001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
8691
8692 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
8693 Andrew Wiseman <a.wiseman@btclick.com>.
8694
86952001-11-16 Kim F. Storm <storm@cua.dk>
8696
8697 The following changes are made to clean up the various internal
8698 references to the fringes to actually use the term `fringe' for
8699 them. Previously, they were called `flags areas', `bitmap areas',
8700 `left/right side of windows', or implicitly as `flags' or
8701 `bitmaps':
8702
8703 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
8704 Comments fixed. Use renamed symbols.
8705
8706 * dispnew.c: Comment fix. Use renamed symbols.
8707
8708 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
8709 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
8710 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
8711
8712 * msdos.c: Comment fix.
8713
8714 * w32fns.c: Use renamed symbols.
8715
8716 * w32term.c: Comment fixes. Use renamed symbols.
8717 (fringe_bitmap_type): Renamed from bitmap_type.
8718 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
8719 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
8720 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
8721
8722 * w32term.h: Comment fixes. Use renamed symbols.
8723 (fringes_extra): Renamed from flags_areas_extra.
8724 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
8725 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
8726 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
8727 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
8728 (FRAME_X_LEFT_FRINGE_WIDTH):
8729 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
8730 (FRAME_X_RIGHT_FRINGE_WIDTH):
8731 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
8732
8733 * widget.c: Use renamed symbols.
8734
8735 * window.c: Comment fixes. Use renamed symbols.
8736 (coordinates-in-window-p): Doc fix.
8737
8738 * xdisp.c: Comment fixes. Use renamed symbols.
8739
8740 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
8741
8742 * xfns.c: Use renamed symbols.
8743
8744 * xterm.c: Comment fixes. Use renamed symbols.
8745 (fringe_bitmap_type): Renamed from bitmap_type.
8746 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
8747 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
8748 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
8749
8750 * xterm.h: Comment fixes. Use renamed symbols.
8751 (fringes_extra): Renamed from flags_areas_extra.
8752 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
8753 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
8754 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
8755 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
8756 (FRAME_X_LEFT_FRINGE_WIDTH):
8757 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
8758 (FRAME_X_RIGHT_FRINGE_WIDTH):
8759 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
8760
87612001-11-15 Jason Rumney <jasonr@gnu.org>
8762
8763 * w32menu.c (add-menu-item): Make help_echo and radio buttons
8764 work for most menu items. From David Ponce
8765 <david.ponce@wanadoo.fr>.
8766
87672001-11-15 Gerd Moellmann <gerd@gnu.org>
8768
8769 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
8770 Some x_set_* function expect to be called even if old and new
8771 value are equal.
8772
8773 * xdisp.c (build_desired_tool_bar_string): Accept zero
8774 tool_bar_button_relief.
8775
8776 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
8777
8778 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
8779
8780 * xterm.c (x_draw_bar_cursor): If the background color of the
8781 glyph under the cursor equals the frame's cursor color, use
8782 the glyph's foreground color for drawing the bar cursor.
8783
8784 * dispnew.c (direct_output_forward_char): Fix character/byte
8785 position comparison.
8786
87872001-11-15 Miles Bader <miles@gnu.org>
8788
8789 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
8790 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
8791 Update arguments to find_field.
8792 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
8793 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
8794 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
8795 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
8796
87972001-11-14 Richard M. Stallman <rms@gnu.org>
8798
8799 * editfns.c (Fpropertize): Allow call with 1 arg.
8800
8801 * dispextern.h (image_background, image_background_transparent):
8802 Conditionalize on HAVE_X_WINDOWS.
8803
88042001-11-13 Richard M. Stallman <rms@gnu.org>
8805
8806 * print.c (Fprin1_to_string): Doc fix.
8807
8808 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
8809
8810 * floatfns.c (Fceiling, Ffloor): Doc fixes.
8811
8812 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
8813
8814 * fileio.c (Ffile_accessible_directory_p): Doc fix.
8815
8816 * eval.c (syms_of_eval): Doc fix.
8817
8818 * coding.c (syms_of_coding): Doc fix.
8819
8820 * doc.c (Fsnarf_documentation): Doc fix.
8821
8822 * dispnew.c (syms_of_display): Doc fix.
8823
8824 * category.c (Fget_unused_category): Doc fix.
8825
8826 * buffer.c (syms_of_buffer): Doc fixes.
8827
88282001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
8829
8830 * print.c (prin1, print): Doc fix.
8831
88322001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8833
8834 * fontset.h: Remove declarations of variables
8835 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
8836
8837 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
8838 `Vclip_large_size_font'.
8839
88402001-11-13 Jason Rumney <jasonr@gnu.org>
8841
8842 * w32fns.c: Doc fix.
8843
88442001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8845
8846 * xfaces.c (Fface_attributes_as_vector): Doc fix.
8847
8848 * fns.c: Doc fix.
8849
8850 * emacs.c: Doc fix.
8851
8852 * coding.c: Doc fix.
8853
8854 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
8855 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
8856 `new style' [w/`doc:' keyword].
8857
88582001-11-12 Richard M. Stallman <rms@gnu.org>
8859
8860 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
8861 LeaveNotify events. Only FocusIn and FocusOut do that now.
8862 (x_display_and_set_cursor): Do display hollow cursors in active
8863 minibuffer windows when they are not selected.
8864
88652001-11-12 Jason Rumney <jasonr@gnu.org>
8866
8867 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
8868 * w32term.c: Change doc-string comments to `new style'.
8869 [w/`doc:' keyword]. Doc fixes.
8870
8871 * w32fns.c: Don't define max.
8872 (Fx_open_connection): Only execute once.
8873
88742001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8875
8876 * ccl.c: Change macros to use do-while block instead of if-else.
8877 Use braces to follow GNU Coding Standards.
8878
88792001-11-11 Richard M. Stallman <rms@gnu.org>
8880
8881 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
8882
8883 * lread.c (read_escape): Use end_of_file_error for reporting eof.
8884
8885 * insdel.c (replace_range): Use adjust_markers_for_replace
8886 instead of adjust_markers_for_delete and adjust_markers_for_insert.
8887
8888 * intervals.h: Declare set_text_properties and set_text_properties_1.
8889
8890 * textprop.c (set_text_properties_1): New subroutine
8891 broken out of set_text_properties.
8892 (set_text_properties): Use set_text_properties_1.
8893
8894 * intervals.c (graft_intervals_into_buffer):
8895 Use set_text_properties_1 to clear out properties.
8896
8897 * search.c (Freplace_match): Use replace_range to insert
8898 and delete. Don't request property inheritance from
8899 surrounding text.
8900
89012001-11-10 Jason Rumney <jasonr@gnu.org>
8902
8903 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
8904 vertical fonts. Allow them if face name is explicitly specified.
8905 Do not give up if we find a font that cannot be converted to an xlfd.
8906
89072001-11-10 Gerd Moellmann <gerd@gnu.org>
8908
8909 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
8910 instead of malloc/free.
8911
89122001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8913
8914 * xfaces.c (merge_face_vectors): Use braces to follow GNU
8915 Coding Standards.
8916 (Finternal_set_lisp_face_attribute): Likewise.
8917
8918 * buffer.c (Fbury_buffer): Likewise.
8919
8920 * indent.c (current_column_1): Remove unused variable `prev_col'.
8921
8922 * coding.c (encode_coding): Use precomputed value of `src'.
8923 (encode_coding): Remove unused variable `src_end'.
8924 (code_convert_region): Remove unused variables `count'.
8925
89262001-11-07 Jason Rumney <jasonr@gnu.org>
8927
8928 * w32term.c (x_display_and_set_cursor): Do not move system caret
8929 if cursor_glyph is NULL.
8930
89312001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8932
8933 * keymap.c (access_keymap): Fix compilation error.
8934
89352001-11-07 Miles Bader <miles@gnu.org>
8936
8937 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
8938
89392001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8940
8941 * intervals.c (graft_intervals_into_buffer):
8942 Remove #ifdef'd-out code.
8943 (graft_intervals_into_buffer): Remove unused variable `middle'.
8944
8945 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
8946 code (eval-current-buffer).
8947 Change doc-string comments to `new style' [w/`doc:' keyword].
8948
89492001-11-06 Richard M. Stallman <rms@gnu.org>
8950
8951 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
8952
89532001-11-06 Stefan Monnier <monnier@cs.yale.edu>
8954
8955 * lread.c (read1): Fix behavior with nested backquoting.
8956
8957 * keyboard.c (make_lispy_event): Check integerness and fix
8958 Lisp_Object/int mixup.
8959
89602001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8961
8962 * fns.c (copy_hash_table): Remove unused variable `v'.
8963
8964 * fontset.c (fontset_font_pattern): Remove unused variable
8965 `family_registry'.
8966
8967 * indent.c (current_column_1): Remove unused variable `prev_col'.
8968
89692001-11-05 Richard M. Stallman <rms@gnu.org>
8970
8971 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
8972
8973 * buffer.c (Fkill_buffer): Don't delete auto save file
8974 if buffer is modified.
8975
89762001-11-05 Andrew Innes <andrewi@gnu.org>
8977
8978 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
8979 CHECK_NUMBER_CDR.
8980
89812001-11-05 Richard M. Stallman <rms@gnu.org>
8982
8983 * unexelf.c (unexec): Minor changes; clean up comments.
8984
89852001-11-05 Sam Steingold <sds@gnu.org>
8986
8987 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
8988
89892001-11-05 Andreas Schwab <schwab@suse.de>
8990
8991 * sound.c (sound_perror): Save errno from being clobbered.
8992
89932001-11-05 Dale Hagglund <rdh@yottayotta.com>
8994
8995 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
8996 the program image directly.
8997
89982001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8999
9000 * buffer.h (Fbuffer_local_value): Add prototype.
9001
90022001-11-04 Richard M. Stallman <rms@gnu.org>
9003
9004 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
9005 and CHECK_BUFFER.
9006
9007 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
9008 (record_char): Likewise.
9009
9010 * keyboard.c (make_lispy_event): Don't insist a drag event must
9011 move to a different buffer position. Instead, check for moving at
9012 least double_click_fuzz.
9013
9014 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
9015
9016 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
9017
9018 * indent.c (current_column_1, Fmove_to_column): Separate the code
9019 for display-table glyphs from the code for buffer text, to fix
9020 bugs in the former.
9021
90222001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
9023
9024 * buffer.c (Fbuffer_local_value): New function.
9025 (syms_of_buffer): Defsubr it.
9026
9027 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
9028 value of `cursor-in-non-selected-windows'.
9029
9030 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
9031 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
9032 (syms_of_xdisp): Initialize it.
9033
90342001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9035
9036 * xfns.c (Fx_create_frame): Doc fix.
9037
9038 * coding.c: Change doc-string comments to `new style' [w/`doc:'
9039 keyword].
9040
9041 * eval.c (top_level_value, top_level_set): Remove commented and
9042 #ifdef'd-out code.
9043 (Fdefvar): Fix usage in doc-string.
9044
90452001-11-03 Richard M. Stallman <rms@gnu.org>
9046
9047 * xfns.c: Include unistd.h, if it exists.
9048
9049 * editfns.c: Move the include of ctype.h after unistd.h.
9050
9051 * gmalloc.c: Test BROKEN_PROTOTYPES.
9052
90532001-11-03 Ken Raeburn <raeburn@gnu.org>
9054
9055 * lisp.h (CHECK_STRING_CAR): New macro.
9056 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
9057 treating XCAR and XCDR as lvalues.
9058 (openp): Use CHECK_STRING_CAR.
9059 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
9060
90612001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
9062
9063 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
9064 (SIGMASKTYPE): Define.
9065
9066 * syssignal.h (sigunblock): Don't define if already defined.
9067
90682001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9069
9070 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
9071 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
9072 Fix typos in comments.
9073
9074 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
9075 and #ifdef'd-out code.
9076 Fix and reindent comments.
9077
9078 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
9079
9080 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
9081 argument `i' in macros.
9082
9083 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
9084 `i' in macros.
9085
9086 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
9087 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
9088 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
9089 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
9090 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
9091 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
9092 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
9093 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
9094 in macros.
9095
9096 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
9097 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
9098 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
9099 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
9100 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
9101 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
9102 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
9103 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
9104 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
9105 (remove unused second argument).
9106
91072001-11-02 Stefan Monnier <monnier@cs.yale.edu>
9108
9109 * syntax.c (describe_syntax): New wrapper.
9110 (Finternal_describe_syntax_value): Rename from describe_syntax.
9111 Don't insert space at front and \n at the end.
9112 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
9113
9114 * regex.c (re_wctype): Try to fix some warnings.
9115 (regcomp, regexec): Don't forget the __restrict.
9116
91172001-11-02 Richard M. Stallman <rms@gnu.org>
9118
9119 * textprop.c (Fget_char_property): Doc fix.
9120
91212001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9122
9123 * process.c (Fstart_process): Add usage to doc-string.
9124
9125 * data.c (Fsetq_default): Ditto.
9126
9127 * callint.c (Finteractive): Ditto.
9128
91292001-11-01 Stefan Monnier <monnier@cs.yale.edu>
9130
9131 * macros.c: Don't include keymap.h any more.
9132
91332001-11-01 Richard M. Stallman <rms@gnu.org>
9134
9135 * data.c (Fmake_local_variable): Doc fix.
9136
9137 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
9138 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
9139
9140 * keymap.c (Fdescribe_buffer_bindings): Print character property
9141 bindings along with or instead of the buffer local map.
9142 Make the overriding maps override what they should.
9143
91442001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9145
9146 * window.c (grow_mini_window): Fix typo in comment.
9147
91482001-11-01 Gerd Moellmann <gerd@gnu.org>
9149
9150 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
9151 (XTset_vertical_scroll_bar): Likewise.
9152
9153 * xfns.c (x_build_heuristic_mask): Use four_corners_best
9154 instead of IMAGE_BACKGROUND.
9155
9156 * xfns.c (four_corners_best): Reindent.
9157
9158 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
9159 Handle :box so that it is possible to specify sexprs.
9160
91612001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
9162
9163 * s/hpux11.h: New file.
9164
91652001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9166
9167 * emacs.c (USAGE1): Show command line option --no-window-system
9168 instead of --no-windows in usage.
9169 (standard_args): Rename --no-windows to --no-window-system.
9170 (bug_reporting_address): Follow Emacs coding conventions.
9171
9172 * eval.c (Fcommandp): Doc fix.
9173 Change doc-string comments to `new style' [w/`doc:' keyword].
9174
9175 * frame.c (Fframe_live_p): Doc fix.
9176
9177 * buffer.c (selective-display-ellipses): Doc fix.
9178
91792001-10-31 Gerd Moellmann <gerd@gnu.org>
9180
9181 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
9182
9183 * xfaces.c (realize_x_face): If C is not a single-byte character,
9184 set the face's colors_copied_bitwise_p instead of the defaulted_p
9185 members which have a different meaning.
9186 (free_face_colors): Do nothing for a face whose colors have been
9187 copied bitwise.
9188
9189 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
9190
91912001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9192
9193 * marker.c, mocklisp.c: Change doc-string comments to `new style'
9194 [w/`doc:' keyword].
9195
91962001-10-31 Gerd Moellmann <gerd@gnu.org>
9197
9198 * fns.c (require_unwind): Return Lisp_Object.
9199
92002001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9201
9202 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
9203 (last-input-char): Revert doc-string to be the same as the
9204 doc-string of `last-input-event'.
9205
9206 * xdisp.c: Fix typos in comments.
9207
92082001-10-31 Gerd Moellmann <gerd@gnu.org>
9209
9210 * window.c (grow_mini_window): Handle case that the root
9211 window is already smaller than the nominal mininum height.
9212
92132001-10-30 Stefan Monnier <monnier@cs.yale.edu>
9214
9215 * emacs.c (main): Don't call keys_of_macros any more.
9216
9217 * lisp.h (keys_of_macros): Remove.
9218
9219 * macros.c (keys_of_macros): Remove.
9220
9221 * xfaces.c (Fface_attribute_relative_p): Declare args.
9222
92232001-10-30 Jason Rumney <jasonr@gnu.org>
9224
9225 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
9226 (enum_font_cb2): Ignore fonts with vertical orientation.
9227
92282001-10-30 Richard M. Stallman <rms@gnu.org>
9229
9230 * keyboard.c (Finput_pending_p): Doc fix.
9231
92322001-10-30 Gerd Moellmann <gerd@gnu.org>
9233
9234 * xterm.c (x_after_update_window_line): Don't run the code
9235 clearing in borders for rows whose visible height is 0.
9236
9237 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
9238 resized_p flag is set. If not set, use the much less flickering
9239 method previously used.
9240
9241 * dispnew.c (change_frame_size_1): Set frame's resized_p.
9242
9243 * frame.h (struct frame) <resized_p>: New member.
9244
9245 * lread.c (to_multibyte): Ensure read_buffer is at least twice
9246 as large as the number of bytes to convert.
9247
9248 * lread.c (to_multibyte): New function.
9249 (read1): Use it.
9250
92512001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
9252
9253 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
9254
92552001-10-30 Gerd Moellmann <gerd@gnu.org>
9256
9257 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
9258 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
9259 if the row's fill_line_p is set and drawing the last glyph with
9260 DRAW_IMAGE_{RAISED,SUNKEN}.
9261
9262 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
9263
92642001-10-29 Stefan Monnier <monnier@cs.yale.edu>
9265
9266 * xmenu.c: Include coding.h and charset.h.
9267 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
9268 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
9269 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
9270 Explicitly set wv->help. Use `TRUE' rather than `True'.
9271 (menu_help_callback): Use empty_string.
9272
9273 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
9274 (Fx_popup_dialog): Explicitly init f.
9275 (w32_menu_display_help): Use empty_string.
9276
92772001-10-29 Richard M. Stallman <rms@gnu.org>
9278
9279 * fns.c (Frequire): Detect recursive try to require the same
9280 feature 3 or more levels deep, and get error.
9281 (require_unwind): New subroutine.
9282 (require_nesting_list): New variable.
9283 (syms_of_fns): Init and staticpro it.
9284
9285 * print.c (print_object): Clarify indication of insertion type.
9286
92872001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
9288
9289 * coding.c (syms_of_coding): Document that locale-coding-system is
9290 used for decoding input on X.
9291
9292 * window.c (Fscroll_left, Fscroll_right): Doc fix.
9293
92942001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9295
9296 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
9297 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
9298
92992001-10-29 Gerd Moellmann <gerd@gnu.org>
9300
9301 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
9302 use NO_CURSOR if cursor_in_non_selected_windows is false.
9303
9304 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
9305 the slant attribute if FRAME is t.
9306
9307 * xfns.c (x_set_internal_border_width): Set frame garbaged
9308 when X window doesn't exist yet.
9309
9310 * xterm.c (x_after_update_window_line): Clear internal border
9311 in different circumstances.
9312
9313 * xterm.c (XTread_socket) <KeyPress>: Don't use
9314 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
9315 <handa@etl.go.jp>.
9316
93172001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
9318
9319 * m/ibms390.h: New file. From Adam Thornton
9320 <athornton@sinenomine.net>.
9321
93222001-10-28 Gerd Moellmann <gerd@gnu.org>
9323
9324 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
9325
9326 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
9327 a loop counter.
9328
93292001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9330
9331 * emacs.c: Use argv[0] instead of emacs when -t was specified.
9332
9333 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
9334 keyword].
9335 Fix typos in comments.
9336
9337 * emacs.c (bug_reporting_address): New function.
9338 Use it when displaying usage message.
9339
9340 * minibuf.c (read_minibuf): Remove unused external declaration of
9341 variable `Qread_only'.
9342
9343 * keymap.c (access_keymap): Remove unused variable `charset'.
9344
93452001-10-28 Miles Bader <miles@gnu.org>
9346
9347 * xfaces.c (merge_face_heights): Handle TO being relative as well.
9348 Remove #ifdef'd-out code.
9349 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
9350 (syms_of_xfaces): Initialize them.
9351
93522001-10-27 Jason Rumney <jasonr@gnu.org>
9353
9354 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
9355 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
9356 position using the system caret.
9357
9358 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
9359 (w32_system_caret_height, w32_system_caret_x)
9360 (w32_system_caret_y): New variables for tracking system caret.
9361 (w32_initialize): Initialize them.
9362 (x_display_and_set_cursor): Make system caret follow the active cursor.
9363
9364 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
9365 New messages types.
9366
9367 * w32term.c (note_mouse_highlight): Clear old help_echo.
9368
93692001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9370
9371 * xterm.c: Fix typo in a comment.
9372
9373 * emacs.c: Fix typos in comments.
9374 Remove unnecessary spaces.
9375 Change doc-string comments to `new style' [w/`doc:' keyword].
9376 (USAGE2): Fix typos in usage string.
9377
9378 * xterm.c: Fix typo in a comment.
9379
9380 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
9381 emacs.c.
9382
93832001-10-27 Gerd Moellmann <gerd@gnu.org>
9384
9385 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
9386 instead of 1/2 line_height in the heuristic for skipping
9387 farther backward when target_y was not reached.
9388
9389 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
9390 Display errno only if non-zero.
9391 (sound_warning): New function.
9392 (vox_configure): Don't treat failing to set sample rate as error.
9393 (various places): Improve error messages.
9394
93952001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
9396
9397 * fileio.c (Faccess_file): Run the argument filename through
9398 Fexpand_file_name, before using it.
9399
9400 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
9401 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
9402
94032001-10-26 Gerd Moellmann <gerd@gnu.org>
9404
9405 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
9406
9407 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
9408 Fix clearing in the case of scroll bars on the right.
9409
94102001-10-26 Juanma Barranquero <lektu@terra.es>
9411
9412 * w32gui.h (XImage): Add a dummy typedef.
9413
94142001-10-26 Gerd Moellmann <gerd@gnu.org>
9415
9416 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
9417
94182001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
9419
9420 * frame.c (Fframe_parameter): Fix last change.
9421
9422 * fileio.c: Revert last change (which removed old commented-out
9423 version of expand-file-name). Add a comment that explains why
9424 this old version should not be removed.
9425
94262001-10-25 Gerd Moellmann <gerd@gnu.org>
9427
9428 * frame.c (Fframe_parameter): Fix a bug whereby some
9429 ``artificial'' frame parameters, like `minibuffer' were not
9430 obtained by calling Fframe_parameters.
9431
9432 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
9433 cursor differently.
9434
9435 * xdisp.c (move_it_vertically_backward): Compute line height
9436 differently. Add heuristic to try to be more compatible to 20.x.
9437
94382001-10-25 Stefan Monnier <monnier@cs.yale.edu>
9439
9440 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
9441
9442 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
9443 boolean.
9444
94452001-10-25 Miles Bader <miles@gnu.org>
9446
9447 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
9448 BG is a pointer to a structure, not a structure.
9449 (gif_format, png_format): Add missing commas.
9450
94512001-10-24 Richard M. Stallman <rms@gnu.org>
9452
9453 * xfaces.c (Fface_attributes_as_vector): New function.
9454 (syms_of_xfaces): Defsubr it.
9455
94562001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9457
9458 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
9459 variable `area'.
9460
94612001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9462
9463 * search.c (scan_newline): Remove unused variable `selective_display'.
9464
94652001-10-25 Miles Bader <miles@gnu.org>
9466
9467 * dispextern.h (struct image): Add `background',
9468 `background_valid', and `background_transparent' fields.
9469 (image_background, image_background_transparent): New declarations.
9470 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
9471 * xfns.c (image_background, image_background_transparent)
9472 (four_corners_best): New functions.
9473 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
9474 (gs_format): Add `:background' entry.
9475 (lookup_image): Set IMG's background color if specified.
9476 (pbm_load, xbm_load_image, png_load): Set IMG's background field
9477 when appropriate.
9478 (x_clear_image_1): Reset `background_valid' and
9479 `background_transparent_valid' fields.
9480 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
9481 calculating it here. Set IMG's background_transparent field.
9482 (enum xpm_keyword_index): Add XPM_BACKGROUND.
9483 (enum png_keyword_index): Add PNG_BACKGROUND.
9484 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
9485 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
9486 (enum gif_keyword_index): Add GIF_BACKGROUND.
9487 (enum gs_keyword_index): Add GS_BACKGROUND.
9488 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
9489 Pre-calculate image background color where necessary.
9490 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
9491 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
9492 color to use for image glyph reliefs.
9493
94942001-10-24 Gerd Moellmann <gerd@gnu.org>
9495
9496 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
9497 in full-width rows.
9498
9499 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
9500 Fix clearing of area not covered by scroll bar.
9501
95022001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9503
9504 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
9505 and `real_start'.
9506 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
9507 (glyph_rect): Remove unused variable `area'.
9508
95092001-10-24 Gerd Moellmann <gerd@gnu.org>
9510
9511 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
9512
9513 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
9514 (row_containing_pos): Take additional argument DY.
9515 Treat rows ending in middle of char differently.
9516 (display_line): Handle tabs on window systems differently.
9517
9518 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
9519 with additional argument.
9520
9521 * dispextern.h (row_containing_pos): Adjust prototype.
9522
9523 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
9524 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
9525 (try_window_id, try_window_reusing_current_matrix)
9526 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
9527 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
9528
95292001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9530
9531 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
9532 gnuemacs).
9533 (HAVE_BOXES): Fix typo in comment.
9534 (push_menu_pane): Fix typo in comment.
9535
9536 * xdisp.c: (display_prop_string_p): Remove unused local declaration
9537 of `Qwhen'.
9538 (single_display_prop_string_p): Remove unused local declarations
9539 of `Qwhen' and `Qmargin'.
9540 (string_buffer_position): Remove unused variable `around'.
9541 (store_frame_title): Remove unused variable `width'.
9542
9543 * window.c: Don't define max.
9544 (coordinates_in_window): Remove unused variable `uy'.
9545
9546 * widget.c: Don't define max.
9547
9548 * process.c: Don't define max.
9549 (create_process): Remove unused variable `buffer'.
9550
95512001-10-23 Gerd Moellmann <gerd@gnu.org>
9552
9553 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
9554
95552001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
9556
9557 * xfaces.c (Finternal_set_lisp_face_attribute)
9558 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
9559 frame is on a windowed display.
9560
95612001-10-23 Gerd Moellmann <gerd@gnu.org>
9562
9563 * dispnew.c (sync_window_with_frame_matrix_rows):
9564 Fix handling of windows which aren't full-width, fix handling
9565 of marginal areas.
9566
9567 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
9568
95692001-10-23 Andreas Schwab <schwab@suse.de>
9570
9571 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
9572 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
9573
95742001-10-23 Gerd Moellmann <gerd@gnu.org>
9575
9576 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
9577 REAL_END. Notice if cursor gets overwritten.
9578 (notice_overwritten_cursor): Take X positions as parameters.
9579 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
9580 around call to x_draw_glyphs.
9581
95822001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9583
9584 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
9585 instead of C) and usage.
9586
9587 * editfns.c (char-to-string): Fix argument names (use CHAR instead
9588 of C) and usage.
9589
9590 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
9591 `left', `max_width' and `max_height'.
9592
95932001-10-23 Gerd Moellmann <gerd@gnu.org>
9594
9595 * xdisp.c (display_line): For a tab continued to the next line,
9596 set row's ends_in_middle_of_char_p.
9597
95982001-10-22 Gerd Moellmann <gerd@gnu.org>
9599
9600 * xdisp.c (display_line): Fix computation of continuation lines
9601 width for TABs.
9602
96032001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9604
9605 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
9606 `Qlaplace'.
9607
9608 * fileio.c: Remove unused code.
9609
96102001-10-22 Miles Bader <miles@gnu.org>
9611
9612 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
9613 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
9614 Remove `DOC_STRINGS_IN_COMMENTS' cases.
9615
96162001-10-21 Jason Rumney <jasonr@gnu.org>
9617
9618 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
9619
96202001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
9621
9622 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
9623 (Finsert_string): Avoid the multi-line string literals warning.
9624
96252001-10-22 Miles Bader <miles@gnu.org>
9626
9627 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
9628 (Fdocumentation): Don't use it.
9629 (syms_of_doc): Don't initialize it.
9630
9631 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
9632 * print.c (Fwith_output_to_temp_buffer): Likewise.
9633 * window.c (Fsave_window_excursion): Likewise.
9634 * editfns.c (Fsave_excursion, Fsave_current_buffer)
9635 (Fsave_restriction): Likewise.
9636 * eval.c (Frun_hooks, Frun_hook_with_args)
9637 (Frun_hook_with_args_until_failure)
9638 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
9639 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
9640 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
9641 (Funwind_protect, Fcondition_case): Likewise.
9642 * coding.c (Ffind_operation_coding_system): Likewise.
9643 * keyboard.c (Ftrack_mouse): Likewise.
9644
96452001-10-21 Miles Bader <miles@gnu.org>
9646
9647 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
9648 (Fmake_hash_table): Add usage: string to doc string.
9649 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
9650 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
9651 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
9652 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
9653 (Fml_prefix_argument_loop): Likewise.
9654
96552001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9656
9657 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
9658
9659 * sysdep.c (init_sys_modes): Change doc-string comments to `new
9660 style' [w/`doc:' keyword].
9661
9662 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
9663 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
9664 comments to `new style' [w/`doc:' keyword].
9665
96662001-10-21 Jason Rumney <jasonr@gnu.org>
9667
9668 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
9669
9670 * w32term.c (remember_mouse_glyph): New function.
9671 (w32_mouse_position): Use it.
9672 (note_mouse_movement): If the mouse moved off the glyph, remember
9673 its new position.
9674
9675 * w32term.h (struct w32_output): Correct spelling of x_compatible.
9676 (w32_display_info): Add mouse_face_overlay.
9677
9678 * w32term.c (notice_overwritten_cursor): Renamed from
9679 note_overwritten_text_cursor. Rewritten to take glyph widths into
9680 account.
9681 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
9682 (fast_find_string_pos): New function.
9683 (fast_find_position): Return the correct vpos. Add parameter
9684 STOP. In the final row, stop before glyphs having STOP as object.
9685 Don't consider glyphs that are not from a buffer.
9686 (fast_find_position) [0]: Add a presumably more correct version
9687 for after 21.1.
9688 (expose_window_tree, expose_frame): Don't compute intersections here.
9689 (expose_window): Do it here instead.
9690 (expose_window_tree, expose_window, expose_line): Return 1 when
9691 overwriting mouse-face.
9692 (expose_window): If W is the window currently being updated, mark
9693 the frame garbaged.
9694 (expose_frame): If mouse-face was overwritten, redo it.
9695 (x_use_underline_position_properties): New variable.
9696 (syms_of_xterm): DEFVAR_BOOL it.
9697 (x_draw_glyph_string): Add comment to use it in future.
9698 (x_draw_glyph_string): Restore clipping after drawing box.
9699 Fix a computation of the underline position.
9700 (w32_get_glyph_string_clip_rect): Minor cleanup.
9701 (x_fill_stretch_glyph_string): Remove an assertion.
9702 (x_produce_glyphs): Don't convert multibyte characters
9703 to unibyte characters in unibyte buffers.
9704 (cursor_in_mouse_face_p): New function.
9705 (x_draw_stretch_glyph_string): Use it to choose a different GC
9706 when drawing a cursor within highlighted text. Don't draw
9707 background again if it has already been drawn.
9708 (x_draw_glyph_string_box): Don't draw a full-width
9709 box just because the glyph row's full_width_p flag is set.
9710 (x_draw_glyphs): Fix computation of rightmost x for
9711 full-width rows.
9712 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
9713 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
9714 change bottom shadow accordingly. Some cleanup.
9715 (x_update_window_end): Handle overwritten mouse face
9716 also for tool bar windows.
9717 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
9718 DRAW is DRAW_IMAGE_RAISED.
9719 (clear_mouse_face): Return 1 if text with mouse face was
9720 actually redrawn. Make the function static.
9721 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
9722 optimize away highlighting if we pass over that same overlay again.
9723 (note_mouse_highlight): Call mouse_face_overlay_overlaps
9724 to detect a case where we have to highlight a different region
9725 despite not having left the currently highlighted region.
9726 Set mouse_face_overlay in the x_display_info. Avoid changing the
9727 mouse pointer shape when show_mouse_face has already done it, or
9728 there is no need. Handle mouse-face and help-echo in strings.
9729 (glyph_rect): New function.
9730 (w32_mouse_position): Use it to raise the threshold for mouse
9731 movement event generation.
9732 (w32_initialize_display_info): Initialize the x_display_info's
9733 mouse_face_overlay.
9734 (w32_set_vertical_scroll_bar): Don't clear a zero height
9735 or width area.
9736 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
9737 a widget to zero height.
9738
9739 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
9740 Protect unibyte strings created by replacing their multibyte
9741 equivalents in menu_items.
9742 (w32_menu_show): Don't overwrite an item's name with its key
9743 description in case the description is a multibyte string.
9744 (single_submenu): Some cleanup.
9745
9746 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
9747 (postprocess_image): New function.
9748 (lookup_image): Call it for all image types except PostScript.
9749 (x_kill_gs_process): Call postprocess_image.
9750 (tiff_error_handler, tiff_warning_handler): New functions.
9751 (tiff_load): Install them as handlers.
9752 (x_kill_gs_process): Recognize if someone has cleared the image
9753 cache under us.
9754 (valid_image_p): Protect better against invalid image
9755 specifications. Previous code could signal an error.
9756 (Fx_hide_tip, Fshow_tip): Doc fix.
9757 (Fv_max_tooltip_size): New variable.
9758 (syns_of_xfns): DEFVAR_LISP it.
9759 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
9760 window buffer to *tip* right after creating the frame. Set frame's
9761 window_width. Use a maximum tooltip size specified by
9762 Vx_max_tooltip_size, if that has valid contents.
9763 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
9764 Make sure the tooltip is completely visible.
9765 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
9766 (Fx_create_frame): Adjust the frame's height for presence
9767 of the tool bar before calling x_figure_window_size.
9768 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
9769 when the window gets smaller.
9770 (x_set_foreground_color): Set frame's cursor_pixel.
9771 (x_set_foreground_color, x_set_background_color): Cleaned up.
9772 (x_set_font): Handle case of x_new_fontset returning the same name
9773 as before, although there was a change in fontsets.
9774
97752001-10-21 Miles Bader <miles@gnu.org>
9776
9777 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
9778 (Flogxor): Add usage: string to doc string.
9779 * charset.c (Fstring): Likewise.
9780 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
9781 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
9782
97832001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9784
9785 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
9786
9787 * alloc.c: Reindent DEFUNs with doc: keywords.
9788
9789 * abbrev.c (Finsert_abbrev_table_description): Reindent.
9790
9791 * frame.c: Change doc-string comments to `new style' [w/`doc:'
9792 keyword].
9793
9794See ChangeLog.9 for earlier changes.
9795
9796;; Local Variables:
9797;; coding: iso-2022-7bit
9798;; End:
9799
9800 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
9801 Copying and distribution of this file, with or without modification,
9802 are permitted provided the copyright notice and this notice are preserved.